@charset "UTF-8";

/*--------------------------------------------------------------------------
----------------------------------------------------------------------------
----------------------------------------------------------------------------
汎用
----------------------------------------------------------------------------
----------------------------------------------------------------------------
--------------------------------------------------------------------------*/
/*pc限定*/
.sp {display: none!important;}

/*コンテナ*/
.container {width: 1100px; max-width: 96%;}

/*--------------------------------------------------------------------------
部品
--------------------------------------------------------------------------*/
/*------------------------------------
汎用見出し
------------------------------------*/


/*------------------------------------
汎用TOP見出し
------------------------------------*/
.page-heading,
.page-heading .inner {height: 430px;}
.page-heading .txt {top: 60%;}

/*------------------------------------
スクロールダウン
------------------------------------*/
.scroll-down span {margin-bottom: 14px;}
.scroll-down .bar {height: 36px;}


/*------------------------------------
TOPに戻る
------------------------------------*/
.back-to-top {padding: 140px 0;}
.back-to-top a {width: 177px;}

/*------------------------------------
MORE
------------------------------------*/
.more-wrap {margin: 40px 0 0;}
.more {padding: 1em 0; font-size: 18px;}

/*------------------------------------
logo_loader
------------------------------------*/
#logo_loader .f_logo {width: 30%;}
@keyframes loadLogo {0% {left: 0;} 30% {left: 0;} 100% {left: 100%;}}

/*--------------------------------------------------------------------------
ヘッダー
--------------------------------------------------------------------------*/
header {height: 90px; background: rgb(255 255 255 / 95%);}
header .inner {justify-content: space-between;}
header .inner .site-title {width: 220px; height: 90px; align-items: center;}
header .inner #global-nav li {height: 90px; line-height: 90px}
header .inner #global-nav li a {padding: 0 15px; display: block; box-sizing: border-box; -webkit-transition: all .3s ease; -moz-transition: all .3s ease; -o-transition: all .3s ease; transition: all .3s ease;}
header .inner a.contact {height: 90px; line-height: 90px; padding: 0 15px;}

header #nav-drawer {justify-content: center;}
header #nav-drawer #global-nav {max-width: 700px; margin: 0 auto 6.5vh; padding-left: 22px;}
header #nav-drawer #global-nav .nav-list {flex-wrap: wrap;}
header #nav-drawer #global-nav .nav-list > li {width: calc(100% / 3); margin: 20px 0; padding-left: 8%; box-sizing: border-box;}
header #nav-drawer #global-nav .nav-list li a,
header #nav-drawer #global-nav .nav-list > li > span {font-size: 1.5em; font-weight: 700;}
header #nav-drawer #global-nav .nav-list > li > span .arrow {margin-left: 10px;}
header #nav-drawer #global-nav .nav-list > li > .sub-nav li a {font-size: 1.25em;}

header #nav-drawer .info {width: 560px; padding: 1.825em 3em 2em; border-radius: 15px;}
header #nav-drawer .info .office-info dl {margin-left: -1em;}
header #nav-drawer .info .office-info .large {font-size: 2em;}

header #humberger {display: none;}

header #nav-bg {width: 20%; min-width: 280px; height: 250px; transition: 1.2s ease;}
.open-menu header #nav-bg {width: 275vw; height: 275vw; transition: 1s ease-out;}

