@charset "utf-8";
* {overflow-anchor: none !important;}
body.admin-bar #header {top: 32px;}
@media screen and (max-width: 782px) {
    body.admin-bar #header {top: 46px;}
    html #wpadminbar{overflow: hidden;}
}
:root {
    --main-color: #004F9C;
    --sub-color: #F5F8FA;
    --line-color: #EDEDED;
    --base-color: #fff;
    --txt-color: #333;
    --contentmxwidth: 1200px;
    --content-w: 92.307%;
    --transition: .3s;
    --key-time: 1.0s;
    --content-title:34px;
    --fs-9l: 28px;
    --fs-8l: 22px;
    --fs-7l: 21px;
    --fs-6l: 20px;
    --fs-5l: 19px;
    --fs-4l: 18px;
    --fs-3l: 17px;
    --fs-ll: 16px;
    --fs-l: 15px;
    --fs-m: 14px;
    --fs-s: 13px;
    --fs-xs: 12px;
    --fs-xxs: 11px;
    --fs-xxxs: 10px;
    --margin: 10px;
    --line-height: 1.6;
    --img-trans-scale: scale(1.2, 1.2);
    --boxshadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.08);
    --boxshadow-m: 0px 3px 20px 0px rgba(0, 43, 85, 0.08);
    --textshadow:0px 3px 6px rgba(0, 0, 0, 0.3);
    --textshadow-m:0px 0px 15px rgba(0, 0, 0, 0.5);
    --icon-arrow-nv-down-w: 10px;
    --icon-arrow-nv-down-h: 6px;
    --icon-arrow-nv-down-bg-ab: left center/100% 100% no-repeat url("../img/common/icon-arrow-nv-down.svg");
    --icon-arrow-nv-down-bg: right center/10px 6px no-repeat url("../img/common/icon-arrow-nv-down.svg");
    --icon-arrow-nv-up-bg-ab: left center/100% 100% no-repeat url("../img/common/icon-arrow-nv-up.svg");
    --icon-arrow-nv-up-bg: right center/10px 6px no-repeat url("../img/common/icon-arrow-nv-up.svg");
}
#wrapper, button, input, optgroup, select, textarea {
    font-size: var(--fs-l);
}
input:focus, select:focus {
    outline: solid 1px var(--line-color);
}
.furuta {
    font-family: futura-pt, sans-serif; /*400,500*/
}
/*見出しサイズ*/
h1 {
    font-size: 12px;
    font-weight: 500;
}
h2 {
    font-size: 28px;
    font-weight: 700;
}
h3 {
    font-size: 24px;
    font-weight: 700;
}
h4 {
    font-size: 18px;
}
/*END 見出しサイズ*/
/*アイコン・ボタン*/
.content-right::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    display: block;
}
.content-left::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    display: block;
}
.icon-maru-nv-right::after {
    content: "";
    display: block;
    width: calc(36px + 10px);
    height: 36px;
    flex-shrink: 0;
    box-sizing: content-box;
    background: left center/36px 100% no-repeat url("../img/common/icon-maru-nv-right.svg");
    transition: var(--transition);
}
@media (hover: hover) {
    .icon-maru-nv-right:hover::after,
    a:hover .icon-maru-nv-right::after{
        background-position: left 5px center;
    }
}
.icon-maru-nv-right-big::after {
    content: "";
    display: block;
    width: calc(50px + 10px);
    height: 50px;
    flex-shrink: 0;
    box-sizing: content-box;
    background: left center/50px 100% no-repeat url("../img/common/icon-maru-nv-right.svg");
    transition: var(--transition);
}
@media (hover: hover) {
    .icon-maru-nv-right-big:hover::after,
    a:hover .icon-maru-nv-right-big::after{
        background-position: left 5px center;
    }
}
.icon-maru-nv-right-left::before {
    content: "";
    display: block;
    width: calc(36px + 10px);
    height: 36px;
    padding-right: 10px;
    flex-shrink: 0;
    box-sizing: content-box;
    background: left center/36px 100% no-repeat url("../img/common/icon-maru-nv-right.svg");
    transition: var(--transition);
}
@media (hover: hover) {
    .icon-maru-nv-right-left:hover::before,
    a:hover .icon-maru-nv-right-left::before{
        background-position: left 5px center;
    }
}
.icon-maru-wh-right::after {
    content: "";
    display: block;
    width: calc(45px + 10px);
    height: 45px;
    flex-shrink: 0;
    box-sizing: content-box;
    background: right center/45px 100% no-repeat url("../img/common/icon-maru-wh-right.svg");
    transition: var(--transition);
}
@media (hover: hover) {
    .icon-maru-wh-right:hover::after,
    a:hover .icon-maru-wh-right::after{
        background-position: right 5px center;
    }
}
.icon-maru-wh-right-left::before {
    content: "";
    display: block;
    width: calc(45px + 10px);
    height: 45px;
    padding-right: 10px;
    flex-shrink: 0;
    box-sizing: content-box;
    background: left center/45px 100% no-repeat url("../img/common/icon-maru-wh-right.svg");
    transition: var(--transition);
}
@media (hover: hover) {
    .icon-maru-wh-right-left:hover::before,
    a:hover .icon-maru-wh-right-left::before{
        background-position: left 5px center;
    }
}
.icon-maru-nv-link::after {
    content: "";
    display: block;
    width: calc(50px + 10px);
    height: 50px;
    flex-shrink: 0;
    box-sizing: content-box;
    background: left center/50px 100% no-repeat url("../img/common/icon-maru-nv-link.svg");
    transition: var(--transition);
}
@media (hover: hover) {
    .icon-maru-nv-link:hover::after,
    a:hover .icon-maru-nv-link::after{
        background-position: left 5px center;
    }
}
.icon-maru-nv-down::before {
    content: "";
    display: block;
    width: 36px;
    height: 36px;
    flex-shrink: 0;
    box-sizing: content-box;
    background: left center/36px 100% no-repeat url("../img/common/icon-maru-nv-down.svg");
    transition: var(--transition);
}
@media (hover: hover) {
    .icon-maru-nv-down:hover::before,
    a:hover .icon-maru-nv-down::before{
        transform: translateY(5px);
    }
}
.icon-arrow-nv-right-left::before {
    content: "";
    display: block;
    width: calc(13px + 10px);
    height: 10px;
    flex-shrink: 0;
    box-sizing: content-box;
    background: left center/13px 100% no-repeat url("../img/common/icon-arrow-nv-right.svg");
    transition: var(--transition);
}
@media (hover: hover) {
    .icon-arrow-nv-right-left:hover::before,
    a:hover .icon-arrow-nv-right-left::before{
        background-position: left 5px center;
    }
}
.icon-arrow-nv-right-center::before {
    content: "";
    display: block;
    width: 13px;
    height: 10px;
    flex-shrink: 0;
    box-sizing: content-box;
    background: center center/13px 100% no-repeat url("../img/common/icon-arrow-nv-right.svg");
    transition: var(--transition);
}
@media (hover: hover) {
    .icon-arrow-nv-right-center:hover::before,
    a:hover .icon-arrow-nv-right-center::before{
        transform: translateX(50%);
    }
}
.icon-arrow-nv-right::after {
    content: "";
    display: block;
    width: calc(13px + 10px);
    height: 10px;
    flex-shrink: 0;
    box-sizing: content-box;
    background: left center/13px 100% no-repeat url("../img/common/icon-arrow-nv-right.svg");
    transition: var(--transition);
}
@media (hover: hover) {
    .icon-arrow-nv-right:hover::after,
    a:hover .icon-arrow-nv-right::after{
        background-position: left 5px center;
    }
}
.tell a {
    border-bottom: solid 1px var(--main-color);
    line-height: 1.2;
    color: var(--main-color);
    font-size: var(--fs-7l);
    font-weight: 700;
}
.tell::before {
    content: "";
    display: block;
    width: calc(19px + 10px);
    height: 24px;
    flex-shrink: 0;
    box-sizing: content-box;
    background: left center/19px 100% no-repeat url("../img/common/icon-tell.svg");
}
/*角丸*/
.btn-raound5{
    border-radius: calc(var(--margin) / 2);
    overflow: hidden;
}
.btn-raound10{
    border-radius: var(--margin);
    overflow: hidden;
}
.btn-raound20{
    border-radius: calc(var(--margin) * 2);
    overflow: hidden;
}
.btn-wh-raound20-shadow{
    border-radius: calc(var(--margin) * 2);
    border: solid 1px var(--line-color);
    box-shadow: var(--boxshadow-m);
    overflow: hidden;
}
.btn-wh-raound40-shadow{
    border-radius: calc(var(--margin) * 4);
    border: solid 1px var(--line-color);
    box-shadow: var(--boxshadow-m);
    overflow: hidden;
}
/*ボックス内画像アップ*/
.img-box-hover{
    overflow: hidden;
    object-fit: cover;
}
.img-box-hover img{
    transition: var(--transition);
}
@media (hover: hover) {
    a:hover .img-box-hover img{
        transform: scale(1.2, 1.2);
    }
}
/*画像アップ*/
.img-hover img{
    transition: var(--transition);
}
@media (hover: hover) {
    a:hover .img-hover img{
        transform: scale(1.2, 1.2);
    }
}
/*END　アイコン・ボタン*/
/*レイアウト*/
.content-w-inner{
    max-width: var(--contentmxwidth);
    width: var(--content-w);
    margin: 0 auto;
    position: relative;
    z-index: 2;
}
.flex-spacebet {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.flex-start {
    display: flex;
    justify-content: start;
    align-items: center;
}
.flex-center {
    display: flex;
    justify-content: center;
    align-items: center;
}
.flex-end {
    display: flex;
    justify-content: flex-end;
    align-items: center;
}
.flex-column {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
/*END　レイアウト*/
/*キーvisual*/
.is-hide:not(.is-show) * {
  pointer-events: none;
}
.keyimg{
  display: block;
  position: absolute;
  z-index: 1;
  opacity: 0;
  transform: rotate(-180deg) ;
  transition: transform var(--key-time) ease 1s, opacity var(--key-time) ease 1s;
}
.keyimg.is-show {
  opacity: 1;
  transform: rotate(0deg) ;
}
@media screen and (max-width: 1200px) {
    :root {
        --contentmxwidth: 100%;
        --content-w: 92.307%;
        --content-title:2.8333cqw;
        --fs-9l: 2.3333cqw;
        --fs-8l: 1.8333cqw;
        --fs-7l: 1.75cqw;
        --fs-6l: 1.6666cqw;
        --fs-5l: 1.5833cqw;
        --fs-4l: 1.5cqw;
        --fs-3l: 1.4166cqw;
        --fs-ll: 1.3333cqw;
        --fs-l: 1.25cqw;
        --fs-m: 1.1666cqw;
        --fs-s: 1.0833cqw;
        --fs-xs: 1cqw;
        --fs-xxs: 0.9166cqw;
        --fs-xxxs: 0.8333cqw;
        --margin: 0.8333cqw;
        --boxshadow: 0px 0.25cqw 0.5cqw 0px rgba(0, 0, 0, 0.08);
        --boxshadow-m: 0px 0.25cqw 0.8333cqw 0px rgba(0, 43, 85, 0.08);
        --textshadow:0px 0.25cqw 0.5cqw rgba(0, 0, 0, 0.3);
        --textshadow-m:0px 0px 1.25cqw rgba(0, 0, 0, 0.5);
        --icon-arrow-nv-down-w: 0.8333cqw;
        --icon-arrow-nv-down-h: 0.5cqw;
        --icon-arrow-nv-down-bg-ab: left center/100% 100% no-repeat url("../img/common/icon-arrow-nv-down.svg");
        --icon-arrow-nv-down-bg: right center/0.8333cqw 0.5cqw no-repeat url("../img/common/icon-arrow-nv-down.svg");
        --icon-arrow-nv-up-bg-ab: left center/100% 100% no-repeat url("../img/common/icon-arrow-nv-up.svg");
        --icon-arrow-nv-up-bg: right center/0.8333cqw 0.5cqw no-repeat url("../img/common/icon-arrow-nv-up.svg");
        --icon-maru-w: 3cqw;
        --icon-maru-h: 3cqw;
        --icon-maru-wh-w: 6.4102cqw;
        --icon-maru-wh-h: 6.4102cqw;
        --icon-maru-nv-big: 4.16cqw;
        --icon-maru-link-w: 4.1666cqw;
        --icon-maru-link-h: 4.1666cqw;
        --icon-arrow-nv-right-w: 1.0833cqw;
        --icon-arrow-nv-right-h: 0.8333cqw;
        --tell-w: 1.5833cqw;
        --tell-h: 2cqw;
    }
    h1 {
        font-size: 1cqw;
    }
    h2 {
        font-size: 2.3333cqw;
    }
    h3 {
        font-size: 2cqw;
    }
    h4 {
        font-size: 1.5cqw;
    }
    .icon-maru-nv-right::after {
        width: calc(var(--icon-maru-w) + var(--margin));
        height: var(--icon-maru-h);
        background-size: var(--icon-maru-w) 100%;
    }
    @media (hover: hover) {
        .icon-maru-nv-right:hover::after {
            background-position: left calc(var(--margin) / 2) center;
        }
    }
    .icon-maru-nv-right-big::after {
        width: calc(var(--icon-maru-nv-big) + var(--margin));
        height: var(--icon-maru-nv-big);
        background-size: var(--icon-maru-nv-big) 100%;
    }
    @media (hover: hover) {
        .icon-maru-nv-right-big:hover::after {
            background-position-big: left calc(var(--margin) / 2) center;
        }
    }
    .icon-maru-nv-right-left::before {
        content: "";
        display: block;
        width: calc(var(--icon-maru-w) + var(--margin));
        height: var(--icon-maru-h);
        padding-right: var(--margin);
        flex-shrink: 0;
        background-size: var(--icon-maru-w) 100%;
        transition: var(--transition);
    }
    @media (hover: hover) {
        .icon-maru-nv-right-left:hover::before {
            background-position: left calc(var(--margin) / 2) center;
        }
    }
    .icon-maru-wh-right::after {
        width: calc(var(--icon-maru-wh-w) + var(--margin));
        height: var(--icon-maru-h);
        background-size: var(--icon-maru-wh-w) 100%;
    }
    @media (hover: hover) {
        .icon-maru-wh-right:hover::after {
            background-position: right calc(var(--margin) / 2) center;
        }
    }
    .icon-maru-wh-right-left::before {
        content: "";
        display: block;
        width: calc(var(--icon-maru-wh-w) + var(--margin));
        height: var(--icon-maru-h);
        padding-right: var(--margin));
        flex-shrink: 0;
        background-size: var(--icon-maru-wh-w) 100%;
        transition: var(--transition);
    }
    @media (hover: hover) {
        .icon-maru-wh-right-left:hover::before {
            background-position: left calc(var(--margin) / 2) center;
        }
    }
    .icon-maru-nv-link::after {
        width: calc(var(--icon-maru-link-w) + var(--margin));
        height: var(--icon-maru-h);
        background-size: var(--icon-maru-link-w) 100%;
    }
    @media (hover: hover) {
        .icon-maru-nv-link:hover::after {
            background-position: left calc(var(--margin) / 2) center;
        }
    }
    .icon-maru-nv-down::before {
        width: var(--icon-maru-w);
        height: var(--icon-maru-h);
        background-size: var(--icon-maru-w) 100%;
    }
    @media (hover: hover) {
        .icon-maru-nv-down:hover::before {
            transform: translateY(calc(var(--margin) / 2));
        }
    }
    .icon-arrow-nv-right-left::before {
        content: "";
        display: block;
        width: calc(var(--icon-arrow-nv-right-w) + var(--margin));
        height: var(--icon-arrow-nv-right-h);
        flex-shrink: 0;
        background-size: var(--icon-arrow-nv-right-w) 100%;
        transition: var(--transition);
    }
    @media (hover: hover) {
        .icon-arrow-nv-right-left:hover::before {
            background-position: left calc(var(--margin) / 2) center;
        }
    }
    .icon-arrow-nv-right-center::before {
        content: "";
        display: block;
        width: var(--icon-arrow-nv-right-w);
        height: var(--icon-arrow-nv-right-h);
        flex-shrink: 0;
        background-size: var(--icon-arrow-nv-right-w) 100%;
        transition: var(--transition);
    }
    .icon-arrow-nv-right::after {
        content: "";
        display: block;
        width: calc(var(--icon-arrow-nv-right-w) + var(--margin));
        height: var(--icon-arrow-nv-right-h);
        flex-shrink: 0;
        background-size: var(--icon-arrow-nv-right-w) 100%;
        transition: var(--transition);
    }
    @media (hover: hover) {
        .icon-arrow-nv-right:hover::after {
            background-position: left calc(var(--margin) / 2) center;
        }
    }
    .tell::before {
        content: "";
        display: block;
        width: calc(var(--tell-w) + var(--margin));
        height: var(--tell-h);
        flex-shrink: 0;
        background-size: var(--tell-w) 100%;
    }
}
@media screen and (max-width: 767px) {
    :root {
        --contentmxwidth: 100%;
        --content-title:7.1794cqw;
        --fs-9l: 6.923cqw;
        --fs-8l: 5.3846cqw;
        --fs-7l: 5.1282cqw;
        --fs-6l: 4.8717cqw;
        --fs-5l: 4.6153cqw;
        --fs-4l: 4.3589cqw;
        --fs-3l: 4.1025cqw;
        --fs-ll: 3.8461cqw;
        --fs-l: 3.5897cqw;
        --fs-m: 3.3333cqw;
        --fs-s: 3.0769cqw;
        --fs-xs: 2.8205cqw;
        --fs-xxs: 2.5641cqw;
        --fs-xxxs: 2.5641cqw;
        --content-w: 92.307%;
        --content-pd: 3.8465%;
        --margin: 2.5641cqw;
        --boxshadow: 0px 0.7692cqw 1.5384cqw 0px rgba(0, 0, 0, 0.08);
        --boxshadow-m: 0px 0.7692cqw 2.564cqw 0px rgba(0, 43, 85, 0.08);
        --textshadow:0px 0px 0px rgba(0, 0, 0, 0.0);
        --textshadow-m:0px 0px 0px rgba(0, 0, 0, 0.0);
        --icon-arrow-nv-down-w: 3.3333cqw;
        --icon-arrow-nv-down-h: 2.0512cqw;
        --icon-arrow-nv-down-bg-ab: left center/100% 100% no-repeat url("../img/common/icon-arrow-nv-down.svg");
        --icon-arrow-nv-down-bg: right center/3.3333cqw 2.0512cqw no-repeat url("../img/common/icon-arrow-nv-down.svg");
        --icon-arrow-nv-up-bg-ab: left center/100% 100% no-repeat url("../img/common/icon-arrow-nv-up.svg");
        --icon-arrow-nv-up-bg: right center/3.3333cqw 2.0512cqw no-repeat url("../img/common/icon-arrow-nv-up.svg");
        --icon-maru-w: 6.4102cqw;
        --icon-maru-h: 6.4102cqw;
        --icon-maru-down-w: 7.6923cqw;
        --icon-maru-down-h: 7.6923cqw;
        --icon-maru-big-w: 8.4615cqw;
        --icon-maru-big-h: 8.4615cqw;
        --icon-maru-wh-w: 6.4102cqw;
        --icon-maru-wh-h: 6.4102cqw;
        --icon-maru-nv-big: 6.51cqw;
        --icon-maru-link-w: 8.4615cqw;
        --icon-maru-link-h: 8.4615cqw;
        --icon-arrow-nv-right-w: 3.6871cqw;
        --icon-arrow-nv-right-h: 2.7666cqw;
        --tell-w: 3.4883cqw;
        --tell-h: 4.4186cqw;
    }
    .icon-maru-nv-right.maru-big::after,
    .icon-maru-wh-right.maru-big::after,
    .icon-maru-nv-right-left.maru-big::before,
    .icon-maru-nv-link.maru-big::after{
        width: calc(var(--icon-maru-big-w) + var(--margin));
        height: var(--icon-maru-big-h);
        background-size: var(--icon-maru-big-w) 100%;
    }
    .icon-maru-nv-down::before {
        width: var(--icon-maru-down-w);
        height: var(--icon-maru-down-h);
        background-size: var(--icon-maru-down-w) 100%;
    }
    @media (hover: hover) {
        .icon-maru-nv-down:hover::before {
            transform: translateY(calc(var(--margin) / 2));
        }
    }
    /*見出しサイズ*/
    h1 {
        font-size: 7.1794cqw;
    }
    h2 {
        font-size: 6.1538cqw;
    }
    h3 {
        font-size: 5.1282cqw;
    }
    h4 {
        font-size: 4.1025cqw;
    }
    /*END 見出しサイズ*/
    .tell a {
        font-size: var(--fs-5l);
    }
    .tell::before {
        width: calc(4.8717cqw + 10px);
        height: 6.4102cqw;
        background: left center/4.8717cqw 100% no-repeat url("../img/common/icon-tell.svg");
    }
    .btn-wh-raound40-shadow{
        border-radius: calc(var(--margin) * 2);
    }
}
html {
    scroll-behavior: smooth;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    background: #fff;
    color: var(--txt-color);
    line-height: 2;
}
img {
    max-width: 100%;
    height: auto;
}
.furuta {
    font-family: "futura-pt", sans-serif;
    font-weight: 400;
}
.furuta-bd {
    font-family: "futura-pt-bold", sans-serif;
    font-weight: 700;
}
a {
    color: var(--txt-color);
    transition: var(--transition);
    opacity: 1;
}
@media (hover: hover) {
    a:hover {
        opacity: 0.8;
    }
}
.sp-br {
    display: none;
}
.sp-block{
    display: none;
}
@media (min-width: 788px) {
    a[href^="tel:"] {
        pointer-events: none;
    }
}
@media (max-width: 787px) {
    html {
        line-height: 1.7;
    }
}
/*翻訳表示切替*/ :lang(ja) .langen, :lang(auto) .langen {
    display: none;
}
:lang(en) .langja, :lang(fr) .langja {
    display: none;
}
.site-content{
    padding-bottom: calc(var(--margin) * 20);
}
@media screen and (max-width: 767px) {
    .pc-br,
    .pc-block{
        display: none;
    }
    .sp-br {
        display: inline;
    }
    .sp-block{
        display: block;
    }
    img {
        width: 100%;
    }
    .site-content{
        padding-bottom: 0;
    }
}
/*ヘッダー*/
#header {
    width: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 2000;
}
#header .bg {
    padding-top: calc(var(--margin) * 2);
    height: 100%;
    background: var(--base-color);
    border-bottom: solid 1px var(--line-color);
}
#header .bg > .inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1em 0 0;
    max-width: 1440px;
    width: 100%;
    padding: 0 36px;
    box-sizing: border-box;
    margin: 0 auto;
}
#header .site-branding {
    width: 346px;
    margin-bottom: calc(var(--margin) * 2);
    line-height: 1;
}
.main-navigation {
    width: 80%;
    white-space: nowrap;
}
.main-navigation .nav-menu-sub {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    margin: 0 auto;
    font-size: var(--fs-s);
}
.main-navigation .nav-menu-sub > li {
    padding: 0 0.25em;
}
.main-navigation .nav-menu-sub > li.delim {
    margin-right: 1em;
    position: relative;
}
.main-navigation .nav-menu-sub > li::after {
    content: "/";
    position: absolute;
    right: -0.7em;
    top: 0;
}
.main-navigation .nav-menu-sub .search-popup {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.6);
    display: none;
    justify-content: center;
    align-items: center;
    z-index: 9999;
}
.main-navigation .nav-menu-sub .search-popup.active {
    display: flex;
}
.main-navigation .nav-menu-sub .search-popup-inner {
    background: #fff;
    padding: 30px;
    border-radius: 8px;
    width: 90%;
    max-width: 500px;
    position: relative;
}
.main-navigation .nav-menu-sub .search-popup form {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.main-navigation .nav-menu-sub .search-popup input {
    width: 90%;
    background: var(--sub-color);
}
.main-navigation .nav-menu-sub .search-close {
    position: absolute;
    right: 10px;
    top: calc(var(--margin) * -5);
    background: none;
    border: none;
    color: var(--base-color);
    font-size: var(--fs-9l);
    cursor: pointer;
}
.main-navigation .nav-menu-sub .search-trigger {
    cursor: pointer;
}
.main-navigation ul.nav-menu {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    margin: 0 auto;
}
.main-navigation ul.nav-menu > li {
    line-height: 1;
    margin: 0 0.5em;
}
.main-navigation ul.nav-menu > li > a {
    display: block;
    height: 100%;
    padding: 27px 0;
    box-sizing: border-box;
    color: var(--txt-color);
    text-align: center;
    font-size: var(--fs-ll);
    font-weight: 700;
}
.main-navigation ul.nav-menu > li.has-submenu > a {
    padding: 27px 1em 27px 0;
    background: var(--icon-arrow-nv-down-bg);
}
.main-navigation ul.nav-menu > li.has-submenu .submenu-toggle {
    display: none;
}
.main-navigation ul.nav-menu .submenu-box {
    visibility: hidden;
    position: absolute;
    bottom: 0;
    left: 0;
    transform: translateY(100%);
    z-index: -1;
    width: 100%;
    box-sizing: border-box;
    background: var(--base-color);
    opacity: 0;
    transition: var(--transition);
}
@media (hover: hover) {
    .main-navigation li.has-submenu:hover > .submenu-box {
        visibility: visible;
        opacity: 1;
    }
}
.main-navigation .submenu-box > .inner {
    max-width: var(--contentmxwidth);
    width: 100%;
    margin: 0 auto;
    padding: 60px calc(var(--margin) * 2);
    box-sizing: border-box;
}
.main-navigation .submenu-title {
    margin: 0 auto 50px;
    white-space: nowrap;
    color: var(--main-color);
}
.main-navigation .submenu-title-medical {
    pointer-events: none;
}
/*診療案内メニュー*/
.main-navigation .submenu-medical {
    flex-wrap: wrap;
    gap: 35px 2%;
    margin: 0 auto;
    white-space: nowrap;
}
.main-navigation .submenu-medical li {
    flex-shrink: 0;
    width: 15%;
}
.main-navigation .submenu-medical a {
    width: 100%;
    padding-bottom: 0.5em;
    border-bottom: solid 1px var(--line-color);
    text-align: left;
    color: var(--txt-color);
    font-size: var(--fs-4l);
    font-weight: 500;
}
/*人間ドックメニュー*/
.main-navigation .submenu-dock {
    align-items: flex-start;
    gap: 1em 7.505%;
    white-space: normal;
}
.main-navigation .submenu-dock > li {
    width: 28.33%;
    line-height: var(--line-height);
}
.main-navigation .submenu-dock .submenu-title {
    margin-bottom: calc(var(--margin) * 3.5);
}
.main-navigation .submenu-dock .tell {
    margin-bottom: calc(var(--margin) * 2);
}
.main-navigation .submenu-dock .reception-box {
    margin-bottom: 1em;
    color: var(--main-color);
    font-size: var(--fs-s);
    font-weight: 500;
}
.main-navigation .submenu-dock .reception-box .note > li {
    padding-left: 1.1em;
    position: relative;
}
.main-navigation .submenu-dock .reception-box .note > li::before {
    content: "※";
}
.main-navigation .submenu-dock .depts li {
    display: inline-block;
    padding-right: 1em;
    position: relative;
    font-size: var(--fs-s);
}
.main-navigation .submenu-dock .depts li::after {
    content: "/";
    position: absolute;
    right: 0.2em;
    top: 0;
}
.main-navigation .submenu-dock .depts li:last-child::after {
    display: none;
}
/*Gtranslate*/
#header .lang {
    position: relative;
    display: grid;
    place-items: center;
    padding-left: 14px;
    margin-left: 45px;
    margin-right: 15px;
}
#header .lang::after {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto 0;
    display: block;
    content: "";
    width: 13.67px;
    height: 13.67px;
    background: left center/100% 100% no-repeat url("../img/common/head-lang-icon.webp")
}
#header .gtranslate_wrapper {
    position: relative;
}
#header .gtranslate_wrapper::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    display: block;
    width: var(--icon-arrow-nv-down-w);
    height: var(--icon-arrow-nv-down-h);
    background: var(--icon-arrow-nv-down-bg-ab);
}
#header .gt_selector {
    padding: 0 1em 0 0.5em;
    font-size: var(--fs-s);
    color: var(--main-color);
}
#toggle {
    display: none;
}
@media screen and (max-width: 1200px) {
    .main-navigation .submenu-dock {
        row-gap: 1em;
        column-gap: normal;
        justify-content: space-between;
    }
    .main-navigation .submenu-dock > li {
        width: 32%;
    }
}
@media screen and (max-width: 768px) {}
@media screen and (max-width: 767px) {
    body.mask {
        height: 100%;
        overflow: hidden;
    }
    body.mask::after {
        content: "";
        position: absolute;
        top: 0;
        bottom: 0;
        right: 0;
        right: 0;
        margin: auto;
        display: block;
        width: 100%;
        height: 100%;
        background-color: rgb(0 0 0 / 70%);
        transition: var(--transition);
    }
    #header {}
    #header .bg {
        padding: calc(var(--margin) * 1.2) 0;
    }
    #header .bg > .inner {
        width: var(--content-w);
        padding: 0;
    }
    #header .site-branding {
        width: 50cqw;
        padding: 0;
        margin-bottom: 0;
    }
    .main-navigation {
        width: auto;
    }
    .main-navigation .menu-header-navi-container {
        position: fixed;
        left: 0;
        top: -100vh;
        display: block;
        width: 100%;
        height: 100vh;
        box-sizing: border-box;
        padding: 10vw 0 0;
        background-color: var(--base-color);
        transition-duration: var(--transition);
        opacity: 0;
        list-style: none;
        margin: 0;
        padding: 21.3953cqw 0 0;
    }
    .main-navigation .menu-header-navi-container.open {
        position: absolute;
        left: 0;
        top: 0;
        overflow-y: auto;
        opacity: 1;
        z-index: -1;
    }
    .main-navigation #toggle {
        display: block;
        position: relative;
        line-height: 1;
    }
    .menu-trigger, .menu-trigger span {
        display: inline-block;
        transition: all .4s;
        box-sizing: border-box;
    }
    .menu-trigger {
        position: relative;
        width: 7.6923cqw;
        height: 5.128cqw;
        border: none;
        background: none;
    }
    .menu-trigger span {
        position: absolute;
        left: 0;
        width: 100%;
        height: 0.7692cqw;
        background-color: var(--main-color);
    }
    .menu-trigger span:nth-of-type(1) {
        top: 0;
    }
    .menu-trigger span:nth-of-type(2) {
        top: 50%;
        transform: translateY(-50%);
    }
    .menu-trigger span:nth-of-type(3) {
        bottom: 0;
    }
    .menu-trigger.open span:nth-of-type(1) {
        -moz-transform: translateY(300%) rotate(-45deg);
        -webkit-transform: translateY(300%) rotate(-45deg);
        -o-transform: translateY(300%) rotate(-45deg);
        -ms-transform: translateY(300%) rotate(-45deg);
        transform: translateY(300%) rotate(-45deg);
    }
    .menu-trigger.open span:nth-of-type(2) {
        opacity: 0;
    }
    .menu-trigger.open span:nth-of-type(3) {
        -moz-transform: translateY(-270%) rotate(45deg);
        -webkit-transform: translateY(-270%) rotate(45deg);
        -o-transform: translateY(-270%) rotate(45deg);
        -ms-transform: translateY(-270%) rotate(45deg);
        transform: translateY(-270%) rotate(45deg);
    }
    /*nav-menu-sub*/
    .main-navigation .nav-menu-sub {
        padding-bottom: calc(var(--margin) * 2);
        flex-wrap: wrap;
        border-bottom: solid 1px var(--line-color);
        font-size: var(--fs-l);
    }
    .main-navigation .nav-menu-sub > li {
        width: 100%;
        padding: 0 var(--content-pd);
        margin-bottom: var(--margin);
        font-weight: 500;
    }
    .main-navigation .nav-menu-sub > li::after {
        display: none;
    }
    .main-navigation .nav-menu-sub .search-trigger {
        margin-top: calc(var(--margin) * 2);
        order: -2;
    }
    .main-navigation .lang {
        order: -1;
    }
    .main-navigation .nav-menu-sub .search-trigger > picture img {
        display: none;
    }
    .main-navigation .nav-menu-sub .search-popup {
        position: relative;
        display: block;
        background: var(--base-color);
    }
    .main-navigation .nav-menu-sub .search-close {
        display: none;
    }
    .main-navigation .nav-menu-sub .search-popup-inner {
        width: 100%;
        padding: 0.5em 1.5em;
        border-radius: 100vmax;
        border: solid 1px var(--line-color);
        background-color: var(--sub-color);
        font-weight: 400;
    }
    .main-navigation .nav-menu-sub .search-popup form button {
        width: 6.6666cqw;
        height: 6.6666cqw;
    }
    #header .lang {
        width: 100%;
        padding: 0.5em 1.5em;
        margin-left: var(--content-pd);
        margin-right: var(--content-pd);
        border-radius: 100vmax;
        border: solid 1px var(--line-color);
    }
    #header .lang::after {
        width: 3.50512cqw;
        height: 3.50512cqw;
        left: 1em;
    }
    #header .gtranslate_wrapper {
        width: 90%;
        justify-self: end;
    }
    #header .gt_selector {
        width: 100%;
        font-weight: 500;
    }
    .main-navigation ul.nav-menu {
        flex-wrap: wrap;
    }
    .main-navigation ul.nav-menu > li {
        width: 100%;
        margin: 0;
        border-bottom: solid 1px var(--line-color);
    }
    .main-navigation ul.nav-menu > li:not(.has-submenu) > a {
        background: right calc(var(--content-pd) + 1.282cqw) center/3.6897cqw 2.7666cqw no-repeat url("../img/common/icon-arrow-nv-right.svg");
        transition: var(--transition);
        padding: 1em var(--content-pd);
        text-align: left;
    }
    .main-navigation ul.nav-menu > li.has-submenu {
        display: flex;
        justify-content: space-between;
        align-items: center;
        align-items: stretch;
        flex-wrap: wrap;
        padding: 0;
        text-align: left;
    }
    .main-navigation ul.nav-menu > li.has-submenu > a {
        width: 86%;
        padding: 1em var(--content-pd);
        text-align: left;
    }
    .main-navigation ul.nav-menu > li.has-submenu .submenu-toggle {
        display: block;
        width: 14%;
        background: var(--icon-arrow-nv-down-bg);
        background-position: center center;
        transition: var(--transition);
    }
    .main-navigation ul.nav-menu > li.has-submenu.focus .submenu-toggle {
        transform: rotate(180deg);
    }
    .main-navigation ul.nav-menu > li.has-submenu > a {
        background: none;
    }
    .main-navigation ul.nav-menu .submenu-box {
        position: relative;
        width: 100%;
        transform: none;
        height: 0;
        overflow: hidden;
    }
    .main-navigation ul.nav-menu .focus .submenu-box {
        visibility: visible;
        opacity: 1;
        height: auto;
        z-index: 10;
    }
    .main-navigation .submenu-box .inner {
        padding: 0;
    }
    /*診療案内メニュー*/
    .main-navigation .submenu-title-medical {
        display: none;
    }
    .main-navigation .submenu-medical {
        gap: 0;
    }
    .main-navigation .submenu-medical li {
        width: 50%;
    }
    .main-navigation .submenu-dock {
        flex-wrap: wrap;
        gap: 0;
    }
    .main-navigation .submenu-dock > li {
        width: 100%;
    }
    .main-navigation .submenu-medical a {
        padding: 1em calc(var(--content-pd) * 2);
        background: var(--sub-color);
        border-bottom: none;
        border-top: solid 1px var(--line-color);
        flex-direction: row-reverse;
        justify-content: space-between;
        font-size: var(--fs-ll);
    }
    .main-navigation .submenu-medical li:nth-child(odd) a {
        border-right: solid 1px var(--line-color);
    }
    .main-navigation .submenu-medical a::before {
        padding-right: 0;
    }
    /*人間ドッグメニュー*/
    .main-navigation .submenu-dock .submenu-title {
        font-size: 3.5897cqw;
    }
    .main-navigation .submenu-dock > li {
        padding: 1em var(--content-pd);
        border-top: solid 1px var(--line-color);
        background: var(--sub-color);
    }
    .main-navigation .submenu-dock .depts li {
        font-weight: 500;
    }
}
/*END ヘッダー*/
/*フッター*/
#site-footer {
    padding-top: 180px;
    position: relative;
    z-index: 3;
}
#site-footer .bg {
    padding-bottom: calc(var(--margin) * 10);
    background: left bottom/720px 461px no-repeat url("../img/common/foot-bg-img.webp"), var(--sub-color);
    position: relative;
}
#site-footer .inner {
    max-width: var(--contentmxwidth);
    width: var(--content-w);
    margin: 0 auto;
}
#site-footer .ct {
    margin-bottom: calc((var(--margin) * 14) - 180px);
    transform: translateY(-50%);
}
#site-footer .ct-li {
    gap: 1px;
}
#site-footer .ct-li > li {
    width: 50%;
}
#site-footer .ct-li > li a {
    display: block;
    padding: 110px 0 100px;
    background: var(--main-color);
    border: solid 1px var(--main-color);
    color: var(--base-color);
    text-align: center;
}
@media (hover: hover) {
    #site-footer .ct-li > li a:hover {
        background: var(--base-color);
        color: var(--main-color);
    }
}
#site-footer .ct-li > li:first-child a {
    border-radius: 30px 0 0 30px;
}
#site-footer .ct-li > li:nth-child(2) a {
    border-radius: 0 30px 30px 0;
}
#site-footer .ct-li > li a .ja {
    margin-bottom: calc(var(--margin) * 2);
    line-height: 1;
    font-weight: 700;
}
#site-footer .ct-li > li a .en {
    margin-bottom: calc(var(--margin) * 2);
    line-height: 1;
    font-size: 50px;
    font-weight: 500;
}
#site-footer .ct-li > li a::after {
    margin: 0 auto;
    background-position: center center;
}
@media (hover: hover) {
    #site-footer .ct-li > li a:hover::after {
        background: right center / 45px 100% no-repeat url(../img/common/icon-maru-nv-right.svg);
        background-position: calc(50% + 5px) center;
    }
}
#site-footer .footer-content {
    align-items: flex-start;
}
#site-footer .footer-content .logo {
    max-width: 600px;
    margin-bottom: calc(var(--margin) * 6);
}
#site-footer .footer-nav-main {
    
}
#site-footer .footer-nav-main .cell {
    margin-bottom: calc(var(--margin) * 4);
}
#site-footer .footer-nav-main .footmenu-title {
    margin-bottom: calc(var(--margin) * 2);
    font-weight: 700;
    color: var(--main-color);
}
#site-footer .footer-nav-main .footmenu-title::before {
    padding-right: 0;
}
#site-footer .footer-nav-main .cell.cell-last{
    align-items: flex-end;
    margin-bottom: 0;
}
#site-footer .footer-nav-main .bnr-area {
    max-width: 50%;
    padding-top: calc(var(--margin) * 4);
}
#site-footer .footer-nav-main .bnr-area a {
    display: block;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: var(--boxshadow);
}
#site-footer .about-li{
    margin-bottom: calc(var(--margin) * 2);
    align-items: flex-start;
    align-items:stretch;
    gap: 1.6666%;
}
#site-footer .about-li > li{
    width: calc((100% - (1.6666% * 3)) / 4);
    background: var(--base-color);
    padding: calc(var(--margin) * 2) calc(var(--margin) * 3);
    display: flex;
    flex-direction: column;
    color: var(--main-color);
}
#site-footer .about-li > li .address{
    margin-bottom: 1em;
    line-height: 1.6;
}
#site-footer .about-li > li .tell {
    margin-top: auto;
}
#site-footer .about-li > li h3{
    margin-bottom: 1em;
    font-size: var(--fs-m);
}
#site-footer .about-li > li a{
    color: var(--main-color);
}
@media (hover: hover) {
    
}

