@charset "UTF-8";



:root {

    --container-multiple: 1;

}



html {font-size: 10px;}

html * {font-size: 1.3rem;}

body {padding: 0 0 6.8rem;}



html.scroll-prevent {

    position: fixed;

    z-index: -1;

    width: 100%;

    height: 100%;

    overflow: hidden;

}



@media screen and (min-width:640px) {

    :root { --container-multiple: 2;}

    html {font-size: 10.5px;}

}

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

    :root { --container-multiple: 3;}

}



.pc {

    display: none;

}



/*--------------------------------------------------------------------------

----------------------------------------------------------------------------

----------------------------------------------------------------------------

汎用

----------------------------------------------------------------------------

----------------------------------------------------------------------------

--------------------------------------------------------------------------*/



/*----------------------------------------

コンテナ

----------------------------------------*/

.container.scr-width {

    width: 100%;

}

.container.l-width {

    width: calc((100% - 3rem * var(--container-multiple)));

}

.container.m-width {

    width: calc((100% - 5rem * var(--container-multiple)));

}



/*--------------------------------------------------------------------------

コンポーネント

--------------------------------------------------------------------------*/

/*----------------------------------------

見出し（ページトップ）

----------------------------------------*/

.cm__headline-pagetop {

    margin: 5rem auto;

    width: 20.4rem;

}

.cm__headline-pagetop .headline-pagetop_txt-jp {

    font-size: 1.4rem;

    line-height: 2.1rem;

    margin-bottom: 1rem;

}

.cm__headline-pagetop .headline-pagetop_txt-en {

    font-size: 2.75rem;

    line-height: 4.3rem;

    margin-bottom: 2.7rem;

}

/*----------------------------------------

見出し（小）

----------------------------------------*/

.cm__headline-s span {

    font-size: 1.5rem;

    line-height: 2.1rem;

    letter-spacing: 0;

    padding-bottom: .5rem;

}



/*----------------------------------------

見出し（大）

----------------------------------------*/

.cm__headline-l {

    margin-bottom: 1.5rem;

}

.cm__headline-l .headline-l_txt-en {

    font-size: 1.2rem;

    line-height: 1.7rem;

    letter-spacing: .1em;

}

.cm__headline-l .headline-l_txt-jp {

    font-size: 1.7rem;

    line-height: 2.5rem;

    letter-spacing: 0;

    border-width: .15rem;

}



/*----------------------------------------

ボタン

----------------------------------------*/

.cm__link-btn {

    display: block;

    width: 14.4rem;

    height: 4rem;

    padding: 1rem;

    border-radius: 2.5rem;

}

.cm__link-btn span {

    font-size: 1.5rem;

    line-height: 2rem;

}

@media screen and (min-width:640px) and (max-width:1024px) {

    .cm__link-btn .arrow:after {

        width: 1.1800rem;

    }

}

/*----------------------------------------

ロゴ

----------------------------------------*/

.cm__logo .logo_img {

    width: 3.3rem;

    height: 3.3rem;

}

.cm__logo .logo_img + .logo_txt-warp {

    margin-left: 1.5rem;

}

.cm__logo .logo_txt-en {

    font-size: 1rem;

    line-height: 1.5rem;

}

.cm__logo .logo_txt-jp {

    font-size: 1.5rem;

    line-height: 2.1rem;

}



/*----------------------------------------

アドレス

----------------------------------------*/

.cm__address .address_ttl {

    margin-bottom: .375rem;

}

.cm__address .address_num {

    font-size: 2rem;

}

.cm__address .address_domicile {

    margin-top: .5rem;

}

.cm__address .address_ttl_txt .address_fax {

    margin-left: 1.6rem;

}



/*----------------------------------------

診察時間

----------------------------------------*/

.cm__timetable {

    max-width: 50rem;

    margin: 0 auto;

    padding: 0 1.2rem;

    border-radius: 1.5rem;

}

/* 2025/03修正 */

.rehabili .container .cm__facility-info_wrap-left .cm__timetable,

.support .container .cm__facility-info_wrap-left .cm__timetable {

    margin-bottom: 2.1rem;

}

.cm__timetable .timetable_table tr td,

.cm__timetable .timetable_table tr th {

    height: 5rem;

}

.cm__timetable .timetable_table tr th * {

    font-size: 1.2rem;

}

.cm__timetable .timetable_table tr th .table-hl_end {

    font-size: 1rem;

}

.cm__timetable .timetable_table thead tr th:not(:first-child) {

    font-size: 1rem;

}

.cm__timetable .timetable_table tbody tr td {

    font-size: 1rem;

    padding: 0 .5rem;

}

.cm__timetable .timetable_table tbody tr td.non {

    font-size: 1.3rem;

}



/*----------------------------------------

インフォメーション

----------------------------------------*/

