@charset "utf-8";

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

    サイト設定　適宜変更箇所

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

:root {
    --main-color: #000000;
    --border-color: #000000;
    --base-font-size: 16px;
    --heading-size-l: 24px;
    --heading-size-m: 24px;
    --base-line-height: 2.7;
    --heading-line-height: 2;
    --section-padding: 200px 0 200px;
    --section-inner: 1300px;
}

.cormorant {
    font-family: "Cormorant", serif;
    font-optical-sizing: auto;
    font-weight: 100;
    font-style: normal;
}

header nav,
footer nav {
    font-family: "Cormorant", serif;
    font-optical-sizing: auto;
    font-weight: 100;
    font-style: normal;
}

.wp-block-buttons,
.wp-block-buttons .wp-block-button.wp-block-buttons,
.wp-block-button a.wp-block-button__link.wp-element-button {
    padding: 0;
    margin: 0;
    font-family: "Cormorant", serif;
    font-optical-sizing: auto;
    font-weight: 100;
    font-style: normal;
    letter-spacing: 1px;
    background: none !important;
    color: black !important;
    max-width: 100% !important;
}

.wp-block-buttons.btn {
    width: 180px !important;
}

body,
html {
    font-size: var(--base-font-size);
}

body {
    color: var(--main-color);
    font-family: "Noto Serif JP", serif;
    font-optical-sizing: auto;
    font-style: normal;
    letter-spacing: 1px;
}

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

/*下層ページタイトル*/
.under-v {
    padding: 50px 0 50px;
    text-align: center;
    background: gray;
    color: #fff;
}

h2 {
    font-size: var(--heading-size-l);
}

h2::before {
    font-size: var(--base-font-size);
}

h2[data-name]::before {
    line-height: 0.6;
    font-size: 14px;
}

h3 {
    font-size: var(--heading-size-m)
}

h1,
h2,
h3,
h4,
h5,
h6 {
    line-height: var(--heading-line-height);
    letter-spacing: 2px;
}

p {
    line-height: var(--base-line-height);
}

.wp-block-button[data-name]::before {
    font-size: 14px;
    font-weight: bold;
}


/*ハンバーガーメニュー　PCでは不要な場合*/
.nav-wrapper {
    display: none;
}

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

    サイト設定

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

.inner {
    max-width: var(--section-inner);
    margin: 0 auto;
}


/* カラー */
.red {
    color: #6E0B0B;
    font-weight: bold;
}

/*画像ホバー時*/

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

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

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

.pc {
    display: block;
}

.sp {
    display: none !important;
}

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

　　固定メニュー

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

.fix_nav.sp_disp.sp {
    position: fixed;
    z-index: 300;
    bottom: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    background: black;
}

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

.kotei-menu {
    color: #fff;
    padding: 5px 0;
    text-align: center;
    border-right: 0.5px solid var(--border-color);
    position: relative;
}

.kotei-menu:last-child {
    border-right: none;
}

/*メニュー数*/

.sp_disp-4 .kotei-menu {
    width: 25%;
}

.sp_disp-3 .kotei-menu {
    width: 33.3333333333%;
}

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

.sp_disp-1 .kotei-menu {
    width: 100%;
}

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

ヘッダーの設定

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

header {
    width: 100%;
    transition: .6s;
    z-index: 999;
    position: relative;
}

.header-inner {
    transition: .6s;
}

.header-inner {
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 300;
}

.fix_nav.sp_disp.sp {
    display: none !important;
}

/* 改行 */
.br-tab,
.br-sp {
    display: none;
}

.br-pc {
    display: block;
}


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

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

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

.slider-01 {
    position: relative;
    width: 100%;
    overflow: hidden;
    background-color: #fff;
}

/*メインビジュアル　高さ適宜変更*/
.mainv,
.slider-01,
.slider-01 .slide figure.wp-block-image.size-full,
.slider-01 .slide figure.wp-block-image.size-full img {
    height: 100vh;
}

/*メインビジュアルキャッチコピー*/
figure.wp-block-image.size-full.maincopy {
    position: absolute;
    right: -43px;
    bottom: 58px;
    margin: auto;
    z-index: 20;
    max-width: fit-content;
    height: fit-content;
    width: 100%;
}

/* ==============================
    
    特定商取引に基づく表記・テーブル
    
　============================== */

.wp-block-group.tokusho-wrap {
    padding: var(--section-padding);
}

figure.wp-block-table td,
figure.wp-block-table th {
    border: none;
    padding: 18px 17px;
}

figure.wp-block-table {
    border: 1px solid var(--border-color);
    line-height: var(--base-line-height);
}

.wp-block-table td:first-of-type {
    width: 50%;
    background-color: #ccc;
    border-bottom: 1px solid #fff;
}

.wp-block-table tr td {
    border-bottom: 1px solid var(--border-color);
}

.wp-block-table tr:last-of-type td {
    border-bottom: none;
}

/* ==============================
    
    個人情報保護方針
    
　============================== */

.wp-block-group.policy-wrap {
    padding: var(--section-padding);
    font-size: 16px;
    line-height: var(--base-line-height);
}

.wp-block-group.policy-wrap p {
    margin-bottom: 35px;
}

.wp-block-group.policy-wrap li {
    margin-bottom: 26px;
}

ul {
    line-height: var(--base-line-height);
    font-size: var(--base-font-size);
}

body#top figure.wp-block-image.size-full.logo.img-hover {
    top: -68px;
}

figure.wp-block-image.size-full.logo.img-hover,
body#top header.scroll-nav figure.wp-block-image.size-full.logo.img-hover {
    max-width: 140px;
    position: fixed;
    top: 23px;
    left: 23px;
    z-index: 9999;
}

.wp-block-group.header-inner>.wp-block-group__inner-container>.wp-block-group.is-content-justification-right {
    padding: 23px 23px 0 0;
}

/* ==============================
    
    お知らせ共通CSS
    
　============================== */

.news-main-layout {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0;
    align-items: start;
}

/* パターンA：サイドバー【あり】のとき */
.-has-sidebar .news-main-layout {
    grid-template-columns: minmax(0, 72%) minmax(0, 24%);
    column-gap: 4%;
}

.-has-sidebar .sidebar {
    display: block;
}

/* パターンB：サイドバー【なし】のとき */
.-full-width .news-main-layout {
    grid-template-columns: 1fr;
}

.-full-width .news-page-body {
    width: 100%;
}

.-full-width .sidebar {
    display: none;
}

.news-main-layout {
    padding-top: 60px;
    margin-bottom: 60px;
}

.nav_select {
    display: flex;
    justify-content: right;
    margin-top: 50px;
}

.widget.widget_categories {
    margin-bottom: 23px;
}

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

　　↓　PC版テーマ専用CSSは下記から記述　↓

　============================== */
/*.slider-01 .slide figure.wp-block-image.size-full img {
    border-radius: 0px !important;
}*/

figure.wp-block-image.size-full.healand {
    max-width: 425px;
    position: absolute;
    bottom: 187px;
    z-index: 10;
    right: 225px;
}

.mainv,
.slider-01,
.slider-01 .slide figure.wp-block-image.size-full,
.slider-01 .slide figure.wp-block-image.size-full img,
.mainv>.wp-block-group__inner-container,
.slider-01>.wp-block-group__inner-container {
    height: 722px;
}

.mainv,
.slider-01,
.mainv>.wp-block-group__inner-container,
.slider-01>.wp-block-group__inner-container {
    border-radius: 0 120px 0 120px !important;
}

.wp-block-group.mainv {
    max-width: 1550px;
    margin: 112px auto 0;
    width: 80%;
}

figure.wp-block-image.size-full.mv-logo {
    max-width: fit-content;
    top: 232px;
    position: absolute;
    z-index: 10;
    left: -169px;
}

.mainv .wp-block-group.next-prev,
.mainv .slider-dots {
    display: none;
}

nav.header-inner-menu ul.wp-block-navigation__container.header-inner-menu.wp-block-navigation {
    margin-right: 40px;
}

nav ul.wp-block-navigation__container {
    gap: 20px !important;
}

.wp-block-buttons.btn .wp-block-button a {
    background: none;
    color: black !important;
    padding: 13px 0;
    width: 100% !important;
    max-width: 100% !important;
    transition: .6s;
    line-height: 1;
}

.wp-block-buttons.btn .wp-block-button a:hover,
.wp-block-buttons.btn__top-button.btn.is-layout-flex.wp-block-buttons-is-layout-flex a:hover {
    background: #f7f7f7 !important;
}

.wp-block-buttons.btn {
    background: none;
    color: black !important;
    border: 1px solid black;
    width: 100% !important;
    max-width: 176px !important;
    border-radius: 90px;
    margin: 0 auto;
}

.wp-block-buttons.btn__top-button.btn.is-layout-flex.wp-block-buttons-is-layout-flex a.wp-block-button__link.wp-element-button span {
    font-size: 14px;
    display: block;
    line-height: 1;
    position: relative;
    top: 6px;
}

.wp-block-buttons.btn__top-button.btn.is-layout-flex.wp-block-buttons-is-layout-flex a.wp-block-button__link.wp-element-button {
    padding: 20px 0 25px;
    font-size: 20px;
    width: 100% !important;
}

.wp-block-buttons.btn .wp-block-button a i.fa-solid.fa-phone {
    font-size: 10px;
}

.wp-block-group.inner.image-flexbox {
    padding: var(--section-padding);
}

.wp-block-group.image-flexbox__text {
    width: 50%;
}

.wp-block-group.image-flexbox__text>.wp-block-group__inner-container {
    max-width: 553px;
    margin: 0 0 0 auto;
}

figure.wp-block-image.size-full.image-flexbox__image {
    max-width: 442px;
    margin-left: 50px;
}

.wp-block-group.inner.image-flexbox {
    justify-content: space-between;
}

.wp-block-group.image-flexbox__text h2 {
    margin: 81px 0 75px;
}

.wp-block-group.image-flexbox__text h2 span {
    font-size: 18px;
}

.wp-block-group.image-flexbox__text .btn {
    margin-top: 70px;
}

figure.wp-block-image.size-full.english-title,
figure.wp-block-image.size-full.english-title img {
    height: 83px;
    object-fit: contain;
    object-position: left;
    max-width: fit-content;
}

.wp-block-group.image-flexbox__text figure.wp-block-image.size-full.english-title {
    position: relative;
    left: -105px;
}

div#modal1 .wp-block-buttons.btn a {
    width: 100% !important;
    background: black !important;
    text-align: center;
    padding: 8px 0 8px 21px;
    position: relative;
    max-width: 100% !important;
    color: #fff !important;
}

div#modal1 .wp-block-buttons.btn {
    width: 150px !important;
}

div#modal1 .wp-block-buttons.btn a:after {
    content: '';
    background-image: url(http://caprice-okubo.com/wp/wp-content/uploads/2026/06/Reserve-icon.png);
    background-size: contain;
    display: inline-block;
    width: 16px;
    height: 15px;
    background-repeat: no-repeat;
    position: absolute;
    left: 30px;
    bottom: 0;
    top: 0;
    margin: auto;
}

