/*
Theme Name: spend
*/

@import url('https://fonts.googleapis.com/css2?family=Bodoni+Moda:ital,opsz,wght@0,6..96,400..900;1,6..96,400..900&family=Libre+Bodoni:wght@400..700&family=Zen+Kaku+Gothic+New:wght@400;700&display=swap');
@import url("https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@24,100,0,0");
@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap');

/* ------------------------------------------------------------
 * Loader
 * ------------------------------------------------------------ */

.loader{
	position:fixed;
	top:0;
	left:0;
	width:100vw;
	height:100vh;
	overflow:hidden;
	z-index:999;
	transition:all 0.4s ease 0.75s;
	opacity:1;
}

.loader.loaded{
	pointer-events:none;
	opacity:0;
	transform:scale(1.1);
}

.loader .inner{
	width:100%;
	height:100%;
	display:flex;
	align-items:center;
	justify-content:center;
	background-color:rgba(0, 0, 0,1);
	transition:all 0.3s ease;
}

.loader__image{
	width:270px;
	animation: loaderIn 0.3s forwards ease-in-out 1 0.1s;
	opacity:0;
	transform:scale(1.1);

}

@keyframes loaderIn {
	0% {
		opacity:0;
		transform:scale(1.1);
	}
	100% {
		opacity:1;
		transform:scale(1);
	}
}

.loader.loaded .inner{


}


/* ------------------------------------------------------------
 * Base
 * ------------------------------------------------------------ */

html{
	font-size:14px;
	background-color:#f5f5f5;
}

body{
/*	font-family: "Zen Kaku Gothic New", sans-serif;*/
	line-height:1.6;
}

body.is-active {
  height: 100%;
  overflow: hidden;
}

p{
	margin:0;
	padding:0;
}

img{
	max-width:100%;
}

*:focus,
*:active {
  outline: none !important;
  box-shadow: none !important;
}

/* ------------------------------------------------------------
 * Header
 * ------------------------------------------------------------ */

header{
	position:fixed;
	width:100%;
	top:0;
	left:0;
	z-index:1;
}

.header__container{
	padding: 1.0rem 1.0rem;
	display:flex;
	justify-content:space-between;
	align-items:center;
}

.header__logo{
	position:relative;
	z-index:9999;
}

.header__logo img{
	width:150px;
	height:auto;
	transition:all 0.35s ease;
	transform-origin:0% 50%;
	display:block;
}

body.is-active .header__logo img{
	filter: invert(100%);
}

body.scrolled .header__logo img{
	width:125px;
}

main{
position:relative;
z-index:0;
padding:0rem 0 0 0;
width:465px;
max-width:100vw;
margin-right:auto;
margin-left:auto;
margin-top:0;
background-color:#fff;
/*box-shadow:0px 0px 25px rgba(255,255,255,0.6);*/
overflow-x:clip;
}

main section .container{
	padding-right:1rem;
	padding-left:1rem;
}

/* ------------------------------------------------------------
 * Footer
 * ------------------------------------------------------------ */

.footer__copy{
	text-align:center;
	padding:0.75rem 0;
	font-family: "Bodoni Moda", serif;
	letter-spacing:0.05em;
	color:#333!important;
}

/* ------------------------------------------------------------
 * Inview
 * ------------------------------------------------------------ */

.inview{
	transition:all 0.6s ease-in-out;
	display:block;
}

.inview.delay50{
	transition-delay:0.05s
}

.inview.delay100{
	transition-delay:0.1s
}

.inview.delay150{
	transition-delay:0.15s
}

.inview.delay200{
	transition-delay:0.2s
}

.inview.delay250{
	transition-delay:0.25s
}

.inview.delay300{
	transition-delay:0.3s
}

.inview.delay350{
	transition-delay:0.35s
}

.inview.delay400{
	transition-delay:0.4s
}

.inview.delay450{
	transition-delay:0.45s
}
.inview.delay500{
	transition-delay:0.5s
}



.inview.fadeUp{
	transform:translate(0, 1.5rem);
	opacity:0;
}

.inview.fadeUp.is-show{
	transform:translate(0, 0rem);
	opacity:1;
}