#site-footer .about-li-noimg > li > a {
    margin-bottom: var(--margin);
    line-height: 1;
    color: var(--main-color);
    font-weight: 500;
    font-size: var(--fs-m);
}
/*診療案内メニュー*/
#site-footer .footer-nav-main .menu-medical {
    flex-wrap: wrap;
    gap:var(--margin);
    margin: 0 auto;
    white-space: nowrap;
}
#site-footer .footer-nav-main .menu-medical > li {
    flex-shrink: 0;
    width: calc((100% - (var(--margin) * 4)) / 5);
    line-height: 1;
}
#site-footer .footer-nav-main .menu-medical > li > a {
    width: 100%;
    padding: 1em;
    background: var(--base-color);
    text-align: left;
    color: var(--main-color);
    font-size: var(--fs-m);
    font-weight: 500;
}
/*その他メニュー*/
#site-footer .footer-nav-main .menu-other{
    gap:calc(var(--margin) * 2);
}
#site-footer .footer-nav-main .menu-other .footmenu-title {
    margin-bottom: 0;
}
/*SNSエリア*/
#site-footer .sns-nav {
    gap: calc(var(--margin) * 3)
}
/*青地フッター*/
#site-footer .footer-btm {
    padding: calc(var(--margin) * 3) 0;
    background: var(--main-color);
    line-height: 1.4;
    color: var(--base-color);
}
#site-footer .footer-btm .copyright {
    font-size: var(--fs-xs);
    font-weight: 700;
}
#site-footer .footer-btm .nav-btm a {
    color: var(--base-color);
    font-size: var(--fs-m);
    font-weight: 700;
}
#site-footer .footer-btm .nav-btm li {
    position: relative;
    margin-right: 1em;
}
#site-footer .footer-btm .nav-btm li::before {
    content: "";
    display: block;
    width: 1px;
    height: 100%;
    position: absolute;
    right: -0.5em;
    top: 0;
    background: var(--base-color);
}
#site-footer .footer-btm .nav-btm li:last-child::before {
    display: none;
}
@media screen and (max-width: 1440px) {
    #site-footer .bg {
        background-size: 50cqw 32.0138cqw;
    }
}
@media screen and (max-width: 1200px) {
    #site-footer .footer-content .logo {
        width: 38cqw;
    }
}
@media screen and (max-width: 768px) {}
@media screen and (max-width: 767px) {
    #site-footer {
        padding-top: 0;
    }
    #site-footer .bg {
        padding: 12.8205cqw 0 calc(var(--margin) * 2);
        background: var(--sub-color);
    }
    #site-footer .ct {
        margin-bottom: 10.2564cqw;
        transform: translateY(0);
    }
    #site-footer .ct-li {
        flex-wrap: wrap;
        gap: calc(var(--margin) * 2);
    }
    #site-footer .ct-li li {
        width: 100%;
    }
    #site-footer .ct-li > li a {
        padding: 7.1794cqw 11.5384cqw;
        border-radius: 5.1282cqw !important;
        text-align: left;
        position: relative;
    }
    #site-footer .ct-li > li a .en {
        margin-bottom: 0;
        font-size: 6.1538cqw;
    }
    #site-footer .ct-li > li a::after {
        position: absolute;
        top: 0;
        bottom: 0;
        right: 11.5384cqw;
        margin: auto;
        background-position: left center;
    }
    #site-footer .footer-content {
        flex-wrap: wrap;
    }
    #site-footer .footer-content .logo {
        width: 46.1538cqw;
        margin-bottom: 12.8205cqw;
        margin-left: 0;
    }
    #site-footer .footer-nav-main {
        width: 100%;
        margin-bottom: calc(var(--margin) * 5);
    }
    #site-footer .footer-nav-main .cell:nth-of-type(1), #site-footer .footer-nav-main .cell:nth-of-type(2) {
        max-width: 100%;
        width: 100%;
        padding: 0;
    }
    #site-footer .about-li{
        flex-wrap: wrap;
        gap: var(--margin);
    }
    #site-footer .about-li > li{
        width: 100%;
        padding: calc(var(--margin) * 2) calc(var(--margin) * 2);
        position: relative;
    }
    #site-footer .about-li > li .address{
        margin-bottom: 0;
        font-size: var(--fs-xxs);
    }
    #site-footer .about-li > li .tell{
        position: absolute;
        bottom: calc(var(--margin) * 2);
        right: calc(var(--margin) * 2);
    }
    #site-footer .footer-nav-main .menu-medical{
        gap:var(--margin);
    }
    #site-footer .footer-nav-main .menu-medical > li{
        width: calc((100% - var(--margin)) / 2);
    }
    #site-footer .footer-nav-main .menu-other {
        display: flex;
        justify-content: space-between;
        align-items: center;
        flex-wrap: wrap;
    }
    #site-footer .footer-nav-main .menu-other{
        gap: calc(var(--margin) * 2);
    }
    #site-footer .footer-nav-main .menu-other > li{
        width: calc((100% - calc(var(--margin) * 2)) / 2);
    }
    #site-footer .sns-nav img{
        width: auto;
        height: 7.841cqw;
    }
    #site-footer .footer-nav-main .cell.cell-last{
        flex-wrap: wrap;
    }
    #site-footer .footer-nav-main .cell.cell-last .bnr-area{
        max-width: 100%;
        width: 100%;
        order: 2;
    }
    #site-footer .footer-nav-main .cell.cell-last .sns-nav{
        width: 100%;
        order: 1;
    }
    #site-footer .footer-btm{
        padding: 1em 0;
    }
    #site-footer .footer-btm .inner{
        flex-wrap: wrap;
    }
    #site-footer .footer-btm .copyright{
        width: 100%;
    }
    #site-footer .footer-btm .nav-btm {
        justify-content:start;
    }
}
/*END　フッター*/
/*下層ページ*/
.breadcrumbs{
    padding: 0.5em 0;
    background: var(--sub-color);
    font-size: var(--fs-xs);
    position: relative;
    z-index: 3;
}
.breadcrumbs a{
    text-decoration: underline;
}
.page-mv {
    position: relative;
    z-index: 3;
    color: #fff;
    overflow: hidden;
}
.page-mv .content-w-inner {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 100%;
    display: grid;
    grid-template-rows: 1fr auto;
    align-items: center; 
    margin: 0 auto;
}
.no-mv {
    position: relative;
    z-index: 3;
    padding: 0.5em;
    background: var(--main-color);
}
.no-mv .content-w-inner {
    
}
.page-mv .content-title {
    align-self: center;
    font-size: var(--content-title);
    font-weight: 700;
    text-shadow: var(--textshadow-m);
}
.no-mv  .content-title {
    align-self: center;
    color: var(--base-color);
    font-size: var(--content-title);
    font-weight: 700;
}
.page-mv .content-title .en {
    line-height: 1;
    font-size: var(--fs-m);
    font-weight: 500;
}
.page-mv .content-subtitle {
    align-self: end;
    margin-bottom: 1em;
    color: var(--base-color);
    font-size: var(--fs-xs);
    text-shadow: var(--textshadow);
    text-decoration: underline;
    white-space:nowrap;
    overflow-y: auto;
}
.no-mv .content-subtitle {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}
.page-content{
    padding: calc(var(--margin) * 8) 0;
}
.section-title{
    padding-bottom: 0.5em;
    margin-bottom: calc(var(--margin) * 5);
    border-bottom: solid 1px var(--main-color);
    color: var(--main-color);
}
@media screen and (max-width: 768px) {}
@media screen and (max-width: 767px) {
    .page-mv {
        
    }
    .page-mv img {
        width: 100%;
        height: auto;
        position: relative;
        z-index: 1;
    }
    .page-mv .content-subtitle{
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        margin: -1px;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        white-space: nowrap;
        border: 0;
    }
    .page-content{
        padding: calc(var(--margin) * 3) 0 calc(var(--margin) * 8);
    }
    .section-title{
        margin-bottom: calc(var(--margin) * 3);
    }
}
/*ページ内リンク*/
.page-link{
    margin-bottom: calc(var(--margin) * 10);
}
.page-link .page-link-list{
    flex-wrap: wrap;
    gap:calc(var(--margin) * 2);
}
.page-link .page-link-list > li{
    max-width: 220px;
    width: calc((100% - (calc(var(--margin) * 2) * 4)) / 5);
}
.page-link .page-link-list > li > a{
    gap: var(--margin);
    padding-bottom: calc(var(--margin) * 1.5);
    border-bottom: solid 1px var(--main-color);
    line-height: 1.4;
    color: var(--main-color);
    font-size: var(--fs-s);
    font-weight: 500;
}
@media screen and (max-width: 768px) {}
@media screen and (max-width: 767px) {
    /*ページ内リンク*/
    .page-link{
        margin-bottom: calc(var(--margin) * 5);
    }
    .page-link .page-link-list > li{
        max-width: 100%;
        width: 100%;
    }
}
/*END 下層ページ*/

