@import url('https://fonts.googleapis.com/css2?family=Roboto+Condensed:ital,wght@0,300;0,400;0,700;1,300;1,400&display=swap');
@charset "UTF-8";
/* Contents Menu
-------------------------------------------------------------------------------------
【PC/SP】
	**:normalize
	**:reset
	**:indent
	**:size
	**:compo parts
    **:fadein
-------------------------------------------------------------------------------------*/
/* normalize
-------------------*/
/*! normalize.css v2.0.1 | MIT License | git.io/normalize */article,aside,details,figcaption,figure,footer,header,hgroup,nav,section,summary{display:block}audio,canvas,video{display:inline-block}audio:not([controls]){display:none;height:0}[hidden]{display:none}html{font-family:sans-serif;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}body{margin:0}h1{font-size:2em}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}mark{background:#ff0;color:#000}code,kbd,pre,samp{font-family:monospace,serif;font-size:1em}pre{white-space:pre;white-space:pre-wrap;word-wrap:break-word}q{quotes:"\201C""\201D""\2018""\2019"}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:0}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}button,input,select,textarea{font-family:inherit;font-size:100%;margin:0}button,input{line-height:normal}button,html input[type="button"],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],input[disabled]{cursor:default}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=search]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}textarea{overflow:auto;vertical-align:top}table{border-collapse:collapse;border-spacing:0}

/* reset
-------------------*/
html {
  background-color: #fffef3;
  font-size: 62.5%; /* sets the base font to 10px for easier math */
}
body, h1, h2, h3, h4, h5, h6, pre, ul, ol, li, dl, dt, dd, p, img {
  margin: 0;
  padding: 0;
}
body {
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  color: #292e37;
  font-size: 16px;
  font-size: 1.6rem; /* sets the default sizing to make sure nothing is actually 10px */
  line-height: 1;
  letter-spacing: 0.01em;
}
body * {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
#fancybox-wrap, #fancybox-wrap *, #fancybox-tmp, #fancybox-loading {
  -webkit-box-sizing: content-box !important;
  -moz-box-sizing: content-box !important;
  -o-box-sizing: content-box !important;
  -ms-box-sizing: content-box !important;
  box-sizing: content-box !important;
}
a, a:link, a:hover, a:focus {
  color: #333;
  text-decoration: none;
  cursor: pointer;
  outline: none;
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
}
a:hover {
  text-decoration: underline;
}
ul, ol {
  list-style-type: none;
}
::selection {
  background-color: #888;
  color: #FFF; /* Safari */
}
::-moz-selection {
  background-color: #888;
  color: #FFF; /* Firefox */
}
#contents p {
  line-height: 1.9;
}

