@charset "UTF-8";
/*
Theme Name:soranomoriclinic
Theme URI:
Description:
Version: 1.0
Author: XNEO
Author URI: https://xneo.biz/
*/

/*		[ General Setting]
-----------------------------------------------*/
@import url("css/ress.min.css");

:root {
    --color1: #313A56;
    --color2: #002D50;
    --color3: #656464;
    --bdrcolor: #3E3A39;
    --bgcolor: #E6E6E6;
}
button, input, select, textarea{
    border: solid 1px var(--bdrcolor);
}
body{
    background: linear-gradient(90deg, #F0F1F1 0%, #F9F8F4 50%, #F0F1F1 100%);
    color: var(--color3);
    line-height: 2;
    font-family: "Noto Serif JP", "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
}
a{
    overflow:hidden;
    outline:none;
    &:link{
        color: var(--color3);
        text-decoration: none;
    }
    &:visited{
        color: var(--color3);
        text-decoration: none;
    }
    &:hover{
        color: var(--color3);
        text-decoration: underline;
    }
    &:active{
        color: var(--color3);
        text-decoration: underline;
    }
    &:hover img{
        opacity:0.8;
    }
}

.fadein{
    opacity: 0;
    transform: translate(0,30px);
    -webkit-transform: translate(0,30px);
    transition: .5s;
}
.fade{
    opacity: 0;
    transition: .5s;
}
.in{
    opacity: 1.0;
    transform: translate(0,0);
    -webkit-transform: translate(0,0);
}
.flex{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
img{
    max-width: 100%;
    height: auto;
}
hr{
    border-top: solid 1px var(--bdrcolor);
}
.mb-only{
    display: none;
}

/*		[Header]
-----------------------------------------------*/
#header{
    max-width: 1220px;
    margin: 0 auto;
    padding: 54px 30px 0;
}
.home #header{
    padding-top: 50px;
    #logo{
        text-align: center;
        line-height: 1;
        margin: 0 0 50px;
        img{
            max-width: 186px;
        }
    }
}
.header__hamburger {
    width: 27px;
    height: 22px;
    display: block;
    padding: 0;
    position: fixed;
    left: 20px;
    top: 27px;
}
.hamburger {
    background-color: transparent;
    border-color: transparent;
    z-index: 9999;
    display: none;
    span {
        width: 100%;
        height: 3px;
        background-color: #002D50;
        position: relative;
        transition: ease .4s;
        display: block;
    }
    span:nth-child(1) {
        top: 0;
    }
    span:nth-child(2) {
        margin: 5px 0;
    }
    span:nth-child(3) {
        top: 0;
    }
}
.active{
    .hamburger span:nth-child(1) {
        top: 7px;
        transform: rotate(45deg);
        background-color: #fff;
    }
    .hamburger span:nth-child(2) {
        opacity: 0;
    }
    .hamburger span:nth-child(3) {
        top: -9px;
        transform: rotate(-45deg);
        background-color: #fff;
    }
    .drawer,
    .drawer-bg{
        left: 0;
    }
}
.drawer-bg{
    width:290px;
    height: 100%;
    opacity: 0.94;
    background: #002D50;
    position: fixed;
    left:-290px;
    top: 0;
    z-index: 14;
    -webkit-transition: .4s ease;
    -moz-transition: .4s ease;
    transition: .4s ease;
}
.drawer {
    width:290px;
    height: 100%;
    box-sizing: border-box;
    color: #fff;
    margin: 0;
    padding: 60px 0 50px;
    list-style: none;
    position: fixed;
    left:-290px;
    top: 0;
    z-index: 15;
    overflow-y: scroll;
    overflow-x: hidden;
    -webkit-overflow-scrolling: touch;
    height: 100%;
    -webkit-transition: .4s ease;
    -moz-transition: .4s ease;
    transition: .4s ease;
    font-size: 15px;
    letter-spacing: .1em;
    .gnav{
        border-top: solid 3px #fff;
        .small{
            letter-spacing: 0;
        }
        li{
            a{
                color: #fff;
                border-bottom: solid 1px #fff;
                display: block;
                padding: .4em 0 .4em 1.5em;
                &:hover{
                    text-decoration: none;
                }
            }
            ul{
                li{
                    a{
                        padding-left: 2.5em;
                        padding-right: 1em;
                        display: flex;
                        align-items: center;
                        justify-content: space-between;
                        &::after{
                            content: "";
                            display: block;
                            width: 8px;
                            height: 17px;
                            background: url(img/arrow.svg) no-repeat left top;
                            background-size: 100% auto;
                        }
                    }
                }
            }
        }
    }
    .gnav > li{
        border-bottom: solid 2px #fff;
    }
    p{
        margin: 15px;
        a{
            background: #fff;
            color: var(--color1);
            display: block;
            border-radius: 5px;
            text-align: center;
            &:hover{
                text-decoration: none;
            }
        }
    }
}
/*      [Index page]
-----------------------------------------------*/
#mv{
    background: url(img/mv.webp) no-repeat center top 25%;
    background-size: cover;
    height: 100vh;
    width: 100%;
    position: relative;
    box-sizing: border-box;
    padding-top: 107px;
    transition: .3s;
    .inner{
        max-width: 100% !important;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .logo{
        position: absolute;
        right: 25px;
        top: 25px;
        transition: .3s;
    }
    .txts{
        color: #fff;
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
        transition-duration: 1s;
        h2{
            font-weight: 500;
            font-size: 40px;
            letter-spacing: .3em;
            padding-left: .4em;
            transition: .3s;
        }
        p{
            font-size: 18px;
            line-height: 2.9em;
            margin-right: 2.6em;
            letter-spacing: .2em;
            transition: .3s;
        }
    }
    .scroll{
        position: absolute;
        left: 0;
        bottom: 25px;
        text-align: center;
        width: 100%;
    }
}
#mv.display-none{
    display: none;
}
.home{
    .slider{
        padding-bottom: 55px;
        position: relative;
    }
    .swiper-slide{
        img{
            aspect-ratio: 375 / 170;
            object-fit: cover;
        }
    }
    .swiper-horizontal>.swiper-pagination-bullets,
    .swiper-pagination-bullets.swiper-pagination-horizontal,
    .swiper-pagination-custom, .swiper-pagination-fraction{
        bottom: 23px;
    }
    .swiper-pagination-bullet{
        border: solid 1px var(--color2);
        background: #fff;
    }
    .swiper-pagination-bullet-active{
        background: var(--color2);
    }
}
.home section .inner{
    max-width: 800px;
    margin: 0 auto;
}
#intro{
    .txts{
        text-align: center;
        position: relative;
        max-width: 900px;
        margin: 0 auto;
    }
    h2{
        font-weight: 500;
        font-size: 29px;
        color: var(--color1);
        line-height: 1;
        margin: 0 0 .5em;
        letter-spacing: .04em;
    }
    .lead{
        color: var(--color2);
        line-height: 2.2;
        margin-bottom: 30px;
        font-size: 14px;
    }
    .btn{
        position: absolute;
        bottom: -6px;
        right: -145px;
        margin: 0;
        a{
            display: block;
            text-align: center;
            width: 190px;
            height: 53px;
            font-size: 16px;
            line-height: 1;
            color: var(--color1);
            background: url(img/common/menu-btn3.webp) no-repeat left top;
            background-size: 100% auto;
            padding-top: 1em;
            transition: .1s;
        }
        a:hover{
            text-decoration: none;
            opacity: .8;
        }
    }
}

.mainMenu{
    max-width: 800px;
    margin: 0 auto 30px;
    li{
        list-style: none;
    }
    .nav > li{
        margin: 0 0 10px;
        position: relative;
    }
    .nav > li > a > img{
        width: 29%;
        max-width: 82px;
    }
    a:hover img{
        opacity: 1;
    }
    .nav{
        .icon{
            display: block;
            text-align: center;
            width: 100%;
            position: absolute;
            left: 0;
            top: 15.7%;
            img{
                max-width: 78px;
            }
        }
        .txt{
            display: block;
            text-align: center;
            width: 100%;
            position: absolute;
            left: 0;
            top: 53%;
        }
    }
    .nav > li > a:hover{
        text-decoration: none;
    }
    .nav > li:nth-child(3) .txt{
        top: 49%;
    }
    .nav > li:nth-child(3) .txt span{
        letter-spacing: -.15em;
    }
    .nav > li:nth-child(2) .icon img{
        position: relative;
        left: -.5%;
    }
}
.mainMenu .nav > li > a,
.navFirst li a{
    width: 10em;
    max-width: 250px;
    height: 10em;
    max-height: 250px;
    display: block;
    font-size: 24px;
    line-height: 1.3;
    color: var(--color1);
    background: url(img/menu-btn.webp) no-repeat left top;
    background-size: 100% auto;
    position: relative;
    transition: .1s;
}
.mainMenu .nav .txt span,
.navFirst li a span{
    letter-spacing: -.1em;
}

.fadeMenu ul{
    visibility: hidden;
    opacity: 0;
    transition: all .4s;
    width: fit-content;
    position: absolute;
    top:70%;
    left: -100px;
    background: rgba(255, 255, 255, 0.7);
    border: solid 1px #231815;
    border-radius: 10px;
    font-size: 18px;
    padding: 5px 15px;
    display: flex;
    flex-wrap: wrap;
    z-index: 1;
    li{
        margin:0 15px;
    }
    a{
        color: var(--color1);
    }
}
.mainMenu{
    .nav > li:nth-child(1) ul{
        width: 33.3em;
    }
    .nav > li:nth-child(2) ul{
        width: 17.7em;
        left: -1em;
    }
    .nav > li:nth-child(5) ul{
        width: 14.7em;
        left: .2em;
        top: 82%;
    }
    .nav > li:nth-child(6) ul{
        width: 16.3em;
        left: -.5em;
    }
}
.fadeMenu:hover ul {
    visibility: visible;
    opacity: 1;
}
#news{
    margin-bottom: 30px;
    .tab{
        justify-content: flex-start;
        list-style: none;
    }
    .tab li{
        color: var(--color1);
        border-top: solid #9E9E9F 1px;
        border-left: solid #9E9E9F 1px;
        border-right: solid #9E9E9F 1px;
        font-size: 20px;
        line-height: 1;
        padding: .3em .6em;
        border-radius: 7px 7px 0 0;
        margin-right: -1px;
        transition: .1s;
    }
    .tab li:hover,
    .tab li.active{
        background-color: var(--color1);
        color: #fff;
        cursor: pointer;
    }
    .listWrap{
        border: solid #9E9E9F 1px;
        height: 240px;
        overflow-y: scroll;
        padding: 0 20px;
    }
    .list{
        padding: 10px 0 70px;
    }
    .list > div{
        display: none;
    }
    .all .list > div,
    .notice .list .notice,
    .info .list .info,
    .event .list .event,
    .media .list .media,
    .recruit .list .recruit{
        display: block;
    }
    .listWrap .flex{
        justify-content: flex-start;
        position: relative;
        padding-top: 7px;
    }
    .listWrap .link{
        width: 100%;
        height: 100%;
        display: block;
        position: absolute;
        left: 0;
        top: 0;
        overflow: hidden;
        text-indent: 100%;
        white-space: nowrap;
        br{
            display: none;
        }
    }
    p,h3{
        font-size: 14px;
        font-weight: 500;
        line-height: 1.5;
        color: var(--color1);
    }
    .date{
        width: 5.5em;
    }
    .bdr{
        width: calc(100% - 5.5em);
        display: flex;
        border-bottom: dashed 1px #9E9E9F;
        padding-bottom: 7px;
    }
    .notice.info .bdr{
        align-items: center;
    }
    .cat{
        margin-right: 12px;
        font-weight: 400;
        line-height: 1.8;
        span{
            display: block;
            width: 9em;
            background: var(--color1);
            color: #fff;
            text-align: center;
            border-radius: 4px;
            font-size: 13px;
        }
        span:nth-child(2){
            margin-top: 5px;
        }
    }
    .notice .notice .cat span.info,
    .info .info .cat span.notice{
        display: none;
    }
    .flex:hover h3{
        text-decoration: underline;
    }
}