.wp-block-group.bk {
    width: 95%;
    background-color: #f7f7f7;
    margin: 0 auto;
    background-image: url(http://caprice-okubo.com/wp/wp-content/uploads/2026/06/bk1.png), url(http://caprice-okubo.com/wp/wp-content/uploads/2026/06/bk2.png);
    background-position: top -105px right, bottom -105px left;
    background-repeat: no-repeat;
}

.wp-block-group.bk.top-menu .inner {
    padding: 254px 0 62px;
}

.wp-block-group.bk .wp-block-group.inner {
    position: relative;
}

h2.graybk__title {
    font-size: 48px;
    position: absolute;
    top: -21px;
    left: 0;
    right: 0;
    font-family: "Cormorant", serif;
    font-optical-sizing: auto;
    font-style: normal;
    font-weight: normal;
    line-height: 1;
}

.wp-block-group.top-men__image {
    position: relative;
    width: 50%;
}

figure.wp-block-image.size-full.top-men__image2 {
    position: absolute;
    top: -57px;
    right: -72px;
}

.wp-block-group.top-menu__flex {
    margin-bottom: 195px;
    flex-direction: row-reverse;
}

.wp-block-group.top-menu__flex:nth-of-type(even) {
    flex-direction: row;
}

.wp-block-group.top-menu__text .wp-block-group.headline-flex {
    margin-bottom: 65px;
}

.wp-block-group.top-menu__text .wp-block-buttons.btn {
    margin-top: 70px;
}

.wp-block-group.headline-flex h3:after {
    content: '';
    width: 1px;
    height: 54px;
    background: black;
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    left: -3px;
}

.wp-block-group.headline-flex h3 {
    padding-left: 24px;
    position: relative;
    margin-left: 24px;
}

.wp-block-group.headline-flex p.has-text-align-center.wp-block-paragraph {
    width: fit-content;
    line-height: 1.5;
    font-family: "Cormorant", serif;
    font-optical-sizing: auto;
    font-style: normal;
    font-weight: normal;
    margin: 0;
}

.wp-block-group.top-menu__flex:nth-of-type(even) figure.wp-block-image.size-full.top-men__image2 {
    right: auto;
    left: -90pt;
    top: -120px;
}

.wp-block-button {
    width: 100% !important;
}

.wp-block-group.inner.top-space {
    padding: var(--section-padding);
}

.wp-block-group.inner.top-space figure.wp-block-image.size-full.english-title {
    margin: 87px 0 60px;
    position: relative;
    left: -99px;
}

.wp-block-group.inner.top-space .wp-block-group.headline-flex {
    margin-bottom: 53px;
}

.wp-block-group.top-space__image-flex {
    flex-direction: row-reverse;
    justify-content: end;
}

figure.wp-block-image.size-full.top-space__image3 {
    margin-top: 220px;
    margin-right: 112px;
}

figure.wp-block-image.size-full.is-resized.top-product__image {
    position: absolute;
    top: -39px;
    right: 58px;
}

.wp-block-group.bk.top-product .inner {
    padding: 128px 0 128px;
}

.wp-block-group.bk.top-product h3 {
    margin-bottom: 59px;
}

.wp-block-group.bk.top-product .btn {
    margin-top: 63px;
}

.wp-block-group.bk.top-product>.wp-block-group__inner-container {
    background-image: url(http://caprice-okubo.com/wp/wp-content/uploads/2026/06/Hair-care.png), url(http://caprice-okubo.com/wp/wp-content/uploads/2026/06/oggi1-1.png), url(http://caprice-okubo.com/wp/wp-content/uploads/2026/06/product-img-2.png);
    background-repeat: no-repeat;
    background-position: bottom 38px right 20px, top right, bottom left;
}

.wp-block-group.inner.top-gallery {
    padding: var(--section-padding);
}

.wp-block-group.inner.top-gallery .btn {
    margin-top: 105px;
}

.wp-block-group.inner.top-gallery .wp-block-group.headline-flex {
    margin-bottom: 98px;
}

.wp-block-group.bk.top-voice .inner {
    padding: 84px 0 135px;
}

.wp-block-group.bk.top-voice>.wp-block-group__inner-container {
    background-image: url(http://caprice-okubo.com/wp/wp-content/uploads/2026/06/User-Stories.png), url(http://caprice-okubo.com/wp/wp-content/uploads/2026/06/voice.png);
    background-repeat: no-repeat;
    background-position: bottom 20px left 20px, top right;
}

.wp-block-group.bk.top-voice h3 {
    margin-bottom: 66px;
}

.wp-block-group.top-voice__box {
    max-width: 381px;
    background: #fff;
    padding: 35px 25px;
}

figure.wp-block-image.size-full.top-voice__icon {
    max-width: 80px;
    margin: 0 auto;
}

p.has-text-align-center.top-voice__age.wp-block-paragraph {
    font-size: 11px;
    width: 96px;
    background: #f1f1f1;
    line-height: 1;
    margin: 17px auto 23px;
    border-radius: 60px;
    padding: 4px 0;
}

.wp-block-group.top-voice__flex {
    gap: 6% !important;
    flex-wrap: wrap;
}

figure.wp-block-image.size-full.english-title.recruit-title,
figure.wp-block-image.size-full.english-title.recruit-title img {
    height: 116px;
}

.wp-block-buttons.btn__top-button.btn.is-layout-flex.wp-block-buttons-is-layout-flex {
    max-width: 446px !important;
    width: 100% !important;
}

.wp-block-group.reserve-wrap {
    background-image: url(http://caprice-okubo.com/wp/wp-content/uploads/2026/06/reserve.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    width: 95%;
    margin: 211px auto 93px;
}

.wp-block-group.reserve-wrap .inner {
    padding: 83px 0 110px;
}

figure.wp-block-image.size-full.reserve-wrap__title {
    max-width: 453px;
    margin: 0 auto 58px;
}

.wp-block-group.reserve-wrap h2 {
    margin-bottom: 44px;
}

.wp-block-group.reserve-wrap .wp-block-group.modal__button-flex {
    margin-top: 66px;
    gap: 45px !important;
}

.wp-block-group.reserve-wrap .wp-block-group.modal__button-flex .wp-block-buttons.btn {
    margin: 0;
}

.wp-block-group.footer-inner {
    width: 95%;
    margin: 0 auto;
}

figure.wp-block-image.size-full.footer-inner__logo.img-hover {
    max-width: 149px;
}

.wp-block-group.footer-inner {
    width: 95%;
    margin: 0 auto;
    padding-bottom: 145px;
}

footer ul.wp-block-navigation__container.items-justified-right.hamburger-menu.wp-block-navigation li {
    margin: 0;
    padding: 0;
}

footer ul.wp-block-navigation__container.items-justified-right.hamburger-menu.wp-block-navigation {
    display: flex;
    margin-bottom: 35px;
}

footer div#modal1 .btn {
    margin: 0 0 0 auto;
}

.custom-modal>.wp-block-group__inner-container {
    padding: 0;
}

.wp-block-group.close-wrap .wp-block-group.reserve-wrap {
    padding: 0;
    margin: 0;
    width: 100%;
}

.wp-block-group.close-wrap .wp-block-group.reserve-wrap .inner {
    padding: 60px 0;
}

.wp-block-button.close-modal a.wp-block-button__link.wp-element-button {
    font-size: 30px;
    line-height: 1;
    padding: 0;
    margin: 0;
}

.wp-block-group.top-voice__box h4 {
    margin-bottom: 15px;
}

.wp-block-group.top-voice__box p {
    line-height: 2.4;
}

.wp-block-group.bk .wp-block-buttons.btn .wp-block-button a:hover {
    background: #fff !important;
}

/* ===================================================
   1. 文字用（ここは完璧なのでそのまま）
   =================================================== */


.fade-up-trigger {
    opacity: 0;
    transform: translateY(40px);
    clip-path: inset(0px 0px 100% 0px);
    transition: opacity 1.4s cubic-bezier(0.25, 1, 0.5, 1),
        transform 1.4s cubic-bezier(0.25, 1, 0.5, 1),
        clip-path 1.4s cubic-bezier(0.25, 1, 0.5, 1);
    will-change: opacity, transform, clip-path;
}

/* JSで画面内に入った時 */

.fade-up-trigger.is-active {
    opacity: 1;
    transform: translateY(0);
    clip-path: inset(0px 0px 0px 0px);
}

.reveal-image-wrapper {
    display: block;
    position: relative;
    width: 100%;
    clip-path: inset(0px 25% 0px 25%);
    /* 【超重要】これを入れることで、中の画像が拡大(1.2倍)していても、
       絶対に画像枠からはみ出さず、ページ全体のスクロールバーがバグるのを防ぎます */
    overflow: hidden;

    transition: clip-path 2.2s cubic-bezier(0.16, 1, 0.3, 1),
        transform 2.2s cubic-bezier(0.16, 1, 0.3, 1);
    will-change: clip-path, transform;
}

/* 画像本体：元の「ゆっくり縮小しながら出現」を完全維持 */
.reveal-image-wrapper img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: cover;
    transform: scale(1.15);
    /* 1.2倍だと少し大きいので、1.15倍で上品に */
    /* じわっと感を出すために、画像自体にも薄くぼかしを初期配置 */
    filter: blur(8px);

    transition:
        transform 2.6s cubic-bezier(0.16, 1, 0.3, 1),
        filter 2.2s cubic-bezier(0.16, 1, 0.3, 1);
    will-change: transform, filter;
}

/* -----------------------------------------
   スクロールして画面内に入った時
----------------------------------------- */
.reveal-image-wrapper.is-active {
    clip-path: inset(0px 0% 0px 0%);
}

.reveal-image-wrapper.is-active img {
    transform: scale(1);
    filter: blur(0);
    /* 縮小しながらピントが合っていく美しい演出 */
}


/* --- ディレイ設定（文字にも画像にも共通で効くように修正） --- */
.delay-1,
.delay-1 img {
    transition-delay: 0.15s !important;
}

.delay-2,
.delay-2 img {
    transition-delay: 0.3s !important;
}

.delay-3,
.delay-3 img {
    transition-delay: 0.45s !important;
}

.delay-4,
.delay-4 img {
    transition-delay: 0.6s !important;
}

.delay-5,
.delay-5 img {
    transition-delay: 0.75s !important;
}


/*.reveal-image-wrapper {
    display: block;
    position: relative;
    width: 100%;
    overflow: hidden;
    background-color: #fff;
}

.reveal-image-wrapper::before,
.reveal-image-wrapper::after {
    content: "";
    position: absolute;
    top: -10%;
    width: 50%;
    height: 120%;
    background-color: #fff;
    z-index: 2;
    transition: transform 7s cubic-bezier(0.16, 1, 0.3, 1);
    will-change: transform;
}

.reveal-image-wrapper::before {
    left: 0;
    transform: translateX(-50%);
    box-shadow: 15px 0 20px 0px rgba(255, 255, 255, 0.85);
}

.reveal-image-wrapper::after {
    right: 0;
    transform: translateX(50%);
    box-shadow: -15px 0 20px 0px rgba(255, 255, 255, 0.85);
}

.bk .reveal-image-wrapper {
    background-color: #f7f7f7;
}

.bk .reveal-image-wrapper::before,
.bk .reveal-image-wrapper::after {
    background-color: #f7f7f7;
}

.bk .reveal-image-wrapper::before {
    box-shadow: 15px 0 20px 0px #f7f7f7;
}

.bk .reveal-image-wrapper::after {
    box-shadow: 15px 0 20px 0px #f7f7f7;
}

.reveal-image-wrapper img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: cover;
    transform: scale(1.15);
    transition: transform 7s cubic-bezier(0.16, 1, 0.3, 1);
    will-change: transform;
}
*/

/* -----------------------------------------
   スクロールして画面内に入った時（is-active）
----------------------------------------- */
.reveal-image-wrapper.is-active::before {
    transform: translateX(-150%);
}

.reveal-image-wrapper.is-active::after {
    transform: translateX(150%);
}

.reveal-image-wrapper.is-active img {
    transform: scale(1);
}


.delay-1,
.delay-1 img,
.delay-1::before,
.delay-1::after {
    transition-delay: 0.25s !important;
}

.delay-2,
.delay-2 img,
.delay-2::before,
.delay-2::after {
    transition-delay: 0.5s !important;
}

.delay-3,
.delay-3 img,
.delay-3::before,
.delay-3::after {
    transition-delay: 0.75s !important;
}

.delay-4,
.delay-4 img,
.delay-4::before,
.delay-4::after {
    transition-delay: 1.0s !important;
}

.delay-5,
.delay-5 img,
.delay-5::before,
.delay-5::after {
    transition-delay: 1.25s !important;
}

.tab {
    display: none;
}

p.map-link.wp-block-paragraph a {
    max-width: fit-content;
    margin: 0 auto;
    display: block;
    font-family: "Cormorant", serif;
    font-optical-sizing: auto;
    font-weight: 100;
    font-style: normal;
    margin-bottom: 21px;
    margin-top: 26px;
}

.slider-05 {
    position: relative;
    width: 100%;
    max-width: fit-content;
    margin: 0 auto;
}

p.prev:before,
.gallery-modal-prev-btn:before {
    border-left: none;
    transform: none;
    width: 0;
    height: 0;
    border-top: 10px solid transparent;
    border-right: 10px solid black;
    border-bottom: 10px solid transparent;
}

.gallery-modal-prev-btn:before,
.gallery-modal-next-btn:before {
    position: absolute;
    content: '';
    top: 0;
}

.gallery-modal-prev-btn:before {
    left: 0;
}

.gallery-modal-next-btn:before {
    right: 0;
}

p.next:before,
.gallery-modal-next-btn:before {
    border-right: none;
    transform: none;
    width: 0;
    height: 0;
    border-top: 10px solid transparent;
    border-left: 10px solid black;
    border-bottom: 10px solid transparent;
}

.gallery-modal-prev-btn:before {
    border-top: 16px solid transparent;
    border-right: 16px solid black;
    border-bottom: 16px solid transparent;
}

.gallery-modal-next-btn:before {
    border-top: 16px solid transparent;
    border-left: 16px solid black;
    border-bottom: 16px solid transparent;
}

p.prev {
    left: -23px;
}

p.next {
    right: -23px;
    top: 7px;
}

.hamburger__line {
    height: 1px;
}

.sp2 {
    display: none;
}

ul.wp-block-list.fixed-menus {
    position: fixed;
    bottom: 30px;
    left: 74px;
    z-index: 99;
}

.under-v {
    margin: 111px auto 0;
    height: 370px;
    max-width: 1550px;
    border-radius: 0 120px 0 120px;
    background-image: url(http://caprice-okubo.com/wp/wp-content/uploads/2026/06/about-v-1.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    position: relative;
    width: 90%;
}

.under-v:after {
    content: '';
    background-image: url(http://caprice-okubo.com/wp/wp-content/uploads/2026/06/About-title.png);
    background-size: contain;
    display: inline-block;
    width: 100%;
    height: 70px;
    position: absolute;
    bottom: 35px;
    right: -1px;
    background-repeat: no-repeat;
    background-position: center right;
}

.under-v h1 {
    display: none;
}

.fixed-menus li {
    position: relative;
    list-style: none;
}

.fixed-menus li a {
    text-decoration: none;
    color: black;
    transition: all 0.3s ease;
}

.fixed-menus li.active::before,
li.current-cat::before {
    content: "●";
    position: absolute;
    left: -19px;
    top: 23px;
    transform: translateY(-50%);
    color: #000;
    font-size: 8px;
}

.fixed-menus li.active a,
li.current-cat {
    font-weight: bold;
    color: #000;
}

div#about {
    flex-direction: row-reverse;
    position: relative;
}

div#about h2 {
    margin-top: 0;
    margin-bottom: 45px;
}

figure.wp-block-image.size-full.aboutthesalon {
    position: absolute;
    bottom: 92px;
    right: -10px;
}

div#mission {
    padding-top: 0;
    position: relative;
    padding-bottom: 273px;
}

figure.wp-block-image.size-full.ourmission {
    position: absolute;
    bottom: 188px;
    left: -66px;
}

div#chooseus {
    padding: var(--section-padding);
}