.inview.rotate{
	transform-origin:0% 0%;
	transform:rotate(90deg);
	opacity:0;
}

.inview.rotate.is-show{
	transform:rotate(0);
	opacity:1;
}

.inview.flip{
	transform-origin:50% 50%;
	transform:scalex(0);
	opacity:0;
}

.inview.flip.is-show{
	transform:scalex(1);
	opacity:1;
}

.inview.fadeLeft{
	transform:translate(1.5rem, 0rem);
	opacity:0;
}

.inview.fadeLeft.is-show{
	transform:translate(0, 0rem);
	opacity:1;
}

.inview.blur{
	filter:blur(30px);
	opacity:0;
}

.inview.blur.is-show{
	filter:blur(0);
	opacity:1;
}

.inview.zoomOut{
	transform:scale(1.25);
	opacity:0;
}

.inview.zoomOut.is-show{
	transform:scale(1);
	opacity:1;
}


/* ------------------------------------------------------------
 * Navigation
 * ------------------------------------------------------------ */

.builder-header-html-item.item--html{
	display:flex;
	align-items:center;
}

#hamburger{
	height:42px;
	width:42px;
	cursor:pointer;
	position:relative;
	z-index:9999999;
	transition:all 0.3s ease;
	opacity:1;
	background-color:#fff;
	border-radius:0vh;
}



#hamburger span{
	position:absolute;
	display:inline-block;
	width:20px;
	height:1px;
	background-color:rgba(0, 0, 0,1)!important;
	top:0;
	left:11px;
}
#hamburger:not(.is-active) span{
	transition:left 0.3s ease 0.8s, opacity 0.3s ease 0.8s, top 0.3s ease 0.6s, transform 0.3s ease, background-color 0.3s ease 0.4s;
}
#hamburger.is-active span{
	transition:left 0.3s ease, opacity 0.3s ease, top 0.3s ease 0.15s, transform 0.3s ease 0.6s, background-color 0.3s ease 0.4s;
}

#hamburger span:nth-child(1){
	top:33%;
}

#hamburger span:nth-child(2){
	top:50%;

}

#hamburger span:nth-child(3){
	top:67%;
}

#hamburger.is-active span:nth-child(1){
	top:50%;
	transform:rotate(45deg);
}

#hamburger.is-active span:nth-child(2){
	opacity:0;
	left:calc(100% - 1rem);
}

#hamburger.is-active span:nth-child(3){
	top:50%;
	transform:rotate(-45deg);
}


nav#drawer{
	position:fixed;
	opacity:0;
	pointer-events:none;
	top:0;
	left:0;
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	z-index:999;
	width:100vw;
	height:100vh;
	background-color:rgba(0, 0, 0, 0.8);
	color:rgba(239, 25, 99,1);
	transform:scale(1.05);
	transition: all 0.25s ease 0.1s;
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
}

nav#drawer.is-active{
	transform:scale(1);
	opacity:1;
	pointer-events:auto;
	transition: all 0.4s ease 0.4s;
}

nav#drawer a{
	color:rgba(255,255,255,1);
	text-decoration:none;
	font-family: "Inter", sans-serif;
	font-weight:600;
	font-size:1.5rem;
	letter-spacing:0.045em;
	text-transform:auto;
	transition:all 0.3s ease;
}

nav#drawer a:hover{
	opacity:0.6;
}

nav#drawer ul {
	list-style:none;
	margin:0 0 1.75rem;
	padding:0;
}

nav#drawer ul li{
	padding:0.5rem 0;
	display:block;
	text-align:center;
}

nav#drawer ul li a{
	letter-spacing:0.05em;
}

ul#menu-global li{
	margin:0 0 0.25rem;
}

ul#menu-global li a{
	position:relative;
	line-height:1.3;
}

ul#menu-global li.external{
	position:relative;
}

ul#menu-global li.external:after{
  position: absolute;
  content: '';
  top: 0.25rem;
  right: -1.5rem;
	font-size:1.25rem;
  transition: all .3s ease-in-out;
    content: "\e89e";
    font-family: 'Material Symbols Outlined';
	transform:translatey(0%);
color:#fff;
}