.cm__facility-info {

    padding: 2rem 0 3.5rem;

}

.cm__facility-info_wrap-left {

    max-width: 50rem;

    margin: 0 auto 2.1rem;

}

.cm__facility-info .cm__logo {

    margin-bottom: 1.5rem;

}

.cm__facility-info .cm__address {

    margin-bottom: 2rem;

}

.cm__facility-info .cm__g-map {

    width: 100%;

    height: 35rem;

}



/*--------------------------------------------------------------------------

常時表示物

--------------------------------------------------------------------------*/

.fix__tel-booking {

    position: fixed;

    bottom: 0;

    right: 0;

    width: 100%;

    height: 6.8rem;

    background: var(--color-white);

    overflow: hidden;

    box-shadow: .3rem 0 .6rem rgba(0,0,0, .16);

    z-index: 9010;

}

.fix__tel-booking .tel-booking_btn {

    background: var(--color-green);

    /*padding: 1.1rem 1.7rem;*/

    padding: 1.1rem 1.1rem;

    border-radius: .3rem;

}

.fix__tel-booking .tel-booking_btn_ttl {

    color: var(--color-white);

    /*font-size: 1.5rem;*/

    font-size: 1.4rem;

    line-height: 1;

    /*letter-spacing: .2em;*/

    /*margin-left: 1.5rem;*/

    margin-left: 1.3rem;

    font-weight: var(--fw-medium);

}

.fix__tel-booking .tel-booking_txt {

    margin-left: 2rem;

}

.fix__tel-booking .tel-booking_txt_close {

    font-size: 1.1rem;

    margin-bottom: .5rem;

}

.fix__tel-booking .tel-booking_txt_tel {

    font-size: 1.5rem;

}



/*--------------------------------------------------------------------------

----------------------------------------------------------------------------

----------------------------------------------------------------------------

インクルード

----------------------------------------------------------------------------

----------------------------------------------------------------------------

--------------------------------------------------------------------------*/



/*--------------------------------------------------------------------------

ヘッダー

--------------------------------------------------------------------------*/

#nav-header {

    padding: 1.6rem 2rem;

}



#nav-header .header_nav {

    position: fixed;

    top: 0;

    right: 0;

    width: 100vw;

    height: calc(100vh - 6.8rem);

    background: var(--color-green);

    visibility: hidden;

    opacity: 0;

    pointer-events: none;

    transform: translateX(3rem);

    transition: visibility 3s ease, opacity .3s ease, transform .5s ease;

    z-index: 9000;

}

#nav-header .header_nav .nav-list {

    width: 100%;

    height: 100%;

    padding: 6.8rem 0 6.8rem 3rem;

    box-sizing: border-box;

    flex-direction: column;

    overflow-y: scroll;

}

#nav-header .header_nav .nav-list .nav-item:after {

    content: "";

    display: block;

    position: relative;

    width: 100%;

    height: 1px;

    background: var(--color-white);

    opacity: .25;

}

/* 2025/03/11追加 */

#nav-header .header_nav .nav-list .nav-item.introduction .pc {

    display: none;

}

#nav-header .header_nav .nav-list .nav-item.introduction .accordion .Label {

    transition: .5s ease;

    cursor: pointer;

    list-style: none;
    
}

#nav-header .header_nav .nav-list .nav-item.introduction .accordion .Label::-webkit-details-marker {

    display: none; /* クローム/サファリ向け */

}

#nav-header .header_nav .nav-list .nav-item.introduction .accordion .Label:hover {

    opacity: .6;
    
}

#nav-header .header_nav .nav-list .nav-item.introduction .accordion .Label a {

    position: relative;

    pointer-events: none;

}

#nav-header .header_nav .nav-list .nav-item.introduction .accordion .Label a::before {

    content: "";

    width: .6rem;

    height: .6rem;

    border-top: .1rem solid var(--color-white);

    border-right: .1rem solid var(--color-white);

    transform: translateY(-50%) rotate(135deg);

    position: absolute;
    
    top: 50%;
    
    right: 5.2rem;

    transition: .5s ease;

}

#nav-header .header_nav .nav-list .nav-item.introduction .accordion[open] .Label a::before {

    transform: translateY(-50%) rotate(-45deg);

}

#nav-header .header_nav .nav-list .nav-item a {

    display: block;

    color: var(--color-white);

    font-size: 1.5rem;

    padding: 1.75rem 1.5rem;

}  

#nav-header .header_nav .nav-list .nav-item .accordion .sub-menu {

    height: 0;
    
    opacity: 0;
    
    overflow: hidden;
    
    transition: .5s ease;

    margin-bottom: 2rem;

}

#nav-header .header_nav .nav-list .nav-item .accordion[open] .sub-menu {

    height: auto;

    opacity: 1;

}

#nav-header .header_nav .nav-list .nav-item .accordion .sub-menu .sub-menu-item a {

    position: relative;

    padding-left: 2.8rem;

}