/* indent
-------------------*/
.center{text-align:center!important}.left{text-align:left!important}.right{text-align:right!important}.top0{margin-top:0!important}.top5{margin-top:5px!important}.top10{margin-top:10px!important}.top15{margin-top:15px!important}.top20{margin-top:20px!important}.top25{margin-top:25px!important}.top30{margin-top:30px!important}.top35{margin-top:35px!important}.top40{margin-top:40px!important}.btm0{margin-bottom:0!important}.btm5{margin-bottom:5px!important}.btm10{margin-bottom:10px!important}.btm15{margin-bottom:15px!important}.btm20{margin-bottom:20px!important}.btm25{margin-bottom:25px!important}.btm30{margin-bottom:30px!important}.btm35{margin-bottom:35px!important}.btm40{margin-bottom:40px!important}.btm45{margin-bottom:45px!important}.btm50{margin-bottom:50px!important}.btm55{margin-bottom:55px!important}.btm60{margin-bottom:60px!important}.btm65{margin-bottom:65px!important}.btm70{margin-bottom:70px!important}.btm75{margin-bottom:75px!important}.btm80{margin-bottom:5pc!important}.btm85{margin-bottom:85px!important}.btm90,.btm95{margin-bottom:90px!important}.pT0{padding-top:0!important}.pT5{padding-top:5px!important}.pT10{padding-top:10px!important}.pT15{padding-top:15px!important}.pT20{padding-top:20px!important}.pT25{padding-top:25px!important}.pT30{padding-top:30px!important}.pT35{padding-top:35px!important}.pT40{padding-top:40px!important}.pT45{padding-top:45px!important}.pB0{padding-bottom:0!important}.pB5{padding-bottom:5px!important}.pB10{padding-bottom:10px!important}.pB15{padding-bottom:15px!important}.pB20{padding-bottom:20px!important}.lm5{margin-left:5px!important}.lm10{margin-left:10px!important}.lm15{margin-left:15px!important}.lm20{margin-left:20px!important}.lm50{margin-left:50px!important}.lm60{margin-left:60px!important}.lm70{margin-left:70px!important}.rm5{margin-right:5px!important}.rm10{margin-right:10px!important}.rm15{margin-right:15px!important}.rm20{margin-right:20px!important}.vAT{vertical-align:top!important}.vAM{vertical-align:middle!important}.vAB{vertical-align:bottom!important}.bold{font-weight:700}.normal{font-weight:400}.is-pc{display:block}.is-sp,.is-spS{display:none}.spTel{pointer-events:none}@media only screen and (max-width: 900px) {a.spTel{pointer-events: auto;}.is-pc{display:none;}.is-sp,.is-spS{display:block;}}
/* size
-------------------*/
.size10{font-size:1rem!important}.size11{font-size:1.1rem!important}.size12{font-size:1.2rem!important}.size13{font-size:1.3rem!important}.size14{font-size:1.4rem!important}.size15{font-size:1.5rem!important}.size16{font-size:1.6rem!important}.size17{font-size:1.7rem!important}.size18{font-size:1.8rem!important}.size19{font-size:1.9rem!important}.size20{font-size:2rem!important}.size21{font-size:2.1rem!important}.size22{font-size:2.2rem!important}.size23{font-size:2.3rem!important}.size24{font-size:2.4rem!important}.w5{width:5%!important}.w10{width:10%!important}.w15{width:15%!important}.w18{width:18%!important}.w20{width:20%!important}.w25{width:25%!important}.w30{width:30%!important}.w35{width:35%!important}.w40{width:40%!important}.w45{width:45%!important}.w50{width:50%!important}.w55{width:55%!important}.w60{width:60%!important}.w65{width:65%!important}.w70{width:70%!important}.w75{width:75%!important}.w80{width:80%!important}.w85{width:85%!important}.w90{width:90%!important}.w95{width:95%!important}.wFull{width:100%!important}
/* compo parts
-------------------*/
.bscBtn01 a{background-color:#58ac2f;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;color:#fff;border-radius:5px;display:inline-block;padding:20px 0;width:310px;text-align:center;text-decoration:none;position:relative;font-size:18px;font-size:1.8rem}.bscBtn01 a:hover{background-color:#259944;text-decoration:none}.bscBtn01 a:after{content:'';width:8px;height:8px;border:0;border-top:solid 1px #fff;border-right:solid 1px #fff;-ms-transform:rotate(45deg);-webkit-transform:rotate(45deg);transform:rotate(45deg);position:absolute;top:50%;right:20px;margin-top:-4px;-webkit-transition:all .3s ease-in-out;transition:all .3s ease-in-out}.bscBtn01 a:hover:after{right:10px}.indList,.indListS{margin-bottom:15px}.indList li,.indListS li{line-height:170%;text-indent:-1em;padding-left:1em;margin-bottom:5px}.indListS li{font-size:1.1rem!important;line-height:130%}.indList li:before,.indListS li:before{content:'・';font-size:50%;margin-right:5px;vertical-align:middle}.numList,.numListS{margin-bottom:15px;padding-left:1.6em}.numList li,.numListS li{line-height:150%;list-style:decimal outside none;margin-bottom:5px}.numListS li{font-size:1.1rem!important;line-height:130%}.circleList li{position:relative;text-indent:-1.3em;padding-left:1.3em;margin-bottom:5px;line-height:1.5;vertical-align:middle}.circleList li:before{display:inline-block;vertical-align:middle;content:'';width:.8em;height:.8em;background:#259944;border-radius:50%;margin-right:8px}.bscTbl01 table{border-collapse:collapse;border-top:1px solid #f6d9b0;width:100%}.bscTbl01 table td,.bscTbl01 table th{background-color:#fff;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;border-bottom:1px solid #f6d9b0;line-height:1.7;padding:15px 10px 1pc;border-right:1px solid #f6d9b0;text-align:left;text-align:center}.bscTbl01 table th{background-color:#f6d9b0;font-size:17px;font-weight:400;border-right:1px solid #fff;font-size:14px;font-size:1.4rem}.bscTbl01 table td{color:#ebb27b}.bscTbl01 table td span{display:block;font-family:Barlow,sans-serif;color:#999;font-size:9pt;font-size:1.2rem;line-height:.8}.bscTbl01 table td.time{text-align:left;font-family:Barlow,sans-serif;color:#333}.tblScroll{overflow-x:auto}.tblScroll,.tblScroll table{-webkit-overflow-scrolling:touch}.tblScroll table{margin-bottom:0;width:750pt!important}
/*topcontrol*/
#topcontrol {
  z-index: 900;
}
#topcontrol a {
  background: url(../images/scrollup.svg) center center no-repeat #000;
  background: url(../images/scrollup.svg) center center no-repeat\9 #000; /* IE8 */
  *background: url(../images/scrollup.svg) center center no-repeat #000; /* IE7 */
  _background: url(../images/scrollup.svg) center center no-repeat #000; /* IE6 */
  display: block;
  height: 60px;
  width: 60px;
  filter: alpha(opacity=70) !important;
  opacity: 0.7 !important;
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
}
#topcontrol a:hover {
  filter: alpha(opacity=10) !important;
  opacity: 1 !important;
  -webkit-transform: scale(1.2);
  -moz-transform: scale(1.2);
  -ms-transform: scale(1.2);
  -o-transform: scale(1.2);
  transform: scale(1.2);
}
/*fadein*/
.fadein {
  opacity: 0;
  transform: translate(0, 50px);
  transition: all 1000ms;
}
.fadein.scrollin {
  opacity: 1;
  transform: translate(0, 0);
}
.en {
font-family: 'Roboto Condensed', sans-serif;
}

#header .hdInr {
width: 90%;
max-width: 1300px;
margin: 0 auto;
padding: 40px 0;
position: relative;
}
#header .hdInr .logo {
width: 390px;
margin: 0 auto;
}
#header .hdInr .logo a {
display: block;
}
#header .hdInr .recruit-btn-list {
position: absolute;
right: 0;
top: 50%;
transform: translateY(-50%);
}
#header .hdInr .recruit-btn-list li {
display: inline-block;
margin-left: 16px;
position: relative;
}
#header .hdInr .recruit-btn{
font-size: 20px;
font-size: 2rem;
border-radius: 30px;
padding: 10px 20px 8px;
border: 2px solid #000;
display: block;
-webkit-transition: all .3s ease-in-out;
transition: all .3s ease-in-out;
}
#header .hdInr .recruit-btn:hover{
text-decoration: none;
background: #000;
color: #fff;
}
#header .hdInr .recruit-btn.with-list {
  position: relative;
}
#header .hdInr .recruit-btn.with-list:hover {
  cursor: pointer;
}

#header .hdInr .recruit-btn.with-list .each-branch {
  /*display: none;*/
  position: absolute;
  top: 125%;
  left: 50%;
  z-index: 10;
  background: #e9e9de;
  border-radius: 15px;
  padding: 20px;
  max-width: 250px;
  transform: translateX(-50%);
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
}