ul#menu-global li a:after{
	content:""attr(title)"";
	display:block;
	font-size:0.7rem;
	font-weight:normal;
	font-family:sans-serif;
}

ul.drawer__nav-sns {
	display:flex;
	justify-content:center;
}

ul.drawer__nav-sns li{
	margin:0 0.5rem;
	transition:all 0.3s ease;
	opacity:1;
}

ul.drawer__nav-sns li:hover{
	opacity:0.5;
}
ul.drawer__nav-sns li img {
	width:24px;
	height:24px;
	display:inline-block;
}



/* ------------------------------------------------------------
 * Home common
 * ------------------------------------------------------------ */

section.recruit,
section.home{
	padding:1.5rem 0 4.5rem;
}

section.recruit h2,
section.home h2{
	text-align:center;
	margin:0 0 1.75rem;

}
section.recruit h2 .en,
section.home h2 .en{
font-family: "Inter", sans-serif;
	font-weight:600;
	font-size:2.5rem;
	letter-spacing:0.035em;
	line-height:1.4;
	display:block;
	margin:0 0 0.25rem;
}

section.recruit h2 .jp,
section.home h2 .jp{
	display:block;
	font-size:0.7rem;
	font-family:sans-serif;
	font-weight:normal;
	letter-spacing:0.05em;
}

section.recruit h2 .en,
section.home h2 .en{
animation: AnimationTitle 10s ease-in-out infinite;
/*  background: linear-gradient(106deg, #ef1963 0%, #ef1963 40%, #833ab4 40%, #fd1d1d 50%,  #fcb045 60%, #ef1963 60%, #ef1963 100%);*/
/*  background: linear-gradient(106deg, #ef1963 0%, #ef1963 40%, #8cfff0 45%, #fde993 50%,  #50e2df 55%, #ef1963 60%, #ef1963 100%);*/
background: linear-gradient(106deg, #222 0%, #222 40%, #8cfff0 45%, #fde993 50%,  #50e2df 55%, #222 60%, #222 100%);
  background-size: 250% 150%;
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
  line-height: 1.4;
}
/*
@keyframes AnimationTitle {
0% {background-position: 100% 50%;}
12% {background-position: 0% 50%;}
12% {background-position: 0% 50%;}
28% {background-position: 100% 50%;}
100% {background-position: 100% 50%;}
}
*/

/* ------------------------------------------------------------
 * Home Hero
 * ------------------------------------------------------------ */

section.home#hero{
	height:100vh;
	padding:0;
	margin:0 0 3.5rem;
	overflow:clip;
	position:relative;
}


section.home#hero .swiper.hero{
	height:100%;
	width:auto;
	position:relative;
	bottom:0;
}

section.home#hero .swiper.hero .hero__image{
	width:100%;
	height:100%;
}

section.home#hero .swiper.hero img{
	object-fit:cover;
	height:100%;
	width:auto;	
}

@keyframes zoomUp {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.2);
  }
}
.swiper.hero .swiper-slide-active .hero__image,
.swiper.hero .swiper-slide-duplicate-active .hero__image,
.swiper.hero .swiper-slide-prev .hero__image {
  animation: zoomUp 11s linear 0s normal both;
}
.swiper.hero .swiper-slide img {
  height: auto;
  width: 100%;
}

.bokeh {
  position: absolute;
width:100%;
	height:100vh;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
  z-index: 1;
}

/* 粒子の基本スタイル */
.bokeh span {
  position: absolute;
  border-radius: 50%;
  filter: blur(20px) brightness(1);mix-blend-mode:hard-light;
  animation: float infinite ease-in-out alternate;
will-change:  filter;
 background-clip: padding-box;
}

/* アニメーション（ふわふわランダム移動） */
@keyframes float {
  0%   { transform: translate(0, 0) scale(1); }
  100% { transform: translate(var(--tx), var(--ty)) scale(1.2); }
}


.hero__copy{
	position:absolute;
	left:50%;
	bottom:35vh;
	width:240px;
	height:auto;
	z-index:9999;
}

.hero__copy{
	transform:scale(1.65) translate(-20%, 1rem) rotate(-7deg);
	transform-origin:0% 50%;
	visibility:hidden;
}