#nav-header .header_nav .nav-list .nav-item .accordion .sub-menu .sub-menu-item a::before {

    background: var(--color-white);

    content: "";

    width: .5rem;

    height: .1rem;

    position: absolute;

    top: 50%;

    left: 1.3rem;

    transform: translateY(-50%);
    
}

/* ここまで */


.open-hum #nav-header .header_nav {

    visibility: visible;

    opacity: 1;

    pointer-events: auto;

    transform: translateX(0);

}



#nav-header .hum-toggle {

    position: fixed;

    top: 0;

    right: 0;

    width: 6.8rem;

    height: 6.8rem;

    z-index: 9010;

    background: var(--color-white);

    border-radius: 0 0 0 var(--br-5);

    cursor: pointer;

}

#nav-header .hum-toggle div {

    position: absolute;

    left: 2.2rem;

    width: 2.4rem;

    height: 1px;

    background: var(--color-black);

    transition: .3s cubic-bezier(0.39, 0.575, 0.565, 1);

}

#nav-header .hum-toggle div:nth-child(1) {

    top: 2.4rem;

}

#nav-header .hum-toggle div:nth-child(2) {

    top: 3.4rem;

}

#nav-header .hum-toggle div:nth-child(3) {

    top: 4.4rem;

}

.open-hum #nav-header .hum-toggle div:nth-child(1) {

    top: 3.4rem;

    transform: rotate(225deg);

}

.open-hum #nav-header .hum-toggle div:nth-child(2) {

    opacity: 0;

}

.open-hum #nav-header .hum-toggle div:nth-child(3) {

    top: 3.4rem;

    transform: rotate(-225deg);

}



#nav-header.scroll .hum-toggle {

    box-shadow: .1rem 0 .6rem rgba(0,0,0, .16);

}



/*--------------------------------------------------------------------------

フッター

--------------------------------------------------------------------------*/

#nav-footer .copyright {

    font-size: 1rem;

    padding: 0 0 2rem;

    background: var(--color-ivory);

}



:not(.cm__facility-info) + #nav-footer .copyright {

    padding: 2rem 0;

}



/*--------------------------------------------------------------------------

----------------------------------------------------------------------------

----------------------------------------------------------------------------

ページ

----------------------------------------------------------------------------

----------------------------------------------------------------------------

--------------------------------------------------------------------------*/



/*--------------------------------------------------------------------------

フロントページ

--------------------------------------------------------------------------*/

#page__top .cm__link-btn {

    margin: 0 auto;

}



/*----------------------------------------

ヒーローヘッダー

----------------------------------------*/

#page__top .sec__hero-header .hero-header_wrap {

    z-index: 1;

}

#page__top .sec__hero-header .hero-header_wrap figure {

    min-height: 25vh;

}

#page__top .sec__hero-header .hero-header_wrap .hero-header-message {

    font-size: 1.5rem;

    top: 55%;

    left: 2.5rem;

}



/*----------------------------------------

インフォメーション

----------------------------------------*/

#page__top .info-warp {

    background-color: var(--color-ivory);

    padding: 3.2rem 0;

}

#page__top .info-warp .container {

    flex-direction: column;

}

#page__top .info-warp .info-left-warp {

    display: flex;

    flex-direction: column-reverse;

}

#page__top .info-warp .info-ttl {

    font-size: 1.6rem;

    line-height: 2.4rem;

    margin-bottom: 2rem;

    text-align: center;

}



#page__top .sec__news {

    width: 100%;

    max-width: 55rem;

    margin: 0 auto;

}

#page__top .sec__news .news-list .news-entry {

    margin-bottom: 1.6rem;

}

#page__top .sec__news .news-list .news-entry .entry-date {

    margin-right: 1.5rem;

}

#page__top .sec__news .news-list .news-entry .entry-txt {

    width: calc(100% - 7.6rem - 3rem);

}

#page__top .sec__news .news-list .news-entry .entry-txt .entry-cate-list .cate-item {

    font-size: 1rem;

    font-weight: var(--fw-medium);

    min-width: 6.4rem;

    padding: .2rem 1.2rem;

}

#page__top .sec__news .more-link span {

    font-size: 1rem;

}



/*診察時間*/

#page__top .sec__timetable {

    margin-top: var(--mrg-25);

    margin-bottom: var(--mrg-50);

}



/*担当スケジュール*/

#page__top .sec__schedule .schedule_doctor {

    width: 100%;

    max-width: 31.95rem;

    margin: 0 auto;

}



/* 求人募集 */
/* 2024年10月30日追加 */
.sec__recruit {

    margin-top: var(--mrg-25);

}

.sec__recruit .recruit_text_qr {

    gap: 1.5rem;

    justify-content: center;

    flex-direction: column;

}