#pageNavi{
    margin-bottom: 42px;
    .navFirst{
        margin-bottom: 32px;
        li a{
            background-image:url(img/btn-circle.webp) ;
            max-width: 154px;
            max-height: 154px;
            font-size: 20px;
            display: flex;
            justify-content: center;
            align-items: center;
            text-align: center;
        }
        li a:hover{
            text-decoration: none;
            color: #5a6077;
        }
    }
    .navSecond{
        justify-content: center;
        li{
            margin: 0 11px;
        }
        li a{
            width: 205px;
            height: 55px;
            background: url(img/common/menu-btn2.webp) no-repeat left top;
            background-size: 100% auto;
            display: flex;
            justify-content: center;
            align-items: center;
            font-size: 20px;
            letter-spacing: -.1em;
            line-height: 1;
            padding-bottom: .2em;
            color: var(--color1);
            transition: .1s;
            &:hover{
                text-decoration: none;
                color: #5a6077;
            }
        }
    }
}
/*      [固定ページ共通]
-----------------------------------------------*/
.page-header{
    max-width: 1160px;
    margin: 84px auto 0;
    padding-bottom: 30px;
    border-bottom: solid 3px var(--color2);
    color: var(--color2);
    .title{
        font-size: 46px;
        line-height: 1;
        font-weight: 500;
        margin-bottom: 0.75em;
        display: flex;
        align-items: center;
        img{
            margin-right: .4em;
            position: relative;
            top: .05em;
        }
    }
    .txts{
        width: 45.69%;
    }
    .pics{
        width: 51.73%;
        max-width: 600px;
        li{
            width: 30%;
            max-width: 180px;
            list-style: none;
            img{
                box-shadow: 1px 2px 6px 0px rgba(0, 0, 0, 0.55);
            }
        }
    }
}
#main{
    padding: 0 30px;
}
#wrapper{
    flex-direction: row-reverse;
    max-width: 1160px;
    margin: 0 auto;
    #contents{
        width: calc(100% - 258px - 70px);
        margin-top: 47px;
        transition: .3s;
    }
}
#sidebar{
    width: 258px;
    font-size: 18px;
    line-height: 1em;
    overflow-y: hidden;
    height: 100vh;
    padding-top: 47px;
    position: sticky;
    top: 0;
    transition: .5s;
    &:hover{
        overflow-y: scroll;
    }
    &::-webkit-scrollbar{
        width: 7px;
    }
    &::-webkit-scrollbar-track {
        background: rgba(0,0,0,0.05);
    }
    &::-webkit-scrollbar-thumb{
        background: rgba(0,0,0,0.1);
    }
    &::-webkit-scrollbar-thumb:hover{
        background: rgba(0,0,0,0.05);
    }
    /* ページ下部でサイドバーを上部にスクロールさせる動き
    &.scroll{
        height: 133vh;
    }
    */
    .wrap{
        padding-right: 26px;
        border-right: solid 1px var(--bdrcolor);
        padding-bottom: 100px;
    }
    li{
        margin-bottom: 1.4em;
        a{
            color: var(--color1);
            text-decoration: none;
        }
        .icon{
            width: 42px;
            text-align: center;
        }
    }
    .menuList > li > a{
        display: flex;
        align-items: center;
        &:hover{
            cursor: pointer;
        }
    }
    .menu1{
        font-size: 20px;
        line-height: 1em;
    }
    .menu2 img{
        width: 30px;
    }
    .menu3 img{
        width: 27px;
    }
    .menu4{
        a{
            overflow: visible;
        }
        .icon{
            position: relative;
            top: -.6em;
        }
        img{
            width: 19px;
        }
    }
    .menu5{
        .txt{
            letter-spacing: -.09em;
        }
        img{
            width: 27px;
        }
    }
    .menu6 img{
        width: 30px;
    }
    .menu7 img{
        width: 28px;
    }
    .pnav{
        margin-top: 5px;
        margin-left: 1em;
        padding-top: 0;
        height: 0;
        opacity: 0;
        position: relative;
        overflow: hidden;
        transition: .3s;
        &:after{
            content: "";
            background: var(--bdrcolor);
            width: 1px;
            height: calc(100% - 12px);
            position: absolute;
            left: 0;
            bottom: 12px;
        }
        li{
            padding-left: 2.2em;
            position: relative;
            line-height: 1.2em;
            margin-bottom: 1em;
            &:before{
                content: "";
                width: 1.5em;
                height: 1px;
                background: var(--bdrcolor);
                position: absolute;
                left: 0;
                top: .5em;
            }
            &.current:after,
            &:hover:after{
                content: "";
                width: 0;
                height: 0;
                border-style: solid;
                border-color: transparent transparent transparent var(--color1);
                border-width: 5.5px 0px 5.5px 7px;
                position: absolute;
                left: calc(1.5em + 3px);
                top: 4px;
            }
            &:last-child{
                margin-bottom: 0;
            }
        }
    }
    .pnav.is-open{
        padding-top: 1.2em;
        height: auto;
        opacity: 1;
    }
    .menuList1,
    .menuList2,
    .menuList3{
        border-bottom: solid 1px var(--bdrcolor);
        margin-bottom: 1.4em;
        padding-bottom: .5em;
        .small{
            a{
                letter-spacing: -.01em;
            }
        }
    }
    .menuList3{
        .pnav{
            font-size: .95em;
        }
    }
    .circle{
        & > li{
            margin-bottom: 1em;
            padding-left: 0;
            transition: .1s;
            & > a:before{
                content: "";
                display: inline-block;
                width: .45em;
                height: .45em;
                border-radius: 100px;
                background: var(--color1);
                margin: 0 .66em;
            }
        }
    }
}
.page-id-8 #sidebar,
.page-id-10 #sidebar,
.page-id-18 #sidebar,
.page-id-24 #sidebar,
.page-id-6647 #sidebar,
.page-id-14 #sidebar{
    height: 120vh;
}
.page-id-41 #sidebar,
.page-id-20 #sidebar{
    height: 110vh;
}
.page-id-22 #sidebar{
    height: 90vh;
}
#contents{
    line-height: 1.7;
    section{
        border-bottom: solid 1px var(--bdrcolor);
        padding:35px 0;
        &.bdr-btm-none{
            border-bottom: none;
        }
    }
    h2{
        color: var(--color1);
        font-size: 24px;
        line-height: 1.5;
        font-weight: 500;
        position: relative;
        padding-left: 1em;
        margin-bottom: .3em;
        &:before{
            content: "";
            display: inline-block;
            width: .29em;
            height: 1.04em;
            background-color: var(--color1);
            position: absolute;
            left: 0;
            top: .27em;
        }
    }
    h3{
        color: var(--color1);
        font-size: 20px;
        font-weight: 500;
        line-height: 1.6;
        margin-bottom: .5em;
    }
    ul{
        li{
            list-style: none;
            padding-left: 1em;
            text-indent: -1em;
            &::before{
                content: "● ";
                font-size: .8em;
                position: relative;
                top: -.1em;
            }
        }
    }
    hr{
        margin: 35px 0;
    }
    .js-ac{
        padding-left: 1.6em;
        text-indent: -1.6em;
        &::before{
            content: "";
            display: inline-block;
            width: 1em;
            height: 1em;
            background: url(img/common/icon-ac-open.svg) no-repeat left top;
            background-size: 100% auto;
            position: relative;
            top: .14em;
            margin-right: .5em;
        }
        &:hover{
            cursor: pointer;
            text-decoration: underline;
        }
    }
    .js-ac.is-open{
        &::before{
            background-image: url(img/common/icon-ac-close.svg);
        }
    }
    .ac{
        line-height: 0 ;
        overflow: hidden;
        opacity: 0;
        transition: .4s;
        img,
        video{
            display: none;
        }
        table{
            tr{
                border: none;
                font-weight: 500;
            }
        }
    }
    .ac.is-open{
        opacity: 1;
        line-height: 1.7;
        img{
            display: inline-block;
        }
        video{
            display: block;
        }
        table{
            width: 100%;
            tr{
                border-bottom: solid 1px var(--bdrcolor);
            }
            tr:first-child{
                border-top: solid 1px var(--bdrcolor);
            }
            th{
                text-align: left;
                font-weight: 500;
                padding: .35em 0;
            }
            td{
                padding: .35em 0;
            }
        }
    }
    .group{
        .ac{
            margin-bottom: 15px;
        }
        .ac.is-open{
            margin-bottom: 45px;
            .more{
                margin-top: 1.5em;
                a{
                    color: #0068B6;
                }
            }
        }
    }
    /*
    .indent{
        margin-left: 24px;
    }
    */
}
.aioseo-breadcrumbs{
    border-top: solid 1px var(--bdrcolor);
    padding-top: 1em;
    font-size: 15px;
}
.archive{
    .aioseo-breadcrumbs{
        margin-top: 80px;
    }
}
.single-member{
    .aioseo-breadcrumbs{
        > span:nth-child(4),
        > span:nth-child(5){
            display: none;
        }
    }
}

