@charset "UTF-8";
/*
    Template: swell
    Theme Name: central-dental-implant
    Theme URI: 
    Description: 
    Version: 1.0
    Author: 
    Author URI:

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/

/* フォント */
.font-serif{
    font-family: “Noto Serif JP”, “Hiragino Mincho ProN”, serif;
} 

.font-shadow-w {
    text-shadow: 0px 0px 5px #fff, 0px 0px 5px #fff, 0px 0px 10px #fff, 0px 0px 10px #fff, 0px 0px 15px #fff, 0px 0px 15px #fff;
}

/* MV */
/* .l-container{
    max-width: 100%;
} */
.p-mainVisual__textLayer{
    align-items: flex-end;
}
/*.mv__copy1 p .emphasis{
    position: relative;
    bottom: -0.1em;
}
.mv__copy1 p .emphasis::before{
    content: "・";
    position: absolute;
    left: 0;
    top: -1em;
}
*/
@media (max-width: 1000px){
    .mv__copy1 p{
        font-size: 2em !important;
    }
}
@media (max-width: 959px){
    .p-mainVisual__textLayer{
        align-items: center;/*スマホ時に中央へ*/
    }
}
@media (max-width: 600px){
    .mv__copy1 p{
        font-size: 6vw !important;
    }
    .swell-block-fullWide.alignfull .swell-block-fullWide__inner{
        padding-left: 1rem;
        padding-right: 1rem;
    }
    .body__copy{
        font-size: 1.75em !important;
    }
    .body__copy__sub{
        font-size: 1.2em !important;
    }
    .ttl-section-en{
        font-size: 2em !important;
    }
    .ttl-section-jp{
        font-size: 1.5em !important;
    }
    .case__boxmenu .swell-block-box-menu__text{
        font-size: 1em !important;
        line-height: 1.1 !important;
    }
    .reason__clm-large .swell-block-column{
        padding: 0 1rem !important;
    }
    .reason__clm-large img{
        aspect-ratio: 16/9 !important;
    }
    .ttl-num-big{
        text-align: center;
        font-size: 3em !important;
    }
    .reason__clm-large h3.is-style-section_ttl, #reason07 h3.is-style-section_ttl{
        font-size: 2rem !important;
    }
    .reason__clm-large.clm-sp-rev .swell-block-columns__inner{
        flex-direction: column-reverse;
    }
}

.w-header {
    align-items: flex-start;
}

/* ヘッダーBOXメニュー */
.swell-block-box-menu.header__boxmenu .swell-block-box-menu__item{
    width: auto;
}
.header__boxmenu__tel .swell-block-box-menu__text{
    font-size: 1.5em;
}
.header__boxmenu__web .swell-block-box-menu__text{
    font-size: 1.4em;
}
.swell-block-box-menu.is-style-fill .header__boxmenu__tel .swell-block-box-menu__link{
    background: #f6f4ec;
}
.swell-block-box-menu.is-style-fill .swell-block-box-menu__item.header__boxmenu__tel{
    color: #000;
}
.swell-block-box-menu[data-direction=vertical].header__boxmenu .swell-block-box-menu__figure {
    margin-bottom: 0.7em;
}

/* スマホ用メニュー */
.p-spMenu__inner{
    background-color: var(--color_main);
    color: #FFF;
}
.p-spMenu__inner::before{
    background: transparent;
}
.p-spMenu__body{
    overflow-y: auto;
}
/* [data-spmenu="opened"] .icon-menu-thin:before{
    content: "\e920";
} */

.c-widget__title.-spmenu{
    display: none;
}
[data-spmenu=closed] .p-spMenu {
    transition-delay: 0.3s;
}

/* PCでも開閉メニューを適用 */
@media (min-width: 960px){
    .l-header{
        position: sticky;
        /* padding-right: 95px; */
    }
    .l-header__inner.l-container{
        max-width: 100%;
        padding-right: 0;
    }
    .l-header__menuBtn.sp_{
        display: block !important;
        height: 95px;
        width: 95px;
        background: #fff;
        color: #000;
        position: fixed;
        right: 0;
    }
    
    .c-iconBtn.-menuBtn .c-iconBtn__icon{
        font-size: 2.5em;
    }
    .c-iconBtn.-menuBtn .c-iconBtn__label{
        font-size: 1em;
        font-family: “Noto Serif JP”, “Hiragino Mincho ProN”, serif;
    }
    #gnav{
        display: none;
    }
    .p-spMenu {
        display: block;
        top: var(--swl-adminbarH,0);
    }
    .p-spMenu__inner{
        width: 500px;
        top:95px;
    }
    .l-header__inner .widget_text {
        position: fixed;
        right: 95px;
        z-index: 9999;
    }
}

@media (min-width: 960px) and (min-width: 600px){
    .-series .c-headLogo {
        max-width: 100%;
    }
}

/* ボタン */
.btn-cta a span>span{
    display: block;
}

/* タイトル */
.ttl-section-en{
    display: flex;
    justify-content: center;
    align-items: center;
}
.ttl-section-en:before, .ttl-section-en:after {
    content: '';
    height: 2px;
    flex-grow: 1;
    background-color: #000;
}
.ttl-section-en:before {
    margin-right: 1rem;
}
.ttl-section-en:after {
    margin-left: 1rem;
}

/* 併用 */
.mix__boxmenu .swell-block-box-menu__link{
    padding: 2em 1em;
}
.mix__boxmenu .swell-block-box-menu__text>span{
    font-weight: bold;
    display: block;
}

/* オススメ */
.bg-arrow-w{
    background: #fff;
    position: relative;
    padding-bottom: 10vw !important;
}
.bg-arrow-w::after{
    content: '';
    display: block;
    width: 100%;
    height: 10vw;
    position: absolute;
    bottom: 0;
    background: url(img/arrow-bg-rev-w.svg);
    background-size: cover;
    background-repeat: no-repeat;
}
.case__boxmenu .swell-block-box-menu__text{
    font-size: 1.25em;
    line-height: 1.3;
}

/* RESON */
.ttl-num{
    font-family: “Noto Serif JP”, “Hiragino Mincho ProN”, serif;
    font-style: italic;
    line-height: 1.2;
    margin-bottom: 0.3em;
}
/* .ttl-num:after{
    content: '';
    display: block;
    background: var(--color_main);
    width: 1em;
    height: 0.1em;
    margin: 0 auto 0.5em;
} */
@media (min-width: 960px){
    .img-num .wp-block-group__inner-container{
        position: relative;
    }
    .ttl-num-big{
        position: absolute;
        font-size: 10em !important;
        top: -0.5em;
        left: -0.25em;
        opacity: 0.7;
        color: var(--color_deep04)!important;
    }
}

/* 症例 */
.case__col__img{
    position: relative;
}
.case__col__img .swell-block-columns__inner:before{
    content: "";
    position: absolute;
    width: 0;
    height: 0;
    border-left: 32px solid #acbab7;
    border-top: 34px solid transparent;
    border-bottom: 34px solid transparent;
    right: 0;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
}

@media (max-width: 599px){
    .case__col__img .swell-block-columns__inner:before{
        transform: rotate(90deg);
    }
}