@media screen and (max-width: 400px) {
    .sec__recruit .info-ttl br,

    .sec__recruit .recruit_text_qr p br{

        display: block;

    }

    .sec__recruit .recruit_text_qr p {

        text-align: center;

        line-height: 1.6;

    }

}




/*----------------------------------------

当院について&診療案内

----------------------------------------*/

#page__top .sec__about {

    max-width: 76.8rem;

    margin: 0 auto;

}

#page__top .sec__about.our-hospital .container {

    flex-direction: column;

}

#page__top .sec__about.guidance .container {

    flex-direction: column-reverse;

}



#page__top .sec__about .about_img {

    margin: 0 calc(-2.5rem * var(--container-multiple));

}

/*#page__top .sec__about .about_img img {

    border-radius: var(--br-4);

}*/

/*#page__top .sec__about .about_img figure img {

    min-height: 60vh;

}*/

/*@media screen and (min-width: 450px) {

    #page__top .sec__about .about_img figure img {

        min-height: 65vh;

    }

}*/



#page__top .sec__about .about_txt {

    margin: 2rem calc(-2.5rem * var(--container-multiple)) 7rem;

    padding: 0 calc(1.5rem * var(--container-multiple));

}

#page__top .sec__about .about_txt .about_summary {

    line-height: 2.5rem;

    margin-bottom: 1.8rem;

}



/*----------------------------------------

キャッチ

----------------------------------------*/

#page__top .sec__catch {

    margin-bottom: 15.2rem;

    position: relative;

    z-index: 1;

}

#page__top .sec__catch .catch_img {

    height: auto;

}

#page__top .sec__catch .catch_txt {

    font-size: 1.2rem;

    line-height: 1.8rem;

    padding: 1.7rem 1.5rem;

    position: absolute;

    bottom: -5.2rem;

    left: 2.7rem;

    z-index: 2;

    border-radius: var(--br-4);

}



/*----------------------------------------

施設紹介

----------------------------------------*/

#page__top .sec__intro {

    margin-bottom: var(--mrg-100);

}

#page__top .sec__intro .intro-list .intro-item {

    border-radius: var(--br-4);

    flex-direction: column-reverse;

    margin-bottom: 1rem;

}

#page__top .sec__intro .intro-list .intro-item .item_txt {

    flex-direction: row;

    justify-content: space-between;

    height: 5.6rem;

    padding: 0 1rem;

}

#page__top .sec__intro .intro-list .intro-item .item_txt .item_ttl {

    font-size: 1.3rem;

    line-height: 1.8rem;

}

#page__top .sec__intro .intro-list .intro-item .item_txt .cm__link-btn {

    margin: 0;

}

#page__top .sec__intro .intro-list .intro-item .item_img {

    width: 100%;

    height: clamp(17.2rem,45.867vw,34.4rem);

    height: max(17.2rem,min(45.867vw,34.4rem));

}



/*----------------------------------------

医師紹介

----------------------------------------*/

#page__top .sec__greeting {

    margin-bottom: var(--mrg-100);

}

#page__top .sec__greeting .container {

    width: calc(100% - 6rem);

}

#page__top .sec__greeting .greeting_img {

    width: 100%;

    height: clamp(19.2rem,51.2vw,38.4rem);

    height: max(19.2rem,min(51.2vw,38.4rem));

    margin-bottom: 2rem;

}

#page__top .sec__greeting .greeting_img figure {

    border-radius: var(--br-4);

}







/*--------------------------------------------------------------------------

当院について

--------------------------------------------------------------------------*/



/*----------------------------------------

わたしたちのおもい

----------------------------------------*/

#page__our-hosp .sec__thought {

    flex-direction: column;

}

#page__our-hosp .sec__thought:nth-child(odd) {

    flex-direction: column-reverse;

}

#page__our-hosp .sec__thought .thought__txt_summary {

    font-size: 1.3rem;

    line-height: 2rem;

    margin: 1rem 0 8rem;

}

#page__our-hosp .sec__thought .thought__img {

    height: clamp(18.8rem,50.133vw,37.2rem);

    height: max(18.8rem,min(50.133vw,37.2rem));

    margin: 2rem calc(-2.5rem * var(--container-multiple)) 0;

}



#page__our-hosp .sec__thought .thought__catch {

    display: inline-flex;

    flex-direction: column;

    align-items: flex-start;

}

#page__our-hosp .sec__thought .thought__catch span {

    font-size: 1.2rem;

}

#page__our-hosp .sec__thought .thought__catch span:before {

    width: 100%;

    height: 2px;

    bottom: 0;

}

#page__our-hosp .sec__thought .thought__catch[data-scroll] span:before {

    transform: scale(0,1);

    transform-origin: left;

}

#page__our-hosp .sec__thought .thought__catch[data-scroll="in"] span:before {

    transform: scale(1,1);

}