/*--------------------------------------------------------------------------
トグルヘッダー
--------------------------------------------------------------------------*/
.toggle-header {width: 100%; margin-top: -90px; position: fixed; left: 0; top: 0; background: #fff; -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all 0.3s ease;  z-index: 10000;}
.toggle-header .inner {justify-content: space-between; align-items: center;}
.toggle-header .inner .site-title {width: 220px; height: 90px; align-items: center;}
.toggle-header .inner .site-title a {width: 100%; display: block;}
.toggle-header .inner .site-title a img {display: block; opacity: 1;}
.toggle-header .inner nav a {font-weight: 700;}
.toggle-header .inner nav a:hover,
.toggle-header .inner .contact {background: #d35017; color: #fff;}
.toggle-header .inner nav li {height: 90px; line-height: 90px}
.toggle-header .inner nav li a {padding: 0 15px; display: block; box-sizing: border-box; -webkit-transition: all .3s ease; -moz-transition: all .3s ease; -o-transition: all .3s ease; transition: all .3s ease;}
.toggle-header .inner a.contact {height: 90px; line-height: 90px; padding: 0 15px;}
.toggle-header .inner .contact:hover {transform: scale(0.95);}

.toggle-header.show {margin-top: 0; box-shadow: 0 0 8px #989898;}

/*--------------------------------------------------------------------------
メイン
--------------------------------------------------------------------------*/


/*--------------------------------------------------------------------------
フッター
--------------------------------------------------------------------------*/
footer {padding: 80px 0 40px;}

footer .inner-box {margin-bottom: 40px; justify-content: space-between;}
footer .contact-area .contact-banner {margin-bottom: 10px;}
footer .contact-area .contact.tel a {font-size: 32px;}
footer .contact-area .contact.tel a:before {width: 40px; margin: 10px 10px 0 0; height: 38px;}

footer .site-map {width: 600px; max-width: 90%; margin: 0 auto 40px;}
footer .site-map ul {justify-content: space-between;}
footer .socials {padding-top: 10px;}
footer .socials img {width: 40px;}

footer .copyright {font-size: 14px;}

/*--------------------------------------------------------------------------
----------------------------------------------------------------------------
----------------------------------------------------------------------------
フロントページ
----------------------------------------------------------------------------
----------------------------------------------------------------------------
--------------------------------------------------------------------------*/

img[src$=".svg"].mask-sp {display: none;}

/*------------------------------------
main
------------------------------------*/

/*------------------------------------
HERO HERDER
------------------------------------*/
#lp #top-slider {height: calc(100vh - 90px);}
#lp #top-slider .top-silder-item {height: calc(100vh - 90px);}
#lp #top-slider .top-silder-item .img img {height: calc(100vh - 90px);}
#lp #top-slider .top-silder-item .txt-wrap .txt {font-size: 28px; letter-spacing: 12px;}

#lp #top-slider .slick-dots {bottom: 20px;}
#lp #top-slider .slick-dots li button:before {content: '〇'; color: #fff; font-size: 14px; opacity: 1;}
#lp #top-slider .slick-dots li.slick-active button:before {content: '●';  color: #fff; font-size: 18px; opacity: 1;}
#lp #top .txt-wrap .txt{
	font-size: 28px;
	letter-spacing: 12px;
}

/*------------------------------------
感染予防について
------------------------------------*/
#lp .temporary {padding: 7vh 0;}

/*------------------------------------
解決できます
------------------------------------*/
#lp .solution {margin-bottom: 4.2%;}
#lp .solution .sec-title-wrap .sec-title {margin: 100px 0 60px;}
#lp .solution .sec-title-wrap .sec-title:after {content: ""; display: block; width: 2px; height: 50px; position: absolute; left: calc(50% - 1px); bottom: -25px; background: #d35017; animation: lineEfect 3s linear infinite;}
#lp .solution .sec-title-wrap .sec-title .bg-orange {width: 300px; margin-left: -150px; padding: 13px 0; top: -30px; font-size: 23px;}
#lp .solution .sec-title-wrap .sec-title .bg_gray {width: 800px; padding: 44px 0 21px; font-size: 30px; letter-spacing: 8px;}
#lp .solution .sec-title-wrap .sec-title .large-txt {margin-left: -10px; font-size: 50px; letter-spacing: 8px;}

#lp .solution .solution-list {justify-content: space-between;}
#lp .solution .solution-list li {width: 31%;min-width: 260px;}
#lp .solution .solution-list li:nth-child(2) .fadeInLeft {animation-delay: .3s}
#lp .solution .solution-list li:nth-child(3) .fadeInLeft {animation-delay: .6s}
#lp .solution .solution-list li:nth-child(4) .fadeInLeft {animation-delay: .9s}
#lp .solution .solution-list li .list-title {font-size: 22px; letter-spacing: 2px;}
#lp .solution .solution-list li .list-title span {margin-right: 10px; font-size: 24px;}
#lp .solution .solution-list li .details {font-size: 15px; line-height: 2;}

/*------------------------------------
会社概要
------------------------------------*/
#lp .about-us {padding: 26vh 0 10vh;}
#lp .about-us .deco.about-us-top {top: -4vh;}
#lp .about-us .sec-title {width: 800px; max-width: 90%; margin: 0 auto 10vh; padding: 40px 0; font-size: 24px; letter-spacing: 10px;}
#lp .about-us .sec-sub-title {font-size: 20px;}
#lp .about-us .sec-title:after {content: ""; width: 2px; height: 50px; position: absolute; left: calc(50% - 1px); top: 80%; background: #fff; animation: lineEfect 3s linear infinite;}

/*------------------------------------
entry
------------------------------------*/
#lp .sec-title.type01 {margin-bottom: 90px;}
#lp .sec-title.type01 .en {margin: 30px 0 5px; font-size: 104px; letter-spacing: 30px;}
#lp .sec-title.type01 .ja {padding-right: 22px; font-size: 26px; letter-spacing: 7px;}

#lp .sec-sec-title.type01 .ja {font-size: 30px; letter-spacing: 7px;}
#lp .sec-sec-title.type01 .en {font-size: 16px; letter-spacing: 4px;}

#lp .entry {padding: 120px 0 21vw;}
#lp .entry .entry-flow .entry-flow-list {margin-bottom: 120px; justify-content: space-between;}
#lp .entry .entry-flow .entry-flow-list li {width: 320px; height: 406px; padding: 90px 30px 60px;}
#lp .entry .entry-flow .entry-flow-list li.fadeInLeft:nth-child(2) {animation-delay: .3s}
#lp .entry .entry-flow .entry-flow-list li.fadeInLeft:nth-child(3) {animation-delay: .6s}
#lp .entry .entry-flow .entry-flow-list li .icon_arrow {width: 26px; left: 109%; top: calc(50% - 24px);}

#lp .entry .rate-plan .sec-sec-title{margin-bottom: 60px;}
/* 2025/02/05変更 */
/* #lp .entry .rate-plan .plan-list li.fadeInLeft:nth-child(2) {animation-delay: .2s}
#lp .entry .rate-plan .plan-list li.fadeInLeft:nth-child(3) {animation-delay: .4s}
#lp .entry .rate-plan .plan-list li.fadeInLeft:nth-child(4) {animation-delay: .6s} */

#lp .entry .payment-list li {line-height: 1.7;}

/*------------------------------------
Trainer トレーナー
------------------------------------*/
#lp .trainer {padding-bottom: 80px;}
#lp .trainer .container {max-width: 87%;}
#lp .trainer .trainer-list .figure,
#lp .trainer .trainer-list .profile {width: 50%;}
#lp .trainer .trainer-list .trainer-list-item:nth-child(even) {flex-direction: row-reverse;}
#lp .trainer .trainer-list li.trainer-list-item:not(:last-child) {margin-bottom: 140px;}
#lp .trainer .trainer-list li .figure .caption {bottom: 40px;}
/* 2025/02/06追加 */
#lp .trainer .trainer-list li .figure .caption.tomita {bottom: 468px;}
#lp .trainer .trainer-list li:nth-child(odd) .figure .svg.photo {margin: 0 10% 0 auto;}
#lp .trainer .trainer-list li:nth-child(even) .figure .svg.photo {margin: 0 auto 0 10%;}
#lp .trainer .trainer-list li .white-back {font-size: 24px;}
#lp .trainer .trainer-list li .profile .position li,
#lp .trainer .trainer-list li .profile .position li span {font-size: 18px;}

/*------------------------------------
User's voice
------------------------------------*/
#lp .users-voice .deco.users-voice-left-side {height: 64%; width: auto; position: absolute; top: 9.6%; left: 4%;}

#lp .users-voice .sec-title {margin: 60px 0; display: inline-flex; flex-direction: column; align-items: flex-end;}
#lp .users-voice .sec-title .ja {font-size: 46px;}

#lp .users-voice #users-voice-slider {width: 367px;}
#lp .users-voice #users-voice-slider li {width: 100%;}
#lp .users-voice #users-voice-slider li:nth-child(2).rightflow {animation-delay: .2s}
#lp .users-voice #users-voice-slider li:nth-child(3).rightflow {animation-delay: .4s}
#lp .users-voice #users-voice-slider li:nth-child(4).rightflow {animation-delay: .6s}
#lp .users-voice #users-voice-slider li dl {height: 430px; margin: 0 40px 6px 0; box-shadow: 8px 8px 10px #c3c3c3;}
#lp .users-voice #users-voice-slider li dl .number-area {margin-bottom: 40px; padding-left: 50px;}
#lp .users-voice #users-voice-slider li dl .number-area .number:before {width: 70px; left: -44px;}
#lp .users-voice #users-voice-slider li dl dd .c-profile {width: 18em; bottom: 40px;}

#lp .users-voice #users-voice-slider .slick-list.draggable {padding-bottom: 40px; overflow: visible; z-index: 1;}
#lp .users-voice #users-voice-slider .slick-list.draggable:before {content: ""; width: calc(50vw - 50%); height: 100%; display: block; background: #fff; position: absolute; right: 100%; z-index: 2;}
#lp .users-voice #users-voice-slider .slick-arrow{width: 60px; position: absolute; top: 40%; z-index: 4; cursor: pointer;}
#lp .users-voice #users-voice-slider .prev.slick-arrow {right: 101%;}
#lp .users-voice #users-voice-slider .next.slick-arrow {width: calc(49vw + 550px);}
#lp .users-voice #users-voice-slider .slick-arrow img {width: 60px;}
#lp .users-voice #users-voice-slider .next.slick-arrow img {margin: 0px 245px 0 auto;}
#lp .users-voice #users-voice-slider .slick-disabled {display: none!important;}
#lp .users-voice #users-voice-slider .slick-dots {width: 1100px;}
#lp .users-voice #users-voice-slider .slick-dots li button:before {font-size: 12px;}

@media screen and (min-width: 1620px) {
	#lp .users-voice .u-v-inner {padding-left: calc(50% - 550px);}
}
@media screen and (max-width: 1619px) {
	#lp .users-voice .u-v-inner {padding-left: 270px;}
	#lp .users-voice #users-voice-slider .slick-dots {width: calc(100vw - 440px);}
}

#lp .users-voice .deco.access-top {margin-top: -30px;}

/*------------------------------------
Contact お問い合わせ
------------------------------------*/
#lp .contact .inner .message {margin: 0 0 30px 30px; font-size: 20px;}
#lp .contact .inner .contact-btn .svg.phone {margin: 3px 16px 0 0;}
#lp .contact .inner .contact-btn .phone-number {color: #606060; font-size: 32px;}

/*------------------------------------
Access 店舗情報
------------------------------------*/
#lp .access {padding-bottom: 160px;}
#lp .access table thead, #lp .access table thead th {width: 147px;}
#lp .access .access-info-wrap, #lp .access .google-map-wrap {width: calc(50% - 12px);}
#lp .access .address-wrap .marker-icon {width: 16px;}
/*#lp .access .google-map .frame {height: 100%;}*/

/*------------------------------------
新型コロナウイルス感染予防対策について
------------------------------------*/
#lp .counter-measures {padding: 120px 0;}
#lp .counter-measures .sec-title {font-size: 30px; margin-bottom: 50px;}
#lp .counter-measures .sec-title:before,
#lp .counter-measures .sec-title:after {content: ""; font-weight: 700; height: 1px; background: #000;}
#lp .counter-measures .sec-title:before {width: 90px; margin-right: 40px;}
#lp .counter-measures .sec-title:after {width: 90px; margin-left: 40px;}
#lp .counter-measures p {margin-bottom: 44px; font-size: 18px; letter-spacing: 5px;}
#lp .counter-measures .counter-measures-list {justify-content: space-between;}
#lp .counter-measures .counter-measures-list li {width: 23%;}
#lp .counter-measures .counter-measures-list li.fadeInLeft:nth-child(2) {animation-delay: .2s}
#lp .counter-measures .counter-measures-list li.fadeInLeft:nth-child(3) {animation-delay: .4s}
#lp .counter-measures .counter-measures-list li.fadeInLeft:nth-child(4) {animation-delay: .6s}

/*--------------------------------------------------------------------------
404.php
--------------------------------------------------------------------------*/
#notfound {padding: 120px 0;}
#notfound ul li {width: 24%;}
#notfound ul li a {font-size: 20px;}