/*アクセス*/
.access-li{
    margin-bottom: calc(var(--margin) * 5);
    align-items: stretch;
}
.access-li > li{
    width: 49%;
}
.access-li .access-li-inner{
    padding:calc(var(--margin) * 2) calc(var(--margin) * 3) calc(var(--margin) * 4);
    background: var(--base-color);
    font-weight: 500;
}
.access-li .access-li-title {
    margin-bottom: calc(var(--margin) * 2);
}
.access-li .access-li-title a{
    line-height: 1;
    color: var(--main-color);
}
.access-li .address{
    margin-bottom: calc(var(--margin) * 2);
    line-height: 1.6;
    font-size: var(--fs-xs);
}
.access-li .tell{
    margin-bottom: calc(var(--margin) * 2);
}
.access-li .tell::before{
    width: calc(15px + 10px);
    height: 19px;
    background-size: 15px 100%;
}
.access-li .tell a{
    border-bottom: solid 1px var(--txt-color);
    color: var(--txt-color);
    font-size: var(--fs-ll);
}
.access-li .depts{
    display: block;
    padding: var(--margin) 0;
    margin-bottom: calc(var(--margin) * 2);
    border-top: solid 1px var(--line-color);
    border-bottom: solid 1px var(--line-color);
}
.access-li .depts > li {
    display: inline-block;
    padding-right: 0.5em;
    position: relative;
    font-size: var(--fs-xs);
}
.access-li .depts > li::after {
    content: "/";
    position: absolute;
    right: -0.1em;
    top: 0;
}
.access-li .depts > li:last-child::after {
    display: none;
}
.access-li .depts > li > a{
    text-decoration: underline;
}
.access-li .reception-box .time{
    margin-bottom: var(--margin) ;
    gap:var(--margin);
    line-height: 1;
    font-size: var(--fs-4l);
    color: var(--main-color);
}
.access-li .reception-box .time .ampm{
    padding: 0.2em 0.5em;
    background: var(--main-color);
    border-radius: 5px;
    color: var(--base-color);
    font-size: var(--fs-xs);
}
.access-li .reception-box .note > li {
    padding-left: 1.1em;
    position: relative;
    font-size: var(--fs-s);
    color: var(--main-color);
}
.access-li .reception-box .note > li::before {
    content: "※";
}
@media screen and (max-width: 768px) {
    
}
@media screen and (max-width: 767px) {
    .access-li{
        flex-wrap:wrap;
        margin-bottom: calc(var(--margin) * 3);
        gap:calc(var(--margin) * 2);
    }
    .access-li > li{
        width: 100%;
    }
    .access-li > li:nth-child(2){
        aspect-ratio: 4 / 3;
        height: auto;
    }
    .access-li .access-li-inner{
        padding: calc(var(--margin) * 2);
    }
    .access-li .access-li-title,
    .access-li .address,
    .access-li .tell{
        margin-bottom: 1em;
    }
    .access-li .depts{
        padding:0.3em 0 0.5em;
        margin-bottom: 1em;
    }
}
/*END　アクセス*/