.hero__copy.loaded{
	visibility:visible;
	transform:scale(1) translate(-50%, 0) rotate(-7deg);
	transition:transform 4.5s ease-in-out 0.5s, visibility 0s ease 0.5s;
}

a.scroll-down{
  display: inline-block;
  position: absolute;
  right: 1rem;
  bottom: 0;
transform:translate(0, 0);

  z-index: 2;
  padding: 10px 10px 150px;
  overflow: hidden;
	color:#fff;
  font-size: 14px;
  font-family: 'Inter', sans-serif;
  line-height: 1;
  letter-spacing: .2em;
  text-transform: uppercase;
  text-decoration: none;
  writing-mode: vertical-lr;
}

a.scroll-down.loaded{
	transition:all 0.6s ease 7s;
transform:translate(0, 0);

}

a.scroll-down:hover{
}

a.scroll-down::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 1px;
  height: 140px;
  background: #fff;
  animation: sdl 1.5s cubic-bezier(1, 0, 0, 1) infinite;
}
@keyframes sdl {
  0% {
    transform: scale(1, 0);
    transform-origin: 0 0;
  }
  50% {
    transform: scale(1, 1);
    transform-origin: 0 0;
  }
  50.1% {
    transform: scale(1, 1);
    transform-origin: 0 100%;
  }
  100% {
    transform: scale(1, 0);
    transform-origin: 0 100%;
  }
}

/* ------------------------------------------------------------
 * Home Concept
 * ------------------------------------------------------------ */


section.home#concept{
	min-height:100vh;
	height:100%;
	display:flex;
	flex-direction:column;
	position:relative;
}

section.home#concept .container{
margin:auto 0;
		display:flex;
	flex-direction:column;
	justify-content:center;
	align-items:center;
	height:100%;
	padding:0 0 3rem;

}

section.home#concept .container div {
	margin:0.75rem 0;
}

.concept__image{
	position:absolute;
	z-index:-1;
}

#concept__image-01{
	width:34%;
	top:10vh;
	right:0;
}

#concept__image-02{
	width:30%;
	top:20vh;
	right:19%;
}


#concept__image-03{
	width:40%;
	bottom:12vh;
	left:8%;
}


/* ------------------------------------------------------------
 * Home Design
 * ------------------------------------------------------------ */

section.home#design{
	min-height:100vh;
}

.design__images{
	display:flex;
	flex-wrap:wrap;
	gap:1rem;
}

.design__images .design__image{
	width:calc(25% - 0.75rem);
	
}

.design__images .design__image img{
	object-fit:cover;
	aspect-ratio:1 / 1;
	border-radius:0.25rem;
}

.dimbox-figure img{
	border-radius:0.25rem;
}

.dimbox-container{
backdrop-filter: blur(12px)!important;
-webkit-backdrop-filter: blur(12px)!important;
}	

.dimbox-container::before{
background-color:rgba(0, 0, 0,0.99)!important;
		backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
}

