@charset "UTF-8";


/* --------------------------------------------------------------------- */
/* reset */
/* --------------------------------------------------------------------- */

.l-w{
    padding: 66px 0 0 0;
}

.l-b{
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 4vw 60px 4vw;
    position: relative;
    box-sizing: unset;
}

.l-c{
    width: 69%;
}

.l-s{
    width: 25%;
}

.c-shareBtns {
    margin: 2em 0;
}

.p-breadcrumb__text .__home::before {
    display: none;
}

.c-pagination{
    width: 100%;
}

#breadcrumb{
    display: none ;
}

#fix_header{
    visibility:hidden;
    height: 66px;
}

.l-header{
    visibility:hidden;
    height: 66px;
    position: absolute;
    top: 0;
    left: 0;
}

a.lightbox{
    pointer-events: none;
}

body.imobile-on .p-fixBtnWrap{
    bottom: 120px;
}

.blocks-gallery-caption{
    color: inherit;
    display: block !important;
    font-size: .8em;
    line-height: 1.4;
    margin-bottom: 0;
    margin-top: .75em;
    opacity: .8;
    text-align: center;
}


@media screen and (max-width: 768px){

    .l-w{
        padding: 50px 0 0 0;
    }
    
    .l-b{
        max-width: 1200px;
        margin: 0 auto;
        padding: 0 0 60px 0;
        position: relative;
        box-sizing: unset;
    }

    .l-c{
        width: 100%;
    }

    .l-s{
        width: 100%;
        padding: 40px 0 0 0;
    }

    #fix_header{
        visibility:hidden;
        height: 50px;
    }
    
    .l-header{
        visibility:hidden;
        height: 50px;
        position: absolute !important;
        top: 0;
        left: 0;
    }

    .c-shareBtns {
        margin: 2em 16px;
    }

    .post_content{
        margin: 0 16px !important;
    }

    .post_content > h2{
        margin-left: 0;
        margin-right: 0;
    }

    body.imobile-on .p-fixBtnWrap{
        bottom: 150px;
    }
    
}


/* --------------------------------------------------------------------- */
/* header */
/* --------------------------------------------------------------------- */

.l-h{
    width: 100%;
    height: 66px;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 99;
    background: #fff;
}

.l-h-b{
    max-width: 1200px;
    margin: 0 auto;
    height: 66px;
    padding: 0 4vw;
    position: relative;
    box-sizing: unset;
}

.l-h-logo{
    margin: 16px 0 0 0;
    max-width: 130px;
}

.l-h-logo a{
    display: block;
    transition: .2s;
}

@media (hover: hover) and (pointer: fine) {
    .l-h-logo a:hover{
        opacity: .6;
    }
}

.l-h-gn{
    position: absolute;
    top: 26px;
    left: calc(4vw + 170px);
    font-size: 0;
}

.l-h-gn li{
    display: inline-block;
    margin: 0 30px 0 0;
    font-size: 16px;
    line-height: 1;
    font-weight: 700;
}

.l-h-gn li:last-child{
    margin: 0 0 0 0;
}

.l-h-gn li a{
    color: #000;
    transition: .2s;
}

@media (hover: hover) and (pointer: fine) {
    .l-h-gn li a:hover{
        color: #019E3B;
    }
}

.l-h-s{
    padding: 0 50px 0 0;
    margin: 0 0 0 auto;
}

.l-h-s-member{
    margin: 18px 0 0 0;
}

.l-h-s-member ul{
    font-size: 0;
}

.l-h-s-member ul li{
    display: inline-block;
    margin: 0 10px 0 0;
}

.l-h-s-member ul li:last-child{
    margin: 0;
}

.l-h-s-member ul li p a{
    display: block;
}

.l-h-s-member ul li .login,.l-h-s-member ul li .regist{
    font-size: 12px;
    line-height: 1;
    font-weight: 700;
}

.l-h-s-member ul li .login a{
    padding:  6px 10px 8px 10px;
    border: 1px solid #019E3B;
    color: #019E3B;
    border-radius: 6px;
    display: block;
    box-sizing: border-box;
}

.l-h-s-member ul li .regist a{
    padding:  6px 10px 8px 10px;
    border: 1px solid #019E3B;
    background: #019E3B;
    color: #fff;
    border-radius: 6px;
    display: block;
    box-sizing: border-box;
}

.l-h-s-ms{
    padding: 0 0px 0 0;
}

.media-heading.item-body{
    display: none;
}


@media screen and (max-width: 768px){

    #fix_header{
        visibility:hidden;
        height: 50px;
    }

    .l-header{
        visibility:hidden;
        height: 50px;
        position: absolute;
        top: 0;
        left: 0;
    }

    .l-h{
        width: 100%;
        height: 50px;
        position: fixed;
        top: 0;
        left: 0;
        z-index: 99;
        background: #fff;
    }

    .l-h-b{
        max-width: 1200px;
        margin: 0 auto;
        height: 50px;
        padding: 0 4vw;
        position: relative;
        box-sizing: unset;
    }

    .l-h-logo{
        margin: 0;
        max-width: 87px;
        position: absolute;
        top: 12px;
        left: 0;
        right: 0;
        margin: auto;
    }

    .l-h-logo a{
        display: block;
        transition: .2s;
    }

    .l-h-gn{
        display: none;
    }

    .l-h-s{
        padding: 0 60px 0 0;
        margin: 0 0 0 auto;
    }

    .l-h-s-member{
        display: none;
    }

    .l-h-s-ms{
        padding: 0 10px 0 0;
    }
}


/* --------------------------------------------------------------------- */
/* footer */
/* --------------------------------------------------------------------- */

.l-f{
    padding: 40px 0 130px 0;
    background: #019E3B;
}

.l-f-copy{
    font-size: 10px;
    line-height: 1;
    font-weight: 700;
    color: #fff;
    text-align: center;
}

.l-f-logo{
    max-width: 130px;
    margin: .8% auto 0 auto;
}

.l-f-logo a{
    display: block;
    transition: .2s;
}

@media (hover: hover) and (pointer: fine) {
    .l-f-logo a:hover{
        opacity: .6;
    }
}

.l-f-fu-ttl{
    font-size: 10px;
    line-height: 1;
    font-weight: 700;
    color: #fff;
    text-align: center;
    margin: 2% auto 0 auto;
}

.l-f-fu-sns{
    margin: .6% auto 0 auto;
}

.l-f-fu-sns ul{
    font-size: 0;
    text-align: center;
}

.l-f-fu-sns ul li{
    display: inline-block;
    width: 38px;
    margin: 0 24px 0 0;
}

.l-f-fu-sns ul li a{
    display: block;
    transition: .2s;
}

.l-f-fu-sns ul li:last-child{
    margin: 0;
}

@media (hover: hover) and (pointer: fine) {
    .l-f-fu-sns ul li a:hover{
        opacity: .6;
    }
}

.l-f-c-ttl{
    font-size: 10px;
    line-height: 1;
    font-weight: 700;
    color: #fff;
    text-align: center;
    margin: 2% auto 0 auto;
}

.l-f-c-navi{
    max-width: 660px;
    margin: .7% auto 0 auto;
}

.l-f-c-navi ul li{
    font-size: 14px;
    line-height: 2.2;
    font-weight:400;
}

.l-f-u-navi{
    margin: 2% auto 0 auto;
}

.l-f-u-navi ul{
    font-size: 0;
    text-align: center;
}

.l-f-u-navi ul li{
    font-size: 10px;
    line-height: 1;
    font-weight:400;
    position: relative;
    display: inline-block;
    padding: 0 10px 2px 0 ;
    margin: 0 10px 0 0;
    border-right: 1px solid #fff;
}

.l-f-u-navi ul li:last-child{
    margin: 0;
    padding: 0 0 2px 0;
    border-right: none;
}

.l-f-u-navi ul li a{
    transition: .2s;
    color: #fff;
}

@media (hover: hover) and (pointer: fine) {
    .l-f-u-navi ul li a:hover{
        opacity: .6;
    }
}

.l-f-cr{
    font-size: 10px;
    line-height: 1;
    font-weight:400;
    color: #fff;
    text-align: center;
    margin: 2% 0 0 0;
}


@media screen and (max-width: 768px){

    .l-f{
        padding: 40px 0 150px 0;
        background: #019E3B;
    }
    
    .l-f-copy{
        font-size: 10px;
        line-height: 1;
        font-weight: 700;
        color: #fff;
        text-align: center;
    }
    
    .l-f-logo{
        max-width: 130px;
        margin: 3% auto 0 auto;
    }
    
    .l-f-logo a{
        display: block;
        transition: .2s;
    }
    
    @media (hover: hover) and (pointer: fine) {
        .l-f-logo a:hover{
            opacity: .6;
        }
    }
    
    .l-f-fu-ttl{
        font-size: 10px;
        line-height: 1;
        font-weight: 700;
        color: #fff;
        text-align: center;
        margin: 8% auto 0 auto;
    }
    
    .l-f-fu-sns{
        margin: 2% auto 0 auto;
    }
    
    .l-f-fu-sns ul{
        font-size: 0;
        text-align: center;
    }
    
    .l-f-fu-sns ul li{
        display: inline-block;
        width: 38px;
        margin: 0 24px 0 0;
    }
    
    .l-f-fu-sns ul li a{
        display: block;
        transition: .2s;
    }
    
    .l-f-fu-sns ul li:last-child{
        margin: 0;
    }
    
    .l-f-c-ttl{
        font-size: 10px;
        line-height: 1;
        font-weight: 700;
        color: #fff;
        text-align: center;
        margin: 8% auto 0 auto;
    }
    
    .l-f-c-navi div {
        max-width: 100%;
        margin: .7% auto 0 auto;
        width: 100%;
    }

    .l-f-c-navi div ul{
        width: 100%;
        padding: 10px 30px 0 30px;
        box-sizing: border-box;
    }
    
    .l-f-c-navi div ul li{
        font-size: 12px;
        line-height: 2.2;
        font-weight:400;
        width: calc(50% - 10px);
    }
    
    .l-f-u-navi{
        margin: 4% auto 0 auto;
    }
    
    .l-f-u-navi ul{
        font-size: 0;
        text-align: center;
    }
    
    .l-f-u-navi ul li{
        font-size: 10px;
        line-height: 2;
        font-weight:400;
        position: relative;
        display: block;
        padding: 0 0 2px 0 ;
        margin: 0 0 0 0;
        border-right: none;
        text-align: center;
    }
    
    .l-f-u-navi ul li:last-child{
        margin: 0;
        padding: 0 0 2px 0;
        border-right: none;
    }
    
    .l-f-u-navi ul li a{
        transition: .2s;
        color: #fff;
    }

    .l-f-cr{
        font-size: 10px;
        line-height: 1;
        font-weight:400;
        color: #fff;
        text-align: center;
        margin: 4% 0 0 0;
    }
        
}