/*#header .hdInr .recruit-btn.with-list:hover .each-branch {
  display: block;
}*/
#header .hdInr .recruit-btn.with-list .each-branch li{
  display: block;
  margin-bottom: 10px;
  width: 100%;
  margin-left: 0;
}
#header .hdInr .recruit-btn.with-list .each-branch li:last-child {
  margin-bottom: 0;
}

#header .hdInr .recruit-btn-list li.dropdown-container .each-branch .each-branch-btn {
  background-color: #c2c2b1;
  color: #fff;
  font-size: 15px !important;
  text-align: center;
  padding: 10px;
  display: block;
  font-weight: 700;
  line-height: 1.2;
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
  opacity: 1;
}

#header .hdInr .recruit-btn-list li.dropdown-container .each-branch .each-branch-btn:hover{
  text-decoration: none !important;
  color: #333;
}

#header .hdInr .recruit-btn-list li.dropdown-container {
  position: relative;
}

#header .hdInr .recruit-btn-list li.dropdown-container .each-branch {
  display: none;
  position: absolute;
  top: 120%; 
  left: 50%;
  transform: translateX(-50%);
  z-index: 10;
  background: #e9e9de;
  border-radius: 15px;
  padding: 20px;
  transition: all .3s ease-in-out;
}

#header .hdInr .recruit-btn-list li.dropdown-container .each-branch li{
  display: block;
  margin-bottom: 5px;
  margin-left: 0;
  width: 250px;
}

#header .hdInr .recruit-btn-list li.dropdown-container .each-branch li:last-child{
  margin-bottom: 0px;
}

#header .hdInr .recruit-btn-list li.dropdown-container.active .each-branch {
  display: block;
}

#header .hdInr .menu-btn {
  display: block;
  z-index: 11;
  display: block;
  width: 110px;
  height: 110px;
  position: fixed;
  background-color: #333;
  top: 0;
  right: 0;
}
#header .hdInr .menu-btn span {
  width: 30px;
  height: 2px;
  background-color: #fffef3;
  display: block;
  position: absolute;
  left: 40px;
}
#header .hdInr .menu-btn span:first-child {
  top: 40px;
}
#header .hdInr .menu-btn span:nth-child(2) {
  top: 0;
  bottom: 0;
  margin-top: auto;
  margin-bottom: auto;
}
#header .hdInr .menu-btn span:last-child {
  bottom: 40px;
}
#header .hdInr .menu-btn.menu-close span:first-child,
#header .hdInr .menu-btn.menu-close span:last-child {
  width: 42px;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
}
#header .hdInr .menu-btn.menu-close span:first-child {
  transform:rotate(45deg); 
}
#header .hdInr .menu-btn.menu-close span:nth-child(2) {
  display: none;
}
#header .hdInr .menu-btn.menu-close span:last-child {
  transform:rotate(-45deg); 
}
#header .hdInr .menu-list {
  display: none;
  z-index: 10;
  width: 100vw;
  height: 100vh;
  position: fixed;
  left: 0;
  top: 0;
  background-color: #fffef3;
  overflow: auto;
  padding-top: 60px;
  box-sizing: border-box;
}
#header .hdInr .menu-list .menu-list-link {
  text-align: center;
}
#header .hdInr .menu-list .menu-list-link li {
  margin-top: 20px;
  margin-bottom: 20px;
}
#header .hdInr .menu-list .menu-list-link li a {
  font-weight: bold;
  font-size: 26px;
  margin-bottom: 10px;
  display: inline-block;
}
#header .hdInr .menu-list .menu-list-link li a:only-child {
  margin-bottom: 0;
}
#header .hdInr .menu-list .menu-list-link li p {
  margin-top: 5px;
  line-height: 1.5;
}
#header .hdInr .menu-list .menu-list-link li p.strong {
  color: #DA5A4D;
}

#header .hdInr .menu-list .menu-list-link li p.net-booking {
  color: #c2c2b1;
  font-weight: bold;
  font-size: 26px;
  margin-bottom: 10px;
}

#header .hdInr .menu-list .menu-list-link li .each-branch{
  margin: 0 auto;
  display: inline-block;
}

#header .hdInr .menu-list .menu-list-link li .each-branch li a{
  color: #fff;
  background: #c2c2b1;
  display: block;
  max-width: 400px;
  padding: 12px 20px;
  font-size: 16px;
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
}

#header .hdInr .menu-list .menu-list-link li .each-branch li a:hover{
  color: #222;
}

#header .hdInr .menu-list .menu-list-link li .each-branch li{
  margin: 10px 0 !important;
}

#header .hdInr .menu-list .menu-list-link li .each-branch li a:hover{
  text-decoration: none;
}
#header .hdInr .menu-list .menu-list-btn {
  display: flex;
  margin-top: 20px;
  justify-content: center;
}
#header .hdInr .menu-list .menu-list-btn li {
  margin-left: 8px;
  margin-right: 8px;
}
#header .hdInr .menu-list .menu-list-btn li .recruit-btn {
  font-size: 18px;
  padding: 8px 20px 6px;
}
#header .hdInr .menu-list .menu-list-btn .en {
  font-size: 20px;
}
#mv{
position: relative;
z-index: -1;
}
#mv .mvInr{
width: 90%;
max-width: 1500px;
margin: 0 auto;
position: relative;
}
#mv .mainImg {
opacity: 0;
  transform: translate(0, 50px);
  transition: all 1000ms;
}
#mv .mainImg.scrollin {
  opacity: 1;
  transform: translate(0, 0);
}

#mv .mvInfo {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%);
  width: 100%;
}
#mv .mvMedal {
position: absolute;
top: -20px;
left: 20px;
opacity: 0;
  transform: translate(0, 50px);
  transition: all 1000ms;
}

