@charset "utf-8";

/** フォント **/

@font-face {
    font-family: "Noto Sans JP", sans-serif;
    src: url('/fonts/NotoSansJP-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: "Noto Sans JP", sans-serif;
    src: url('/fonts/NotoSansJP-Medium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
}

@font-face {
    font-family: "Noto Sans JP", sans-serif;
    src: url('/fonts/NotoSansJP-SemiBold') format('truetype');
    font-weight: 600;
    font-style: normal;
}

@font-face {
    font-family: "Noto Serif JP", serif;
    src: url('/fonts/NotoSerifJP-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: "Noto Serif JP", serif;
    src: url('/fonts/NotoSerifJP-Medium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
}

@font-face {
    font-family: "Noto Serif JP", serif;
    src: url('/fonts/NotoSerifJP-SemiBold.ttf') format('truetype');
    font-weight: 600;
    font-style: normal;
}

@font-face {
    font-family: 'Zen Old Mincho';
    src: url('/fonts/ZenOldMincho-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'Zen Old Mincho';
    src: url('/fonts/ZenOldMincho-SemiBold.ttf') format('truetype');
    font-weight: 600;
    font-style: normal;
}

@font-face {
    font-family: 'Zen Old Mincho';
    src: url('/fonts/ZenOldMincho-Black.ttf') format('truetype');
    font-weight: 900;
    font-style: normal;
}

@font-face {
    font-family: "Cormorant", serif;
    src: url('/fonts/Cormorant-Regular.ttf') format('truetype');
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: "Zen Kaku Gothic New", sans-serif;
    src: url('/fonts/ZenKakuGothicNew-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: "Zen Kaku Gothic New", sans-serif;
    src: url('/fonts/ZenKakuGothicNew-Medium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
}

/** フォントここまで **/


html {
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    scroll-behavior: smooth;
    scroll-padding-top: 110px;
}

body {
    margin: 0;
    word-wrap: break-word;
    /**font-family: "yu-gothic-pr6n", sans-serif;
    font-weight: 400;
    font-style: normal;**/
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    font-size: 16px;
    /*767- 15-16*/
    line-height: 2;
    font-feature-settings: "palt" 0, "pkna" 0;
    position: relative;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-size: inherit;
    font-weight: inherit;
    margin: 0;
    padding: 0;
}

h2.cat_title {
    font-family: "Cormorant", serif;
    font-weight: 400;
    font-style: normal;
    font-size: clamp(4.375rem, 2.714rem + 3.46vw, 5.313rem);
    /** 767- 70-85**/
    color: #b2a267;
    margin: 0 0 .25em;
    line-height: 1;
    display: block;
}

h2.cat_title span {
    font-family: "Noto Serif JP", serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    font-size: clamp(0.938rem, 0.827rem + 0.23vw, 1rem);
    /** 767- 15-16**/
    color: #000;
    display: block;
    background: url(/img/kazari_h2_span.svg) no-repeat left;
    background-size: contain;
    padding-left: 2.25em;
    margin-bottom: .5em;
}

section,
article,
footer,
main {
    display: block;
    width: 100%;
}

a {
    text-decoration: none;
    color: #000;
    transition: all .3s ease-in-out;
}

p {
    margin: 0;
    padding: 0;
}

img {
    width: 100%;
    margin: 0;
    padding: 0;
    border: 0;
    display: block;
    vertical-align: top;
}

.sp_none {
    display: block;
}

.pc_none {
    display: none;
}

#sp_Btn {
    display: none;
}

sub,
sup {
    font-size: 65%;
    line-height: 0;
    vertical-align: baseline;
    position: relative;
}

sup {
    top: -.5em;
}

sub {
    bottom: -.25em;
}

svg:not(:root) {
    overflow: hidden;
}

table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
    border-spacing: 0;
    text-align: center;
    font-size: 15px;
    margin: 0 auto 3em;
    background-color: #fff;
    line-height: 1.5rem;
}

table td {
    border: solid 1px #999;
    padding: 1rem;
    margin: 0;
}

ul,
li,
dl,
dt,
dd {
    margin: 0;
    padding: 0;
}

ul li {
    list-style-type: none;
}

.inner {
    width: 90%;
    max-width: 1200px;
    margin: auto;
}

.mb2rem {
    margin-bottom: 2rem;
}

.annotation {
    font-size: .8em;
}

/** 背景色 **/
.back_c {
    background-color: #f7f6f0;
}


/**ヘッダー**/
header {
    color: #000;
    font-size: clamp(0.813rem, 0.496rem + 0.59vw, 0.938rem);
    /*-860 13-15*/
    font-family: "Zen Old Mincho", serif;
    font-weight: 400;
    border-top: 1px solid #b2a267;
    /*border-bottom: 2px solid #b2a267;*/
    padding: 10px 3em 1em 2em;
    width: calc(100% - 5em);
    height: calc(100px - 10px - 1em);
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    position: sticky;
    top: 0;
    z-index: 50;
    background: url("../img/kazari_left_ue.svg")no-repeat top 5px left 5px,
        url("../img/kazari_right_ue.svg")no-repeat top 5px right 5px;
    background-size: 30px, 30px;
    background-color: rgba(255, 255, 255, 0.9);
}

header .header_left {
    display: flex;
    flex-wrap: nowrap;
    align-items: flex-end;
    width: 85%;
}

header .header_left .logo {
    width: calc(30% - 3rem);
    max-width: 230px;
    margin-right: 3rem;
}

header .header_left ul.pc_menu {
    width: 70%;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
}

header .header_left ul.pc_menu li {
    margin-right: 1em;
}

header .header_left ul.pc_menu li a {
    color: #000;
}

header .header_left ul.pc_menu li a img {
    width: 1.5em;
    height: 1.5em;
}

header .header_left ul.pc_menu li a:hover {
    color: #b2a267;
}

header .header_right {
    display: flex;
    flex-direction: column;
    width: 15%;
    min-width: 135px;
}

header .header_right .tel {
    text-align: right;
    margin-bottom: 5px;
}

header .header_right .tel a {
    font-family: "Zen Old Mincho", sans-serif;
    font-weight: 400;
    font-style: normal;
    align-items: center;
    font-size: clamp(1rem, 0.368rem + 1.18vw, 1.25rem);
    /** 860- 16-20**/
    line-height: 1;
    margin: 0;
    padding: 0;
}

header .header_right .tel a::before {
    content: '';
    display: inline-block;
    width: 1em;
    height: 1em;
    background: url("../img/ico_tel_b.svg")no-repeat left center;
    background-size: 60%;
    margin-bottom: -2px;
}

header .header_right .tel span {
    font-family: "hiragino-kaku-gothic-pron", sans-serif;
    font-weight: 300;
    font-style: normal;
    font-size: 11px;
    display: block;
    line-height: 1;
    margin: 0;
    padding: 0;
}

header .header_right .btn_web {
    width: 100%;
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
}

header .header_right .btn_web a {
    width: 100%;
    background-color: #b2a267;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 4px;
}

header .header_right .btn_web a::before {
    content: '';
    display: inline-block;
    width: 1em;
    height: 1em;
    background: url("../img/ico_header_arrow.png")no-repeat left center;
    background-size: contain;
    margin-right: .5em;
}

.sp_hamburger {
    display: none;
}

/**ヘッダーここまで**/



/**ご予約・お問い合わせ**/
.sec_contact {
    width: 100%;
    padding: 7rem 0 5rem;
    display: flex;
    flex-direction: column;
    background: url("../img/img_contact_back.webp")no-repeat center;
    background-size: cover;
}

.sec_contact h2 {
    font-family: "Noto Serif JP", serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
    font-size: clamp(0.875rem, 0.821rem + 0.22vw, 0.938rem);
    /*860 14-15*/
    margin: 0px auto 1em;
    text-align: center;
    color: #fff;
    line-height: 1;
}

.sec_contact h2 span {
    font-family: "Cormorant", serif;
    font-weight: 400;
    font-style: normal;
    font-size: clamp(3.438rem, 1.807rem + 6.52vw, 5.313rem);
    /**-860 55-85**/
    margin: 0px auto;
    display: block;
}

.sec_contact p {
    font-size: 16px;
    /*767 15-18*/
    color: #fff;
    text-align: center;
}

.sec_contact ul.con_btn {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 1em;
    margin: 2rem 0;
}

.sec_contact ul.con_btn li {
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500;
    text-align: center;
    max-width: 320px;
    width: 40%;
    font-size: clamp(1rem, 0.895rem + 0.48vw, 1.125rem);
    /*767 16-18*/
    line-height: 1;
    margin: 0;
}

.sec_contact ul.con_btn li a {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 1rem 0;
    background-color: #fff;
    border-radius: 6px;
}

.sec_contact ul.con_btn li a img {
    width: auto;
    height: 40px;
    margin-right: 1rem;
}

.sec_contact ul.con_btn li a:hover {
    background-color: rgba(255, 255, 255, 0.6);
}

.sec_contact .con_tel {
    display: flex;
    flex-direction: column;
    color: #fff;
    text-align: center;
    font-size: 15px;
}

.sec_contact .con_tel p {
    font-family: "hiragino-kaku-gothic-pron", sans-serif;
    font-weight: 300;
    font-style: normal;
    font-size: 20px;
    text-align: center;
}

.sec_contact .con_tel p a {
    font-size: clamp(1.625rem, 1.421rem + 0.82vw, 1.813rem);
    /**-767 26-29**/
    color: #fff;
    font-weight: 600;
    margin-left: .25em;
    line-height: 1.75;
    letter-spacing: .05em;
}

.sec_contact .con_tel span {
    font-size: 13px;
}

/**ご予約・お問い合わせここまで**/


/**アクセス**/
.c_sales ul {
    display: flex;
    flex-wrap: nowrap;
    font-size: clamp(0.875rem, 0.764rem + 0.23vw, 0.938rem);
    /**767- 14-15**/
}

.c_sales ul li {
    text-align: center;
    width: 2.5em;
    width: calc(100% / 8);
    border-bottom: solid 1px #999;
    height: 2.5em;
    line-height: 2.5em;
}

.c_sales ul li:first-child {
    text-align: left;
    width: 7em;
    width: 8em;
}

.c_sales ul li:last-child {
    width: 3em;
}

.c_sales ul:nth-child(2) li:nth-child(n+3) {
    color: #b2a267;
}

.c_sales p {
    margin-top: .5rem;
    font-size: 14px;
    /**767- 14-15**/
}

/**アクセスここまで**/


/**フッター**/
footer {
    width: 100%;
    padding: 3rem 0 0;
    font-size: 15px;
}

footer a {
    color: #000;
}

footer .content {
    width: 90%;
    max-width: 1300px;
    margin: 0 auto .5rem;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

footer .content .f-left {
    width: 30%;
    display: flex;
    flex-direction: column;
}

footer .content .f-left p {
    width: 100%;
    margin-bottom: 1em;
}

footer .content .f-left p:nth-child(3) {
    font-size: 18px;
}

footer .content .f-left p:nth-child(3) a {
    margin-left: .5em;
}

footer .content .f-left p img {
    width: 100%;
}

footer .content .f-left p span {
    display: block;
    font-size: 13px;
}

footer .content .f-left p:nth-child(4) {
    margin-bottom: 2em;
}

footer .content .f-left p:nth-child(4) a {
    border: solid 1px #555555;
    border-radius: 3px;
    width: 9em;
    padding: .25em 0;
    text-align: center;
    display: block;
}

footer .content .f-left p:nth-child(4) a:hover {
    border: solid 1px #555555;
    background-color: #555555;
    color: #fff;
}

footer .content .f-left ul {
    display: flex;
    flex-wrap: nowrap;
    gap: 1em;
}

footer .content .f-left ul li {
    width: 1.5em;
    height: 1.5em;
}

footer .content .f-left ul li a {
    width: 100%;
}

footer .content .f-right {
    width: 65%;
    display: flex;
    flex-wrap: wrap;
    align-content: flex-start;
    gap: 1.25rem;
    font-size: 14px;
}

footer .content .f-right ul {
    display: flex;
    flex-wrap: wrap;
    gap: .25em 0;
    width: 100%;
}

footer .content .f-right ul li {
    width: auto;
    margin-left: 1.5em;
    color: #999;
}

footer .content .f-right ul li::before {
    content: "-";
    width: 1em;
    margin-right: .25em;
}

footer .content .f-right ul li:first-child {
    width: 100%;
    margin-left: 0;
    font-size: clamp(0.875rem, 0.821rem + 0.22vw, 0.938rem);
    /** -860 14-15**/
}

footer .content .f-right ul li:first-child::before {
    content: "・";
    width: 1em;
}

footer .content .f-right ul li a,
footer .content ul.f-bottom a {
    position: relative;
}

footer .content .f-right ul li a img {
    width: 0.7rem;
    height: auto;
    margin: 0 0 0 0.5rem;
}

/**footer .content .f-right ul li a::after,
footer .content ul.f-bottom a::after {
    position: absolute;
    left: 0;
    content: '';
    width: 100%;
    height: 1.5px;
    background: #000;
    bottom: -3px;
    transform: scale(0, 1);
    transform-origin: left top;
    transition: transform 0.3s;
}

footer .content .f-right ul li a:hover::after,
footer .content ul.f-bottom a:hover::after {
    transform: scale(1, 1);
}**/


footer .content .f-right ul li a,
footer .content ul.f-bottom a {
    background-image: linear-gradient(90deg, #000, #000);
    background-position: left bottom;
    background-repeat: no-repeat;
    background-size: 0 1px;
    padding-bottom: 4px;
    transition: background-size .3s;
}

footer .content .f-right ul li a:hover,
footer .content ul.f-bottom a:hover {
    background-size: 100% 1px;
}


footer .content ul.f-bottom {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: .5em 2rem;
    font-size: 13px;
    font-weight: 400;
    margin-top: 2em;
}

footer .content ul.f-bottom li {
    width: auto;
}

footer p.copy {
    width: 100%;
    font-size: 14px;
    text-align: center;
    padding: 1em 0;
    font-weight: 300;
    border-top: solid 1px #ccc;
}

/**フッターここまで**/


/**SP フローティングボタン**/
#floating,
#floating a,
#floating a span {
    display: none;
}

/**SP フローティングボタンここまで**/


/**フェードイン**/
.fade-in {
    opacity: 0;
    transform: translateY(50px);
    transition: opacity 2s ease,
        transform 2s cubic-bezier(0.4, 0, 0.2, 1);
}

.fade-in2 {
    opacity: 0;
    transform: translateY(70px);
    transition: opacity 2s ease,
        transform 2s cubic-bezier(0.4, 0, 0.2, 1);
}

.fade-in3 {
    opacity: 0;
    transform: translateY(90px);
    transition: opacity 2s ease,
        transform 2s cubic-bezier(0.4, 0, 0.2, 1);
}

.fade-in.is-visible,
.fade-in2.is-visible,
.fade-in3.is-visible {
    opacity: 1;
    transform: translateY(0);
}

.scale-in {
    opacity: 0;
    transform: scale(1);
    transition: opacity 2s,
        transform 2s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.scale-in.is-visible {
    opacity: 1;
    transform: scale(1);
}

/**フェードインここまで**/


/***** 下層 *****/

/** h3 **/
.lower h3.lower_title_h3 {
    font-family: "Noto Serif JP", serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-style: normal;
    font-size: clamp(1.125rem, 0.792rem + 0.69vw, 1.313rem);
    /** -767 18-21**/
    margin-bottom: 1em;
    background: url(/img/kazari_lower_h3.svg) no-repeat top .1em left;
    background-size: 1.5em;
    padding-left: 2.25em;
    line-height: 1.5;
}

/** h3ここまで **/

/** h4 **/
.sec_lower_explan h4.lower_title_h4 {
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
    font-size: 1.1em;
    margin-bottom: .25rem;
}

.sec_lower_explan h4.lower_title_h4::before {
    content: "■";
    width: 1em;
    margin-right: .5em;
}

.sec_lower_explan h4.lower_title_h4.reco::before {
    content: "◎";
    width: 1em;
    margin-right: .5em;
}

.sec_lower_explan h4.lower_title_h4.no_deco {
    font-size: 1em;
    margin-bottom: 0;
}

.sec_lower_explan h4.lower_title_h4.no_deco::before {
    content: "";
    width: 0;
    margin-right: 0;
}

.sec_lower_explan p+h4.lower_title_h4 {
    margin-top: 1.75rem;
}

.sec_lower_explan ul+h4.lower_title_h4 {
    margin-top: 2rem;
}

/** h4ここまで **/

/** h5 **/
.sec_lower_explan h5.lower_title_h5 {
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
    border-left: solid 2px #000;
    padding-left: .75rem;
    line-height: 1.5;
    margin: 1rem 0 .75rem;
}

.sec_lower_explan p+h5.lower_title_h5 {
    margin-top: 2.5rem;
}

.sec_lower_explan h4.lower_title_h4+h5.lower_title_h5 {
    margin-top: 1.25rem;
}


/** h5ここまで **/


/** パンくずリスト **/
.breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    width: 90%;
    max-width: 1200px;
    margin: 0 auto;
    overflow-x: scroll;
    white-space: nowrap;
    justify-content: flex-end;
}

.breadcrumbs::-webkit-scrollbar {
    display: none;
}

.breadcrumbs ul {
    width: auto;
    text-align: right;
    font-size: 12px;
    line-height: 1.5;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
}

.breadcrumbs ul li {
    margin-right: .5em;
}

.breadcrumbs ul li::after {
    content: "／";
    display: inline-block;
    width: 1em;
    height: 1em;
    margin-left: .5em;
}

.breadcrumbs ul li:last-child {
    margin: 0;
    padding: 0;
}

.breadcrumbs ul li:last-child::after {
    content: "";
    width: 0;
    height: 0;
}

.breadcrumbs ul li a {
    position: relative;
}

.breadcrumbs ul li a:hover {
    color: #000;
}

.breadcrumbs ul li a::after {
    position: absolute;
    left: 0;
    content: '';
    width: 100%;
    height: 1px;
    background: #000;
    bottom: -1px;
    transform: scale(0, 1);
    transform-origin: left top;
    transition: transform 0.3s;
}

.breadcrumbs ul li a:hover::after {
    transform: scale(1, 1);
    height: 1px;
}

/** パンくずリストここまで **/


/** 下層トップ MV **/
.sec_lower_mv {
    width: 100%;
    height: 55svh;
    max-height: 500px;
    padding: .5rem 0 0;
    position: relative;
    /**display: flex;
    align-items: flex-end;
    flex-wrap: nowrap;**/
}

.sec_lower_mv_inner {
    width: 60%;
    max-width: calc(1200px - 30%);
    margin: 0 auto;
    padding-left: 30%;
    position: absolute;
    bottom: 2.5rem;
    left: 0;
    right: 0;
}

.sec_lower_mv h1 {
    font-family: "Cormorant", serif;
    font-weight: 400;
    font-style: normal;
    font-size: clamp(4.375rem, 2.714rem + 3.46vw, 5.313rem);
    color: #b2a267;
    margin: 0 0 .2em;
    line-height: 1;
    display: block;
}

.sec_lower_mv h1 span {
    font-family: "Noto Serif JP", serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    font-size: clamp(0.938rem, 0.827rem + 0.23vw, 1rem);
    color: #000;
    display: block;
    background: url(/img/kazari_h2_span.svg) no-repeat left;
    background-size: contain;
    padding-left: 2.25em;
    margin-bottom: .5em;
}

.sec_lower_mv h2 {
    font-family: "Noto Serif JP", serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
    font-size: 16px;
    line-height: 1.75;
}

/** 下層トップ MV ここまで**/


/** 下層 中段メニュー **/

.sec_lower_menu {
    padding: clamp(3rem, -0.556rem + 7.41vw, 5rem) 0 7rem;
    /** -767 3r-5r**/
}

.sec_lower_menu h3.menu_title {
    font-family: "Cormorant", serif;
    font-weight: 400;
    font-style: normal;
    font-size: 66px;
    line-height: 1.25;
    color: #b2a267;
    margin: 0;
    display: block;
    text-align: center;
    padding: 0 0 .5em;
    margin: 0 auto .75em;
    border-bottom: solid 1px #000;
}

.sec_lower_menu h3.menu_title span {
    font-family: "Noto Serif JP", serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    font-size: clamp(0.938rem, 0.827rem + 0.23vw, 1rem);
    color: #000;
    display: block;

}

.sec_lower_menu h3.menu_title span::before {
    content: "";
    background: url(/img/kazari_h2_span.svg) no-repeat left;
    background-size: contain;
    width: 2em;
    height: 1em;
    display: inline-block;
}

.sec_lower_menu ul {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    line-height: 1.5;
    gap: 1em;
}

.sec_lower_menu ul li {
    padding-left: 1em;
    display: flex;
    color: #999;
}

.sec_lower_menu ul li::before {
    font-family: "Material Icons";
    content: '\e5df';
    width: 1em;
    height: 1em;
    display: inline-block;
    margin-left: -1em;
    transition: all .3s ease-in-out;
}

.sec_lower_menu ul li a:hover {
    color: #b2a267;
}

.sec_lower_menu ul li:hover:before {
    color: #b2a267;
}

.lower_menu_inc+.lower_menu_inc {
    margin-top: 5rem;
}

/**.sec_lower_menu ul li a {
    position: relative;
}

.sec_lower_menu ul li a::after {
    position: absolute;
    left: 0;
    content: '';
    width: 100%;
    height: 1px;
    background: #000;
    bottom: -3px;
    transform: scale(0, 1);
    transform-origin: left top;
    transition: transform 0.3s;
}

.sec_lower_menu ul li a:hover::after {
    transform: scale(1, 1);
    height: 1px;
}**/

/** 下層 中段メニューここまで **/


/** 下層 ドクター **/
/**.sec_lower_dr {
    padding: 0 0 6rem;
}**/

.sec_lower_dr .lower_insert_3m {
    background: url(/img/img_lower_insert.webp) no-repeat center;
    background-size: cover;
    height: clamp(12rem, -2.222rem + 29.63vw, 20rem);
    /** -767 12r-20r**/
    max-height: 300px;
    margin-bottom: clamp(11rem, 7.444rem + 7.41vw, 13rem);
    /** -767 11r-13r**/
    position: relative;
}

.sec_lower_dr .lower_insert_3m img {
    position: absolute;
    bottom: -5rem;
}

.sec_lower_dr .lower_dr_area {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    width: 90%;
    max-width: 670px;
    margin: auto;
    gap: 2rem 3rem;
    padding: 0 0 6rem;
}

.sec_lower_dr .lower_dr_area .dr_img {
    width: 18rem;
    max-width: 300px;
}

.sec_lower_dr .lower_dr_area .dr_career {
    width: calc(100% - 18rem - 3rem);
}

.sec_lower_dr .lower_dr_area .dr_career span {
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 15px;
    line-height: 3;
}

.sec_lower_dr .lower_dr_area .dr_career h2 {
    font-family: "Zen Old Mincho", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 35px;
    line-height: 1.5;
    margin-bottom: 1.5rem;
}

.sec_lower_dr .lower_dr_area .dr_career h2 span {
    font-family: "Zen Old Mincho", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 23px;
    display: block;
    line-height: 1.5;
}

.sec_lower_dr .lower_dr_area .dr_career dl {
    font-size: 16px;
    display: flex;
    flex-wrap: wrap;
    line-height: 1.5;
    gap: .5em 0;
    border-top: solid 1px #000;
    padding-top: 1em;
}

.sec_lower_dr .lower_dr_area .dr_career dl dt {
    width: 5em;
}

.sec_lower_dr .lower_dr_area .dr_career dl dd {
    width: calc(100% - 5em);
}

/** 下層 ドクターここまで **/


/** 下層　詳細fv **/
.sec_lower_detail {
    width: 100%;
    padding: .5rem 0 4rem;
}

.sec_lower_detail.pre {
    width: 100%;
    padding: .5rem 0 0;
}

.sec_lower_detail_inner {
    width: 100%;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    position: relative;
    margin: 2rem auto 3rem;
    min-height: 20rem;
}

.sec_lower_detail_inner.mb0 {
    margin: 2rem auto 0;
}

.sec_lower_detail_inner .fv_txt_area {
    width: 90%;
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    flex-wrap: nowrap;
    margin: 0 auto;
}

.sec_lower_detail_inner .fv_txt_area .fv_left {
    width: 55%;
}

.sec_lower_detail h1 {
    /**font-family: "Zen Old Mincho", sans-serif;
    font-weight: 400;
    font-style: normal;**/
    font-size: clamp(2.375rem, 1.046rem + 2.77vw, 3.125rem);
    /** 767- 38-50**/
    color: #b2a267;
    margin: 0 0 .5em;
    line-height: 1;
    display: block;
    font-family: "hiragino-mincho-pron", sans-serif;
    font-weight: 300;
    font-style: normal;
    font-feature-settings: "palt";
}

.sec_lower_detail h1 span {
    font-family: "Noto Serif JP", serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    font-size: clamp(0.938rem, 0.827rem + 0.23vw, 1rem);
    color: #000;
    display: block;
    background: url(/img/kazari_h2_span.svg) no-repeat left;
    background-size: contain;
    padding-left: 2.25em;
    margin-bottom: .5em;
}

.sec_lower_detail h2 {
    font-family: "Zen Old Mincho", sans-serif;
    font-weight: 600;
    font-style: normal;
    font-size: clamp(1.188rem, 0.966rem + 0.46vw, 1.313rem);
    /** 767- 19-21**/
    line-height: 1.5;
    margin-bottom: 2em;
}

.sec_lower_detail h3 {
    /**font-family: "Noto Serif JP", serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;**/
    line-height: 1.75;
    font-size: 16px;
}

.sec_lower_detail h3 span {
    font-weight: 600;
}

.sec_lower_detail_inner .fv_right {
    width: 40%;
    position: absolute;
    right: 0;
    top: 0;
    display: flex;
    flex-wrap: wrap;
    height: 20rem;
    border-radius: 20rem 0 0 20rem;
}

/** 下層　詳細fvここまで **/


/** 下層　詳細説明 **/
section.sec_lower_explan {
    padding: 4rem 0;
}

section.sec_lower_explan p {
    margin-bottom: 1rem;
}

section.sec_lower_explan p span {
    font-weight: 600;
}

section.sec_lower_explan p:last-child {
    margin-bottom: 0;
}

section.sec_lower_explan ul {
    display: flex;
    flex-direction: column;
    margin-bottom: 1.5rem;
}

section.sec_lower_explan ul li {
    list-style-type: disc;
    margin-left: 2rem;
}

section.sec_lower_explan ul li a {
    background-image: linear-gradient(90deg, #000, #000);
    background-position: right bottom;
    background-repeat: no-repeat;
    background-size: 100% 1px;
    padding-bottom: 3px;
    transition: background-size .3s;
}


section.sec_lower_explan ul li a:hover {
    background-size: 0 1px;
    color: #b2a267;
}

.inner .explan_area {
    margin-bottom: 4em;
}

.inner .explan_area:last-child {
    margin-bottom: 0;
}

.sec_lower_explan.lower h3.lower_title_h3 {
    padding: 0 0 .5rem 2.25em;
    border-bottom: solid 1px #000;
    margin-bottom: 1.25em;
}

.sec_conclusion {
    width: 90%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 3.5rem 0 2rem;
}

.sec_conclusion h3 {
    font-family: "Noto Serif JP", serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-style: normal;
    font-size: clamp(1.125rem, 0.792rem + 0.69vw, 1.313rem);
    /** -767 18-21**/
    margin-bottom: .75em;
    background: url(/img/kazari_lower_h3.svg) no-repeat top .1em left;
    background-size: 1.5em;
    padding-left: 2.25em;
    line-height: 1.5;
}

.conclusion_inner {
    display: flex;
    flex-wrap: wrap;
}

.conclusion_inner .conclusion_txt {
    width: 100%;
    margin-bottom: 1rem;
}

.conclusion_inner .conclusion_txt span {
    font-weight: 600;
}

.conclusion_inner .conclusion_sign {
    width: 100%;
    display: flex;
    justify-content: flex-end;
    margin-top: 1rem;
}

.conclusion_inner .conclusion_sign img {
    width: 20%;
    min-width: 150px;
    max-width: 200px;
}

section.sec_lower_explan .note_area {
    background-color: #fff;
    max-width: 1200px;
    margin: 0 auto 5rem;
    border-radius: 7px;
    border: solid 1px #000000;

}

.conclusion_inner .conclusion_txt ul {
    display: flex;
    flex-direction: column;
    margin: 1rem 0;
}

.conclusion_inner .conclusion_txt ul li {
    list-style-type: disc;
    margin-left: 2rem;
}

.conclusion_inner .conclusion_txt p+p {
    margin-top: 1rem;
}

section.sec_lower_explan .note_area h3 {
    font-weight: 500;
    font-size: clamp(0.875rem, 0.739rem + 0.54vw, 1rem);
    /** -767 14-16**/
    width: calc(100% - 2rem);
    background-color: #224a69;
    border-radius: 6px 6px 0 0;
    color: #fff;
    padding: .25rem 1rem;
    margin-bottom: 1rem;
}

section.sec_lower_explan .note_area p {
    width: calc(100% - 3rem);
    padding: 0 1.5rem 1.5rem;
}

.inner .inner_menu {
    background-color: #fff;
    width: calc(100% - 4rem - 6px);
    margin-bottom: 4rem;
    border-radius: 8px;
    border: double 3px #b2a267;
    padding: 1.5rem 2rem;
}

.inner .inner_menu h2 {
    font-size: 19px;
    border-bottom: solid 1px #000;
    margin-bottom: 1.5rem;
    padding-bottom: .25rem;
}

.inner .inner_menu h2::before {
    content: "■";
    color: #b2a267;
    padding-right: .5rem;
}

.inner .inner_menu p {}

.inner .inner_menu ol {
    padding: 0 2rem 1rem;
    margin: 0;
}

.inner .inner_menu ol li {
    padding-left: .5rem;
}

.inner .inner_menu ol li a {
    background-image: linear-gradient(90deg, #000, #000);
    background-position: left bottom;
    background-repeat: no-repeat;
    background-size: 0 1px;
    padding-bottom: 4px;
    transition: background-size .3s;
}

.inner .inner_menu ol li a:hover {
    background-size: 100% 1px;
}

/** 下層　詳細説明ここまで **/


/** 下層　fv 画像なし h1 **/
.sec_lower_detail.no_fv h1 {
    font-family: "Cormorant", serif;
    font-size: clamp(2.813rem, 0.428rem + 9.54vw, 5rem);
    /** -767 45-80**/
    margin: 0 0 .6em;
    line-height: 1;
}

.sec_lower_detail h1 span {
    margin-bottom: 1em;
}

.sec_lower_detail h1 span:nth-child(2) {
    font-family: "hiragino-mincho-pron", sans-serif;
    font-weight: 300;
    font-style: normal;
    font-size: .6em;
    background: none;
    padding-left: 0;
    margin-bottom: 0;
    display: inline-block;
    color: #b2a267;
}

/** 下層　fv 画像なし h1ここまで **/

/** 404 **/
.sec_lower_detail h3.not404 {
    margin-bottom: 3rem;
}

/***** 下層ここまで　*****/

/***** 名称変更のお知らせ *****/
.announce {
    line-height: 1.5;
    font-size: clamp(0.813rem, 0.676rem + 0.54vw, 0.938rem);
    /**-767 13-15**/
}

.mv_h .announce {
    width: fit-content;
    max-width: 80%;
    margin: auto;
    text-align: center;
}

.lower .announce {
    width: fit-content;
    max-width: calc(90% - 4rem);
    margin: 2rem auto -2rem;
    text-align: center;
    border: solid 1px #555;
    padding: .75rem 2rem;
}

.sec_lower_detail_inner .announce {
    margin: -1rem 0 3rem;
    color: #224a69;
}

/***** 名称変更のお知らせここまで *****/


@media screen and (min-width: 1201px) {}

@media screen and (max-width: 920px) {}

@media screen and (max-width: 860px) {

    /**860　ヘッダー**/
    header .header_left,
    header .header_right {
        display: none;
    }

    header {
        padding: 1em 0 1em 1em;
        background: none;
        background-color: rgba(255, 255, 255, 0.9);
        width: calc(100% - 1em);
        height: calc(60px - 2em);
    }

    header .sp_hamburger {
        display: flex;
        flex-wrap: nowrap;
        width: 100%;
        justify-content: space-between;
        align-items: center;
    }

    header .sp_hamburger .header_logo {
        width: 180px;
        min-width: 180px;
        margin: 0;
    }

    header .sp_hamburger .sp_right {
        display: flex;
        flex-wrap: nowrap;
        justify-content: flex-end;
        margin: 0 5% 0 0;
    }

    header .sp_hamburger .sp_right .header-icon {
        display: flex;
        flex-wrap: nowrap;
        gap: 0 .5rem;
        margin-right: clamp(1.25rem, 0.596rem + 2.61vw, 2rem);
    }

    header .sp_hamburger .sp_right .header-icon a {
        width: 1.5rem;
        min-width: 30px;
    }

    header ul.pc_menu {
        display: none;
    }

    header nav {
        display: block;
    }

    header nav ul.sp_menu {
        display: none;
        list-style: none;
        width: 100%;
        height: calc(100vh - 2rem);
        position: absolute;
        background-color: #fff;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        align-content: center;
        z-index: 100;
        margin: 0;
        overflow-y: auto;
        font-size: 18px;
        padding: 1rem 0;
    }

    header nav ul.sp_menu li,
    header ul li:nth-child(4) {
        /*margin-right: 0;*/
        margin: 0;
        padding: 1rem;
        text-align: center;
        text-decoration: none;
        width: calc(100% - 2rem);
        max-width: calc(100% - 2rem);
    }

    header ul li:nth-child(4)::before,
    header ul li:nth-child(4)::after,
    header ul li:nth-child(5)::before {
        content: none;
    }

    header nav ul.sp_menu li a {
        padding: 1rem;
        margin: -1rem;
        font-size: 18px;
        color: #464646;
        display: block;
    }

    header nav ul.sp_menu li:first-child {
        border-bottom: solid 1px #ccc;
        margin: 0 auto 1rem;
    }

    header nav ul.sp_menu li:first-child img {
        width: 50%;
        max-width: 250px;
    }

    header ul li::after {
        content: none;
    }

    header ul li a::after {
        position: static;
        left: 0;
        content: '';
        width: 100%;
        height: 1.5px;
        background: none;
        bottom: -3px;
        transform: scale(0, 1);
        transform-origin: left top;
        transition: transform 0.3s;
    }

    header ul li a:hover::after {
        transform: scale(1, 1);
    }

    .hamburger {
        position: absolute;
        right: 1rem;
        cursor: pointer;
        width: 6%;
        height: calc(100% - 2em);
        z-index: 200;
    }

    .hamburger span {
        transition: all .3s;
        position: absolute;
        height: 2px;
        background-color: #333;
        width: 100%;
        z-index: 10;
    }

    .hamburger span:nth-of-type(1) {
        top: 8px;
    }

    .hamburger span:nth-of-type(2) {
        top: 18px;
    }

    .hamburger span:nth-of-type(3) {
        top: 28px;
    }

    .hamburger.open span:nth-of-type(1) {
        top: 8px;
        transform: translateY(6px) rotate(-42deg);
    }

    .hamburger.open span:nth-of-type(2) {
        opacity: 0;
    }

    .hamburger.open span:nth-of-type(3) {
        top: 20px;
        transform: translateY(-6px) rotate(42deg);
    }

    /**860　ヘッダーここまで**/

    /**860 フローティングボタン**/
    #floating {
        display: none;
        width: 100%;
        margin: 0 auto;
        position: fixed;
        bottom: 0;
        z-index: 10;
        left: 0;
    }

    #floating .floating_area {
        display: flex;
        flex-wrap: nowrap;
        gap: 0 1px;
        line-height: 1.25;
    }

    #floating .floating_area>div {
        border-radius: 5px 5px 0 0;
        flex-grow: 1;
        display: flex;
        justify-content: center;
        align-items: center;
        color: #fff;
        font-size: 13px;
        font-family: "Noto Sans JP", sans-serif;
        font-optical-sizing: auto;
        font-weight: 600;
    }

    #floating .floating_area a {
        color: #fff;
        padding: 0.5rem 0;
        width: 100%;
        height: calc(100% - 1rem);
        display: flex;
        justify-content: center;
        align-items: center;
        flex-wrap: wrap;

    }

    #floating .floating_area .rese_tel {
        background: url(/img/ico_tel_w.svg) no-repeat left 1.5em top 1.25em;
        background-size: 1.25em;
        background-color: #b2a267;
        /**width: 12.5rem;**/
        padding-left: 1.25rem;
    }

    #floating .floating_area .rese_tel a span {
        display: block;
        font-weight: normal;
        font-size: .8em;
        line-height: 1;
        width: 100%;
        text-align: center;
    }

    #floating .floating_area .rese_web {
        background: url(/img/ico_mobile.svg) no-repeat left 1em center;
        background-size: 1em;
        background-color: #b2a267;
        width: 8rem;
    }

    #floating .floating_area .rese_web a {
        padding: 0.5rem 0 0.5rem 1.5em;
    }

    #floating .floating_area #pagetop {
        background-color: #685d43;
        position: relative;
        padding: 1em 0 0;
        width: 5rem;
    }

    #floating .floating_area #pagetop::before {
        font-family: "Material Icons";
        content: '\e316';
        width: 1em;
        height: 1em;
        display: inline-block;
        position: absolute;
        top: .25rem;
        left: 0;
        right: 0;
        margin: auto;
        font-size: 18px;
    }


    /**860 フローティングボタンここまで**/

    /**860 ハンバーガーボタンのデザイン **/
    .drawer__button {
        position: relative;
        width: 2rem;
        height: 2rem;
        background-color: transparent;
        border: none;
        cursor: pointer;
        z-index: 999;
    }

    /**860 ハンバーガーボタン内の線 **/
    .drawer__button>span {
        display: block;
        position: absolute;
        top: 50%;
        left: 50%;
        width: 2rem;
        height: 2px;
        background-color: black;
        transform: translateX(-50%);
    }

    .drawer__button>span:first-child {
        transform: translate(-50%, calc(-50% - 0.5rem));
        transition: transform 0.3s ease;
    }

    .drawer__button>span:nth-child(2) {
        transform: translate(-50%, calc(-50% + 0.2rem));
        transition: opacity 0.3s ease;
    }

    .drawer__button>span:last-child {
        transform: translate(-50%, calc(-50% + 0.9rem));
        transition: transform 0.3s ease;
    }

    /**860 展開時のデザイン **/
    .drawer__button.active>span:first-child {
        transform: translate(-50%, -50%) rotate(-45deg);
    }

    .drawer__button.active>span:nth-child(2) {
        opacity: 0;
    }

    .drawer__button.active>span:last-child {
        transform: translate(-50%, -50%) rotate(45deg);
    }


    /**860 メニューのデザイン **/
    .drawer__nav {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100vh;
        background-color: rgba(0, 0, 0, 0.5);
        transition: opacity 0.3s ease;
        opacity: 0;
        visibility: hidden;
    }

    .drawer__nav.active {
        opacity: 1;
        visibility: visible;
    }

    .drawer__nav__inner {
        position: relative;
        width: 80%;
        height: calc(100% - 2rem);
        background-color: white;
        padding: 1rem 1.5rem;
        margin: 0 0 0 auto;
        overflow: scroll;
        transform: translateX(100%);
        transition: transform 0.3s ease;
    }

    .drawer__nav.active .drawer__nav__inner {
        transform: translateX(0);
    }

    .drawer__nav__menu {
        list-style: none;
        padding: 0 0 1em;
        display: flex;
        flex-wrap: wrap;
        border-bottom: solid 1px #ccc;
    }

    .drawer__nav__link {
        display: block;
        text-decoration: none;
        padding: clamp(0.75rem, 0.315rem + 1.74vw, 1.25rem) 0;
        /*.75r-1.25r*/
        font-size: clamp(0.938rem, 0.666rem + 1.09vw, 1.25rem);
        /*15-20*/
    }

    /**860 ハンバーガーメニュー展開時、背景を固定 */
    body.active {
        height: 100%;
        overflow: hidden;
    }

    header ul li.drawer__nav__item {
        width: 50%;
        text-align: center;
        padding: 0;
    }

    li.drawer__nav__item:first-child {
        border-bottom: solid 1px #ccc;
        margin: 0 0 1rem;
        padding: 0;
        width: 100%;
    }

    li.drawer__nav__item:first-child img {
        width: 50%;
        max-width: 250px;
        margin: 0 auto;
        display: block;
    }

    li.drawer__nav__item img {
        width: 1rem;
        height: auto;
        margin: 0 0 0 0.5rem;
        vertical-align: baseline;
    }

    .sns_area {
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-around;
        padding: 2.5em 0;
        gap: 0;
        border-bottom: solid 1px #ccc;
        margin: 0 0 2em;
    }

    .sns_area .web_btn {
        width: 65%;
        height: 3em;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
    }

    .sns_area .web_btn a {
        width: 100%;
        background-color: #b2a267;
        color: #fff;
        display: flex;
        justify-content: center;
        align-items: center;
        border-radius: 4px;
    }

    .sns_area .web_btn a::before {
        content: '';
        display: inline-block;
        width: 1em;
        height: 1em;
        background: url(../img/ico_header_arrow.png) no-repeat left center;
        background-size: contain;
        margin-right: .5em;
    }

    .sns_area .sns_btn {
        width: 10%;
    }

    .sns_area .sns_btn a img {
        width: 100%;
        height: 100%;
        max-height: 3em;
    }

    header ul.policy {}

    header ul.policy li.drawer__nav__item {
        width: 100%;
        text-align: left;
        padding: 0;
    }

    header ul.policy li.drawer__nav__item:first-child {
        border-bottom: none;
        margin: 0;
    }

    header ul.policy a {
        display: block;
        text-decoration: none;
        padding: 0;
        font-size: clamp(0.938rem, 0.666rem + 1.09vw, 1.25rem);
        line-height: 2em;
    }

    /**860 問合せ**/
    .sec_contact {
        padding: 3.5rem 2em clamp(2.5rem, 1.41rem + 4.36vw, 3.5rem);
        /** -767 2.5r-3.5r**/
        text-align: center;
        display: block;
        width: calc(100% - 4em);
    }

    /**.sec_contact p {
        text-align: left;
        line-height: 1.5;
    }**/

    /**860 問合せここまで**/


    /** 860 フッター **/

    footer {
        padding: 3rem 0 0;
    }

    footer .content {
        margin: 0 auto 1rem;
    }

    footer .content .f-left {
        width: 100%;
        margin: 0 0 2rem;
    }

    footer .content .f-left p img {
        width: 85%;
        max-width: 470px;
        margin: auto;
    }

    footer .content .f-left p:first-child {
        margin: 0 auto 2em;
    }

    footer .content .f-left p:nth-child(4) a {
        width: 50%;
        margin: auto;
    }

    footer .content .f-left ul {
        justify-content: center;
        gap: 2em;
    }

    footer .content .f-left ul li {
        width: 2.5em;
        height: 2.5em;
    }

    footer .content .f-right {
        width: 100%;
        gap: 1rem;
        margin: 0 auto;
        padding-bottom: 1.5em;
        border-bottom: solid 1px #ccc;
    }

    footer .content .f-right ul {
        gap: .5em 1em;
    }

    footer .content .f-right ul:nth-child(1),
    footer .content .f-right ul:nth-child(2) {
        border-bottom: solid 1px #ccc;
        padding-bottom: 1em;
    }

    footer .content ul.f-right li {
        width: 50%;
        text-align: center;
    }

    footer .content .f-right ul li a {
        justify-content: center;
        position: static;
    }

    footer .content ul.f-right li:last-child {
        margin: 1rem 0 0;
    }

    footer .content ul.f-right li:last-child a {
        width: 100%;
        margin: auto;
    }

    footer .content p {
        text-align: center;
    }

    footer .content ul.f-bottom li {
        width: 100%;
    }

    footer p.copy {
        padding: 0.5rem 0 clamp(4.5rem, 3.196rem + 5.22vw, 6rem);
        /*-860 4.5r-6r*/
    }

    /**860 フッターここまで**/
}