/* --------------------------------------------------------------------- */
/* hm */
/* --------------------------------------------------------------------- */

.m-hm{
    width: 66px;
    height: 66px;
    z-index: 300;
    cursor: pointer;
    position: absolute;
    right: calc(3vw);
    top: 0;
    transition: .2s;
    display: block;
    z-index: 300;
}

.m-hm p.line{
    display: block;
    position: relative;
    width: 66px;
    height: 66px;
    margin:0px auto 0px auto;
    text-decoration: none;
    transition: .2s;
}

.m-hm p.line span{
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    width: 30px;
    height: 2px;
    transition: .2s;
    background: #000;
}

.m-hm p.line span::before{
    display: block;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 30px;
    height: 2px;
    transition: .2s;
    pointer-events: none;
    background: #000;
}

.m-hm p.line span::after{
    display: block;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 30px;
    height: 2px;
    transition: .2s;
    pointer-events: none;
    background: #000;
}

.m-hm p.line span:before{
    margin-top: 9px;
}

.m-hm p.line span:after{
    margin-top: -9px;
}

.m-hm.open{
    background: #717171;
}

.m-hm.open p.line span{
    background: transparent;
}

.m-hm.open p.line span::before{
    transform: translateY(-10px) rotate(45deg);
    margin-top: 9px;
    background: #fff;
}

.m-hm.open p.line span::after{
    transform: translateY(-10px) rotate(-45deg);
    margin-top: 9px;
    background: #fff;
}

@media screen and (max-width: 768px){


    .m-hm{
        width: 50px;
        height: 50px;
        z-index: 300;
        cursor: pointer;
        position: absolute;
        right: 0;
        left: 0px;
        top: 0;
        transition: .2s;
        display: block;
        z-index: 300;
    }
    
    .m-hm p.line{
        display: block;
        position: relative;
        width: 50px;
        height: 50px;
        margin:0px auto 0px auto;
        text-decoration: none;
        transition: .2s;
    }
    
}


/* --------------------------------------------------------------------- */
/* gn */
/* --------------------------------------------------------------------- */

.m-gn{
    position: fixed;
	top: 66px;
	left: 0;
	right: 0;
	max-width: calc(1200px + 2vw);
	height: auto;
	margin: 0 auto;
	z-index: 200;
	display: block;
	transition: .2s;
    visibility:hidden;
}

.m-gn.open{
	pointer-events: auto;
	overflow: auto;
    visibility:visible;
}

.m-gn-b{
	transition: .2s;
	background: rgba(1, 158, 59, .94);
	opacity: 0;
	height: 100%;
}

.m-gn.open .m-gn-b{
	opacity: 1;
}

.m-gn-i{
	width: 100%;
}

.m-gn-c{
	margin:0 auto;
	padding: 40px 50px 50px 50px;
}


.m-gn-c-ttl{
    font-size: 10px;
    line-height: 1;
    font-weight: 700;
    color: #fff;
    text-align: center;
    margin: 0 auto 0 auto;
}

.m-gn-c-navi{
    max-width: 800px;
    margin: 3% auto 0 auto;
}

.m-gn-c-navi ul li{
    font-size: 16px;
    line-height: 2.2;
    font-weight:400;
}

.m-gn-c-navi ul li a{
    padding: 0 0 0 22px;
}

.m-gn-c-navi ul li a::before{
    width: 13px;
    height: 12px;
    content: "";
    background: url(/cp/wp-content/themes/swell_child/images/i-next-w.svg) no-repeat;
    position: absolute;
    left: 0;
    top: 7px;
}

@media (hover: hover) and (pointer: fine) {
    .m-gn-c-navi ul li a:hover{
        opacity: .6;
    }
}



@media screen and (max-width: 768px){

    .m-gn{
        position: fixed;
        top: 50px;
        left: 0;
        right: 0;
        max-width: calc(1200px + 2vw);
        height: calc(100svh - 50px);
        margin: 0 auto;
        z-index: 200;
        display: block;
        transition: .2s;
        visibility:hidden;
        overflow: scroll;
    }

    .m-gn.open{
        pointer-events: auto;
        overflow: auto;
        visibility:visible;
    }

    .m-gn-b{
        transition: .2s;
        background: rgba(1, 158, 59, .94);
        opacity: 0;
        height: auto;
    }

    .m-gn.open .m-gn-b{
        opacity: 1;
    }

    .m-gn-i{
        width: 100%;
    }

    .m-gn-c{
        margin:0 auto;
        padding: 0px 0px 80px 0px;
    }

    body.imobile-on .m-gn-c{
        margin:0 auto;
        padding: 0px 0px 230px 0px;
    }


    .m-gn-c-ttl{
        font-size: 10px;
        line-height: 1;
        font-weight: 700;
        color: #fff;
        text-align: center;
        margin: 0 auto 0 auto;
        padding: 10px 0;
    }

    .m-gn-c-navi{
        max-width: 800px;
        width: 100%;
        margin: 0 auto 0 auto;
    }

    .m-gn-c-navi ul {
        position: relative;
        border-top: 1px solid #fff;
    }

    .m-gn-c-navi ul::after{
        width: 100%;
        height: 1px;
        content: "";
        background: #fff;
        position: absolute;
        bottom: 0;
        left: 0;
    }

    .m-gn-c-navi ul li{
        font-size: 14px;
        line-height: 1;
        font-weight:400;
        display: inline-block;
        width: 50%;
        border-bottom: 1px solid #fff;
    }

    .m-gn-c-navi ul li a{
        padding: 12px 10px 13px 16px;
        display: block;
    }

    .m-gn-c-navi ul li a::before{
        width: 13px;
        height: 12px;
        content: "";
        background: url(/cp/wp-content/themes/swell_child/images/i-next-w.svg) no-repeat;
        position: absolute;
        left: auto;
        right: 12px;
        top: 13px;
    }

    .m-gn-c-status ul{
        display: none !important;
    }

    .m-gn-c-status ul li{
        font-size: 14px;
        line-height: 1;
        font-weight:400;
        border-top: 1px solid #019E3B;
        text-align: center;
    }

    .m-gn-c-status ul li a{
        background: #fff;
        color: #019E3B;
        padding: 12px 10px 13px 22px;
        display: block;
        position: relative;
    }

    .m-gn-c-status ul li a::after{
        width: 13px;
        height: 12px;
        content: "";
        background: url(/cp/wp-content/themes/swell_child/images/i-next-g.svg) no-repeat;
        position: absolute;
        left: auto;
        right: 12px;
        top: 13px;
    }

    

}

/* --------------------------------------------------------------------- */
/* s */
/* --------------------------------------------------------------------- */

.m-s{
    width: 66px;
    height: 66px;
    cursor: pointer;
    transition: .2s;
    position: relative;
}

.m-s p{
    width: 28px;
    margin: 0 auto 0 auto;
    transition: .2;
}

.m-s p img{
    width: 28px;
    margin: 16px auto 0 auto;
}

.m-s.open{
    background: #717171;
}

.m-s.open p{
    opacity: 0;
}


.m-s.open::before{
    display: block;
    content: "";
    position: absolute;
    top: 0;
    bottom:0;
    left: 0;
    right: 0;
    margin: auto;
    width: 30px;
    height: 2px;
    pointer-events: none;
    transform: rotate(45deg);
    background: #fff;
}

.m-s.open::after{
    display: block;
    content: "";
    position: absolute;
    top: 0;
    bottom:0;
    left: 0;
    right: 0;
    margin: auto;
    width: 30px;
    height: 2px;
    pointer-events: none;
    transform: rotate(-45deg);
    background: #fff;
}

@media screen and (max-width: 768px){
    .m-s{
        width: 50px;
        height: 50px;
        cursor: pointer;
        transition: .2s;
        position: relative;
        position: absolute;
        right: 0;
        top: 0;
    }

    .m-s p img{
        width: 24px;
        margin: 12px auto 0 auto;
    }
    
}


/* --------------------------------------------------------------------- */
/* sn */
/* --------------------------------------------------------------------- */

.m-sn{
    position: fixed;
	top: 66px;
	left: 0;
	right: 0;
	/*max-width: calc(760px + 2vw);*/
    max-width: calc(1200px + 2vw);
	height: auto;
	margin: 0 auto;
	z-index: 200;
	display: block;
	transition: .2s;
    visibility:hidden;
}

.m-sn.open{
	pointer-events: auto;
	overflow: auto;
    visibility:visible;
}

.m-sn-b{
	transition: .2s;
	background: rgba(1, 158, 59, .94);
	opacity: 0;
	height: 100%;
}

.m-sn.open .m-sn-b{
	opacity: 1;
}

.m-sn-i{
	width: 100%;
}

.m-sn-c{
    max-width: 700px;

	margin:0 auto;
	padding: 40px 50px 50px 50px;
}


.m-sn-search{
    width: auto;
    background: #fff;
    padding: 0 10px;
    margin: 0 0 0 0;
    border-radius: 50px;
}

.m-sn-search button{
    background: none;
    width: 32px;
    height: 60px;
    padding: 0;
    border: none;
    margin: 0 10px 0 0;
}

.m-sn-search-i{
    flex: 1;
}

.m-sn-search-i input{
    background:none;
    border: none;
    border-radius: 0;
    color: #333;
    padding: 0;
    box-sizing: border-box;
    width: 100%;
    padding: 10px;
    height: 60px;
    outline: none;
    font-size: 16px;
}

.m-sn-tag{
    padding: 40px 0 20px 0;
}

.m-sn-tag p{
    font-size: 16px;
    line-height: 1;
    font-weight: 400;
    color: #fff;
    text-align: center;
}

.m-sn-tag ul{
    font-size: 0;
    gap: 10px 10px;
    flex-wrap: wrap;
    display: flex;
    margin: 20px 0 0 0;
}

.m-sn-tag ul li{
    font-size: 11px;
    line-height: 1.6;
    font-weight: 400;
    color: #fff;
    display: inline-flex;
    align-items: baseline;
    overflow-wrap: break-word;
    min-width: 0;
}

.m-sn-tag ul li a{
    color: #fff;
    padding: 6px 10px 7px 10px;
    border: 1px solid #FFF;
    border-radius: 50px;
    transition: .2s;
}

@media (hover: hover) and (pointer: fine) {
    .m-sn-tag ul li a:hover{
        background: #fff;
        color: #019E3B;
    }
}