#mv .mvMedal.scrollin {
  opacity: 1;
  transform: translate(0, 0);
}
#mv .ticket {
position: absolute;
top: 20px;
right: 20px;
opacity: 0;
  transform: translate(0, 50px);
  transition: all 1000ms;
  width: 30%;
}
#mv .ticket.scrollin {
  opacity: 1;
  transform: translate(0, 0);
}

#mv .medalInr {
background: #73afa1;
position: relative;
display: inline-block;
width: 235px;
height: 235px;
border-radius: 50%;
}
#mv .medalTxt {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit- transform: translateY(-50%) translateX(-50%);
  width: 100%;
}
#mv .medalTxt span {
display: block;
text-align: center;
}

#mv .medalTxt span.date {
font-size: 22px;
font-size: 2.2rem;
font-weight: 700;
}
#mv .medalTxt span.date small {
font-size: 18px;
font-size: 1.8rem;
font-weight: 500;
}
#mv .medalTxt span.access {
padding: 10px 0 20px;
}
#mv .medalTxt span.open {
width: 60%;
margin: 0 auto;
}
#mv h1{
text-align: center;
width: 68%;
margin: 0 auto 20px;
opacity: 0;
  transform: translate(0, 50px);
  transition: all 1000ms;
}
#mv h1.scrollin{
  opacity: 1;
  transform: translate(0, 0);
}
#mv h1 span {
color: #f5f3ec;
display: block;
font-size: 15px;
font-size: 1.5rem;
margin-bottom: 15px;
}
#mv .catch{
text-align: center;
font-size: 20px;
font-size: 2rem;
font-weight: bold;
opacity: 0;
  transform: translate(0, 50px);
  transition: all 1000ms;
}
#mv .catch.scrollin{
  opacity: 1;
  transform: translate(0, 0);
}
#mv .catch span {
display: inline-block;
background-color: #fffef3;
padding: 5px 10px;
margin-top: 8px;
}
.sideInfo {
background: #fffef3;
box-shadow: 0 0 3px rgb(0,0,0,0.1);
width: 29%;
max-width: 450px;
position: absolute;
right: 0;
bottom: -30px;
border-radius: 15px 0 0 15px;
opacity: 0;
  transform: translate(0, 50px);
  transition: all 1000ms;
}
.sideInfo.scrollin {
  opacity: 1;
  transform: translate(0, 0);
}
.sideInfo dl {
padding: 30px;
}
.sideInfo dl dt {
font-size: 18px;
font-size: 1.8rem;
font-weight: bold;
margin-bottom: 20px;
}
.sideInfo dl dt img {
width: 18px;
margin-right: 3px;
vertical-align: middle;
}
.sideInfo dl dd.address {
margin-bottom: 30px;
}
.sideInfo dl dd.mapLink a {
background: #292e37;
display: inline-block;
border-radius: 50px;
color: #fff;
padding: 10px 50px;
}
.sideInfo dl dd.mapLink a:hover {
text-decoration: none;
background: #000;
}

.mv-news{
  left: 50px;
  bottom: 50px;
  position: absolute;
  opacity: 0;
  transform: translate(0, 50px);
  transition: all 1000ms;
}

.mv-news.scrollin {
    opacity: 1;
    transform: translate(0, 0);
}

.news-wrap{
  background: #ffffff;
  border-radius: 50px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding: 20px 30px;
  box-shadow: 0px 0px 18px 3px rgba(0,0,0,0.05);
  -webkit-box-shadow: 0px 0px 18px 3px rgba(0,0,0,0.05);
  -moz-box-shadow: 0px 0px 18px 3px rgba(0,0,0,0.05);
  max-width: 700px;
  width: 100%;
}

.news-wrap:hover{
  background: #fffef3;
  text-decoration: none;
}

.news-wrap .text18.en{
  color: #c2c2af;
  font-size: 18px;
  font-size: 1.8rem;
  margin-right: 20px;
}

.news-wrap li {
  margin-top: 10px;
}
.news-wrap li:first-child {
  margin-top: 0;
}

.news-wrap .text15{
  font-size: 15px;
  font-size: 1.5rem;
}

.news-wrap .text15 span{
  position: relative;
  padding-bottom: 10px;
  display: inline-block;
}

.news-wrap .text15 span:after{
  content: "";
  position: absolute;
  left: 0%;
  bottom: 0;
  background: #292e37;
  height: 1px;
  width: 100%;
}

.news-wrap .text15:hover span:after{
  opacity: 0;
}

.news-wrap a:hover{
  text-decoration: none;
}

.scrolldown {
  display: inline-block;
  position: absolute;
  left:50%;
  bottom:-50px;
  z-index: 2;
  opacity: 0;
}
.scrolldown.scrollin {
  opacity: 1;
}
.scrolldown::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 1px;
  height: 100px;
  background: #292e37;
  animation: sdl 2s cubic-bezier(1, 0, 0, 1) infinite;
}

a::after {
  animation: sdl 1.5s cubic-bezier(1, 0, 0, 1) infinite;
}
@keyframes sdl {
  0% {
    transform: scale(1, 0);
    transform-origin: 0 0;
  }
  35% {
    transform: scale(1, 1);
    transform-origin: 0 0;
  }
  35.1% {
    transform: scale(1, 1);
    transform-origin: 0 100%;
  }
  70%, 100% {
    transform: scale(1, 0);
    transform-origin: 0 100%;
  }
}

#contents {
padding-top: 100px;
overflow: hidden;
}
.secInr {
width: 90%;
max-width: 1100px;
margin: 0 auto;
}
.secInrW {
width: 90%;
max-width: 1200px;
margin: 0 auto;
}
.flexBox {
display: flex;
flex-wrap: wrap;
}
/*-------------------------------------#concept--*/
.conceptSec .flexBox {
justify-content: space-between;
align-items: center;
}