/*      [不妊治療ページ]
-----------------------------------------------*/
.page-id-8{
    #sec1{
        padding-top: 0;
        ul{
            margin: 1.3em 0 1em;
        }
    }
    #sec2{
        .indent{
            & > p:first-child{
                margin: 0 0 24px;
            }
            & > div:last-child .ac{
                margin-bottom: 0;
            }
            & > div:last-child .ac.is-open{
                margin-bottom: 10px;
            }
        }
        .group p{
            text-align: justify;
        }
        h3{
            &:hover{
                text-decoration: underline;
            }
        }
        .group1 h3.is-open{
            margin-bottom: .9em;
        }
        h4{
            font-weight: 500;
        }
        .list{
            width: 33%;
            justify-content: flex-start;
            padding-right: 10px;
            ul:first-child{
                margin-right: 1em;
            }
        }
        .table{
            width: 67%;
            border-left: solid 1px var(--bdrcolor);
            padding-left: 10px;
            tr{
                border: none !important;
            }
            th{
                width: 9em;
                text-align: left;
                font-weight: 500;
                vertical-align: top;
                position: relative;
                padding: 0 !important;
                &::after{
                    content: "/";
                    position: absolute;
                    right: .3em;
                    top: 0;
                }
            }
            td{
                padding: 0 !important;
            }
        }
        .group-arrow{
            .ac,
            .ac.is-open{
                margin-bottom: 0;
            }
        }
        .btm-arrow{
            text-align: left;
            margin: 0 0 15px 50px;
            transition: .3s;
        }
        .is-open + .btm-arrow{
            text-align: center;
            margin:20px 0 20px;
        }
    }
    #sec3{
        .indent{
            & > p:first-child{
                margin: 0 0 24px;
            }
            .ac.is-open{
                .mb{
                    margin-bottom: 1.5em;
                }
            }
        }
        .blue-txt{
            color: #0068B6;
        }
    }
    #sec4{
        h2{
            margin-bottom: .7em;
        }
        .lead{
            margin-bottom: 45px;
            .pics{
                width: 52%;
                & > p{
                    margin-bottom: 1em;
                    text-align: justify;
                }
                .flex{
                    img{
                        width: 47%;
                        max-width: 203px;
                    }
                }
            }
            .pic{
                width: 44%;
                max-width: 366px;
            }
        }
        .group1,
        .group3,
        .group6,
        .group7{
            .txt{
                width: 52%;
                text-align: justify;
            }
            .pic{
                width: 44%;
            }
        }
        .group2{
             .ac.is-open > p:first-child{
                text-align: justify;
                margin-bottom: 1.5em;
            }
        }
        .group3{
            .is-open h4{
                font-size: 20px;
                font-weight: 500;
                margin-top: 2.5em;
                margin-bottom: .7em;
            }
            .is-open .flex2 div p:first-child{
                margin-bottom: .7em;
            }
        }
        .group2 .flex img,
        .group2 .flex video,
        .group3 .flex2 > div,
        .group4 .flex > div{
            width: 48.2%;
        }
        .group4{
            .ac.is-open > p{
                margin-bottom: 1.2em;
            }
            .flex div p:first-child{
                margin-bottom: .7em;
            }
            .flex .pic video{
                width: 100%;
            }
        }
        .group5{
            .flex{
                .txt{
                    width: 80%;
                    text-align: justify;
                }
                .pic{
                    width: 15%;
                }
            }
            &+hr{
                margin-top: 0;
            }
            .ac{
                margin-bottom: 35px;
            }
            .ac.is-open{
                margin-bottom: 0;
            }
        }
        .group6{
            h3.js-ac.is-open{
                margin-bottom: .7em;
            }
            .ac.is-open{
                h4{
                    font-size: 20px;
                    font-weight: 500;
                    margin-bottom: .4em;
                }
                .flex{
                    margin-bottom: 1.3em;
                }
                .movie{
                    display: flex;
                    justify-content: space-between;
                    video{
                        width: 48.2%;
                    }
                }
            }
        }
        & > div:last-child .ac{
            margin-bottom: 0;
        }
        & > div:last-child .ac.is-open{
            margin-bottom: 10px;
        }
    }
    #sec5{
        h2{
            margin-bottom: 1em;
        }
        h3{
            font-size: 24px;
        }
        & > h3{
            margin-bottom: .8em;
        }
        ul li{
            text-align: justify;
        }
        .group1{
            h3{
                margin-bottom: .7em;
            }
            .mb{
                margin-bottom: 1.4em;
            }
        }
        .group2{
            margin-bottom: 45px;
        }
        .price-wrap h4{
            margin-bottom: .65em;
        }
        .group4{
            margin-bottom: 45px;
        }
        .group3{
            td,th{
                padding: 0;
            }
            .is-open{
                th{
                    padding: .35em 0 .35em 1.7em;
                    width: 34%;
                }
                td{
                    padding: .35em 0 .35em 1.3em;
                    span:nth-child(1){
                        display: inline-block;
                        width: 5em;
                        text-align: right;
                    }
                    span:nth-child(2){
                        display: inline-block;
                    }
                }
                .plus td::after{
                    content: "＋顕微授精料金";
                    display: inline-block;
                }
            }
            .price-list.is-open{
                margin-bottom: 45px;
            }
        }
        .group4{
            margin-bottom: 0;
            td,th{
                padding: 0;
            }
            .is-open{
                table{
                    margin-bottom: 65px;
                    th{
                        width: 50%;
                        padding: .35em 0 .35em 1.7em;
                    }
                    td{
                        padding: .35em 20% .35em 1.3em;
                        text-align: right;
                    }
                    thead{
                        background: var(--bgcolor);
                    }
                }
            }
            ul{
                margin-bottom: 2em;
                li{
                    &::before{
                        content: "※ ";
                    }
                }
            }
        }
        h4{
            color: var(--color1);
            font-size: 18px;
            font-weight: 500;
            line-height: 1.6;
            margin-bottom: .3em;
        }
        .btn{
            margin-bottom: 1.5em;
            a{
                border: solid 1px var(--bdrcolor);
                background: var(--bgcolor);
                display: block;
                text-align: center;
                font-size: 18px;
                line-height: 1;
                width: 100%;
                max-width: 23.5em;
                padding: .6em 0;
                transition: .1s;
                &:hover{
                    text-decoration: none;
                    background: var(--color1);
                    border-color: var(--color1);
                    color: #fff;
                }
            }
            & + .btn{
                margin-bottom: 10px;
            }
        }
    }
    #sec6{
        border-bottom: none;
        h2{
            margin-bottom: 1em;
        }
        .group1{
            margin-bottom: 3em;
            p{
                margin-bottom: 1.5em;
                a{
                    text-decoration: underline;
                }
                a:hover{
                    color: var(--color1);
                }
            }
        }
    }
}

/*      [婦人科ページ]
-----------------------------------------------*/
.page-id-10{
    #contents{
        text-align: justify;
        h2{
            margin-bottom: .5em;
        }
    }
    #sec1{
        padding-top: 0;
        p{
            margin-bottom: 1.5em;
        }
    }
    #sec2{
        table{
            th{
                border: none;
                font-weight: 500;
                width: 6.5em;
                vertical-align: top;
                padding-left: 0;
            }
            td{
                border: none;
                vertical-align: top;
                dl{
                    display: flex;
                    dt{
                        width: 7em;
                    }
                    dd{
                        width: calc(100% - 7em);
                    }
                }
            }
            tbody{
                tr:nth-child(2){
                    td{
                        padding-bottom: 2em;
                        text-align: left;
                    }
                }
            }
        }
    }
    #sec3{
        .lead{
            font-size: 20px;
            margin-bottom: 1.5em;
        }
        h3{
            margin-bottom: .5em;
        }
        .is-layout-flex{
            align-items: flex-start;
            margin-bottom: 5px;
            p{
                width: 60%;
            }
            figure{
                width: 35%;
            }
        }
        .is-open.is-layout-flex{
            margin-bottom: 35px;
        }
    }
    #sec4{
        border-bottom: none;
        h2{
            margin-bottom: .9em;
        }
        .is-layout-flex{
            padding: 12px 25px;
            border: solid 1px var(--bdrcolor);
            margin-bottom: 10px;
            h3{
                width: 6em;
                color: var(--color3);
                margin-bottom: 0;
            }
            ul{
                li{
                    display: inline-block;
                    margin-right: 1em;
                }
            }
            .is-layout-flex{
                border: none;
                padding: 0;
                margin-bottom: 0;
            }
            h4{
                font-weight: 500;
                text-indent: -.5em;
            }
        }
    }
    .indent > div > div:nth-child(3){
        h3 + div{
            div{
                display: block;
            }
        }
    }
}

/*      [空の森 ブライダルチェックページ]
-----------------------------------------------*/
.page-id-12{
    .page-header{
        .title{
            font-size: 39px;
        }
    }
    #contents{
        h2{
            margin-bottom: .5em;
        }
    }
    #sec1{
        padding-top: 0;
        .wp-block-group__inner-container{
            h2:first-child{
                color: var(--color3);
                line-height: 1.5;
                padding-left: 0;
                margin-bottom: .8em;
                &::before{
                    content: none;
                }
                & + p{
                    margin-bottom: 3em;
                }
            }
        }
    }
    #sec2{
        .wp-block-group__inner-container{
            & > p{
                margin-bottom: 1.3em;
            }
        }
    }
    #sec3{
        .wp-block-group__inner-container{
            p:first-child{
                margin-bottom: 1em;
            }
        }
    }
    #sec5{
        table{
            tr{
                th{
                    border: none;
                    background: #e5e5e6;
                    text-align: left;
                    border-top: solid 1px var(--bdrcolor);
                    border-bottom: solid 1px var(--bdrcolor);
                    &:first-child{
                        width: 14em;
                    }
                }
                td{
                    border: none;
                    border-top: solid 1px var(--bdrcolor);
                    border-bottom: solid 1px var(--bdrcolor);
                    ul{
                        display: flex;
                        flex-wrap: wrap;
                        li{
                            margin-right: 1em;
                        }
                    }
                }
            }
        }
    }
    #sec6{
        border-bottom: none;
        .wp-block-list{
            font-size: 20px;
            margin: 1.3em 0 2em;
            li{
                &::before{
                    font-size: .6em;
                    top: -.26em;
                }
                img{
                    display: block;
                    margin: .6em 0 .7em 1.5em;
                }
            }
        }
    }
}
#contents{
    .wp-block-group.phone{
        background: #e5e5e6;
        color: var(--color1);
        text-align: center;
        padding: 25px;
        margin: 30px 0 15px;
        border-radius: 12px;
        .is-layout-flex{
            justify-content: center;
            align-items: center;
            line-height: 1;
            h3{
                font-size: 17px;
                line-height: 1;
                margin: .6em 1em 0 0;
            }
            p{
                font-size: 29px;
                a{
                    font-size: 1.4em;
                    color: var(--color1);
                    transition: .1s;
                    &:hover{
                        text-decoration: none;
                        opacity: .8;
                    }
                }
            }
        }
        .wp-block-group__inner-container{
            & > p{
                color: var(--color3);
                margin-bottom: 0;
                margin-top: 1em;
            }
        }
    }
}

/*      [カウンセリングサポートページ]
-----------------------------------------------*/
.page-id-14{
    .page-header{
        .title{
            font-size: 40px;
        }
    }
    #contents{
        h2{
            margin-bottom: .6em;
        }
        .indent{
            .wp-block-group__inner-container{
                p:first-child{
                    margin-bottom: 1em;
                }
                .person{
                    margin-top: 1.1em;
                    figure{
                        margin-right: 28px;
                        img{
                            width: 162px;
                            height: 166px;
                            border-radius: 20px;
                        }
                    }
                    p:first-child{
                        font-size: 14px;
                        margin-bottom: 0;
                    }
                    h3{
                        font-size: 22px;
                        margin-bottom: 0;
                    }
                    .en{
                        font-size: 13px;
                    }
                }
            }
        }
        .box-inner:hover{
            .pic{
                img{
                    opacity: 1;
                }
            }
        }
        .staffs{
            margin-top: 30px;
        }
    }
    #sec1{
        padding-top: 0;
    }
}

/*      [医師担当表・休診情報ページ]
-----------------------------------------------*/
.page-id-16{
    .page-header{
        .title{
            font-size: 44px;
        }
    }
    #sec1{
        padding-top: 0;
        border-bottom: none;
        h2{
            margin-bottom: .5em;
        }
    }

    #contents{
        table{
            width: 100%;
            margin-bottom: 5px;
            tr{
                border-bottom: solid 1px var(--bdrcolor);
            }
            tr:first-child{
                border-top: solid 1px var(--bdrcolor);
                th{
                    text-align: center;
                    font-weight: 500;
                    padding: .35em .5em;
                    line-height: 1.4;
                    background: #e6e6e6;
                    &:nth-child(1){
                        width: 20%;
                    }
                    &:nth-child(2){
                        width: 15%;
                    }
                    &:nth-child(3){
                        width: 32.5%;
                    }
                    &:nth-child(4){
                        width: 32.5%;
                    }
                }
            }
            td{
                padding: .35em .5em;
                text-align: center;
            }
            td.week{
                font-size: 20px;
                text-align: center;
                vertical-align: middle;
                padding-left: 0;
            }
        }
        #sec2{
            border-bottom: none;
            h2{
                padding-left: 0;
                margin-bottom: .7em;
                &::before{
                    content: none;
                }
            }
            .flex{
                max-width: 768px
            }
            .table{
                width: 47.2%;
                max-width: 362px;
                border: solid 1px var(--bdrcolor);
                line-height: 1.5;
                margin-bottom: 18px;
                tr{
                    border: none !important;
                    th{
                        width: 82px;
                        border-right: solid 1px var(--bdrcolor);
                        background: transparent;
                        padding: .8em .5em;
                    }
                    td{
                        width: auto;
                        padding: .8em 1.2em;
                        text-align: left;
                    }
                }
            }
        }
    }
}