#page__our-hosp .sec__thought .thought__txt .thought__txt_ttl {

    margin-top: 2rem;

}







/*----------------------------------------

当院３つの特徴

----------------------------------------*/

#page__our-hosp .sec__feature .feature_txt {

    flex-direction: column;

}

#page__our-hosp .sec__feature .feature_txt .feature_txt_ttl {

    font-size: 1.5rem;

    margin-bottom: .5rem;

}

#page__our-hosp .sec__feature .feature_txt .feature_txt_summary {

    line-height: 2rem;

    margin-bottom: 2rem;

}

#page__our-hosp .sec__feature .feature-list {

    justify-content: center;

    margin-bottom: 11.6rem;

}

#page__our-hosp .sec__feature .feature-list .feature-item {

    width: calc((100% - 3.6rem) / 3);

    max-width: 9.6rem;

    height: 9.6rem;

    border-radius: var(--br-10);

}

#page__our-hosp .sec__feature .feature-list .feature-item:not(:last-child) {

    margin-right: 1.8rem;

}

#page__our-hosp .sec__feature .feature-list .feature-item .feature-item_icon {

    width: 4.8rem;

    height: 4.6rem;

    margin: 0 auto 1rem;

}

#page__our-hosp .sec__feature .feature-list .feature-item .feature-item_catch {

    line-height: 1;

}

#page__our-hosp .sec__feature .feature-list .feature-item:nth-child(1) .feature-item_icon img {

    width: 4.2rem;

    height: 4.4rem;

}

#page__our-hosp .sec__feature .feature-list .feature-item:nth-child(2) .feature-item_icon img {

    width: 4.8rem;

    height: 4.5rem;

}

#page__our-hosp .sec__feature .feature-list .feature-item:nth-child(3) .feature-item_icon img {

    width: 3.8rem;

    height: 4.6rem;

}



#page__our-hosp .flavor-img .flavor-img-list .flavor-img-item {

    width: calc(100% / 3);

}



/* 2024年8月追加 */
/*----------------------------------------

かかりつけ医

----------------------------------------*/

#page__our-hosp .sec__doctor .doctor__txt .doctor__txt_list {

    margin-bottom: 8rem;

}

#page__our-hosp .sec__doctor .doctor__txt .doctor__txt_list li {

    font-size: 1.3rem;

    line-height: 2rem;

}






/*--------------------------------------------------------------------------

診療案内

--------------------------------------------------------------------------*/



/*----------------------------------------

診療科

----------------------------------------*/

/* 2025/03修正 */

#page__guidance {

    margin-bottom: 6rem;

}

#page__guidance .sec__subjects {

    flex-direction: column;

    margin-bottom: var(--mrg-70);

}

#page__guidance .sec__subjects:nth-child(even) {

    flex-direction: column-reverse;

}

#page__guidance .sec__subjects:last-child {

    margin-bottom: 0;

}

#page__guidance .sec__subjects .subjects_img {

    margin: 0 calc(-1.5rem * var(--container-multiple));

}

#page__guidance .sec__subjects .subjects_img figure {

    max-width: 48rem;

    margin: 0 auto;

}

#page__guidance .sec__subjects .subjects_txt .subjects_ttl {

    margin-top: 2rem; /* 2025/03修正 */

}

#page__guidance .sec__subjects .subjects_txt .subjects_summary {

    line-height: 2rem;

    margin-top: 1rem;

}

/* 2025/03修正 */

#page__guidance .sec__subjects .subjects_txt .cm__pdf {

    margin-top: 1rem;

    line-height: 2rem;

}

#page__guidance .sec__subjects .subjects_txt .cm__pdf ul li {

    line-height: 2rem;

}







/*--------------------------------------------------------------------------

施設紹介

--------------------------------------------------------------------------*/

#page__introduction .sec__odanaika,

#page__introduction .sec__rehabili {

    margin-bottom: var(--mrg-70);

}



/*----------------------------------------

縦見出し

----------------------------------------*/

#page__introduction .vertical_heading {

    display: block;

}

#page__introduction .vertical_heading .thought__catch {

    margin: 0 0 2rem calc(1rem * var(--container-multiple));

}

#page__introduction .vertical_heading .thought__catch span {

    font-size: 1.5rem;

    line-height: 1.3rem;

    padding-bottom: .5rem;

}

#page__introduction .vertical_heading .thought__catch span:before {

    width: 100%;

    height: 2px;

    bottom: 0;

}

#page__introduction .vertical_heading .thought__catch[data-scroll] span:before {

    transform: scale(0,1);

    transform-origin: left;

}

#page__introduction .vertical_heading .thought__catch[data-scroll="in"] span:before {

    transform: scale(1,1);

}

#page__introduction .vertical_heading .intro_img {

    width: 100%;

    height: auto;

    margin-bottom: var(--mrg-35);

}



