@charset "utf-8";
/* ==============================

    サイト設定

============================== */

html {
    font-size: 62.5%;
    scroll-behavior: smooth;
}

body {
    font-size: 1.8rem;
    font-weight: 500;
    line-height: 1.75;
    letter-spacing: 0.06em;
    text-align: justify;
    overflow-x: hidden;
    font-family: "Zen Kaku Gothic New", sans-serif;
    /* カラー変数 */
    --basic: #383838;
    --green: #008D18;
    --light-green: #00B21E;
    --white: #ffffff;
    --bg: #FAF8F5;
    --line: #CCD9D4;
    /* 基本カラー */
    color: var(--basic);
}

section {
    position: relative;
    margin: auto;
}

a,
a img {
    color: var(--basic);
    text-decoration: none;
    transition: all 0.2s ease 0s;
}

/* ==============================

    サイト設定

============================== */

.inner-s {
    max-width: 960px;
    margin: 0 auto;
}

.inner {
    max-width: 1100px;
    margin: 0 auto;
}

.inner-l {
    max-width: 1440px;
    margin: 0 auto;
}

.container {
    width: 80%;
    max-width: 134.4rem;
    margin: auto;
}

/* カラー */
.color--green {
    color: var(--green);
}

.color--lightgreen {
    color: var(--light-green);
}

/* フォント */
.font--maru {
    font-family: "Zen Maru Gothic", sans-serif;
    font-weight: 700;
}