/*      [空の森チャンネルページ]
-----------------------------------------------*/
.page-id-41{
    #sec1{
        padding-top: 0;
        .flex{
            display: flex;
            flex-wrap: wrap;
            justify-content: space-between;
            margin: 25px 0 0;
        }
        .box{
            width: 48%;
            margin-bottom: 35px;
            video{
                width: 100%;
                height: auto;
                margin-bottom: 10px;
            }
        }
    }
    #sec2{
        border-bottom: none;
    }
    .category-list{
        margin-top: 40px;
    }

}

/*      [スタッフブログページ]
-----------------------------------------------*/
.page-id-6957{
    #sec2{
        padding-top: 0;
        border-bottom: none;
    }
}



/*      [はじめての方へページ]
-----------------------------------------------*/
.page-id-18{
    #contents{
        h2{
            margin-bottom: .5em;
        }
        .wp-block-group.phone{
            margin-top: 20px;
        }
    }
    #sec1{
        padding-top: 0;
    }
    #sec2,
    #sec3{
        ul{
            margin-top: 1.7em;
            li{
                font-size: 22px;
                margin-bottom: 1.5em;
                padding-left: .8em;
                text-indent: -.8em;
                &::before{
                    font-size: .6em;
                    top: -.28em;
                }
                span{
                    font-size: .8em;
                    display: block;
                    text-indent: 0;
                    margin-top: .3em;
                }
            }
        }
    }
    #sec3{
        ul li{
            margin-bottom: .5em;
        }
    }
    #sec4{
        p{
            margin-bottom: 1.5em;
        }
        .wp-block-button__link{
            background: transparent;
            border-radius: 0;
            border: solid 1px var(--bdrcolor);
            color: var(--color3);
            font-size: 1em;
            transition: .1s;
            padding: .3em 1em;
            width: 13.5em;
            &:hover{
                text-decoration: none;
                background: var(--color1);
                color: #fff;
            }
        }
        .wp-block-buttons > div:first-child{
            margin-right: 25px;
        }
    }
}

/*      [ご利用案内ページ]
-----------------------------------------------*/
#contents{
    .archive-search{
        margin-bottom: 50px;
        justify-content: flex-start;
        align-items: flex-start;
        .years{
            display: flex;
            flex-wrap: wrap;
            width: calc(100% - 300px);
            transition: .3s;
            li{
                text-indent: 0;
                padding-left: 0;
                width: 5.5em;
                &::before{
                    content: none;
                }
                a{
                    color: var(--color2);
                    &::before{
                        content: "";
                        background: url(img/information/arrow.svg) no-repeat left center;
                        background-size: 100% auto;
                        width: 9px;
                        height: 15px;
                        display: inline-block;
                        position: relative;
                        top: .09em;
                        margin-right: .2em;
                    }
                    &::after{
                        content: "年";
                    }
                }
                a[aria-current="page"]{
                    text-decoration: underline;
                }
            }
        }
        .search-area{
            width: 200px;
            font-size: 14px;
            p{
                margin-bottom: .2em;
                color: #000;
            }
            #searchform{
                display: flex;
                input:nth-child(1){
                    width: 80%;
                    padding:0 .5em;
                }
                input:nth-child(2){
                    width: 20%;
                    border-left: none;
                }
            }
        }
    }
    .category-list{
        display: flex;
        flex-wrap: wrap;
        margin-bottom: 45px;
        li{
            margin: 0 10px 10px 0;
            padding-left: 0;
            text-indent: 0;
            &::before{
                content: none;
            }
            a{
                font-size: 15px;
                border: solid 1px var(--color1);
                color: var(--color1);
                line-height: 1;
                padding: .2em .8em .3em;
                border-radius: 4px;
                transition: .2s;
            }
            a:hover{
                background: var(--color1);
                color: #fff;
                text-decoration: none;
            }
        }
        li.current-category{
            a{
                background: var(--color1);
                color: #fff;
            }
        }
    }
}
.post-list{
    .post{
        border-bottom: dashed 1px var(--bdrcolor);
        padding: 50px 0 20px;
        position: relative;
        .date{
            font-size: 13px;
        }
        .title{
            font-size: 18px;
            font-weight: 500;
            color: var(--color1);
            margin-bottom: .3em;
        }
        .contents{
            font-size: 14px;
            margin-bottom: 1em;
        }
        .more{
            text-align: right;
            a{
                font-size: 11px;
                color: var(--color2);
                border: solid 1px var(--bdrcolor);
                display: inline-block;
                padding: .5em 0 .6em 1em;
                width: 152px;
                box-sizing: border-box;
                text-align: center;
                transition: .1s;
                img{
                    margin-left: 1em;
                    width: 8px;
                    position: relative;
                    top: -.1em;
                }
            }
        }
        .link{
            display: block;
            width: 100%;
            height: 100%;
            position: absolute;
            left: 0;
            top: 0;
            overflow: hidden;
            text-indent: 100%;
            white-space: nowrap;
            br{
                display: none;
            }
        }
        &:hover{
            .more{
                a{
                    background: var(--color2);
                    color: #fff;
                }
            }
        }
    }
}
.archive,
.page-id-20,
.page-id-41,
.page-id-6957{
    .post-list{
        article:first-child{
            .post{
                padding-top: 0;
            }
        }
        .post-meta{
            display: flex;
            flex-wrap: wrap;
            align-items: center;
            margin-bottom: 13px;
            .date{
                margin-right: 1em;
            }
            .cat{
                display: flex;
                flex-wrap: wrap;
                li{
                    padding-left: 0 !important;
                    text-indent: 0 !important;
                    margin-right: 10px;
                    &::before{
                        content: none !important;
                    }
                    a{
                        background: var(--color1);
                        color: #fff;
                        display: block;
                        border-radius: 3px;
                        font-size: 13px;
                        font-weight: 300;
                        line-height: 1;
                        padding: .3em 1em .5em;
                        min-width: 10em;
                        text-align: center;
                        box-sizing: border-box;
                    }
                }
            }
        }
    }
}
.pagination,
.nav-links{
    margin-top: 1.5em;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    font-size: 15px;
    .page-numbers{
        margin: 0 .5em .7em;
        padding:0;
        line-height: 0;
        width: 2.5em;
        height: 2.5em;
        border: solid 1px #666;
        border-radius: 100px;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .page-numbers.current,
    .page-numbers:hover{
        background: var(--color1);
        color: #fff;
        border-color:var(--color1);
        text-decoration: none;
    }
    .page-numbers.dots{
        border: none;
        margin-left: 0;
        margin-right: 0;
        width: 1em;
    }
    .page-numbers.dots:hover{
        background: transparent;
        color: var(--color3);
    }
}
.pagination .nav-links{
    margin-top: 0;
}
.screen-reader-text{
    display: none;
}
.page-id-20{
    #sec1{
        padding-top: 0;
        border-bottom: none;
    }
    #sec2{
        border-bottom: none;
        margin-top: 10px;
        .faq{
            padding:35px 0 35px 24px;
            border-bottom: solid 1px var(--bdrcolor);
            &.bdr-btm-none{
                border-bottom: none;
                padding-bottom: 15px;
            }
            h3{
                text-indent: -1.3em;
                padding-left: 1.3em;
            }
        }
        .first{
            padding-top: 25px;
        }
    }
    #contents{
        .to_faq_guest{
            border: solid 1px var(--bdrcolor);
            text-align: center;
            padding: 30px;
            max-width: 662px;
            margin: 50px auto;
            h3{
                font-size: 18px;
                color: var(--color1);
                margin: 1.5em 0 0;
            }
            .small{
                margin: 1em 0 1.3em;
            }
            button:disabled{
                opacity: 0.6;
                background: transparent;
                color: var(--color3);
                &:hover{
                    cursor: auto;
                }
            }
            button{
                padding: .3em 1.3em .4em;
                transition: .1s;
                background: var(--color2);
                color: #fff;
            }
        }
        .acdinContent{
            display: none;
            margin-bottom: 30px;
            > div:last-child{
                border-bottom: none;
            }
            .first{
                padding-top: 0 !important;
            }
        }
    }
    &.paged{
        .aioseo-breadcrumbs{
            margin-top: 30px;
        }
    }
}
.page-id-41,
.page-id-6957{
    .aioseo-breadcrumbs{
        margin-top: 30px;
    }
}


/*      [検索結果ページ]
-----------------------------------------------*/
.search{
    .page-header{
        .txts{
            width: 100%;
            h1{
                text-indent: -.5em;
            }
        }
    }
}


/*      [診療理念・診療方針ページ]
-----------------------------------------------*/
.page-id-26{
    #sec1{
        padding-top: 0;
        h2{
            margin-bottom: 1em;
        }
        h3{
            color: var(--color3);
            margin-bottom: .8em;
        }
        p{
            margin-bottom: 2.5em;
            text-indent: -.5em;
        }
    }
}

/*      [アクセスページ]
-----------------------------------------------*/
.page-id-28{
    #sec1{
        padding-top: 0;
        h2{
            margin-bottom: .8em;
        }
        .indent{
            h3{
                color: var(--color3);
                margin-bottom: .8em;
                & + p{
                    margin-bottom: 3em;
                }
            }
        }
        figure{
            margin: 3em 0 3em;
        }
        h4{
            font-weight: 500;
        }
        iframe{
            margin-top: 3em;
            max-width: 100%;
        }
    }
}

/*      [提携クリニックページ]
-----------------------------------------------*/
.page-id-22{
    #contents{
        h3{
            font-size: 23px;
            margin-bottom: .3em;
        }
        figure{
            margin-bottom: 60px;
            img{
                max-width: 307px;
                width: 100%;
            }
        }
    }
}