.conceptSec .flexBox .Img {
width: 50%;
}
.conceptSec .flexBox .infoBox {
width: 45%;
}
.conceptSec .flexBox .infoBox h2.en {
font-size: 18px;
font-size: 1.8rem;
font-weight: 500;
position: relative;
margin-bottom: 30px;
}
.conceptSec .flexBox .infoBox h2.en:after {
content: "";
height: 2px;
width: 8px;
background: #292e37;
position: absolute;
left: 0;
bottom: -5px;
}
.conceptSec .flexBox .infoBox h3 {
font-size: 28px;
font-size: 2.8rem;
font-weight: bold;
margin-bottom: 35px;
line-height: 1.7;
}
.conceptSec .flexBox .infoBox h3 small {
font-size: 21px;
font-size: 2.1rem;
display: block;
}
/*-------------------------------------#feature--*/
.featureSec {
}
.featureSec .secInr:before {
content: "";
background: #e9e9dd;
width: 200%;
height: 100%;
position: absolute;
left: 0;
top: -40px;
z-index: -1;
}
.featureSec .secInr {
display: flex;
justify-content: flex-end;
align-items: flex-start;
position: relative;
padding: 80px 0 100px;
}
.featureSec h2 {
 writing-mode: vertical-rl;
text-orientation: sideways;
 color: #c2c2af;
 margin-right: 90px;
}
.featureSec h2 strong {
font-size: 62px;
font-size: 6.2rem;
letter-spacing: 0.01em;
font-weight: 500;
}
.featureSec h2 small {
font-size: 14px;
font-size: 1.4rem;
font-weight: 300;
display: block;
letter-spacing: 0.1em;
}
.featureSec .flexBox {
justify-content: space-between;
width: 75%;
}
.featureSec .flexBox li {
width: 23%;
background: #c2c2af;
text-align: center;
position: relative;
padding-bottom: 40px;
}
.featureSec .flexBox li dl dt {
font-weight: 700;
color: #fffef3;
font-size: 21px;
font-size: 2.1rem;
position: absolute;
  left: 50%;
  transform:translateX(-50%);
  -webkit- transform:translateX(-50%);
  top: -20px;
}
.featureSec .flexBox li dl dt strong {
font-size: 41px;
font-size: 4.1rem;
display: block;
}
.featureSec .flexBox li dl dd {
font-size: 22px;
font-size: 2.2rem;
font-weight: bold;
line-height: 1.3;
}
.featureSec .flexBox li dl dd.sub {
font-size: 14px;
font-weight: 100;
padding-top: 80px;
}
/*-------------------------------------#approach--*/
.approachSec{
padding-bottom: 80px;
}
.approachSec h2 {
font-size: 82px;
font-size: 8.2rem;
color: #e9e9dd;
margin-bottom: 30px;
font-weight: 400;
}
.approachSec h2 span {
width: 180px;
display: block;
}
.approachSec h3{
font-size: 24px;
font-size: 2.4rem;
font-weight: bold;
margin-bottom: 30px;
}
.approachSec .flexBox {
padding-top: 80px;
justify-content: space-between;
}
.approachSec .flexBox li {
position: relative;
width: 48%;
padding-left: 30px;
position: relative;
margin-bottom: 60px;
}
.approachSec .flexBox li .en{
color: #c2c2af;
font-size: 21px;
font-size: 2.1rem;
font-weight: 400;
 writing-mode: vertical-rl;
 position: absolute;
 left: 7px;
 top: 0;
 line-height: 0!important;
}
.approachSec .flexBox li .en strong{
font-weight: 700;
margin-bottom: 5px;
}
.approachSec .flexBox li .Img{
position: relative;
margin-bottom: 20px;
}
.approachSec .flexBox li .Img span {
display: inline-block;
font-size: 16px;
font-size: 1.6rem;
font-weight: bold;
color: #927e69;
background: #fffef3;
position: absolute;
left: 0;
bottom: 0;
padding: 20px 40px 0 0;
}
.approachSec .flexBox li dl dt {
font-size: 21px;
font-size: 2.1rem;
font-weight: bold;
margin-bottom: 30px;
}
.approachSec .flexBox li dl dd {
line-height: 1.9;
letter-spacing: -0.02em;
}

/*-------------------------------------#facility--*/
.facilitySec{
  position: relative;
  margin-bottom: 70px;
  padding: 130px 0 110px;
}

.facilitySec:after {
    content: "";
    background: #e9e9dd;
    width: 96%;
    left: 2%;
    height: 100%;
    z-index: 0;
    position: absolute;
    top: 0;
}

.facilitySec h2 {
    font-size: 82px;
    font-size: 8.2rem;
    color: #c2c2af;
    margin-bottom: 30px;
    font-weight: 400;
}

.facilitySec h3 {
    font-size: 24px;
    font-size: 2.4rem;
    font-weight: bold;
    line-height: 1.7;
    margin-bottom: 60px;
}

.facilitySec .secInr{
  position: relative;
  z-index: 1;
}

.fac-list li{
  margin-bottom: 60px;
}

.fac-list li:last-child{
  margin-bottom: 0;
}

.flex-fac {
    justify-content: space-between;
    flex-wrap: inherit;
}

.fac-img-wrap{
  position: relative;
}

.fac-img-wrap .en{
    color: #c2c2af;
    font-size: 21px;
    font-size: 2.1rem;
    font-weight: 400;
    writing-mode: vertical-rl;
    position: absolute;
    left: 7px;
    top: 0;
    line-height: 0!important;
}

.fac-img-wrap .fac-img {
    position: relative;
    max-width: 500px;
    width: 100%;
    margin-left: 30px;
}

.fac-detail{
  width: calc(93% - 507px);
}

.fac-detail .text16{
  color: #927e69;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 600;
  margin-bottom: 10px;
}

.fac-detail .text24 {
    font-size: 24px;
    font-size: 2.4rem;
    font-weight: 600;
    line-height: 1 !important;
    margin-bottom: 30px;
}