h2.wp-block-heading.has-text-align-center.chooseus__title {
    margin: 31px 0 55px;
}

figure.wp-block-image.size-full.switching-inner__title {
    margin-bottom: 99px;
    max-width: fit-content;
}

.wp-block-group.switching-images {
    flex-direction: row-reverse;
}

.wp-block-group.switching-box {
    padding: 0 0 160px;
    max-width: 544px;
}

.wp-block-group.switching-box .wp-block-group.headline-flex {
    margin-bottom: 55px;
    justify-content: flex-start;
}

.wp-block-group.switching-box-wrap {
    width: 100%;
    height: auto;
}

.wp-block-group.image-container-wrap {
    position: sticky;
    top: 20px;
    z-index: 99;
    height: 100vh;
    width: 60%;
    max-width: 645px;
}

div#oggiotto {
    flex-direction: row-reverse;
}

.wp-block-group.oggiotto__image-box {
    background-image: url(http://caprice-okubo.com/wp/wp-content/uploads/2026/06/oggi-bk-1.png);
    background-size: cover;
    background-position: center;
}

.wp-block-group.oggiotto__text,
.wp-block-group.oggiotto__image-box {
    width: 50%;
    height: 930px;
    position: relative;
}

figure.wp-block-image.size-full.oggiotto__image1 {
    max-width: 366px;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    height: fit-content;
}

figure.wp-block-image.size-full.oggiotto__image2 {
    position: absolute;
    bottom: 40px;
    right: 89px;
}

figure.wp-block-image.size-full.oggiotto__image3 {
    left: 109px;
    position: absolute;
    bottom: -1px;
}

.wp-block-group.oggiotto__text>.wp-block-group__inner-container {
    height: fit-content;
    width: fit-content;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
}

.wp-block-group.oggiotto__text h2 {
    margin-bottom: 50px;
}

.wp-block-group.oggiotto__text p {
    max-width: 430px;
}

.wp-block-group.stylist-box figure.wp-block-image.size-full {
    max-width: 275px;
}

div#modal2 .wp-block-buttons.btn a {
    background: #ebd9eb !important;
    border: none !important;
    color: #fff !important;
    height: 58px !important;
    font-size: 40px;
    line-height: 1;
    padding: 0 0 9px !important;
}

div#modal2 .wp-block-buttons.btn {
    width: 58px !important;
    border: none !important;
    border-radius: 50% !important;
    height: 58px !important;
    padding: 0 !important;
    margin: 0 !important;
    position: absolute;
    bottom: 107px;
    right: -15px;
    transition: .6s;
}

div#modal2 .wp-block-buttons.btn:hover {
    width: 63px !important;
    height: 63px !important;
}

div#modal2 .wp-block-buttons.btn:hover a {
    background: #f2e6f2 !important;
    height: 63px !important;
}

.wp-block-group.stylist-box {
    position: relative;
    max-width: fit-content;
}

.wp-block-group.staff__flex {
    gap: 230px !important;
}

.wp-block-group.stylist-box h4 {
    margin: 46px 0 11px;
    font-size: 18px;
}

.wp-block-group.stylist-box h3 {
    font-size: 18px;
}

.wp-block-group.close-wrap.modal-profile figure.wp-block-image.size-full {
    /* width: 40%; */
    max-width: 271px;
}

.wp-block-group.close-wrap.modal-profile>.wp-block-group.pc {
    width: 40%;
}

.wp-block-group.close-wrap.modal-profile {
    background: #f7f7f7;
}

.wp-block-group.modal-profile__boxflex {
    width: 90%;
    margin: 0 auto;
    gap: 40px !important;
}

.wp-block-group.modal-profile__textbox {
    width: 62%;
    padding: 42px 0;
}

.wp-block-group.modal-profile__titleflex {
    gap: 12px !important;
    margin-bottom: 14px;
}

.wp-block-group.modal-profile__stylist p:first-of-type {
    background: #fff;
    line-height: 1;
    border-radius: 90px;
    padding: 7px 18px;
    margin-right: 15px;
}

.wp-block-group.modal-profile__boxinner p {
    width: 74%;
    line-height: 2;
}

.wp-block-group.modal-profile__boxinner h3 {
    font-size: 16px;
    width: 26%;
}

.wp-block-group.modal-profile__boxinner {
    margin-top: 28px;
}

.wp-block-group.modal-profile__box {
    margin-top: 48px;
}

/*.wp-block-buttons.close-wrap {
    top: 10px;
    right: 9px;
    position: fixed !important;
    width: 20px;
    height: 20px;
}
*/


div#modal2 {
    cursor: pointer;
}

.wp-block-group.info__box {
    max-width: 667px;
    margin: 0 auto;
}

p.info__title {
    width: 156px;
}

.wp-block-group.info__flex {
    margin-bottom: 26px;
}

div#information>.wp-block-group__inner-container {
    background-image: url(http://caprice-okubo.com/wp/wp-content/uploads/2026/06/Caprice.png), url(http://caprice-okubo.com/wp/wp-content/uploads/2026/06/info1-1.png), url(http://caprice-okubo.com/wp/wp-content/uploads/2026/06/info.png);
    background-position: bottom 85px left 308px, top right, bottom left;
}

.image-container .wp-block-image {
    opacity: 0;
    transition: opacity 0.6s ease;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    bottom: 0;
    margin: auto;
    height: fit-content;
}

.image-container {
    min-height: 92vh;
}

div#faq .wp-block-group.inner.top-gallery {
    padding: 170px 0 1px;
}

.vk_accordion {
    margin: 0 auto !important;
    border-bottom: 1px solid black !important;
}

.vk_accordion-trigger {
    padding: 27px 27px 27px 43px !important;
}

.vk_accordion-trigger:before {
    content: 'Q';
    position: absolute;
    top: 32px;
    left: 13px;
    font-size: 20px;
}

.wp-block-vk-blocks-accordion-target.vk_accordion-target.vk_accordion-target-open {
    padding: 27px 0;
}

.vk_accordion-trigger .vk_accordion-toggle-open {
    border-bottom: 1px solid black !important;
}

div#about .wp-block-group.image-flexbox__text>.wp-block-group__inner-container {
    margin: 0;
    max-width: 100%;
}

#about .wp-block-group.image-flexbox__text {
    width: 55%;
}

.custom-modal {
    z-index: 99999999999 !important;
}

.wp-block-group.switching-box-wrap .wp-block-group.headline-flex h3 {
    text-align: left;
}

.custom-modal {
    position: relative;
}

body#hairmenu .under-v {
    background-image: url(http://caprice-okubo.com/wp/wp-content/uploads/2026/06/hairmenu-1.png);
}

body#hairmenu .under-v:after {
    background-image: url(http://caprice-okubo.com/wp/wp-content/uploads/2026/06/Hair-Menu_title.png);
    height: 87px;
}

div#hairmenu {
    position: relative;
}

div#hairmenu figure.wp-block-image.size-full.ourmission {
    bottom: 183px;
    left: -19px;
}

div#hairmenu {
    padding: 260px 0 330px;
}

.wp-block-group.is-layout-flex.slider-indicator {
    display: flex;
    justify-content: center;
    gap: 30px !important;
    flex-wrap: wrap;
    position: relative;
    bottom: auto;
    left: 0;
    right: 0;
    z-index: 20;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    top: 0;
    margin-bottom: 165px;
    margin-top: 110px;
}

.slider-indicator .slidernum {
    padding: 13px 12px;
    background-color: #fff;
    cursor: pointer;
    border: 1px solid black;
    color: black;
    transition: 0.3s;
    border-radius: 90px;
    width: 180px;
    text-align: center;
    font-size: 16px;
    line-height: 1;
}

.slider-indicator .slidernum.active,
.slider-indicator .slidernum:hover {
    background-color: #d9d9d9;
    color: black;
}

div#setmenu .wp-block-group.headline-flex h3 {
    margin-bottom: 0 !important;
}

.wp-block-group.setmenu__textbox {
    width: 50%;
}

figure.wp-block-image.size-full.setmenu__image {
    width: 40%;
}

div#setmenu>.wp-block-group__inner-container,
div#menulist>.wp-block-group__inner-container {
    background: none;
}

.wp-block-group.setmenu__textbox h5 {
    margin-bottom: 62px;
}

.wp-block-group.setmenu__textbox h4 {
    margin-top: 58px;
    margin-bottom: 24px;
}

.wp-block-group.setmenu__textbox h4,
.wp-block-group.setmenu__textbox h5 {
    font-size: 20px;
}

.wp-block-group.slider-04.setmenu__slider .wp-block-group.next-prev {
    top: 442px;
}


.wp-block-group.slider-04.setmenu__slider .next-prev .prev,
.wp-block-group.slider-04.setmenu__slider .next-prev .next {
    top: auto;
}

.wp-block-group.slider-04.setmenu__slider .next-prev .next {
    right: -50px;
}

.wp-block-group.slider-04.setmenu__slider .next-prev .prev {
    left: -50px;
}

.wp-block-group.setmenu__textbox .wp-block-group.headline-flex {
    justify-content: start;
}

.slider-indicator .slidernum span {
    font-size: 11px;
}

p.has-text-align-center.slidernum.slider-num-4,
p.has-text-align-center.slidernum.slider-num-5 {
    padding: 5px 0 4px;
}