@media screen and (max-width: 768px){

    .m-sn{
        position: fixed;
        top: 50px;
        left: 0;
        right: 0;
        max-width: calc(760px + 2vw);
        height: calc(100svh - 50px);
        margin: 0 auto;
        z-index: 200;
        display: block;
        transition: .2s;
        visibility:hidden;
    }
    
    .m-sn.open{
        pointer-events: auto;
        overflow: auto;
        visibility:visible;
    }
    
    .m-sn-b{
        transition: .2s;
        background: rgba(1, 158, 59, .94);
        opacity: 0;
        height: auto;
    }
    
    .m-sn.open .m-sn-b{
        opacity: 1;
    }
    
    .m-sn-i{
        width: 100%;
    }
    
    .m-sn-c{
    
        margin:0 auto;
        padding: 30px 20px 80px 20px;
    }

    body.imobile-on .m-sn-c{
        padding: 30px 20px 230px 20px;
    }
    
    
    .m-sn-search{
        width: auto;
        background: #fff;
        padding: 0 10px;
        margin: 0 0 0 0;
        border-radius: 50px;
    }
    
    .m-sn-search button{
        background: none;
        width: 32px;
        height: 60px;
        padding: 0;
        border: none;
        margin: 0 10px 0 0;
    }
    
    .m-sn-search-i{
        flex: 1;
    }
    
    .m-sn-search-i input{
        background:none;
        border: none;
        border-radius: 0;
        color: #333;
        padding: 0;
        box-sizing: border-box;
        width: 100%;
        padding: 10px;
        height: 60px;
        outline: none;
        font-size: 16px;
    }
    
    .m-sn-tag{
        padding: 40px 0 20px 0;
    }
    
    .m-sn-tag p{
        font-size: 16px;
        line-height: 1;
        font-weight: 400;
        color: #fff;
        text-align: center;
    }
    
    .m-sn-tag ul{
        font-size: 0;
        gap: 10px 10px;
        flex-wrap: wrap;
        display: flex;
        margin: 20px 0 0 0;
    }
    
    .m-sn-tag ul li{
        font-size: 11px;
        line-height: 1.6;
        font-weight: 400;
        color: #fff;
        display: inline-flex;
        align-items: baseline;
        overflow-wrap: break-word;
        min-width: 0;
    }
    
    .m-sn-tag ul li a{
        color: #fff;
        padding: 6px 10px 7px 10px;
        border: 1px solid #FFF;
        border-radius: 50px;
        transition: .2s;
    }
}

/* --------------------------------------------------------------------- */
/* mm */
/* --------------------------------------------------------------------- */

.m-m-copy{
    font-size: 10px;
    line-height: 1;
    font-weight: 700;
    color: #fff;
    text-align: center;
    margin: 40px 0 0 0 ;
}

.m-m-logo{
    max-width: 130px;
    margin: 10px auto 0 auto;
}

.m-m-logo a{
    display: block;
    transition: .2s;
}

@media (hover: hover) and (pointer: fine) {
    .m-m-logo a:hover{
        opacity: .6;
    }
}

.m-m-fu-ttl{
    font-size: 10px;
    line-height: 1;
    font-weight: 700;
    color: #fff;
    text-align: center;
    margin: 30px auto 0 auto;
}

.m-m-fu-sns{
    margin: 10px auto 0 auto;
}

.m-m-fu-sns ul{
    font-size: 0;
    text-align: center;
}

.m-m-fu-sns ul li{
    display: inline-block;
    width: 38px;
    margin: 0 24px 0 0;
}

.m-m-fu-sns ul li a{
    display: block;
    transition: .2s;
}

.m-m-fu-sns ul li:last-child{
    margin: 0;
}

@media (hover: hover) and (pointer: fine) {
    .m-m-fu-sns ul li a:hover{
        opacity: .6;
    }
}


/* --------------------------------------------------------------------- */
/* m-e */
/* --------------------------------------------------------------------- */

.m-e-box{
    width: 100%;
}

.m-e-box a{
    display: block;
    transition: .2s;
}

@media (hover: hover) and (pointer: fine) {
    .m-e-box a:hover{
        opacity: .6;
    }
}

.m-e-box-thumb figure{
    aspect-ratio: 640 / 360;
}

.m-e-box-thumb.special figure{
    aspect-ratio: 640 / 480;
}

.m-e-box-thumb.serialization figure{
    aspect-ratio: 640 / 320;
}

.m-e-box-thumb figure img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.m-e-box-label{
    margin: 2% 0 0 0;
}

.m-e-box-label-ss{
    font-size: 16px;
    line-height: 1.7;
    font-weight: 400;
}

.m-e-box-meta{
    margin: 2% 0 0 0;
    display: flex;
}

.m-e-box-meta-cat{
    font-size: 12px;
    line-height: 1.7;
    font-weight: 700;
    color: #019E3B;
}

.m-e-box-meta-times{
    font-size: 12px;
    line-height: 1.7;
    font-weight: 400;
    color: #717171;
    padding: 0 0 0 10px;
}

.m-e-box-meta-pr{
    font-size: 10px;
    line-height: 1;
    font-weight: 700;
    color: #000;
    padding: 2px 8px 3px 8px;
    margin: 0 0 0 10px;
    border: 1px solid #000;
    border-radius: 50px;
}

.m-e-box-ttl{
    font-size: 18px;
    line-height: 1.6;
    font-weight: 400;
    color: #000;
    margin: 2% 0 0 0;
}

.m-e-box-authors{
    margin: 3% 0 0 0;
    display: flex;
    gap:20px;
}

.m-e-box-authors-box{
    display: inline-flex;
    align-items: baseline;
}

.m-e-box-authors-box-tn p{
    max-width: 30px;
    aspect-ratio: 50 / 50;
    border-radius: 50%;
    border: 1px solid #ccc;
    overflow: hidden;
    position: relative;
}

.m-e-box-authors-box-tn p img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.m-e-box-authors-box-name{
    flex: 1;
    padding: 0 0 0 10px;
}

.m-e-box-authors-box-name p{
    font-size: 10px;
    line-height: 1.6;
    font-weight: 400;
    color: #000;
}

.m-e-box-ttl-ss{
    font-size: 18px;
    line-height: 1.6;
    font-weight: 700;
    color: #000;
    margin: 2% 0 0 0;
}


.m-e-box-desc{
    font-size: 14px;
    line-height: 1.8;
    font-weight: 400;
    color: #000;
    margin: 2% 0 0 0;
}