/*画像*/
.wp-block-image img {
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.img-hover {
    transition: .6s;
}

.img-hover:hover {
    opacity: .6;
}

.flex-row {
    flex-direction: row-reverse;
}

/* 枠から出る画像は非表示 */
figure {
    overflow: hidden;
}

.line2 {
    display: none;
}

/* ==============================

　　固定メニュー

　============================== */
.fix_nav.sp_disp.sp {
    display: none;
    position: fixed;
    z-index: 10;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 90%;
    bottom: 1rem;
}

.wp-block-group.fix_nav.sp_disp-inner {
    gap: 0;
}

.kotei-menu {
    height: 6.4rem;
    color: var(--white);
    font-weight: 700;
    text-align: center;
    position: relative;
    background-color: var(--light-green);
    border-radius: 2rem;
}

.kotei-menu--left {
    background-color: var(--light-green);
}

.kotei-menu--right {
    background-color: var(--green);
}

.kotei-menu .wp-block-group__inner-container {
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.wp-block-group.fix_nav.sp_disp-inner {
    gap: .8rem;
}

.kotei-menu__iconarea {
    width: 3.2rem;
    height: 3.2rem;
    margin-right: 1.2rem;
}

.kotei-menu__icon {
    width: 3.2rem;
    height: 3.2rem;
    border-radius: 50%;
    position: relative;
    background-color: var(--white);
}

.kotei-menu__icon:before {
    font-size: 2rem;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}

.kotei-menu__icon--left:before {
    color: var(--light-green);
}

.kotei-menu__icon--right:before {
    color: var(--green);
}


/*メニュー数*/

.sp_disp-2 .kotei-menu {
    width: 50%;
}

/* ==============================

ヘッダーの設定

　============================== */

header {
    position: fixed;
    top: 5.2vh;
    width: 100%;
    z-index: 300;
    display: flex;
    justify-content: center;
}

.header-inner {
    width: 96%;
    max-width: 180rem;
    padding: 2.4rem 4rem 2.4rem 4.8rem;
    background-color: var(--white);
    border-radius: 1rem;
    box-shadow: .3rem .3rem 1rem rgba(81, 81, 81, 0.06);
}

.header-inner-menu {
    gap: 2.4rem;
    font-weight: 700;
}

.wp-block-navigation .has-child .wp-block-navigation__submenu-container {
    width: 24rem !important;
    border-radius: 2rem;
    border: none !important;
    box-shadow: 0 0 1rem rgba(81, 81, 81, 0.06);
    padding: 3.2rem 4rem 4rem 4rem;
    gap: 2.4rem;
    top: 4rem !important;
}

.wp-block-navigation-item__content {
    padding: 0;
}

.wp-block-navigation .wp-block-navigation__submenu-icon {
    color: var(--green);
}

.nav-item-tel:before {
    content: "\f095";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    width: 4rem;
    aspect-ratio: 1;
    background-color: var(--light-green);
    color: var(--white);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2.2rem;
}

.nav-item-tel>a {
    padding-left: 5.2rem;
}

.wp-block-navigation__container .nav-item-dropdown ul {
    display: none;
}

/* ホバー */
.wp-block-navigation-link:hover {
    color: var(--light-green);
}

/* ==============================

    ハンバーガーメニュー

　============================== */

.nav-wrapper {
    display: none;
    width: 90%;
}

.sp-header-flex {
    justify-content: space-between;
}

.sp-nav-wrap {
    display: none;
    position: absolute;
    top: -2.4rem;
    left: 0;
    width: 100%;
    height: 100vh;
    background-color: var(--bg);
    font-size: 2rem;
    z-index: 20;
}

.sp-nav-wrap.active {
    display: block;
}

.hamburger-menu {
    width: 90%;
    max-width: 48rem;
    margin: calc(5.2vh + 9.7rem) auto 0 auto;
}

.sp-nav__item {
    padding: 2.4rem 0;
    border-bottom: .1rem solid var(--line);
}

.sp-nav__item:last-child {
    border-bottom-style: none;
}

.sp-nav__item-tel {
    font-size: 3.2rem;
    font-weight: 700;
}

.sp-nav__item a {
    display: block;
    width: 100%;
}

.sp-nav__item-tel>a {
    display: flex;
    align-items: center;
}

.sp-nav__tel-icon {
    position: relative;
    background-color: var(--light-green);
    width: 5.6rem;
    height: 5.6rem;
    border-radius: 50%;
    margin-right: 1.6rem;
}

.sp-nav__tel-icon:before {
    color: var(--white);
    content: "\f095";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}

/* アコーディオン（サブメニュー）を非表示に */
.sub-nav {
    display: none;
    margin-left: 2.4rem;
}

.sp-nav__item__title.active+.sub-nav {
    display: block;
}

.sub-nav__item {
    padding: 1.6rem 0;
}

.sp-nav__item__title {
    position: relative;
}

.sp-nav__item__title:after {
    content: "\f078";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    position: absolute;
    right: .8rem;
    color: var(--green);
}

.hamburger {
    width: 6.4rem;
    height: 6.4rem;
    cursor: pointer;
    background-color: var(--light-green);
    border-radius: 50%;
    position: sticky;
    z-index: 30;
}

.hamburger>.is-layout-constrained {
    position: relative;
    top: 50%;
    left: 50%;
    width: 4rem;
    height: 2.2rem;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}

.hamburger__line {
    position: absolute;
    width: 4rem;
    height: .2rem;
    background-color: var(--white);
}

.hamburger__line--1 {
    top: 0;
}

.hamburger__line--2 {
    top: 1rem;
}

.hamburger__line--3 {
    top: 2rem;
}

.hamburger.active .hamburger__line {
    top: 50%;
    left: 50%;
}

.hamburger.active .hamburger__line--1 {
    transform: translate(-50%, -50%) rotate(45deg);
    -webkit-transform: translate(-50%, -50%) rotate(45deg);
    -ms-transform: translate(-50%, -50%) rotate(45deg);
}

.hamburger.active .hamburger__line--3 {
    transform: translate(-50%, -50%) rotate(-45deg);
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
    -ms-transform: translate(-50%, -50%) rotate(-45deg);
}

.hamburger.active .hamburger__line--2 {
    display: none;
}

.hamburger span {
    display: block;
    width: 30px;
    height: 3px;
    background: #333;
    margin: 6px 0;
}

/* ==============================
    
    メインビジュアル
    
　============================== */

/*メインビジュアル　relative*/
.mv {
    height: 100vh;
    max-height: 120rem;
}

.slick-initialized .slick-slide {
    height: 100vh;
    max-height: 120rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.slick-img {
    width: 46%;
    overflow: hidden;
    aspect-ratio: 96/73;
    border-radius: 2% 25% 2% 2%;
    margin-top: 5%;
}

.mainv {
    z-index: 1;
    position: relative;
}

.maincopy {
    width: 50%;
    padding-right: 5.8%;
}


.mv-img-sub {
    position: absolute;
    bottom: 2.4rem;
    right: 4%;
    width: 16%;
    aspect-ratio: 1;
    border-radius: 6.2% 6.2% 6.2% 45%;
}

.mv-deco {
    width: 64%;
    position: absolute;
    top: -5%;
    right: 0;
    z-index: -1;
}

.mv-deco--left {
    display: none;
}

/* ==============================

　PC

　============================== */
/* ------------
　共通
------------ */
h2 {
    font-size: 2.5vw;
    font-weight: 700;
    line-height: 1.4;
}

.is-layout-flex>h3,
h3 {
    font-size: 3.2rem;
    font-weight: 700;
    margin-bottom: 5.6rem;
}

.is-layout-flex>.section-tlte-short {
    margin-bottom: 2.4rem;
}

h3:before {
    color: var(--green);
    font-size: 1.6rem !important;
    font-family: 'Zen Maru Gothic' !important;
    font-weight: 700;
}

h4 {
    color: var(--basic);
    font-size: 2rem;
    font-weight: 700;
}

h2,
h3,
h4,
.btn__more {
    font-family: "Zen Maru Gothic", sans-serif;
    ;
}

/* ボタン */
.btn__more>.wp-block-button__link {
    font-size: 1.8rem;
    font-weight: 700;
    color: var(--basic);
    background: none;
    padding: 0;
    display: flex;
    align-items: center;
}

.fa-chevron-right {
    position: relative;
    margin-left: 2.4rem;
    width: 3.2rem;
    aspect-ratio: 1;
    background-color: var(--light-green);
    border-radius: 50%;
}

.fa-chevron-right::before {
    color: var(--white);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}

.btn__more:hover .wp-block-button__link {
    color: var(--light-green);
}

.btn__more:hover .fa-chevron-right {
    background-color: var(--white);
    border: .2rem solid var(--light-green);
}

.btn__more:hover .fa-chevron-right::before {
    color: var(--light-green);
}

/* 強調の下線 */
.underline {
    position: relative;
    margin: 0 1rem;
}

.underline:after {
    content: '';
    width: calc(100% + 1.2rem);
    height: 50%;
    display: inline-block;
    background-color: #E1EE79;
    border-radius: .2rem;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    z-index: -1;
}

.br-sp {
    display: none;
}

/* ------------
　メッセージ
------------ */
.message__inner {
    padding: 13.5rem 0 10rem 0;
    justify-content: space-between;
    align-items: center;
}

.wp-block-column>.message-img {
    aspect-ratio: 1;
    border-radius: 3.7% 30% 3.7% 3.7%;
}

.message__title {
    font-size: 2.4rem;
    margin-bottom: 4rem;
}

.message__title .underline {
    font-size: 2.8rem;
}

.message__text {
    margin-bottom: 3.2rem;
}

.message-deco--left {
    width: 18%;
    position: absolute;
    left: 2%;
    bottom: 0;
    margin-bottom: 0;
}

.message-deco--right {
    width: 10%;
    position: absolute;
    right: 0;
    top: 0;
    margin-bottom: 0;
}

/* ------------
　お約束ごと
------------ */
.promise {
    margin-top: 13.2rem;
}

.promise__item {
    display: flex;
    flex-direction: column;
    align-items: center;
}

figure.wp-block-image.size-full.promise-img {
    width: 100%;
    aspect-ratio: 1.414/1;
    border-radius: 1rem;
    margin-bottom: 1.6rem;
}

.promise__title[data-name]::before {
    display: inline;
    color: var(--green);
    font-size: 1.6rem;
    letter-spacing: 0;
    vertical-align: top;
    margin-right: .4rem;
}

.promise__title {
    margin-bottom: 2.4rem;
}

.promise__text {
    margin: 0 .8rem;
}

/* ------------
　施術メニュー
------------ */
.menu {
    margin-top: 16rem;
}

.menu__item {
    justify-content: space-between;
    margin-bottom: 4rem;
}

.menu-img {
    border-radius: 1rem;
    aspect-ratio: 1.414/1;
}

.menu__content {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.menu__item__title {
    margin-bottom: 2.4rem;
}

.menu__item__text {
    margin-bottom: 3.2rem;
}

.wp-block-cover,
.wp-block-cover-image {
    padding: 10.4rem 0 !important;
}

.menu__bg {
    border-radius: 4rem;
}

/* ------------
　ご来院について
------------ */
.about {
    margin-top: 20rem;
    padding-bottom: 6%;
}

.about__container {
    background-color: var(--bg);
    border-radius: 30% 3% 3% 3%;
    text-align: center;
    padding: 7.2rem 14%;
}

.about__inner {
    position: sticky;
    z-index: 10;
}

.about__lead {
    margin-bottom: 5.6rem;
}

.workhour {
    align-items: end !important;
    width: 100%;
    max-width: 48rem;
    margin: 0 auto 5.6rem;
}

.contact {
    margin-bottom: 4rem;
}

.attention__container {
    margin-bottom: 1.6rem;
    background-color: var(--white);
    border-radius: 2rem;
    padding: 1.6rem 2.4rem;
}

.attention__title {
    font-weight: 700;
    margin-bottom: 1.6rem;
    padding-bottom: 1.6rem;
    border-bottom: .1rem solid var(--line);
}

.attention__text {
    text-align: justify;
}

.workhour__table td {
    border: none !important;
    padding: 0 !important;
    width: 10%;
}

.workhour__table td:first-child {
    width: 27.5%;
}

.workhour__table tr {
    height: 5.2rem;
    border-bottom: .1rem solid var(--line);
}

.workhour__table table tr:nth-child(n+2) td:nth-child(n+2) {
    color: var(--green);
}

.contact__title {
    display: inline-flex;
    background-color: var(--green);
    padding: .8rem 3.2rem .8rem .8rem;
    border-radius: 30rem;
    color: var(--white);
    font-weight: 700;
    align-items: center;
}

.contact__icon {
    position: relative;
    width: 3.2rem;
    aspect-ratio: 1;
    background-color: var(--white);
    border-radius: 50%;
    margin-right: 1.6rem;
}

.contact__icon:before {
    color: var(--green);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}

.tel-number {
    font-size: 4rem;
    font-weight: 700;
}

.contact__lead {
    font-size: 1.6rem;
    color: var(--green);
    font-weight: 700;
}

.about-deco {
    width: 24%;
    position: absolute;
    bottom: 0;
    left: 0;
}

/* ------------
　お知らせ
------------ */

.news {
    margin-top: 16rem;
    padding: 0 14%;
}

.news__header>.wp-block-group__inner-container {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    margin-bottom: 5.6rem;
}

.section__title-news {
    margin-bottom: 0;
}

.top-news-list li {
    padding: 0 3.2rem 0 1.2rem;
    border-bottom: .1rem solid var(--line);
}

.top-news-date {
    color: var(--green);
    font-weight: 700;
    font-size: 1.6rem;
}

.top-news-list li a {
    width: 100%;
    position: relative;
    padding: 2.4rem 0;
}

.top-news-list li a:after {
    content: "\f054";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    width: 2.4rem;
    aspect-ratio: 1;
    background-color: var(--light-green);
    color: var(--white);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
}

.top-news-list li a:hover {
    color: var(--light-green);
}

.top-news-list li a:hover::after {
    color: var(--light-green);
    background-color: var(--white);
    border: .2rem solid var(--light-green);
}

/* ------------
　フッター
------------ */
footer {
    background-color: var(--bg);
    border-radius: 4rem 4rem 0 0;
    margin-top: 20rem;
}

.footer__inner {
    width: 90%;
    max-width: 180rem;
    margin: auto;
    padding: 5% 0 2.4rem 0;
}

.footer__content {
    margin-bottom: 5.6rem;
}

.footer__map iframe {
    width: 100%;
    aspect-ratio: 1;
    border-radius: 2rem;
    border: 0;
}

.footer__info {
    text-align: center;
}

.footer__logo {
    display: inline-block;
    margin-bottom: 4rem;
}

.footer__address {
    font-size: 1.6rem;
    margin-bottom: 5.6rem;
}

.copyright {
    font-size: 1.2rem;
    font-weight: 700;
}

/* ==============================

    下層ページ

============================== */
/* ------------
　共通（FV）
------------ */
.page-fv {
    gap: 3.2rem;
    margin-bottom: 10.4rem;
}

.page-fv>.wp-block-columns {
    justify-content: space-between;
}

.is-layout-flex>.page-fv-img {
    margin-top: calc(5.2vh + 15rem);
}

.page-title-pc {
    font-size: 4rem;
}

.page-title-sp {
    display: none;
}

.page-fv-img figure {
    overflow: hidden;
    aspect-ratio: 72/54;
    border-radius: 2% 25% 2% 2%;
}

.is-layout-flex>.page-fv-title {
    margin-right: 7%;
    margin-bottom: 5%;
    text-align: right;
    color: var(--green);
}

.pegalow-mv-deco {
    width: 55%;
}

.wp-block-group__inner-container>.aioseo-breadcrumbs {
    max-width: 134.4rem;
    margin: 3.2rem auto 0 auto;
    font-size: 1.6rem;
    font-weight: 500;
    color: var(--green);
}

.aioseo-breadcrumbs a {
    color: var(--basic);
}

/* ------------
　first
------------ */
.lead {
    gap: 8rem;
}

.first-lead {
    line-height: 2;
}

.first-img {
    width: 33%;
    border-radius: 1rem;
    aspect-ratio: 1.414 / 1;

}


.first-trouble {
    margin-top: 16rem;
    padding: 0 14%;
}

.trouble-inner {
    width: 100%;
    padding: 6.4rem 2.4rem;
    border-radius: 2rem;
}

.trouble-list {
    gap: 1.2rem;
}

.trouble-item {
    gap: .8rem;
}

.specialized {
    margin-top: 16rem;
    gap: 0;
}

.is-layout-flex>.specialized-text {
    margin-bottom: 5.6rem;
}

.specialized-list {
    gap: 4rem;
}

.specialized-img figure {
    border-radius: 1rem;
    aspect-ratio: 1.414/1;
}

.treatment-flow {
    margin: 16rem 0;
}

.treatment-flow-inner>.wp-block-group__inner-container {
    padding: 0 14%;
}

.treatment-flow-list {
    gap: 2.4rem;
}

.treatment-flow-item {
    position: relative;
    width: 100%;
    border-radius: 2rem;
    padding: 4rem;
}

.treatment-flow-no {
    position: absolute;
    top: 0;
    left: 0;
    background-color: var(--light-green);
    color: var(--white);
    font-size: 2.4rem;
    font-weight: 700;
    padding: .6rem 1.6rem;
    border-radius: 2rem 0;
}

.treatment-flow-title {
    margin-bottom: 2.4rem;
}

.price {
    padding-bottom: 8rem;
}

.price-table {
    font-weight: 700;
    line-height: 1.2;
}

.price-table-title,
.price-table-subtitle,
.price-table-price {
    gap: 0;
}

.price-table-title-item,
.price-table-subtitle-item,
.price-table-price-item {
    height: 100%;
    flex: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    border-right: .1rem solid #CCD9D4;
    padding: .8rem;
}

.price-table-title-item:last-child,
.price-table-subtitle-item:last-child,
.price-table-price-item:last-child {
    border-right-style: none;
}

.price-table-title {
    height: 6.4rem;
    border-radius: 2rem 2rem 0 0;
    border-bottom: .1rem solid #CCD9D4;
}

.price-table-subtitle {
    height: 4rem;
    font-size: 1.4rem;
}

.price-table-price {
    height: 6rem;
    background-color: var(--white);
    border-radius: 0 0 2rem 2rem;
}

.price-attention {
    text-align: left;
    font-size: 1.6rem;
    gap: .4rem;
}

.qa {
    padding: 12rem 14% 0 14%;
}

.qa-circle {
    position: relative;
    width: 2.4rem;
    height: 2.4rem;
    background-color: var(--light-green);
    border-radius: 50%;
    color: var(--white);
}

.qa-circle i {
    position: absolute;
    font-size: 1.4rem;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}

.qa-icon {
    width: 3%;
}

.q-text {
    width: 90%;
}

/* ------------
　treatment
------------ */
.general-treatment>.wp-block-group__inner-container>.is-layout-grid {
    gap: .5em;
}

.trouble-treatment-subtitle {
    margin-bottom: 2.4rem;
}

.trouble-treatment-lead {
    margin-bottom: 5.6rem;
}

.trouble-treatment-item {
    border-radius: 2rem;
}

.trouble-treatment-item-inner {
    padding: 0 3% 3.2rem 3%;
}

.trouble-treatment-item-title {
    width: 32rem;
    background-color: var(--light-green);
    color: var(--white);
    border-radius: 2rem 0;
    padding: .8rem 0 .8rem 2.4rem;
}

.trouble-treatment-img {
    width: 30%;
}

.trouble-treatment-img figure {
    width: 100%;
    aspect-ratio: 1;
}

.trouble-treatment-imgcontainer {
    justify-content: space-evenly;
    margin: 1.6rem 0;
}

.trouble-treatment-text {
    font-weight: 700;
}

/* 一般施術-お悩みの改行位置調整 ここから*/
.br-3line {
    display: none;
}
@media screen and (max-width:1279px) {
    .br-2line {
        display: none;
    }

    .br-3line {
        display: block;
    }
}
/* ここまで */

.treatment-message-container {
    width: 80%;
    gap: 2.4rem;
}

.accident {
    padding-top: 10.4rem;
    padding-bottom: 8rem;
}

.accident-lead {
    color: var(--basic);
    border-radius: 2rem;
    padding: 4rem 2.4rem !important;
    min-height: auto;
    margin-bottom: 8rem;
}

.accident-lead-title {
    font-weight: 700;
    padding-bottom: 1.6rem;
    margin-bottom: 1.6rem;
    border-bottom: .1rem solid #CCD9D4;
}

.accident-lead-text {
    gap: 1.6rem;
    text-align: left;
}

.treatment-flow-lead {
    margin-bottom: 4rem;
}

.treatment-flow-content {
    text-align: left;
    color: var(--basic);
}

/* ------------
    sports
------------ */
.sport-lead {
    border-radius: 2rem;
    padding: 5.6rem 4% !important;
    min-height: auto;
}

.sport-lead-title {
    padding-bottom: 1.6rem;
    margin-bottom: 1.6rem;
    border-bottom: .1rem solid #CCD9D4;
}

.sport-lead-text {
    gap: 1.6rem;
}

.sport-lead-text .color--green {
    font-weight: 700;
}

.sports-injury-list {
    gap: 3.4%;
    margin-bottom: 3.4%;
}

.sports-injury-item {
    border-radius: 2rem;
    padding: 3.2rem 1.6rem;
    gap: 2.4rem;
}

.sports-injury-item .wp-block-group__inner-container {
    display: flex;
    flex-direction: column;
    align-items: center;
}


.sport-method {
    margin-top: 16rem;
    padding-bottom: 8rem;
}

.sport-method-list {
    gap: 5.6rem;
}

.sports-injury-img {
    width: 16rem;
    aspect-ratio: 1;
    margin-bottom: 2.4rem !important;
}

.sport-method-img figure {
    border-radius: 2rem;
}

.sports-injury-item-title {
    margin-bottom: 1.6rem;
}

.sport-method-text {
    text-align: left;
}

/* ------------
  acupuncture
------------ */
.acupuncture-lead {
    padding: 0 14%;
}

.acupuncture-lead-inner {
    position: sticky;
    padding: 4rem 2.8%;
    border-radius: 2rem;
}


.acupuncture-lead-title {
    padding-bottom: 1.6rem;
    margin-bottom: 1.6rem;
    border-bottom: .1rem solid #CCD9D4;
}

.effect-title {
    margin-top: 3.2rem;
    margin-bottom: 1.6rem;
    display: flex;
    justify-content: center;
}

.effect-title .wp-block-group__inner-container {
    display: inline-block;
    background-color: var(--green);
    color: var(--white);
    padding: .4rem 4rem;
    border-radius: 12rem;
    font-weight: 700;
}

.effect-list {
    gap: 2.4rem;
    font-size: 2.2rem;
    font-weight: 700;
    flex-wrap: wrap !important;
}

.sports-injury {
    margin-top: 16rem;
}

.sports-injury-lead {
    margin-bottom: 3.2rem;
}

.symptom-list {
    grid-template-columns: 1fr 1fr 1fr 1fr !important;
    gap: 2%;
    row-gap: 1.6rem;
}

.symptom-item {
    border-radius: 2rem;
    padding: 2rem;
}

.symptom-img {
    width: 16rem;
    aspect-ratio: 1;
}

.symptom-item-title {
    font-size: 100%;
    height: 6.4rem;
    display: flex;
    line-height: 1.5;
    justify-content: center;
    align-items: center;
}

.reason {
    margin-top: 10.5rem;
}

.reason-subtitle {
    margin-bottom: 1.6rem;
}

/* ------------
  about
------------ */
.director {
    padding: 0 6%;
}

.director-message {
    justify-content: space-between;
    margin-bottom: 4rem;
}

.director-img figure {
    border-radius: 2rem;
}

.director-message-text {
    margin-bottom: 3.2rem;
}

.qualification {
    border-radius: 2rem;
    padding: 1.6rem 2.4rem;
}

.qualification-title {
    width: 100%;
    font-weight: 700;
    padding-bottom: 1.6rem;
    margin-bottom: 1.6rem;
    border-bottom: .1rem solid #CCD9D4;
}

.qualification-list {
    display: flex;
    padding-left: 2.4rem;
    flex-wrap: wrap;
    column-gap: 6.4rem;
}

.qualification-item {
    list-style: disc;
}

.clinic {
    margin-top: 16rem;
    padding-bottom: 8rem;
}

.clinic-info {
    margin-bottom: 5.6rem;
}

.clinic-img figure {
    border-radius: 2rem;
}

.clinic-content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
}

.clinic-name {
    margin-bottom: 2.4rem;
}

.clinic-content p {
    font-size: 1.6rem;
    text-align: left;
}

.clinic-parking {
    margin-top: 2.4rem;
}

.clinic-parking-attention {
    gap: 0;
}

.abuot-workhour {
    align-items: start !important;
}

.abuot-workhour p {
    text-align: left;
    font-size: 1.6rem;
}

.abuot-workhour-attention {
    gap: 0;
}

.clinic-map {
    width: 100%;
    aspect-ratio: 3/1;
    border-radius: 2rem;
}

.facilities {
    margin-top: 16rem;
}

.facilities-item {
    padding: 3.2rem 2.4rem;
    gap: 2.4rem;
    border-radius: 2rem;
}

.facilities-list {
    grid-template-columns: 1fr 1fr 1fr !important;
    column-gap: 2%;
    row-gap: 4rem;
}

.facilities-img {
    border-radius: 1.6rem;
}

/* ------------
  news
------------ */
/* 一覧ページ */
.news-wrap {
    margin-top: calc(5.2vh + 16rem);
}

.news-title h2 {
    font-size: 4rem;
    margin-bottom: 3.2rem;
    color: var(--green);
    text-align: center;
}

/* 詳細ページ */
.news-entry-title {
    font-weight: 700;
    color: var(--green);
}

.post-content figure {
    margin: 4rem 0 4rem 0 !important;
}

.news-nav {
    margin-top: 2.4rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.page-numbers {
    font-size: 1.6rem;
    font-weight: 700;
    width: 3.2rem;
    height: 3.2rem;
    background-color: #FAF8F5;
    border-radius: 50%;
    display: flex !important;
    justify-content: center;
    align-items: center;
}

.current {
    background-color: var(--green);
    color: var(--white);
}

    .br-500 {
        display: none;
    }


@media screen and (max-width:1260px) {
    .header-inner {
        display: none;
    }

    .nav-wrapper {
        display: block;
    }
}

/* ==============================

    スマホ・タブレット縦

============================== */
@media screen and (max-width:1436px) {

    /* 下線タイトルの改行 */
    .line2 {
        display: block;
    }
}

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

    /* 共通 */
    body {
        font-size: 1.6rem;
    }

    .pc,
    .page-top {
        display: none;
    }

    .sp {
        display: block;
    }

    .container {
        width: 90%;
        max-width: 71rem;
    }

    .is-layout-flex>h3,
    h3 {
        font-size: 2.4rem;
    }

    h4 {
        font-size: 1.8rem;
    }

    .btn__more>.wp-block-button__link {
        font-size: 1.6rem;
    }

    .wp-block-group__inner-container>.aioseo-breadcrumbs {
        width: 100%;
        margin-top: 1.2rem;
        margin-bottom: 1.6rem;
    }

    /* 固定ナビ */
    .fix_nav.sp_disp.sp {
        display: block;
    }

    /* ヘッダー */
    header {
        top: 2.4rem;
    }

    /* メインビジュアル */
    .slider {
        padding-top: 12rem;
    }

    .slick-initialized .slick-slide {
        flex-direction: column;
        align-items: flex-start;
        justify-content: flex-start;
    }

    .slick-img {
        width: 80%;
        min-width: 38rem;
        max-width: 60rem;
        margin-top: 0;
    }

    .maincopy {
        width: 100%;
        padding-right: 0;
        font-size: 3.2rem;
        padding: 3.2rem 5% 0 5%;
    }

    .mv-img-sub {
        width: 28%;
    }

    .mv-deco--left {
        width: 28%;
        display: block;
        position: absolute;
        left: 0;
        bottom: 0;
    }

    /* メッセージ */
    .message__inner {
        flex-direction: column-reverse;
        padding-top: 2.4rem;
        padding-bottom: 0;
    }

    .message__column-img {
        justify-content: flex-end;
    }

    .message-img {
        width: 64%;
        margin-left: auto;
    }

    .message__title {
        font-size: 1.8rem;
    }

    .message__title .underline {
        font-size: 2rem;
    }

    .message__content .btn__more {
        justify-content: flex-end;
    }

    .message-deco--left {
        width: 40%;
        left: 3%;
    }

    /* お約束事 */
    .promise {
        max-width: 48rem;
    }

    .promise__list {
        flex-direction: column;
    }

    /* 施術メニュー */
    .menu__inner {
        max-width: 48rem;
    }

    .menu__item {
        flex-direction: column;
        gap: 0;
        margin-bottom: 4.8rem;
    }

    .menu__item .wp-block-column figure {
        margin-bottom: 1.6rem;
    }

    /* ご来院について */
    .about {
        margin-top: 16rem;
    }

    .about__container {
        width: 100%;
        max-width: 100%;
        padding: 7.2rem 5% 7.2rem 5%;
    }

    .tel-number {
        font-size: 3.2rem;
    }

    .contact__lead {
        font-size: 1.4rem;
    }

    /* お知らせ */
    .news {
        padding: 0;
    }

    .news__header>.wp-block-group__inner-container {
        flex-direction: column;
        align-items: flex-start;
    }

    .news__header .btn__more {
        margin-left: auto;
        margin-top: 1.2rem;
    }

    .top-news-list li {
        flex-direction: column;
        padding: 1.6rem 1.6rem 0 1.2rem;
    }

    .top-news-list li a {
        padding: 0 3.2rem 0 0;
        margin-bottom: 2.4rem;
    }

    /* フッター */
    .footer__inner {
        padding-top: 8rem;
        padding-bottom: 8.8rem;
    }

    .footer__content {
        flex-direction: column-reverse;
        gap: 8rem;
        margin-bottom: 4rem;
    }

    /* ------------
　      下層
    ------------ */

    /* 共通 */
    .page-fv-img {
        flex-basis: 46% !important;
    }

    .is-layout-flex>.page-fv-img {
        margin-top: calc(2.4rem + 8rem);
    }

    .page-title-pc {
        font-size: 3.2rem;
    }

    /* first */
    .first-trouble {
        margin-top: 12rem;
        padding: 0;
    }

    .specialized {
        margin-top: 12rem;
        max-width: 48rem;
    }

    .specialized-list {
        gap: 5.6rem;
    }

    .specialized-item {
        flex-direction: column;
        gap: 1.6rem;
    }

    .treatment-flow {
        margin-top: 12rem;
        padding: 8rem 0 !important;
    }

    .treatment-flow-inner {
        max-width: 48rem;
    }

    .treatment-flow-inner>.wp-block-group__inner-container {
        padding: 0;
    }

    .treatment-flow-item {
        padding: 1.6rem 2.4rem;
    }

    .treatment-flow-no {
        font-size: 2rem;
        padding: .4rem 1.2rem;
    }

    .treatment-flow-item-inner {
        flex-direction: column;
        margin: auto !important;
    }

    .treatment-flow-illust {
        max-width: 16rem;
    }

    .treatment-flow-content {
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .qa {
        padding: 12rem 0 0 0;
    }

    /* treatment */
    .general-treatment>.wp-block-group__inner-container>.is-layout-grid {
        grid-template-columns: 1fr !important;
    }

    .trouble-treatment-lead {
        margin-bottom: 4rem;
    }

    .trouble-treatment-item-inner {
        padding-bottom: 2.4rem;
    }

    .treatment-message {
        margin-top: 16rem;
    }

    .treatment-message .message__inner {
        flex-direction: column;
        gap: 10.4rem;
    }

    .treatment-message-deco {
        bottom: auto;
        top: 25%;
    }

    .treatment-message-container {
        width: 100%;
    }

    .accident__inner .wp-block-group__inner-container {
        width: 100%;
        max-width: 80rem;
        margin: auto;
    }

    .accident-lead {
        margin-bottom: 5.6rem;
    }

    .accident-flow-inner {
        max-width: 100%;
    }

    .treatment-flow-lead {
        margin-bottom: 1.6rem;
    }

    .accident-flow-content {
        align-items: start;
    }

    .accident-flow-content .treatment-flow-title {
        margin-bottom: 1.6rem;
    }

    /* sports */
    .sport-lead {
        padding: 4rem 1.8% !important;
    }

    .sport-trouble {
        margin-top: 8rem;
    }

    .sports-injury {
        margin-top: 8rem;
    }

    .sports-injury-list {
        grid-template-columns: 1fr 1fr !important;
    }

    .sport-method__inner {
        max-width: 48rem;
        margin: auto;
    }

    .sport-method-item {
        flex-direction: column !important;
        gap: 2.4rem;
    }

    /* acupuncture */
    .acupuncture-lead {
        padding: 0;
    }

    .effect-title {
        margin-top: 2.4rem;
    }

    .effect-list {
        font-size: 1.8rem;
    }

    .symptom-list {
        grid-template-columns: 1fr 1fr 1fr !important;
    }

    /* about */
    .director h3 {
        text-align: center;
        margin-bottom: 3.2rem;
    }

    .director-message {
        flex-direction: column;
    }

    .director-img {
        max-width: 48rem;
        flex-basis: 34%;
    }

    .clinic-max-container {
        max-width: 48rem;
        margin: auto;
    }

    .clinic-info {
        flex-direction: column;
        gap: 1.6rem;
    }

    .facilities-list {
        grid-template-columns: 1fr 1fr !important;
    }

}

@media (max-width: 1024px) and (max-height: 1368px) {
    .mv {
        height: 86vh;
    }
}

@media screen and (max-width:781px) {

    /* 下層のFV */
    .page-fv {
        margin-bottom: 6.4rem;
    }

    .page-fv-img figure {
        width: 80%;
    }

    .page-fv-title {
        display: none;
    }

    .page-title-sp {
        display: block;
        font-size: 2.8rem;
        color: var(--green);
    }

}

/* ==============================

    スマホ　

============================== */

@media screen and (max-width: 710px) {

    /* 共通 */
    .br-sp {
        display: block;
    }

    .mv {
        height: 100vh;
    }

    .maincopy {
        font-size: 2rem;
    }

    .is-layout-flex>h3,
    h3 {
        font-size: 2.4rem;
        margin-bottom: 3.2rem;
    }

    /* メインビジュアル */
    .mv-deco {
        width: 80%;
    }

    /* 施術メニュー */
    .wp-block-cover {
        padding: 8rem 0 !important;
    }

    /* ご来院について */
    .about__container {
        border-radius: 20rem 2rem 2rem 2rem;
    }

    .about-deco {
        width: 30%;
    }

    /* お知らせ */
    .news__header>.wp-block-group__inner-container {
        margin-bottom: 3.2rem;
    }

    /* ------------
　      下層
    ------------ */
    /* first */
    .lead {
        gap: 4rem;
    }

    .first-lead {
        text-align: left !important;
    }

    .first-lead-img {
        flex-wrap: wrap !important;
        justify-content: center;
    }

    .first-img {
        width: 48%;
    }

    .icon-check img {
        height: 2rem !important;
    }

    .icon-check {
        width: 2.4rem;
    }

    .trouble-text {
        width: calc(100% - 2.4rem);
    }

    .is-layout-flex>.specialized-text {
        margin-bottom: 4rem;
    }

    .price-table-subtitle {
        height: 6.4rem;
    }

    /* treatment */
    .trouble-treatment-subtitle {
        margin-bottom: 1.6rem;
    }

    .treatment-message-container {
        max-width: 56rem;
        margin: auto;
    }

    .wp-block-cover {
        padding: 4rem 1.2rem !important;
    }

    .accident-flow-inner {
        justify-content: center;
        flex-direction: column;
    }

    .accident-flow-content {
        align-items: center;
    }

    /* sports */
    .sports-injury {
        max-width: 48rem;
    }

    .sports-injury-list {
        grid-template-columns: 1fr !important;
        gap: 2.4rem;
    }

    /* acupuncture */
    .treat h3 {
        text-align: center;
    }

    .symptom-list {
        grid-template-columns: 1fr 1fr !important;
    }

    .symptom-img {
        width: 12rem;
    }

    .symptom-item-title {
        font-size: 85%;
        height: 4rem;
    }

    .reason-subtitle {
        font-size: 1.6rem;
    }

    /* お知らせ一覧ページ */
    .news-wrap {
        margin-top: calc(2.4rem + 12rem);
    }

    .news-title h2 {
        font-size: 2.8rem;
    }
}

@media screen and (max-width: 500px) {
    .mv-img-sub {
        width: 50%;
        bottom: 13%;
    }

    .mv-deco--left {
        width: 40%;
    }

    .facilities-list {
        grid-template-columns: 1fr !important;
    }
    .clinic-map {
    aspect-ratio: 3 / 2;
    }

    .br-500 {
        display: block;
    }
}

@media (max-height: 860px) {

    /* 画面高さが860px以下のときmvの高さ変更 */
    .mv {
        height: 110vh;
    }
}