.design__images .design__image a.inview:nth-child(1){
transition-delay:0.25s;
}
.design__images .design__image a.inview:nth-child(2){
transition-delay:0.5s;
}
.design__images .design__image a.inview:nth-child(3){
transition-delay:0.75s;
}
.design__images .design__image a.inview:nth-child(4){
transition-delay:1.0s;
}
.design__images .design__image a.inview:nth-child(5){
transition-delay:1.25s;
}
.design__images .design__image a.inview:nth-child(6){
transition-delay:2.5s;
}
.design__images .design__image a.inview:nth-child(7){
transition-delay:2.75s;
}
.design__images .design__image a.inview:nth-child(8){
transition-delay:3s;
}
.design__images .design__image a.inview:nth-child(9){
transition-delay:3.25s;
}
.design__images .design__image a.inview:nth-child(10){
transition-delay:3.5s;
}
.design__images .design__image a.inview:nth-child(11){
transition-delay:3.75s;
}
.design__images .design__image a.inview:nth-child(12){
transition-delay:4s;
}
.design__images .design__image a.inview:nth-child(13){
transition-delay:4.25s;
}
.design__images .design__image a.inview:nth-child(14){
transition-delay:4.5s;
}
.design__images .design__image a.inview:nth-child(15){
transition-delay:4.75s;
}
.design__images .design__image a.inview:nth-child(16){
transition-delay:5s;
}
.design__images .design__image a.inview:nth-child(17){
transition-delay:5.25s;
}
.design__images .design__image a.inview:nth-child(18){
transition-delay:5.5s;
}
.design__images .design__image a.inview:nth-child(19){
transition-delay:5.75s;
}
.design__images .design__image a.inview:nth-child(20){
transition-delay:6s;
}
.design__images .design__image a.inview:nth-child(21){
transition-delay:6.25s;
}
.design__images .design__image a.inview:nth-child(22){
transition-delay:6.5s;
}
.design__images .design__image a.inview:nth-child(23){
transition-delay:6.75s;
}
.design__images .design__image a.inview:nth-child(24){
transition-delay:7s;
}
.design__images .design__image a.inview:nth-child(25){
transition-delay:7.25s;
}
.design__images .design__image a.inview:nth-child(26){
transition-delay:7.5s;
}
.design__images .design__image a.inview:nth-child(27){
transition-delay:7.75s;
}
.design__images .design__image a.inview:nth-child(28){
transition-delay:8s;
}

/* ------------------------------------------------------------
 * Home Menu
 * ------------------------------------------------------------ */

section#menu{
	padding:3rem 0;
	min-height:100vh;
}

table.menu{
	width:100%;
	border-collapse:collapse;
	border-top:1px dashed rgba(0,0,0,0.15);
	margin:0;
}

table.menu td,
table.menu th{
	border-bottom:1px dashed rgba(0,0,0,0.15);
	padding:0.5rem 0;
	font-weight:normal;
}

table.menu tr:last-child td,
table.menu tr:last-child th{
	border-bottom:0px;
}

table.menu th{
	width:67%;
}

table.menu td{
	width:33%;
	text-align:right;
}

section#menu dl.accordion.menu.first{
	border-top:1px solid rgba(90,103,116,0.15);
	border-top-left-radius:0.75rem;
	border-top-right-radius:0.75rem;
}

section#menu dl.accordion.menu.last{
	border-bottom-left-radius:0.75rem;
	border-bottom-right-radius:0.75rem;
}

dl.accordion.menu{
/*border-bottom:1px solid rgba(90,103,116,0.15);*/
	border-right:1px solid rgba(90,103,116,0.15);
	border-left:1px solid rgba(90,103,116,0.15);
	border-bottom:1px solid rgba(90,103,116,0.15);
}

dl.accordion.menu dt {
  background:  rgba(255,255,255,0);
  cursor: pointer;
  font-size: 1rem;
  padding: 0.75rem 2rem 0.75rem 0.75rem;
  position: relative;
	transition:all 0.3s ease;
	counter-increment: question;
/*	border-top:1px solid rgba(90,103,116,0.15);*/
font-weight:bold;
}


dl.accordion.menu dt.open,
dl.accordion.menu dt:hover{
	background-color: transparent;
	opacity:0.7s;
/*  background:  rgba(255,255,255,0.2);*/
	color:rgba(239, 25, 99,1)!important;
}



dl.accordion.menu dt:after {
  position: absolute;
  content: '';
  top: 50%;
  right: 0.25rem;
  transition: all .3s ease-in-out;
    content: "\e5cf";
    font-family: 'Material Symbols Outlined';
	font-size:1.5rem;
	transform:rotate(0deg) translatey(-50%);
	transform-origin:50% -5%;

}



dl.accordion.menu dt.open:before {
	color:rgba(239, 25, 99,1)!important;
}
dl.accordion.menu dt.open:after {
	transform:rotate(180deg) translatey(-50%);
}

dl.accordion.menu dt.open:before,
dl.accordion.menu dt:hover:before,
dl.accordion.menu dt:hover:after{
	background-color:transparent;
}

dl.accordion.menu dd {
  display: none;
  padding: 0rem 0.75rem 0rem 0.75rem;
	margin:0;
	position:relative;
	color:rgba(239, 25, 99,1)!important;
}