/*担当医表*/
.schedule-tbl-pc table{
    width: 100%;
    border: solid 1px var(--line-color);
    background: var(--base-color);
    border-collapse: separate; border-spacing: 0;
}
.schedule-tbl-pc table tr th,
.schedule-tbl-pc table tr td{
    border: solid 1px var(--line-color);
    text-align: center;
    vertical-align: middle;
    font-weight: 500;
}
.schedule-tbl-pc table tr:first-child th{
    background: var(--main-color);
    color: var(--base-color);
    font-size: var(--fs-4l);
}
.schedule-tbl-pc table tr:not(:first-child) th{
    background: var(--sub-color);
    border: solid 1px var(--line-color);
}
.schedule-tbl-pc table tr:not(:first-child) th:first-child{
    width: 8%;
    color: var(--main-color);
    font-size: var(--fs-m);
}
.schedule-tbl-pc table tr:not(:first-child) th:nth-child(2){
    width: 8.16%;
    color: var(--main-color);
    font-size: var(--fs-m);
}
.schedule-tbl-pc table tr:not(:first-child) td{
    width: calc((100% - (8% + 8.16% )) / 7);
    padding: calc(var(--margin) * 3) 0;
    line-height: 1.6;
}
.schedule-tbl-pc table tr:not(:first-child) td:empty::before{
    display: inline-block;
    content: "";
    width: 1em;
    height: 2px;
    background: var(--txt-color);
    vertical-align: middle;
}
.schedule-tbl-pc table .time-box{
    line-height: 1.6;
}
.schedule-tbl-pc table .time-box .time{
    font-size: var(--fs-xxs);
}
.schedule-tbl-pc table .time-box .from{
    margin: 0.5em;
    transform: rotate(90deg);
}
.schedule-tbl-pc table .mini{
    color: var(--main-color);
    font-size: var(--fs-xxs);
}
.schedule-tbl-pc table .sunday p:not(:last-of-type){
    margin-bottom: 1em;
}
@media screen and (max-width: 768px) {
    
}
@media screen and (max-width: 767px) {
    .schedule-tbl-sp table{
        width: 100%;
        border: solid 1px var(--line-color);
        background: var(--base-color);
    }
    .schedule-tbl-sp table tr th,
    .schedule-tbl-sp table tr td{
        border: solid 1px var(--line-color);
        background-color: var(--base-color);
        text-align: center;
        vertical-align: middle;
        font-weight: 500;
    }
    .schedule-tbl-sp table tr th:first-child{
        padding: 0.5em 0.3em;
        background: var(--main-color);
        color: var(--base-color);
    }
    .schedule-tbl-sp table tr td{
        padding: 0.5em 0.2em;
    }
    .schedule-tbl-sp table tr:first-child td,
    .schedule-tbl-sp table tr:nth-child(2) td{
        background: var(--sub-color);
        color: var(--main-color);
    }
    .schedule-tbl-sp table tr:not(:first-child) td:empty::before{
        display: inline-block;
        content: "";
        width: 1em;
        height: 2px;
        background: var(--txt-color);
        vertical-align: middle;
    }
    .schedule-tbl-sp table .mini{
        font-size: var(--fs-xxs);
    }
    .schedule-tbl-sp table .time-box{
        gap:2em;
    }
}
/*END 担当医表*/