/*----------------------------------------

イントロ

----------------------------------------*/

#page__introduction .intro_txt_container {

    margin: 0 3rem;

}

#page__introduction .intro_txt .intro_txt_img {

    height: clamp(15.2rem,40.533vw,30.4rem);

    height: max(15.2rem,min(40.533vw,30.4rem));

}

#page__introduction .intro_txt .intro_txt_img figure {

    border-radius: var(--br-4) var(--br-4) 0 0;

}

#page__introduction .intro_txt .intro_txt_box {

    padding: 2rem 2rem 3rem 2rem;

    border-radius: 0 0 var(--br-4) var(--br-4);

}

#page__introduction .intro_txt .intro_txt_catch {

    line-height: 1.8rem;

    margin-bottom: .75rem;

}

#page__introduction .intro_txt .intro_txt_detail {

    font-size: 1.2rem;

    line-height: 1.8rem;

}



/*----------------------------------------

イントロ2

----------------------------------------*/

#page__introduction .intro_detail {

    width: calc((100% - 3rem * var(--container-multiple)));

    margin: 0 auto 3.5rem;

}



/*----------------------------------------

施設詳細

----------------------------------------*/

#page__introduction .sec__facility-detail .facility-detail-list .facility-detail-item {

    max-width: 64rem;

    margin: 0 auto;

}

#page__introduction .sec__facility-detail .facility-detail-list .facility-detail-item .facility-detail_img figure {

    border-radius: var(--br-4);

}

#page__introduction .sec__facility-detail .facility-detail-list .facility-detail-item:not(:last-child) {

    margin-bottom: var(--mrg-35);

}

#page__introduction .sec__facility-detail .facility-detail-list .facility-detail-item .facility-detail_txt-ttl {

    font-size: 1.5rem;

    margin-top: 1rem;

}

#page__introduction .sec__facility-detail .facility-detail-list .facility-detail-item .facility-detail_txt-summary {

    font-size: 1.2rem;

}

#page__introduction .sec__facility-detail .facility-detail-list .facility-detail-item .facility-detail_txt {

    margin-bottom: 5rem;

}

#page__introduction .sec__facility-detail .facility-detail-list .facility-detail-item .facility-detail_txt .facility-detail_txt-summary {

    font-size: 1.3rem;

}



/*----------------------------------------

流れ

----------------------------------------*/

#page__introduction .sec__facility-detail .facility-detail-flow {

    justify-content: center;

    margin-bottom: 5rem;

}

#page__introduction .sec__facility-detail .facility-detail-flow .facility-detail-flow_inner {

    margin-left: 1.129rem;

    padding-left: 3.1rem;

    background-size: .4rem .8rem;

}

#page__introduction .sec__facility-detail .facility-detail-flow .facility-detail-flow_inner:after {

    bottom: -.15rem;

    left: -1.129rem;

    width: 2.653rem;

    height: 1.531rem;

}

#page__introduction .sec__facility-detail .facility-detail-flow .facility-detail-flow_ttl {

    font-size: 1.6rem;

    margin-bottom: 1.6rem;

}

#page__introduction .sec__facility-detail .facility-detail-flow .facility-detail-flow_list .facility-detail-frow_item {

    margin-bottom: 1rem;

}

#page__introduction .sec__facility-detail .facility-detail-flow .facility-detail-flow_list .facility-detail-frow_item dt {

    color: var(--color-green);

    font-size: 1.5rem;

}

#page__introduction .sec__facility-detail .facility-detail-flow .facility-detail-flow_list .facility-detail-frow_item dd {

    line-height: 2rem;

}



/*----------------------------------------

主な設備

----------------------------------------*/

#page__introduction .sec__main-facility {

    margin-top: var(--mrg-35);

}

#page__introduction .sec__main-facility .main-facility-ttl {

    margin-bottom: 2rem;

}

#page__introduction .sec__main-facility .main-facility-list .main-facility-item {

    width: calc((100% - 1rem)/2);

    margin: 0 1rem var(--mrg-35) 0;

}

#page__introduction .sec__main-facility .main-facility-list .main-facility-item:nth-child(2n) {

    margin-right: 0;

}

#page__introduction .sec__main-facility .main-facility-list .main-facility-item:last-child {

    margin-bottom: 0;

}

#page__introduction .sec__main-facility .main-facility-list .main-facility-item .main-facility_img {

    height: clamp(11.4rem,30.4vw,22.8rem);

    height: max(11.4rem,min(30.4vw,22.8rem));

}

#page__introduction .sec__main-facility .main-facility-list .main-facility-item .main-facility_img figure {

    border-radius: var(--br-4);

}

#page__introduction .sec__main-facility .main-facility-list .main-facility-item .main-facility_name {

    font-size: 1.5rem;

    line-height: 3.5rem;

}