/*      [クリニックのご案内ページ]
-----------------------------------------------*/
.page-id-24{
    #sec1{
        padding-top: 0;
        text-align: justify;
        h2{
            margin-bottom: .8em;
        }
        .box1{
            h3{
                color: var(--color3);
                margin-bottom: 1em;
                & + p{
                    margin-bottom: 1.5em;
                }
            }
        }
        .box2{
            p{
                text-align: center;
                img{
                    width: 100%;
                    max-width: 487px;
                    margin: 40px 0 15px;
                }
            }
        }
        .box3,
        .box4{
            h3.is-open{
                margin-bottom: .9em;
            }
            h4{
                font-size: 20px;
                font-weight: 500;
                margin-bottom: 0;
            }
            .is-open{
                p + p{
                    margin-top: 1.5em;
                }
                h4{
                    margin-bottom: 1em;
                }
            }
        }
    }
    #sec2{
        h2{
            margin-bottom: 1.7em;
        }
        .pics{
            width: 100%;
            max-width: 702px;
            p{
                width: 30.5%;
                max-width: 211px;
                text-align: center;
                margin-bottom: 45px;
            }
        }
        .map{
            max-width: 666px;
            margin-bottom: 10px;
        }
    }
    #sec3{
        h2{
            margin-bottom: 1.5em;
        }
        h3{
            font-size: 1em;
            color: var(--color3);
            margin-bottom: 1.1em;
        }
        dl{
            display: flex;
            margin-bottom: 1.1em;
            &.mb{
                margin-bottom: 2em;
            }
        }
        p{
            margin-bottom: 1.1em;
        }
    }
    #contents{
        #sec4{
            border-bottom: none;
            h2{
                margin-bottom: 1.2em;
            }
            h3{
                color: var(--color3);
                margin-bottom: .8em;
                letter-spacing: .1em;
            }
            h4{
                font-size: 1em;
                font-weight: 500;
                margin-bottom: 1em;
            }
            .indent{
                margin-bottom: 35px;
            }
            .ac-box.is-open{
                margin-bottom: 1em;
            }
            .is-open{
                table{
                    width: 100%;
                    max-width: 670px;
                    font-size: 15px;
                    margin-bottom: 40px;
                    tr{
                        th{
                            border: solid 1px var(--bdrcolor);
                            font-weight: 500;
                            background: var(--color1);
                            color: #fff;
                            padding: .8em .5em;
                            width: calc(100% / 3);
                            text-align: center;
                            word-break: break-word;
                        }
                        td{
                            border: solid 1px var(--bdrcolor);
                            padding: .8em 1em;
                            word-break: break-word;
                        }
                    }
                }
            }
            .achieve1{
                img{
                    width: 100%;
                    max-width: 611px;
                }
                .is-open{
                    table{
                        max-width: 100%;
                        margin-top: 30px;
                        tr{
                            th{
                                border-right: solid 1px #fff;
                                width: auto;
                                &:last-child{
                                    border-right: solid 1px var(--bdrcolor);
                                }
                            }
                            td{
                                text-align: center;
                            }
                        }
                    }
                    table.mb{
                        display: none;
                        tr{
                            th{
                                border-right-color: var(--bdrcolor);
                                border-bottom-color: #fff;
                            }
                        }
                    }
                }
            }
            .achieve2{
                .tables{
                    max-width: 670px;
                    display: flex;
                    align-items: flex-start;
                    tr{
                        th{
                            border: solid 1px var(--bdrcolor);
                        }
                        td{
                            text-align: center;
                            &.bg{
                                background: #e3e6ec;
                            }
                        }
                    }
                    tr.all{
                        font-weight: bold;
                    }
                    table:first-child{
                        tr{
                            th{
                                border-right: solid 1px #fff;
                            }
                            td:nth-child(2){
                                border-right: solid 1px #fff;
                            }
                        }
                    }
                }
            }
            .achieve3{
                table{
                    tr{
                        th:nth-child(1),
                        th:nth-child(2){
                            border-right: solid 1px #fff;
                        }
                    }
                }
            }

        }
    }
}
.modal{
    display: none;
    height: 100vh;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1;
    width: 100%;
}
.modal__bg{
    background: rgba(0,0,0,0.8);
    height: 100vh;
    position: absolute;
    width: 100%;
}
.modal__content{
    background: #fff;
    left: 50%;
    padding: 0;
    position: absolute;
    top: 50%;
    transform: translate(-50%,-50%);
    width: 60%;
    box-sizing: border-box;
    text-align: center;
    img{
        max-width: 100% !important;
        max-height: 85vh;
    }
    .js-modal-close{
        position: absolute;
        right: 15px;
        top: 15px;
        line-height: 1;
        font-weight: bold;
        font-family: auto;
        font-size: 18px;
    }
}

/*      [スタッフ紹介ページ]
-----------------------------------------------*/
.page-id-6647{
    #sec1{
        padding-top: 0;
        h2{
            margin-bottom:1.5em;
        }
    }
    #contents{
        .section{
            h2{
                margin-bottom: .7em;
            }
            .txts{
                margin-bottom: 1em;
            }
            .pic{
                margin-bottom: 25px;
                img{
                    border-radius: 20px;
                }
            }
            .certified{
                font-size: 22px;
                color: var(--color1);
                h3{
                    font-size: 22px;
                    margin-bottom: .7em;
                }
                p{
                    font-size: 16px;
                }
            }
        }
        #sec6747{
            border-bottom: none;
        }
    }
}
#contents {
    .staffs{
        width: 100%;
        max-width: 710px;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        &::after {
            content: '';
            display: block;
            width: 190px;
        }
        .box-6701{
            width: 100%;
        }
        .box-inner{
            width: 190px;
            position: relative;
            text-align: center;
            color: #231815;
            margin-bottom: 65px;
            .pic{
                line-height: 1;
                margin-bottom: 12px;
                img{
                    width: 170px;
                    border-radius: 12.9%;
                    transition: .1s;
                }
            }
            .pic.noimg{
                img{
                    background: #fff;
                }
            }
            .position{
                font-size: 14px;
                line-height: 1.9;
                margin-bottom: .65em;
            }
            .name{
                font-size: 24px;
                letter-spacing: .1em;
                line-height: 1;
                color: #231815;
                margin-bottom: .3em;
            }
            .en{
                font-size: 13px;
                line-height: 1;
            }
            .link{
                position: absolute;
                left: 0;
                top: 0;
                display: block;
                width: 100%;
                height: 100%;
                overflow: hidden;
                text-indent: 100%;
                white-space: nowrap;
            }
            &:hover{
                img{
                    opacity: .8;
                }
            }
        }
    }
    #sec6735{
        .staffs{
            max-width: 100%;
            flex-wrap: nowrap;
            &::after{
                content: none;
            }
            .box-inner:hover{
                .pic img{
                    opacity: 1;
                }
            }
            .txts{
                margin-left: 50px;
            }
        }
    }
    #sec6739{
        .staffs{
            max-width: 100%;
            flex-direction: column-reverse;
            &::after{
                content: none;
            }
            .box-inner:hover{
                .pic img{
                    opacity: 1;
                }
            }
            .txts{
                width: 100%;
                margin-bottom: 1.7em;
            }
        }
    }
}


/*      [スタッフ紹介複数人ページ]
-----------------------------------------------*/
#contents{
    .staff-contents{
        &:first-child{
            padding-top: 0;
        }
        .flex{
            width: 100%;
            .pic{
                width: 29.9%;
                max-width: 248px;
                img{
                    width: 100%;
                    max-width: 100%;
                    border-radius: 7.66%;
                }
            }
            .txts{
                width: 64.18%;
                .position{
                    font-size: 20px;
                    line-height: 1.5;
                    margin-bottom: 1.3em;
                }
                .names{
                    display: flex;
                    flex-wrap: wrap;
                    align-items: center;
                    margin-bottom: 1.3em;
                    h2{
                        padding-left: 0;
                        color: var(--color3);
                        font-size: 25px;
                        letter-spacing: .1em;
                        margin-right: .7em;
                        &::before{
                            content: none;
                        }
                    }
                }
                .body-txt{
                    margin-bottom: 3.5em;
                    p{
                        margin-bottom: 1.3em;
                        text-align: justify;
                    }
                }
                .status{
                    margin-bottom: 2em;
                    h3{
                        color: var(--color3);
                        font-size: 1em;
                        text-indent: -.5em;
                        margin-bottom: 1.3em;
                    }
                }
            }
        }
    }
}

.page-id-6750{
    #contents{
        #sec6728{
            border-bottom:none;
        }
    }
}

/*      [スタッフ紹介個人ページ]
-----------------------------------------------*/
.single-member{
    #contents{
        .staff-contents{
            padding-top: 0;
            border-bottom: none;
            .flex{
                .txts{
                    .names{
                        margin-bottom: 1.1em;
                    }
                }
                .body-txt{
                    margin-bottom: 3.5em;
                    p{
                        margin-bottom: 1.3em;
                    }
                }
                .status{
                    margin-bottom: 2.5em;
                    h3{
                        margin-bottom: 1.3em;
                    }
                }
            }
        }
    }
}




/*      [個人情報保護方針ページ]
-----------------------------------------------*/
.page-id-3{
    #contents{
        h2{
            color: var(--color3);
            padding-left: 0;
            margin-bottom: .5em;
            &::before{
                content: none;
            }
        }
        h2 + p{
            margin-bottom: 3em;
        }
        h3{
            font-size: 16px;
            color: var(--color3);
            position: relative;
            margin-bottom: 1.2em;
            span{
                position: absolute;
                left: -2em;
                top: 0;
            }
        }
        .wp-block-group{
            padding-left: 2em;
            margin-bottom: 2.4em;
            p{
                margin-bottom: 1em;
            }
        }
    }
}

/*      [サイトマップページ]
-----------------------------------------------*/
.page-id-36{
    #contents{
        h2{
            color: var(--color3);
            padding-left: 0;
            font-size: 16px;
            margin-bottom: .4em;
            &::before{
                content: none;
            }
        }
        ul{
            li{
                margin-bottom: .2em;
                &::before{
                    content: none;
                }
            }
        }
        .flex{
            div{
                div{
                    margin-bottom: 2.3em;
                }
            }
        }
        .left,
        .right{
            width: 45%;
        }
    }
}

/*      [お問い合わせページ]
-----------------------------------------------*/
.page-id-30,
.page-id-6449{
    #sidebar{
        display: none;
    }
    #wrapper{
        display: block;
        #contents{
            width: 100%;
            max-width: 1100px;
            margin-left: auto;
            margin-top: 0;
        }
    }
    #contents{
        .lead{
            margin-bottom: 2em;
            a{
                text-decoration: underline;
            }
        }
        .note{
            margin-bottom: 2em;
        }
        table{
            width: 100%;
            border-top: solid 1px var(--bdrcolor);
            font-size: 18px;
            margin-bottom: 32px;
            tr{
                border-bottom: solid 1px var(--bdrcolor);
            }
            th{
                width: 12.5em;
                text-align: left;
                vertical-align: top;
                font-weight: 500;
                padding: 1.7em 0;
                .must{
                    font-size: .8em;
                    margin-left: 2em;
                }
            }
            td{
                width: calc(100% - 12.5em);
                padding: 1.7em 0;
                .item-wrap:first-child{
                    margin-right: 58px;
                }
            }
            .item-wrap{
                max-width: 255px;
                display: inline-block;
            }
            input[type="text"],
            input[type="email"],
            textarea{
                padding:.2em .9em;
                box-sizing: border-box;
                width: 100%;
            }
            input.card-number{
                max-width: 255px;
            }

        }
    }
}
.submit-btns{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    font-size: 18px;
    margin-bottom: 100px;
    input,
    button{
        width: 250px;
        padding: .65em 1em;
        box-sizing: border-box;
        transition: .1s;
        &:hover{
            background: var(--color1);
            color: #fff;
        }
    }
}
.home-link{
    margin: 55px 0 100px;
    a{
        font-size: 20px;
        color: var(--color1);
    }
}
.page-id-6449{
    .check{
        margin: 45px 0 40px;
        h3{
          margin-bottom: .6em;
        }
    }
    .prev-btn{
        margin-right: 50px;
    }
}
.page-id-32{
    .ns-box{
        font-size: 20px;
        margin-bottom: 1.5em;
    }
    .tel{
        margin-top: 1em;
    }
}


/*      [記事詳細ページ]
-----------------------------------------------*/
.single{
    #contents{
        .post{
            margin-bottom: 100px;
            letter-spacing: .05em;
            .post-meta{
                display: flex;
                margin-bottom: 1em;
                font-size: 14px;
                .date{
                    margin-right: 1.5em;
                    margin-bottom: 0;
                }
                .cat{
                    display: flex;
                    flex-wrap: wrap;
                    margin-bottom: 0;
                    li{
                        margin-right: 1.4em;
                        margin-bottom: 0;
                    }
                }
            }
            h1.title,
            h1.wp-block-heading,
            h2.wp-block-heading,
            h3.wp-block-heading,
            h4.wp-block-heading,
            h5.wp-block-heading,
            h6.wp-block-heading{
                font-weight: 500;
                letter-spacing: .1em;
            }
            h1.title{
                margin-bottom: 1em;
                color: var(--color1);
            }
            h1.wp-block-heading{
                margin-bottom: 1em;
                color: var(--color1);
            }
            h2.wp-block-heading{
                margin-bottom: 1.5em;
            }
            h3.wp-block-heading{
                margin-bottom: 1.5em;
            }
            h4.wp-block-heading{
                color: var(--color1);
                margin-bottom: 1.5em;
            }
            h5.wp-block-heading{
                color: var(--color1);
                margin-bottom: 1.5em;
            }
            h6.wp-block-heading{
                color: var(--color1);
                margin-bottom: 1.5em;
            }
            .wp-block-button{
                margin: 1em 0;
                .wp-block-button__link{
                    background-color: var(--color1);
                    border-radius: 5px;
                    font-size: 1em;
                    padding: .3em 1em .4em;
                    border: solid 1px var(--color1);
                    color: #fff;
                    transition: .1s;
                    &:hover{
                        text-decoration: none;
                        background-color: #fff;
                        color: var(--color1);

                    }
                }
            }
            p{
                margin-bottom: 2em;
                line-height: 2;
            }
            ul{
                margin-bottom: 2em;
                line-height: 2;
            }
            table{
                width: 100%;
                margin-bottom: 2em;
                line-height: 1.8;
                th{
                    border: none;
                    border-bottom: solid 1px var(--color3);
                    padding: .5em 1em .5em 0;
                    text-align: left;
                    font-weight: 500;
                    min-width: 7em;
                }
                td{
                    border: none;
                    border-bottom: solid 1px var(--color3);
                    padding: .5em 0;
                }
            }
            a{
                color: var(--color1);
            }
        }
    }
}
#contents{
    .pagenate{
        width: 100%;
        margin: 50px auto;
        position: relative;
        display: flex;
        justify-content: space-between;
        letter-spacing: .05em;
        li{
            padding-left: 0;
            text-indent: 0;
            &::before{
                content: none;
            }
        }
    }
}