.fac-detail .text15 {
  font-size: 15px;
  font-size: 1.5rem;
}

.fac-list li:nth-of-type(2) .fac-detail,
.fac-list li:nth-of-type(4) .fac-detail{
  order: 1;
}

.fac-list li:nth-of-type(2) .fac-img-wrap,
.fac-list li:nth-of-type(4) .fac-img-wrap{
  order: 2;
}


/*-------------------------------------#menu--*/
.menuSec {
background: #e9e9dd;
width: 100%;
max-width: 1300px;
margin: 0 auto;
padding: 80px 0;
}
.menuSec h2 {
color: #c2c2af;
font-size: 42px;
font-size: 4.2rem;
text-align: center;
margin-bottom: 80px;
font-weight: 400;
}

.menuSec h3.en {
font-size: 21px;
font-size: 2.1rem;
font-weight: 500;
position: relative;
margin-bottom: 30px;
}
@media only screen and (min-width: 900px) {
.menuSec h3.en:after {
content: "";
height: 2px;
width: 8px;
background: #292e37;
position: absolute;
left: 0;
bottom: -5px;
}
}
.menuSec .flexBox {
justify-content: space-between;
}
.menuL,
.menuR {
width: 48%;
}
.menuItem{
margin-bottom: 80px;
position: relative;
}
.menuItem .note {
color: #93969a;
font-size: 12px;
font-size: 1.2rem;
}
.menuItem ul{
border-bottom: 1px solid #292e37;
margin-top: 80px;
}
.menuItem ul li {
padding: 30px 0;
border-top: 1px solid #292e37;
}
.menuItem ul li dl {
display: flex;
justify-content: space-between;
}
.menuItem ul li dl dt {
width: 80%;
font-size: 15px;
font-size: 1.5rem;
line-height: 1.5;
}
.menuItem ul li dl dd {
width: 20%;
font-weight: 500;
font-size: 16px;
font-weight: 1.6rem;
text-align: right;
}
.menuItem > .note {
position: absolute;
left: 0;
top: 50px;
}
.menuItem ul li .note {
text-align: right;
position: inherit;
left: inherit;
top:inherit;
}
/*-------------------------------------#salon--*/
.salonSec{
padding-top: 80px;
}
.salonSec h2{
color: #e9e9dd;
font-size: 82px;
font-size: 8.2rem;
font-weight: 400;
margin-bottom: 30px;
}

.salonSec .flexBox {
justify-content: space-between;
align-items: center;
}
.salonSec .flexBox.branch{
  margin-top: 60px;
}
.salonSec .flexBox .infoBox {
width: 48%;
}
.salonSec .flexBox .info {
font-weight: bold;
margin-bottom: 20px;
}
.salonSec .flexBox .logo{
  display: flex;
  align-items: flex-end;
}
.salonSec .flexBox .logo img{
  margin-right: 20px;
  max-width: 370px;
}
.salonSec .flexBox .logo.-b img{
  max-width: 170px;
}
.salonSec .flexBox dl {
display: flex;
justify-content: space-between;
margin-top: 30px;
}
.salonSec .flexBox dt {
width: 15%;
line-height: 1.7;
}
.salonSec .flexBox dd {
width: 80%;
font-size: 15px;
line-height: 1.7;
font-size: 1.5rem;
}
.salonSec .flexBox .Img {
width: 48%;
}
.salonSec .flexBox .Img img {
width: 150%;
}

.salonSec .flexBox.branch .infoBox{
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.salonSec .flexBox .branchImg{
  width: 100%;
}

.salonSec .flexBox .branchImg img{
  width: 100%;
}

@media only screen and (min-width: 900px) {
.salonSec .flexBox.branch .infoBox{
  display: flex;
  flex-direction: column-reverse;
}  
}

/*-------------------------------------#recruit--*/

#recruit {
    padding: 0 0 100px;
}

#recruit a{
  margin: 0 auto;
  max-width: 350px;
  width: 100%;
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
}

#recruit a:hover{
  opacity: 0.8;
}

#recruit img{
    margin: 0 auto;
}

.actionList {
display: flex;
justify-content: space-between;
position: fixed;
left: 0;
bottom: 0;
width: 100%;
opacity: 0;
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
  z-index: 2;
}
.actionList.active {
opacity: 1;
}
.actionList li {
width: 33.33%;
}
.actionList li.en.tel a {
background: #c2c2af;
display: block;
text-align: center;
padding: 30px 0;
font-size: 26px;
font-size: 2.6rem;
color: #f5f3ec;
}
.actionList li.en.line a {
background: #b5b5a1;
display: block;
text-align: center;
padding: 30px 0;
font-size: 26px;
font-size: 2.6rem;
color: #f5f3ec;
}
.actionList li.en.contact a {
background: #b3b39c;
display: block;
text-align: center;
padding: 30px 0;
font-size: 26px;
font-size: 2.6rem;
color: #f5f3ec;
}
.actionList li.en.recruit a {
background: #9a9a85;
display: block;
text-align: center;
padding: 30px 0;
font-size: 26px;
font-size: 2.6rem;
color: #f5f3ec;
}
.actionList li.en.tel a:hover {
text-decoration: none;
background: #b4b4aa;
}
.actionList li.en.line a:hover {
text-decoration: none;
background: #a6a699;
}
.actionList li.en.contact a:hover {
text-decoration: none;
background: #8b8b78;
}
.actionList li.en.recruit a:hover {
text-decoration: none;
background: #8b8b78;
}
.actionList li.en.contact a .jp {
font-size: 2.4rem;
}
#footer {
padding: 80px 0;
}
#copyright {
width: 90%;
max-width: 1300px;
margin: 0 auto;
border-top: 1px solid #cfcfcf;
padding: 80px 0;
display: block;
text-align: center;
}