/*greeting 院長ご挨拶*/
.medical #greeting .greeting-li,
.aboutshare #greeting .greeting-li{
    align-items: stretch;
}
.medical #greeting .greeting-li .img,
.aboutshare #greeting .greeting-li .img{
    width: 48.91%;
}
.medical #greeting .greeting-li .txt-box,
.aboutshare #greeting .greeting-li .txt-box{
    width: 49.33%;
    line-height: 1.7;
    font-size: var(--fs-m);
}
.medical #greeting .greeting-li .txt,
.aboutshare #greeting .greeting-li .txt{
    margin-bottom: 1em;
}
.medical #greeting .raoundimg-txt-li-title,
.aboutshare #greeting .raoundimg-txt-li-title{
    color: var(--txt-color);
}
.medical #greeting .signature,
.aboutshare #greeting .signature{
    margin-top: auto;
    margin-left: auto;
    text-align: right;
}
@media screen and (max-width: 768px) {
}
@media screen and (max-width: 767px) {
    medical #greeting .greeting-li,
    .aboutshare #greeting .greeting-li{
        flex-wrap: wrap;
        gap: calc(var(--margin) * 2);
    }
    .medical #greeting .greeting-li .img,
    .medical #greeting .greeting-li .txt-box,
    .aboutshare #greeting .greeting-li .img,
    .aboutshare #greeting .greeting-li .txt-box{
        width: 100%;
    }
}
/*END greeting 院長ご挨拶*/