#page__introduction .sec__main-facility .main-facility-list .main-facility-item .main-facility_txt {

    font-size: 1.2rem;

    line-height: 2rem;

}



/*----------------------------------------

腸内視鏡検査機

----------------------------------------*/

#page__introduction .sec__colonoscopy {

    padding: 4.9rem 0 5.6rem;

}

#page__introduction .sec__colonoscopy .colonoscopy_inner {

    flex-direction: column;

}

#page__introduction .sec__colonoscopy .colonoscopy_txt {

    margin-bottom: 5.2rem;

}

#page__introduction .sec__colonoscopy .colonoscopy_txt h3 {

    font-size: 1.5rem;

    line-height: 3.5rem;

    margin-bottom: 1rem;

}

#page__introduction .sec__colonoscopy .colonoscopy_txt .colonoscopy_txt_text {

    font-size: 1.2rem;

    line-height: 2rem;

    margin-bottom: 3rem;

}

#page__introduction .sec__colonoscopy .colonoscopy_txt .colonoscopy_txt_img figure {

    border-radius: var(--br-4);

}



#page__introduction .sec__colonoscopy .colonoscopy_ai {

    flex-direction: column;

}

#page__introduction .sec__colonoscopy .colonoscopy_ai .colonoscopy_ai_ttl {

    display: flex;

    align-items: center;

    margin-bottom: 1.5rem;

}

#page__introduction .sec__colonoscopy .colonoscopy_ai .colonoscopy_ai_ttl img {

    /*width: 3.3rem;

    height: 3.3rem;*/

    width: 5rem;

    height: auto;

}

#page__introduction .sec__colonoscopy .colonoscopy_ai .colonoscopy_ai_ttl span {

    font-size: 1.5rem;

    line-height: 3.5rem;

    margin-left: .5rem;

}

#page__introduction .sec__colonoscopy .colonoscopy_ai .colonoscopy_ai_intro {

    width: max(29rem,min(90.625vw,43.5rem));

    height: max(41.2rem,min(128.75vw,61.8rem));

    margin: 0 auto;

}

#page__introduction .sec__colonoscopy .colonoscopy_ai .colonoscopy_ai_intro .colonoscopy_ai_img {

    top: 12%;

    left: 0;

    margin: 0 1rem;

}

#page__introduction .sec__colonoscopy .colonoscopy_ai .colonoscopy_ai_intro .colonoscopy_ai_txt {

    top: 0;

    left: 0;

    width: max(29rem,min(90.625vw,43.5rem));

    height: max(41.2rem,min(128.75vw,61.8rem));

}







/*--------------------------------------------------------------------------

医師紹介

--------------------------------------------------------------------------*/

/*----------------------------------------

共通

----------------------------------------*/

#page__greeting dt {

    font-size: 1.3rem;

    line-height: 2rem;

}

#page__greeting dd span,#page__greeting dd {

    font-size: 1.3rem;

    line-height: 2rem;

}



/*----------------------------------------

院長あいさつ

----------------------------------------*/

#page__greeting .sec__greeting .container {

    display: block;

}

#page__greeting .sec__greeting .greeting_img {

    width: clamp(20.4rem,54.4vw,25.5rem);

    width: max(20.4rem,min(54.4vw,25.5rem));

    height: clamp(28.7rem,76.533vw,35.875rem);

    height: max(28.7rem,min(76.533vw,35.875rem));

    margin: 0 auto 3.5rem;

}

#page__greeting .sec__greeting .greeting_img .greeting_img_person {

    padding: .8rem .8rem 1.6rem 2.2rem;

    top: 2.1rem;

    left: -2.4rem;

}

#page__greeting .sec__greeting .greeting_img .greeting_img_person .person-title {

    font-size: 1.2rem;

    letter-spacing: .5rem;

}

#page__greeting .sec__greeting .greeting_img .greeting_img_person .person-name {

    font-size: 1.4rem;

    margin: 1.7rem .4rem 0 0;

    letter-spacing: .5em;

}



/*#page__greeting .sec__greeting .greeting_txt .cm__headline-s {

    font-size: 1.5rem;

}

#page__greeting .sec__greeting .greeting_txt .greeting_txt_catch {

    font-size: 1.5rem;

    margin-top: 2rem;

}

#page__greeting .sec__greeting .greeting_txt .greeting_txt_summary {

    font-size: 1.3rem;

    line-height: 2.5rem;

    margin: 1.5rem 0 2rem;

}*/

#page__greeting .sec__greeting .greeting_txt_main {

    width: calc((100% - 3rem * var(--container-multiple)));

    margin: 5rem auto 0;

}

#page__greeting .sec__greeting .greeting_txt_main .cm__headline-s {

    margin-bottom: var(--mrg-25);

}