/*-------------------------------------#pc adjust--*/
@media only screen and (max-width: 1365px) {
.sideInfo {
    width: 33%;
}
#mv h1 {
    width: 58%;
}
}
@media only screen and (max-width: 1260px) {
#mv .medalInr {
    width: 200px;
    height: 200px;
}
.sideInfo {
    width: 38%;
}
}
@media only screen and (max-width: 1080px) {
body {
    font-size: 1.4rem;
}
.featureSec h2 {
    margin-right: 20px;
}
.featureSec .flexBox {
    width: 85%;
}
.featureSec .flexBox li dl dd {
    font-size: 18px;
    font-size: 1.8rem;
}
.featureSec h2 strong {
    font-size: 52px;
    font-size: 5.2rem;
}
.salonSec .flexBox .Img img {
    width: 100%;
}
.salonSec .flexBox dl {
    margin-top: 20px;
}
}
/*-------------------------------------#for sp--*/
@media only screen and (max-width: 900px) {
#header .hdInr {
  padding: 18.5px 0;
}
#header .hdInr .logo {
    width: 150px;
    margin-left: 0;
}
#header .hdInr .recruit-btn {
    font-size: 1.4rem;
    margin-top: -2px;
    padding: 5px 13px 3px;
}
.recruit-btn-list {
  display: none;
}
#header .hdInr .recruit-btn-list li {
  margin-left: 8px;
}
#header .hdInr .menu-btn {
  width: 70px;
  height: 70px;
}
#header .hdInr .menu-btn span {
  left: 23px;
  width: 24px;
}
#header .hdInr .menu-btn span:first-child {
  top: 23px;
}
#header .hdInr .menu-btn span:last-child {
  bottom: 23px;
}
#header .hdInr .menu-btn.menu-close span:first-child,
#header .hdInr .menu-btn.menu-close span:last-child {
  width: 34px;
}
#header .hdInr .menu-list .menu-list-link {
  font-size: 20px;
}
#header .hdInr .menu-list {
  padding-top: 50px;
}
#header .hdInr .menu-list .menu-list-link li {
  margin-top: 20px;
  margin-bottom: 20px;
}
#header .hdInr .menu-list .menu-list-link li a {
  font-size: 20px;
  margin-bottom: 10px;
}
#header .hdInr .menu-list .menu-list-link li a:only-child {
  margin-bottom: 0;
}
#header .hdInr .menu-list .menu-list-link li p.net-booking {
  font-size: 20px;
  margin-bottom: 0;
}
#header .hdInr .menu-list .menu-list-link li .each-branch li a {
    font-size: 14px;
}    
#header .hdInr .menu-list .menu-list-link li p {
  margin-top: 10px;
  font-size: 14px;
  margin: 10px 5% 0;
}
#header .hdInr .menu-list .menu-list-btn {
  display: flex;
  margin-top: 40px;
  justify-content: center;
}
#header .hdInr .menu-list .menu-list-btn li {
  margin-left: 8px;
  margin-right: 8px;
}
#header .hdInr .menu-list .menu-list-btn li .recruit-btn {
  font-size: 18px;
  padding: 8px 20px 6px;
}
#header .hdInr .menu-list .menu-list-btn .en {
  font-size: 20px;
}
.sideInfo {
    box-shadow: none;
    width: 100%;
    max-width: 100%;
    position: inherit;
    right: 0;
    bottom: inherit;
    border-radius: 0;
    text-align: center;
}

.sideInfo dl dd.mapLink a {
    display: block;
    padding: 21px 0;
    width: 90%;
    margin: 0 auto;
}

.mv-news {
    left: 0;
    bottom: 5px;
    position: inherit;
    opacity: 0;
}

.news-wrap {
    border-radius: 0;
    box-shadow: none;
    display: block;
    max-width: 100%;
    padding: 5%;
    width: 100%;
}

.news-wrap:hover {
    background: #e9e9dd;
}

.news-wrap .text18.en {
    font-size: 1.5rem;
    margin-right: 0;
    margin-bottom: 5px;
}

.news-wrap:hover .text18.en,
.news-wrap:hover .text15{
  color: #fff;
}

.news-wrap .text15 {
    font-size: 1.3rem;
}

.news-wrap .text15 span {
  line-height: 1.75;
  text-decoration: underline;
  text-underline-offset: 5px;
}

.news-wrap .text15 span:after {
  display: none;
}

.news-wrap:hover .text15 span:after{
  background: #fff;
}


#mv .mvInr {
    width: 100%;
}

.mainImg img {
/* object-fit: cover;
height: 330px; */
width: 100%;
}
#mv .medalInr {
    width: 130px;
    height: 130px;
}
#mv .ticket {
display: none;
}
.spticket {
width: 90%;
margin: 0 auto;
}
#mv .medalTxt span.date {
    font-size: 15px;
    font-size: 1.5rem;
}
#mv .medalTxt span.date small {
    font-size: 15px;
    font-size: 1.5rem;
}
#mv .medalTxt span.access {
    font-size: 11px;
    font-size: 1.1rem;
    padding: 6px 0 12px;
}
#mv .medalTxt span.open {
    width: 60%;
}
#mv .mvMedal {
    top: -15px;
    right: 15px;
}
#mv h1 span {
    margin-bottom: 5px;
}
#mv h1 {
    width: 90%;
    margin: 0 auto 0px;
}
#mv .catch {
    font-size: 15px;
    font-size: 1.5rem;
}
#mv .catch span {
    margin-top: 5px;
}
#mv .mvInfo {
    top: 53%;
}
.scrolldown {
    bottom: 185px;
}
.conceptSec .flexBox .Img {
    width: 100%;
    margin-bottom: 30px;
}
.conceptSec .flexBox .infoBox {
    width: 100%;
}