/*検索結果*/
#search .search-results{
    padding: calc(var(--margin) * 5);
    background: var(--base-color);
}
#search .search-results article{
    padding-bottom: calc(var(--margin) * 3);
    margin-bottom: calc(var(--margin) * 3);
    border-bottom: solid 1px var(--line-color);
}
#search .search-results .pagination {
    gap: calc(var(--margin) * 2);
}
#search .search-results .page-number:not(.dots){
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 50px;
    height: 50px;
    border: 1px solid var(--main-color);
    border-radius: 50%;
    background: var(--base-color);
    font-size: var(--fs-5l);
    font-weight: 700;
    color: var(--main-color);
    letter-spacing: 0;
    line-height: 1;
    text-decoration: none;
    box-sizing: border-box;
    transition: opacity 0.3s ease, color 0.3s ease, background-color 0.3s ease;
}
#search .search-results .page-number.active {
    border-color: var(--main-color);;
    background: var(--main-color);;
    color: var(--base-color);
}
@media screen and (max-width: 768px) {
}
@media screen and (max-width: 767px) {
    #search .search-results{
            padding: calc(var(--margin) * 3) calc(var(--margin) * 2);
    }
    #search .search-results .pagination {
        gap: var(--margin);
    }
    #search .search-results .page-number:not(.dots){
        width: 10cqw;
        height: 10cqw;
    }
}
/*END　検索結果*/