#page__greeting .sec__greeting .greeting_txt_main .cm__headline-s span {

    font-size: 1.5rem;

    font-weight: var(--fw-medium);

    color: var(--color-green);

}

#page__greeting .sec__greeting .greeting_txt_main .greeting_txt_catch {

    font-size: 1.5rem;

    font-weight: var(--fw-medium);

    margin-bottom: 1.5rem;

}

#page__greeting .sec__greeting .greeting_txt_main .greeting_txt_summary {

    font-size: 1.3rem;

}





#page__greeting .sec__greeting .greeting_txt .greeting_txt_bg-logo {

    width: 15.6rem;

}



#page__greeting .sec__other-docs {

    margin: var(--mrg-100) 0;

}

#page__greeting .sec__other-docs .other-docs-list {

    flex-direction: column;

}

#page__greeting .sec__other-docs .other-docs-list .other-docs-item {

    width: 22.5rem;

    margin: 0 auto var(--mrg-50);

}

#page__greeting .sec__other-docs .other-docs-list .other-docs-item .other-docs_name {

    font-size: 1.5rem;

    line-height: 3rem;

    margin: .5rem 0;

}

#page__greeting .sec__other-docs .other-docs-list .other-docs-item .other-docs_bio *:not(h3) {

    line-height: 1.5;

}



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

    #page__greeting .sec__other-docs .other-docs-list {

        flex-direction: row;

    }

    #page__greeting .sec__other-docs .other-docs-list .other-docs-item {

        width: 100%;

    }

    #page__greeting .sec__other-docs .other-docs-list .other-docs-item:not(:nth-child(3n)) {

        margin-right: 1.5rem;

    }

}



#page__greeting .flavor-img .greeting_txt_bg-logo {

    margin: 7.5rem auto;

    opacity: 0.2;

}

#page__greeting .flavor-img .flavor-img-list {

    flex-wrap: wrap;

}

#page__greeting .flavor-img .flavor-img-list .flavor-img-item {

    width: calc(100% / 4);

}

#page__greeting .flavor-img .flavor-img-list .flavor-img-item.rectangle {

    width: 50%;

}

#page__greeting .flavor-img .flavor-img-list .flavor-img-item img {

    object-position: right top;

}

#page__greeting .flavor-img .flavor-img-list .flavor-img-item:nth-child(1) img {

    object-position: 73%;

}

#page__greeting .flavor-img .flavor-img-list .flavor-img-item:nth-child(2) img {

    object-position: 38%;

}







/*--------------------------------------------------------------------------

アクセス

--------------------------------------------------------------------------*/



/*----------------------------------------

案内

----------------------------------------*/

#page__access .sec__access .access_guidance {

    margin: var(--mrg-50) 0 2rem;

    text-align: center;

}

#page__access .sec__access .access_guidance .cm__address {

    margin-top: 1.5rem;

}

#page__access .sec__access .access_guidance .cm__address * {

    text-align: center;

}



#page__access .sec__access .access_map {

    margin: 2rem 0 7rem;

}

#page__access .sec__access .access_map .access_map-img {

    margin: 0 auto;

    width: clamp(32rem,85.333vw,48rem);

    width: max(32rem,min(85.333vw,48rem));

}

#page__access .sec__access .access_map .access_txt {

    font-size: 1.3rem;

    margin: 2rem 0 2rem;

}

#page__access .sec__access .access_map .access_button {

    margin: 0 auto;    

}

#page__access .sec__access .access_map .access_button span {

    font-size: 1.4rem;

}



#page__access .sec__access-around .access_around-list {

    flex-direction: column;

}

#page__access .sec__access-around .access_around-list .access_around-item {

    max-width: 40rem;

    margin: 0 auto var(--mrg-35);

}

#page__access .sec__access-around .access_around-list .access_around-item .access_around-img figure {

    margin: 0 auto;

    width: 26rem;

    border-radius: var(--br-8);

}

#page__access .sec__access-around .access_around-list .access_around-item .access_ttl {

    font-size: 1.5rem;

    margin: .75rem 0 .25rem;

}



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

    #page__access .sec__access-around .access_around-list {

        flex-direction: row;

    }

    #page__access .sec__access-around .access_around-list .access_around-item:not(:nth-child(3n)) {

        margin-right: 1.5rem;

    }

    #page__access .sec__access-around .access_around-list .access_around-item .access_around-img figure {

        width: 100%;

    }

}



#page__access .flavor-img .flavor-img-list .flavor-img-item {

    width: calc(100% / 3);

}







/*--------------------------------------------------------------------------

404

--------------------------------------------------------------------------*/

#page__notfounds {

    padding: var(--mrg-70) 0;

}

#page__notfounds .notfounds_ttl {

    font-size: 1.6rem;

    line-height: 2.7rem;

    margin-bottom: .5rem;

}

#page__notfounds .notfounds_txt {

    margin-bottom: var(--mrg-25);

}