/* ------------------------------------------------------------
 * Home Information
 * ------------------------------------------------------------ */
dl.information {
display: flex;
flex-flow: row wrap;
width: 100%;
margin:0;
}


dl.information > dt {
flex-basis: 6rem;
padding: 0.5rem 0;
border-bottom: 1px solid #eee;
margin:0;
}

dl.information > dd {
flex-basis: calc(100% - 6rem);
padding: 0.5rem 0;
border-bottom: 1px solid #eee;
margin:0;
}

dl.information dl {
display: flex;
flex-flow: row wrap;
width: 100%;
margin:0;
}


dl.information dl dt {
flex-basis: 4rem;
padding: 0 0 0.25rem 0;
margin:0;
font-weight:normal;
}

dl.information dl dd {
flex-basis: calc(100% - 4rem);
padding: 0 0 0.25rem 0;
margin:0;
}

.swiper-container.information{
	position:relative;
	margin:0 0 2.5rem;
}

.swiper.information{
	overflow:visible!important;
	margin-bottom:3.5rem;
}

.swiper.information .information__image,
.swiper.information .information__image img{
border-radius:0.25rem;
}

.swiper.information .swiper-slide .information__caption{
	font-size:0.8rem;
	background-color:rgba(239, 25, 99,0.9);
	color:#fff;
	width:5rem;
	height:5rem;
	display:flex;
	align-items:center;
	justify-content:center;
	text-align:center;
	position:absolute;
	top:-1rem;
	right:1rem;
	border-radius:100vh;
	padding:0.5rem;
	line-height:1.2;
	transform:scale(0);
	transition:all 0.45s cubic-bezier(0.68, -0.55, 0.27, 1.55) 0.25s;
}


.swiper.information .swiper-slide.swiper-slide-active .information__caption{
  transform:scale(1);
}

/* -------------------------




.swiper.information .swiper-pagination {
	top:auto!important;
	bottom:-2rem!important;
}

.swiper.information .swiper-pagination-bullet{
	transition:all 0.3s ease;
	border-radius:100vh!important;
	background-color:rgba(239, 25, 99,0.6);
	opacity:1;
}

.swiper.information .swiper-pagination-bullet-active{
	width:36px;
	background-color:rgba(239, 25, 99,1);
}

.information__map{
	margin:1.5rem 0 1rem 0;
}

.information__map iframe{
	border-radius:0.75rem;
}



/* ------------------------------------------------------------
 * Rooms
 * ------------------------------------------------------------ */

section.home#rooms{
	min-height:100vh;
}

.swiper-container.rooms{
	position:relative;
	margin:0 0 7.5rem;
}

.swiper{

	margin-bottom:3.5rem;
}

.rooms__image,
.rooms__image img{
border-radius:0.25rem;
}

.rooms__name{
	font-size:1.45rem;
	margin:0.75rem 0 0.15rem 0;
	text-align:center;
	line-height:1.1;
	letter-spacing:0.1em;
}
.rooms__occupation{
	font-size:0.9rem;
	margin: 0 0 0.75rem 0;
	text-align:center;
}


.rooms__copy{
	font-size:1.15rem;
	margin:0 0 0.75rem 0;
}

.rooms__comment{
	font-size:1rem;
}

.swiper-pagination {
	top:auto!important;
	bottom:-2rem!important;
}

.swiper-pagination-bullet{
	transition:all 0.3s ease;
	border-radius:100vh!important;
	background-color:rgba(0,0,0,0.6);
	opacity:1;
}

.swiper-pagination-bullet-active{
	width:36px;
	background-color:rgba(0,0,0,1);
}

/*
div:not(.swiper-slide-active) .marker,
.marker {
  background:linear-gradient(transparent 60%, rgba(0,0,0, 0.25) 40%);
  display: inline;

  background-repeat: no-repeat;


	background-size: 0% 100%;


	transition:background-size 0.85s cubic-bezier(1, 0, 0, 1) 0.75s;
}

.swiper-slide-active .marker.is-show,
.marker.is-show {
  background-size: 100% 100%;
}
*/

/* ------------------------------------------------------------
 * FAQ
 * ------------------------------------------------------------ */