@media screen and (max-width: 768px){

    .m-e-box a{
        display: block;
        transition: .2s;
    }
    
    @media (hover: hover) and (pointer: fine) {
        .m-e-box a:hover{
            opacity: .6;
        }
    }
    
    .m-e-box-thumb figure{
        aspect-ratio: 640 / 360;
    }
    
    .m-e-box-thumb figure img{
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
    
    .m-e-box-label-ss{
        font-size: 14px;
        line-height: 1.7;
        font-weight: 400;
    }
    
    .m-e-box-meta{
        margin: 2% 0 0 0;
        display: flex;
    }
    
    .m-e-box-meta-cat{
        font-size: 11px;
        line-height: 1.7;
        font-weight: 700;
        color: #019E3B;
    }
    
    .m-e-box-meta-times{
        font-size: 11px;
        line-height: 1.7;
        font-weight: 400;
        color: #717171;
        padding: 0 0 0 10px;
    }
    
    .m-e-box-meta-pr{
        font-size: 9px;
        line-height: 1;
        font-weight: 700;
        color: #000;
        padding: 2px 8px 3px 8px;
        margin: 0 0 0 10px;
        border: 1px solid #000;
        border-radius: 50px;
    }
    
    .m-e-box-ttl{
        font-size: 18px;
        line-height: 1.6;
        font-weight: 400;
        color: #000;
        margin: 2% 0 0 0;
    }
    
    .m-e-box-authors{
        margin: 3% 0 0 0;
        display: flex;
        gap:20px;
    }
    
    .m-e-box-authors-box{
        display: inline-flex;
        align-items: baseline;
    }
    
    .m-e-box-authors-box-tn p{
        max-width: 30px;
        aspect-ratio: 50 / 50;
        border-radius: 50%;
        border: 1px solid #ccc;
        overflow: hidden;
        position: relative;
    }
    
    .m-e-box-authors-box-tn p img{
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
    
    .m-e-box-authors-box-name{
        flex: 1;
        padding: 0 0 0 10px;
    }
    
    .m-e-box-authors-box-name p{
        font-size: 10px;
        line-height: 1.6;
        font-weight: 400;
        color: #000;
    }
    
    .m-e-box-ttl-ss{
        font-size: 14px;
        line-height: 1.6;
        font-weight: 700;
        color: #000;
        margin: 2% 0 0 0;
    }
    
    .m-e-box-desc{
        font-size: 12px;
        line-height: 1.8;
        font-weight: 400;
        color: #000;
        margin: 2% 0 0 0;
    }
}


/* --------------------------------------------------------------------- */
/* sb ad embed */
/* --------------------------------------------------------------------- */

.m-sb-embed-1{
    margin: 0 0 40px 0;
}

.m-sb-embed-2{
    margin: 40px 0 0 0;
}

@media screen and (max-width: 768px){
    .m-sb-embed-1{
        margin: 0 16px 30px 16px;
    }
    
    .m-sb-embed-2{
        margin: 30px 16px 0 16px;
    }
}


/* --------------------------------------------------------------------- */
/* sb rank */
/* --------------------------------------------------------------------- */

.m-sb-rank-ttl{
    font-size: 20px;
    line-height: 1.6;
    font-weight: 700;
    color: #019E3B;
    text-align: center;
}

.m-sb-rank-l{
    gap: 10px 0;
    margin: 14px 0 0 0;
}

.m-sb-rank-box{
    width: 100%;
}

.m-sb-rank-box a{
    display: block;
}

.m-sb-rank-box-number{
    font-size: 22px;
    line-height: 1.6;
    font-weight: 700;
    color: #019E3B;
}

.m-sb-rank-box-thumb{
    width: 41%;
}

.m-sb-rank-box-thumb figure{
    aspect-ratio: 130 / 74;
}

.m-sb-rank-box-thumb figure img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.m-sb-rank-box-c{
    flex: 1;
    padding: 0 0 0 10px;
}

.m-sb-rank-box-ttl{
    font-size: 14px;
    line-height: 1.6;
    font-weight: 400;
    color: #000;
}

.m-sb-rank-box-meta{
    width: 100%;
    margin: 6px 0 0 0;
}

.m-sb-rank-box-authors{
    font-size: 11px;
    line-height: 1.6;
    font-weight: 400;
    color: #000;
}

.m-sb-rank-box-pr{
    font-size: 11px;
    line-height: 1.6;
    font-weight: 700;
    color: #000;
    flex: 1;
    padding: 0 0 0 10px;
}


@media screen and (max-width: 768px){

    .m-sb-rank-ttl{
        font-size: 20px;
        line-height: 1.6;
        font-weight: 700;
        color: #019E3B;
        text-align: center;
    }
    
    .m-sb-rank-l{
        gap: 20px 0;
        margin: 14px 0 0 0;
    }
    
    .m-sb-rank-box{
        width: 100%;
    }
    
    .m-sb-rank-box a{
        display: block;
    }
    
    .m-sb-rank-box-number{
        font-size: 18px;
        line-height: 1;
        font-weight: 700;
        color: #019E3B;
    }
    
    .m-sb-rank-box-thumb{
        width: 41%;
    }
    
    .m-sb-rank-box-thumb figure{
        aspect-ratio: 130 / 74;
    }
    
    .m-sb-rank-box-thumb figure img{
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
    
    .m-sb-rank-box-c{
        flex: 1;
        padding: 0 16px 0 18px;
    }
    
    .m-sb-rank-box-ttl{
        font-size: 14px;
        line-height: 1.6;
        font-weight: 400;
        color: #000;
        margin: 10px 0 0 0;
    }
    
    .m-sb-rank-box-meta{
        width: 100%;
        margin: 6px 0 0 0;
    }
    
    .m-sb-rank-box-authors{
        font-size: 11px;
        line-height: 1.6;
        font-weight: 400;
        color: #000;
    }
    
    .m-sb-rank-box-pr{
        font-size: 11px;
        line-height: 1.6;
        font-weight: 700;
        color: #000;
        flex: 1;
        padding: 0 0 0 10px;
    }
}


/* --------------------------------------------------------------------- */
/* sb pickup */
/* --------------------------------------------------------------------- */

.m-sb-pickup{
    box-sizing: border-box;
    padding: 14px;
    background: #F0F0F0;
    margin: 40px 0 0 0;
}

.m-sb-pickup-ttl{
    font-size: 20px;
    line-height: 1.6;
    font-weight: 700;
    color: #019E3B;
    text-align: center;
}

.m-sb-pickup-l{
    gap: 30px 0;
    margin: 14px 0 0 0;
}

@media screen and (max-width: 768px){
    .m-sb-pickup{
        box-sizing: border-box;
        padding: 24px 16px;
        background: #F0F0F0;
        margin: 30px 0 0 0;
    }
    
    .m-sb-pickup-ttl{
        font-size: 18px;
        line-height: 1.6;
        font-weight: 700;
        color: #019E3B;
        text-align: center;
    }
    
    .m-sb-pickup-l{
        gap: 30px 0;
        margin: 14px 0 0 0;
    }
}

/* --------------------------------------------------------------------- */
/* sb bn */
/* --------------------------------------------------------------------- */

.m-sb-bn{
    margin: 40px 0 0 0;
}

.m-sb-bn.head{
    margin: 0 0 40px 0;
}

.m-sb-bn-l{
    gap: 30px 0;
    font-size: 0;
}

.m-sb-bn-l li a{
    display: block;
    transition: .2s;
}

@media (hover: hover) and (pointer: fine) {
    .m-sb-bn-l li a:hover{
        opacity: .6;
    }
}

@media screen and (max-width: 768px){
    
    .m-sb-bn{
        margin: 30px 16px 0 16px;
    }

    .m-sb-bn.head{
        margin: 0px 16px 30px 16px;
    }
    
    .m-sb-bn-l{
        gap: 20px 0;
        font-size: 0;
    }
    
    .m-sb-bn-l li a{
        display: block;
        transition: .2s;
    }
}


/* --------------------------------------------------------------------- */
/* sb sn */
/* --------------------------------------------------------------------- */

.m-sb-sn{
    margin: 40px 0 0 0;
    border: dotted 2px #019E3B;
}

.m-sb-sn-cttl{
    font-size: 16px;
    line-height: 1.6;
    font-weight: 700;
    color: #019E3B;
    text-align: center;
    padding: 10px;
    border-bottom: dotted 2px #019E3B;
}

.m-sb-sn-b{
    padding: 20px;
}

.m-sb-sn-issue{
    font-size: 20px;
    line-height: 1.6;
    font-weight: 700;
    color: #019E3B;
    text-align: center;
}

.m-sb-sn-ttl{
    font-size: 20px;
    line-height: 1.6;
    font-weight: 700;
    color: #019E3B;
    text-align: center;
}

.m-sb-sn-cover{
    width: 60%;
    margin: 20px auto 0 auto;
}

.m-sb-sn-cover a{
    transition: .2s;
}

.m-sb-sn-btn{
    margin: 20px auto 0 auto;
    font-size: 14px;
    line-height: 1.6;
    font-weight: 400;
    text-align: center;
}

.m-sb-sn-btn a{
    display: block;
    position: relative;
    border: 1px solid #019E3B;
    padding: 12px 14px 14px 14px;
    border-radius: 60px;
    transition: .2s;
}

@media (hover: hover) and (pointer: fine) {
    .m-sb-sn-cover a:hover{
        opacity: .6;
    }
    .m-sb-sn-btn a:hover{
        background: #019E3B;
        color: #fff;
    }
}

@media screen and (max-width: 768px){

    .m-sb-sn{
        margin: 30px 16px 0 16px;
        border: dotted 1px #019E3B;
    }
    
    .m-sb-sn-cttl{
        font-size: 14px;
        line-height: 1.6;
        font-weight: 700;
        color: #019E3B;
        text-align: center;
        padding: 10px;
        border-bottom: dotted 1px #019E3B;
    }
    
    .m-sb-sn-b{
        padding: 20px;
    }
    
    .m-sb-sn-issue{
        font-size: 18px;
        line-height: 1.6;
        font-weight: 700;
        color: #019E3B;
        text-align: center;
    }
    
    .m-sb-sn-ttl{
        font-size: 18px;
        line-height: 1.6;
        font-weight: 700;
        color: #019E3B;
        text-align: center;
    }
    
    .m-sb-sn-cover{
        width: 60%;
        margin: 20px auto 0 auto;
    }
    
    .m-sb-sn-cover a{
        transition: .2s;
    }
    
    .m-sb-sn-btn{
        margin: 20px auto 0 auto;
        font-size: 14px;
        line-height: 1.6;
        font-weight: 400;
        text-align: center;
    }
    
    .m-sb-sn-btn a{
        display: block;
        position: relative;
        border: 1px solid #019E3B;
        padding: 12px 14px 14px 14px;
        border-radius: 60px;
        transition: .2s;
    }
}

/* --------------------------------------------------------------------- */
/* sb sns */
/* --------------------------------------------------------------------- */

.m-sb-sns{
    margin: 40px 0 0 0;
}

.m-sb-sns-ttl{
    font-size: 16px;
    line-height: 1.6;
    font-weight: 700;
    color: #019E3B;
    text-align: center;
}

.m-sb-sns nav{
    margin: 20px 0 0 0;
}

.m-sb-sns nav ul{
    gap: 14px 0;
}

.m-sb-sns nav ul li{
    width: 100%;
}

.m-sb-sns nav ul li a{
    padding: 10px 14px;
    transition: .2s;
}

.s-x a{
    border: 1px solid #000000;
    background: #000000;
}

.s-fb a{
    border: 1px solid #0066FF;
    background: #0066FF;
}

.s-ig a{
    border: 1px solid #000000;
    background: #fff;
}

.m-sb-sns-i{
    width: 32px;
    font-size: 0;
}

.m-sb-sns-desc{
    flex: 1;
    padding: 0 0 0 10px;
    font-size: 12px;
    line-height: 1.6;
    font-weight: 700;
    color: #fff;
    margin: -4px 0 0 0;
}

.s-ig a .m-sb-sns-desc{
    color: #000;
}

@media (hover: hover) and (pointer: fine) {
    .m-sb-sns nav ul li a:hover{
        opacity: .6;
    }
}

@media screen and (max-width: 768px){

    .m-sb-sns{
        margin: 30px 16px 0 16px;
    }
    
    .m-sb-sns-ttl{
        font-size: 16px;
        line-height: 1.6;
        font-weight: 700;
        color: #019E3B;
        text-align: center;
    }
    
    .m-sb-sns nav{
        margin: 20px 0 0 0;
    }
    
    .m-sb-sns nav ul{
        gap: 14px 0;
    }
    
    .m-sb-sns nav ul li{
        width: 100%;
    }
    
    .m-sb-sns nav ul li a{
        padding: 10px 14px;
        transition: .2s;
    }
    
    .s-x a{
        border: 1px solid #000000;
        background: #000000;
    }
    
    .s-fb a{
        border: 1px solid #0066FF;
        background: #0066FF;
    }
    
    .s-ig a{
        border: 1px solid #000000;
        background: #fff;
    }
    
    .m-sb-sns-i{
        width: 32px;
        font-size: 0;
    }
    
    .m-sb-sns-desc{
        flex: 1;
        padding: 0 0 0 10px;
        font-size: 12px;
        line-height: 1.6;
        font-weight: 700;
        color: #fff;
        margin: -4px 0 0 0;
    }
    
    .s-ig a .m-sb-sns-desc{
        color: #000;
    }
}

/* --------------------------------------------------------------------- */
/* index */
/* --------------------------------------------------------------------- */

/* v */

.i-v{
	width:100vw;
    position: relative;
    overflow: hidden;
    padding: 0 0 2% 0;
}

.i-vs{
    position: relative;
    z-index: 5;
}

.i-vs .splide__pagination{
    bottom:0;
    left: 0;
    padding: 0 1em;
    width: 100%;
    margin: 30px auto 0 auto;
    position: relative;
    right: 0;
    z-index: 1;
}

.i-vs .splide__pagination__page {
    background: #D1D0D0;
    border: 0;
    border-radius: 0;
    display: inline-block;
    height: 4px;
    margin: 0 6px;
    opacity: .7;
    padding: 0;
    position: relative;
    transition: .2s;
    width: 20px;
}

.i-vs .splide__pagination__page.is-active {
    background:#019E3B;
    z-index: 1;
    width: 30px;
    transform: scale(1);
}

.i-v .m-e-box-ttl{
    font-size: 26px;
}

@media screen and (max-width: 768px){
    .i-vs .m-e-box-b{
        padding: 10px 16px 0 16px;
    }
    .i-v .m-e-box-ttl{
        font-size: 20px;
    }

    .i-vs .splide__pagination{
        bottom:0;
        left: 0;
        padding: 0 1em 20px 1em;
        width: 100%;
        margin: 20px auto 0 auto;
        position: relative;
        right: 0;
        z-index: 1;
    }

    .i-vs .splide__pagination__page {
        background: #D1D0D0;
        border: 0;
        border-radius: 0;
        display: inline-block;
        height: 3px;
        margin: 0 4px;
        opacity: .7;
        padding: 0;
        position: relative;
        transition: .2s;
        width: 10px;
    }

    .i-vs .splide__pagination__page.is-active {
        background:#019E3B;
        z-index: 1;
        width: 20px;
        transform: scale(1);
    }
}

/* vub */

.vub{
    max-width: 1200px;
    margin: 0 auto;
    padding: 30px 4vw 60px 4vw;
    position: relative;
    box-sizing: unset;
}

.vub-l{
    font-size: 0;
    gap: 20px 20px;
    display: grid;
	grid-template-columns: repeat(3, 1fr);
}

.vub-l li{
    font-size: 0;
}

@media screen and (max-width: 768px){

    .vub{
        max-width: 1200px;
        margin: 0 auto;
        padding: 30px 16px 60px 16px;
        position: relative;
        box-sizing: unset;
    }
    
    .vub-l{
        font-size: 0;
        gap: 20px 0;
        display: flex;
	    flex-wrap: wrap;
    }
    
    .vub-l li{
        font-size: 0;
        width: calc(100%);
    }

}

/* new */

.i-new-l{
    gap: 40px 0;
    margin: 30px 0 0 0;
}

.i-new-l .m-e-box{
    width: calc(50% - 20px);
}

.i-new-ttl{
    font-size: 22px;
    line-height: 1.6;
    font-weight: 700;
    color: #019E3B;
    text-align: center;
}

.i-new-more{
    margin: 50px 0 0 0;
    text-align: center;
}

.i-new-more p{
    font-size: 14px;
    line-height: 1.6;
    font-weight: 400;
    max-width: 300px;
    margin: auto;
}

.i-new-more p a{
    border: 1px solid #019E3B;
    padding: 14px 0 15px 0;
    color: #019E3B;
    display: block;
    border-radius: 100px;
    position: relative;
    transition: .2s;
}

.i-new-more p a::before{
    width: 13px;
    height: 12px;
    content: "";
    background: url(/cp/wp-content/themes/swell_child/images/i-next-g.svg) no-repeat;
    position: absolute;
    right: 26px;
    top: 0;
    bottom: 0;
    margin: auto;
    transition: .2s;
}

.i-new-more p a::after{
    width: 13px;
    height: 12px;
    content: "";
    background: url(/cp/wp-content/themes/swell_child/images/i-next-w.svg) no-repeat;
    position: absolute;
    right: 26px;
    top: 0;
    bottom: 0;
    margin: auto;
    opacity: 0;
    transition: .2s;
}

@media (hover: hover) and (pointer: fine) {
    .i-new-more p a:hover{
        background: #019E3B;
        color: #fff;
    }
    .i-new-more p a:hover::before{
        opacity: 0;
    }
    .i-new-more p a:hover::after{
        opacity: 1;
    }
}


@media screen and (max-width: 768px){

    .i-new-l{
        gap: 40px 0;
        margin: 20px 0 0 0;
    }
    
    .i-new-l .m-e-box{
        width: calc(100%);
    }

    .i-new .m-e-box-b{
        padding: 7px 16px 0 16px;
    }
    
    .i-new-ttl{
        font-size: 18px;
        line-height: 1.6;
        font-weight: 700;
        color: #019E3B;
        text-align: center;
    }
    
    .i-new-more{
        margin: 30px 0 0 0;
        text-align: center;
    }
}

/* --------------------------------------------------------------------- */
/* special */
/* --------------------------------------------------------------------- */

.m-special{
    background: #019E3B;
    padding: 30px 50px 50px 50px;
    margin: 60px 0 0 0;
}

.m-special-ttl{
    font-size: 22px;
    line-height: 1.6;
    font-weight: 700;
    color: #fff;
    text-align: center;
}

.m-special-l{
    gap: 40px 0;
    margin: 30px 0 0 0;
}

.m-special-l .m-special-box{
    width: calc(100%);
}

.m-special-box a{
    display: block;
    transition: .2s;
}

.m-special-box-tn{
    width: 50%;
}

.m-special-box-tn figure{
    aspect-ratio: 640 / 480; 
}

.m-special-box-tn figure img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.m-special-box-c{
    flex: 1;
    padding: 0 0 0 30px;
}

.m-special-box-time{
    font-size: 12px;
    line-height: 1.6;
    font-weight: 400;
    color: #fff;
}

.m-special-box-ttl{
    font-size: 18px;
    line-height: 1.6;
    font-weight: 400;
    color: #fff;
}

.m-special-box-ex{
    font-size: 13px;
    line-height: 1.6;
    font-weight: 400;
    color: #fff;
    margin: 10px 0 0 0;
}

.m-special-box-next{
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: 1px solid #fff;
    margin: 20px auto 0 auto;
    position: relative;
    transition: .2s;
}

.m-special-box-next::before{
    width: 13px;
    height: 12px;
    content: "";
    background: url(/cp/wp-content/themes/swell_child/images/i-next-w.svg) no-repeat;
    position: absolute;
    right: 0;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    transition: .2s;
}

.m-special-box-next::after{
    width: 13px;
    height: 12px;
    content: "";
    background: url(/cp/wp-content/themes/swell_child/images/i-next-g.svg) no-repeat;
    position: absolute;
    right: 0;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    transition: .2s;
    opacity: 0;
}

@media (hover: hover) and (pointer: fine) {
    .m-special-box a:hover{
        opacity: .6;
    }
    .m-special-box a:hover .m-special-box-next{
        background: #fff;
    }
    .m-special-box a:hover .m-special-box-next::before{
        opacity: 0;
    }
    .m-special-box a:hover .m-special-box-next::after{
        opacity: 1;
    }
}

.m-special-more{
    margin: 50px 0 0 0;
    text-align: center;
}

.m-special-more p{
    font-size: 14px;
    line-height: 1.6;
    font-weight: 400;
    max-width: 300px;
    margin: auto;
}

.m-special-more p a{
    border: 1px solid #fff;
    padding: 14px 0 15px 0;
    color: #fff;
    display: block;
    border-radius: 100px;
    position: relative;
    transition: .2s;
}

.m-special-more p a::before{
    width: 13px;
    height: 12px;
    content: "";
    background: url(/cp/wp-content/themes/swell_child/images/i-next-w.svg) no-repeat;
    position: absolute;
    right: 26px;
    top: 0;
    bottom: 0;
    margin: auto;
    transition: .2s;
}

.m-special-more p a::after{
    width: 13px;
    height: 12px;
    content: "";
    background: url(/cp/wp-content/themes/swell_child/images/i-next-g.svg) no-repeat;
    position: absolute;
    right: 26px;
    top: 0;
    bottom: 0;
    margin: auto;
    opacity: 0;
    transition: .2s;
}

@media (hover: hover) and (pointer: fine) {
    .m-special-more p a:hover{
        background: #fff;
        color: #019E3B;
    }
    .m-special-more p a:hover::before{
        opacity: 0;
    }
    .m-special-more p a:hover::after{
        opacity: 1;
    }
}

@media screen and (max-width: 768px){

    .m-special{
        background: #019E3B;
        padding: 40px 44px 50px 44px;
        margin: 60px 0 0 0;
    }
    
    .m-special-ttl{
        font-size: 18px;
        line-height: 1.6;
        font-weight: 700;
        color: #fff;
        text-align: center;
    }
    
    .m-special-l{
        gap: 30px 0;
        margin: 20px 0 0 0;
    }
    
    .m-special-l .m-special-box{
        width: calc(100%);
    }
    
    .m-special-box a{
        display: block;
        transition: .2s;
    }
    
    .m-special-box-tn{
        width: calc(100%);
    }
    
    .m-special-box-tn figure{
        aspect-ratio: 640 / 480;
    }
    
    .m-special-box-tn figure img{
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
    
    .m-special-box-c{
        flex: none;
        width: calc(100%);
        padding: 10px 0 0 0;
    }
    
    .m-special-box-next{
        width: 40px;
        height: 40px;
        border-radius: 50%;
        border: 1px solid #fff;
        margin: 14px auto 0 auto;
        position: relative;
        transition: .2s;
    }
    
    .m-special-more{
        margin: 30px 0 0 0;
        text-align: center;
    }
    
    .m-special-more p{
        font-size: 14px;
        line-height: 1.6;
        font-weight: 400;
        max-width: 300px;
        margin: auto;
    }
    
    .m-special-more p a{
        border: 1px solid #fff;
        padding: 14px 0 15px 0;
        color: #fff;
        display: block;
        border-radius: 100px;
        position: relative;
        transition: .2s;
    }
    
    .m-special-more p a::before{
        width: 13px;
        height: 12px;
        content: "";
        background: url(/cp/wp-content/themes/swell_child/images/i-next-w.svg) no-repeat;
        position: absolute;
        right: 26px;
        top: 0;
        bottom: 0;
        margin: auto;
        transition: .2s;
    }
    
    .m-special-more p a::after{
        width: 13px;
        height: 12px;
        content: "";
        background: url(/cp/wp-content/themes/swell_child/images/i-next-g.svg) no-repeat;
        position: absolute;
        right: 26px;
        top: 0;
        bottom: 0;
        margin: auto;
        opacity: 0;
        transition: .2s;
    }

}

/* --------------------------------------------------------------------- */
/* serialization */
/* --------------------------------------------------------------------- */

.m-serialization{
    background: #F0F0F0;
    padding: 30px 50px 50px 50px;
    margin: 0px 0 0 0;
}

.m-serialization-ttl{
    font-size: 22px;
    line-height: 1.6;
    font-weight: 700;
    color: #019E3B;
    text-align: center;
}

.m-serialization-l{
    gap: 40px 0;
    margin: 30px 0 0 0;
}

.m-serialization-l .m-serialization-box{
    width: calc(50% - 20px);
}

.m-serialization-box-tn{
    width: 100%;
}

.m-serialization-box-tn a{
    display: block;
    transition: .2s;
}

.m-serialization-box-img{
    aspect-ratio: 640 / 320; 
}

.m-serialization-box-img img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.m-serialization-box-ttl{
    font-size: 16px;
    line-height: 1.6;
    font-weight: 700;
    color: #000;
    display: block;
    position: relative;
    margin: 4px 0 0 0;
}

.m-serialization-box-ttl::after{
    width: 13px;
    height: 12px;
    content: "";
    background: url(/cp/wp-content/themes/swell_child/images/i-next-g.svg) no-repeat;
    position: absolute;
    right: 0;
    top: 8px;
    margin: auto;
    transition: .2s;
}

.m-serialization-box-c{
    width: 100%;
    padding: 10px 0 0 0;
}

.m-serialization-box-et{
    border-left: 1px solid #707070;
    padding: 0 0 0 14px;
}

.m-serialization-box-et-ttl{
    font-size: 18px;
    line-height: 1.6;
    font-weight: 400;
    color: #000;
}

.m-serialization-box-meta{
    width: 100%;
}

.m-serialization-box-number{
    font-size: 18px;
    line-height: 1.6;
    font-weight: 700;
    color: #019E3B;
}

.m-serialization-box-time{
    font-size: 12px;
    line-height: 1.6;
    font-weight: 400;
    color: #717171;
    flex: 1;
    padding: 0 0 0 10px;
}

.m-serialization-box-next{
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: 1px solid #fff;
    margin: 20px auto 0 auto;
    position: relative;
    transition: .2s;
}

.m-serialization-box-next::before{
    width: 13px;
    height: 12px;
    content: "";
    background: url(/cp/wp-content/themes/swell_child/images/i-next-w.svg) no-repeat;
    position: absolute;
    right: 0;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    transition: .2s;
}

.m-serialization-box-next::after{
    width: 13px;
    height: 12px;
    content: "";
    background: url(/cp/wp-content/themes/swell_child/images/i-next-g.svg) no-repeat;
    position: absolute;
    right: 0;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    transition: .2s;
    opacity: 0;
}

@media (hover: hover) and (pointer: fine) {
    .m-serialization-box a:hover{
        opacity: .6;
    }
    .m-serialization-box a:hover .m-serialization-box-next{
        background: #fff;
    }
    .m-serialization-box a:hover .m-serialization-box-next::before{
        opacity: 0;
    }
    .m-serialization-box a:hover .m-serialization-box-next::after{
        opacity: 1;
    }
}

.m-serialization-more{
    margin: 50px 0 0 0;
    text-align: center;
}

.m-serialization-more p{
    font-size: 14px;
    line-height: 1.6;
    font-weight: 400;
    max-width: 300px;
    margin: auto;
}

.m-serialization-more p a{
    border: 1px solid #019E3B;
    padding: 14px 0 15px 0;
    color: #019E3B;
    display: block;
    border-radius: 100px;
    position: relative;
    transition: .2s;
}

.m-serialization-more p a::before{
    width: 13px;
    height: 12px;
    content: "";
    background: url(/cp/wp-content/themes/swell_child/images/i-next-g.svg) no-repeat;
    position: absolute;
    right: 26px;
    top: 0;
    bottom: 0;
    margin: auto;
    transition: .2s;
}

.m-serialization-more p a::after{
    width: 13px;
    height: 12px;
    content: "";
    background: url(/cp/wp-content/themes/swell_child/images/i-next-w.svg) no-repeat;
    position: absolute;
    right: 26px;
    top: 0;
    bottom: 0;
    margin: auto;
    opacity: 0;
    transition: .2s;
}

@media (hover: hover) and (pointer: fine) {
    .m-serialization-more p a:hover{
        background: #019E3B;
        color: #fff;
    }
    .m-serialization-more p a:hover::before{
        opacity: 0;
    }
    .m-serialization-more p a:hover::after{
        opacity: 1;
    }
}

@media screen and (max-width: 768px){

    .m-serialization{
        background: #F0F0F0;
        padding: 30px 16px 50px 16px;
        margin: 0px 0 0 0;
    }
    
    .m-serialization-ttl{
        font-size: 18px;
        line-height: 1.6;
        font-weight: 700;
        color: #019E3B;
        text-align: center;
    }
    
    .m-serialization-l{
        gap: 30px 0;
        margin: 20px 0 0 0;
    }
    
    .m-serialization-l .m-serialization-box{
        width: calc(100%);
    }
    
    .m-serialization-box-tn{
        width: 100%;
    }
    
    .m-serialization-box-tn a{
        display: block;
        transition: .2s;
    }
    
    .m-serialization-box-img{
        aspect-ratio: 640 / 320; 
    }
    
    .m-serialization-box-img img{
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
    
    
    .m-serialization-box-ttl{
        font-size: 16px;
        line-height: 1.6;
        font-weight: 700;
        color: #000;
        display: block;
        position: relative;
        margin: 4px 0 0 0;
    }
    
    .m-serialization-box-ttl::after{
        width: 13px;
        height: 12px;
        content: "";
        background: url(/cp/wp-content/themes/swell_child/images/i-next-g.svg) no-repeat;
        position: absolute;
        right: 0;
        top: 8px;
        margin: auto;
        transition: .2s;
    }
    
    .m-serialization-box-c{
        width: 100%;
        padding: 10px 0 0 0;
    }
    
    .m-serialization-box-et{
        border-left: 1px solid #707070;
        padding: 0 0 0 14px;
    }
    
    .m-serialization-box-et-ttl{
        font-size: 18px;
        line-height: 1.6;
        font-weight: 400;
        color: #000;
    }
    
    .m-serialization-box-meta{
        width: 100%;
    }
    
    .m-serialization-box-number{
        font-size: 18px;
        line-height: 1.6;
        font-weight: 700;
        color: #019E3B;
    }
    
    .m-serialization-box-time{
        font-size: 12px;
        line-height: 1.6;
        font-weight: 400;
        color: #717171;
        flex: 1;
        padding: 0 0 0 10px;
    }
    
    .m-serialization-box-next{
        width: 40px;
        height: 40px;
        border-radius: 50%;
        border: 1px solid #fff;
        margin: 20px auto 0 auto;
        position: relative;
        transition: .2s;
    }
    
    .m-serialization-box-next::before{
        width: 13px;
        height: 12px;
        content: "";
        background: url(/cp/wp-content/themes/swell_child/images/i-next-w.svg) no-repeat;
        position: absolute;
        right: 0;
        left: 0;
        top: 0;
        bottom: 0;
        margin: auto;
        transition: .2s;
    }
    
    .m-serialization-box-next::after{
        width: 13px;
        height: 12px;
        content: "";
        background: url(/cp/wp-content/themes/swell_child/images/i-next-g.svg) no-repeat;
        position: absolute;
        right: 0;
        left: 0;
        top: 0;
        bottom: 0;
        margin: auto;
        transition: .2s;
        opacity: 0;
    }
    
    .m-serialization-more{
        margin: 30px 0 0 0;
        text-align: center;
    }
    
    .m-serialization-more p{
        font-size: 14px;
        line-height: 1.6;
        font-weight: 400;
        max-width: 300px;
        margin: auto;
    }
    
    .m-serialization-more p a{
        border: 1px solid #019E3B;
        padding: 14px 0 15px 0;
        color: #019E3B;
        display: block;
        border-radius: 100px;
        position: relative;
        transition: .2s;
    }
    
    .m-serialization-more p a::before{
        width: 13px;
        height: 12px;
        content: "";
        background: url(/cp/wp-content/themes/swell_child/images/i-next-g.svg) no-repeat;
        position: absolute;
        right: 26px;
        top: 0;
        bottom: 0;
        margin: auto;
        transition: .2s;
    }
    
    .m-serialization-more p a::after{
        width: 13px;
        height: 12px;
        content: "";
        background: url(/cp/wp-content/themes/swell_child/images/i-next-w.svg) no-repeat;
        position: absolute;
        right: 26px;
        top: 0;
        bottom: 0;
        margin: auto;
        opacity: 0;
        transition: .2s;
    }

}

/* --------------------------------------------------------------------- */
/* post */
/* --------------------------------------------------------------------- */

.post-h .m-e-box-meta-cat{
    font-size: 14px;
}

.post-h .m-e-box-meta-times{
    font-size: 14px;
}

.post-h .m-e-box-meta-pr{
    font-size: 12px;
}

.post-h .m-e-box-ttl{
    font-size: 26px;
    font-weight: 700;
}

.post-h-tag {
    margin: 30px 0 0 0;
}

.post-h-tag ul{
    list-style: none;
    font-size: 0;
    flex-wrap: wrap;
    display: flex;
    gap: 8px;
}

.post-h-tag ul li{
    display: inline-flex;
    font-size: 12px;
    line-height: 1;
    min-width: 0;
    box-sizing: border-box;
}

.post-h-tag ul li a{
    display: block;
    padding: 8px 12px 9px 12px;
    border-radius: 40px;
    border: 1px solid #019E3B;
    color: #019E3B;
    transition: .2s;
}

@media (hover: hover) and (pointer: fine) {
    .post-h-tag ul li a:hover{
        background: #019E3B;
        color: #fff;
    }
}

.post-authors{
    margin: 60px 0 0 0;
}

.post-authors-box{
    width: 100%;
    background:#F0F0F0 ;
    border-bottom: 1px solid #707070;
}

.post-authors .post-authors-box:last-child{
    border-bottom: none;
}

.post-authors-box-h a{
    display: block;
    padding: 26px;
    transition: .2s;
    position: relative;
}

.post-authors-box-h a::after{
    width: 13px;
    height: 12px;
    content: "";
    background: url(/cp/wp-content/themes/swell_child/images/i-next-g.svg) no-repeat;
    position: absolute;
    right: 26px;
    top: 0;
    bottom: 0;
    margin: auto;
}

@media (hover: hover) and (pointer: fine) {
    .post-authors-box-h a:hover{
        opacity: .6;
    }
}

.post-authors-box-h .m-e-box-authors-box-tn p {
    max-width: 50px;
}

.post-authors-box-h .m-e-box-authors-box-name p {
    font-size: 14px;
}

.post-authors-box-b{
    padding: 0 26px 26px 26px;
}

.post-authors-box-b{
    font-size: 12px;
    line-height: 1.8;
    font-weight: 400;
    color: #000;
}

.post-authors-box-b a{
    text-decoration: underline;
}

@media (hover: hover) and (pointer: fine) {
    .post-authors-box-b a:hover{
        text-decoration: none;
    }
}

.post-related{
    margin: 60px 0 0 0;
}

.post-related-ttl{
    font-size: 20px;
    line-height: 1.6;
    font-weight: 700;
    color: #019E3B;
    text-align: center;
}

.post-related-l{
    gap: 40px 0;
    margin: 30px 0 0 0;
}

.post-related-l .m-e-box{
    width: calc(50% - 20px);
}

@media screen and (max-width: 768px){
    .post-h{
        padding: 0 16px;
    }
    .post-h .m-e-box-meta-cat{
        font-size: 14px;
    }
    
    .post-h .m-e-box-meta-times{
        font-size: 14px;
    }
    
    .post-h .m-e-box-meta-pr{
        font-size: 12px;
    }
    
    .post-h .m-e-box-ttl{
        font-size: 18px;
        font-weight: 700;
    }
    
    .post-h-tag {
        margin: 20px 0 0 0;
    }
    
    .post-h-tag ul{
        list-style: none;
        font-size: 0;
        display: flex;
        gap: 8px;
    }
    
    .post-h-tag ul li{
        display: inline-flex;
        font-size: 11px;
        line-height: 1;
    }
    
    .post-h-tag ul li a{
        display: block;
        padding: 8px 12px 9px 12px;
        border-radius: 40px;
        border: 1px solid #019E3B;
        color: #019E3B;
        transition: .2s;
    }
    
    .post-authors{
        margin: 60px 0 0 0;
    }
    
    .post-authors-box{
        background:#F0F0F0 ;
        border-bottom: 1px solid #707070;
    }
    
    .post-authors .post-authors-box:last-child{
        border-bottom: none;
    }
    
    .post-authors-box-h a{
        display: block;
        padding: 26px;
        transition: .2s;
        position: relative;
    }
    
    .post-authors-box-h a::after{
        width: 13px;
        height: 12px;
        content: "";
        background: url(/cp/wp-content/themes/swell_child/images/i-next-g.svg) no-repeat;
        position: absolute;
        right: 26px;
        top: 0;
        bottom: 0;
        margin: auto;
    }
    
    @media (hover: hover) and (pointer: fine) {
        .post-authors-box-h a:hover{
            opacity: .6;
        }
    }
    
    .post-authors-box-h .m-e-box-authors-box-tn p {
        max-width: 50px;
    }
    
    .post-authors-box-h .m-e-box-authors-box-name p {
        font-size: 14px;
    }
    
    .post-authors-box-b{
        padding: 0 26px 26px 26px;
    }
    
    .post-authors-box-b p{
        font-size: 12px;
        line-height: 1.8;
        font-weight: 400;
        color: #000;
    }
    
    .post-related{
        margin: 40px 0 0 0;
    }
    
    .post-related-ttl{
        font-size: 18px;
        line-height: 1.6;
        font-weight: 700;
        color: #019E3B;
        text-align: center;
    }
    
    .post-related-l{
        gap: 30px 0;
        margin: 20px 0 0 0;
    }
    
    .post-related-l .m-e-box{
        width: calc(100%);
    }

    .post-related-l .m-e-box .m-e-box-b{
        padding: 7px 16px 0 16px;
    }
}

/* --------------------------------------------------------------------- */
/* authors */
/* --------------------------------------------------------------------- */

.m-authors{
    background: #019E3B;
}

.m-authors-b{
    max-width: 1200px;
    margin: 0 auto;
    padding: 60px 4vw 60px 4vw;
    position: relative;
    box-sizing: unset;
}

.m-authors-ttl{
    font-size: 20px;
    line-height: 1.6;
    font-weight: 700;
    color: #fff;
    text-align: center;
}

.m-authors-c{
    padding: 0 100px;
    position: relative;
}

.m-authors-l{
    margin: 30px 0 0 0;
}



.m-authors-box a{
    display: block;
    transition: .2s;
}

@media (hover: hover) and (pointer: fine) {
    .m-authors-box a:hover{
        opacity: .6;
    }
}

.m-authors-box-tn{
    max-width: 114px;
    margin: 0 auto;
    aspect-ratio: 160 / 160;
    border-radius: 50%;
    overflow: hidden;
    background: #fff;
}

.m-authors-box-tn img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.m-authors .splide__arrow {
    -ms-flex-align: center;
    align-items: center;
    background: transparent;
    border: 1px solid #fff;
    border-radius: 50%;
    cursor: pointer;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    opacity: 1;
    padding: 0;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 40px;
    height: 40px;
    z-index: 1;
}

.m-authors .splide__arrow svg{
    display: none;
}

.m-authors .splide__arrow--prev {
    left: -100px;
}

.m-authors .splide__arrow--next {
    right: -100px;
}

.m-authors .splide__arrow--prev::before{
    content: "";
    width: 13px;
    height: 12px;
    content: "";
    background: url(/cp/wp-content/themes/swell_child/images/i-next-w.svg) no-repeat;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    pointer-events: none;
    transform: scale(-1, 1);
    transition: .2s;
}

.m-authors .splide__arrow--prev::after{
    content: "";
    width: 13px;
    height: 12px;
    content: "";
    background: url(/cp/wp-content/themes/swell_child/images/i-next-g.svg) no-repeat;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    pointer-events: none;
    transform: scale(-1, 1);
    opacity: 0;
    transition: .2s;
}

.m-authors .splide__arrow--next::before{
    content: "";
    width: 13px;
    height: 12px;
    content: "";
    background: url(/cp/wp-content/themes/swell_child/images/i-next-w.svg) no-repeat;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    pointer-events: none;
    transition: .2s;
}

.m-authors .splide__arrow--next::after{
    content: "";
    width: 13px;
    height: 12px;
    content: "";
    background: url(/cp/wp-content/themes/swell_child/images/i-next-g.svg) no-repeat;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    pointer-events: none;
    opacity: 0;
    transition: .2s;
}

.m-authors-box-jobname{
    font-size: 13px;
    line-height: 1.7;
    color: #fff;
    text-align: center;
    font-weight: 700;
    margin: 5% 0 0 0;
}

.m-authors-box-name{
    font-size: 14px;
    line-height: 1.7;
    color: #fff;
    text-align: center;
    font-weight: 700;
}

.m-authors-box-desc{
    font-size: 12px;
    line-height: 1.7;
    color: #fff;
    margin: 5% 0 0 0;
}


@media (hover: hover) and (pointer: fine) {
    .m-authors .splide__arrow:hover{
        background: #fff;
    }
    .m-authors .splide__arrow:hover::before{
        opacity: 0;
    }
    .m-authors .splide__arrow:hover::after{
        opacity: 1;
    }
}



@media screen and (max-width: 768px){

    .m-authors{
        background: #019E3B;
    }
    
    .m-authors-b{
        max-width: 1200px;
        margin: 0 auto;
        padding: 30px 16px 30px 16px;
        position: relative;
        box-sizing: unset;
    }
    
    .m-authors-ttl{
        font-size: 20px;
        line-height: 1.6;
        font-weight: 700;
        color: #fff;
        text-align: center;
    }
    
    .m-authors-c{
        padding: 0 0px;
        position: relative;
    }
    
    .m-authors-l{
        margin: 30px 0 0 0;
    }
    
    .m-authors-box a{
        display: block;
        transition: .2s;
    }

    
    .m-authors-box-tn{
        max-width: 114px;
        margin: 0 auto;
        aspect-ratio: 160 / 160;
        border-radius: 50%;
        overflow: hidden;
        background: #fff;
    }
    
    .m-authors-box-tn img{
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
    
    .m-authors .splide__arrow {
        -ms-flex-align: center;
        align-items: center;
        background: transparent;
        border: 1px solid #fff;
        border-radius: 50%;
        cursor: pointer;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: center;
        justify-content: center;
        opacity: 1;
        padding: 0;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        width: 40px;
        height: 40px;
        z-index: 1;
    }
    
    .m-authors .splide__arrow svg{
        display: none;
    }
    
    .m-authors .splide__arrow--prev {
        left: 0px;
    }
    
    .m-authors .splide__arrow--next {
        right:0px;
    }
    
    .m-authors-box-jobname{
        font-size: 13px;
        line-height: 1.7;
        color: #fff;
        text-align: center;
        font-weight: 700;
        margin: 5% 0 0 0;
    }
    
    .m-authors-box-name{
        font-size: 14px;
        line-height: 1.7;
        color: #fff;
        text-align: center;
        font-weight: 700;
    }
    
    .m-authors-box-desc{
        font-size: 12px;
        line-height: 1.7;
        color: #fff;
        margin: 5% 80px 0 80px;
    }
}

/* --------------------------------------------------------------------- */
/* edp */
/* --------------------------------------------------------------------- */

.m-edp{
    background: #fff;
}

.m-edp-b{
    max-width: 1200px;
    margin: 0 auto;
    padding: 60px 4vw 60px 4vw;
    position: relative;
    box-sizing: unset;
}

.m-edp-ttl{
    font-size: 20px;
    line-height: 1.6;
    font-weight: 700;
    color: #019E3B;
    text-align: center;
}

.m-edp-l{
    gap: 40px 0;
    margin: 30px 0 0 0;
}

.m-edp-l .m-e-box{
    width: calc(25% - 20px);
}

@media screen and (max-width: 768px){

    .m-edp{
        background: #fff;
    }
    
    .m-edp-b{
        max-width: 1200px;
        margin: 0 auto;
        padding: 40px 16px 40px 16px;
        position: relative;
        box-sizing: unset;
    }
    
    .m-edp-ttl{
        font-size: 18px;
        line-height: 1.6;
        font-weight: 700;
        color: #019E3B;
        text-align: center;
    }
    
    .m-edp-l{
        gap: 30px 0;
        margin: 20px 0 0 0;
    }
    
    .m-edp-l .m-e-box{
        width: calc(50% - 10px);
    }

    .m-edp-l .m-e-box .m-e-box-ttl{
        font-size: 15px;
    }
}



/* --------------------------------------------------------------------- */
/* pagenavi */
/* --------------------------------------------------------------------- */

.wp-pagenavi {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    font-size: 13px;
    justify-content: center;
    margin: 3em 0;
    position: relative;
}

.wp-pagenavi .previouspostslink,.wp-pagenavi .nextpostslink{
    display: none;
}

.wp-pagenavi a{
    box-sizing: content-box;
    display: block;
    font-size: 14px;
    height: 36px;
    line-height: 36px;
    margin: 6px;
    min-width: 36px;
    padding: 0;
    position: relative;
    text-align: center;
    text-decoration: none;
    transition: color .25s,background-color .25s;
    width: auto;
    border-radius: 50%;
    margin: 4px;
    color: var(--color_main);
    border: solid 1px var(--color_main);
}

.wp-pagenavi .extend {
    color: #aaa;
    margin: 0 6px;
}

.wp-pagenavi .current{
    font-size: 14px;
    height: 36px;
    line-height: 36px;
    margin: 6px;
    min-width: 36px;
    text-align: center;
    text-decoration: none;
    transition: color .25s,background-color .25s;
    width: auto;
    border-radius: 50%;
}

.wp-pagenavi .current, .wp-pagenavi a:hover {
    background-color: var(--color_main);
    color: #fff;
}


/* --------------------------------------------------------------------- */
/* archive */
/* --------------------------------------------------------------------- */

.ac-l{
    gap: 40px 0;
    margin: 40px 0 0 0;
}

.ac-l .m-e-box{
    width: calc(50% - 20px);
}

.ac-ct-ttl{
    font-size: 28px;
    line-height: 1.6;
    font-weight: 700;
    color: #019E3B;
    text-align: center;
    text-decoration: underline;
    text-underline-offset: 12px;
}

.ac-ct-desc{
    font-size: 14px;
    line-height: 1.8;
    font-weight: 400;
    color: #000;
    text-align: center;
    margin: 30px 0 0 0;
}

.ac-ah{
    background: #F0F0F0;
    padding: 24px 40px;
}

.ac-ah-h-tn p{
    aspect-ratio: 110 / 110;
    max-width: 110px;
    overflow: hidden;
    position: relative;
    border: 1px solid #717171;
    border-radius: 50%;
}

.ac-ah-h-tn p img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.ac-ah-h-c{
    flex: 1;
    padding: 0 0 0 20px;
}

.ac-ah-jobname{
    font-size: 14px;
    line-height: 1.7;
    font-weight: 400;
    color: #000;
}

.ac-ah-ttl{
    font-size: 20px;
    line-height: 1.7;
    font-weight: 400;
    color: #000;
}

.ac-ah-desc{
    font-size: 15px;
    line-height: 1.8;
    font-weight: 400;
    color: #000;
    margin: 20px 0 0 0;
}

.ac-ah-desc a{
    text-decoration: underline;
}

@media (hover: hover) and (pointer: fine) {
    .ac-ah-desc a:hover{
        text-decoration: none;
    }
}

.ac-ah-link{
    font-size: 0;
    margin: 20px 0 0 0;
}

.ac-ah-link li{
    width: 35px;
    display: inline-block;
    margin: 0 20px 0 0;
}

.ac-ah-link li a{
    display: block;
    transition: .2s;
}

@media (hover: hover) and (pointer: fine) {
    .ac-ah-link li a:hover{
        opacity: .6;
    }
}

.ac-ah-listttl{
    font-size: 22px;
    line-height: 1.6;
    font-weight: 700;
    color: #019E3B;
    text-align: center;
    margin: 40px 0 0 0;
}

.ac-ss-h{
    padding: 0 0 20px 0;
}

.ac-ss-h-ttl{
    display: inline-block;
    font-size: 20px;
    line-height: 1;
    font-weight: 700;
    color: #fff;
    background: #019E3B;
    position: relative;
    padding: 13px 34px 14px 34px;
}

.ac-ss-h-ttl::after{
    content: "";
    background: #019E3B;
    height: calc(tan(60deg) * 10px / 2);
    width: 20px;
    clip-path: polygon(50% 0, 100% 100%, 0 100%);
    position: absolute;
    left: 0;
    right: 0;
    bottom: -7px;
    margin: auto;
    transform: rotate(180deg);
}

.ac-ss-tn{
    width: 50%;
}

.ac-ss-b{
    flex: 1;
    padding: 0 0 0 30px;
}

.ac-ss-tn figure{
    aspect-ratio: 460 / 343;
}

.ac-ss-tn.special figure{
    aspect-ratio: 640 / 480;
}

.ac-ss-tn.serialization figure{
    aspect-ratio: 640 / 320;
}

.ac-ss-tn figure img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.ac-ss-ttl{
    font-size: 24px;
    line-height: 1.7;
    font-weight: 700;
    color: #000;
}

.ac-ss-desc{
    font-size: 14px;
    line-height: 1.7;
    font-weight: 400;
    color: #000;
    margin: 10px 0 0 0;
}

.ac-none{
    font-size: 16px;
    line-height: 1.7;
    font-weight: 400;
    padding: 3em 16px;
    text-align: center;
    display: block;
    width: 100%;
    box-sizing: border-box;
}

@media screen and (max-width: 768px){

    .ac-l{
        gap: 30px 0;
        margin: 30px 0 0 0;
    }
    
    .ac-l .m-e-box{
        width: calc(100%);
    }

    .ac-h{
        padding: 0 16px;
    }
    
    .ac-ct-ttl{
        font-size: 18px;
        line-height: 1.6;
        font-weight: 700;
        color: #019E3B;
        text-align: center;
        text-decoration: underline;
        text-underline-offset: 12px;
    }
    
    .ac-ct-desc{
        font-size: 14px;
        line-height: 1.8;
        font-weight: 400;
        color: #000;
        text-align: left;
        margin: 30px 0 0 0;
    }
    
    .ac-ah{
        background: #F0F0F0;
        padding: 16px 24px;
    }

    .ac-l .m-e-box-b{
        padding: 7px 16px 0 16px;
    }
    
    .ac-ah-h-tn p{
        aspect-ratio: 110 / 110;
        max-width: 80px;
        overflow: hidden;
        position: relative;
        border: 1px solid #717171;
        border-radius: 50%;
    }
    
    .ac-ah-h-tn p img{
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
    
    .ac-ah-h-c{
        flex: 1;
        padding: 0 0 0 20px;
    }
    
    .ac-ah-jobname{
        font-size: 12px;
        line-height: 1.7;
        font-weight: 400;
        color: #000;
    }
    
    .ac-ah-ttl{
        font-size: 18px;
        line-height: 1.7;
        font-weight: 400;
        color: #000;
    }
    
    .ac-ah-desc{
        font-size: 14px;
        line-height: 1.8;
        font-weight: 400;
        color: #000;
        margin: 12px 0 0 0;
    }
    
    .ac-ah-link{
        font-size: 0;
        margin: 20px 0 0 0;
    }
    
    .ac-ah-link li{
        width: 35px;
        display: inline-block;
        margin: 0 20px 0 0;
    }
    
    .ac-ah-link li a{
        display: block;
        transition: .2s;
    }
    
    .ac-ah-listttl{
        font-size: 18px;
        line-height: 1.6;
        font-weight: 700;
        color: #019E3B;
        text-align: center;
        margin: 30px 0 0 0;
    }

    .ac-ss{
        margin: 0 -16px;
    }
    
    .ac-ss-h{
        padding: 0 0 14px 0;
        text-align: center;
    }
    
    .ac-ss-h-ttl{
        display: inline-block;
        font-size: 15px;
        line-height: 1;
        font-weight: 700;
        color: #fff;
        background: #019E3B;
        position: relative;
        padding: 9px 28px 10px 28px;
    }
    
    .ac-ss-h-ttl::after{
        content: "";
        background: #019E3B;
        height: calc(tan(60deg) * 10px / 2);
        width: 20px;
        clip-path: polygon(50% 0, 100% 100%, 0 100%);
        position: absolute;
        left: 0;
        right: 0;
        bottom: -7px;
        margin: auto;
        transform: rotate(180deg);
    }
    
    .ac-ss-tn{
        width: 100%;
        padding: 0 0 14px 0;
    }
    
    .ac-ss-b{
        flex: none;
        width: 100%;
        box-sizing: border-box;
        padding: 0 16px 0 16px;
    }
    
    .ac-ss-tn figure{
        aspect-ratio: 640 / 480;
    }
    
    .ac-ss-tn figure img{
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
    
    .ac-ss-ttl{
        font-size: 18px;
        line-height: 1.7;
        font-weight: 700;
        color: #000;
    }
    
    .ac-ss-desc{
        font-size: 14px;
        line-height: 1.8;
        font-weight: 400;
        color: #000;
        margin: 10px 0 0 0;
    }
    
    .ac-none{
        font-size: 14px;
        line-height: 1.7;
        font-weight: 400;
        padding: 3em 16px;
        text-align: center;
        display: block;
        width: 100%;
        box-sizing: border-box;
    }
}

/* --------------------------------------------------------------------- */
/* m-c-navi */
/* --------------------------------------------------------------------- */

.m-c-navi ul{
    font-size: 0;
    list-style: none;    
}

.m-c-navi ul li a{
    color: #fff;
    transition: .2s;
    position: relative;
}

@media (hover: hover) and (pointer: fine) {
    .m-c-navi ul li a:hover{
        opacity: .6;
    }
}


/* --------------------------------------------------------------------- */
/* m-error */
/* --------------------------------------------------------------------- */

.m-error{
    max-width: 600px;
    margin: 0 auto;
    padding: 50px 0 100px 0;
}

/* --------------------------------------------------------------------- */
/* pk */
/* --------------------------------------------------------------------- */

.m-pk{
    max-width: 1200px;
    margin: 0 auto;
    padding: 0px 4vw 10px 4vw;
    position: relative;
    box-sizing: unset;
}

.m-pk ul{
    font-size: 0;
}

.m-pk ul li{
    font-size: 10px;
    line-height: 1.7;
    font-weight: 400;
    display: inline-block;
    padding: 0 20px 0 0;
    position: relative;
}

.m-pk ul li::before{
    position: absolute;
    top: 3px;
    bottom: 0;
    right: 8px;
    margin: auto;
    content: "";
    display: block;
    width: 6px;
    height: 6px;
    border-top: 1px solid #717171;
    border-right: 1px solid #717171;
    transform: rotate(45deg);
}

.m-pk ul li a{
    color: #717171;
}

.m-pk ul li:last-child::before{
    display: none;
}


@media screen and (max-width: 768px){

}

/* --------------------------------------------------------------------- */
/* display / inline */
/* --------------------------------------------------------------------- */

.u-db-pc{
	display: block !important;
}

.u-db-sp{
	display: none !important;
}

.u-dib-pc{
	display: inline-block !important;
}

.u-dib-sp{
	display: none !important;
}

.u-di-pc{
	display: inline !important;
}

.u-di-sp{
	display: none !important;
}

@media screen and (max-width: 768px){

	.u-db-pc{
		display: none !important;
	}

	.u-db-sp{
		display: block !important;
	}

	.u-dib-pc{
		display: none !important;
	}

	.u-dib-sp{
		display: inline-block !important;
	}

	.u-di-pc{
		display: none !important;
	}

	.u-di-sp{
		display: inline !important;
	}

}


/* --------------------------------------------------------------------- */
/* flexbox */
/* --------------------------------------------------------------------- */

/* base */

.u-fb{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: stretch;
}

.u-fb-l{
	display: flex;
	flex-wrap: wrap;
	justify-content: start;
	align-items: stretch;
}

/* justify-content */

.u-fb-jc-sb{
	justify-content: space-between;
}

.u-fb-jc-s{
	justify-content: start;
}

.u-fb-jc-c{
	justify-content: center;
}

.u-fb-jc-sa{
	justify-content: space-around;
}

.u-fb-jc-se{
	justify-content: space-evenly;
}

/* align-items */

.u-fb-ai-sh{
	align-items: stretch;
}

.u-fb-ai-c{
	align-items: center;
}

.u-fb-ai-s{
	align-items: start;
}

.u-fb-ai-e{
	align-items: end;
}