.conceptSec .flexBox .Img img{
object-fit: cover;
height: 240px;
}
.conceptSec .flexBox .infoBox h3 small {
    font-size: 18px;
    font-size: 1.8rem;
}
.conceptSec .flexBox .infoBox h3 {
    font-size: 21px;
    font-size: 2.1rem;
}
.conceptSec {
margin-bottom: 60px;
}
.featureSec {
    background: #e9e9dd;
}
.featureSec .secInr::before {
display: none;
}
.featureSec .secInr {
    padding: 80px 0 30px;
}
.featureSec .flexBox li {
    width: 49%;
    margin-bottom: 30px;
    padding-bottom: 23px;
}

.featureSec h2 {
    margin-right: 0;
    position: absolute;
    left: -3px;
    top: -15px;
    writing-mode: inherit;
}
.featureSec h2 strong {
    font-size: 42px;
    font-size: 4.2rem;
}
.featureSec .flexBox {
    width: 100%;
}

.featureSec .flexBox li dl dt {
    font-size: 13px;
    font-size: 1.3rem;
}
.featureSec .flexBox li dl dd.sub {
    font-size: 11px;
    font-size: 1.1rem;
    padding-top: 50px;
}
.approachSec h2 {
    font-size: 42px;
    font-size: 4.2rem;
}
.approachSec {
padding: 40px 0;
}

.approachSec h3 {
    font-size: 21px;
    font-size: 2.1rem;
}
.spScroll{
overflow-x: scroll;
overflow-y: hidden;
}
.approachSec .flexBox {
width: 1100px;
padding-top: 30px;
}

.approachSec .flexBox li {
    width: 24%;
    padding-left: 19px;
    margin-bottom: 20px;
}
.approachSec .flexBox li .Img span {
    font-size: 12px;
    font-size: 1.2rem;
    padding:0;
    position: inherit;
}
.approachSec .flexBox li dl dt {
    font-size: 15px;
    font-size: 1.5rem;
    margin-bottom: 10px;
}
.approachSec .flexBox li dl dd {
    font-size: 13px;
    font-size: 1.3rem;
}
.approachSec .flexBox li .Img {
    margin-bottom: 0;
}
.approachSec .flexBox li .en {
    font-size: 15px;
    font-size: 1.5rem;
}

.facilitySec{
    padding: 60px 0 70px;
    margin-bottom: 20px;
}

.facilitySec h2{
    font-size: 4.2rem;
}

.facilitySec h3 {
    font-size: 2.1rem;
    margin-bottom: 30px;
}

.flex-fac {
    display: block;
}

.fac-img-wrap .en {
    font-size: 1.5rem;
}

.fac-img-wrap .fac-img {
    position: relative;
    max-width: 100%;
    width: calc(100% - 22px);
    margin-left: 22px;
    margin-bottom: 20px;
}

.fac-detail {
    width: calc(100% - 22px);
    margin-left: 22px;
}

.fac-detail .text16 {
    font-size: 1.2rem;
    margin-bottom: 0;
}

.fac-detail .text24 {
    font-size: 1.6rem;
    margin-bottom: 10px;
}

.fac-detail .text15 {
    font-size: 1.4rem;
}

.menuSec {
    padding: 40px 0;
}
.menuSec .flexBox {
display: none;
}
.menuItem ul li dl dt {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 1.5;
}

.menuItem > .note {
    position: inherit;
    left: inherit;
    top: inherit;
}
.menuItem ul {
    margin-top: 30px;
}

.salonSec .flexBox .infoBox {
    width: 100%;
    margin-bottom: 30px;
}
.salonSec .flexBox.branch{
  margin-top: 30px;
}
.salonSec .flexBox.branch .infoBox {
    padding-top: 30px;
    border-top: 1px solid rgb(233, 233, 221);
}
.salonSec h2 {
    font-size: 42px;
    font-size: 4.2rem;
}
.salonSec .flexBox .Img {
    width: 100%;
}
.salonSec .flexBox .logo img{
    max-width: 70%;
}

.salonSec {
    padding-top: 40px;
}

#recruit {
    padding: 0 0 100px;
}
.actionList li.en.tel a,
.actionList li.en.line a,
.actionList li.en.contact a,
.actionList li.en.recruit a{
    padding: 20px 0;
    font-size: 16px;
    font-size: 1.6rem;
}
.actionList li.en.contact a .jp {
  font-size: 1.5rem;
}
#copyright {
    padding: 40px 0;
    border-top: none;
}
#contents {
    padding-top: 40px;
}
#topcontrol{
display: none;
}
#footer {
    padding: 0 0 60px;
}
.sideInfo dl dt {
    font-size: 15px;
    font-size: 1.5rem;
}
.sideInfo dl dt img {
    width: 13px;
}
.menuSec h2 {
    font-size: 32px;
    font-size: 3.2rem;
    margin-bottom: 40px;
}
.accordionBox {
    display: none;/*はじめは非表示*/
}
.accordionTitle {
position: relative;
font-size: 16px!important;
font-size: 1.6rem!important;
padding: 15px 10px;
border-radius: 5px;
background: #fffef3;
margin-bottom: 20px!important;
}
.accordionTitle::before,
.accordionTitle::after{
    position: absolute;
    content:'';
    width: 15px;
    height: 2px;
    background-color: #333;
    
}
.accordionTitle::before{
    top:48%;
    right: 15px;
    transform: rotate(0deg);
    
}
.accordionTitle::after{    
    top:48%;
    right: 15px;
    transform: rotate(90deg);

}
/*　closeというクラスがついたら形状変化　*/
.accordionTitle.close::before{
  transform: rotate(45deg);
}

.accordionTitle.close::after{
  transform: rotate(-45deg);
}
.menuItem {
    margin-bottom: 10px;
}
}

@media only screen and (max-width: 450px){
#header .hdInr .menu-list .menu-list-link li:last-child p{
  text-align: left;
}
.scrolldown {
    bottom: 230px;
    left: 90%;
}
}