section.home#faq section{
	margin:0 0 3.5rem;
}


section#faq h3{
	margin:0 0 0.5rem;
	font-size:1.15rem;
	font-weight:bold;
}

.accordion-container {
  margin: 0 0 1.75rem;
  width: 100%;
}

dl.accordion.faq{
border-bottom:1px solid rgba(90,103,116,0.15);
}

dl.accordion.faq dt {
  background:  rgba(255,255,255,0);
  cursor: pointer;
  font-size: 1rem;
  padding: 0.6rem 2rem 0.6rem 2.5rem;
  position: relative;
	transition:all 0.3s ease;
	counter-increment: question;
	border-top:1px solid rgba(90,103,116,0.15);
font-weight:normal;
}


dl.accordion.faq dt.open,
dl.accordion.faq dt:hover{
	background-color: transparent;
	opacity:0.7s;
/*  background:  rgba(255,255,255,0.2);*/
	background-color:#dcdcdc;
	color:#000;
}

dl.accordion.faq dt:before {
  position: absolute;
	display:inline-block;
  content: '';
  top: 0%;
	left: 0.25rem;
  background-color: transparent;
/*  transition: all .3s ease-in-out;*/
	font-size:180%;
	letter-spacing:0.1em;
	font-weight:normal;
	font-family: "Libre Baskerville", serif;
	content: "Q";

}

dl.accordion.faq dd {counter-increment: answer;
margin-left: 0;

}
dl.accordion.faq dt:after {
  position: absolute;
  content: '';
  top: 50%;
  right: 0.25rem;
  transition: all .3s ease-in-out;
    content: "\e5cf";
    font-family: 'Material Symbols Outlined';
	font-size:1.5rem;
	transform:rotate(0deg) translatey(-50%);
	transform-origin:50% -5%;

}



dl.accordion.faq dt.open:before {
/*	color:rgba(239, 25, 99,1)!important;
	color:#fff;*/
}
dl.accordion.faq dt.open:after {
	transform:rotate(180deg) translatey(-50%);
}

dl.accordion.faq dt.open:before,
dl.accordion.faq dt:hover:before,
dl.accordion.faq dt:hover:after{
	background-color:transparent;
	color:#000:
}

dl.accordion.faq dd {
  display: none;
  padding: 0rem 2rem 1rem 2.5rem;
	margin:0;
	position:relative;
	color:#000;
	background-color:#dcdcdc;
}

dl.accordion.faq dd:before {
  position: absolute;
	display:inline-block;
  content: '';
  top: 0;
	left: 0.25rem;
  background-color: transparent;
  transition: all .3s ease-in-out;
	font-size:180%;
	letter-spacing:0.1em;
	font-weight:normal;
	font-family: "Libre Baskerville", 'Shippori Mincho' , serif;
	content: "A";
	line-height:1;
}

dl.accordion.faq dt.open + dd:before {
/*	color:rgba(239, 25, 99,1)!important;*/
}

/* ------------------------------------------------------------
 * Home Recruit
 * ------------------------------------------------------------ */

.recruit__notice{
	text-align:center;
	margin:0 0 1.5rem;
}

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

.recruit__list li {
	border-bottom:1px solid rgba(255,255,255,0.65);
}

.recruit__list li a{
	padding:0.5rem 0;
	display:block;
	position:relative;
}

.recruit__list li a:after{
    content: "\e5cc";
    font-family: 'Material Symbols Outlined';
	
	position:absolute;
	right:0;
}


/* ------------------------------------------------------------
 * Recruit
 * ------------------------------------------------------------ */

section.recruit{
	padding:4.5rem 0 0 0;
}

.recruit__title-sub{
	text-align:center;
	margin:0 0 2rem;
	font-size:1.25rem;
}

table.recruit {
	width:100%;
	border-collapse:collapse;
	border-top:1px solid rgba(255,255,255,0.45);
	margin:0 0 3rem;
}


table.recruit th,
table.recruit td{
	padding:0.5rem 0;
	border-bottom:1px solid rgba(255,255,255,0.45);
	font-weight:normal;
}

table.recruit th{
	white-space:nowrap;
	padding-right:0.35rem;
}