@media(min-width: 768px) {
    a[href^="tel:"] {
        pointer-events: none;
    }
}

@media screen and (max-width: 767px) {
    body {
        font-size: clamp(0.875rem, 0.807rem + 0.27vw, 0.938rem);
        /*-767 14-15*/
        line-height: 1.75;
    }

    .sp_none {
        display: none;
    }

    .pc_none {
        display: block;
    }

    h2.cat_title {
        font-size: clamp(3.438rem, 2.416rem + 4.09vw, 4.375rem);
        /*-767 55-70*/
    }

    .sec_treatment h2.cat_title {
        font-size: clamp(3.25rem, 2.024rem + 4.9vw, 4.375rem);
        /*-767 52-70*/
    }

    /** 767 パンくずリスト **/
    .breadcrumbs {
        justify-content: flex-start;
        background-color: rgba(255, 255, 255, 0.3);
        height: 2em;
        border-radius: 3px;
        padding: 0 1em;
    }

    /** 767 パンくずリストここまで **/


    /**767 アクセス**/
    .sec_contact p {
        font-size: clamp(0.875rem, 0.739rem + 0.54vw, 1rem);
        /*-767 14-16*/
        text-align: left;
        display: inline-block;
    }

    .sec_contact ul.con_btn li {
        width: 90%;
    }

    .c_sales ul {
        display: flex;
        flex-wrap: nowrap;
        font-size: clamp(0.875rem, 0.739rem + 0.54vw, 1rem);
        /*-767 14-16*/
        margin: auto;
        justify-content: center;
    }

    .c_sales ul li {
        display: flex;
        justify-content: center;
        width: calc(100% / 8);
    }

    .c_sales p {
        font-size: 13px;
        text-align: right;
    }

    /**767 アクセスここまで**/


    /***** 767 下層 *****/

    /** h3 **/
    .lower h3.lower_title_h3 {
        font-size: clamp(1.063rem, 0.994rem + 0.27vw, 1.125rem);
        /** -767 17-18**/
    }

    .sec_lower_explan p+h3.lower_title_h3 {
        margin-top: clamp(2rem, 0.91rem + 4.36vw, 3rem);
        /** -767 2r-3r**/
    }

    /** h3ここまで **/

    /** h4 **/
    .sec_lower_explan h4.lower_title_h4 {
        margin-bottom: .35rem;
    }

    /** h4ここまで **/

    /** 767 下層 MV **/
    .sec_lower_mv {
        height: 60svh;
        padding: .5rem 0 0;
    }

    .sec_lower_mv_inner {
        width: calc(90% - clamp(2rem, -3.45rem + 21.8vw, 7rem));
        /** -767 2r-7r**/
        padding-left: clamp(2rem, -3.45rem + 21.8vw, 7rem);
        /** -767 2r-7r**/
        bottom: clamp(1.5rem, 0.955rem + 2.18vw, 2rem);
        /** -767 1.5r-2r**/
    }

    .sec_lower_mv h1 {
        font-size: clamp(3.75rem, 3.069rem + 2.72vw, 4.375rem);
        /** -767 60-70**/
    }

    .sec_lower_mv .mv_txt_area h1 {
        font-size: clamp(3.438rem, 2.416rem + 4.09vw, 4.375rem);
        /** -767 55-70**/
    }

    .sec_lower_mv h2 {
        font-size: 15px;
        line-height: clamp(1.5rem, 1.228rem + 1.09vw, 1.75rem);
        /** -767 1.5r-1.75r**/
    }

    /** 767 下層 MVここまで **/

    /** 767 下層 中段メニュー **/
    .sec_lower_menu {
        padding: clamp(3rem, 1.91rem + 4.36vw, 4rem) 0 clamp(4rem, 2.91rem + 4.36vw, 5rem);
        /** -767 3r-4r**/
        /** -767 4r-5r**/
    }

    .sec_lower_menu h3.menu_title {
        font-size: clamp(2.75rem, 1.251rem + 5.99vw, 4.125rem);
        /** -767 44-66**/
    }

    .sec_lower_menu h3.menu_title span {
        font-size: clamp(0.813rem, 0.676rem + 0.54vw, 0.938rem);
        /** -767 13-15**/
    }

    .sec_lower_menu ul {
        grid-template-columns: repeat(2, 1fr);
        gap: 1.5em 1em;
    }

    .sec_lower_menu ul li br {
        display: none;
    }

    /** 767 下層 中段メニューここまで **/


    /** 767 下層 ドクター **/
    .sec_lower_dr .lower_dr_area {
        padding: 0 0 clamp(4rem, 1.82rem + 8.72vw, 6rem);
        /*-767 4r-6r*/
    }

    .sec_lower_dr .lower_insert_3m {
        height: clamp(9rem, 5.73rem + 13.08vw, 12rem);
        /*-767 9r-12r*/
        margin-bottom: clamp(5rem, 1.73rem + 13.08vw, 8rem);
        /*-767 5r-8r*/
    }

    .sec_lower_dr .lower_insert_3m img {
        bottom: clamp(-2rem, 1.27rem + -13.08vw, -5rem);
        /*-767 -2r--5r*/
    }

    .sec_lower_dr .lower_dr_area .dr_career {
        width: 100%;
    }

    .sec_lower_dr .lower_dr_area .dr_img {
        width: 100%;
        max-width: 767px;
        order: 1;
    }

    .sec_lower_dr .lower_dr_area .dr_img img {
        height: clamp(10rem, -5.259rem + 61.04vw, 24rem);
        /*-767 10r-24r*/
        max-height: 480px;
        object-fit: cover;
    }

    .sec_lower_dr .lower_dr_area .dr_career span {
        font-size: clamp(0.875rem, 0.807rem + 0.27vw, 0.938rem);
        /*-767 14-15*/
        line-height: 2;
    }

    .sec_lower_dr .lower_dr_area .dr_career h2 {
        font-size: clamp(1.75rem, 1.273rem + 1.91vw, 2.188rem);
        /*-767 28-35*/
        margin-bottom: 1rem;
    }

    .sec_lower_dr .lower_dr_area .dr_career h2 span {
        font-size: clamp(1.125rem, 0.784rem + 1.36vw, 1.438rem);
        /*-767 18-23*/
    }

    .sec_lower_dr .lower_dr_area .dr_career dl {
        font-size: clamp(0.875rem, 0.739rem + 0.54vw, 1rem);
        /*-767 14-16*/
    }

    /** 767 下層 ドクターここまで **/


    /** 767 下層　詳細fv **/
    .sec_lower_detail {
        padding: .5rem 0 clamp(3rem, 1.91rem + 4.36vw, 4rem);
        /*-767 3r-4r*/
    }

    .sec_lower_detail.pre {
        padding: .5rem 0 0;
    }

    .sec_lower_detail h1 {
        font-size: clamp(2rem, 0.774rem + 4.9vw, 3.125rem);
        /**font-size: clamp(2.813rem, 1.532rem + 4.1vw, 3.5rem);**/
        /*-767 45-56*/
        margin: 0 0 .35em;
    }

    .sec_lower_detail h1 span {
        font-size: clamp(0.813rem, 0.676rem + 0.54vw, 0.938rem);
        /*-767 13-15*/
        margin-bottom: 1em;
    }

    .sec_lower_detail h2 {
        font-size: clamp(1rem, 0.659rem + 1.36vw, 1.313rem);
        /*-767 16-21*/
        line-height: 1.5;
        margin-bottom: 1.5em;
        letter-spacing: -1px;
    }

    .sec_lower_detail h3 {
        font-size: clamp(0.906rem, 0.804rem + 0.41vw, 1rem);
        /*-767 14.5-16*/
        font-family: "Noto Sans JP", sans-serif;
        font-optical-sizing: auto;
        font-weight: 400;
        font-style: normal;
        line-height: 1.75;
    }

    .sec_lower_detail_inner {
        flex-wrap: wrap;
        justify-content: flex-end;
        margin: clamp(1.5rem, 0.955rem + 2.18vw, 2rem) auto clamp(2rem, 0.91rem + 4.36vw, 3rem);
        /*-767 1.5r-2r*/
        /*-767 2r-3r*/
    }

    .sec_lower_detail_inner .fv_txt_area {
        margin: 0 auto clamp(1.5rem, 0.955rem + 2.18vw, 2rem);
        /*-767 1.5r-2r*/
    }

    .sec_lower_detail_inner .fv_txt_area .fv_left {
        width: 100%;
    }

    .sec_lower_detail_inner .fv_right {
        width: 95%;
        height: clamp(8rem, 2.55rem + 21.8vw, 13rem);
        /*-767 8r-13r*/
        position: sticky;
        border-radius: 8px 0 0 8px;
    }

    .sec_lower_detail .cause .headline {
        font-size: clamp(0.875rem, 0.807rem + 0.27vw, 0.938rem);
        /*-767 14-15*/
    }

    /** 767 下層　詳細fvここまで **/

    /** 767 下層　詳細説明 **/
    section.sec_lower_explan {
        padding: clamp(3rem, 1.91rem + 4.36vw, 4rem) 0;
    }

    .sec_conclusion {
        padding: clamp(2.5rem, 1.955rem + 2.18vw, 3rem) 0 2rem;
        /*-767 2.5r-3r*/
    }

    .sec_conclusion h3 {
        margin-bottom: 1em;
    }

    .conclusion_inner .conclusion_img {
        width: 100%;
        display: flex;
        justify-content: flex-end;
    }

    .conclusion_inner .conclusion_img img {
        width: 30%;
        max-width: 150px;
    }

    .inner .inner_menu {
        width: calc(100% - 3rem - 6px);
        padding: 1rem 1.5rem;
    }

    .inner .inner_menu h2 {
        font-size: clamp(0.938rem, 0.733rem + 0.82vw, 1.125rem);
        /** -767 15-18 **/
        margin-bottom: 1rem;
    }

    .inner .inner_menu ol,
    .inner .inner_menu ul {
        padding: 0 0 1rem 1.25rem;
        margin-bottom: 0;
    }

    .inner .inner_menu ol li,
    .inner .inner_menu ul li {
        padding-left: 0;
        margin-left: 0;
    }

    .conclusion_inner .conclusion_txt ul li {
        margin-left: 1.5rem;
    }

    section.sec_lower_explan ul li {
        margin-left: 1.5rem;
    }

    /** 767 下層　詳細説明ここまで **/

    /** 767 下層　fv 画像なし h1 **/
    .sec_lower_detail h1 {
        margin: .25em 0 .6em;
    }

    /** 767 下層　fv 画像なし h1ここまで **/

    /***** 767 下層ここまで *****/


    /***** 767 名称変更のお知らせ *****/

    .mv_h .announce {
        text-align: left;
        margin: 1.5rem auto -1rem;
        padding-left: 1rem;
    }

    .mv_h .announce::before {
        content: "※";
        margin-left: -1rem;
        margin-right: .25rem;
    }

    .mv_h .announce br {
        display: none;
    }

    .lower .announce {
        margin: 1rem auto -1rem;
    }

    .lower .announce br {
        display: none;
    }

    .sec_lower_detail_inner .announce {
        margin: 0 0 clamp(2rem, 0.91rem + 4.36vw, 3rem);
        /** -767 2r-3r**/
    }

    /***** 767 名称変更のお知らせここまで *****/
}


@media screen and (max-width: 599px) {}