/*
Theme Name: 賢威8.0（子テーマ） 
Theme URI: https://rider-store.jp/keni/
Author: 株式会社ウェブライダー		
Author URI: https://web-rider.jp/
Description: 賢威8.0 子テーマです。		
Version: 8.0.0.0
Template: keni80_wp_standard_all_202506181443
*/
@charset "UTF-8";

/* ====================================
    外部フォント
===================================*/

@font-face {
/* Material Icons */
    font-family: Material Icons;
    font-style: normal;
    font-weight: 400;
    src: url(https://storage.googleapis.com/production-os-assets/assets/material-icons/1629704621943/MaterialIcons-Regular.eot);
    src: local("Material Icons"), local("MaterialIcons-Regular"), url(https://storage.googleapis.com/production-os-assets/assets/material-icons/1629704621943/MaterialIcons-Regular.woff2) format("woff2"), url(https://storage.googleapis.com/production-os-assets/assets/material-icons/1629704621943/MaterialIcons-Regular.woff) format("woff"), url(https://storage.googleapis.com/production-os-assets/assets/material-icons/1629704621943/MaterialIcons-Regular.ttf) format("truetype")
}

.material-icons {
    display: inline-block;
    font-family: Material Icons;
    font-size: 24px;
    font-style: normal;
    font-weight: 400;
    letter-spacing: normal;
    line-height: 1;
    text-transform: none;
    white-space: nowrap;
    word-wrap: normal;
    direction: ltr;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased
}

/* ====================================
    外部フォント - END
===================================*/

/* ====================================
    賢威テーマクラス 強制書き換え
===================================*/
.keni-gnav_outer{ display: flex!important; }
.keni-gnav_btn_icon-open,
.keni-gnav_btn_icon-open::before,
.keni-gnav_btn_icon-open::after {height: 1px!important;background: #111111!important;}
.keni-footer_outer{ width: 100%!important;max-width: 100%!important; }
.keni-sub, .keni-footer_outer{padding: 0!important;}
.keni-footer_wrap{background: unset!important;}
.keni-gnav_btn_wrap .keni-gnav_btn_icon-open{ display: none; }
.keni-header_wrap{padding-top: unset!important;background-size: unset!important;background-repeat: unset!important;background-color: unset!important;background-image: unset!important;}
.keni-gnav_inner li a:hover, .keni-gnav_inner li a:active, .keni-gnav_inner li a:focus {border-bottom: none!important; color:#C0A954}
.keni-gnav_inner li a {padding: 0!important;border-bottom: none!important;}
.keni-footer_outer .footer-menu{display: none!important;}
.keni-main_outer { max-width:100% !important; }

.content{ width: 1200px; max-width:100%; margin-right: auto; margin-left: auto; padding-left:100px; padding-right:100px; }
.content800{ width: 800px; max-width:100%; margin-right: auto; margin-left: auto; padding:0px; }
.content1200{ width: 1200px; max-width:100%; margin-right: auto; margin-left: auto; padding:0px; }
.full-content{ max-width: 100%; }

.keni-footer-panel_wrap{background: transparent!important;}
.page-top {
    background-color: #b6a249!important;
    border-radius: 100px;
    bottom: 15px!important;
    right: calc((100vw - 1200px) / 2 + 50px)!important;
}
.page-top a{ padding: 14px 15px!important; }
.page-top a::before{ font-weight: bold!important; }
.keni-footer-panel_wrap{ display: block!important; }
.keni-breadcrumb-list li:first-child::before{ content: ""!important; }
.keni-breadcrumb-list li { display: inline!important; font-size: 13px!important;}
.keni-breadcrumb-list li::after { margin: 0 0.3em!important; font-size: 12px!important; }

.sub-menu{ display: none!important; }
/* ====================================
    賢威テーマクラス 強制書き換え - END
===================================*/

/* ====================================
    Utility Parts
===================================*/
.u-disp-block { display: block!important; }
.u-disp-inlineBlock { display: inline-block!important; }

.u-forSp { display: none !important; }
.u-forPc { display: block; }



.u-pos-relative { position: relative !important; }
.u-pos-absolute { position: absolute !important; }
.u-pos-fixed { position: fixed !important; }

.u-z-index1{ z-index: 1 !important; }
.u-z-index10{ z-index: 10 !important; }

/* margin */
.u-m-all-0 { margin: 0 !important;}

.u-m-top-05em { margin-top:0.5em !important;  }
.u-m-top-1em  { margin-top:1.0em !important;  }
.u-m-top-1hem { margin-top:1.5em !important;  }
.u-m-top-2em  { margin-top:2.0em !important;  }
.u-m-top-2hem { margin-top:2.5em !important;  }
.u-m-top-3em  { margin-top:3.0em !important;  }
.u-m-top-4em  { margin-top:4.0em !important;  }
.u-m-top-5em  { margin-top:5.0em !important;  }
.u-m-top-6em  { margin-top:6.0em !important;  }
.u-m-top-7em  { margin-top:7.0em !important;  }
.u-m-top-8em  { margin-top:8.0em !important;  }
.u-m-top-9em  { margin-top:9.0em !important;  }
.u-m-top-10em  { margin-top:10em !important;  }
.u-m-top-15em  { margin-top:15em !important;  }

.u-m-bottom-0 { margin-bottom:0 !important; }
.u-m-bottom-05em { margin-bottom: 0.5em !important;  }
.u-m-bottom-1em  { margin-bottom: 1.0em !important;  }
.u-m-bottom-1hem { margin-bottom: 1.5em !important;  }
.u-m-bottom-2em  { margin-bottom: 2.0em !important;  }
.u-m-bottom-2hem { margin-bottom: 2.5em !important;  }
.u-m-bottom-3em  { margin-bottom: 3.0em !important;  }
.u-m-bottom-3hem { margin-bottom: 3.5em !important;  }
.u-m-bottom-4em  { margin-bottom: 4.0em !important;  }
.u-m-bottom-5em  { margin-bottom: 5.0em !important;  }
.u-m-bottom-6em  { margin-bottom: 6.0em !important;  }
.u-m-bottom-7em  { margin-bottom: 7.0em !important;  }
.u-m-bottom-8em  { margin-bottom: 8.0em !important;  }
.u-m-bottom-9em  { margin-bottom: 9.0em !important;  }
.u-m-bottom-10em  { margin-bottom: 10em !important;  }
.u-m-bottom-15em  { margin-bottom: 15em !important;  }

.u-m-right-0 { margin-right:0 !important; }
.u-m-right-05em { margin-right: 0.5em !important;  }
.u-m-right-1em  { margin-right: 1.0em !important;  }
.u-m-right-1hem { margin-right: 1.5em !important;  }
.u-m-right-2em  { margin-right: 2.0em !important;  }
.u-m-right-2hem { margin-right: 2.5em !important;  }
.u-m-right-3em  { margin-right: 3.0em !important;  }

.u-m-left-0 { margin-left:0 !important; }
.u-m-left-05em { margin-left: 0.5em !important;  }
.u-m-left-1em  { margin-left: 1.0em !important;  }
.u-m-left-1hem { margin-left: 1.5em !important;  }
.u-m-left-2em  { margin-left: 2.0em !important;  }
.u-m-left-2hem { margin-left: 2.5em !important;  }
.u-m-left-3em  { margin-left: 3.0em !important;  }

.u-m-both-auto{margin: 0 auto; }

/* padding */
.u-p-all-0 { padding: 0 !important;}
.u-p-all-05em { padding:0.5em !important;}
.u-p-all-07em { padding:0.7em !important;}
.u-p-all-1em { padding:1em !important;}
.u-p-all-1hem { padding:1.5em !important;}
.u-p-all-2em { padding:2em !important;}

.u-p-all-5px{ padding: 5px !important; }

.u-p-left-1em { padding-left:1em !important; }
.u-p-left-1hem { padding-left:1.5em !important; }
.u-p-left-2em { padding-left:2em !important; }
.u-p-left-3em { padding-left:3em !important; }
.u-p-left-4em { padding-left:4em !important; }
.u-p-left-5em { padding-left:5em !important; }

.u-p-right-1em { padding-right:1em !important; }
.u-p-right-1hem { padding-right:1.5em !important; }
.u-p-right-2em { padding-right:2em !important; }
.u-p-right-3em { padding-right:3em !important; }
.u-p-right-4em { padding-right:4em !important; }
.u-p-right-5em { padding-right:5em !important; }

.u-p-top-0{padding-top:0 !important;}
.u-p-top-05em{ padding-top:0.5em !important; }
.u-p-top-1em{ padding-top:1em !important; }
.u-p-top-1hem{ padding-top:1.5em !important; }
.u-p-top-2em { padding-top:2em !important; }
.u-p-top-3em { padding-top:3em !important; }

.u-p-bottom-0{ padding-bottom: 0!important; }
.u-p-bottom-05em { padding-bottom:0.5em !important; }
.u-p-bottom-1em{ padding-bottom:1em!important; }
.u-p-bottom-1hem{ padding-bottom:1.5em!important; }
.u-p-bottom-2em { padding-bottom:2em !important; }
.u-p-bottom-3em { padding-bottom:3em !important; }

/* font-size */
.u-textXL1 {
    font-size: 18px;
    line-height: 1.8;
    font-weight: 500;
}
.u-textL1 {
    font-size: 15px;
    line-height: 1.8;
    font-weight: 500;
    letter-spacing: 0.1em;
}
.u-textM1  { font-size: 13px; line-height: 1.5; font-weight: 500; }
.u-textS1  { font-size: 10px; line-height: 18px; }

/* letter-spacing */
.u-ls-01em{ letter-spacing: 0.1em !important;}
.u-ls-02em{ letter-spacing: 0.2em !important;}
.u-ls-03em{ letter-spacing: 0.3em !important;}

/* color */
.u-text-white { color: #ffffff !important; }
.u-text-black { color: #111111 !important;}
.u-text-pink { color: #ff2d7d !important; }
.u-text-blue { color: #0028af !important; }
.u-text-gold { color: #B19100 !important; }
.u-text-orange { color: #DAA84E !important; }
.u-text-navy { color: #005EA4 !important; }

.u-text-link{ color: #ff2d7d; text-decoration: underline; }
.u-text-link:hover{ color: #ff2d7d; opacity: 0.7; }

.u-img-link:hover{ opacity: 0.7; }

/* text-align */
.u-ta-center{ text-align: center !important; }
.u-ta-right{ text-align: right !important; }
.u-ta-left{ text-align: left !important; }

/* font-weight */
.u-font-wb{ font-weight: bold !important; }
.u-font-wn{ font-weight: normal !important; }

.u-font-w500{font-weight: 500!important;}
.u-font-w700{font-weight: 700!important;}
.u-font-w800{font-weight: 800!important;}

/* line-height */
.u-lh-20em{ line-height:2.0em !important; }
.u-lh-19em{ line-height:1.9em !important; }
.u-lh-18em{ line-height:1.8em !important; }
.u-lh-17em{ line-height:1.7em !important; }
.u-lh-16em{ line-height:1.6em !important; }
.u-lh-15em{ line-height:1.5em !important; }
.u-lh-14em{ line-height:1.4em !important; }
.u-lh-13em{ line-height:1.3em !important; }
.u-lh-12em{ line-height:1.2em !important; }
.u-lh-11em{ line-height:1.1em !important; }
.u-lh-10em{ line-height:1.0em !important; }

.u-lh-15{ line-height:1.5 !important; }
.u-lh-18{ line-height:1.8 !important; }

.u-indent10{text-indent:-1em;padding-left:1em !important;}
.u-indent15{text-indent:-1.5em;padding-left:1.5em !important;}
.u-indent20{text-indent:-2em;padding-left:2em !important;}
.u-indent25{text-indent:-2.5em;padding-left:2.5em !important;}
.u-indent30{text-indent:-3em;padding-left:3em !important;}
.u-indent35{text-indent:-3.5em;padding-left:3.5em !important;}

/* width */
.u-w100{ width: 100% !important; }
.u-w50{ width: 50% !important; }

/* background-color */
.u-bg-white { background-color: #ffffff!important; }
.u-bg-gray { background-color: #eeeeee!important; }
.u-bg-yellow { background-color: #f2e29d!important; }
.u-bg-light-yellow { background-color: #f6f1db!important; }

/* line marker */
.u-lineMarker--gold {
    background: linear-gradient(transparent 50%, #f3e7ab 50%);
}
.u-lineMarker--yellow {
    background: linear-gradient(transparent 50%, #fee362 50%);
}
.u-lineMarker--blue {
    background: linear-gradient(transparent 50%, #e6f0fd 50%);
}
.u-lineMarker--pink {
    background: linear-gradient(transparent 50%, #fbe8ef 50%);
}

/* （・）リスト */
.u-list-disc {
    list-style-type: disc !important;
    list-style-position: outside !important;
    padding-left: 0.5em !important;
}

/* 数字リスト（1. 2. 3.）を表示 */
.u-list-decimal {
    list-style-type: decimal !important;
    list-style-position: outside !important;
    padding-left: 0.5em !important;
}

/* カッコ付き数字リスト */
.u-list-decimal-paren{
    padding-left: 1em !important;
    counter-reset: num;
}

.u-list-decimal-paren > li{
    position: relative;
    counter-increment: num;
}

.u-list-decimal-paren > li::before{
    content: counter(num) ")";
    position: absolute;
    left: -1.5em;
}

/* サークル（○）リスト */
.u-list-circle {
    list-style-type: circle !important;
    list-style-position: outside !important;
    padding-left: 0.5em !important;
}

/* スクエア（■）リスト */
.u-list-square {
    list-style-type: square !important;
    list-style-position: outside !important;
    padding-left: 0.5em !important;
}

/* border */
.u-border--black{ border: 1px solid #111111 !important;}
.u-border--gold { border: 1px solid #b6a249 !important;}
.u-border--bgray{ border: 1px solid #c6c9df !important;}
.u-border--gray{ border: 1px solid #eeeeee !important;}
.u-border--blue{ border: 1px solid #0028AF !important;}
.u-border-radius0{ border-radius:0px; }
.u-border-radius8{ border-radius:8px; }

.u-border-bottom-blue{ border-bottom: 1px solid #c6c9df; }

.u-shrink-wrap {
    display: inline-block;
    vertical-align: top; 
}

/* ====================================
    Utility Parts - END
===================================*/

/* ====================================
    Layout Parts
===================================*/

/* -----------------------
    Header
-----------------------*/
.l-header {
    position: fixed;
    top: 0px;
    right: 0px;
    bottom: auto;
    left: 0px;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: center;
    align-items: center;
    justify-content: space-between;
    flex: none;
    background: #ffffff;
    width: 100%;
    max-width: 100%;
    height: 90px;    
    margin: 0;
    padding: 0px 30px;
    z-index: 1000;
}
.l-header .m-site-title img { width: 280px; height: auto; }
.l-gnav .m-btn__container .m-btn{
    justify-content: flex-start;
    padding-left: 1em;
}

/* -----------------------
    G-Navigation
-----------------------*/
.l-gnav {
    display: flex;
    align-content: center;
    align-items: center;
    justify-content: center;
    flex: none;
    flex-direction: row;
    flex-wrap: nowrap;
    background: rgba(0, 0, 0, 0.0);
    width: auto;
    max-width: 100%;
    height: auto;
}
.l-gnav .m-gnav li { margin-bottom: 0; }

/* -----------------------
    footer
-----------------------*/
.l-footer {
    display: flex;
    align-content: center;
    align-items: center;
    justify-content: center;
    flex: none;
    flex-direction: column;
    flex-wrap: nowrap;
    background: rgba(0, 0, 0, 0.0);
    width: 100%;
    max-width: 100%;
    height: auto;
    padding: 0px;
}

/* -----------------------
    Main Visual
-----------------------*/
.l-mainVisual {
    position: relative;
    display: flex;
    align-content: center;
    align-items: center;
    flex: none;
    flex-direction: column;
    flex-wrap: nowrap;
    justify-content: center;
    background: rgba(0, 0, 0, 0.0);
    border-radius: 0;
    width: 100%;
    height: 540px;
    max-width: 100%;
    padding: 90px 0px 30px 100px;
    z-index: 1;
}

.l-mainVisual--child {
    height: 410px;
}

/* -----------------------
    汎用レイアウトパーツ
-----------------------*/
.l-container {
    display: flex;
    align-content: center;
    align-items: center;
    flex: none;
    flex-direction: column;
    flex-wrap: nowrap;
    justify-content: center;
    width: 100%;
    max-width: 100%;
    margin: 0px 0px 0px 0px;
    padding: 100px 100px;
}

/* 汎用レイアウト オプション */
.l-container--content{ padding: 0px; }
.l-container--narrow{ padding: 30px 100px 50px 100px; }
.l-container--noPadding { padding: 0 !important; }

.l-container--flex-start { justify-content: flex-start !important; }
.l-container--column{ flex-direction: column !important; }
.l-container--items-start { align-items: flex-start !important; }
.l-container--items-end { align-items: flex-end !important; }

.l-container--w500{
    width: 100%;
    max-width: 500px;
}

.l-innerContainer {
    width: 100%;
    max-width: 100%;
    margin: 0px;
}

.l-innerContainer--center {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    max-width: 100%;
    margin: 0px;
}

/* タイトル用コンテナ */
.l-container--title{
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: 100%;
    padding-top: 100px;
}

.l-container--title--center{
    justify-content: center;
}
.l-container--title--start{
    justify-content: flex-start;
}


#service .l-container--title,
#flow .l-container--title{ padding: 100px 0 0 0; }

#service .l-container {
    padding: 0px 0px;
    justify-content: flex-start;
    flex-direction: row;
    align-items: flex-start;
    gap: 2em;
}
#service .l-container.l-container--column{ flex-direction: column; }


#doctor .l-container { padding-top: 100px; }

.cols2 { display:flex; gap:20px  }
.cols2 > *  { width:50%;  }
.cols3 { display:flex;  }
.cols3 > *  { width:33%;  }


/* -----------------------
    Griid
-----------------------*/
.l-grid { display: grid; }
.l-grid--column2 { grid-template-columns: repeat(2, 1fr); }
.l-grid--column3 { grid-template-columns: repeat(3, 1fr); }
.l-grid--column4 { grid-template-columns: repeat(4, 1fr); }
.l-grid__item--center{justify-items: center;}

/* ====================================
    Layout Parts - END
===================================*/

/* ====================================
    Modules Parts
===================================*/

/* -----------------------
    G-Navigation Modules
-----------------------*/
.m-gnav {
    display: flex;
    background: rgba(0, 0, 0, 0.0);
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 20px;
    height: auto;
    padding: 0px;
}
.m-gnav .m-gnav__text:hover{ color: #b6a249; }

.m-gnav__text {
    font-size: 15px;
    font-weight: 700;
    width: auto;
    max-width: 100%;
    height: auto;
    letter-spacing: 0.1em;
    line-height: 1;
    margin: 0px 0px 0px 0px;
    text-align: center;
}

.m-gnav__menu {
    display: none;
    align-content: center;
    align-items: center;
    justify-content: center;
    flex: none;
    flex-direction: column;
    flex-wrap: nowrap;
    gap: 6px;
    width: 20px;
    height: 40px;
    padding: 0px;
}

.m-gnav__contactText { font-size: 13px; }
/* -----------------------
    G-Navigation Modules END
-----------------------*/

/* -----------------------
    Footer Modules 
-----------------------*/
.m-footer__inner {
    display: flex;
    align-content: center;
    align-items: center;
    flex: none;
    flex-direction: column;
    flex-wrap: nowrap;
    justify-content: center;
    background: #f2e29d;
    width: 100%;
    max-width: 100%;
    padding:100px 100px 140px 100px;
}

.m-footer__img {
    height: auto;
    margin: 0px 0px 40px 0px;
    width: 220px;
    max-width: 100%;
}

.m-footer__text {
    display: flex;
    flex: none;
    justify-content: center;
    font-size: 11px;
    font-weight: 500;
    letter-spacing: normal;
    line-height: 1.8;
    color: #111111;
    width: auto;
    max-width: 100%;
    height: auto;
    margin: 0px;
    text-align: center;
}

.m-footer__menu{
    display: flex;
    flex-direction: row;
    justify-content: center;
    gap: 3em;
}
.m-footer__menu li a:hover{ color: #b6a249; }

.m-footer__brandIcon{
    display: flex;
    align-content: center;
    align-items: center;
    justify-content: center;
    flex: none;
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 20px;
    background: rgba(0, 0, 0, 0.0);
    width: auto;
    max-width: 100%;
    margin: 40px 0px 0px 0px;
    padding: 0px;
}

.m-footer__brandIcon--X {
    font-size: 20px;
    font-weight: 700;
    height: auto;
    line-height: 1;
    text-align: center;
    width: auto;
    max-width: 100%;
}
.m-footer__brandIcon--instagram {
    font-size: 20px;
    transition-duration: 200ms;
    transition-timing-function: linear;
}
/* -----------------------
    Footer Modules END
-----------------------*/

/* -----------------------
    Image Modules 
-----------------------*/
.m-img__border--gold {
    border: 3px solid #b6a249;
    border-radius: 8px;
}

/* -----------------------
    Image Modules END
-----------------------*/

/* -----------------------
    Gradient Modules 
-----------------------*/
.m-bg-gradient--white{
    position: relative;   
}
.m-bg-gradient--white::before{
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 26vw;
    height: 26vw;
    transform: translate(-50%, -50%);
    border-radius: 50%;
    background: radial-gradient(rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 45%, rgba(255, 255, 255, 0) 70%);
    z-index: 0;
    pointer-events: none; 
}
.m-bg-gradient--3-1-2::before{
    width: 26vw;
    height: 26vw;
    transform: translate(-50%, -45%);
}
.m-bg-gradient--2-2::before{
    width: 23vw;
    height: 23vw;
}


/* -----------------------
    Gradient Modules END
-----------------------*/

/* -----------------------
    Separate Modules
-----------------------*/
.m-separate{
    position: absolute;
    flex: none;
    left: 0px;
    right: 0px;
    bottom: -1px;
    width: 100%;
    max-width: 100%;
    height: 60px;
    margin: 0 0 0 0;
    z-index: -1;
}
.m-separate--yellow{ background: #f2e29d; }
/* -----------------------
    Separate Modules END
-----------------------*/

/* -----------------------
    Button Modules 
-----------------------*/
.m-btn__container--center{
    position: relative;
    z-index: 10;
    display: flex;
    justify-content: center;
}
.m-btn__container--center .page-top{
    right: 16%!important;
}

.m-btn {
    position: relative;    
    display: flex;
    align-content: center;
    align-items: center;
    justify-content: center;
    flex: none;
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 10px;
    max-width: 100%;
    height: auto;
    padding: 10px 0px;
    border-radius: 24px;
    transition: .2s cubic-bezier(0.42, 0, 0.39, 0.99)!important;
}
.m-btn--line{ padding: 11px 0px; }
.m-btn--line:hover{ opacity: 0.7; }    
.m-btn--line::before{
    content: "";
    position: absolute;
    left: 4px;
    top: 3px;
    background-image: url("/img/icon-LINE.png");
    background-size: contain;
    background-repeat: no-repeat;
    width: 30px;
    height: 30px;
}

/* ボタン サイズ */
.m-btn--w160 { width: 160px; }
.m-btn--w220 { width: 220px; }
.m-btn--w260 { width: 260px; }

/* ボタン 枠線 */
.m-btn__border--gold{ border: 2px solid #b6a249; }

/* ボタン背景色 */
.m-btn__bg--yellow{ background: #fddd4e; }


/* ボタン背景色 + テキストカラー （ホバー） */
.m-btn__bg--gold{ background: #b6a249; }
.m-btn__bg--gold .m-btn__text,
.m-btn__bg--gold .m-gnav__text,
.m-btn__bg--gold .icon {
    color: #fff;
}
.m-btn__bg--gold:hover{ background: #fff; color: #b6a249; }
.m-btn__bg--gold:hover .m-btn__text,
.m-btn__bg--gold:hover .m-gnav__text,
.m-btn__bg--gold:hover .icon {
    color: #b6a249;
}

/* ボタン テキスト */
.m-btn__text { font-size: 15px; font-weight: 700; letter-spacing: 0.1em; line-height: 1; }

/* ボタンアイコン */
.m-btn__icon--common { 
    position: absolute;
    right: 11%;
    font-size: 16px; 
}
.m-btn__icon--arrow { 
    position: absolute;
    right: 5%;
    font-size: 16px; 
}

/* フローティング用 */
.m-btn__floating{
    width: 165px;
    padding: 15px 0px!important;
}
.m-btn--line.m-btn__floating::before{
    top: 4px;
    left: 5px;
    width: 35px;
    height: 35px;
    content: "";
}
.m-btn--line.m-btn__floating .m-btn__text{ padding-left: 2em; }
.m-btn__container--center.page-top{ right: calc((100vw - 1200px) / 2 + 110px)!important; }
.l-gnav .m-btn__header{ display: none; }

/* -----------------------
    Button Modules END
-----------------------*/

/* -----------------------
    Heading Modules 
-----------------------*/
/* h1 */
.m-main__h1 {
    display: flex;
    flex: none;
    justify-content: center;
    background: rgba(0, 0, 0, 0.0);
    color: #111111;
    font-size: 28px;
    font-weight: 800;
    letter-spacing: 0.1em;
    line-height: 1.5;
    width: 100%;
    max-width: 100%;
    height: auto;
}

/* h2 */
.m-section__h2 {
    display: flex;
    flex: none;
    justify-content: center;
    background: rgba(0, 0, 0, 0.0);
    color: #111111;
    font-size: 28px;
    font-weight: 800;
    letter-spacing: 0.1em;
    line-height: 1.8;
    margin: 0px 0px 6px 0px;
    text-align: left;
    width: 100%;
    max-width: 100%;
    height: auto;
}
.m-section__h2--terms{
    font-size: 20px;
}

/* h2 の下に入るサブテキスト */
.m-section__h2--sub {
    display: flex;
    justify-content: center;
    flex: none;
    background: rgba(0, 0, 0, 0.0);
    font-size: 16px;
    font-weight: 700;
    width: 100%;
    max-width: 100%;
    height: auto;
    letter-spacing: 0.1em;
    line-height: 1;
    margin: 0px 0px 30px 0px;
    padding: 0px 0px 0px 0px;
    opacity: 1;
}

.m-section__h2--flex-start,
.m-section__h2--sub--gold1--flex-start,
.m-section__h2--sub--gold2--flex-start {
    justify-content: flex-start;
}

/* サブテキストカラー */
.m-section__h2--sub--gold1 { color: #b6a249; }
.m-section__h2--sub--gold2 { color: #d2c58d; }


/* h3 */
.m-section__h3 {
    color: #b19100;
    font-size: 20px;
    font-weight: 700;
    width: auto;
    max-width: 100%;
    height: auto;
    letter-spacing: 0.11em;
    line-height: 1.4;
    margin: 0px 0px 12px 0px;
    text-align: center;
}
.m-section__h3--underline {
    background: #b19100;
    border-radius: 1px;
    height: 2px;
    margin: 0 auto 1em auto;
    width: 16px;
    max-width: 100%;
}
.m-section__h3--black { color: #111111; }
.m-section__h3--left { text-align: left; }

/* 汎用見出し */
.m-heading {
    font-size: 18px;
    font-weight: 800;
    letter-spacing: 0.1em;
    background: rgba(0, 0, 0, 0.0);
    margin: 10px 0px 0px 0px;
}

.m-heading--15px{
    font-size: 15px;
}

/* 導入テキスト */
.m-section__intro {
    color: #111111;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 0.1em;
    line-height: 1.8;
    width: 100%;
    max-width: 100%;
    height: auto;
    margin: 0px 0px 50px 0px;
    text-align: center;
}

/* アーチ型 */
.m-heading--arch {
    color: #ffffff;
    border: 1px solid transparent;
    border-top-left-radius: 24px;
    border-top-right-radius: 24px;
    padding: 5px;
}

.m-heading--arch--blue{
    background-color: #8fe2ff;
}

.m-heading--arch--gold{
    background-color: #b19100;
}


/* -----------------------
    Heading Modules END
-----------------------*/

/* -----------------------
    Table Modules
-----------------------*/
.m-table td { padding: 5px; }

/* -----------------------
    Table Modules END
-----------------------*/

/* -----------------------
    Link Card
-----------------------*/
.m-cardLink__list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 1em;
    width: 100%;
    justify-content: center;
}
.m-cardLink__list--3col {
    grid-template-columns: repeat(auto-fit, minmax(200px, 300px));
}
.m-cardLink__list--4col {
    grid-template-columns: repeat(auto-fit, minmax(200px, 230px));
}

/* 新規カードスタイル */
.m-cardLink__link{
    display: grid;
    grid-template-rows: 80% 20%;
    align-items: center;
    justify-items: center;
    height: 300px;
    transition-timing-function: ease;
}
.m-cardLink__link--4col{
    height: 230px;
}
.m-cardLink__imgContainer{
    display: flex;
    justify-content: center;
    align-items: center;
    grid-area: 1 / 1 / 2 / 2;
}
.m-cardLink__img{
    width: 60%;
    height: auto;
}
.m-cardLink__list--3col .m-cardLink__img{
    width: 75%;
}

.m-cardLink__img--warts{ width: 67%; }
.m-cardLink__img--discharge{ width: 57%; }
.m-cardLink__img--throat{ width: 57%; }

.m-cardLink__textContainer {
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #b6a249;
    border-top: 3px solid transparent;
    color: #fff;
    width: 100%;
    grid-area: 2 / 1 / 3 / 2;
    margin-top: -3px;
    position: relative;
}
.m-cardLink__list--3col .m-cardLink__textContainer{
    height: 100%;
    margin-top: 0px;
}   
.m-cardLink__textContainer .m-section__h3{
    color: #fff;
    margin: 0;
    padding: .5em;
}
.m-cardLink__textContainer .m-btn__icon--arrow{
    color: #fff;
}

/* ホバースタイル */
.m-cardLink__link:hover{ opacity: 0.7; transition: .2s cubic-bezier(0.42, 0, 0.39, 0.99)!important; }
.m-cardLink__link:hover .m-cardLink__textContainer {
    background-color: transparent;
    border-top: 3px solid #b6a249;
    border-bottom-left-radius: 8px;
    border-bottom-right-radius: 8px;
    transition: .2s cubic-bezier(0.42, 0, 0.39, 0.99)!important;
}
.m-cardLink__link:hover .m-section__h3 {
    color: #b6a249;
    padding: .5em;
    transition: .2s cubic-bezier(0.42, 0, 0.39, 0.99)!important;
}
.m-cardLink__link:hover .m-btn__icon--arrow {
    color: #b6a249;
    transition: .2s cubic-bezier(0.42, 0, 0.39, 0.99)!important;
}
/* -----------------------
    Link Card END
-----------------------*/

/* -----------------------
    First View 
-----------------------*/
.m-mainVisual__radius {
    position: relative;
    display: flex;
    align-content: center;
    align-items: center;
    border-radius: 24px 0px 0px 24px;
    flex: none;
    flex-direction: column;
    flex-wrap: nowrap;
    justify-content: center;
    overflow-x: hidden;
    overflow-y: hidden;
    padding: 0px 0px 0px 0px;
    width: 100%;
    height: 100%;
    max-width: 100%;
}

.m-mainVisual__image {
    position: relative;
    background-image: url("/img/main.jpg");
    background-repeat: no-repeat;
    background-position: center 20%;
    height: 100%;
    width: 100%;
}
.m-mainVisual__image--child2-1{
    background-image: url("/img/main_child-2-1.jpg");
    background-size: 100%;
    background-position-y: 17%;
}
.m-mainVisual__image--child2-2{
    background-image: url("/img/main_child-2-2.jpg");
    background-size: 100%;
    background-position-y: 14%;
}
.m-mainVisual__image--child2-3{
    background-image: url("/img/main_child-2-3.jpg");
    background-size: 100%;
    background-position-y: 12%;
}
.m-mainVisual__image--child3-1-1{
    background-image: url("/img/main_child-3-1-1.jpg");
    background-size: 100%;
    background-position-y: 17%;
}
.m-mainVisual__image--child3-1-2{
    background-image: url("/img/main_child-3-1-2.jpg");
    background-size: 100%;
    background-position-y: 13%;
}
.m-mainVisual__image--child3-1-3{
    background-image: url("/img/main_child-3-1-3.jpg");
    background-size: 100%;
    background-position-y: 13%;
}
.m-mainVisual__image--child3-1-4{
    background-image: url("/img/main_child-3-1-4.jpg");
    background-size: 100%;
    background-position-y: 14%;
}
.m-mainVisual__image--child3-3-1{
    background-image: url("/img/main_child-3-3-1.jpg");
    background-size: 100%;
    background-position-y: 13%;
}
.m-mainVisual__image--child3-3-2{
    background-image: url("/img/main_child-3-3-2.jpg");
    background-size: 100%;
    background-position-y: 12%;
}
.m-mainVisual__image--child3-3-3{
    background-image: url("/img/main_child-3-3-3.jpg");
    background-size: 100%;
    background-position-y: 14%;
}

.m-mainVisual__text{
    position: absolute;
    top: 24%;
    left: calc(50% - 42rem);
    color: #111111;
    font-size: 42px;
    font-weight: 700;
    letter-spacing: 0.1em;
    line-height: 1.4;
    width: 100%;
    max-width: 100%;
    height: auto;
}
.m-mainVisual__text span{ line-height: 1.4; }

.m-mainVisual__text--child{
    top: 50%;
    transform: translateY(-50%);
}

.m-mainVisual__feature{
    position: absolute;
    bottom: 7%;
    left: calc(50% - 42rem);
    width: 570px;
    height: auto;
}

.m-mainVisual__logo{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 144px;
    height: auto;
    margin: 0 auto;
}

.m-mainVisual__doctor{
    position: absolute;
    bottom: 3%;
    right: calc(50% - 54rem);
    font-size: 13px;
    line-height: 1.2;
    font-weight: 500;
    text-align: right;
}

.m-mainVisual__doctor span{ line-height: 1.5; }

.m-mainVisual__doctor--child{
    bottom: 5%;
}

.m-mainVisual__illust {
    position: relative;
    width: 240px;
    height: auto;
    margin: 0 auto;
}

.doctor .m-mainVisual__illust {
    position: relative;
    border-radius: 8px;
    border: 3px solid #C0A954;
    width: 280px;
    height: 280px;
    margin: 0 auto;
    overflow: hidden;
}
.doctor .m-mainVisual__illust img{
    position: relative;
    left: -10%;
    max-width: 120%;
}
.doctor .m-mainVisual__feature{
    position: absolute;
    bottom: -5%;
    left: 50%;
    width: 450px;
    height: auto;
    margin-left: -185px;
}

/* -----------------------
    First View END
-----------------------*/

/* -----------------------
    About 
-----------------------*/
.m-about__container{
    position: relative;
    overflow: hidden;
    padding: 40px 100px 66px 100px;
}
.m-about__container::before{
    content: "";
    position: absolute;
    bottom: -1%;
    left: calc(50% - 356px);
    background-image: url(/img/line-drawing_male-1.png);
    background-size: contain;
    height: 58%;
    width: 210px;
}
.m-about__container::after{
    content: "";
    position: absolute;
    bottom: -1%;
    right: calc(50% - 376px);
    background-image: url("/img/line-drawing_female-1.png");
    background-size: contain;
    height: 58%;
    width: 210px;
}
.m-about--child__baloon{
    position: relative;
    z-index: 10;
    width: 330px;
    margin-bottom: 5px;
}
.m-about--child__image{
    width: 210px;
    margin: 0 auto;
}
.m-about--child__image--3-1-1{
    margin-top: -15px;
    margin-bottom: -10px;
}
.m-about--child__image--3-1-4{
    margin-top: -15px;
    margin-bottom: -20px;
}
.m-about--child__image--3-3-1{
    width: 340px;
    margin: 0 auto;
}
.m-about--child__image--3-3-2{
    width: 235px;
    margin: 0 auto;
}
.m-about--child__image--3-3-3{
    width: 240px;
    margin: 0 auto;
}
/* -----------------------
    About END
-----------------------*/

/* -----------------------
    Service
-----------------------*/

.m-service__desc{
    padding: 0 1em;
}

/* -----------------------
    Service END
-----------------------*/

/* -----------------------
    Flow
-----------------------*/
.m-flow__container{
    counter-reset: number 0;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    grid-template-rows: 1fr;
    grid-column-gap: 1em;
    grid-row-gap: 0px;
    align-items: flex-start;
}

.m-flow__container--noImage{
    grid-template-columns: repeat(2, minmax(200px, 1fr));
    grid-template-rows: 1fr;
    grid-column-gap: 2em;
    grid-row-gap: 3em;
    padding-top: 50px;
    align-items: start;
}

.m-flow__items{
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    flex: 0 1 245px;
    gap: 1em;
}

.m-flow__container--noImage .m-flow__items{
    align-items: flex-start;
}

.m-flow__container--noImage .m-flow__items::before{
    content: counter(number, decimal-leading-zero);
    counter-increment: number 1;
    position: absolute;
    top: -47px;
    left: 0;
    font-size: 7rem;
    font-weight: 700;
    z-index: 1;
}

.m-flow__items--noImage{
    padding-left: 10rem;
}

.m-flow__img {
    width: 180px;
    height: auto;
    background-color: #fff;
    border-radius: 8px;
}

.m-flow__img::before{
    content: counter(number, decimal-leading-zero);
    counter-increment: number 1;
    position: absolute;
    top: -6.5rem;
    left: 2%;
    font-size: 7rem;
    font-weight: 700;
    z-index: 1;
}


/* -----------------------
    Flow END
-----------------------*/

/* -----------------------
    Doctor
-----------------------*/
.list-doctor li{ margin-bottom:2em; }
.list-doctor-row{ display: flex; flex-direction: row; align-content: flex-start; align-items: center; }
.list-qualification{ display: inline-block; text-align: center; }
.list-qualification li{ text-align: left; }
.sub .list-doctor-row{ display: flex; flex-direction: row; align-content: flex-start; align-items: flex-start; }
.doctor-img{ background-color: #ccc; width: 88px; height: 88px; border-radius: 100px; margin-right: 15px; }
.doctor-img img{ border:3px solid #b6a249; border-radius:100px; }
.sub .doctor-img{ width: 60px; height:60px; min-width:60px;}
.doctor-slider{ max-width:100%; }

.m-doctor__desc{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}
.m-doctor__desc .m-section__h3{
    text-align: left;
}
.doctors-qualifications{ margin-top:1em; }
.doctors-qualifications .hd{ font-weight:bold; }
.doctors-qualifications .hd .material-icons{ vertical-align:text-bottom; }
.doctors-qualifications ul{ display: flex; flex-direction: row; justify-content: space-between; flex-wrap: wrap; }
.doctors-qualifications ul li{ width:33%; padding: 0.8em 1em; background-color: #eee; margin-bottom: 4px; }
.doctors-qualifications ul li p{ line-height: 1.5; }

/* -----------------------
    Doctor END
-----------------------*/

/* -----------------------
    Our story (About-us)
-----------------------*/

.m-story__container{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1em;
    border: 3px solid #C0A954;
    border-radius: 8px;
    background-color: #fff;
    padding: 2.5em 2em 2em 2em;
}

.m-story__support{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    gap: 1em;
    max-width:100%;
}

.m-story__logo{ width: 315px; max-width:100%; }
.m-story__support--pcct{ width: 95px; }
.m-story__support--std{ width: 155px; }

.m-philosophy__text{ font-size: 18px; }

/* -----------------------
    Our story (About-us) END
-----------------------*/

/* -----------------------
    telemedicine
-----------------------*/
.m-symptoms__list{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    grid-gap: 1em;
    width: 100%;
}
.m-symptoms__list--3col{
    grid-template-columns: repeat(auto-fit, minmax(200px, 300px));
}

.m-symptoms__link {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 1em;
}
.m-symptoms__link:hover{ opacity: 0.7; }

.m-features__list{
    counter-reset: features 0;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 400px));
    grid-gap: 1em;
    width: 100%;
    max-width: 1200px;
}
.m-features__items{
    display: flex;
    flex-direction: column;
}

.m-specialist--img{
    width: 499px;
    height: auto;
    margin-top: -38px;
}

.m-features__img{
    position: relative;
}
.m-features__img::after{
    content: counter(features, decimal-leading-zero);
    counter-increment: features 1;
    position: absolute;
    right: 5%;
    bottom: -4.5rem;
    font-size: 9rem;
    font-weight: 700;
    z-index: 1;
}

/* -----------------------
    telemedicine END
-----------------------*/

/* -----------------------
    legal
-----------------------*/
.legal ul > li, ol > li{ margin-bottom: 0; } 

.m-termsBlock ol li {
	position: relative;
	margin: 0;
	padding-left: 50px;
}

.m-termsBlock ol li:before {
    content: '';
    display: inline-block;
    position: absolute;
    top: 0;
    left: 0;
}

.m-termsBlock ol li:nth-of-type(1):before {content: '１.';}
.m-termsBlock ol li:nth-of-type(2):before {content: '２.';}
.m-termsBlock ol li:nth-of-type(3):before {content: '３.';}
.m-termsBlock ol li:nth-of-type(4):before {content: '４.';}
.m-termsBlock ol li:nth-of-type(5):before {content: '５.';}
.m-termsBlock ol li:nth-of-type(6):before {content: '６.';}
.m-termsBlock ol li:nth-of-type(7):before {content: '７.';}
.m-termsBlock ol li:nth-of-type(8):before {content: '８.';}
.m-termsBlock ol li:nth-of-type(9):before {content: '９.';}
.m-termsBlock ol li:nth-of-type(10):before {content: '１０.';}
.m-termsBlock ol li:nth-of-type(11):before {content: '１１.';}
.m-termsBlock ol li:nth-of-type(12):before {content: '１２.';}
.m-termsBlock ol li:nth-of-type(13):before {content: '１３.';}
.m-termsBlock ol li:nth-of-type(14):before {content: '１４.';}
.m-termsBlock ol li:nth-of-type(15):before {content: '１５.';}
.m-termsBlock ol li:nth-of-type(16):before {content: '１６.';}
.m-termsBlock ol li:nth-of-type(17):before {content: '１７.';}
.m-termsBlock ol li:nth-of-type(18):before {content: '１８.';}
.m-termsBlock ol li:nth-of-type(19):before {content: '１９.';}
.m-termsBlock ol li:nth-of-type(20):before {content: '２０.';}


/* -----------------------
    legal END
-----------------------*/

/* -----------------------
    Contact Form
-----------------------*/
.wpcf7.js{ width:100%; }
.frm-hd{ font-weight:bold; min-width:12em; }
.contact-form .req { background-color:#ff6666; font-weight:normal; font-size:12px; border-radius:4px; padding:0.5em 0.5em; color:#fff; margin-left:0.5em; float: right; }
.contact-form > div{ margin-bottom: 1em; border-bottom: 1px solid #eee; padding-bottom: 1em; }
.contact-form .cols-parent{ display: flex; align-items: baseline; gap: 10px; }
.contact-form .cols-parent > * { min-width: 12em; }
.evcf7-verify-btn{ margin:0 !important }
.evcf7-verify-btn input[type="button"]{
 background: #b6a249;
 border: 2px solid #b6a249;
 width: 160px;
 position: relative;
 display: flex;
 justify-content: flex-start;
 align-content: center;
 align-items: center;
 flex: none;
 flex-direction: row;
 flex-wrap: nowrap;
 gap: 10px;
 max-width: 100%;
 height: auto;
 padding: 10px 0px;
 border-radius: 24px;
 transition-timing-function: ease;
 line-height:1;
 color:#fff;
 -webkit-transition: 0.3s;
 transition: 0.3s;
 cursor: pointer;
}
.input-submit{
 background: #b6a249;
 border: 2px solid #b6a249;
 width: 160px;
 position: relative;
 max-width: 100%;
 height: auto;
 padding: 10px 0px;
 border-radius: 4px;
 transition-timing-function: ease;
 line-height:1;
 color:#fff;
 -webkit-transition: 0.3s;
 transition: 0.3s;
 cursor: pointer;
}
.input-back{
 background: #ddd;
 border: 2px solid #ccc;
 width: 160px;
 position: relative;
 max-width: 100%;
 height: auto;
 padding: 10px 0px;
 border-radius: 4px;
 transition-timing-function: ease;
 line-height: 1;
 color: #fff;
 -webkit-transition: 0.3s;
 transition: 0.3s;
 cursor: pointer;
 color: #111;
}

.contact-form .input-buttons{ border:none; text-align:center; }
.input-buttons .input-submit{ margin-left:2em; }
.input-submit:hover{  background: #fff; color: #b6a249; }
.input-back:hover  {  background: #efefef; color: #999; }
.evcf7-verify-btn input[type="button"]:hover{  background: #fff; color: #b6a249; }
.input-email { width:24em !important; max-width:calc(100% - 15px) !important; }
.input-otp { width:6em !important; max-width:calc(100% - 15px) !important; }
.input-name { width:24em !important; max-width:calc(100% - 15px) !important; }
.input-job { width:24em !important; max-width:calc(100% - 15px) !important; }
.input-zip { width:7em !important; max-width:calc(100% - 15px) !important; }
.input-addr { width:24em !important; max-width:calc(100% - 15px) !important; }
.input-tel { width:12em !important; max-width:calc(100% - 15px) !important; }
.input-message { width:24em !important; max-width:calc(100% - 15px) !important; }
.input-submit{ margin-left:12.5em; }
.radio-sex {  }
.select-ages { width:6em !important; max-width:calc(100% - 15px) !important; }
.wpcf7-list-item{ margin:0 1em 0 0; }
.wpcf7-list-item label { gap:10px; cursor: pointer; }
.contact-form.confirm .frm-hd { display: block; rgin-bottom: 0.5em; }
.contact-form.confirm .frm-hd .req{ float: unset; }
/* -----------------------
    Contact Form END
-----------------------*/


/* -----------------------
    slider
-----------------------*/

.list-doctor .list-doctor-row { display: flex; flex-direction: column; align-items: center; }
.list-doctor .list-doctor-row .name { font-weight:bold;  display:block;  }
.list-doctor .worksFor{ font-weight:normal; font-size:13px; display:block; margin-bottom:1em; color:#B19100; text-align: center; }
.list-doctor .affiliation{ font-weight:normal; font-size:13px; display:block; }
.list-doctor li{ margin-bottom:0; }
.sub .list-doctor .list-doctor-row { display: flex; flex-direction: row; justify-content: center; margin-bottom: 0.5em; align-items: center; }

.splide { margin-bottom:5em; }
.splide__pagination__page.is-active{ background:#b6a249; height:10px; width:10px; bottom:-1px; position: relative; }
.splide__slide{ border-radius: 8px; border: 3px solid #C0A954; min-height: 240px; text-align: center; display: inline-block; margin: 0; padding:1.5em 1em 1em 1em; }
.splide__slide__bg--gold{ background-color: #f5f1dc; }
.splide__pagination{ bottom:-2em; }
.splide__arrow--prev { top:0; left: calc((33.3333% - 13.3333px) * 1 - 4em); }
.splide__arrow--next { top:0; left: calc((33.3333% - 13.3333px) * 1 - 1.5em); }
.sub .splide__arrow--prev { top:0; left: calc((20% - 16px) * 1 - 5em); }
.sub .splide__arrow--next { top:0; left: calc((20% - 16px) * 1 - 2.5em); }
.splide__arrow{ background:#b6a249; opacity:1; }
.splide__arrow--next::before {
    content: ""; position: absolute; right: 50%; top: 50%; margin-top: -5px; margin-right: -5px;
    width: 10px; height: 10px; border-top: 3px solid #ffffff; border-right: 3px solid #ffffff;
    transform: rotate(45deg); -webkit-transform: rotate(45deg);
}
.splide__arrow--prev::before { 
    content: ""; position: absolute; right: 50%; top: 50%; margin-top: -5px; margin-right: -5px;
    width: 10px; height: 10px; border-top: 3px solid #ffffff; border-right: 3px solid #ffffff;
    transform: rotate(225deg); -webkit-transform: rotate(225deg);
}
.splide.is-initialized:not(.is-active) .splide__list{ display:flex; justify-content: space-between; gap: 20px; }
.splide.is-initialized:not(.is-active) .splide__list .splide__slide{ width:320px; }
.splide.is-initialized:not(.is-active) .splide__arrows{ display:none; }
.sub.splide.is-initialized:not(.is-active) .splide__list{ flex-wrap: wrap; }


/* -----------------------
    slider END
-----------------------*/

/* ====================================
    Modules Parts - END
===================================*/


/* ====================================
    State Parts
===================================*/

.is-fadein{
    opacity: 0;
    transform: translateY(30px);
    transition: .8s cubic-bezier(0.6, 0.6, 0.5, 1);
}
.is-fadein.is-visible {
    opacity: 1;
    transform: translateY(0);
}

.is-fade-blur{
    opacity: 0;
    filter: blur(15px);
    transition: .8s cubic-bezier(0.6, 0.6, 0.5, 1);
}
.is-fade-blur.is-visible {
    filter: blur(0);
    opacity: 1;
}

/* ====================================
    State Parts - END
===================================*/


/* ====================================
    Effect Parts
===================================*/

.e-target__slide{
    position: relative;
}
.e-target__slide::before {
    content: "";
    display: block;
    background-color: #C0A954;
    position: absolute;
    top: 0;
    left: 100%;
    right: 0;
    bottom: 0;
    z-index: 900;
}

.e-target__slide.is-anima::before {
    animation: anima_before_1 1s cubic-bezier(.4, .4, 0, 1);
}
.e-target__img.is-anima{
    animation: anima_img_1 3s cubic-bezier(.4, .4, 0, 1);
}

@keyframes anima_before_1 {
    0% {
        left: 0;
        width: 100%;
    }

    40% {
        left: 0;
        right: 0;
    }

    60% {
        left: 0;
        right: 0;
    }

    100% {
        left: 100%;
        right: 0;
    }
}
@keyframes anima_img_1{
    0% {
        transform: scale(1.06)
    }

    50% {
        transform: scale(1.03);
    }

    100% {
        transform: scale(1.0);
    }
}
/* ====================================
    Effect Parts - END
===================================*/

@media screen and (max-width: 1440px) {
.page-top { right: 25px!important; }
.m-btn__container--center.page-top{ right: 95px!important; }
}

@media screen and (max-width: 1200px) {
    
/* ====================================
    Modules Parts
===================================*/
    .m-mainVisual__image {
        background-position: 55% 20%;
    }
    .m-mainVisual__doctor{
        right: 3%;
    }
    .m-btn__container--center.page-top{
        right: 80px!important;
    }


    /* -----------------------
        Gradient
    -----------------------*/
    .m-bg-gradient--white::before{
        width: 40vw;
        height: 40vw;
    }
    /* -----------------------
        Gradient END
    -----------------------*/
/* ====================================
    Modules Parts END
===================================*/
}

@media screen and (max-width: 1024px) {
/* ====================================
    Layout Parts
====================================*/
    .l-header { padding: 0px 15px; }
    .l-container--content{ padding: 0px 15px; }
    .l-container--title { padding-left: 15px; padding-right: 15px; }
    #service .l-container{ gap: 1em; padding: 0 15px; }
    .content{ padding-left:0px; padding-right:0px; }

/* ====================================
    Layout Parts
====================================*/

/* ====================================
    Modules Parts
===================================*/
    /* -----------------------
        G-nav
    -----------------------*/    
    .m-gnav__text{ font-size: 13px; }
    /* -----------------------
        G-nav END
    -----------------------*/    

    /* -----------------------
        Main Visual
    -----------------------*/    
    .m-mainVisual__image {
        background-position: 56% 20%;
    }
    .m-mainVisual__doctor.m-mainVisual__doctor--child span{
        line-height: 1.5;
    }
    /* -----------------------
        Main Visual END
    -----------------------*/

    /* -----------------------
        Gradient
    -----------------------*/
    .m-bg-gradient--white::before{
        width: 40vw;
        height: 40vw;
    }
    /* -----------------------
        Gradient END
    -----------------------*/

    #service .l-container--title,
    #flow .l-container--title {
        padding: 100px 0 0 15px;
    }

    .m-doctor__desc{ padding: 0 15px; }

    .m-features__list{ justify-content: center; }

    .m-btn__container--center.page-top{
        right: 80px!important;
    }
    .doctors-qualifications ul li{ width: calc(50% - 0.5em); margin-bottom: 10px; }

    /* -----------------------
        slider
    -----------------------*/
    .splide__slide {
        margin: 0 10px;
    }
    .splide__arrow--prev { top:0; left: calc((33.3333% - 13.3333px) * 1 - 4em); }
    .splide__arrow--next { top:0; left: calc((33.3333% - 13.3333px) * 1 - 1.5em); }

    /* -----------------------
        slider END
    -----------------------*/
/* ====================================
    Modules Parts END
====================================*/
}

@media screen and (max-width:920px) {
/* ====================================
    賢威テーマクラス 強制書き換え
===================================*/
    .keni-gnav_inner li{ border-bottom: unset!important; }
    .keni-gnav_wrap { background-color: unset!important; }
    .sub-menu{ display: block!important;}
    ul.sub-menu li{
        padding-left: 1em!important;
    }
    ul.sub-menu li{
        background-color: transparent!important;
        font-size: 14px!important;
        font-weight: 500!important;
    }
    .keni-gnav_inner li a{
        line-height: 1.8!important;
    }
    
    .keni-gnav_inner li ul{
        position: unset!important;
        background: transparent!important;
        border-top: unset!important;
    }
    .keni-gnav_inner li ul a {
        min-height: auto!important;
        border-bottom: 0;
        background: transparent!important;
        color: #111111!important;
    }
/* ====================================
    賢威テーマクラス 強制書き換え END
===================================*/
    .keni-gnav_inner.is-open {
        background: #f2e29d;
        top: 0px !important;
        box-shadow: 0px 6px 15px 0px rgba(0, 0, 0, 0.2);
        gap: 30px;
        height: 100vh;
        margin: 0 0 0 0;
        overflow-x: hidden;
        overflow-y: auto;
        padding: 100px 15px 60px 15px;
        position: fixed;
        width: 300px;
        z-index: 0;
    }
/* ====================================
    賢威テーマクラス 強制書き換え END
===================================*/

/* ====================================
    Layout Parts
===================================*/
    .l-gnav{
        flex-direction: column;
        gap: 2em;
    }

    .l-gnav .m-btn__container .m-btn{
        justify-content: flex-start;
        width: 185px;
        padding: 5px 1em;
    }
/* ====================================
    Layout Parts END
===================================*/

/* ====================================
    Modules Parts
===================================*/
    /* -----------------------
        G-nav
    -----------------------*/
    .m-gnav__text {
        font-size: 15px;
        line-height: 1.8;
        text-align: left;
    }
    /* -----------------------
        G-nav END
    -----------------------*/

    /* -----------------------
        button
    -----------------------*/
    .m-btn__container--center.page-top{
        right: 80px!important;
    }
    /* -----------------------
        button END
    -----------------------*/

    /* -----------------------
        Gradient
    -----------------------*/
    .m-bg-gradient--white::before{
        width: 50vw;
        height: 50vw;
    }
    /* -----------------------
        Gradient END
    -----------------------*/

    /* -----------------------
        Main Visual
    -----------------------*/
    .m-mainVisual__text {
        left: calc(50% - 33rem);
    }
    .m-mainVisual__image--child{ background-size: unset; }
    .m-mainVisual__text--child{
        top: 50%;
        transform: translateY(-50%);
    }

    .m-mainVisual__feature {
        bottom: 9%;
        left: calc(50% - 32rem);
        width: 478px;
    }
    /* -----------------------
        Main Visual END
    -----------------------*/

    #service .l-container {
        padding: 0px 15px;
        gap: 1em;
    }
    #service .l-container--title,
    #flow .l-container--title{ padding:60px 15px 0px 15px; }


    /* -----------------------
        Modal Modules
    -----------------------*/
    .m-hamburger__icon--open{
        position: absolute;
        top: 32%;
        right: 15px;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 6px;
        width: 20px;
        height: 20px;
        cursor: pointer;
    }
    .m-hamburger__logo{ width: 115px;}
    .m-hamburger__bar {
        background: #111111;
        height: 1px;
        width: 20px;
        max-width: 100%;
    }
    .modal-open.m-hamburger__icon--close .m-hamburger__bar{
        display: none;
    }
    .m-hamburger__icon--close{
        position: absolute;
        top: 0;
        right: 6px;
        font-size: 2rem;
        top: 10px !important;
        width: 44px;
        height: 44px;
        background-color: #B19100;
        border-radius: 50%;
        z-index: 300;
        cursor: pointer;
    }
    .m-hamburger__icon--close::before {
        color: #ffffff;
        content: '' !important;
        position: absolute;
        width: 16px !important;
        height: 2px;
        right: 14px;
        top: 21px;
        background-color: #ffffff;
        transform: rotate(45deg);
        -webkit-transform: rotate(45deg);
    }
    .m-hamburger__icon--close::after {
        color: #ffffff;
        content: '';
        position: absolute;
        width: 16px;
        height: 2px;
        right: 14px;
        top: 21px;
        background-color: #ffffff;
        transform: rotate(-45deg);
        -webkit-transform: rotate(-45deg);
    }
    .m-hamburger__icon--close.is-open{
        animation: anima_closeIcon 0.6s cubic-bezier(.4,.4,0,1), transform 0.6s cubic-bezier(.4,.4,0,1);
    }

    @keyframes anima_closeIcon {
        from { transform: translateX(100%); }
        to { transform: translateX(0); }
    }

    .keni-gnav_inner.m-modal{
        display: block;
        opacity: 0;
        transform: translateX(100%);
        transition: 0.5s cubic-bezier(.4,.4,0,1);
        }
    .m-modal.is-open{
        opacity: 1;
        pointer-events: auto;
        transform: translateX(0);
        padding: 60px 15px;
    }
    .l-gnav .m-btn__header {
        display: block;
    }
    .m-gnav{
        flex-direction: column;
        color: #ffffff;
        align-items: flex-start;
    }
    .m_gnav__closeArea {
        display: none;
        position: fixed;
        top: 0;
        left: 0;
        z-index: -1;
        width: 100%;
        height: 100%;
        background: rgba(0, 0, 0, 0.16);
        transition: 1s cubic-bezier(.4, .4, 0, 1);
        pointer-events: auto;
    }
    .m_gnav__closeArea.is-open{
        display: block;
    }

    /* -----------------------
        slider 
    -----------------------*/
    .splide__slide { margin: 0 10px; }
    .splide__arrow--prev { top:0; left: calc((33.3333% - 13.3333px) * 1 + 0.5em); }
    .splide__arrow--next { top:0; left: calc((33.3333% - 13.3333px) * 1 + 3em); }
    .sub .splide__arrow--prev { top:0; left: calc((20% - 16px) * 1 + 1.5em); }
    .sub .splide__arrow--next { top:0; left: calc((20% - 16px) * 1 + 4em); }
    /* -----------------------
        slider END
    -----------------------*/
/* ====================================
    Modules Parts END
===================================*/

}

@media screen and (max-width:768px) {

/* ====================================
    賢威テーマクラス 強制書き換え
===================================*/

    .keni-gnav_btn{ z-index: 200!important; background-color: transparent!important;}
    .keni-gnav_btn_wrap .keni-gnav_btn_icon-open{ display: block;}
    .keni-gnav_btn_icon-open, .keni-gnav_btn_icon-close { left: unset!important; right: unset!important; z-index: 300; }
    .keni-gnav_btn_icon-close {top: 10px!important;width: 44px;height: 44px;background-color: #b6a249;border-radius: 50%;}
    .keni-gnav_btn_icon-close::before {color: #ffffff;content: ''!important;position: absolute;width: 16px!important;height: 2px;right: 14px;top: 21px;background-color: #ffffff;transform: rotate(45deg);-webkit-transform: rotate(45deg);}
    .keni-gnav_btn_icon-close::after {color: #ffffff;content: '';position: absolute;width: 16px;height: 2px;right: 14px;top: 21px;background-color: #ffffff;transform: rotate(-45deg);-webkit-transform: rotate(-45deg);}
    .keni-gnav_inner{ background: #e9e4db;top: 0px!important;box-shadow: 0px 6px 15px 0px rgba(0, 0, 0, 0.2);gap: 30px;height: 100vh;margin: 0 0 0 0;overflow-x: hidden;overflow-y: auto;padding: 100px 0px 60px 0px;position: fixed;width: 280px!important;z-index: 0;}
    .keni-container{ padding-bottom: 0px!important;}
    .page-top {
        right: 15px!important;
        bottom: 15px!important;
    }
    .m-btn__container--center.page-top{ right: 80px!important; }
    .keni-footer-panel_wrap{ width: unset!important; }
    .fn-footer-panel.is-active {
        bottom: 4vw!important;
        right: 17%;
        left: unset;
    }
    .content{padding-left:30px; padding-right:30px }
    .keni-gnav_inner li ul{
        position: unset!important;
        background: transparent!important;
        border-top: unset!important;
    }
    .keni-gnav_inner li ul a {
        min-height: auto!important;
        border-bottom: 0;
        background: transparent!important;
        color: #111111!important;
    }
    ul.sub-menu li{
        background-color: transparent!important;
        font-size: 14px!important;
        font-weight: 500!important;
    }
    .keni-gnav_inner li a{
        line-height: 1.8!important;
    }

/* ====================================
    賢威テーマクラス 強制書き換え - END
===================================*/


/* ====================================
    Layout Parts
===================================*/

    .l-header{ height: 60px; }
    .l-mainVisual{ padding: 65px 0px 30px 26px; }

    .l-container { padding: 100px 60px; }
    .l-container--narrow { padding: 30px 100px 50px 100px; }
    .l-container--content { padding: 0px 15px; }
    #service .l-container--title,
    #flow .l-container--title{ padding:60px 15px 0px 15px; }

    .doctor.l-container { padding: 100px 40px 0px 40px; }


    .cols2 { display:block; }
    .cols2 > *  { width:100%;  }
    .cols3 { display:block;  }
    .cols3 > *  { width:100%;  }


/* ====================================
    Layouts Parts - END
===================================*/

/* ====================================
    Modules Parts
===================================*/
    /* -----------------------
        footer
    -----------------------*/
    .m-footer__inner{
        padding: 60px 26px 120px 26px;
    }

    .m-footer__menu{
        flex-direction: column;
        justify-content: center;
        align-items: center;
        gap: 0.5em;
    }
    /* -----------------------
        footer END
    -----------------------*/
    
    /* -----------------------
        Gradient
    -----------------------*/
    .m-bg-gradient--white::before{
        width: 55vw;
        height: 55vw;
    }
    /* -----------------------
        Gradient END
    -----------------------*/

    /* -----------------------
        Link Card END
    -----------------------*/
    .m-cardLink__list--4col {
        grid-template-columns: repeat(auto-fit, minmax(200px, 210px));
    }
    .m-cardLink__link--4col {
        height: 210px;
    }
    /* -----------------------
        Link Card END
    -----------------------*/

    /* -----------------------
        Contact Form
    -----------------------*/
    .contact-form label{ gap: 6px; flex-direction: column; align-items: flex-start; }
    .contact-form .req { float: none; }
    .contact-form .cols-parent > * { min-width: 0em; }
    .contact-form .cols-parent { flex-direction: column; }
    .wpcf7-list-item label { flex-direction: row; align-items: baseline; }
    .input-submit{ margin-left:0; }
    .input-buttons .input-submit{ margin-left:1em; }
    .contact-form.confirm .input-back{ width:100px; }
    .contact-form.confirm .input-submit{ width:100px; }
    .contact-form.confirm .input-buttons{ text-align:left; }
    /* -----------------------
        Contact Form END
    -----------------------*/


    /* -----------------------
        Modal Modules
    -----------------------*/
    .keni-gnav_inner.is-open {
        width: 280px;
        padding: 60px 15px;
    }
    /* -----------------------
        Modal Modules END
    -----------------------*/

    /* -----------------------
        First View 
    -----------------------*/

    .m-mainVisual__image {
        position: relative;
        background-position: 55% 20%;
        height: 100%;
        width: 100%;
    }

    .m-mainVisual__text{
        left: calc(50% - 32rem);
        font-size: 40px;
    }
    .m-mainVisual__text--child{
        top: 50%;
        transform: translateY(-50%);
    }

    .m-mainVisual__feature{
        bottom: 14%;
        left: calc(50% - 32rem);
        width: 480px;
    }
    .m-about__container::before{
        bottom: -4%;
    }
    .m-about__container::after{
        bottom: -4%;
    }
    .m-mainVisual__logo{
        display: flex;
        justify-content: center;
        align-items: center;
        width: 180px;
        height: auto;
        margin: 0 auto;
    }

    .m-mainVisual__doctor{
        position: absolute;
        bottom: 3%;
        right: calc(50% - 32rem);
        font-size: 13px;
        line-height: 1.2;
        font-weight: 700;
        text-align: right;
    }
    .m-mainVisual__doctor--child{
        right: 3%;
        bottom: 3%;
        font-weight: 500;
        font-size: 11px;
    }
    .m-mainVisual__doctor.m-mainVisual__doctor--child span{
        line-height: 1.3;
    }
    /* -----------------------
        First View END
    -----------------------*/

    /* -----------------------
        Doctors
    -----------------------*/
    .m-doctor__desc{ padding: 10px 15px; }
    .doctors-qualifications{ margin:1em 1em 0 0; }
    .doctors-qualifications ul{ display: flex; flex-direction: column; }
    .doctors-qualifications ul li{ width:100%; margin-bottom: 0.5em; }
    /* -----------------------
        Doctors END
    -----------------------*/

    /* -----------------------
        Modal Modules END
    -----------------------*/

    .m-section__intro { margin: 0px 0px 25px 0px; }

    /* 画像付きリスト */
    .m-imageList{
        display: flex;
        flex-direction: column;
        align-items: center;
    }

/* ====================================
    Modules Parts - END
===================================*/

}


@media screen and (max-width: 640px) {
/* ====================================
    賢威テーマクラス 強制書き換え
===================================*/
    .page-top {
        right: 15px!important;
        bottom: 25px!important;
    }
    .m-btn__container--center.page-top{
        right: 75px!important;
    }
/* ====================================
    賢威テーマクラス 強制書き換え END
===================================*/

/* ====================================
    汎用クラス
===================================*/
    .u-forSp { display: block !important; }
    .u-forPc { display: none; }

/* ====================================
    Layout Parts
===================================*/
    /* -----------------------
        Header
    -----------------------*/
    .l-header {
        flex: none;
        height: 60px;
        width: 100%;
        max-width: 100%;
        padding: 10px 15px;
    }
    .l-header .m-site-title img {
        width: 240px;
        height: auto;
    }
    /* -----------------------
        Main Visual
    -----------------------*/
    .l-mainVisual{
        padding: 60px 0px 30px 26px;
    }
    .l-mainVisual--child{ height: 300px; }
    
    /* -----------------------
        汎用レイアウト
    -----------------------*/
    .l-container { padding: 60px 15px; }
    /* 汎用レイアウト　オプション */
    .l-container--content{ padding: 0px 15px; }
    .l-container--narrow{ padding: 10px 15px 40px 15px; }
    /* 汎用レイアウト タイトル */
    .l-container--title{ padding: 60px 15px 0px 15px; }

    .content{padding-left:0px; padding-right:0px }
    .m-doctor__desc{ padding: 10px 15px; }

	#service .l-container--title,
    #flow .l-container--title{ padding: 60px 15px 0px 15px; }
	#service .l-container{ padding:0px 15px; flex-direction: column; align-items: center; }
	#service .l-innerContainer--center{ padding:0; }

    .doctor.l-container { padding: 60px 15px; }


/* ====================================
    Layout Parts - END
===================================*/


/* ====================================
    Modules Parts
===================================*/

    /* -----------------------
        Header
    -----------------------*/
    /* h1 */
    .m-main__h1{
        font-size: 20px;
    }
    /* h2 */
    .m-section__h2{
        font-size: 20px;
    }

    .m-section__h2--terms{
        font-size: 17px;
    }
    /* -----------------------
        Header END
    -----------------------*/

    /* -----------------------
        button 
    -----------------------*/
    /* ボタン */
    .l-gnav.m-btn__header {
        display: block;
    }
    /* -----------------------
        button END
    -----------------------*/

    /* -----------------------
        gnav
    -----------------------*/
    .m-gnav__menu {
        display: flex;
    }
    /* -----------------------
        gnav END
    -----------------------*/

    /* -----------------------
        footer
    -----------------------*/
    .m-footer__img {
        height: auto;
        margin: 0px 0px 40px 0px;
        width: 220px;
        max-width: 100%;
    }

    /* -----------------------
        footer END
    -----------------------*/

    /* -----------------------
        Gradient
    -----------------------*/
    .m-bg-gradient--white::before{
        width: 100vw;
        height: 100vw;
    }
    .m-bg-gradient--3-1-2::before{
        width: 110vw;
        height: 110vw;
        transform: translate(-50%, -40%);
    }
    .m-bg-gradient--2-2::before{
        width: 100vw;
        height: 100vw;
    }
    /* -----------------------
        Gradient END
    -----------------------*/

    .m-cardLink__list{
        justify-content: center;
    }
    .m-cardLink__list--4col {
        grid-template-columns: repeat(auto-fit, minmax(140px, 150px));
    }
    .m-cardLink__list.m-cardLink__list--4col{
        gap: .5em;
    }

    .m-cardLink__link--4col{
        height: 150px;
    }
    .m-cardLink__link--4col .m-cardLink__textContainer .m-section__h3 {
        font-size: 16px;
        padding: .3em;
    }

    /* -----------------------
        First View
    -----------------------*/
    .m-mainVisual__image{
        background-image: url("/img/main.jpg");
        background-size: cover;
        background-repeat: no-repeat;
        background-position: 58% -5px;
        transform: scale(1);
    }
    
    .m-mainVisual__image--child2-1{
        background-image: url("/img/main_child-2-1.jpg");
        background-size: 217%;
        background-position-y: -16px;
        background-position-x: 60%;
    }
    .m-mainVisual__image--child2-2{
        background-image: url("/img/main_child-2-2.jpg");
        background-size: 234%;
        background-position-y: -16px;
        background-position-x: 61%;
    }
    .m-mainVisual__image--child2-3{
        background-image: url("/img/main_child-2-3.jpg");
        background-size: 177%;
        background-position-y: -11px;
        background-position-x: 61%;
    }
    .m-mainVisual__image--child3-1-1{
        background-image: url("/img/main_child-3-1-1.jpg");
        background-size: 217%;
        background-position-y: -16px;
        background-position-x: 64%;
    }
    .m-mainVisual__image--child3-1-2{
        background-image: url("/img/main_child-3-1-2.jpg");
        background-size: 234%;
        background-position-y: -6px;
        background-position-x: 60%;
    }
    .m-mainVisual__image--child3-1-3{
        background-image: url("/img/main_child-3-1-3.jpg");
        background-size: 217%;
        background-position-y: -16px;
        background-position-x: 59%;
    }
    .m-mainVisual__image--child3-1-4{
        background-image: url("/img/main_child-3-1-4.jpg");
        transform: scale(1.3);
        background-position: 58% 15px;
    }
    .m-mainVisual__image--child3-3-1{
        background-image: url("/img/main_child-3-3-1.jpg");
        background-size: 217%;
        background-position-y: -16px;
        background-position-x: 60%;
    }
    .m-mainVisual__image--child3-3-2{
        background-image: url("/img/main_child-3-3-2.jpg");
        background-size: 217%;
        background-position-y: -16px;
        background-position-x: 60%;
    }
    .m-mainVisual__image--child3-3-3{
        background-image: url("/img/main_child-3-3-3.jpg");
        background-size: 217%;
        background-position-y: -16px;
        background-position-x: 60%;
    }

    .m-mainVisual__text{
        top: 20%;
        left: 6%;
        font-size: 26px;
        font-weight: 700;
        letter-spacing: 0.1em;
        line-height: 1.4;
        width: 100%;
        max-width: 100%;
        height: auto;
    }
    .m-mainVisual__text--child{
        top: 50%;
        transform: translateY(-50%);
        line-height: 1.3;
    }

    .m-mainVisual__feature{
        position: absolute;
        bottom: 6%;
        left: 6%;
        width: 75%;
        height: auto;
    }

    .m-mainVisual__doctor{
        position: absolute;
        bottom: 3%;
        right: 3%;
        font-size: 11px;
        font-weight: 700;
        text-align: right;
    }
    .m-mainVisual__doctor span{
        line-height: 1.3;
    }
    .m-mainVisual__doctor--child{
        right: 3%;
        bottom: 6%;
        font-weight: 500;
        font-size: 11px;
    }
    .m-mainVisual__doctor--child span{
        line-height: 1.3;
    }

    .m-mainVisual__logo{ width: 130px; }
    .doctor .m-mainVisual__illust{
        border: 3px solid #C0A954;
        width: 300px;
        height: 300px;
    }
    .doctor .m-mainVisual__feature{
        bottom: -34px;
        width: 320px;
        margin-left: -160px;
    }
    /* -----------------------
        First View END
    -----------------------*/

    /* -----------------------
        About
    -----------------------*/
    .m-about__container{ padding: 30px 10px 40px 10px }

    .m-about__container::before{
        content: "";
        position: absolute;
        bottom: -2%;
        left: -16%;
        background-image: url(/img/line-drawing_male-1.png);
        background-size: contain;
        background-repeat: no-repeat;
        background-position: right center;
        height: 290px;
        width: 160px;
    }
    .m-about__container::after{
        content: "";
        position: absolute;
        bottom: -5%;
        right: -14%;
        background-image: url(/img/line-drawing_female-1.png);
        background-size: contain;
        background-repeat: no-repeat;
        height: 290px;
        width: 160px;
    }
    .m-about--child__baloon{
        width: 280px;
        margin-bottom: 1px;
    }
    .m-about--child__image{
        width: 210px;
        margin: 0 auto;
    }
    .m-about--child__image--3-3-1{
        width: 300px;
        margin: 0 auto;
    }
    .m-about--child__image--3-3-2{
        width: 230px;
        margin: 0 auto;
    }
    .m-about--child__image--3-3-3{
        width: 240px;
        margin: 0 auto;
    }

    /* -----------------------
        About END
    -----------------------*/

    /* -----------------------
        Flow
    -----------------------*/
    .m-flow__container{
        grid-template-columns: 1fr;
        grid-row-gap: 2em;
        align-items: center;
    }

    .m-flow__container--noImage{
        grid-template-rows: repeat(6, 1fr);
        grid-row-gap: 3em;
        align-items: center;
    }

    .m-flow__items{
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        flex: 0 1 280px;
        gap: 1em;
    }

    .m-flow__container--noImage .m-flow__items::before{
        content: counter(number, decimal-leading-zero);
        counter-increment: number 1;
        position: absolute;
        top: -10rem;
        left: 0;
        font-size: 7rem;
        font-weight: 700;
        z-index: 1;
    }

    .m-flow__items--noImage{
        padding-left: 0;
    }

    .m-flow__img{
        position: relative;
        width: 215px;
        height: auto;
    }

    .m-flow__img::before{
        top: -6rem;
        left: 0;
    }
    /* -----------------------
        Flow END
    -----------------------*/

    /* -----------------------
        Symptoms
    -----------------------*/
    .m-symptoms__list{
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(110px, 1fr));
        grid-gap: 1em;
    }
    
    /* -----------------------
        Symptoms END
    -----------------------*/

    /* -----------------------
        Features
    -----------------------*/
    .m-features__list{
        grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
        grid-gap: 1em;
        width: 100%;
        max-width: 100%;
    }
    .m-features__img::after{
        right: 4%;
        bottom: -3.5rem;
        font-size: 7rem;
        font-weight: 700;
        z-index: 1;
    }
    .m-specialist--img{
        width: 281px;
        height: auto;
        margin-top: -20px;
    }

    /* -----------------------
        Features END
    -----------------------*/

    /* -----------------------
        Legal
    -----------------------*/
    .m-termsBlock ol li {
        margin: 0;
        padding-left: 45px;
    }
    /* -----------------------
        Legal END
    -----------------------*/

    /* -----------------------
        Slider
    -----------------------*/
    .splide__arrow--prev { left:unset; top: 0; right: 5.5em; }
    .splide__arrow--next { left:unset; top: 0; right: 3em; }
    .sub .splide__arrow--prev { left:unset; top: 0; right: 5.5em; }
    .sub .splide__arrow--next { left:unset; top: 0; right: 3em; }
    .sub.splide.is-initialized:not(.is-active) .splide__list .splide__slide {   width: calc(100% - 20px); }
    /* -----------------------
        Slider END
    -----------------------*/

/* ====================================
    Modules Parts - END
===================================*/


}

@media screen and (min-width: 2200px) {

/* ====================================
    Modules Parts
===================================*/
    .m-mainVisual__image {
        background-size: cover;
    }
    .m-bg-gradient--white::before{
        width: 15vw;
        height: 15vw;
    }
/* ====================================
    Modules Parts - END
===================================*/
}

@media screen and (max-width: 360px) {
/* ====================================
    賢威テーマクラス 強制書き換え
===================================*/
    .page-top {
        right: 15px!important;
        bottom: 20px!important;
    }
    .m-btn__container--center.page-top{
        right: 75px!important;
    }
/* ====================================
    賢威テーマクラス 強制書き換え END
===================================*/

}

@supports (padding-bottom: env(safe-area-inset-bottom)) {
  .page-top {
    bottom: calc(20px + env(safe-area-inset-bottom));
  }
}