p.tax.wp-block-paragraph {
    max-width: fit-content;
    margin: 0 auto 110px;
    position: relative;
    top: -19px;
}

.wp-block-group.menulist__menubox h4 {
    font-size: 36px;
    margin-bottom: 10px;
    line-height: 1;
    font-family: "Cormorant", serif;
    font-optical-sizing: auto;
    font-weight: 100;
    font-style: normal;
}

.wp-block-group.menulist__menuflex {
    margin-top: 35px;
}

p.menulist__menuprice.wp-block-paragraph {
    width: 82px;
}

.wp-block-group.menulist__menubox {
    margin-bottom: 77px;
    padding-bottom: 77px;
    border-bottom: 1px solid black;
    max-width: 1100px;
    margin-left: auto;
    margin-right: auto;
}

.wp-block-group.menulist__menubox h4 span {
    font-size: 25px;
    font-family: "Noto Serif JP", serif;
    font-optical-sizing: auto;
    font-style: normal;
    font-weight: 300 !important;
}

body#hairmenu .wp-block-group.reserve-wrap {
    margin-top: 60px;
}

.pagination {
    display: flex;
    max-width: fit-content;
    margin: 0 0 0 auto;
}

p.menulist__menutitle.wp-block-paragraph strong {
    font-weight: inherit;
}

body#headspa .under-v {
    background-image: url(http://caprice-okubo.com/wp/wp-content/uploads/2026/07/head-v.png);
}

body#headspa .under-v:after {
    background-image: url(http://caprice-okubo.com/wp/wp-content/uploads/2026/06/Head-Spa-Menu_.png);
    height: 183px;
}

.spamenubox {
    padding-top: 243px;
}

figure.wp-block-image.size-full.spamenubox__title {
    margin: 109px 0 125px;
    max-width: fit-content;
    position: relative;
    left: -50px;
}

.wp-block-group.spamenubox__textbox {
    max-width: 640px;
    margin: 0 auto 159px;
}

.wp-block-group.spamenubox__textbox h2 {
    margin: 89px 0 50px;
}

div#spamenubox__flex {
    max-width: 600px;
    margin: 0 auto;
}

.wp-block-group.spamenubox__point h4 {
    margin: 0 0 5px;
    font-family: "Cormorant", serif;
    font-optical-sizing: auto;
    font-weight: 100;
    font-style: normal;
    font-size: 16px;
}

.wp-block-group.spamenubox__point h3 {
    margin-bottom: 44px;
}

.wp-block-group.spamenubox__point {
    max-width: 542px;
    width: 45%;
}

figure.wp-block-image.size-full.spamenubox__pointimage {
    max-width: 434px;
    margin: 0 auto 58px;
}

.wp-block-group.spamenubox__pointlist {
    background: #f8f8f8;
    padding: 40px;
}

.wp-block-group.spamenubox__pointlist ul li:before,
.wp-block-group.flow__motimono ul.wp-block-list li:before {
    content: '●';
    position: absolute;
    left: 0;
    color: #ebd9eb;
}

.wp-block-group.spamenubox__pointlist ul li,
.wp-block-group.flow__motimono ul.wp-block-list li {
    padding-left: 24px;
    position: relative;
}

.wp-block-group.spamenubox__pointlist ul,
.wp-block-group.flow__motimono ul {
    max-width: fit-content;
    margin: 0 auto;
}

div#spamenubox__flex p {
    font-size: 20px;
}

div#toshinyoku figure.wp-block-image.size-full.spamenubox__title {
    left: auto;
    right: -50px;
    max-width: fit-content;
    margin-left: auto;
}

figure.wp-block-image.size-full.newcareer {
    position: absolute;
    bottom: 219px;
}

body#recruit .under-v {
    background-image: url(http://caprice-okubo.com/wp/wp-content/uploads/2026/06/recruit-img-1.png);
}

body#recruit .under-v:after {
    background-image: url(http://caprice-okubo.com/wp/wp-content/uploads/2026/06/Recruit-1.png);
    height: 123px;
}

.wp-block-group.bk.idel {
    background-image: url(http://caprice-okubo.com/wp/wp-content/uploads/2026/06/ideal-1.png);
    background-size: cover;
    background-position: center;
}

.wp-block-group.bk.idel .inner {
    padding: 70px 0 158px;
}

.wp-block-group.bk.idel h2 span {
    font-size: 18px;
}

.wp-block-group.bk.idel h2 {
    margin-bottom: 59px;
}

figure.wp-block-image.size-full.idel__entitle {
    max-width: fit-content;
    margin: 0 auto 73px;
}

.wp-block-group.bk.idel .inner {
    text-shadow: 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff;
}

p.job__flextitle.wp-block-paragraph {
    width: 308px;
}

div#job .wp-block-group.headline-flex {
    margin-bottom: 110px;
}

div#job {
    padding: var(--section-padding);
}

.wp-block-group.job__flex {
    padding-bottom: 44px;
    margin-bottom: 44px;
    border-bottom: 1px solid;
}

.wp-block-group.job__flex:last-of-type {
    margin-bottom: 0;
}

.wp-block-group.flow__innerbox {
    max-width: 525px;
    margin: 0 auto;
}

.wp-block-group.flow__stepflex {
    margin-bottom: 14px;
}

.wp-block-group.flow__step {
    margin-bottom: 55px;
}

p.flow__step.wp-block-paragraph {
    font-family: "Cormorant", serif;
    font-optical-sizing: auto;
    font-weight: 100;
    font-style: normal;
    width: 72px;
}

.wp-block-group.flow__motimono h5 {
    font-size: 16px;
    margin-bottom: 10px;
}

.wp-block-group.flow__motimono {
    background: #fff;
    padding: 25px;
    margin-top: 35px;
}

div#flow>.wp-block-group__inner-container {
    background-image: url(http://caprice-okubo.com/wp/wp-content/uploads/2026/06/Lets-work-together.png), url(http://caprice-okubo.com/wp/wp-content/uploads/2026/06/flow.png), url(http://caprice-okubo.com/wp/wp-content/uploads/2026/06/flow2.png);
    background-position: bottom 20px right 20px, top right, bottom left;
}

body#recruit footer#site-footer .wp-block-group.reserve-wrap {
    display: none;
}

div#form {
    background-image: url(http://caprice-okubo.com/wp/wp-content/uploads/2026/06/apply.png);
}

div#form .inner {
    padding: 144px 0 131px;
}

.wp-block-group.flow__stepflex p,
.wp-block-group.flow__stepflex h4 {
    font-size: 18px;
}

.wp-block-group.flow__stepflex p {
    line-height: 1;
}

.wp-block-group.flow__stepflex p span {
    font-size: 29px;
}

div#form figure.wp-block-image.size-full.reserve-wrap__title {
    max-width: fit-content;
}

div#form {
    margin-top: 60px !important;
}

/*gallery*/
.wrap.gallery-wrap .under-v {
    background-image: url(http://caprice-okubo.com/wp/wp-content/uploads/2026/06/gallery-v-1.png);
}

.wrap.gallery-wrap .under-v:after {
    background-image: url(http://caprice-okubo.com/wp/wp-content/uploads/2026/06/Gallery.png);
    height: 109px;
}

.wrap.gallery-wrap .inner {
    margin-top: 206px;
}

li.gallery-item {
    width: 24%;
}

ul.custom-post-list.gallery-grid-list {
    display: flex;
    flex-wrap: wrap;
    gap: 9%;
}

a.gallery-lightbox-trigger,
.gallery-thumbnail-box,
img.attachment-medium.size-medium.wp-post-image {
    height: 100%;
    width: 100%;
}

.gallery-thumbnail-box,
li.gallery-item img,
li.gallery-item {
    border-radius: 0 120px 0 120px;
}

li.gallery-item img {
    object-fit: cover;
    object-position: center;
}

li.gallery-item {
    width: 351px;
    height: 415px;
    object-fit: contain;
    margin-bottom: 120px;
}


/* --- ① ホバー時にカテゴリー名を表示する仕組み --- */
.gallery-thumbnail-box {
    position: relative;
    overflow: hidden;
    cursor: pointer;
}

.gallery-hover-mask {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, 0.6);
    display: flex;
    justify-content: center;
    align-items: center;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.gallery-thumbnail-box:hover .gallery-hover-mask {
    opacity: 1;
    /* マウスホバーで見えるようにする */
}

#gallery-modal-target-img,
#gallery-modal-target-category {
    transition: opacity 0.3s ease-in-out !important;
}

.hover-cat-name {
    color: black;
    font-size: 16px;
    text-align: center;
    padding: 10px;
    text-shadow: 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff;
}

/* --- ② モーダルウィンドウ（画像拡大）の固定配置 --- */
.gallery-lightbox-modal {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, 0.85);
    z-index: 999;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.4s ease;
}

.gallery-lightbox-modal.is-active {
    opacity: 1;
    pointer-events: auto;
}

.gallery-modal-inner-content {
    position: relative;
    text-align: center;
    max-width: 600px;
    max-height: 80vh;
}

.gallery-modal-inner-content img {
    max-width: 100%;
    max-height: 70vh;
    object-fit: contain;
    border-radius: 0 120px 0 120px;
}

.gallery-modal-caption-category {
    color: black;
    margin-top: 15px;
    font-size: 18px;
    /* font-weight: bold; */
}

.gallery-modal-close-btn {
    position: absolute;
    top: 20px;
    right: 30px;
    color: black;
    font-size: 50px;
    cursor: pointer;
    z-index: 100000;
    line-height: 1;
}

/* --- ③ 「前へ」「次へ」ナビゲーションボタン --- */
.gallery-modal-nav-btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    /* background: rgba(255, 255, 255, 0.1); */
    /* color: #fff; */
    border: none;
    font-size: 40px;
    /* padding: 20px 15px; */
    cursor: pointer;
    transition: background 0.3s;
    z-index: 99999999999;
    line-height: 1;
    background: none;
    width: 20px;
    height: 20px;
}

.gallery-modal-prev-btn {
    left: 20%;
}

.gallery-modal-next-btn {
    right: 20%;
}

.wp-block-group.inner.top-gallery li.gallery-item {
    width: 273px;
    height: 350px;
    margin-bottom: 0px;
}

.wp-block-group.inner.top-gallery ul.custom-post-list.gallery-grid-list {
    gap: 68px;
}

/* 初回訪問時（bodyにまだloadedがついていない間）は、CSS側でも優しく隠しておく */
body#top.loading header,
body#top.loading .wrap {
    opacity: 0;
}

.wp-block-group.header-inner nav.header-inner-menu ul li {
    font-size: 19px;
    text-shadow: 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff;
}

.wp-block-group.reserve-wrap .wp-block-group.modal__button-flex .btn a {
    background: black !important;
    color: #fff !important;
    font-family: "Noto Serif JP", serif;
    font-optical-sizing: auto;
    font-style: normal;
    font-weight: 500;
}

.wp-block-group.reserve-wrap .wp-block-group.modal__button-flex .btn a:hover {
    background: none !important;
    color: black !important;
}

.wp-block-group.reserve-wrap .wp-block-group.modal__button-flex .wp-block-buttons.btn {
    margin: 0;
    max-width: 200px !important;
}

/* メニューの初期状態と固定設定 */
.wp-block-list.fixed-menus {
    transition: opacity 0.5s ease-in-out, visibility 0.5s;

    opacity: 1;
    visibility: visible;
}

/* フッターに入ったときの状態 */
.wp-block-list.fixed-menus.is-hidden {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}

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

    タブレット横以下

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

    .wp-block-group.bk.top-product>.wp-block-group__inner-container {
        background-size: 560px, 300px, 300px;
    }

    figure.wp-block-image.size-full.is-resized.top-product__image {
        top: -32px;
        right: 147px;
        max-width: 119px;
    }
}

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

    .inner {
        width: 90%;
    }

    div#modal1 .wp-block-buttons.btn {
        width: 139px !important;
    }

    figure.wp-block-image.size-full.mv-logo.pc {
        display: none;
    }

    .tab {
        display: block;
    }

    figure.wp-block-image.size-full.mv-logo {
        left: -86px;
        top: 85px;
    }

    .wp-block-group.bk.top-menu .inner {
        padding: 221px 0 11px;
    }

    .wp-block-group.top-voice__box {
        max-width: 450px;
    }

    .wp-block-group.top-voice__flex {
        gap: 59px !important;
    }

    .wp-block-group.inner.top-space figure.wp-block-image.size-full.english-title {
        left: -49px;
    }

    ul.wp-block-list.fixed-menus {
        left: 39px;
    }

    .fixed-menus li {
        font-size: 14px;
    }

    :root {
        --section-padding: 180px 0 180px;
    }

}