.table-contactform7{
	width:100%;
	border-collapse:collapse;
	border-top:1px solid rgba(255,255,255,0.45);
	margin:0 0 3rem;
}

.table-contactform7 th,
.table-contactform7 td{
	padding:0.5rem 0;
	border-bottom:1px solid rgba(255,255,255,0.45);
	font-weight:normal;
}

.table-contactform7 input,
.table-contactform7 textarea{
	border:0px solid #fff;
	background-color:rgba(255,255,255,0.65);
	padding:0.25rem;
	border-radius:0.5rem;
	width:100%;
}

.table-contactform7 th{
	white-space:nowrap;
	padding-right:0.35rem;
}


.table-contactform7 th p{
	display:flex;
	align-items:center;
	white-space:nowrap;
}

.table-contactform7 .required{
	background-color:rgba(239, 25, 99,1);
	color:#fff;
	width:2rem;
	height:2rem;
	border-radius:100vh;
	display:flex;
	align-items:center;
	justify-content:center;
	font-size:0.75rem;
	margin:0 0 0 0.25rem;
}

.privacy-policy{
	overflow-y:scroll;
	height:12rem;
	padding:1rem;
	background-color:rgba(255,255,255,0.45);
	margin:0 0 2rem;
}

.privacy-policy section{
	margin:0 0 3rem;
}

.privacy-policy h3{
	font-size:1.25rem;
	margin:0 0 1rem;
}

.privacy-policy h4{
	font-size:1.1rem;
	margin:0 0 0.5rem;
}

.privacy-policy .section__body{
	margin:0 0 1.5rem;
}

.contact__accept{
	text-align:center;
}

.contact__button-container{
	text-align:center;
}


.contact__button{
	background-color:rgba(239, 25, 99,1);
	color:#fff;
	border-radius:100vh;
	width:12rem;
	text-align:center;
	padding:0.75rem 2rem;
	display:block;
	margin:2rem auto;
	transition:all 0.3s ease;
}

.contact__button:hover{
	background-color:rgba(239, 25, 99,0.7);
}


/* ------------------------------------------------------------
 * Activities
 * ------------------------------------------------------------ */
section#activities h2{

}
section#activities h3{
	font-size:1.25rem;
	margin:0 0 0.5rem;
	text-align:left;
	
}

dl.accordion.activities{
border-bottom:1px solid rgba(90,103,116,0.15);
	text-align:left;
}

dl.accordion.activities dt {
  background:  rgba(255,255,255,0);
  cursor: pointer;
  font-size: 1rem;
  padding: 0.6rem 2rem 0.6rem 1.0rem;
  position: relative;
	transition:all 0.3s ease;
	counter-increment: question;
	border-top:1px solid rgba(90,103,116,0.15);
font-weight:normal;
}


dl.accordion.activities dt.open,
dl.accordion.activities dt:hover{
	background-color: transparent;
	opacity:0.7s;
/*  background:  rgba(255,255,255,0.2);*/
	background-color:#dcdcdc;
	color:#000;
}



dl.accordion.activities dt:after {
  position: absolute;
  content: '';
  top: 50%;
  right: 0.25rem;
  transition: all .3s ease-in-out;
    content: "\e5cf";
    font-family: 'Material Symbols Outlined';
	font-size:1.5rem;
	transform:rotate(0deg) translatey(-50%);
	transform-origin:50% -5%;

}



dl.accordion.activities dt.open:before {
/*	color:rgba(239, 25, 99,1)!important;
	color:#fff;*/
}
dl.accordion.activities dt.open:after {
	transform:rotate(180deg) translatey(-50%);
}

dl.accordion.activities dt.open:before,
dl.accordion.activities dt:hover:before,
dl.accordion.activities dt:hover:after{
	background-color:transparent;
	color:#000:
}

dl.accordion.activities dd {
  display: none;
  padding: 0rem 1rem 1rem 1rem;
	margin:0;
	position:relative;
	color:#000;
	background-color:#dcdcdc;
	font-size:0.85rem;
}



dl.accordion.activities dt.open + dd:before {
/*	color:rgba(239, 25, 99,1)!important;*/
}