/*		[Footer]
-----------------------------------------------*/
#footer{
    padding: 0 30px;
    color: var(--color2);
    .inner{
        max-width: 1160px;
        margin: 0 auto 55px;
        justify-content: flex-start;
        border-top: solid 3px var(--color2);
        padding-top: 30px;
        margin-top: 70px;
    }
    .logo{
        margin-bottom: 20px;
        max-width: 190px;
    }
    .company{
        width: 350px;
        padding-right: 30px;
        box-sizing: content-box;
        address{
            font-style: normal;
            line-height: 1.5;
            .address{
                font-size: 14px;
                margin-bottom: 7px;
            }
            .tel{
                display: flex;
                align-items: center;
                line-height: 1;
                margin: .4em 0 1.2em;
                font-size: 15px;
                span{
                    display: inline-block;
                    position: relative;
                    top: .1em;
                    margin-right: 5px;
                }
                a{
                    color: var(--color2);
                    font-size: 36px;
                }
            }
        }
        .access a{
            display: block;
            border:solid 1px var(--color2);
            text-align: center;
            font-size: 19px;
            line-height: 1;
            color: var(--color2);
            padding: .2em 0 .3em;
            transition: .1s;
            &:hover{
                background-color: var(--color2);
                color: #fff;
                text-decoration: none;
            }
        }
    }
    .txts{
        width: 380px;
        border-left:solid 1px var(--color2);
        padding-left: 35px;
        li{
            list-style: none;
            text-indent: -1em;
            padding-left: 1em;
            line-height: 1.4;
            font-size: 13px;
        }
        .contact{
            max-width: 260px;
            font-size: 17px;
            line-height: 1.8;
            &:nth-child(2){
                margin:12px 0 13px;
            }
            a{
                background-color: var(--color1);
                color: #fff;
                display: block;
                text-align: center;
                border-radius: 5px;
                border: solid 1px var(--color1);
                transition: .3s;
                &:hover{
                    text-decoration: none;
                    background-color: #fff;
                    color: var(--color1);
                }
            }
        }
    }
    .links{
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        margin-left: auto;
        margin-right: 1em;
        font-size: 11px;
        ul{
            width: max-content;
            margin-left: auto;
        }
        .copy{
            margin-bottom: 0;
        }
    }
    .copy{
        text-align: center;
        font-size: 11px;
        margin-bottom: 30px;
    }
}

/*トップページフッター*/
.home{
    #footer{
        .inner{
            max-width: 820px;
            margin: 0 auto 50px;
            justify-content: space-between;
            border-top: none;
            padding-top: 0;
        }
        .company{
            padding:0 35px 0 50px;
        }
    }
}





.txt-dis-none{
    overflow: hidden;
    text-indent: 100%;
    white-space: nowrap;
}
/*		[PC large]
-----------------------------------------------*/
@media screen and (max-width: 1400px) {
#mv{
    .txts{
        h2{
            font-size: calc(40vw / 14);
        }
        p{
            font-size: calc(18vw / 14);
        }
    }
}
}
@media screen and (max-width: 1240px) {
    .page-id-12{
        .page-header{
            .title{
                font-size: calc(38vw / 12.4);
            }
        }
    }
}
@media screen and (max-width: 1220px) {
    #intro{
        .lead{
            margin-bottom: 15px;
        }
        .btn{
            position: static;
            margin-bottom: 10px;
            a{
                margin-left: auto;
            }
        }
    }
    .page-id-8 .page-header .title img{
        width: 1.28em;
    }
    .page-id-10 .page-header .title img{
        width: 1.17em;
    }
    .page-id-12 .page-header .title img{
        width: .9em;
    }
    .page-id-14 .page-header .title img{
        width: 1.35em;
    }
    .page-id-16 .page-header .title img{
        width: 1.36em;
    }
    .page-id-41 .page-header .title img{
        width: 1.23em;
    }
    .page-header .title{
        font-size: calc(46vw / 12.2);
    }
    .page-id-14{
        .page-header{
            .title{
                font-size: calc(40vw / 12.2);
            }
        }
    }
    .page-id-16{
        .page-header{
            .title{
                font-size: calc(43vw / 12.2);
            }
        }
    }
    #contents{
        .archive-search {
            .years {
                width: calc(100% - 200px);
            }
        }
    }
}
@media screen and (max-width: 1100px) {
    #mv{
        padding-top: 150px;
        .logo {
            width: 90px;
            right: 20px;
            top: 20px;
        }
        .txts{
            h2{
                font-size: calc(35vw / 11);
            }
            p{
                font-size: calc(16vw / 11);
            }
        }
    }
    .page-id-10{
        #sec2{
            table{
                td{
                    dl{
                        display: block;
                        margin-bottom: 10px;
                        dt{
                            width: 100%;
                        }
                        dd{
                            width: 100%;
                        }
                    }
                }
            }
        }
        #sec4{
            ul{
                text-align: left;
            }
            .is-layout-flex{
                h4{
                    word-break: keep-all;
                    text-align: left;

                }
                .is-layout-flex{
                    display: block;
                    text-align: left;
                }
            }
        }
    }
    .page-id-16{
        #contents{
            #sec2{
                .table{
                    width: 100%;
                    max-width: 100%;
                }
            }
        }
    }
    .page-id-30,
    .page-id-6449{
        .home-link{
            margin: 30px 0 40px;
        }
    }
}

/*      [ PC small ]
-----------------------------------------------*/
@media screen and (max-width: 960px) {
    #header{
        #logo{
            img{
                width: calc(230vw / 9.6);
            }
        }
    }
    .page-header{
        margin-top: calc(60vw / 9.6);
        .lead{
            font-size: calc(16vw / 9.6);
        }
    }
    #sidebar{
        width: 180px;
        font-size: 13px;
        .menu1{
            font-size: 15px;
        }
        .menu5 .txt{
            letter-spacing: -.17em;
        }
        .menu6 .txt{
            letter-spacing: -.1em;
        }
        li{
            .icon{
                width: 20px;
                margin-right: 6px;
            }
        }
        .pnav{
            margin-left: .7em;
            &:after{
                height: calc(100% - 10px);
                bottom: 10px;
            }
            li{
                padding-left: 1.2em;
                &:before{
                    width: .8em;
                }
                &.current:after,
                &:hover:after{
                    left: calc(.4em + 3px);
                    top: 3px;
                }
            }
        }
    }
    #wrapper{
        #contents{
            width: calc(100% - 180px - 40px);
        }
    }
    #contents{
        h2{
            font-size: 22px;
        }
        h3{
            font-size: 18px;
        }
    }
    .page-id-8{
        #sec5{
            .group1{
                h3{
                    font-size: 22px;
                }
            }
            .btn{
                a{
                    font-size: 16px;
                }
            }
        }
    }
    .page-id-10{
        #sec3{
            .lead{
                font-size: 18px;
            }
        }
    }
    .page-id-12 {
        #sec6 {
            .wp-block-list {
                font-size: 18px;
            }
        }
    }
    .page-id-14{
        #contents {
            .indent {
                .wp-block-group__inner-container {
                    .person {
                        h3 {
                            font-size: 20px;
                        }
                    }
                }
            }
        }
    }
    .post-list {
        .post {
            padding: 35px 0 20px;
        }
    }
    .page-id-18 {
        #sec2,
        #sec3 {
            ul {
                li {
                    font-size: 20px;
                }
            }
        }
    }
    .page-id-6647{
        #contents {
            .section {
                .certified {
                    font-size: 20px;
                    h3{
                        font-size: 20px;
                    }
                }
            }
        }
    }
    #contents {
        .staffs{
            &::after {
                width: calc(190vw / 9.6);
            }
            .box-inner {
                width: calc(190vw / 9.6);
                .name {
                    font-size: 22px;
                }
                .pic {
                    img {
                        width: calc(170vw / 9.6);
                    }
                }
            }
        }
        #sec6735{
            .staffs{
                .txts{
                    margin-left: 30px;
                }
            }
        }
    }
    .page-id-22 {
        #contents {
            h3 {
                font-size: 20px;
                margin-bottom: .6em;
            }
            figure {
                margin-bottom: calc(60vw / 9.6);
            }
        }
    }
    .page-id-24 {
        #sec1 {
            .box3,
            .box4 {
                h4 {
                    font-size: 18px;
                }
            }
        }
    }
}
@media screen and (max-width: 900px) {
    .home{
        #header{
            #logo{
                margin-bottom: calc(50vw / 9);
                img{
                    width:calc(186vw / 9);
                }
            }
        }
    }
    #intro{
        h2{
            font-size: calc(29vw / 9);
        }
        .btn{
            a{
                width: calc(190vw / 9);
                height: calc(53vw / 9);
                font-size: calc(16vw / 9);
            }
        }
    }
    .mainMenu .nav > li{
        margin-bottom: calc(10vw / 9);
    }
    .mainMenu .nav > li > a,
    .navFirst li a{
        max-width: calc(262vw / 9);
        max-height: calc(262vw / 9);
        font-size: calc(25vw / 9);
    }
    .mainMenu .nav .icon img{
        max-width: calc(78vw / 9);
    }
    .fadeMenu ul{
        left: calc(-100vw / 9);
        border-radius: calc(10vw / 9);
        font-size: calc(18vw / 9);
        padding: calc(5vw / 9) calc(15vw / 9);
    }
    #news{
        .tab{
            li{
                font-size: calc(20vw / 9);
                border-radius: calc(7vw / 9) calc(7vw / 9) 0 0;
            }
        }
        .listWrap {
            height: calc(300vw / 9);
            padding: 0 calc(20vw / 9);
        }
        p, h3{
            font-size: calc(14vw / 9);
        }
    }
    #pageNavi{
        .navFirst{
            margin-bottom: calc(32vw / 9);
            li a{
                max-width: calc(154vw / 9);
                max-height: calc(154vw / 9);
                font-size: calc(20vw / 9);
            }
        }
        .navSecond{
            li {
                margin: 0 calc(11vw / 9);
                a{
                    width: calc(205vw / 9);
                    height: calc(55vw / 9);
                    font-size: calc(20vw / 9);
                }
            }
        }
    }
    .home{
        #footer{
            .inner{
                margin-bottom: calc(50vw / 9);
            }
            .company{
                width: calc(350vw / 9);
                padding: 0 calc(35vw / 9) 0 calc(40vw / 9);
            }
        }
    }
    #footer{
        .company{
            width: calc(380vw / 9);
            padding-right: calc(35vw / 9);
            address{
                .tel{
                    font-size: calc(15vw / 9);
                    a{
                        font-size: calc(36vw / 9);
                    }
                }
            }
        }
        .txts{
            width: calc(380vw / 9);
            padding-left: calc(35vw / 9);
        }
    }
    #contents{
        .wp-block-group.phone {
            .is-layout-flex {
                h3{
                    font-size: calc(17vw / 9);
                }
                p {
                    font-size: calc(29vw / 9);
                }
            }
            .wp-block-group__inner-container {
                & > p {
                    font-size: calc(16vw / 9);
                }
            }
        }
    }
    .page-id-12{
        .page-header{
            .title{
                font-size: calc(38vw / 12.4);
            }
        }

    }
    .page-id-14{
        .page-header{
            .title{
                font-size: calc(39vw / 12.2);
            }
        }
    }
    .page-id-16{
        .page-header{
            .title{
                font-size: calc(42vw / 12.2);
            }
        }
    }
    .page-id-30,
    .page-id-6449{
        #contents {
            table {
                .item-wrap {
                    max-width: 44%;
                }
                td{
                    .item-wrap:first-child {
                        margin-right: 8%;
                    }
                }
            }
        }
    }
}