@media screen and (max-width:1600px) {
    ul.wp-block-list.fixed-menus {
        display: none;
    }

    .wrap.gallery-wrap ul.wp-block-list.fixed-menus {
        position: relative;
        bottom: auto;
        left: auto;
        top: -72px;
        display: block;
    }

}

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

    .mainv,
    .slider-01,
    .slider-01 .slide figure.wp-block-image.size-full,
    .slider-01 .slide figure.wp-block-image.size-full img {
        height: 665px;
    }

    figure.wp-block-image.size-full.image-flexbox__image {
        max-width: 400px;
        margin-left: 0;
    }

    :root {
        --section-padding: 160px 0 160px;
    }

    .wp-block-group.bk.top-menu .inner {
        padding: 181px 0 1px;
    }

    .wp-block-group.top-voice__box {
        max-width: 46%;
    }

    .wp-block-group.top-button-flex.inner {
        gap: 20px !important;
    }

    #about .wp-block-group.image-flexbox__text {
        width: 50%;
    }

    .wp-block-group.switching-inner {
        width: 79%;
    }

    .wp-block-group.oggiotto__text,
    .wp-block-group.oggiotto__image-box {
        width: 50%;
        height: 680px;
    }

    figure.wp-block-image.size-full.oggiotto__image2 {
        position: absolute;
        bottom: 64px;
        right: 21px;
        max-width: 136px;
    }

    .wp-block-group.info__box {
        text-shadow: 0 0 3px #f7f7f7, 0 0 3px #f7f7f7, 0 0 3px #f7f7f7, 0 0 3px #f7f7f7, 0 0 3px #f7f7f7, 0 0 3px #f7f7f7, 0 0 3px #f7f7f7, 0 0 3px #f7f7f7, 0 0 3px #f7f7f7, 0 0 3px #f7f7f7;
    }

    div#information>.wp-block-group__inner-container {
        background-position: bottom 36px left 254px, top right, bottom left;
        background-size: 475px, 300px, 300px;
    }

    .wp-block-group.is-layout-flex.slider-indicator {
        max-width: 600px;
    }

    div#hairmenu {
        padding: 214px 0 265px;
    }

    div#hairmenu figure.wp-block-image.size-full.ourmission {
        bottom: 115px;
        left: -42px;
    }

    .spamenubox {
        padding-top: 200px;
    }

    div#toshinyoku figure.wp-block-image.size-full.spamenubox__title {
        right: -31px;
    }

    div#flow>.wp-block-group__inner-container {
        background-position: bottom 7px right 10px, top right, bottom left;
        background-size: 745px, 250px, 250px;
    }

    li.gallery-item {
        width: 32%;
    }

    ul.custom-post-list.gallery-grid-list {
        gap: 2%;
    }

    .wp-block-group.inner.top-gallery ul.custom-post-list.gallery-grid-list {
        gap: 68px;
        max-width: 950px;
        margin: 0 auto;
        justify-content: center;
    }

    .wp-block-group.slider-04.setmenu__slider .wp-block-group.next-prev {
        top: 522px;
    }


}

@media screen and (max-width:1250px) {
    .wp-block-group.top-menu__flex {
        display: block;
    }

    .wp-block-group.top-men__image {
        width: fit-content;
        margin: 0 auto 45px;
    }

    .wp-block-group.top-space__image-flex {
        margin-top: 36px;
    }

    li.gallery-item {
        width: 45%;
    }

    ul.custom-post-list.gallery-grid-list {
        gap: 10%;
        max-width: 950px;
        margin: 0 auto;
    }

    .wp-block-group.bk.top-product p.has-text-align-center.wp-block-paragraph {
        text-shadow: 0 0 5px #f7f7f7, 0 0 5px #f7f7f7, 0 0 5px #f7f7f7, 0 0 5px #f7f7f7, 0 0 5px #f7f7f7;
    }

}

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

    スマホ・タブレット縦

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

