@import url('https://fonts.googleapis.com/css2?family=Zen+Old+Mincho:wght@400;500;600;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200..900&display=swap');
@import url("default.css");

* {-webkit-text-size-adjust:100%;}
a:link {text-decoration:none; color:#2d2929;}
a:visited{text-decoration:none; color:#2d2929;}
a:hover{text-decoration:none; color:#2d2929;}
a:active{text-decoration:none; color:#2d2929;}

.grecaptcha-badge { opacity: 0; pointer-events: none; }
.full-width { margin-left: calc(-50vw + 50%); margin-right: calc(-50vw + 50%); }
.allWrapper { overflow: hidden; }
.container-fluid { max-width: 1200px; }
.container-fluid .container-fluid { padding-left: 0; padding-right: 0; }

body { min-width: 1200px; font-size: 16px; line-height: 1.75; color: #2d2929; background-color: #fff; font-family: "Zen Old Mincho","Noto Serif JP", serif; font-weight: 400; letter-spacing: .15em; }
header { position: fixed; left: 0; top: 0; width: 100%; z-index: 100; background: #fff; padding: 0 40px; transition: .3s; }
header .logo { margin-bottom: -65px; }
header .logo img { height: 93px; }
header .wrap { display: flex; justify-content: space-between; align-items: center; }
header .gnav ul { display: flex; align-items: center; }
header .gnav ul li { padding: 0 20px; position: relative; }
header .gnav ul li a { letter-spacing: .15em; padding: 35px 0; display: block; position: relative; transition: .3s; cursor: pointer; }
header .gnav ul li a:before { content: ""; transition: .3s; height: 2px; background: #6d645f; position: absolute; bottom: 30px; left: 0; width: 0; }
header .gnav ul li a:hover:before { width: 100%; }
header .gnav ul li.drop { padding-right: 40px; }
header .gnav ul li.drop a::before { content: none; }
header .gnav ul li.drop a::after { content: ""; width: 9px; height: 9px; border-top: 1px solid #2d2929; border-right: 1px solid #2d2929; position: absolute; top: 0; bottom: 0; right: -20px; margin: auto 0; transform: rotate(135deg);  }
header .gnav ul li.drop .menu { width: 235px; background: #fff; border: 1px solid #6d645f; padding: 15px 25px; display: block; position: absolute; top: calc(100% - 20px); left: 40px; z-index: 100; opacity: 0;	visibility: hidden;	transform: translateY(10px); transition: all 0.3s ease; }
header .gnav ul li.drop .menu li { padding: 0; margin-bottom: 10px; }
header .gnav ul li.drop .menu li a { font-size: 12px; letter-spacing: .15em; padding: 0 0 10px 0; color: #2d2929; display: block; white-space: nowrap; position: relative; }
header .gnav ul li.drop .menu li a::before { content: ""; width: 40px; height: 1px; background-color: #2d2929; position: absolute; bottom: 0; left: 0; }
header .gnav ul li.drop .menu li:last-child { margin-bottom: 0; }
header .gnav ul li.drop .menu li:last-child a { padding-bottom: 0; }
header .gnav ul li.drop .menu li:last-child a::before { content: none; }
header .gnav ul li.drop .menu li a::after { content: none; }
header .gnav ul li.drop .menu li a:hover { color: #6d645f; }
header .gnav ul li.drop:hover .menu { opacity: 1; visibility: visible; transform: translateY(0); }
header .gnav ul li.contact { padding-right: 0; }
header .gnav ul li.contact a { color: #fff; background-color: #6d645f; border: 1px solid transparent; padding: 4px 20px; }
header .gnav ul li.contact a::before { content: none; }
header .gnav ul li.contact a:hover { color: #6d645f; border: 1px solid #6d645f; background-color: #fff; }
header .menu-trg-area { border-left: 1px solid rgba(108, 99, 94, 0.1); position: fixed; top: 0; right: 0; margin: auto; display: none; width: 70px; height: 60px; cursor: pointer;}
header .menu-trigger,
header .menu-trigger span { display: inline-block; transition: all .4s; box-sizing: border-box;}
header .menu-trigger { position: absolute; top: 21px; width: 27px; height: 18px; z-index: 2; left: 0; right: 0; margin: auto; }
header .menu-trigger span { position: absolute; left: 0; width: 100%; height: 1px; background-color: #2d2929;}
header .menu-trigger span:nth-of-type(1) { top: 0;}
header .menu-trigger span:nth-of-type(2) { top: 8.5px;}
header .menu-trigger span:nth-of-type(3) { bottom: 0;}
header .menu-trigger.active span:nth-of-type(1) { -webkit-transform: translateY(20px) rotate(-45deg); transform: translateY(20px) rotate(-45deg); top: -11.5px;}
header .menu-trigger.active span:nth-of-type(2) { left: 50%; opacity: 0; -webkit-animation: active-menu-bar02 .8s forwards; animation: active-menu-bar02 .8s forwards;}
header .menu-trigger.active span:nth-of-type(3) { -webkit-transform: translateY(-20px) rotate(45deg); transform: translateY(-20px) rotate(45deg); bottom: -11.5px;}
header.action { background-color: rgba(255, 255, 255, 0.8); }
header.action .logo { margin: 0; }
header.action .logo img { height: 60px; }
header.action .gnav ul li a { padding: 31px 0; }
header.action .gnav ul li.contact a { padding: 4px 20px; }
header .logo,
header .logo img,
header .gnav ul li a { transition: .5s; }
footer { position: relative; z-index: 99; }
.footer-wrap { display: flex; justify-content: space-between; }
.footer-wrap .logo img { width: 250px; }
.footer-list ul { display: flex; align-items: center; }
.footer-list ul li a { color: #fff; display: block; transition: .3s; position: relative; }
.footer-list ul li a:before { content: ""; transition: .3s; width: 0; height: 2px; background: #fff; position: absolute; bottom: -5px; left: 0; width: 0; }
.footer-list ul li a:hover:before { width: 100%; }
.footer-list ul.en { gap: 30px; margin-bottom: 20px; }
.footer-list ul.en li a { letter-spacing: .17em; }
.footer-list ul.jp { gap: 40px; justify-content: flex-end; }
.footer-list ul.jp li a { font-size: 14px; letter-spacing: .15em; }
.shop-list { width: 100%; margin-bottom: 80px; gap: 30px; display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; }
.shop-list li { width: auto; }
.shop-list li a { letter-spacing: .15em; color: #fff; display: inline-block; position: relative; }
.shop-list li a:before { content: ""; transition: .3s; width: 0; height: 2px; background: #fff; position: absolute; bottom: -10px; left: 0; width: 0; }
.shop-list li a:hover:before { width: 100%; }
.sns-list { gap: 20px; display: flex; align-items: flex-start; display: none; }
.sns-list li a { text-align: center; display: flex; flex-direction: column; align-items: center; justify-content: center; transition: .3s; }
.sns-list li a:hover { opacity: .6; }
.sns-list li a img { margin-bottom: 5px; }
.sns-list li a .sns-name { font-size: 10px; line-height: 1.4; letter-spacing: 0; color: #fff; }
.copyright { font-size: 12px; letter-spacing: .05em; color: #fff; text-align: right; }

/* common */
html, body { overscroll-behavior: none; }
[id] { scroll-margin-top: 100px; }
#autozip { display: none!important; }
.allWrapper { overflow: initial; overflow-x: clip; }
.mv_base { opacity: 0; transition: 1s; transform: translate(0, 20px); -webkit-transform: translate(0, 20px); }
.mv { opacity: 1; transform: translate(0, 0); -webkit-transform: translate(0, 0); }
.en { font-family: "Noto Serif JP", serif; font-optical-sizing: auto; font-weight: 400; font-style: normal; }
.sec-ttl { font-size: 20px; font-weight: bold; letter-spacing: .15em; padding-bottom: 25px; display: inline-block; position: relative; }
.sec-ttl::before { content: ""; width: 40px; height: 1px; background-color: #a68a55; position: absolute; bottom: 0; left: 0; }
.sec-ttl.big { font-size: 26px; }
.link_btn { width: 180px; height: 40px; letter-spacing: .15em; color: #fff !important; background-color: #6d645f; border: 1px solid transparent; padding: 0 20px; display: inline-flex; align-items: center; justify-content: center; transition: 0.3s; }
.link_btn:hover { color: #6d645f !important; background-color: #fff; border-color: #6d645f; }
.full-left { margin-left: calc(50% - 50vw); }
.full-right { margin-right: calc(50% - 50vw); }
.sec-fv { width: calc(100% - 100px); margin-left: auto; padding-top: 98px; position: relative; }
.fv_wrap { display: flex; }
.fv_wrap .fv_left { gap: 65px; display: flex; flex-direction: column; align-items: center; justify-content: flex-end; }
.fv_sns { height: 100%; padding-bottom: 30px; gap: 20px; display: flex; align-items: center; justify-content: center; flex-direction: column; position: fixed; left: 20px; bottom: 0; z-index: 98; }
.fv_sns li a { text-align: center; display: flex; flex-direction: column; align-items: center; justify-content: center; transition: .3s; }
.fv_sns li a:hover { opacity: .6; }
.fv_sns li a img { margin-bottom: 5px; }
.fv_sns li a .sns-name { font-size: 10px; line-height: 1.4; letter-spacing: 0; color: #6d645f; }
.fv_wrap .fv_right { width: 100%; }
.fv_slider .bg { height: 400px; }
.fv_slider.home .bg { width: 110%; height: calc(100vh - 98px); background-size: cover; background-position: center; transform: translateX(0); /* 初期位置 */}
.fv_slider.home .slick-slide .bg { animation: slide-left 15s linear forwards; animation-play-state: paused; }
.fv_slider.home .slick-active .bg { animation-play-state: running; }
.fv_slider.home .slick-slide:not(.slick-active) .bg { /* ここで animation を none にしないのがコツです */ /* もし完全に止めたい場合は、ここを animation-play-state: paused; にします */ }
@keyframes slide-left { 0% { transform: translateX(0); } 100% { transform: translateX(-5%); } }
.page-ttl { font-size: 50px; font-weight: bold; letter-spacing: .15em; position: absolute; bottom: -25px; right: 8%; color: #6d645f; }
.scroll-bar { margin-bottom: 100px; gap: 15px; display: flex; flex-direction: column; align-items: center; position: absolute; bottom: 50px; left: 0; right: 0; margin: 0 auto; z-index: 10; }
.scroll-bar span { display: block; }
.scroll-bar .ttl { font-size: 12px; letter-spacing: .1em; margin-left: 3px; }
.scroll-bar .bar { position: relative; }
.scroll-bar .bar::before { content: ""; height: 80px; width: 2px; background-color: #6d645f; animation: scroll 2s infinite; position: absolute; z-index: 2; }
.scroll-bar .bar::after { content: ""; width: 1px; height: 80px; background-color: rgba(109, 100, 95, 0.3); position: absolute; }
@keyframes scroll { 0% { transform: scale(1, 0); transform-origin: 0 0; } 50% { transform: scale(1, 1); transform-origin: 0 0; } 51% { transform: scale(1, 1); transform-origin: 0 100%; } 100% { transform: scale(1, 0); transform-origin: 0 100%; } }
.loop_wrapper { display: flex; gap: 60px; overflow: hidden; }
.loop_slider { display: flex; margin: 0 -30px; }
.loop_slider.top { animation: scroll-left 40s infinite linear .5s both; align-items: flex-end; }
.loop_slider.bottom { animation: scroll-right 40s infinite linear .5s both; align-items: flex-start; }
.loop_slider .bg img { display: block; width: 100%; }
@keyframes scroll-left { from { transform: translateX(0); } to { transform: translateX(-100%); } }
@keyframes scroll-right { from { transform: translateX(-100%); } to { transform: translateX(0); } }
.parallax.one { height: 750px; background: 0; position: relative; overflow: hidden; }
.parallax.one .bg {width: 100%; height: 130%; background-repeat: no-repeat; background-size: cover; position: absolute; left: 0; top: 0; display: block; transition: top 0.2s ease-out;}
.bg_gray { position: relative; }
.bg_gray::before { content: ""; width: 100%; height: 75%; background-color: rgba(109, 100, 95, 0.1); position: absolute; top: 0; bottom: 0; right: 0; left: 0; margin: auto; }
.middle-wrap { padding: 80px 0 110px; background-size: 78%; background-position: right; background-repeat: no-repeat; }
.middle-wrap .title { font-size: 27px; font-weight: bold; letter-spacing: .3em; }
.middle-wrap p { line-height: 2.5; letter-spacing: .15em; }
.fade_slider .bg { padding-top: 100%; }
.fade_slider .slick-dots { bottom: initial; top: -35px; left: initial; right: 0; text-align: right; }
.fade_slider .slick-dots li,.sp-slider .slick-dots li { margin: 0; }
.fade_slider .slick-dots li button:before,.sp-slider .slick-dots li button:before{ font-size: 8px; color: #d3c7c2; }
.fade_slider .slick-dots li.slick-active button:before,.sp-slider .slick-dots li.slick-active button:before { color: #6d645f; }
.sp-slider .slick-dots { left: initial; right: 15px; text-align: right; bottom: -10px; }
.phone-wrap p { line-height: 2.5; letter-spacing: .15em; }
.phone-wrap .num { font-size: 16px; font-weight: bold; line-height: 2.5; letter-spacing: .15em; }
.phone-wrap .num span { font-size: 22px; font-weight: bold; line-height: 1.8181; letter-spacing: .15em; }
.tel-flex { display: flex; align-items: baseline; }
.tel-flex .shop { width: 215px; font-size: 14px; letter-spacing: .15em; }
.tel-flex .line { width: 30px; height: 1px; background-color: #2d2929; margin: 0 20px; }
.large-icon a { width: 120px; height: 120px; }
.large-icon a img { width: 100%; height: 100%; }
.line-block { text-align: center; }
.line-block a { display: block; }
.sns-pc { display: flex; }
.sns-sp { display: none; }
.Sub-Title { font-weight: bold; font-size: 22px; }
.bg-Block { padding-top: 80%; background-position: center; background-repeat: no-repeat; background-size: cover;}
.over-left { margin-left: calc(50% - 50vw); }
.over-right { margin-right: calc(50% - 50vw); }
.White-Block { background-color: #fff; }
#rental .White-Block { padding: 50px; margin-top: 130px; padding-left: 80px;}
.float-Text { margin-left: -100px; }

/* section */
.news-ttl { display: flex; align-items: center; justify-content: flex-end; }
.news-list li a { padding: 30px 0; border-bottom: 1px solid #6d645f; display: flex; align-items: center; transition: .3s; }
.news-list li a:hover { opacity: .7; }
.news-list li:first-child a { padding-top: 0; }
.news-list li a .date { width: 90px; font-size: 14px; letter-spacing: .15em; margin-right: 20px; white-space: wrap; }
.news-list li a .cat { min-width: 110px; font-size: 12px; letter-spacing: .05em; color: #6d645f; border: 1px solid #6d645f; padding: 0 10px; margin-right: 20px; display: flex; align-items: center; justify-content: center; }
.news-list li a .text { letter-spacing: .15em; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 1; overflow: hidden;} 
.concept-wrap .title > p { font-size: 28px; font-weight: bold; letter-spacing: .15em; }
.concept-wrap p { font-size: 18px; line-height: 2.222; letter-spacing: .1em; }
.sec-loop .loop-ttl { font-size: 14px; letter-spacing: .3em; margin: 55px 0; text-align: center; }
.sec-loop .loop_slider .bg { width: calc(100vw / 4); margin: 0 30px; }
.sec-loop .loop_slider .slide1 { width: 600px !important; height: 450px !important; }
.sec-loop .loop_slider .slide2 { width: 250px !important; height: 400px !important; }
.sec-loop .loop_slider .slide3 { width: 450px !important; height: 450px !important; }
.sec-loop .loop_slider .slide4 { width: 500px !important; height: 300px !important; }
.sec-loop .loop_slider .slide5 { width: 600px !important; height: 400px !important; }
.sec-loop .loop_slider .slide6 { width: 700px !important; height: 450px !important; }
.sec-loop .loop_slider .slide7 { width: 400px !important; height: 400px !important; }
.sec-loop .loop_slider .slide8 { width: 300px !important; height: 450px !important; }
.sec-rental { position: relative; z-index: 0; }
.sec-rental::before { content: ""; width: 67%; height: calc(100% - 220px); background-color: rgba(109, 100, 95, 0.1); position: absolute; top: 220px; left: 0; z-index: 0; pointer-events: none; }
.sec-rental > * { position: relative; z-index: 1; }
.sec-rental .loop_wrapper { gap: 0; }
.sec-rental .loop_slider { margin: 0; }
.sec-rental .loop_slider .bg { width: 400px; margin: 0; flex-shrink: 0;}
.sec-rental .loop_slider .bg img { height: 100%; object-fit: cover; aspect-ratio: 16 / 9;display: block;}
.rental-img.full-left { height: 600px; overflow: hidden; margin-left: calc(60% - 40vw);}
.rental-img.full-left .bg { width: 100%; padding-top: 67.5%; object-fit: cover; }
.rental-img.full-right .bg { padding-top: 33%; }
.rental-wrapper { position: relative; z-index: 2; }
.rental-wrap p { line-height: 2.0625; letter-spacing: .15em; }
.rental-wrap.bg-white { width: 580px; background-color: #fff; padding: 60px 0 55px 90px; position: absolute; top: 70px; right: -130px; z-index: 2; }
.sec-salon .sec-ttl::before { left: 0; right: 0; margin: 0 auto; }
.sec-salon .link_btn { width: 300px; }
.salon_slider a { display: block; transition: .3s; }
.salon_slider a:hover { opacity: .7; }
.salon_slider .bg { padding-top: 60%; margin: 0 25px; }
.salon_slider .text { line-height: 2.104375; letter-spacing: .15em; text-align: center; }
.sec-recruit { position: relative; }
.sec-recruit .bg::before { content: ""; width: 100%; height: 100%; background-color: rgba(255, 255, 255, 0.6); position: absolute; top: 0; left: 0; }
.recruit-wrap { display: flex; flex-direction: column; align-items: center; justify-content: center; position: absolute; top: 0; bottom: 0; right: 10%; margin: auto 0; }
.recruit-wrap .sec-ttl { font-size: 40px; }
.recruit-wrap .sec-ttl::before { left: 0; right: 0; margin: 0 auto; }
.recruit-text { font-size: 20px; line-height: 2.5; letter-spacing: .15em; text-align: center; }
.sec-wasou .parallax.one { height: 500px; }
.wasou-wrap p { line-height: 2.5; }
.sec-okituke .parallax.one { height: 500px; }
.sec-dress .parallax.one { height: 500px; }
.recruit-fv { padding-top: 98px; position: relative; }
.recruit-fv .recruit-fv-bg { padding-bottom: 50px; position: relative; }
.recruit-fv .recruit-fv-bg { min-height: 2570px; position: relative; }
.recruit-fv .recruit-fv-bg::before { content: ""; width: 100%; height: 100%; background-image: linear-gradient(90deg, rgba(255, 255, 255, 1) 30%, rgba(255, 255, 255, 0)); position: absolute; top: 0; left: 0; }
.recruit-fv .title { position: absolute; top: 100px; left: 10%; }
.recruit-fv .title h2 { font-size: 1.5vw; letter-spacing: .15em; }
.recruit-fv-img { width: 50%; position: absolute; }
.recruit-fv-img.fv1 { top: 0; right: 0; width: 40%;}
.recruit-fv-img.fv2 { width: clamp(400px,3vw,460px);  top: 28%; left: 24%; }
.recruit-fv-img.fv3 { width: 24vw;  top: 41%; left: 65%; }
.recruit-fv-img.fv4 { width: 46vw; top: 59%; right: 0; }
.recruit-fv-img.fv5 { width: 24vw; top: 76%; left: 27%; }
.recruit-fv-img.fv6 { width: 28vw; top: 83%; left: 65%; padding-bottom: 50px; }
.recruit-fv .main-ttl { opacity: 0; transform: translateY(32px) scale(0.97); transition: opacity 1.2s ease-out,	transform 2.2s cubic-bezier(0.22, 1, 0.36, 1); will-change: opacity, transform; position: sticky; top: 32%; left: 10%; z-index: 2; }
.recruit-fv .main-ttl h1 { font-size: clamp(38px, 3.1vw, 48px); font-weight: bold; line-height: 1.75; letter-spacing: .15em; margin-left: 10%;  }
.main-ttl.ttl-show { opacity: 1; transform: translateY(0) scale(1); }
.main-ttl.ttl-hide { opacity: 0; transform: translateY(-10px) scale(0.98); }
.rec_mv_base { opacity: 0; transition: 1s; transform: translate(0, 20px); -webkit-transform: translate(0, 20px); }
.rec_mv { opacity: 1; transform: translate(0, 0); -webkit-transform: translate(0, 0); }
.recruit-para { display: flex; position: relative; }
.recruit-para::after { content: ""; width: 100%; height: 100%; background-color: rgba(255, 255, 255, .8); position: absolute; top: 0; left: 0; }
.recruit-para img { height: 500px; width: 100%; object-fit: cover;}
.recruit-para .left { width: 50%; position: absolute; top: 0; left: 0; z-index: 2; }
.recruit-para .right { width: 50%; height: 100%; position: absolute; top: 0; right: 0; display: flex; align-items: center; }
.recruit-para .right p { font-size: 18px; letter-spacing: .15em; padding: 0 85px; position: relative; z-index: 2; }
.para-wrap { position: relative; width: 100%; height: 500px; overflow: hidden; }
.para-wrap .bg { position: absolute; top: 0; left: 0; width: 100%; height: 140%; background-repeat: no-repeat; background-size: cover; background-position: top center; will-change: transform; }
.recruit-layout { border-top: 1px solid rgba(109, 100, 95, 0.3); overflow: visible !important; overflow-x: initial !important; }
.group-list-wrapper { display: flex; }
.group-menu { width: 280px; position: relative; }
.group-menu-list { position: sticky; top: 90px }
.group-menu-list li a { letter-spacing: .15em; padding: 30px 10px; display: block; position: relative; transition: .3s; }
.group-menu-list li a:hover::before { content: ""; width: 100vw; height: 100%; background-color: rgba(109, 100, 95, 0.1); position: absolute; top: 0; bottom: 0; right: 0; margin: auto 0; }
.group-menu-list li a.active::before { content: ""; width: 100vw; height: 100%; background-color: rgba(109, 100, 95, 0.1); position: absolute; top: 0; bottom: 0; right: 0; margin: auto 0; }
.group-contents { width: calc(100% - 280px); border-left: 1px solid rgba(109, 100, 95, 0.3); padding: 80px 0 50px; }
.group-contents .content-block { padding-left: 60px; }
.group-contents .content-block h3 { font-size: 20px; font-weight: bold; letter-spacing: .15em; }
.group-contents .content-block p { letter-spacing: .15em; }
.group-contents .content-block .resource-list li { font-size: 22px; font-weight: bold; letter-spacing: .1em; margin-bottom: 20px; }
.group-contents .content-block .resource-list li span { font-size: 18px; color: #a68a55;}
.year-wrap { margin-bottom: 50px; padding-bottom: 30px; background-image: repeating-linear-gradient(90deg, #6d645f66, #6d645f66 12px, transparent 12px, transparent 23px); background-position: left bottom; background-repeat: repeat-x; background-size: 100% 1px; }
.year-wrap:last-of-type { background-image: none; margin-bottom: 0; padding-bottom: 0; }
.year-wrap .title { color: #fff; background-color: #6d645f; margin-bottom: 35px; padding: 15px 25px; display: inline-block; }
.year-wrap dl { display: flex; align-items: flex-start; margin-bottom: 20px; }
.year-wrap dt { width: 90px; height: 40px; letter-spacing: .15em; color: #6d645f; border: 1px solid #6d645f; margin-right: 30px; display: flex; align-items: center; justify-content: center; text-align: center; }
.year-wrap dd { width: calc(100% - 120px); gap: 30px; display: flex; align-items: flex-start; }
.year-wrap dd div { width: calc((100% - 60px) / 3); padding: 10px; background-color: rgba(109, 100, 95, 0.1); display: flex; align-items: center; justify-content: center; text-align: center; }
.year-wrap .debut { font-size: 20px; letter-spacing: .15em; padding: 20px; background-color: #6c635e; color: #fff; border-radius: 40px; text-align: center; }
.recruit-layout .parallax.one { height: 400px; }
.recruit-layout .faq_list li .question .circle { width: 40px; height: 40px; border-radius: 50%; background-color: #6d645f; position: absolute; right: 15px; top: -4px; }
.recruit-layout .faq_list li .question::before, 
.recruit-layout .faq_list li .question::after { width: 17px; height: 1px; background-color: #fff; right: 27px; top: 16px; z-index: 2; }
.recruit-layout .loop_wrapper { border-top: 1px solid rgba(109, 100, 95, 0.3); }
.recruit-layout .loop_slider .bg { width: calc(100vw / 4); margin: 0 15px; }
.recruit-layout .loop_slider .slide1 { width: 400px !important; height: 400px !important; }
.recruit-layout .loop_slider .slide2 { width: 350px !important; height: 250px !important; margin-bottom: auto; }
.recruit-layout .loop_slider .slide3 { width: 350px !important; height: 250px !important; margin-top: auto; }
.recruit-layout .loop_slider .slide4 { width: 400px !important; height: 400px !important; margin-bottom: auto;}
.recruit-layout .loop_slider .slide5 { width: 350px !important; height: 250px !important; margin-bottom: auto; }
.recruit-layout .loop_slider .slide6 { width: 350px !important; height: 250px !important; margin-top: auto; }
.recruit-layout .loop_slider .slide6 { width: 350px !important; height: 250px !important; margin-bottom: auto; }
.recruit-layout .loop_slider .slide7 { width: 400px !important; height: 450px !important; margin-bottom: auto; }
.recruit-bottom { padding: 105px 0 120px; }
.recruit-inner { padding: 60px 0; background-color: #fff; position: relative; }
.recruit-inner::before, .recruit-inner::after { content: ""; width: 100px; height: 100px; background-color: #F0F0EF; transform: rotate(45deg); position: absolute; }
.recruit-inner::before { bottom: -50px; left: -50px; }
.recruit-inner::after { top: -50px; right: -50px; }
.sec-entry p { letter-spacing: .15em; }
.theme-img.full-left { height: 650px; overflow: hidden; }
.theme-img.full-left img { width: 100%; height: 100%; object-fit: cover; }
.theme-wrap p { line-height: 2.5; letter-spacing: .15em; }
.sec-theme .parallax.one { height: 600px; }
.pro-card { padding: 60px 40px; border: 1px solid #6d645f; position: relative; }
.pro-card::before,
.pro-card::after { content: ""; width: 70px; height: 70px; background-color: #fff; border-top: 1px solid #6d645f; transform: rotate(45deg); position: absolute; }
.pro-card::before { bottom: -35px; left: -35px; }
.pro-card::after { border-top: none; border-bottom: 1px solid #6d645f; top: -35px; right: -35px; }
.pro-wrap .pro-title { font-size: 18px; font-weight: bold ; line-height: 1.8181; letter-spacing: .15em; }
.pro-wrap p { letter-spacing: .15em; }
.other-pro .title { font-size: 20px; font-weight: bold; line-height: 2; letter-spacing: .15em; }
.other-pro ul { display: flex; align-items: center; }
.other-pro ul li { padding: 0 10px; position: relative; }
.other-pro ul li:first-child { padding-left: 0; }
.other-pro ul li a { letter-spacing: .15em; display: block; text-decoration: underline; }
.post-name { gap: 30px; display: flex; align-items: flex-end; justify-content: flex-end; }
.post-name .post { font-size: 14px; letter-spacing: 0; }
.post-name .name { font-size: 20px; font-weight: bold; line-height: 1.4; letter-spacing: 0; }
.cut-card { padding: 45px 20px; border: 1px solid #6d645f; background-color: #fff; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; position: relative; }
.cut-card .square.left,
.cut-card .square.right { content: ""; width: 60px; height: 60px; background-color: #fff; border-top: 1px solid #6d645f; transform: rotate(45deg); position: absolute; }
.cut-card .square.left { bottom: -30px; left: -30px; }
.cut-card .square.right { border-top: none; border-bottom: 1px solid #6d645f; top: -30px; right: -30px; }
.cut-card .square.back-gray { background-color: #F0F0EF; }
.cut-card .num { width: 40px; height: 40px; font-size: 20px; font-weight: bold; letter-spacing: .15em; text-indent: .15em; color: #fff; background-color: #6d645f; border-radius: 50%; display: flex; align-items: center; justify-content: center; text-align: center; }
.cut-card h3 { font-size: 24px; font-weight: bold; letter-spacing: .3em; text-indent: .3em; color: #6d645f; padding-bottom: 15px; position: relative; }
.cut-card h3::before { content: ""; width: 40px; height: 1px; background-color: #a68a55; position: absolute; bottom: 0; left: 0; right: 0; margin: 0 auto; }
.cut-card p { line-height: 2.5; letter-spacing: .15em; text-indent: .15em; }
.sec-kuredo .cut-card { padding: 65px 20px; }
.gray-dl { display: flex; border-bottom: 1px solid #bababa; }
.gray-dl:first-of-type { border-top: 1px solid #bababa; }
.gray-dl dt { width: 200px; letter-spacing: .15em; background-color: rgba(109, 100, 95, 0.1); padding: 15px 35px; }
.gray-dl dd { width: calc(100% - 200px); letter-spacing: .15em; padding: 15px 35px; }
.page_link { font-size: 22px; letter-spacing: .15em; border: 1px solid #2d2929; padding: 25px; display: block; text-align: center; transition: .3s; }
.page_link:hover { background-color: #2d2929; color: #fff; }
.sec-menu { border-bottom: 1px solid #6d645f; gap: 20px; display: flex; align-items: center; justify-content: center; }
.sec-menu a { letter-spacing: .15em; color: #6d645f; padding: 5px 20px; border: 1px solid #6d645f; border-bottom: none; text-align: center; transition: .3s; cursor: pointer; }
.sec-menu a.active { background-color: #6d645f; color: #fff !important; }
.sec-menu a:hover { background-color: #6d645f; color: #fff !important; }
.salon-wrap p { letter-spacing: .15em; }
.salon-wrap .products .title { font-weight: bold; letter-spacing: .39em; padding-left: 20px; position: relative; }
.salon-wrap .products .title::before { content: ""; width: 5px; height: 1px; background-color: #2d2929; position: absolute; top: 0; left: 0; bottom: 0; margin: auto 0; }
.salon-wrap .products ul { gap: 20px; display: flex; align-items: center;}
.salon-wrap .products ul li a { letter-spacing: .15em; }
.detail-wrap { height: 100%; padding-bottom: 40px; border-bottom: 1px solid #2d2929; }
.detail-wrap .title { font-size: 18px; letter-spacing: .15em; color: #6d645f; }
.detail-wrap .text { letter-spacing: .15em; }
.detail-wrap iframe { width: 100%; height: 300px; }
.detail-wrap dl { letter-spacing: .1em; display: flex; align-items: flex-start; justify-content: space-between; }
.detail-wrap dt { font-weight: 400; width: calc(100% - 200px);}
.detail-wrap dt .lim { color: #6d645f; }
.detail-wrap dd { text-align: right; font-weight: 400; width: 200px;}
.detail-wrap dd .time { width: 50px; font-size: 16px; display: inline-block;}
.detail-wrap dd .price { width: calc(100% - 100px); font-size: 16px; display: inline-block;}
.detail-wrap dd span { font-size: 12px; }
.detail-wrap p { font-size: 14px; letter-spacing: .1em; color: #6b625e; }
.menu-tab { gap: 20px; display: flex; flex-wrap: wrap; }
.menu-tab .tab { letter-spacing: .15em; color: #6d645f; padding: 5px 20px; border: 1px solid #6d645f; text-align: center; transition: .3s; cursor: pointer; }
.menu-tab .tab:hover { background-color: #6d645f; color: #fff; }
.menu-tab .tab.active { background-color: #6d645f; color: #fff; }
.lim-ttl { color: #6b625e; letter-spacing: .1em; }
.menu-content .content { display: none; }
.menu-content .content.show { display: block; }
.sns-wrap .title { font-size: 20px; line-height: 2; letter-spacing: .15em; }
.sns-wrap p { letter-spacing: .1em; margin-top: 5px; }
.add-wrap .add-ttl { font-size: 24px; font-weight: bold; letter-spacing: .15em; padding-left: 20px; position: relative; }
.add-wrap .add-ttl::before { content: ""; width: 10px; height: 1px; background-color: #2d2929; position: absolute; top: 0; left: 0; bottom: 0; margin: auto 0; }
.add-wrap p { letter-spacing: .15em; }
.contact-wrap { border-bottom: 1px solid #bababa; }
.contact-wrap p { letter-spacing: .15em; text-align: center; }
.contact-wrap p span { font-size: 14px; letter-spacing: .15em; }
.contact-wrap div { text-align: center; }
.faq_list li { margin-bottom: 30px; padding: 25px 90px; border: 1px solid #6c635e; }
.faq_list li:last-child { margin-bottom: 0; }
.faq_list li .ttl { width: 40px; height: 40px; font-size: 24px; letter-spacing: .1em; text-indent: .1em; border-radius: 50%; border: 1px solid #6c635e; display: flex; align-items: end; justify-content: center; text-align: center; }
.faq_list li .text { width: calc(100% - 70px); }
.faq_list li .question { display: flex; align-items: baseline; justify-content: space-between; position: relative; cursor: pointer; }
.faq_list li .question::before,
.faq_list li .question::after { content: ""; position: absolute; right: 25px; top: 37px; width: 30px; height: 2px; background-color: #6c635e; transition: transform .3s ease; }
.faq_list li .question::before { transform: translateY(-50%); }
.faq_list li .question::after { transform: translateY(-50%) rotate(90deg); }
.faq_list li .question.active::after { transform: translateY(-50%) rotate(0deg); }
.faq_list li .question .ttl { background-color: #6c635e; color: #fff; }
.faq_list li .question .text { font-size: 18px; font-weight: bold; letter-spacing: .1em; padding-right: 50px;}
.faq_list li .answer { padding: 30px 15px 15px 15px; border-top: 1px solid #6c635e; display: flex; align-items: flex-start; justify-content: space-between; margin-top: 30px;}
.faq_list li .answer .ttl { background-color: #fff; color: #6c635e; }
.faq_list li .answer .text { font-size: 18px; line-height: 1.666; letter-spacing: .1em; }
.privacy-list li { margin-bottom: 70px; }
.privacy-list li:last-child { margin-bottom: 0; }
.privacy-list li h3 { font-size: 25px; font-weight: bold; letter-spacing: .15em; margin-bottom: 20px; padding-bottom: 15px; border-bottom: 2px solid #2d2929; }
.privacy-list li p { letter-spacing: .15em; }
.sec-info .news-list li a { border-width: 1px; }
.sec-info .news-list li a .date { width: 95px; font-size: 16px; letter-spacing: .1em; }
.sec-info .news-list li a .cat { min-width: 120px; font-size: 14px; border-width: 1px; }
.cat-list li { margin-bottom: 20px; }
.cat-list li a { letter-spacing: .15em; color: #6c635e !important; padding: 5px; border: 1px solid #6c635e; display: flex; align-items: center; justify-content: center; text-align: center; transition: .3s; }
.cat-list li a:hover { background-color: #6c635e; color: #fff !important; }
.news-nav { display: flex; align-items: center; justify-content: center; }
.news-nav li { margin: 0 5px; }
.news-nav li a { width: 30px; height: 30px; border-radius: 50%; color: #6c635e; border: 1px solid #6c635e; display: flex; align-items: center; justify-content: center; text-align: center; transition: .3s; padding-left: 2px;}
.news-nav li a:hover { background-color: #6c635e; color: #fff; }
.sec-single .link_btn { width: 250px; height: 50px; }
.sec-single p { letter-spacing: 0; }
.single-header { padding-bottom: 20px; border-bottom: 1px solid #2d2929; display: flex; align-items: center; flex-wrap: wrap; }
.single-header .date { width: 100px; letter-spacing: .1em; margin-right: 10px; }
.single-header .cat { min-width: 120px; font-size: 14px; letter-spacing: .1em; color: #6d645f; border: 1px solid #6d645f; padding: 0 10px; margin-right: 20px; display: flex; align-items: center; justify-content: center; }
.single-header .text { width: 100%; font-size: 22px; letter-spacing: .15em; margin-top: 25px; }
.single-img { text-align: center; }
.single-img img { width: 70%; }
.contact-dl { padding: 20px 0; border-bottom: 1px solid #bababa; display: flex; align-items: center; }
.contact-dl:first-child { border-top: 1px solid #bababa; }
.contact-dl dt { width: 260px; padding-left: 25px; display: flex; align-items: center; }
.contact-dl dt .ttl { font-weight: bold; letter-spacing: .15em; position: relative; }
.contact-dl dt span { font-size: 12px; font-weight: bold; letter-spacing: .15em; color: #af0000; position: absolute; top: 50%; right: -70px; transform: translateY(-50%); }
.contact-dl dd { width: calc(100% - 260px); }
.contact-dl dd input { width: 100%; font-size: 16px; letter-spacing: .15em; padding: 15px 30px; border: none; background-color: #f5f5f5; }
.contact-dl dd .address-wrap { margin-bottom: 20px; display: flex; align-items: center; }
.contact-dl dd .address-wrap input { padding: 15px 20px; }
.contact-dl dd .address-wrap .title { width: 90px; font-size: 18px; font-weight: bold; letter-spacing: .15em; }
.contact-dl dd .address-wrap .content { width: calc(100% - 90px); }
.contact-dl dd .address-wrap:first-of-type .content { width: 160px; margin-right: 10px; }
.contact-dl dd .address-wrap span { font-size: 14px; font-weight: bold; letter-spacing: .15em; color: #8e8e8e; }
.contact-dl dd textarea { width: 100%; height: 300px; font-size: 16px; letter-spacing: .15em; padding: 15px 30px; border: none; background-color: #f5f5f5; }
.contact-dl dd.check-dd .wpcf7-form-control { width: 100%; display: block; }
.contact-dl dd.check-dd label { gap: 10px; margin-right: 20px; display: flex; align-items: center; cursor: pointer; } 
.contact-dl dd.check-dd label span { white-space: nowrap; }
.privacy-wrap { display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; }
.privacy-wrap .submit input { width: 200px; height: 60px; font-size: 16px; font-weight: bold; letter-spacing: .15em; color: #fff; background-color: #6c635e; border: transparent; display: flex; align-items: center; justify-content: center; cursor: pointer; transition: .3s; }
.privacy-wrap .submit input:hover { background-color: #fff; color: #6b625e; border: 1px solid #6b625e; }
.privacy-wrap p { font-size: 12px; letter-spacing: 0; color: #6c635e; }
.privacy-wrap .pll a { color: #6c635e; text-decoration: underline; }
.privacy-wrap .pll label { cursor: pointer; }
.privacy-wrap .pll input { border-radius: 0; cursor: pointer; }
.privacy-wrap .wpcf7-spinner { display: none; }
.sec-contact .phone-wrap .num { font-size: 18px; }
.sec-contact .phone-wrap .num span { font-size: 28px; }
.sec-contact .large-icon a { width: 100px; height: 100px; }
.salon-layout { border-top: 1px solid rgba(109, 100, 95, 0.3); overflow: visible !important; overflow-x: initial !important; }
.salon-layout .group-list-wrapper { display: flex; }
.salon-layout .group-menu { width: 280px; position: relative; }
.salon-layout .group-menu-list { position: sticky; top: 90px }
.salon-layout .group-menu-list li a { letter-spacing: .15em; padding: 30px 10px; display: block; position: relative; transition: .3s; }
.salon-layout .group-menu-list li a:hover::before { content: ""; width: 100vw; height: 100%; background-color: rgba(109, 100, 95, 0.1); position: absolute; top: 0; bottom: 0; right: 0; margin: auto 0; }
.salon-layout .group-menu-list li a.active::before { content: ""; width: 100vw; height: 100%; background-color: rgba(109, 100, 95, 0.1); position: absolute; top: 0; bottom: 0; right: 0; margin: auto 0; }
.salon-layout .group-contents { width: calc(100% - 280px); border-left: 1px solid rgba(109, 100, 95, 0.3); padding: 80px 0 50px; }
.salon-layout .group-contents .content-block { padding-left: 60px; }
.jushou .block { padding: 10px; color: #fff; background-color: #6d645f; display: inline-block;}
.jushou ul li { padding-bottom: 10px; border-bottom: 1px solid #6d645f; margin-right: 50px;}
.jushou ul li:last-child { margin-right: 0; }
.jushou .num { width: 80px; }
.jushou .shou { width: calc(100% - 80px) }
.slider-mobile .slick-dots { bottom: -15px; }
.slider-mobile .slick-dots li { margin: 0; }
.pro-card .inner-slider .item { width: 100%; aspect-ratio: 1600 / 900; background-repeat: no-repeat; background-position: center; background-size: cover; display: block;}
.wp-pagenavi .current { background: #6d645f; color: #fff!important;}
.wp-pagenavi span, .wp-pagenavi a { background: #fff; color: #6d645f!important; border: 1px solid #6d645f!important; line-height: 0.9; letter-spacing: 0;}
.wp-pagenavi .previouspostslink, .wp-pagenavi .nextpostslink { border: none!important; }
#rental .sec-fv .bg { background-position: bottom; }
#rental .menu-tab { justify-content: center; }
#rental .menu-content .content.show,#rental .content-show { padding: 20px; border: 1px solid #6d645f; margin-top: 10px; padding-bottom: 40px;}
#salon #salon3 .bg { padding-top: 40%; }
#salon #salon2 .lim-ttl,#salon #salon2 .lim { color: #a68a55; }
#salon .item-icon li a img { width: 120px; }
#salon .item-icon li a img.square { width: 60px; }
.Item-img { width: 120px; }

/* リクルート画像パララックス */
.recruit-fv-img { width: 45%; position: absolute; transition: opacity 1.2s ease-out;  transition-property: opacity;  will-change: transform; pointer-events: none; }
.recruit-fv-img {transform: translate3d(0, 0, 0) ;}

/* 投稿画像を中央 */
.single-header + p img,
.sec-single .container-fluid img { display: block; margin: 0 auto; height: auto; max-width: 100%;}

input::placeholder,
textarea::placeholder { font-size: 14px; }

.dl-Block { display: flex; }
.dl-Block dt,.dl-Block dd { font-weight: normal; }
.dl-Block dt { width: calc(100% - 200px); }
.dl-Block dd { width: 200px; text-align: right;}
.plan-dl { border-bottom: 1px solid #2d2929; padding-bottom: 20px; margin-bottom: 40px;}
.plan-dl .plan-ttl { font-size: 20px; margin-bottom: 10px;}
.sec-wasou .fade_slider .bg { padding-top: 85%; }

#salon .menu-tab {
  position: sticky;
  top: 90px;          /* ヘッダー高さに合わせて調整可 */
  z-index: 30;
  background: #fff;
  padding: 10px 0;
}

@media (max-width: 767px) {
  #salon .menu-tab {
    top: 60px;        /* SPヘッダー高さに合わせて調整可 */
    padding: 8px 0;
  }
}


@media (max-width: 767px) {
	.container-fluid { padding-left: 25px; padding-right: 25px; }
	body { min-width: 375px; font-size: 14px; font-feature-settings: "palt"; letter-spacing: .03em!important; }
	header { padding: 0 20px; }
	header .wrap { height: 60px; }
	header .logo { margin: 0; }
	header .logo img { width: 107px; height: auto; }
	header .gnav { position: fixed; left: 0; top: 0; width: 100%; top: 60px; background: rgba(255,255,255,.9); height: 100%; opacity: 0; visibility: hidden; transition: .3s; z-index: 91; overflow: scroll; }
	header .gnav.active { opacity: 1; visibility: visible; }
	header .gnav ul { display: block; }
	header .gnav ul li { padding-left: 0; padding-right: 0; }
	header .gnav ul li:before { display: none; }
	header .gnav ul li a { font-size: 14px; padding: 15px 0; border-bottom: 1px solid rgba(108, 99, 94, 0.1); font-weight: bold; position: relative; text-align: center; }
	header .gnav ul li a:hover { opacity: .7; }
	header .gnav ul li a:before { content: none; }
	header .gnav ul li:first-child a { border-top: 1px solid rgba(108, 99, 94, 0.1); }
	header .gnav ul li:last-child a { border-bottom: 0; }
	header .gnav ul li.contact a { padding: 15px; }
	header .gnav ul li.drop { padding-right: 0; }
	header .gnav ul li.drop a::after { width: 8px; height: 8px; right: 25px; }
	header .gnav ul li.drop .menu { width: 100%; border: none; position: static; padding: 0; opacity: 1 !important; visibility: visible !important; transform: none !important; transition: none !important; display: none; }
	header .gnav ul li.drop .menu li { margin-bottom: 0; border-bottom: 1px solid rgba(108, 99, 94, 0.4); }
	header .gnav ul li.drop .menu li a { padding: 20px 0; background-color: rgba(108, 99, 94, 0.1); margin-bottom: 0; }
	header .gnav ul li.drop .menu li:last-child a { padding-bottom: 20px; }
	header .gnav ul li.drop .menu li a::before { content: none; }
	header .gnav .sp-sns { display: flex; align-items: center; justify-content: center; gap: 20px; }
	header .gnav .sp-sns a { display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; }
	header .gnav .sp-sns a div { font-size: 10px; line-height: 1.4; letter-spacing: 0; }
	header .menu-trg-area { display: block; }
	header.action .gnav ul li a { padding: 15px 0; }
	header.action .gnav ul li.contact a { padding: 15px; }
	.footer-list ul li a:hover:before { height: .5px; }
	.footer-wrap { flex-direction: column; }
	.footer-wrap .logo  { padding-bottom: 30px; border-bottom: 1px solid #fff; text-align: center; }
	.footer-wrap .logo img { width: 200px; }
	.footer-list ul { flex-wrap: wrap; }
	.footer-list ul li { width: 50%; }
	.footer-list ul li a { text-align: center; }
	.footer-list ul.en { padding: 30px 0; margin-bottom: 0; gap: initial; border-bottom: 1px solid #fff; }
	.footer-list ul.en li a { font-size: 14px; letter-spacing: .15em; }
	.footer-list ul.jp { padding: 30px 0; gap: initial; justify-content: initial; border-bottom: 1px solid #fff; }
	.footer-list ul.jp li a { letter-spacing: 0; }
	.shop-list { width: 100%; padding: 30px 0; margin-bottom: 10px; border-bottom: 1px solid #fff; gap: 0; justify-content: center; }
	.shop-list li { width: 100%; margin-bottom: 0; text-align: center;}
	.shop-list li a { font-size: 14px; text-align: center; }
	.sns-list { padding: 30px 0 40px; justify-content: center; }
	.sp-line { width: 100%; padding: 15px 10px; background-color: #6d645f; align-items: center; justify-content: center; position: fixed; left: 0; bottom: 0; z-index: 100; }
	.sp-line img { width: 20px; }
	.sp-line div { font-size: 15px; letter-spacing: .15em; color: #fff; margin-left: 10px; }
	.copyright { font-size: 10px; text-align: center; }

	/* common */
	[id] { scroll-margin-top: 70px; }
	.sec-ttl { font-size: 18px; padding-bottom: 15px; }
	.sec-ttl::before { right: 0; margin: 0 auto; line-height: 1.75;}
	.sec-ttl.big { font-size: 20px; display: flex; align-items: center; justify-content: center; text-align: center; letter-spacing: .03em; line-height: 1.5; flex-direction: column;}
	.link_btn { height: 35px; font-size: 13px; }
	.page-ttl { font-size: 30px; bottom: -15px; right: 30px; }
	.middle-wrap { padding: 30px 0 ; background-size: 70% 83%; background-position: right bottom; margin-top: 50px;background-blend-mode: overlay; background-image: linear-gradient(rgba(255,255,255,0.3), rgba(255,255,255,0.3)), url(../images/middle_img1.jpg) !important;}
	.middle-wrap .title { font-size: 20px; }
	.fade_slider { margin-bottom: 50px !important; }
	.fade_slider .slick-dots { top: initial; bottom: -20px; }
	.fade_slider .slick-dots li { width: 17px; height: 17px; }
	.fade_slider .slick-dots li button { width: 17px; height: 17px; }
	.fade_slider .slick-dots li button:before { font-size: 8px; }
	.phone-wrap .num { font-size: 12px; }
	.phone-wrap .num span { font-size: 18px; }
	.tel-flex { flex-wrap: wrap; }
	.tel-flex .shop { width: 100%; font-size: 12px; }
	.tel-flex .line { width: 20px; margin: 0 10px 0 0; }
	.large-icon a { width: 50px; height: 50px; }
	.sns-pc { display: none; } 
	.sns-sp { display: flex; }
	.fv_wrap { margin-left: 40px; }
	.Sub-Title { font-size: 16px; }

	/* section */
	.sec-fv { width: 100%; padding-top: 60px; }
	.fv_wrap .fv_left { display: none; }
		.fv_wrap .fv_right { width: 100%; }
		.fv_slider .bg { height: 260px; }
		.fv_slider.home .bg { height: calc(100vh - 60px); }
		.fv_slider.home .bg.fv-bg1 { background-position: left center; }
		.fv_slider.home .bg.fv-bg2 { background-position: right center; }
		.news-ttl { justify-content: center; }
	.news-ttl .sec-ttl { margin-bottom: 30px; }
	.news-list li a { padding: 15px 0; flex-wrap: wrap; flex-direction: row;}
	.news-list li a .date { width: 79px; font-size: 12px; margin-right: 10px; }
	.news-list li a .cat { min-width: 80px; font-size: 10px; padding: 0 5px; margin-right: 0; }
	.news-list li a .text { width: 100%; font-size: 14px; margin-top: 5px; letter-spacing: .03em;}
	.concept-wrap .title { gap: 0 20px; display: flex; align-items: center; flex-wrap: wrap; }
	.concept-wrap .title > p { font-size: 22px; line-height: 2; }
	.concept-wrap p { letter-spacing: 0; font-size: 16px; }
	.sec-loop .loop-ttl { font-size: 12px; margin: 20px 0; }
	.sec-loop .loop_slider .bg { margin: 0 10px; }
	.sec-loop .loop_slider .slide1 { width: 300px !important; height: 225px !important; } 
	.sec-loop .loop_slider .slide2 { width: 125px !important; height: 200px !important; } 
	.sec-loop .loop_slider .slide3 { width: 225px !important; height: 225px !important; } 
	.sec-loop .loop_slider .slide4 { width: 250px !important; height: 150px !important; } 
	.sec-loop .loop_slider .slide5 { width: 300px !important; height: 200px !important; } 
	.sec-loop .loop_slider .slide6 { width: 350px !important; height: 225px !important; } 
	.sec-loop .loop_slider .slide7 { width: 200px !important; height: 200px !important; } 
	.sec-loop .loop_slider .slide8 { width: 150px !important; height: 225px !important; } 
	.sec-rental::before { width: 70%; }
	.rental-img.full-left { height: auto; margin-left: calc(50% - 50vw);}
	.rental-wrap .sec-ttl { display: flex; align-items: center; justify-content: center; }
	.rental-img.full-right { height: auto; }
	.rental-img.full-right .bg { padding-top: 30%; }
	.rental-wrap.bg-white { width: calc(100% + 30px); padding: 30px; margin-top: 0; margin-left: 0; position: static; display: flex; flex-direction: column; align-items: center; justify-content: center; }
	.sec-rental .loop_slider .bg { width: 300px; }
	.sec-gallery .sec-ttl { display: flex; align-items: center; justify-content: center; }
	.salon_slider .bg { margin: 0 5px; }
	.parallax.one { height: 400px; }
	.recruit-wrap { right: 0; left: 0; }
	.recruit-wrap .sec-ttl { font-size: 24px; }
	.recruit-text { font-size: 14px; letter-spacing: .048em; }
	/* .sec-middle .middle-wrap { background-image: url(../images/middle_img1_sp.jpg) !important; } */
	.sec-wasou .parallax.one { height: 250px; }
	.sec-okituke .parallax.one { height: 250px; }
	.sec-dress .parallax.one { height: 250px; }
	.recruit-fv { padding-top: 60px; }
	.recruit-fv .recruit-fv-bg { min-height: 140vh; }
	.recruit-fv .title { top: 40px; left: 5%; }
	.recruit-fv .title h2 { font-size: 16px; }
	.recruit-fv .main-ttl { top: 22%; }
	.recruit-fv .main-ttl h1 { font-size: 24px; margin-left: 5%; }
	.recruit-fv-img.fv2 { top: 17%; width: 200px; height: auto; }
	.recruit-fv-img.fv3 { top: 29%; left: 55%; width: 150px; height: auto; }
	.recruit-fv-img.fv4 { top: 43%; width: 280px; height: auto; }
	.recruit-fv-img.fv5 { top: 58%; left: 7%; width: 200px; height: auto; }
	.recruit-fv-img.fv6 { top: 75%; left: initial; right: 0; width: 200px; height: auto; }
	.recruit-para { flex-direction: column; }
	.recruit-para img { height: 700px; object-fit: cover; }
	.recruit-para .left { width: 100%; height: 50%; }
	.recruit-para .right { width: 100%; height: 50%; top: initial; bottom: 0; }
	.para-wrap { height: 350px; }
	.para-wrap .bg { height: 140%; }
	.recruit-para .right { justify-content: center; }
	.recruit-para .right p { font-size: 14px; padding-left: 0; padding: 0 15px 15px 15px; }
	.group-list-wrapper { flex-direction: column; }
	.group-menu { width: 100%; }
	.group-menu-list li { margin-bottom: 10px; }
	.group-menu-list li a { padding: 10px 0; background-color: rgba(109, 100, 95, 0.1); text-align: center; }
	.group-contents { width: 100%; border-left: none; padding: 30px 0 40px; }
	.group-contents .container-fluid { padding: 0; }
	.group-contents .content-block { padding-left: 0; }
	.group-contents .content-block h3 { font-size: 16px; }
	.group-contents .content-block p { letter-spacing: .03em;}
	.year-wrap { margin-bottom: 25px; padding-bottom: 10px; }
	.year-wrap .title { font-size: 14px; margin-bottom: 20px; padding: 10px 20px; text-align: center; }
	.year-wrap dl { flex-direction: column; }
	.year-wrap dt { width: 60px; height: 32px; margin-bottom: 10px; margin-right: 0; }
	.year-wrap dd { width: 100%; gap: 5px; flex-wrap: wrap; }
	.year-wrap dd div { width: auto; font-size: 14px; padding: 5px 15px; }
	.year-wrap .debut { font-size: 16px; padding: 10px; }
	.recruit-layout .parallax.one { height: 220px; margin-left: calc(50% - 50vw); }
	.recruit-layout .parallax.one .bg { height: 140%; }
	.group-contents .content-block .resource-list li { font-size: 16px; margin-bottom: 10px; }
	.group-contents .content-block .resource-list li span { font-size: 12px; }
	.recruit-layout .faq_list li .question .circle { width: 30px; height: 30px; right: 0; top: 4px; }
	.recruit-layout .faq_list li .question::before, 
	.recruit-layout .faq_list li .question::after { width: 12px; top: 19px; right: 9px; }
	.recruit-layout .faq_list li .question .text { padding-right: 0; }
	.recruit-layout .loop_slider .bg { margin-left: 10px; margin-right: 10px; }
	.recruit-layout .loop_slider .slide1 { width: 200px !important; height: 200px !important; } 
	.recruit-layout .loop_slider .slide2 { width: 175px !important; height: 125px !important; } 
	.recruit-layout .loop_slider .slide3 { width: 175px !important; height: 125px !important; } 
	.recruit-layout .loop_slider .slide4 { width: 200px !important; height: 200px !important; } 
	.recruit-layout .loop_slider .slide5 { width: 175px !important; height: 125px !important; } 
	.recruit-layout .loop_slider .slide6 { width: 175px !important; height: 125px !important; } 
	.recruit-bottom { padding: 60px 0; }
	.recruit-inner { padding: 30px 15px; }
	.recruit-inner::before,
	.recruit-inner::after { width: 40px; height: 40px; }
	.recruit-inner::before { bottom: -20px; left: -20px; }
	.recruit-inner::after { top: -20px; right: -20px; }
	#concept .middle-wrap .title { font-size: 17.42px; }
	.theme-img.full-left { height: 370px; }
	.sec-theme .parallax.one { height: 300px; }
	.sec-theme .parallax.one .bg { background-position: 28%; }
	.pro-card { padding: 30px 15px; }
	.pro-card::before,
	.pro-card::after { width: 30px; height: 30px; }
	.pro-card::before { bottom: -15px; left: -15px; }
	.pro-card::after { top: -15px; right: -15px; }
	.pro-wrap .pro-title { font-size: 16px; line-height: 1.75; letter-spacing: .03em;}
	.other-pro .title { font-size: 16px; }
	.other-pro ul { flex-wrap: wrap; gap: 10px 20px; }
	.other-pro ul li { padding: 0; }
	.other-pro ul li::before { content: none; }
	.post-name { gap: 20px; }
	.post-name .post { font-size: 11px; }
	.post-name .name { font-size: 18px; }
	.cut-card { padding: 30px 15px; }
	.cut-card .num { width: 30px; height: 30px; font-size: 14px; }
	.cut-card h3 { font-size: 18px; letter-spacing: .03em; padding-bottom: 10px; }
	.cut-card h3::before { width: 30px; }
	.cut-card .square.left,
	.cut-card .square.right { width: 30px; height: 30px; }
	.cut-card .square.right { top: -15px; right: -15px; }
	.cut-card .square.left { bottom: -15px; left: -15px; }
	.cut-card .square.sp-gray { background-color: #F0F0EF; }
	.sec-kuredo .cut-card { padding: 30px 15px; }
	.gray-dl { flex-direction: column; }
	.gray-dl dt { width: 100%; padding: 10px 15px; }
	.gray-dl dd { width: 100%; padding: 10px 0 20px 15px; }
	.page_link { font-size: 16px; padding: 15px; }
	.sec-menu { gap: 10px; flex-wrap: wrap; padding-bottom: 20px; }
	.sec-menu a { border-bottom: 1px solid #6d645f; }
	.salon-wrap .products ul { gap: 10px 20px; flex-wrap: wrap; }
	.detail-wrap { padding-bottom: 10px; }
	.detail-wrap .title { font-size: 14px; }
	.menu-tab { gap: 10px; }
	.menu-tab .tab { padding: 4px 10px;}
	.detail-wrap p { font-size: 14px; }
	.detail-wrap dt span { font-size: 9px; }
	.detail-wrap dd span { font-size: 9px; }
	.sns-wrap .title { font-size: 16px; }
	.add-wrap .add-ttl { font-size: 18px; }
	.contact-wrap p span { font-size: 10px; }
	.faq_list li { padding: 15px 15px 10px 15px; margin-bottom: 15px; }
	.faq_list li .ttl { width: 30px; height: 30px; font-size: 18px; }
	.faq_list li .text { width: calc(100% - 40px); }
	.faq_list li .question { padding: 5px 5px 10px 5px; } 
	.faq_list li .question::before, 
	.faq_list li .question::after { width: 20px; top: 20px; right: 10px; }
	.faq_list li .question .text { font-size: 14px; padding-right: 30px; }
	.faq_list li .answer { padding: 10px 5px; }
	.faq_list li .answer .text { font-size: 12px; }
	.privacy-list li { margin-bottom: 35px; }
	.privacy-list li h3 { font-size: 20px; margin-bottom: 15px; padding-bottom: 10px; border-width: 1px; letter-spacing: .03em;}
	.sec-info .news-list li a { border-width: 1px; }
	.sec-info .news-list li a .date { width: 90px; font-size: 12px; }
	.sec-info .news-list li a .cat { min-width: 110px; font-size: 12px; border-width: 1px; }
	.cat-list { gap: 10px; }
	.cat-list li { margin-bottom: 10px; width: 50%;}
	.cat-list li a { font-size: 12px; border-width: 1px; }
	.news-nav li a { border-width: 1px; }
	.sec-single .link_btn { width: 200px; height: 40px; }
	.single-header { padding-bottom: 15px; }
	.single-header .date { width: 80px; margin-right: 5px; font-size: 12px; margin: 10px;}
	.single-header .cat { min-width: 105px; font-size: 12px; border-width: 1px; }
	.single-header .text { font-size: 16px; margin-top: 10px; }
	.contact-dl { flex-direction: column; padding: 15px 0; }
	.contact-dl dt { width: 100%; padding-left: 0; margin-bottom: 5px; }
	.contact-dl dt .ttl { font-size: 14px; }
	.contact-dl dt span { font-size: 10px; right: -40px; }
	.contact-dl dd { width: 100%; }
	.contact-dl dd input { font-size: 12px; padding: 10px 15px; }
	.contact-dl dd .address-wrap { flex-wrap: wrap; margin-bottom: 10px; }
	.contact-dl dd .address-wrap input { padding: 10px 15px; }
	.contact-dl dd .address-wrap .title { font-size: 13px; }
	.contact-dl dd .address-wrap span { font-size: 10px; }
	.contact-dl dd .address-wrap .title { width: 65px !important; }
	.contact-dl dd .address-wrap:first-of-type .content { width: 95px; }
	.contact-dl dd textarea { height: 150px; font-size: 12px; }
	.privacy-wrap .submit input { width: 180px; height: 45px; font-size: 14px; }
	.privacy-wrap p { font-size: 11px; }
	.sec-contact .large-icon { justify-content: center; }
	.sec-contact .large-icon a { width: 50px; height: 50px; }
	.sec-contact .phone-wrap .num { font-size: 14px; }
	.sec-contact .phone-wrap .num span { font-size: 20px; }
	.sec-contact .phone-wrap { text-align: center; }
	.salon-layout .group-list-wrapper { flex-direction: column; }
	.salon-layout .group-menu { width: 100%; }
	.salon-layout .group-menu-list li { margin-bottom: 10px; }
	.salon-layout .group-menu-list li a { padding: 10px 0; background-color: rgba(109, 100, 95, 0.1); text-align: center; }
	.salon-layout .group-contents { width: 100%; border-left: none; padding: 30px 0 40px; }
	.salon-layout .group-contents .container-fluid { padding: 0; }
	.salon-layout .group-contents .content-block { padding-left: 0; }
	.salon-layout .group-contents .content-block h3 { font-size: 16px; }
	.salon-layout .group-contents .content-block p { font-size: 12px; }
	.sec-kodawari .sec-ttl.big { display: block; }
	.sec-kodawari .sec-ttl::before { right: initial; left: 0; margin: 0; }
	.bg-Block { padding-top: 67.5%; }
	.jushou ul li { margin-right: 0; flex-direction: column;}
	.sp-slider .slick-dots li { margin: -2px; }
	.jushou .shou { width: 100%; }
	#home .fv_wrap { margin-left: 0; }
	#rental .White-Block { margin-top: -50px; padding: 30px 20px; margin-right: calc(50% - 50vw); padding-right: 20px;}
	#rental .menu-tab { justify-content: space-between; }
	#rental .menu-tab .tab { padding: 4px 10px; width: 48%; display: flex; align-items: center; justify-content: center;}
	.recruit-para .para-wrap { height: 260px; }
	.recruit-para .para-wrap .bg { height: 160%; }
	.recruit-para img { height: 550px; }
	.recruit-para .right { height: 50%; }
	.recruit-fv-img.fv1 { width: 50%; }
	.contact-dl dd textarea { padding: 15px; }
	.youtube iframe { height: 350px; }

	/* エントリーフォームのチェックボックス */
	.contact-dl dd.check-dd .wpcf7-form-control {display: flex;flex-wrap: wrap; /* 折り返しを許可 */gap: 12px 20px;  /* 上下・左右の間隔を固定 */}
	.contact-dl dd.check-dd .wpcf7-list-item {margin: 0 !important; /* 余計な余白を排除 */display: inline-flex;}
	.contact-dl dd.check-dd label {display: flex;align-items: center; /* 垂直中央に配置 */cursor: pointer;margin: 0; gap: 8px;}
	.contact-dl dd.check-dd input[type="checkbox"] {width: 14px !important;  /* サイズを固定 */height: 14px !important; /* サイズを固定 */margin: 0 4px 0 0 !important; /* 右側にだけ余白 */padding: 0 !important;cursor: pointer;-webkit-appearance: checkbox; /* ブラウザ標準の見た目を維持しつつズレを防ぐ */}
	.contact-dl dd.check-dd label span {line-height: 1; /* 行高によるズレを防止 */white-space: nowrap;}
	.contact-dl dd.check-dd .wpcf7-form-control {gap: 15px 10px; /* スマホでは少し隙間を広げて押しやすくする */}/* スマホで2列ずつ綺麗に並べたい場合は以下を追加 */.contact-dl dd.check-dd .wpcf7-list-item { width: calc(50% - 10px); }

	.rental-wrap p { letter-spacing: .03em; }
	.middle-wrap p { line-height: 2; letter-spacing: .03em; }
	.wasou-wrap p { line-height: 2; letter-spacing: .03em; background: #fff; padding: 20px; margin-top: -50px;}
	.wasou-wrap.left p { padding-left: 30px; }
	.jushou .block { font-size: 12px; padding: 6px;}
	.parallax.one .bg { height: 145%; }
	.sec-kodawari .over-right { margin-right: 0; }
	.parallax.one.left { margin-left: 25px; }
	.parallax.one.right { margin-right: 25px; }
	.phone-wrap p { line-height: 2; letter-spacing: .03em; }
	.salon-wrap p { letter-spacing: .03em; }
	.salon-wrap .products ul li a { letter-spacing: .03em; }
	.wp-pagenavi span, .wp-pagenavi a { font-size: 12px; width: 30px; height: 30px; line-height: 0.6; }
	.recruit-para .right p { letter-spacing: .03em; }
	.group-contents .content-block h3 { letter-spacing: .03em; }
	.theme-wrap p { letter-spacing: .03em; line-height: 2; }
	.theme-img img { width: 100%; height: 220px; object-fit: cover; }
	.theme-img.left { margin-left: calc(50% - 50vw); }
	.theme-img.right { margin-right: calc(50% - 50vw); }
	.cut-card p { line-height: 1.75; letter-spacing: .03em; }
	.gray-dl dt,.gray-dl dd { letter-spacing: .03em; }
	.privacy-list li p { letter-spacing: .03em; }

	@keyframes slide-left { 0% { transform: translateX(0); } 100% { transform: translateX(-6%); } }

	.dl-Block { flex-direction: column; }
	.dl-Block dt,.dl-Block dd { width: 100%; }
	.plan-dl .plan-ttl { font-size: 16px; }
	.dl-Block dd { font-size: 16px; margin-top: 20px; text-align: left;}
	#rental .menu-content .content.show, #rental .content-show { padding-bottom: 30px; }
	.recruit-layout .loop_slider .slide7 { width: 180px!important; height: 220px!important; }
	.detail-wrap dl { flex-direction: column; }
	.detail-wrap dt { width: 100%; }
	.detail-wrap dd { width: 100%; margin-top: 10px;}
	.detail-wrap dd .time,.detail-wrap dd .price { font-size: 14px; }
	.detail-wrap dd .price { width: 100px }
	.menu-tab { justify-content: center; }

}