/*      [ Tablet large]
-----------------------------------------------*/
@media screen and (max-width: 768px) {
    .hamburger{
        display: block;
    }
    #header{
        padding-top: 40px;
        #logo{
            text-align: center;
            img{
                width: 180px;
            }
        }
    }
    #mv{
        .txts{
            h2{
                font-size: calc(26vw / 7.68);
            }
            p{
                font-size: calc(12vw / 7.68);
                margin-right: 2.3em;
            }
        }
    }
    #sidebar{
        width: 100%;
        height: auto;
        position: static;
        display: none;
        .wrap{
            border-right: none;
            padding-right: 0;
        }
    }
    #wrapper{
        #contents{
            width: 100%;
        }
    }
    #contents{
        .indent{
            margin-left: 0;
        }
        .wp-block-group.phone {
            max-width: 500px;
            margin: 25px auto 0;
            .is-layout-flex {
                h3{
                    font-size: 15px;
                }
                p {
                    font-size: 24px;
                }
            }
            .wp-block-group__inner-container {
                & > p {
                    font-size: 14px;
                }
            }
        }
        .staff-contents {
            .flex {
                .txts {
                    .position {
                        font-size: 18px;
                    }
                    .names {
                        h2 {
                            font-size: 24px;
                        }
                        .en{
                            font-size: 15px;
                        }
                    }
                }
            }
        }
        .category-list li a{
            font-size: 14px;
        }
    }
    .page-header{
        margin-top: 35px;
        flex-direction: column-reverse;
        .lead{
            font-size: 16px;
            text-align: justify;
        }
        .txts{
            width: 100%;
        }
        .pics{
            width: 100%;
            max-width: 100%;
            flex-wrap: nowrap;
            margin-bottom: calc(40vw / 7.68);
            li{
                max-width: 100%;
            }
        }
        .title{
            font-size: 30px;
        }
    }
    .page-id-3,
    .page-id-18,
    .page-id-20,
    .page-id-22,
    .page-id-24,
    .page-id-26,
    .page-id-30,
    .page-id-32,
    .page-id-36,
    .page-id-6449,
    .archive,
    .search,
    .single,
    .page-id-6647{
        .page-header .title{
            margin-bottom: 0;
        }
    }
    #footer{
        .company{
            width: calc(360vw / 9);
        }
        .links{
            margin:20px 0 0;
            display: block;
            width: 100%;
            ul{
                display: none;
            }
        }
    }
    .home{
        #footer{
            .company{
                width: calc(320vw / 7.68);
                padding: 0;
            }
        }
    }
    .page-id-12,
    .page-id-14,
    .page-id-16{
        .page-header{
            .title{
                font-size: 25px 30px;
            }
        }
    }
    .post-list {
        .post {
            padding: 25px 0 15px;
        }
    }
    .page-id-20 {
        #sec2 {
            padding-top: 15px;
            .faq {
                padding: 30px 0;
            }
            .first{
                padding-top: 20px;
            }
        }
        #contents {
            .to_faq_guest {
                padding: 25px;
                margin: 30px auto 0;
                h3{
                    margin-top: 1em;
                }
            }
        }
    }
    #contents{
        .staffs{
            &::after {
                width: calc(190vw / 7.68);
            }
            .box-inner {
                width: calc(190vw / 7.68);
                margin-bottom: calc(65vw / 7.68);
                .pic {
                    img {
                        width: calc(170vw / 7.68);
                    }
                }
            }
        }
    }
    .page-id-28 {
        .page-header .title{
            margin-bottom: 0;
        }
        #sec1 {
            .indent {
                h3 {
                    & + p {
                        margin-bottom: 2em;
                    }
                }
            }
        }
    }
    .page-id-24{
        #sec1{
            .box2{
                p img{
                    max-width: 400px;
                    margin: 30px 0 0;
                }
            }
        }
    }
    .page-id-30,
    .page-id-6449{
        .home-link{
            margin:20px 0;
        }
        #contents {
            .lead,
            .note{
                margin-bottom: 1em;
            }
            table {
                font-size: 16px;
            }
        }
    }
    .submit-btns{
        font-size: 16px;
    }
}
@media screen and (max-width: 610px) {
    .mainMenu .nav > li > a, .navFirst li a {
        max-width: calc(255vw / 6.1);
        max-height: calc(255vw / 6.1);
        font-size: calc(24vw / 6.1);
    }
}
/*      [ Tablet small]
-----------------------------------------------*/
@media screen and (max-width: 600px) {
    .mb-only{
        display: block;
    }
    .pc-only{
        display: none;
    }
    .nav .fadeMenu ul{
        display: none;
    }
    #mv{
        padding-top: 75px;
        .logo {
            width: 70px;
            right: 10px;
            top: 5px;
        }
        .txts{
            -ms-writing-mode:lr-tb;
            writing-mode:horizontal-tb;
            h2{
                font-size: calc(22vw / 3.75);
                padding-left: 0;
                margin-bottom: .6em;
            }
            p{
                font-size: calc(14vw / 3.75);
                line-height: 2;
                margin-right: 0;
                margin-bottom: 1.5em;
            }
        }
        .scroll{
            bottom: 20px;
            img{
                width: 40px;
            }
        }
    }
    #header{
        padding-top: 18px;
        #logo{
            width: calc(186vw / 9);
            margin:0 auto calc(40vw / 9);
        }
    }
    .home #header {
        padding-top: 18px;
        #logo{
            margin:0 auto calc(40vw / 9);
        }
    }
    #main{
        padding: 0 25px;
    }
    #intro{
        h2{
            font-size: calc(17vw / 3.75);
            text-align: left;
        }
        .lead{
            text-align: left;
            br{
                display: none;
            }
        }
        .btn{
            a {
                width: calc(170vw / 3.75);
                height: calc(45vw / 3.75);
                font-size: calc(14vw / 3.75);
            }
        }
    }
    #news{
        .tab{
            li{
                font-size: calc(15vw / 3.75);
                border-radius: 5px 5px 0 0;
            }
        }
        .listWrap{
            height: 350px;
        }
        p{
            font-size: 12px;
        }
        .bdr{
            width: 100%;
            flex-wrap: wrap;
        }
        .date{
            order: 2;
        }
        .cat{
            order: 1;
            font-size: 10px;
        }
        h3{
            width: 100%;
            font-size: 15px;
            order: 3;
            margin-top: .5em;
        }
    }
    #pageNavi {
        .navFirst{
            justify-content: center;
            li a{
                max-width: calc(107vw / 3.75);
                max-height: calc(107vw / 3.75);
                font-size: calc(14vw / 3.75);
            }
        }
        .navSecond{
            li{
                a{
                    width: calc(150vw / 3.75);
                    height: calc(40vw / 3.75);
                    font-size: calc(14vw / 3.75);
                }
            }
        }
    }
    #footer{
        .inner{
            border-top-width: 2px;
            margin-bottom: 25px;
            margin-top: 50px;
        }
        .company{
            width: 100%;
            padding-right: 0;
            margin-bottom: 15px;
            address{
                .tel{
                    font-size: calc(13vw / 3.75);
                    a{
                        font-size: calc(26vw / 3.75);
                    }
                }
            }
        }
        .txts{
            width: 100%;
            border-left: none;
            padding-left: 0;
            .contact{
                max-width: 100%;
                font-size: 15px;
            }
        }

    }
    .home {
        #footer{
            .inner{
                flex-wrap: wrap;
            }
            .company{
                width: 100%;
                margin-bottom: 15px;
            }
            .txts{
                width: 100%;
                padding-left: 0;
                border-left: none;
                .contact{
                    max-width: 100%;
                    font-size: 15px;
                }
            }
        }
    }
    .page-header{
        margin-top: 25px;
        padding-bottom: 25px;
        border-bottom: solid 2px var(--color2);
        .title{
            font-size: 24px;
        }
        .lead br{
            display: none;
        }
        .pics{
            margin-bottom: 30px;
        }
    }
    #wrapper{
        #contents{
            margin-top: 30px;
        }
    }
    #contents{
        section{
            padding: 25px 0;
        }
        h2{
            font-size: 20px;
            margin-bottom: .5em;
        }
        .group {
            .ac.is-open {
                margin-bottom: 40px;
            }
        }
        .wp-block-group.phone {
            padding: 10px 20px;
            .is-layout-flex {
                display: block;
                h3{
                    margin-bottom: .8em;
                }
                p{
                    font-size: 22px;
                }
            }
            .wp-block-group__inner-container {
                & > p {
                    font-size: 13px;
                    text-align: left;
                }
            }
        }
        .archive-search {
            display: block;
            margin-bottom: 10px;
            .search-area{
                width: 100%;
                #searchform{
                    width: 100%;
                }
            }
            .years {
                width: 100%;
                margin-bottom: 15px;
                font-size: 14px;
                li{
                    margin-bottom: .5em;
                }
            }
        }
        .staff-contents {
        padding-bottom: 0;
            .flex {
                .pic{
                    width: 100%;
                    max-width: 100%;
                    margin-bottom: 20px;
                }
                .txts {
                    width: 100%;
                    .position{
                    margin-bottom: 1em;
                    }
                    .position{
                    margin-bottom: .7em;
                    }
                    .names {
                        margin-bottom: .9em;
                        h2 {
                            font-size: 22px;
                        }
                        .en{
                            font-size: 14px;
                        }
                    }
                }
            }
        }
        .category-list{
            margin-top: 30px;
            margin-bottom: 40px;
            li{
                margin:0 13px 13px 0;
                a{
                    font-size: 13px;
                }
            }
        }
        .archive-search .search-area p:first-child{
            font-size: 13px;
        }
    }
    .single-member {
        #contents {
            .staff-contents {
                padding-bottom: 0;
                .flex {
                    .body-txt {
                        margin-bottom: 2em;
                    }
                    .status {
                        margin-bottom: 2em;
                        h3 {
                            margin-bottom: 1em;
                        }
                    }
                }
            }
        }
    }
    .page-id-8{
        #sec1 ul{
            margin: 1em 0 0;
        }
        #sec2{
            .list{
                width: 100%;
                ul:first-child {
                    margin-right: 4em;
                }
            }
            .is-open{
                .list{
                    margin-bottom: 15px;
                }
                table{
                    th,td{
                        padding-bottom: 10px !important;
                    }
                }
            }
            .table{
                width: 100%;
                border-left: none;
                padding-left: 0;
            }
            .is-open + .btm-arrow {
                margin: 15px 0 15px;
                img{
                    width: 20px;
                }
            }
        }
        #sec4{
            .lead{
                margin-bottom: 30px;
                .pics{
                    width: 100%;
                    .flex img{
                        width: 48%;
                        max-width: 100%;
                    }
                }
                .pic{
                    width: 100%;
                    max-width: 100%;
                    img{
                        width: 100%;
                    }
                }
            }
            & .group1,
            & .group3,
            & .group6,
            & .group7 {
                .is-open{
                    .txt{
                        width: 100%;
                        margin-bottom: 20px;
                    }
                }
                .txt {
                    width: 100%;
                }
                .pic{
                    width: 100%;
                }
            }
            .group2 .flex img,
            .group2 .flex video,
            .group3 .flex2 > div,
            .group4 .flex > div {
                width: 100%;
            }
            .group2 .flex img{
                margin-bottom: 20px;
            }
            .group3{
                .is-open{
                    h4{
                        font-size: 18px;
                        margin: 2em 0 .5em;
                    }
                    .flex2{
                        div p:first-child{
                            margin-bottom: 25px;
                        }
                    }
                    .flex2 > div{
                        p:nth-child(2){
                            margin-bottom: 10px;
                        }
                    }
                }
                .flex2 > div{
                    display: flex;
                    flex-direction: column-reverse;
                    &:nth-child(2){
                        p:first-child{
                            margin-bottom: 0;
                        }
                    }
                }
            }
            .group4{
                .is-open{
                    .flex{
                        & > div{
                            p:first-child {
                                margin: 10px 0 25px;
                            }
                        }
                    }
                }
                .flex{
                    & > div{
                        display: flex;
                        flex-direction: column-reverse;
                        p:first-child {
                            margin-bottom: 0;
                        }
                        p br{
                            display: none;
                        }
                        &:nth-child(2){
                            p:first-child{
                                margin-bottom: 0;
                            }
                        }
                    }
                }
            }
            .group5{
                .ac{
                    margin-bottom: 0;
                }
                .flex{
                    .txt{
                        width: 100%;
                    }
                    .pic{
                        width: 60px;
                        margin: 15px auto 25px;
                    }
                }
            }
            .group6{
                .txt{
                    p br{
                        display: none;
                    }
                }
                .ac.is-open{
                    h4{
                        font-size: 18px;
                        margin-bottom: .3em;
                    }
                    .movie{
                        flex-direction: column;
                        video{
                            width: 100%;
                            &:first-child{
                                margin-bottom: 20px;
                            }
                        }
                    }
                }
            }
        }
        #sec5{
            .group1{
                .mb br{
                    display: none;
                }
                h3{
                    font-size: 18px;
                }
            }
            & > h3 {
                font-size: 18px;
            }
            .group2{
                margin-bottom: 30px;
            }
            .group3{
                h4{
                    word-break: keep-all;
                }
                .is-open{
                    th{
                        padding-left: 0;
                        padding-right: .5em;
                        width: 38%;
                    }
                    td{
                        text-align: right;
                        padding-left: 0;
                    }
                }
                table{
                    font-size: 15px;
                }
            }
            .group4{
                .is-open{
                    table{
                        font-size: 15px;
                        margin-bottom: 45px;
                        th{
                            padding-left: 0;
                            width: 75%;
                        }
                        td{
                            padding-left: 0;
                            padding-right: 0;
                        }
                        thead{
                            th{
                                text-align: center;
                            }
                        }
                    }
                }
                .notes{
                    font-size: 15px;
                    margin-bottom: 1em;
                }
            }
            .btn a{
                font-size: 14px;
                max-width: 100%;
            }
        }
        #sec6{
            .group1{
                margin-bottom: 2em;
            }
        }
    }
    .page-id-10{
        #sec1{
            padding-bottom: 10px;
        }
        #sec2{
            padding-bottom: 0;
            table{
                th{
                    display: block;
                    width: 100%;
                    padding-bottom: 0;
                }
                td{
                    display: block;
                    width: 100%;
                    padding: 0 0 10px;
                }
            }
        }
        #sec3{
            padding-bottom: 10px;
            h3{
                margin-bottom: 0;
            }
            h3.is-open{
                margin-bottom: .5em;
            }
            .is-layout-flex{
                display: block;
                margin-bottom: 0;
                p{
                    width: 100%;
                }
                figure{
                    width: 100%;
                    margin-top: 15px;
                }
            }
        }
        #sec4{
            padding-bottom: 0;
            .is-layout-flex{
                margin-bottom: 5px;
                display: block;
                h3{
                    text-align: center;
                    width: 100%;
                    margin-bottom: .5em;
                }
            }
            ul{
                margin-bottom: .5em;
            }
            .wp-block-image{
                img{
                    width: 20px;
                }
            }
        }
    }
    .page-id-12{
        .page-header{
            .title{
                font-size: 24px;
            }
        }
        #sec1{
            .wp-block-group__inner-container {
                h2:first-child {
                    & + p {
                        margin-bottom: 2em;
                    }
                }
            }
        }
        #sec5 {
            table {
                tr {
                    th {
                        &:first-child {
                            width: 7em;
                        }
                    }
                    td{
                        ul{
                            font-size: 15px;
                            padding-left: 5px;
                        }
                    }
                }
            }
        }
        #sec6 {
            padding-bottom: 0;
            .wp-block-list {
                font-size: 16px;
                li{
                    img{
                        width: 20px;
                    }
                }
            }
        }
    }
    .page-id-14{
        .page-header{
            .title{
                font-size: 24px;
            }
        }
        #contents {
            .indent {
                .wp-block-group__inner-container {
                    .person {
                        h3 {
                            font-size: 18px;
                        }
                    }
                }
            }
        }
        #sec4{
            padding-bottom: 0;
        }
    }
    .page-id-16{
        .page-header{
            .title{
                font-size: 24px;
            }
        }
        #contents {
            table {
                font-size: 14px;
                td.week {
                    font-size: 16px;
                }
            }
        }
        #sec1{
            .note{
                font-size: 15px;
            }
        }
        #sec2{
            padding-bottom: 0;
        }
    }
    .post-list {
        .post {
            padding: 25px 0 15px;
        }
    }
    .page-id-18 {
        #sec2,
        #sec3 {
            ul {
                margin-top: 1.2em;
                li {
                    font-size: 18px;
                }
            }
        }
        #sec4{
            padding-bottom: 0;
            .is-layout-flex{
                display: block;
            }
            .wp-block-buttons > div:first-child,
            .wp-block-buttons > div{
                margin-right: 0;
                width: 100%;
                margin-bottom: 10px;
            }
            .wp-block-button__link{
                width: 100%;
            }
        }
    }
    .page-id-20 {
        #sec2 {
            padding-bottom: 0;
            .faq {
                padding: 25px 0;
            }
            .first{
                padding-top: 15px;
            }
        }
        #contents {
            .to_faq_guest {
                margin: 15px auto 25px;
                button{
                    padding: .3em 1em .4em;
                    font-size: 15px;
                }
                .small {
                    margin: 1em 0;
                }
            }
            .acdinContent{
                margin-bottom: 0;
            }
        }
    }
    .page-id-6647{
        #sec1,
        #sec2{
            padding-bottom: 0;
        }
        #contents {
            .section {
                &:last-child{
                    padding-bottom: 0;
                }
                .certified {
                    font-size: 18px;
                    h3{
                        font-size: 18px;
                    }
                }
            }
        }
    }
    #contents{
        .staffs{
            &::after {
                width: 46%;
            }
            .box{
                width: 46%;
            }
            .box-6701 {
                width: 100%;
                .box-inner{
                    width: 46%;
                }
            }
            .space-box{
                display: none;
            }
            .box-inner {
                width:100%;
                .pic {
                    margin-bottom: 8px;
                    img {
                        width:100%;
                    }
                }
                .name{
                    font-size: 20px;
                }
                .position{
                    font-size: 12px;
                    line-height: 1.6;
                    margin-bottom: .9em;
                }
                .en{
                    font-size: 12px;
                }
            }
        }
        #sec6735{
            .staffs{
                flex-direction: column-reverse;
                flex-wrap: wrap;
                .txts{
                    margin-left: 0;
                    margin-bottom: 1.7em;
                }
            }
        }
    }
    .page-id-22 {
        #contents {
            h3 {
                font-size: 18px;
                margin-bottom: .6em;
            }
        }
    }
    .page-id-26 {
        #sec1 {
            padding-bottom: 0;
            h3 {
                margin-bottom: .4em;
            }
            p{
                margin-bottom: 2em;
            }
        }
    }
    .page-id-28 {
        #sec1 {
            .indent {
                h3 {
                    margin-bottom: .3em;
                    & + p {
                        margin-bottom: 1.5em;
                    }
                }
            }
            figure {
                margin: 1em 0 2em;
            }
            iframe {
                margin-top: 1em;
            }
        }
    }
    .page-id-3 {
        #contents {
            .wp-block-group {
                padding-left: 0;
                margin-bottom: 2em;
            }
            h3 {
                margin-bottom: .5em;
                span {
                    position: static;
                    margin-right: .5em;
                }
            }
        }
    }
    .page-id-36 {
        #contents {
            .flex{
                display: block;
                div div{
                    margin-bottom: 1.5em;
                }
            }
            .left,
            .right {
                width: 100%;
            }
        }
    }
    .page-id-24{
        #sec1{
            .box2{
                p img{
                    max-width: 330px;
                }
            }
        }
        #sec2{
            .pics{
                p{
                    width: 47.5%;
                    max-width: 100%;
                    margin-bottom: 25px;
                }
            }
        }
        #sec3{
            .address{
                dd{
                    width: calc(100% - 4em);
                }
            }
        }
        #contents {
            #sec4 {
                .achieve1 {
                    .is-open {
                        table.pc {
                            display: none;
                        }
                        table.mb {
                            display: table;
                        }
                    }
                }
                .achieve2,
                .achieve3{
                    table tr th{
                        font-size: 14px;
                        padding-left: 0;
                        padding-right: 0;
                    }
                }
            }
        }
    }
    .page-id-30, .page-id-6449 {
        #contents {
            table {
                border-top: none;
                margin-bottom: 25px;
                tr{
                    border-bottom: none;
                }
                th {
                    display: block;
                    width: 100%;
                    padding: 1.2em 0 .5em;
                }
                td {
                    display: block;
                    width: 100%;
                    padding: 0;
                }
                input.card-number{
                    max-width: 100%;
                }
            }
        }
        .page-id-6449{
            .prev-btn{
                margin-right: 20px;
            }
            .check {
                margin: 20px 0 10px;
            }
        }
    }
    .page-id-6957,
    .tax-blog_genre{
        #contents{
            .category-list{
                margin-bottom: 30px;
                margin-top: 0;
            }
        }
    }
    .submit-btns {
        font-size: 15px;
        margin-bottom: 60px;
        flex-direction: column;
        align-items: center;
        input, button {
            width: 40%;
        }
    }
    .single {
        #contents {
            .post {
                .post-meta{
                    font-size: 14px;
                }
                h1.title {
                    font-size: 24px;
                }
            }
        }
    }
    .archive,
    .page-id-20{
        .post-list{
            .post-meta{
                .cat{
                    li{
                        a{
                            font-size: 11px;
                        }
                    }
                }
            }
        }
    }
    #contents{
        .pagenate{
            margin: 40px auto 30px;
            font-size: 13px;
            flex-wrap: wrap;
            .all{
                order: 3;
                width: 100%;
                text-align: center;
                margin-top: 1em;
            }
            .prev{
                order: 1;
            }
            .next{
                order: 2;
            }
        }
    }
    .single-post,
    .single-staffblog{
        #contents{
            .pagenate{
                flex-wrap: nowrap;
                font-size: 14px;
                margin-bottom: 30px;
                .all{
                    order: 2;
                    width: auto;
                    margin-top: 0;
                }
                .next{
                    order: 3;
                }
            }
        }
    }
    .page-id-41{
        #sec1{
            .box{
                width: 100%;
            }
        }
    }
}
/*      [ Smartphone ]
-----------------------------------------------*/
@media screen and (max-width: 480px) {

}