@media screen and (max-width:1100px) {
    .wp-block-group.slider-04.setmenu__slider .wp-block-group.next-prev {
        top: 486px;
    }

    /*ハンバーガーメニュー表示*/
    .nav-wrapper {
        display: block;
    }

    .is-layout-flex>nav.header-inner-menu {
        display: none;
    }

    .pc {
        display: none;
    }

    .sp {
        display: block !important;
    }

    .br-pc {
        display: none;
    }

    .br-tab {
        display: block;
    }

    /* ==============================
    
    お知らせ共通CSS
    
　============================== */
    .-has-sidebar .news-main-layout {
        grid-template-columns: 1fr;
        row-gap: 40px;
    }

    .-has-sidebar .news-page-body {
        width: 100%;
    }

    figure.wp-block-image.size-full.mv-logo.tab {
        display: none;
    }

    figure.wp-block-image.size-full.mv-logo {
        left: 3px;
        top: -92px;
        max-width: 311px;
    }

    figure.wp-block-image.size-full.maincopy {
        right: 0;
        bottom: auto;
        top: 418px;
    }

    header .wp-block-group.modal-wrap,
    .hamburger .wp-block-group__inner-container::after,
    .hamburger .wp-block-group__inner-container::before {
        display: none;
    }

    .wp-block-group.image-flexbox__text>.wp-block-group__inner-container {
        margin: 0;
        max-width: 100%;
    }

    .wp-block-group.image-flexbox__text {
        width: 100%;
        max-width: 700px;
        margin: auto;
    }

    figure.wp-block-image.size-full.image-flexbox__image {
        max-width: 400px;
        margin: 0 20px 60px auto;
    }

    .wp-block-group.image-flexbox__text figure.wp-block-image.size-full.english-title {
        position: relative;
        left: 0;
    }

    figure.wp-block-image.size-full.english-title,
    figure.wp-block-image.size-full.english-title img {
        height: 63px;
    }

    figure.wp-block-image.size-full.english-title.recruit-title,
    figure.wp-block-image.size-full.english-title.recruit-title img {
        height: 101px;
    }

    .wp-block-group.image-flexbox__text h2 {
        margin: 58px 0 69px;
    }

    .wp-block-group.headline-flex p.wp-block-paragraph {
        max-width: fit-content;
        margin: 0 auto;
    }

    figure.wp-block-image.size-full.top-men__image2 {
        position: absolute;
        top: -73px;
        right: -16px;
        max-width: 361px;
    }

    .wp-block-group.top-menu__flex:nth-of-type(even) figure.wp-block-image.size-full.top-men__image2 {
        right: auto;
        left: -38pt;
        top: -120px;
        max-width: 512px;
    }

    .wp-block-group.top-menu__flex:nth-of-type(even) {
        margin-bottom: 103px;
    }

    .wp-block-group.inner.top-space figure.wp-block-image.size-full.english-title {
        left: 0;
    }

    .wp-block-group.top-space__image-flex {
        display: block;
        max-width: 614px;
        margin: 0 auto;
    }

    figure.wp-block-image.size-full.top-space__image3 {
        width: 59%;
    }

    figure.wp-block-image.size-full.top-space__image3 {
        margin-top: 81px;
        margin-right: 0;
    }

    figure.wp-block-image.size-full.top-space__image2.reveal-image-wrapper {
        width: 40%;
        margin: 54px 0 0 auto;
    }

    footer nav.hamburger-menu {
        margin-top: 41px;
    }

    .wp-block-group.bk.top-product>.wp-block-group__inner-container {
        background-size: 260px, 200px, 200px;
        background-image: url(http://caprice-okubo.com/wp/wp-content/uploads/2026/06/Hair-care-sp.png), url(http://caprice-okubo.com/wp/wp-content/uploads/2026/06/oggi1-sp.png), url(http://caprice-okubo.com/wp/wp-content/uploads/2026/06/oggi-sp2.png);
        background-position: bottom 18px right 87px, top right, bottom left;
    }

    .wp-block-group.image-flexbox__text>.wp-block-group__inner-container {
        margin: 0;
    }

    .wp-block-group.top-menu__flex {
        margin-bottom: 195px;
    }

    .wp-block-group.top-men__image {
        position: relative;
        max-width: fit-content;
        margin: 0 auto 59px;
        width: 100%;
    }


    figure.wp-block-image.size-full.top-space__image2.reveal-image-wrapper {
        width: 45%;
    }

    figure.wp-block-image.size-full.top-space__image3 {
        width: 68%;
    }

    .wp-block-group.bk.top-product .inner {
        padding: 114px 0 165px;
    }

    .wp-block-group.bk.top-voice>.wp-block-group__inner-container {
        background-size: 772px, 250px;
    }

    .wp-block-group.top-button-flex {
        gap: 30px !important;
    }

    figure.wp-block-image.size-full.is-resized.top-product__image {
        top: auto;
        right: -37px;
        max-width: 119px;
        bottom: 23px;
    }

    .wp-block-group.bk.top-voice>.wp-block-group__inner-container {
        background-size: 445px, 250px;
        background-image: url(http://caprice-okubo.com/wp/wp-content/uploads/2026/06/User-Stories-sp.png), url(http://caprice-okubo.com/wp/wp-content/uploads/2026/06/voice-sp.png);
    }

    .wp-block-group.inner.image-flexbox.top-recruit figure.wp-block-image.size-full.english-title.recruit-title {
        margin: 0 0 0 auto;
    }

    .wp-block-group.inner.image-flexbox.top-recruit figure.wp-block-image.size-full.english-title.recruit-title,
    .wp-block-group.inner.image-flexbox.top-recruit h2 {
        margin-left: auto;
        max-width: fit-content;
    }

    .wp-block-group.inner.image-flexbox.top-recruit figure.wp-block-image.size-full.image-flexbox__image {
        margin-right: auto;
        margin-left: 0;
    }

    .wp-block-group.top-button-flex {
        display: block;
    }

    .wp-block-buttons.btn__top-button.btn.is-layout-flex.wp-block-buttons-is-layout-flex {
        max-width: 450px !important;
        margin-bottom: 25px;
    }

    .wp-block-group.reserve-wrap {
        width: 95%;
        margin: 165px auto 93px;
    }

    .wp-block-group.footer-inner {
        display: block;
    }

    figure.wp-block-image.size-full.footer-inner__logo.img-hover {
        max-width: 149px;
        margin: 0 auto 34px;
    }

    footer .wp-block-group.modal-wrap {
        display: block;
    }

    footer .wp-block-group.modal-wrap div#modal1 .btn {
        margin: auto;
    }

    nav.hamburger-menu {
        margin-top: 88px;
    }

    nav.hamburger-menu ul li {
        margin-bottom: 3px;
    }

    .wp-block-group.sp-nav-inner .wp-block-group.modal-wrap {
        display: block;
    }

    figure.wp-block-image.size-full.healand {
        right: 15px;
    }

    .wp-block-group.top-voice__flex.pc {
        display: none;
    }

    .wp-block-group.top-voice__box {
        max-width: 500px;
    }


    #about .wp-block-group.image-flexbox__text {
        width: 100%;
    }

    figure.wp-block-image.size-full.aboutthesalon {
        position: absolute;
        bottom: auto;
        right: 55px;
        top: 932px;
        max-width: 500px;
    }

    div#mission figure.wp-block-image.size-full.image-flexbox__image {
        margin-left: 0;
        margin-right: auto;
    }

    div#mission h2 {
        margin-right: 0;
        margin-left: auto;
        max-width: fit-content;
        text-align: right;
        margin-bottom: 40px;
    }

    figure.wp-block-image.size-full.ourmission {
        position: absolute;
        bottom: auto;
        left: 0;
        top: 600px;
        max-width: 400px;
    }

    figure.wp-block-image.size-full.switching-inner__title {
        display: none;
    }

    figure.wp-block-image.size-full.switching-inner__title {
        display: none;
    }

    .wp-block-group.switching-inner {
        width: 100%;
    }

    .wp-block-group.switching-box .wp-block-group.headline-flex {
        margin-bottom: 73px;
        justify-content: center;
    }

    .wp-block-group.switching-box .wp-block-image.sp {
        max-width: 424px;
        margin: 0 0 63px;
        margin-right: 0;
        margin-left: auto;
    }

    .wp-block-group.switching-box:nth-of-type(even) .wp-block-image.sp {
        margin-right: auto;
        margin-left: 0;
    }

    div#chooseus {
        padding-bottom: 0px;
    }

    div#oggiotto {
        display: block;
    }

    .wp-block-group.oggiotto__text,
    .wp-block-group.oggiotto__image-box {
        width: 100%;
        height: 680px;
    }

    figure.wp-block-image.size-full.oggiotto__image2 {
        position: absolute;
        bottom: 64px;
        right: -43%;
        max-width: 136px;
        left: 0;
        margin: auto;
    }

    div#information>.wp-block-group__inner-container {
        background-position: bottom 36px left 124px, top right, bottom left;
        background-size: 475px, 250px, 250px;
        background-image: url(http://caprice-okubo.com/wp/wp-content/uploads/2026/06/Caprice.png), url(http://caprice-okubo.com/wp/wp-content/uploads/2026/06/info2-sp.png), url(http://caprice-okubo.com/wp/wp-content/uploads/2026/06/info-sp.png);
    }

    .wp-block-group.oggiotto__text p {
        max-width: 830px;
        width: 93%;
        margin: 0 auto;
    }

    div#mission {
        padding-bottom: 181px;
    }

    .wp-block-group.switching-box {
        padding: 80px 0 0;
        max-width: 600px;
        margin: 0 auto;
    }

    div#chooseus {
        padding-bottom: 102px;
    }

    figure.wp-block-image.size-full.oggiotto__image3 {
        left: 15px;
        position: absolute;
        bottom: -1px;
        max-width: 450px;
    }

    .wp-block-group.modal-profile__boxinner {
        margin-top: 28px;
        display: block;
    }

    .wp-block-group.modal-profile__boxinner p {
        width: 100%;
    }

    .wp-block-group.staff__flex {
        gap: 100px !important;
    }

    .wp-block-group.modal-profile__boxinner h3 {
        width: 100%;
    }

    .wp-block-group.modal-profile__textbox {
        width: 100%;
    }

    .wp-block-group.close-wrap.modal-profile figure.wp-block-image.size-full {
        max-width: 271px;
        margin: 47px auto;
    }

    div#hairmenu {
        padding: 79px 0 147px;
    }

    div#hairmenu figure.wp-block-image.size-full.ourmission {
        bottom: auto;
        left: auto;
        right: 125px;
        top: 740px;
    }

    .wp-block-group.is-layout-flex.slider-indicator {
        max-width: 600px;
        gap: 20px !important;
        margin-bottom: 89px;
        margin-top: 72px;
    }

    figure.wp-block-image.size-full.setmenu__image {
        display: none;
    }

    .wp-block-group.sp figure.wp-block-image.size-full.setmenu__image {
        display: block;
        width: 100%;
        max-width: 500px;
        margin: 40px auto;
    }

    .wp-block-group.setmenu__textbox .wp-block-group.headline-flex {
        justify-content: center;
        height: 96px;
    }

    .wp-block-group.setmenu__textbox {
        width: 100%;
    }

    .wp-block-group.setmenu__textbox h4 {
        max-width: fit-content;
        margin: 0 auto 16px;
    }

    .wp-block-group.setmenu__textbox h5 {
        margin-bottom: 49px;
        text-align: right;
    }

    .wp-block-group.slider-04.setmenu__slider .next-prev .prev {
        left: -6px;
    }

    .wp-block-group.slider-04.setmenu__slider .next-prev .next {
        right: -6px;
    }

    .wp-block-group.slider-04.setmenu__slider .next-prev .prev,
    .wp-block-group.slider-04.setmenu__slider .next-prev .next {
        top: auto;
    }

    div#menulist .inner {
        padding-top: 51px;
        padding-bottom: 20px;
    }

    p.tax.wp-block-paragraph {
        margin: 0 auto 68px;
        top: -20px;
        font-size: 14px;
        line-height: 2;
    }

    .wp-block-group.menulist__menuflex {
        margin-top: 35px;
        display: block;
    }

    p.menulist__menuprice.wp-block-paragraph {
        width: fit-content;
        margin: 0 0 0 auto;
    }

    p.menulist__menutitle.wp-block-paragraph {
        font-size: 13px;
        line-height: 2;
    }

    p.menulist__menutitle br {
        display: none;
    }

    p.menulist__menutitle.wp-block-paragraph strong {
        font-weight: inherit;
        display: block;
        background: #fff;
        padding: 2px 6px;
        font-size: 16px;
        margin-bottom: 5px;
    }

    .wp-block-group.next-prev {
        top: 505px;
    }

    .spamenubox {
        padding-top: 170px;
    }


    div#toshinyoku figure.wp-block-image.size-full.spamenubox__title {
        right: -25px;
    }

    figure.wp-block-image.size-full.spamenubox__title {
        left: -28px;
        margin: 63px 0 86px;
    }

    div#spamenubox__flex {
        max-width: 460px;
    }

    .wp-block-group.spamenubox__textbox h2 {
        margin: 70px 0 43px;
    }

    .wp-block-group.spamenubox__pointflex {
        display: block;
    }

    .wp-block-group.spamenubox__point {
        max-width: 542px;
        width: 100%;
        margin: 0 auto 86px;
    }

    .wp-block-group.spamenubox__textbox {
        margin: 0 auto 127px;
    }

    figure.wp-block-image.size-full.spamenubox__pointimage {
        max-width: 350px;
    }

    body#headspa .under-v:after {
        height: 167px;
    }

    .wp-block-group.spamenubox__point:last-of-type {
        margin-bottom: 0;
    }

    figure.wp-block-image.size-full.newcareer {
        position: absolute;
        bottom: auto;
        top: 674px;
        left: 0;
        right: 0;
        margin: auto;
        max-width: fit-content;
    }

    p.has-text-align-center.idel__text.wp-block-paragraph {
        text-align: left;
        max-width: fit-content;
        margin: auto;
    }

    div#flow>.wp-block-group__inner-container {
        background-position: bottom 25px right 10px, top right, bottom left;
        background-size: 515px, 175px, 175px;
        background-image: url(http://caprice-okubo.com/wp/wp-content/uploads/2026/06/Lets-work-together.png), url(http://caprice-okubo.com/wp/wp-content/uploads/2026/06/flowsp.png), url(http://caprice-okubo.com/wp/wp-content/uploads/2026/06/flowsp2.png);
    }

    div#form figure.wp-block-image.size-full.reserve-wrap__title {
        max-width: 550px;
    }

    .wp-block-group.job__flex {
        padding-bottom: 38px;
        margin-bottom: 38px;
        display: block;
    }

    li.gallery-item {
        width: 42%;
    }

    ul.custom-post-list.gallery-grid-list {
        gap: 16%;
    }

    li.gallery-item {
        margin-bottom: 50px;
    }

    .wrap.gallery-wrap .inner {
        margin-top: 124px;
    }

    .wp-block-group.slider-05.sp .wp-block-group.next-prev {
        bottom: auto;
        top: 204px;
    }

    body#about div#about {
        padding-bottom: 73px;
    }

    .wp-block-group.sp-nav-wrap nav.hamburger-menu ul li a {
        margin-bottom: 27px;
        font-size: 18px;
        line-height: 1;
    }

    p.map-link.wp-block-paragraph a {
        margin-bottom: 21px;
        margin-top: 14px;
    }

    .wp-block-group.sp-nav-inner {
        height: fit-content;
        width: fit-content;
        position: absolute;
        left: 0;
        right: 0;
        margin: auto;
        bottom: 137px;
        top: 0;
    }

    .gallery-modal-inner-content {
        max-width: 80%;
    }

    .gallery-modal-next-btn {
        right: 5%;
    }

    .gallery-modal-prev-btn {
        left: 5%;
    }
}



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

    タブレット縦のみ

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

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


    .mainv,
    .slider-01,
    .slider-01 .slide figure.wp-block-image.size-full,
    .slider-01 .slide figure.wp-block-image.size-full img {
        height: 583px;
    }

    .tel-menu-flex {
        max-width: 374px;
    }

    .vk_spacer-display-tablet {
        display: block !important;
    }

    .vk_spacer-display-pc,
    .vk_spacer-display-mobile {
        display: none !important;
    }

}


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

    スマホ以下　

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

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

    :root {
        --base-font-size: 14px;
        --heading-size-l: 20px;
        --heading-size-m: 20px;
        --base-line-height: 2.5;
        --heading-line-height: 1.8;
        --section-padding: 80px 0 84px;
    }

    .br-sp {
        display: block;
    }

    .fix_nav.sp_disp.sp {
        display: block;
    }

    /*スマホ版MVの高さ適宜変更*/
    .mainv,
    .slider-01,
    .slider-01 .slide figure.wp-block-image.size-full,
    .slider-01 .slide figure.wp-block-image.size-full img {
        height: 60vh;
    }

    .inner {
        width: 90%;
    }

    .vk_spacer-display-mobile {
        display: block !important;
    }

    .vk_spacer-display-pc,
    .vk_spacer-display-tablet {
        display: none !important;
    }

    /* ==============================
    
        特定商取引に基づく表記・テーブル

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

    .wp-block-table tr td {
        display: block;
        width: 100%;
    }

    .wp-block-table td:first-of-type {
        width: 100%;
    }

    figure.wp-block-table td,
    figure.wp-block-table th {
        border: none;
        padding: 10px 13px;
    }


    /* ==============================
    
    個人情報保護方針
    
　============================== */

    .wp-block-group.policy-wrap p {
        margin-bottom: 23px;
    }

    .wp-block-group.policy-wrap li {
        margin-bottom: 20px;
    }

    /* ==============================
    
    お知らせ共通CSS
    
　============================== */

    section.entry_list {
        font-size: 14px;
    }

    .nav_select {
        margin-top: 21px;
    }

    .news-main-layout {
        padding-top: 36px;
        margin-bottom: 80px;
    }

    .-has-sidebar .news-main-layout {
        row-gap: 20px;
    }

    /* ==============================
    
        以下テーマ専用CSS
    
    ============================== */
    .hamburger__line {
        width: 57px;
    }

    .hamburger-wrapper {
        width: 93px;
        height: 65px;
    }

    .icon-style-6 p.hamburger__line.hamburger__line--1 {
        top: 24px;
    }

    .icon-style-6 p.hamburger__line.hamburger__line--3 {
        top: 40px;
    }

    .open.icon-style-6 p.hamburger__line.hamburger__line--1,
    .open.icon-style-6 p.hamburger__line.hamburger__line--3 {
        top: 32px;
    }

    .mainv,
    .slider-01,
    .slider-01 .slide figure.wp-block-image.size-full,
    .slider-01 .slide figure.wp-block-image.size-full img {
        height: 450px;
        border-radius: 0 60px 0 60px !important;
    }

    .wp-block-group.mainv {
        max-width: 1550px;
        margin: 83px auto 0;
        width: 91%;
    }

    figure.wp-block-image.size-full.mv-logo {
        left: 10px;
        top: -59px;
        max-width: 199px;
    }

    figure.wp-block-image.size-full.healand {
        right: 15px;
        max-width: 271px;
        bottom: 120px;
    }

    figure.wp-block-image.size-full.maincopy {
        right: 0;
        bottom: auto;
        top: 344px;
        width: 100%;
        max-width: 400px;
    }

    .wp-block-group.top-men__image {
        max-width: 400px;
    }

    figure.wp-block-image.size-full.english-title,
    figure.wp-block-image.size-full.english-title img {
        height: 38px;
    }

    .wp-block-group.image-flexbox__text h2 {
        margin: 41px 0 49px;
    }

    figure.wp-block-image.size-full.image-flexbox__image {
        max-width: 254px;
        margin: 0 0px 50px auto;
    }

    .wp-block-group.image-flexbox__text .btn {
        margin-top: 45px;
    }

    .wp-block-group.top-space__image-flex {
        max-width: 400px;
    }

    h2.graybk__title {
        font-size: 30px;
        position: absolute;
        top: -16px;
    }

    figure.wp-block-image.size-full.top-men__image2 {
        position: absolute;
        top: -52px;
        right: -8px;
        max-width: 224px;
    }

    .wp-block-group.bk.top-menu .inner {
        padding: 134px 0 1px;
    }

    .pc2 {
        display: none;
    }

    .sp2 {
        display: block;
    }

    .wp-block-group.top-menu__text .wp-block-group.headline-flex {
        margin-bottom: 38px;
    }

    .wp-block-group.top-menu__text p {
        text-align: left;
    }

    .wp-block-group.headline-flex p {
        text-align: center;
    }

    .wp-block-group.top-menu__text .wp-block-buttons.btn {
        margin-top: 40px;
    }

    .wp-block-group.top-menu__flex {
        margin-bottom: 79px;
    }

    .wp-block-group.top-menu__flex:nth-of-type(even) figure.wp-block-image.size-full.top-men__image2 {
        right: auto;
        left: -17px;
        top: 163px;
        max-width: 330px;
    }

    .wp-block-group.top-menu__flex:nth-of-type(even) .wp-block-group.top-menu__text {
        margin-top: 87px;
    }

    .wp-block-group.top-menu__flex:nth-of-type(even) {
        margin-bottom: 83px;
    }

    .wp-block-group.bk {
        background-size: 50%;
    }

    .wp-block-group.inner.top-space figure.wp-block-image.size-full.english-title {
        margin: 39px 0 45px;
    }

    .wp-block-group.headline-flex h3 {
        padding-left: 11px;
        border-left: none;
        margin-left: 19px;
        position: relative;
    }

    .wp-block-group.headline-flex h3:after {
        width: 1px;
        height: 38px;
    }

    .wp-block-group.inner.top-space .wp-block-group.headline-flex {
        margin-bottom: 31px;
    }

    figure.wp-block-image.size-full.top-space__image2.reveal-image-wrapper {
        width: 100%;
        max-width: 200px;
        margin: 54px 0 0 auto;
    }

    figure.wp-block-image.size-full.top-space__image3 {
        width: 100%;
        margin-top: 48px;
        max-width: 270px;
    }

    .wp-block-group.bk.top-product>.wp-block-group__inner-container {
        background-size: 160px, 178px, 178px;
        background-position: bottom 18px right 7px, top right, bottom left;
    }

    .wp-block-group.bk.top-product .inner {
        padding: 85px 0 165px;
    }

    figure.wp-block-image.size-full.is-resized.top-product__image {
        top: auto;
        right: -20px;
        max-width: 76px;
        bottom: 91px;
    }

    .wp-block-group.bk.top-product p {
        text-align: left;
    }

    .wp-block-group.bk.top-product h3 {
        margin-bottom: 40px;
    }

    .wp-block-group.bk.top-product .btn {
        margin-top: 51px;
    }

    .wp-block-group.bk.top-product h3,
    .wp-block-group.bk.top-product p {
        text-shadow: 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff;
    }

    .wp-block-group.inner.top-gallery .wp-block-group.headline-flex {
        margin-bottom: 46px;
    }

    .wp-block-group.inner.top-gallery .btn {
        margin-top: 53px;
    }

    .wp-block-group.bk.top-voice .inner {
        padding: 49px 0 89px;
    }

    .wp-block-group.bk.top-voice>.wp-block-group__inner-container {
        background-size: 261px, 175px;
        background-position: bottom 11px left 10px, top right;
    }

    .wp-block-group.bk.top-voice h3 {
        margin-bottom: 49px;
    }

    figure.wp-block-image.size-full.top-voice__icon {
        max-width: 60px;
    }

    .wp-block-group.top-voice__box {
        max-width: 400px;
        padding: 20px;
    }

    p.has-text-align-center.top-voice__age.wp-block-paragraph {
        font-size: 10px;
        width: 96px;
        margin: 12px auto 18px;
        border-radius: 60px;
        padding: 4px 0;
    }

    .wp-block-group.top-voice__box h4 {
        margin-bottom: 11px;
        font-size: 14px;
    }

    p.next:before {
        border-top: 6px solid transparent;
        border-left: 6px solid black;
        border-bottom: 6px solid transparent;
    }

    p.prev:before {
        border-top: 6px solid transparent;
        border-right: 6px solid black;
        border-bottom: 6px solid transparent;
    }

    p.next {
        right: -17px;
    }

    p.prev {
        left: -9px;
    }

    .wp-block-group.inner.image-flexbox.top-recruit {
        padding: 61px 0 80px;
    }

    figure.wp-block-image.size-full.english-title.recruit-title,
    figure.wp-block-image.size-full.english-title.recruit-title img {
        height: 60px;
    }

    h2,
    h3,
    h4,
    h5,
    h6 {
        letter-spacing: 1px;
    }

    .wp-block-group.inner.image-flexbox.top-recruit figure.wp-block-image.size-full.english-title.recruit-title,
    .wp-block-group.inner.image-flexbox.top-recruit h2 {
        margin-left: auto;
        max-width: fit-content;
        text-align: right;
    }

    .wp-block-group.image-flexbox__text h2 span {
        font-size: 16px;
    }

    .wp-block-buttons.btn__top-button.btn.is-layout-flex.wp-block-buttons-is-layout-flex a.wp-block-button__link.wp-element-button {
        padding: 15px 0 20px;
        font-size: 14px;
    }

    .wp-block-buttons.btn__top-button.btn.is-layout-flex.wp-block-buttons-is-layout-flex a.wp-block-button__link.wp-element-button span {
        font-size: 12px;
    }

    .wp-block-group.reserve-wrap {
        margin: 88px auto 70px;
    }

    figure.wp-block-image.size-full.reserve-wrap__title {
        max-width: 273px;
        margin: 0 auto 46px;
    }

    .wp-block-group.reserve-wrap h2 {
        margin-bottom: 29px;
    }

    .wp-block-group.reserve-wrap p.has-text-align-center.wp-block-paragraph {
        text-align: left;
    }

    .wp-block-group.reserve-wrap .wp-block-group.modal__button-flex {
        margin-top: 46px;
        display: block;
    }

    .wp-block-group.reserve-wrap .wp-block-group.modal__button-flex .wp-block-buttons.btn {
        margin: 0 auto 20px;
    }

    .wp-block-group.reserve-wrap .inner {
        padding: 54px 0 41px;
    }

    .wp-block-group.reserve-wrap {
        width: 95%;
        margin: 88px auto 64px;
        background-image: url(http://caprice-okubo.com/wp/wp-content/uploads/2026/06/reserve-sp.png);
    }

    figure.wp-block-image.size-full.footer-inner__logo.img-hover {
        max-width: 120px;
        margin: 0 auto;
    }

    footer ul.wp-block-navigation__container.items-justified-right.hamburger-menu.wp-block-navigation {
        display: flex;
        margin-bottom: 35px;
        justify-content: center;
        gap: 20px !important;
    }

    nav.hamburger-menu {
        max-width: 317px;
        margin: 72px auto 0;
    }

    nav.hamburger-menu ul li a {
        line-height: 1;
    }

    .wp-block-group.footer-inner {
        padding-bottom: 82px;
    }



    .custom-modal>.wp-block-group__inner-container {
        width: 80%;
    }

    .wp-block-group.close-wrap .wp-block-group.reserve-wrap .inner {
        padding: 17px 0;
    }

    .wp-block-group.close-wrap .wp-block-group.reserve-wrap .inner h2 {
        margin-bottom: 17px;
    }

    .wp-block-group.close-wrap .wp-block-group.reserve-wrap .inner .wp-block-group.modal__button-flex {
        margin-top: 32px;
    }

    .wp-block-group.close-wrap .wp-block-group.reserve-wrap .inner .wp-block-buttons.btn {
        margin-bottom: 11px;
    }

    .wp-block-group.close-wrap .wp-block-group.reserve-wrap .inner figure.wp-block-image.size-full.reserve-wrap__title {
        margin-bottom: 21px;
    }

    figure.wp-block-image.size-full.logo.img-hover,
    body#top header.scroll-nav figure.wp-block-image.size-full.logo.img-hover {
        max-width: 100px;
        top: 15px;
        left: 12px;
    }

    .under-v {
        margin: 89px auto 0;
        height: 180px;
        border-radius: 0 60px 0 60px;
    }

    .under-v:after {
        height: 30px;
        bottom: 19px;
        right: -1px;
        background-repeat: no-repeat;
        background-position: center right;

    }

    div#about h2 {
        margin-top: 0;
        margin-bottom: 31px;
    }

    figure.wp-block-image.size-full.aboutthesalon {
        position: absolute;
        bottom: auto;
        right: 0;
        top: 610px;
        max-width: 314px;
    }

    figure.wp-block-image.size-full.ourmission {
        top: 429px;
        max-width: 291px;
    }


    body#about div#about {
        padding-bottom: 0;
    }

    div#mission {
        padding: 14px 0 80px;
    }

    #about figure.wp-block-image.size-full.image-flexbox__image,
    #mission figure.wp-block-image.size-full.image-flexbox__image {
        margin-bottom: 65px;
    }

    .img_parallax-wrap {
        height: 250px;
    }

    .wp-block-group.switching-box {
        padding: 0 0 56px;
        max-width: 500px;
    }

    .wp-block-group.switching-box-wrap .wp-block-group.headline-flex h3 {
        font-size: 17px;
    }

    h2.wp-block-heading.has-text-align-center.chooseus__title {
        margin: 11px 0 65px;
    }

    div#chooseus {
        padding-bottom: 14px;
        padding-top: 76px;
    }

    .wp-block-group.switching-box .wp-block-image.sp {
        max-width: 289px;
        margin-top: 0;
        margin-bottom: 39px;
    }

    .wp-block-group.switching-box .wp-block-group.headline-flex {
        margin-bottom: 51px;
    }

    .wp-block-group.oggiotto__image-box {
        height: 300px;
    }

    .wp-block-group.oggiotto__text {
        width: 100%;
        height: auto;
    }

    .wp-block-group.oggiotto__text>.wp-block-group__inner-container {
        height: auto;
        padding: 46px 11px;
        position: relative;
    }

    .wp-block-group.oggiotto__text h2 {
        margin-bottom: 24px;
    }

    figure.wp-block-image.size-full.oggiotto__image3 {
        max-width: 212px;
    }

    figure.wp-block-image.size-full.oggiotto__image2 {
        bottom: 19px;
        right: 35px;
        max-width: 77px;
        left: auto;
        margin: auto;
    }

    .wp-block-group.staff__flex {
        gap: 40px !important;
    }

    .wp-block-group.stylist-box h4 {
        margin: 24px 0 3px;
        font-size: 11px;
    }

    .wp-block-group.stylist-box h3 {
        font-size: 14px;
    }

    div#modal2 .wp-block-buttons.btn:hover a {
        height: 30px !important;
    }

    div#modal2 .wp-block-buttons.btn a {
        height: 30px !important;
        font-size: 25px;
        padding: 0 0 10px !important;
    }

    div#modal2 .wp-block-buttons.btn:hover {
        width: 30px !important;
        height: 30px !important;
    }

    div#modal2 .wp-block-buttons.btn {
        width: 30px !important;
        height: 30px !important;
        bottom: 64px;
        right: -7px;
    }

    .wp-block-group.modal-profile__textbox {
        padding: 30px 0;
    }

    .wp-block-group.close-wrap.modal-profile figure.wp-block-image.size-full {
        max-width: 150px;
        margin: 24px auto;
    }

    .wp-block-group.modal-profile__titleflex h3 {
        font-size: 16px;
    }

    .wp-block-group.modal-profile__titleflex h4 {
        font-size: 12px;
    }

    .wp-block-group.modal-profile__titleflex {
        margin-bottom: 9px;
        display: block;
    }

    .wp-block-group.modal-profile__stylist p:first-of-type {
        padding: 5px 12px;
        margin-right: 10px;
        font-size: 12px;
    }

    .wp-block-group.modal-profile__box {
        margin-top: 34px;
    }

    .wp-block-group.modal-profile__boxinner h3 {
        font-size: 14px;
        background: #fff;
        padding: 1px 7px;
        margin-bottom: 7px;
    }

    .wp-block-group.modal-profile__boxinner p {
        font-size: 13px;
        padding: 0 5px;
    }

    figure.wp-block-image.size-full.oggiotto__image1 {
        max-width: 160px;
    }

    div#information>.wp-block-group__inner-container {
        background-position: bottom 36px left 124px, top right, bottom left;
        background-size: 240px, 175px, 175px;
    }

    .wp-block-group.info__flex {
        margin-bottom: 11px;
        display: block;
        border-bottom: 1px solid black;
        padding-bottom: 13px;
    }

    p.info__text.wp-block-paragraph {
        line-height: 2;
    }

    .wp-block-group.info__flex:last-of-type {
        border-bottom: none;
    }

    .wp-block-group.info__flex:last-of-type {
        border-bottom: none;
    }

    div#faq .wp-block-group.inner.top-gallery {
        padding: 80px 0 1px;
    }

    .vk_accordion-trigger {
        padding: 13px 13px 13px 25px !important;
    }

    .vk_accordion-trigger p {
        font-size: 14px !important;
    }

    .vk_accordion-trigger:before {
        top: 20px;
        left: 6px;
        font-size: 14px;
    }

    .vk_accordion-trigger .vk_accordion-toggle-close::after,
    .vk_accordion-trigger .vk_accordion-toggle-open::after {
        right: 3rem !important;
        width: 6px !important;
        height: 6px !important;
    }

    .wp-block-vk-blocks-accordion-target.vk_accordion-target.vk_accordion-target-open {
        padding: 19px 8px;
    }

    .vk_accordion-target p {
        font-size: 14px !important;
        line-height: 2 !important;
    }

    .wp-block-group.bk iframe {
        height: 200px !important;
    }

    .wp-block-group.inner.image-flexbox {
        max-width: 500px;
    }

    .wp-block-group.stylist-box figure.wp-block-image.size-full {
        max-width: 200px;
    }

    body#hairmenu .under-v:after {
        height: 37px;
    }

    div#hairmenu {
        padding: 32px 0 73px;
    }

    div#hairmenu figure.wp-block-image.size-full.ourmission {
        bottom: auto;
        left: auto;
        right: 125px;
        top: 460px;
    }

    .slider-indicator .slidernum {
        padding: 12px 0;
        width: 150px;
        font-size: 14px;
        line-height: 1;
    }

    .wp-block-group.is-layout-flex.slider-indicator {
        max-width: 400px;
        gap: 16px !important;
        margin-bottom: 43px;
        margin-top: 44px;
    }

    .wp-block-group.bk.top-voice .inner {
        padding: 44px 0 70px;
    }

    .wp-block-group.setmenu__textbox .wp-block-group.headline-flex {
        height: 66px;
    }

    .wp-block-group.sp figure.wp-block-image.size-full.setmenu__image {
        max-width: 285px;
    }

    .wp-block-group.setmenu__textbox h4,
    .wp-block-group.setmenu__textbox h5 {
        font-size: 15px;
    }

    .wp-block-group.setmenu__textbox h5 {
        margin-bottom: 21px;
        text-align: right;
    }

    div#setmenu .wp-block-group.headline-flex h3 {
        font-size: 18px;
    }

    .wp-block-group.setmenu__textbox h4 {
        margin: 0 auto 2px;
    }

    .wp-block-group.next-prev {
        top: 401px;
    }

    .wp-block-group.slider-05.sp .wp-block-group.next-prev {
        top: 208px;
        bottom: auto;
    }

    .wp-block-group.slider-05.sp .slider-dots {
        display: none;
    }

    div#menulist .inner {
        padding-top: 35px;
        padding-bottom: 1px;
    }

    p.tax.wp-block-paragraph {
        margin: 0 auto 34px;
        top: -14px;
        font-size: 12px;
        line-height: 2;
    }

    .wp-block-group.menulist__menubox h4 {
        font-size: 24px;
        margin-bottom: 0;
    }

    p.menulist__menutitle.wp-block-paragraph strong {
        padding: 2px 5px;
        font-size: 14px;
        margin-bottom: 9px;
    }

    p.menulist__menutitle.wp-block-paragraph {
        font-size: 12px;
    }

    .wp-block-group.menulist__menuflex {
        margin-top: 24px;
        display: block;
    }

    .wp-block-group.menulist__menubox {
        margin-bottom: 40px;
        padding-bottom: 40px;
    }

    .wp-block-group.menulist__menubox h4 span {
        font-size: 18px;
    }

    body#headspa .under-v:after {
        height: 76px;
    }

    .spamenubox {
        padding-top: 107px;
        position: relative;
    }

    figure.wp-block-image.size-full.spamenubox__title {
        left: -13px;
        margin: 40px 0 36px;
        max-width: 261px;
    }

    div#spamenubox__flex p {
        font-size: 15px;
    }

    div#spamenubox__flex {
        max-width: 255px;
    }

    .wp-block-group.spamenubox__textbox h2 {
        margin: 45px 0 28px;
    }

    .wp-block-group.spamenubox__textbox h2 {
        margin: 45px 0 28px;
    }

    figure.wp-block-image.size-full.spamenubox__pointimage {
        max-width: 220px;
        margin: 0 auto 40px;
    }

    .wp-block-group.spamenubox__point h4 {
        font-size: 14px;
    }

    .wp-block-group.spamenubox__point h3 {
        margin-bottom: 29px;
        font-size: 18px;
    }

    .wp-block-group.spamenubox__textbox {
        margin: 0 auto 62px;
    }

    .wp-block-group.spamenubox__pointlist {
        padding: 20px;
    }

    .wp-block-group.spamenubox__pointlist ul li,
    .wp-block-group.flow__motimono ul.wp-block-list li {
        padding-left: 21px;
        font-size: 13px;
    }

    div#toshinyoku figure.wp-block-image.size-full.spamenubox__title {
        right: -15px;
        max-width: 341px;
    }

    body#recruit .under-v:after {
        height: 61px;
    }

    figure.wp-block-image.size-full.newcareer {
        top: 449px;
        max-width: 264px;
    }

    figure.wp-block-image.size-full.idel__entitle {
        max-width: 400px;
        margin: 0 auto 37px;
    }

    .wp-block-group.bk.idel h2 {
        margin-bottom: 28px;
    }

    .wp-block-group.bk.idel .inner {
        padding: 51px 0 49px;
    }

    .wp-block-group.job__flex {
        padding-bottom: 18px;
        margin-bottom: 18px;
        display: block;
    }

    div#job .wp-block-group.headline-flex {
        margin-bottom: 56px;
    }

    .wp-block-group.flow__stepflex {
        margin-bottom: 11px;
        display: block;
    }

    .wp-block-group.flow__stepflex p,
    .wp-block-group.flow__stepflex h4 {
        font-size: 14px;
    }

    .wp-block-group.flow__stepflex {
        margin-bottom: 11px;
        display: block;
    }

    .wp-block-group.flow__motimono h5 {
        font-size: 14px;
        margin-bottom: 6px;
    }

    .wp-block-group.flow__motimono {
        padding: 17px;
        margin-top: 18px;
        text-shadow: 0 0 #fff;
    }

    div#flow>.wp-block-group__inner-container {
        background-position: bottom left, top right;
        background-size: 175px, 175px;
    }

    .wp-block-group.flow__step:last-of-type {
        margin-bottom: 0;
    }

    div#flow .inner {
        text-shadow: 0 0 5px #f7f7f7, 0 0 5px #f7f7f7, 0 0 5px #f7f7f7, 0 0 5px #f7f7f7, 0 0 5px #f7f7f7, 0 0 5px #f7f7f7;
    }

    div#form .inner {
        padding: 72px 0 45px;
    }

    div#form {
        margin-top: 40px !important;
        background-image: url(http://caprice-okubo.com/wp/wp-content/uploads/2026/06/apply-sp.png);
    }

    .wp-block-group.flow__step {
        border-bottom: 1px solid;
        margin-bottom: 24px;
        padding-bottom: 24px;
    }

    .wp-block-group.flow__step:last-of-type {
        padding-bottom: 0;
        margin-bottom: 0;
        border: none;
    }

    .wrap.gallery-wrap .under-v:after {
        height: 46px;
    }

    .wrap.gallery-wrap .inner {
        margin-top: 35px;
    }

    .wrap.gallery-wrap ul.wp-block-list.fixed-menus {
        position: relative;
        bottom: 0;
        left: 28px;
        top: 0;
        display: block;
    }

    .gallery-thumbnail-box,
    li.gallery-item img,
    li.gallery-item {
        border-radius: 0 60px 0 60px;
    }

    li.gallery-item {
        margin-bottom: 34px;
    }

    li.gallery-item {
        height: 171px;
    }

    .wrap.gallery-wrap ul.wp-block-list.fixed-menus {
        position: relative;
        bottom: 0;
        left: 28px;
        top: 0;
        margin-bottom: 42px;
        max-width: fit-content;
    }

    .fixed-menus li {
        font-size: 12px;
    }

    .fixed-menus li.active::before,
    li.current-cat::before {
        left: -14px;
        top: 15px;
        transform: translateY(-50%);
        color: #000;
        font-size: 6px;
    }

    .gallery-modal-caption-category {
        color: black;
        margin-top: 10px;
        font-size: 14px;
    }

    .gallery-modal-next-btn {
        right: 6px;
        top: 47%;
    }

    .gallery-modal-prev-btn {
        left: 6px;
        top: 47%;
    }

    .gallery-modal-close-btn {
        top: 13px;
        right: 14px;
        color: black;
        font-size: 40px;
    }

    .gallery-modal-inner-content {
        max-width: 300px;
        max-height: 80vh;
        width: 90%;
    }

    .hover-cat-name {
        font-size: 14px;
        padding: 0;
    }

    ul.custom-post-list.gallery-grid-list {
        gap: 13%;
        max-width: 400px;
        margin: 0 auto;
    }

    .loading-logo {
        max-width: 150px !important;
        width: 100% !important;
    }

    .wp-block-buttons.btn .wp-block-button a {
        padding: 13px 0 11px;
    }

    .wp-block-group.inner.top-gallery li.gallery-item {
        width: 133px;
        height: 161px;
        margin-bottom: 0px;
    }

    .wp-block-group.inner.top-gallery ul.custom-post-list.gallery-grid-list {
        gap: 43px;
        max-width: 400px;
        margin: 0 auto;
        justify-content: center;
    }

    .wp-block-group.slider-04.setmenu__slider .wp-block-group.next-prev {
        top: 388px;
    }

    p.map-link.wp-block-paragraph {
        font-size: 16px;
    }

    .wp-block-group.sp-nav-inner {
        height: fit-content;
        width: fit-content;
        position: relative;
        left: 0;
        right: 0;
        margin: auto;
        bottom: auto;
        top: auto;
    }

    .gallery-modal-inner-content img {
        border-radius: 0 60px 0 60px;
    }

    .gallery-modal-next-btn:before {
        border-top: 11px solid transparent;
        border-left: 11px solid black;
        border-bottom: 11px solid transparent;
    }

    .gallery-modal-prev-btn:before {
        border-top: 11px solid transparent;
        border-right: 11px solid black;
        border-bottom: 11px solid transparent;
    }

    .wp-block-group.flow__stepflex p span {
        font-size: 20px;
    }

    .wp-block-group.flow__stepflex p {
        line-height: 1.5;
    }

    .wp-block-group.reserve-wrap .wp-block-group.modal__button-flex .btn a {
        padding: 13px 0 14px;
    }

    li.gallery-item {
        width: 43%;
    }

    .wp-block-buttons.btn__top-button.btn.is-layout-flex.wp-block-buttons-is-layout-flex {
        max-width: 300px !important;
    }

    .pagination {
        display: flex;
        font-size: 10px;
        max-width: fit-content;
        margin: 30px auto 0;
    }
}


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

  その他適宜追加する場合は下記に記述

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