/*
Theme Name: Theme
Version: 1.0
*/


/* CSSリセット */
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, p, blockquote, th, td {
    margin: 0;
    padding: 0;
}

*{
	box-sizing:border-box;
}

html{
	scroll-behavior: smooth;
}

html,body{
	margin:0;
	padding:0;
	background:#fff;
}
body::before{
  content:"";
  position:fixed;
  top:0; left:0; right:0;
  height: env(safe-area-inset-top);
  background:#fff;
  z-index: 99999999;
  pointer-events:none;
}


body {
	font-family: "Zen Old Mincho", serif;
    font-size: 16px;
    line-height: 1.6;
    background-color:#fff;
    color: #333;
	font-weight:500;
	overflow-x:hidden;
	padding-top:78px;
}

a {
    text-decoration: none;
    color: #0073e6;
	transition:0.4s;
}


.sp{
	display:none;
}
@media (max-width:1024px){
		body{
			padding-top:60px;
	}
}

@media (max-width:600px){
	.sp{
		display:block;
	}
}

/*PCヘッダー*/
.sp-header{
	display:none;
}

header{
	background:#fff;
	padding:0;
}

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

.header__flex{
	display:flex;
	justify-content:space-between;
	padding-left:40px;
	align-items:center;
}
.header__flex--left{
	width:320px;
}
.header__flex--left img{
	display:block;
	width:100%;
}

.header__flex--right{
	display:flex;
	height:78px;
	align-items:center;
	gap:30px
}
.header__flex--right .upper-menu{
	display:flex;
	justify-content:space-between;
	gap:0px 28px;
	margin-bottom:4px;
}

.header__flex--right nav{
	display:flex;
	flex-direction:column;
	align-items:flex-end;
}

.header__flex--right .upper-menu li{
	position:relative;
}
.header__flex--right .upper-menu li:after{
	content:"";
	width:1px;
	height:16px;
	background:#000;
	position:absolute;
	right:-15px;
	top:55%;
	transform:translateY(-50%);
}

.header__flex--right .upper-menu li:last-child:after{
	display:none;
}

.header__flex--right .bottom-menu{
	display:flex;
	justify-content:space-between;
	gap:0px 20px;
}

.header__flex--right ul li{
	list-style:none;
}
.header__flex--right ul li a{
	color:#000;
	text-decoration:none;
	font-size:14px;
	padding:2px 3px;
}

.header-reserve{
	width:180px;
	height:100%;
	background:#BC3829;
	color:#fff;
	display:flex;
	justify-content:center;
	align-items:center;
	font-weight:bold;
	font-size:15px;
	letter-spacing:1px;
	line-height:12px;
}



@media (max-width:1024px){

  .pc.header{ display:none; }

  .sp-header{
    display:block;
    position:fixed;
    top:0;
    left:0;
    right:0;
    width:100%;
    background:#fff;
    z-index:9999999;
  }

  .sp-header__inner{
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:14px 20px;
  }

  .sp-header__logo{ position:relative; z-index:10001; }
  .sp-header__logo img{ height:32px; display:block; }

  .sp-header__toggle{
    width:32px;
    height:24px;
    position:relative;
    background:none;
    border:none;
    cursor:pointer;
    z-index:10002;
  }

  .sp-header__toggle span{
    position:absolute;
    left:0;
    width:100%;
    height:2px;
    background:#000;
    transition:.3s ease;
  }

  .sp-header__toggle span:nth-child(1){ top:0; }
  .sp-header__toggle span:nth-child(2){ top:11px; }
  .sp-header__toggle span:nth-child(3){ bottom:0; }

  .sp-header.is-open .sp-header__toggle span:nth-child(1){ transform:translateY(11px) rotate(45deg); }
  .sp-header.is-open .sp-header__toggle span:nth-child(2){ opacity:0; }
  .sp-header.is-open .sp-header__toggle span:nth-child(3){ transform:translateY(-11px) rotate(-45deg); }

  html{ scrollbar-gutter: stable; }

  .sp-menu{
    position:fixed;
    top:60px;
    right:-100%;
    width:100%;
    height:calc(100dvh - 60px);
    background:#fff;
    transition:.4s ease;
    overflow-y:auto;
    overflow-x:hidden;
    -webkit-overflow-scrolling:touch;
    z-index:9999999;
  }

  .sp-header.is-open .sp-menu{ right:0; }

html.is-menu-open,
body.is-menu-open{
  overflow:hidden;
  height:100%;
}

body.is-menu-open{
  position:fixed;
  width:100%;
}

  .sp-menu__list{
    list-style:none;
    padding:0 24px;
    margin:0;
  }

  .sp-menu__list li{
    position:relative;
    border-bottom:1px solid #eee;
  }

  .sp-menu__list li.sp-header-reserve,
  .sp-menu__list li.sp-header-tel{
    border:none;
  }

  .sp-menu__list li.sp-header-reserve a{
    display:flex;
    justify-content:center;
    align-items:center;
    max-width:300px;
    width:100%;
    height:60px;
    margin:12px auto 48px;
    background:#BC3829;
    color:#fff;
    font-weight:bold;
    font-size:15px;
    letter-spacing:1px;
    line-height:12px;
    text-decoration:none;
  }

  .sp-menu__list li.sp-header-tel a{
    display:flex;
    justify-content:center;
    align-items:center;
    max-width:300px;
    width:100%;
    height:60px;
    margin:32px auto 0;
    background:#fff;
    border:1px solid #000;
    color:#000;
    font-size:15px;
    letter-spacing:1px;
    line-height:12px;
    text-decoration:none;
  }

  .sp-menu__list li:not(.sp-header-reserve):not(.sp-header-tel) a{
    display:block;
    padding:18px 40px 18px 0;
    text-decoration:none;
    color:#000;
    font-size:16px;
    position:relative;
  }

  .sp-menu__list li:not(.sp-header-reserve):not(.sp-header-tel) a::after{
    content:"";
    position:absolute;
    right:0;
    top:50%;
    transform:translateY(-50%);
    background:url("/wp-content/themes/original/img/menu-arrow.svg") no-repeat center/contain;
    width:8px;
    height:10px;
  }

}

/*Page-header*/
.page-header {
	padding-top:95px;
	padding-bottom:24px;
	max-width:1120px;
	margin:auto;
	width:92.48%;
	border-bottom:1px solid #9A9898;
}

.page-slug{
  display:block;
	font-family: 'EB Garamond', serif;
	font-weight:500;
  font-size:11px;
  letter-spacing:2px;
	margin-left:5px;
}

.page-header h1{
	font-size:48px;
	margin-top:24px;
	font-weight:bold;
	letter-spacing:1px;
}

.breadcrumb{
  margin-top:40px;
  font-size:11px;
  opacity:.85;
}

.breadcrumb__list{
  list-style:none;
  display:flex;
  flex-wrap:wrap;
  gap:0;
  margin:0;
  padding:0;
	color:#656565;
}

.breadcrumb__item{
  display:flex;
  align-items:center;
}

.breadcrumb__link{
  text-decoration:none;
	color:#000;
}

.breadcrumb__sep{
  margin:0 5px;
  opacity:.6;
	color:#000;
}

@media (max-width:1024px){
	.page-header h1{
		font-size:32px;
		margin-left:-3px;
	}
}

@media (max-width:600px){
	.page-header{
		padding-top:60px;
		padding-bottom:16px;
	}
	
	.page-header h1{
		font-size:22px;
		margin-top:16px;
	}
	.breadcrumb{
		margin-top:24px;
	}
}


/*Footer*/
.footer-map{
	width:100vw;
	margin:0 calc(50% - 50vw);
}
.footer-map iframe{
	margin:0;
	width:100%;
	height:474px;
	display:block;
}

footer{
	padding:75px 0px;
	padding-bottom:0;
	background:#f8f8f8;
}

.footer-flex{
	display:flex;
	max-width:1280px;
	width:92.48%;
	margin:auto;
	justify-content:space-between;
}
.footer-left{
	width:266px;
}
.footer-left img{
	width:100%;
	max-width:265px;
	margin-bottom:8px;
	display:block;
}
.footer-left p{
	margin-bottom:4px;
	font-size:12px;
	letter-spacing:2px;
	line-height:1.8;
}

.footer-center{
	display:flex;
	justify-content:space-between;
	width:331px;
}
.footer-center ul li{
	list-style:none;
	line-height:3;
	letter-spacing:2px;
}
.footer-center ul li a {
	color:#000;
	font-size:13px;
}
.footer-right{
	width:226px;
	display:flex;
	flex-direction:column;
	gap:4px;
}
.footer-right a{
	width:100%;
	display:block;
}
.footer-right a.line--btn,
.footer-right a.contact--btn{
	max-width:100%;
}

.footer-right a.footer-tel{
	border:1px solid #000;
	background:#fff;
	display:flex;
	justify-content:center;
	align-items:center;
	font-size:15px;
	padding:27.5px 0px;
	color:#000;
	letter-spacing:1px;
	line-height:12px;
}
.copyrights{
	display:block;
	padding:23px 0px 20px 0px;
	text-align:center;
	background:#fff;
	font-size:12px;
	letter-spacing:2px;
	margin-top:87px;
}

@media (max-width:1024px){
	.footer-flex{
		flex-wrap:wrap;
		gap:32px 0px;
	}
	.footer-left{
		width:100%;
	}
	
	.footer-center{
		width:49%;
	}
	
	.footer-right{
		margin-top:16px;
	}
	.footer-map iframe{
		height:250px;
	}
	.copyrights{
		padding-bottom:80px;
	}
}

@media (max-width:600px){
	.footer-map iframe{
		height:200px;
	}
	
	footer{
		padding-top:48px;
	}
	
	.footer-flex{
		flex-direction:column;
		align-items:center;
	}
	.footer-left,
	.footer-center,
	.footer-right{
		width:100%;
		max-width:100%;
	}
	.footer-center ul{
		width:50%;
	}
	
	.footer-left img{
		width:180px;
	}
	
	.footer-center ul li{
		line-height:2.5;
	}
	.footer-right{
		justify-content:center;
		margin:0;
		gap:8px;
	}
	.copyrights{
		margin-top:48px;
		font-size:10px;
		letter-spacing:1px;
		padding-bottom:72px;
	}
}

/*PC-Sticky*/
.pc-sticky-btn{
	display:flex;
	position:fixed;
	bottom:0;
	right:0;
	width:444px;
	z-index:99999;
}
.pc-sticky-btn .line--btn,
.pc-sticky-btn .contact--btn{
	max-width:100%;
}
@media (max-width:768px){
	.pc-sticky-btn{
		width:100%;
	}
	.pc-sticky-btn .line--btn,
	.pc-sticky-btn .contact--btn{
		font-size:14px;
		letter-spacing:1px;

	}
}




/*
 * 
 * About us
 * 
 * 
/*Message*/
.message-sec{
	padding-top:160px;
	padding-bottom:100px;
}

.message-sec__inner{
  max-width:681px;
  margin: 0 auto;
	width:92.48%;
}

.message-sec__logo{
  display: flex;
  justify-content: center;
}

.message-sec__logo img{
  height: auto;
  max-width: 200px;
}

/* 縦書きエリア*/
.message-sec__vwrap{
  display: flex;
  flex-direction: row-reverse; /* 右から並べる */
  gap: 44px;
  justify-content: center;
  align-items: flex-start;
	margin-top:64px;
}

/* 各カラム */
.message-sec__col{
  writing-mode: vertical-rl;
  text-orientation: mixed;
  line-height:2em;
  font-size: 13px;
  letter-spacing: .2em;
}

/* 右端の大見出し */
.message-sec__col--title{
  margin-left: 12px;
}

.message-sec__title{
  font-size: 36px;
  font-weight: 600;
  letter-spacing: .2em;
  margin: 0;
}

/* 本文 */
.message-sec__text{
  margin: 0;
}

/* 署名（左寄りのカラムに） */
.message-sec__col--sign{
  margin-right: 6px;
  align-self: flex-end;
}

.message-sec__sign{
  margin: 0;
  letter-spacing: .14em;
}
.message-sec__sign .position{
	margin-bottom:3em;
}

.about-img-flex{
	display:flex;
	justify-content:space-between;
}
.about-img-flex img{
	width:50%;
	object-fit:cover;
}

@media (max-width: 768px){
  .message-sec{
    padding:80px 0;
  }
  .message-sec__vwrap{
    flex-direction: column;
    gap: 18px;
    align-items: stretch;
  }
  .message-sec__col{
    writing-mode: horizontal-tb;
    text-orientation: initial;
    font-size: 15px;
    line-height: 1.9;
		margin:0;
  }
  .message-sec__title{
    font-size: 28px;
    letter-spacing: .12em;
		text-align:center;
  }
	.message-sec__text{
		text-align:center;
	}
	.message-sec__sign .position{
		margin:0;
		margin-right:1em;
	}
}

@media (max-width:600px){
	.message-sec{
		padding:60px 0px;
	}
	.message-sec__logo img{
		width:160px;
	}
	.message-sec__vwrap{
		margin-top:24px;
	}
	.message-sec__title{
		font-size:22px;
	}
	.message-sec__text{
		text-align:left;
		font-size:14px;
		letter-spacing:2px;
	}
	.message-sec__text br{
		display:none;
	}
	.about-img-flex{
		flex-direction:column;
		align-items:center;
		gap:32px;
	}
	.about-img-flex img:first-child{
		margin-left:10%;
		width:75%;
	}
	.about-img-flex img:last-child{
		margin-right:10%;
		width:75%;
	}
}


/*feature-sec*/
.feature-sec{
	padding-top:180px;
}
.feature-sec .container{
	max-width:1120px;
	margin:auto;
	width:92.48%;
}

.feature-sec h2{
	text-align:center;
	font-size:28px;
	font-weight:bold;
	letter-spacing:1px;
}
.feature-top-text{
	text-align:center;
	line-height:2;
	margin-top:24px;
	margin-bottom:80px;
}
.feature-flex{
	display:flex;
	justify-content:space-between;
	align-items:center;
	margin-top:40px;
}

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

.feature-flex-img{
	width:48%;
	max-width:532px;
}
.feature-flex-text{
	width:48%;
	max-width:532px;
}

.feature-flex-img img{
	width:100%;
}
.feature-flex-text h3{
	font-size:24px;
	letter-spacing:2px;
	margin-bottom:24px;
}
.feature-flex-text p{
	font-size:15px;
	line-height:1.8;
	letter-spacing:3px;
}
.feature-flex-text .right{
	text-align:right;
	margin-top:40px;
}

.feature-flex-text .first .more-btn{
	max-width:340px;
	width:100%;
	margin-left:auto;
}

.feature-flex-text .more-btn{
	font-size:15px;
}

@media (max-width:900px){
	.feature-top-text{
		font-size:15px;
	}
	.feature-flex,
	.feature-flex.second{
		flex-direction:column;
		gap:24px;
		margin-top:60px;
	}
	.feature-flex-img{
		max-width:80%;
		width:100%;
	}
	.feature-flex-text{
		max-width:80%;
		width:100%;
	}
	.feature-flex-text .right{
		text-align:center;
		margin-top:32px;
	}
}

@media (max-width:600px){
	.feature-sec{
		padding-top:80px;
	}
	.feature-sec h2{
		font-size:20px;
	}
	.feature-top-text{
		font-size:14px;
		text-align:left;
		letter-spacing:1px;
		margin-bottom:0px;
	}
	.feature-flex, .feature-flex.second{
		margin-top:60px;
	}
	.feature-flex-img,
	.feature-flex-text{
		max-width:100%;
	}
	.feature-flex-text h3{
		font-size:20px;
		letter-spacing:1px;
	}
	.feature-flex-text p{
		font-size:14px;
		letter-spacing:1px;
	}
	.feature-flex-text .more-btn{
		width:100%;
	}
}

/*about-info-sec*/
.about-info-sec{
	padding-top:180px;
	padding-bottom:122px;
}

.about-info-sec .container{
  max-width:calc(100% - 80px);
  margin: 0 auto;
  position: relative;
	background:#f8f8f8;
	padding:120px 0px 80px 0px;
}

.about-info-inner{
	max-width:873px;
	margin:auto;
	width:92.48%;
}

.about-info-sec h2{
  writing-mode: vertical-rl;
  text-orientation: mixed;
  letter-spacing: .25em;
  font-size:28px;
  font-weight: 600;
	margin:auto;
	position:absolute;
	top:-67.5px;
	left:50%;
  transform:translateX(-50%);
}

.about-info-flex{
	display:flex;
	justify-content:space-between;
	align-items:flex-start;
}
.about-info-flex-left{
	width:48%;
	max-width:415px;
}
.about-info-flex-left figure{
	margin:0;
}

.about-info-flex-left img{
	width:100%;
	object-fit:cover;
	height:276px;
}
.about-info-flex-right{
	width:48%;
	max-width:417px;
}

.about-info-flex-right p:nth-child(3) span{
	margin-left:1.15em;
	display:inline-block;
}

.about-info-flex-right h3{
	font-size:24px;
	letter-spacing:1px;
	margin-bottom:32px;
}
.about-info-flex-right p{
	margin-bottom:18px;
	font-size:15px;
	letter-spacing:2px;
}
.about-info-flex-right p:last-child{
	margin:0;
}

.about-info-map-text{
	display:block;
	margin-top:80px;
	font-size:15px;
	letter-spacing:2px;
}
.about-info-card__map{
	margin-top:8px;
	margin-bottom:24px;
}
.about-info-card__map iframe{
	width:100%;
	height:318px;
}
.about-info-map-text-inner{
	font-size:15px;
	letter-spacing:2px;
	margin-bottom:8px;
}
.about-info-card__guide{
	margin:0;
}

.about-info-card__guide img{
	width:100%;
	height:auto;
	object-fit:contain;
}

.about-info-cta{
	border:1px solid #000;
	padding:38px 0px 46px 0px;
	margin-top:84px;
	position:relative;
}
.about-info-cta__lead{
	position:absolute;
	left:0;
	right:0;
	margin:auto;
	text-align:center;
	font-size:28px;
	background:#f8f8f8;
	width:220px;
	top:-25px;
	letter-spacing:1px;
	font-weight:bold;
}
.about-info-cta__telrow{
	text-align:center;
	font-size:48px;
}
.about-info-cta__telrow a{
	color:#000;
}

.about-info-cta__btns{
	display:flex;
	justify-content:space-between;
	max-width:430px;
	margin:auto;
	margin-top:20px;
}

@media (max-width:900px){
	.about-info-sec .container{
		max-width:92.48%;
	}
	
	.about-info-inner{
		max-width:80%;
	}
	
	.about-info-flex{
		flex-direction:column;
		align-items:center;
		gap:24px;
	}
	.about-info-flex-left,
	.about-info-flex-right{
		max-width:100%;
		width:100%;
	}
	.about-info-cta__lead{
		font-size:24px;
		top:-20px;
	}
	.about-info-cta__telrow{
		font-size:32px;
	}
	.about-info-cta__telrow svg{
		width:24px;
		height:22px;
	}
}
@media (max-width:600px){
	.about-info-sec{
		padding-bottom:48px;
	}
	
	.about-info-sec .container{
		padding-top:100px;
		padding-bottom:48px;
	}
	
	.about-info-inner{
		width:87.5%;
		max-width:100%;
	}
	.about-info-flex-right h3{
		font-size:20px;
		margin-bottom:16px;
	}
	.about-info-flex-right p{
		font-size:13px;
	}
	.about-info-map-text{
		margin-top:48px;
		font-size:13px;
	}
	.about-info-card__map iframe{
		height:200px;
	}
	
	.about-info-flex-left img{
		height:auto;
		display:block;
	}
	.about-info-map-text-inner{
		font-size:13px;
	}
	.about-info-cta{
		margin-top:48px;
		padding-top:24px;
		padding-bottom:24px;
	}
	.about-info-cta__lead{
		font-size:20px;
		width:75%;
		top:-17px;
	}
	.about-info-cta__telrow{
		font-size:26px;
	}
	.about-info-cta__telrow svg{
		width:20px;
		height:20px;
	}
	.about-info-cta__btns{
		flex-direction:column;
		gap:12px;
		align-items:center;
	}
	.about-info-cta__btns a{
		width:100%;
	}
}



/*TOP*/


.sec-ttl{
	position:relative;
	padding-left:16px;
	letter-spacing:2px;
	font-family: 'EB Garamond', serif;
	font-weight:500;
}
.sec-ttl:before{
	content:"";
	position:absolute;
	left:0;
	width:8px;
	height:8px;
	background:#BC3829;
	border-radius:50%;
	top:50%;
	transform:translateY(-50%);
}

/*FV*/	
.fv{
	background:url("/wp-content/themes/original/img/fv.jpg");
	background-size:cover;
	background-position:center;
	height:calc(100vh - 78px);
	position:relative;
}

.fv:before{
	content:"";
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background:rgba(0,0,0,0.15);
}

.fv-text-wrap{
	position:absolute;
	right:5%;
	top:50%;
	transform:translateY(-50%);
	color:#fff;
	z-index:1;
}
.fv .main-text{
	display:block;
	font-size:44px;
	line-height:54px;
}
.fv .sub-text{
	display:block;
	font-size:20px;
}

.fv-info-wrap{
	position:absolute;
	bottom:0;
	left:0;
	background:#fff;
	display:flex;
	padding:18px 24px;
	width:100%;
	max-width:578px;
	align-items:center;
		z-index:1;
}
.fv-info-wrap .fv-info-title{
	width:25%;
}

.fv-info-wrap .fv-info-title svg{
	margin-right:8px;
	position:relative;
	top:1.5px;
}

.fv-info-wrap .fv-info-description{
	width:75%;
	color:#000;
}
.fv-info-wrap .fv-info-description .date{
	display:block;
	font-size:13px;
}
.fv-info-wrap .fv-info-description .title{
	font-size:15px;
	display:block;
}

.fv-info-wrap .fv-info-description svg{
	position:absolute;
	right:0;
	top:50%;
	transform:translateY(-50%);
	right:40px;
	transition:0.4s;
}

@media (max-width:1024px){
	.fv{
		height:calc(100vh - 60px);
	}
	
	.fv-text-wrap{
		left:20px;
		text-shadow:0px 4px 8px rgba(0,0,0,0.36);
		bottom:15%;
		top:auto;
	}
	.fv .sub-text{
		margin-top:8px;
		margin-left:3px;
	}
}

@media (max-width:600px){
	.fv{
    height: calc(var(--vh-initial, 1vh) * 100 - 60px + 37.5px);
	}
	
	.fv:before{
		background:rgba(0,0,0,0.4);
	}
	
	.fv-info-wrap{
		width:100%;
		padding:10px;
		flex-direction:column;
		gap:8px;
	}
	.fv-info-wrap .fv-info-title,
	.fv-info-wrap .fv-info-description{
		width:100%;
		max-width:100%;
		position:relative;
	}
	
	.fv-text-wrap{
		bottom:25%;
	}
	
	.fv-info-wrap .fv-info-title{
		font-size:14px;
	}
	.fv-info-wrap .fv-info-title svg{
		width:14px;
		height:14px;
		margin-right:4px;
	}
	
	.fv-info-wrap .fv-info-description .title{
		font-size:13px;
	}
	.fv-info-wrap .fv-info-description svg{
		width:32px;
		height:auto;
		right:10px;
		top:auto;
		bottom:10px;
	}
	
	.fv .main-text{
		font-size:24px;
		line-height:1.5;
	}
	.fv .sub-text{
		font-size:13.5px;
		letter-spacing:0.5px;
	}
}

/* ===== About Section ===== */
.about-sec{
  padding: 180px 0;
}

.about-sec__inner{
  max-width: 1130px;
  margin: 0 auto;
	width:92.48%;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 90px;
  align-items: center;
}

/* 左画像 */
.about-sec__media{
  margin: 0;
	max-width:420px;
}
.about-sec__media img{
  width: 100%;
  height: auto;
  display: block;
	max-width:420px;
}

/* 右 */
.about-sec__content{
  position: relative;
}

.about-sec__label{
  position: absolute;
  top: -10px;
  right: 0;
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  letter-spacing: .08em;
}

.about-sec__dot{
  line-height: 1;
}
.about-sec__en{
  line-height: 1;
}

/* 右側の縦組みブロック */
.about-sec__typo{
  display: flex;
  gap: 90px;
  padding-top: 32px;
	flex-direction: row-reverse;
}

/* 縦書き共通 */
.about-sec__head,
.about-sec__body{
  writing-mode: vertical-rl;
  text-orientation: mixed;
}

/* 見出し（右端） */
.about-sec__kicker{
  margin: 0;
  font-size: 14px;
  letter-spacing: .12em;
}
.about-sec__title{
  margin: 0;
  font-size: 34px;
  letter-spacing: .18em;
  line-height: 1.6;
}

/* 本文（中央） */
.about-sec__body{
  max-height: 380px;
  overflow: hidden;
  font-size: 15px;
  line-height: 2.15;
  letter-spacing: .15em;
	margin-top:60px;
}
.about-sec__body p{
  margin: 0;
}

/* ボタン */
.more-btn{
  display: inline-flex;
  align-items: center;
	justify-content:center;
  gap: 10px;
  padding: 21px 0;
  background: #b33a2e;
  color: #fff;
  text-decoration: none;
  letter-spacing: .12em;
	width:252px;
	transition:0.4s;
}
.more-btn svg{
	transition:0.4s;
}

@media (max-width:1024px){
	.about-sec{
		padding-top:80px;
		position:relative;
		overflow:hidden;
		padding-bottom:120px;
	}
	
	.about-sec__inner{
		width:100%;
	}
	
	.about-sec__media{
		height:500px;
		width:100%;
		max-width:100%;
	}
	.about-sec__media img{
		max-width:100%;
		height:100%;
		object-fit:cover;
		width:100%;
		object-position:50% 60%
	}
	
	.about-sec__inner{
		gap:60px;
		display:flex;
		flex-direction:column-reverse;
	}
	.about-sec__actions{
		text-align:center;
	}
}

@media (max-width:600px){
  .about-sec{
    padding: 60px 0 0px;
		margin:auto;
  }

  .about-sec__inner{
    gap: 80px;
		width:100%;
		max-width:100%;
  }
	
	.about-sec__label,
	.about-sec__head,
	.about-sec__body{
		width:92.48%;
		margin:auto;
	}

  .about-sec__typo{
    flex-direction: column;
    gap: 24px;
    padding-top: 0;
  }

  .about-sec__head,
  .about-sec__body{
    writing-mode: horizontal-tb;
    text-orientation: initial;
  }

  .about-sec__kicker{
    font-size: 12px;
    letter-spacing: .08em;
  }

  .about-sec__title{
    font-size: 20px;
		letter-spacing:1.5px;
    line-height: 1.6;
		margin-top:4px;
  }

  .about-sec__body{
    max-height: none;
    margin-top: 0;
    font-size: 13px;
    line-height: 1.9;
		letter-spacing:1px;
  }
	.about-sec__body br.pc{
		display:none;
	}

  .about-sec__label{
    position: static;
    margin-bottom: 12px;
  }

  .about-sec__actions{
    text-align: center;
		margin-top:32px;
  }

  .more-btn{
    width: 100%;
    max-width: 280px;
  }

}

/*Top-News*/
.news-sec{
	padding:101px 0px;
	background:#f8f8f8;
}

.news-flex{
	display:flex;
	max-width:880px;
	margin:auto;
	width:92.48%;
	justify-content:space-between;
}

.news-flex-left{
	width:90px;
	display:flex;
	flex-direction:column;
	align-items:center;
	gap:16px;
}

.news-flex-left .vertical-text{
	writing-mode: vertical-rl;
	text-orientation: mixed;
	font-size:28px;
	line-height:34px;
	letter-spacing:6px;
}

.news-flex-right{
	width:770px;
}
.news-flex-right ul li{
	list-style:none;
}

.news-flex-right ul li a {
	color:#000;
	padding:16px 0px;
	display:block;
	position:relative;
	border-bottom:1px dashed #000;
}

.news-flex-right ul li a .top-news-date{
	font-size:12px;
}

.news-flex-right ul li a .top-news-title{
	font-size:13px;
	margin-left:12px;
}

.news-flex-right ul li a:after{
	content:"";
	position:absolute;
	right:20px;
	transition:0.4s;
	top:50%;
	transform:translateY(-50%);
	width:50px;
	height:5.5px;
	background:url("/wp-content/themes/original/img/news-arrow.svg");
	background-size:contain;
	background-repeat:no-repeat;
}

.news-flex-right .to-news-btn{
	display:block;
	width:120px;
	background:#fff;
	border:1px solid #000;
	font-size:11px;
	padding:8px 0px;
	padding-left:12px;
	position:relative;
	color:#000;
	margin-left:auto;
	margin-top:24px;
}
.news-flex-right .to-news-btn svg{
	position:absolute;
	top:50%;
	transform:translateY(-50%);
	right:12px;
	transition:0.4s;
}

@media (max-width:1024px){
.news-flex{
	flex-direction:column;
	gap:32px;
}
	.news-flex-left{
		width:100%;
		align-items:flex-start;
	}
	.news-flex-left .vertical-text{
		writing-mode:inherit;
		text-orientation:inherit;
	}
	.news-flex-right{
		width:100%;
	}
}

@media (max-width:600px){
	.news-flex-right ul li a{
		display:flex;
		flex-direction:column;
		gap:8px 0px;
	}
	
.news-flex-right ul li a .top-news-title{
  margin-left:0;
  max-width:80%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
	
	.news-flex-right ul li a:after{
		bottom:22.5px;
		top:auto;
		width:32px;
	}
	
	.news-flex-right .to-news-btn{
		margin:auto;
		margin-top:32px;
		padding:16px;
		max-width:300px;
		width:100%;
	}
}


/*Top-Menu*/
.top-menu-sec{
	padding:188px 0px;
}

.top-menu-inner{
	position:relative;
	min-height:741px;
}

.top-menu-bg{
	max-width:1440px;
	margin:auto;
	position:absolute;
	right:0;
	top:50%;
	transform:translateY(-50%);
}
.top-menu-bg figure{
	margin:0;
	width:555px;
	padding:0;
}
.top-menu-bg figure img{
	width:100%;
	display:block;
}
.top-menu-bg figure:last-child{
	left:-127px;
	margin-top:11px;
	position:relative;
}

.top-menu-text-wrap{
	max-width:1440px;
	margin:auto;
	padding-top:65px;
}

.top-menu-text{
	width: 610px;
  margin-left: 166px;
}

.top-menu-text h2{
	margin-top:18px;
	letter-spacing:0.5px;
	font-size:28px;
	font-weight:500;
}

.menu-sec__lead{
	margin-top: 28px;
	font-size:15px;
	letter-spacing:2px;
	max-width:510px;
	line-height:32px;
}

.menu-sec__list{
	max-width:508px;
	margin-top:28px;
}

.menu-sec__item{
  display: flex;
  align-items: baseline;
  gap: 12px;
  padding: 5px 0;
  font-size: 15px;
  line-height: 1.8;
  letter-spacing: .06em;
}

.menu-sec__name{
  white-space: nowrap;
}

.menu-sec__dots{
  flex: 1;
  border-bottom: 1px dotted rgba(0,0,0,.35);
  transform: translateY(-2px);
}

.menu-sec__price{
  white-space: nowrap;
}
.menu-sec__price.yose{
	right:-8px;
	position:relative;
}

.menu-sec__item--gap{
  padding: 10px 0;
}

.top-menu-btn-flex{
	display:flex;
	justify-content:space-between;
	max-width:508px;
	margin-top:86px;
}

@media (max-width:1380px){
	.top-menu-bg{
		position:relative;
		top:0;
		transform:inherit;
		display:flex;
		justify-content:center;
	}
	.top-menu-bg figure{
		width:100%;
		max-width:500px;
		margin:0;
	}
	.top-menu-bg figure:last-child{
		left:0;
		margin-top:0;
	}
	.top-menu-text{
		max-width:980px;
		width:92.48%;
		margin:auto;
		display:flex;
		flex-wrap:wrap;
		justify-content:space-between;
		align-items:flex-end;
		gap:32px 32px;
	}
	
	.top-menu-text .sec-ttl{
		width:100%;
	}
	
	.menu-sec__lead{
		max-width:100%;
		width:100%;
	}
	.menu-sec__lead br{
		display:none;
	}
	.menu-sec__list{
		width:70%;
	}
	.top-menu-btn-flex{
		width:34%;
		flex-direction:column;
		gap:24px;
		margin:auto;
		max-width:100%;
		justify-content:flex-end;
		align-items:flex-end;
	}
}
@media (max-width:1140px){
	.top-menu-sec{
		padding-top:0;
		padding-bottom:80px;
	}
	
	.top-menu-btn-flex{
		flex-direction:inherit;
		width:100%;
	}
	.menu-sec__list{
		max-width:100%;
		width:100%;
	}
}
@media (max-width:600px){
	.top-menu-bg{
		flex-direction:column;
	}
	.top-menu-text{
		gap:10px;
	}
	.top-menu-text h2{
		margin:0;
		font-size:22px;
	}
	.menu-sec__lead{
		margin-top:16px;
		font-size:14px;
		letter-spacing:1px;
	}
	.menu-sec__item{
		flex-direction:column;
		gap:2px 0px;
		padding:8px 0px;
		border-bottom:1px dashed #ccc;
	}
	.menu-sec__name{
		font-weight:bold;
	}
	.menu-sec__price{
		font-size:14px;
	}
	.menu-sec__price.yose{
		right:0;
	}
	
	.menu-sec__item--gap{
		display:none;
	}
	.top-menu-btn-flex{
		flex-direction:column;
		gap:8px;
		margin-top:24px;
		align-items:center;
	}
}


/*CTA-sec*/
.cta--sec{
	padding:121px 0px;
	background:url("/wp-content/themes/original/img/cta-bg.jpg");
	background-size:cover;
	background-repeat:no-repeat;
        }
        
        .cta--flex{
            display:flex;
            justify-content:space-between;
            max-width:880px;
            margin:auto;
					width:92.48%;
        }
        .cta--flex__left{
            width:48%;
            max-width:392.95px;
            font-weight: 600;
            font-size:13px;
            color:#fff;
            line-height: ;
        }
.cta--flex__left a{
	color:#fff;
	text-decoration:underline;
}

.cta--flex__left p{
	margin-bottom:23px;
}
.cta--flex__left p:last-child{
	margin:0;
}

        .cta--flex__right{
            width:48%;
            max-width:417px;
            display:flex;
            flex-wrap:wrap;
            justify-content: space-between;
        }
        .cta--flex__right a:first-child{
            width:100%;
            display:flex;
            justify-content: center;
            align-items: center;
            font-size:44px;
            text-decoration: none;
            font-weight: bold;
            letter-spacing: 2.462px;
            color:#fff;
			margin-bottom:14px;
        }

        .cta--flex__right a svg{
            margin-right:15px;
            position:relative;
            top:4px;
        }

        .cta--flex__right .line--btn,
        .cta--flex__right .contact--btn{
            width:50%;
            max-width: 207px;
            color:#fff;
            text-decoration:none;
            font-weight:bold;
            font-size:15px;
            display:flex;
            justify-content: center;
            align-items: center;
            letter-spacing: 0.01em;
            text-align:center;
            padding:21.5px 0px;
        }
        .cta--flex__right .line--btn{
            background:#628D43;
        }
        .cta--flex__right .contact--btn{
            background:#BC3829;
        }

@media (max-width:900px){
	.cta--sec{
		padding:80px 0px;
	}
	
	.cta--flex{
		flex-direction:column;
		gap:24px;
		align-items:center;
	}
	.cta--flex__left{
		width:100%;
		text-align:center;
	}
	.cta--flex__right{
		width:100%;
	}
}
@media (max-width:480px){
	.cta--flex__right{
		flex-direction:column;
		gap:12px 0px;
		align-items:center;
	}
	
	.cta--flex__right a:first-child{
		font-size:26px;
		margin:0;
	}.cta--flex__right a:first-child svg{
		width:20px;
		margin-right:8px;
	}
	.cta--flex__right .line--btn, .cta--flex__right .contact--btn{
		width:100%;
		max-width:240px;
	}
}

/*Top-Style*/
.top-style-sec{
	padding:188px 0px;
}
.top-style-sec .container{
	max-width:1108px;
	margin:auto;
	width:92.48%;
}
.top-style-sec h2{
	margin-top:18px;
	font-size:28px;
	font-weight:500;
	margin-bottom:18px;
}
.top-style-description{
	font-size:15px;
	letter-spacing:2px;
	line-height:32px;
}

.style-list{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	gap:48px 1%;
	margin-top:60px;
}
.style-list article{
	max-width:265px;
	width:24%;
}
.style-list a{
	color:#000;
	font-size:14px;
	letter-spacing:2px;
	line-height
}

.style-list li{
	list-style:none;
}
.style-card__thumb{
	overflow:hidden;
	margin-bottom:8px;
}

.style-card__thumb img{
	width:100%;
	object-fit:cover;
	height:350px;
	display:block;
	transition:0.4s;
}
.style-card__tag{
	font-size:13px;
	position:relative;
	letter-spacing:2px;
}
.style-card__tag:before{
	content:"#";
}

.top-style-sec .container .more-btn{
	margin:auto;
}

.center{
	text-align:center;
	display:block;
	margin:auto;
}
.top-style-sec .center{
	margin-top:72px;
}

@media (max-width:1180px){
	.top-style-sec{
		padding-top:80px;
		padding-bottom:60px;
	}
	
	.style-list{
		gap:24px 1%;
	}
	
	  .style-list .style-card:nth-child(n+7){
			display:none;
	}
	
	.style-list article{
		width:49%;
		max-width:100%;
	}
	.style-card__thumb img{
		height:auto;
	}
}

@media (max-width:600px){
	.top-style-sec h2{
		font-size:24px;
	}
	.top-style-description{
		font-size:14px;
		letter-spacing:1px;
	}
	
	  .style-list .style-card:nth-child(n+5){
display:none;
}
	.style-card__thumb img{
		height:auto;
		margin:0;
	}
	.style-card__tag{
		font-size:12px;
	}
	
	.style-card__title{
		font-size:14px;
		letter-spacing:1px;
	}
	.top-style-sec .center{
		margin-top:32px;
	}
}

/*top-blog-sec*/
.top-blog-sec{
	background:#f8f8f8;
	padding:92px 0px;
}
.top-blog-sec .container{
	max-width:880px;
	margin:auto;
	width:92.48%;
}

.top-blog-flex{
	display:flex;
	justify-content:space-between;
	align-items:flex-end;
}

.top-blog-left{
	width:204px;
}

.top-blog-left h2{
	margin-top:18px;
	font-size:28px;
	letter-spacing:1px;
	margin-bottom:0.25em;
}

.top-blog-right{
	width:580px;
	font-size:15px;
	line-height:32px;
	letter-spacing:2px;
}

.top-blog-list{
	display:flex;
	justify-content:space-between;
	margin-top:26px;
}

.p-blog-card{
	width:282px;
}

.p-blog-card img{
	width:100%;
	object-fit:cover;
	height:212px;
	display:block;
	transition:0.4s;
}
.p-blog-card figure{
	margin:0;
	overflow:hidden;
}
.p-blog-card__date{
	font-size:12px;
	letter-spacing:1px;
	line-height:12px;
	color:#000;
}
.p-blog-card__title{
	font-size:15px;
	font-weight:bold;
	color:#000;
}
.top-blog-sec .center{
	margin-top:54px;
}
.top-blog-sec .more-btn{
	font-size:15px;
}

@media (max-width:1024px){
	.top-blog-left h2{
		margin-top:4px;
		margin-bottom:0;
	}
	.top-blog-right{
		font-size:14px;
		letter-spacing:1px;
	}
	
	.top-blog-flex{
		flex-direction:column;
		gap:8px;
		align-items:flex-start;
	}
	.top-blog-left,
	.top-blog-right{
		width:100%;
	}
	.p-blog-card{
		width:32%;
	}
	.p-blog-card img{
		height:auto;
		aspect-ratio: 16 / 9;
		min-height:160px;
	}
}

@media (max-width:600px){
	.top-blog-list{
		flex-direction:column;
		gap:24px 0px;
		align-items:center;
	}
	.p-blog-card{
		width:100%;
	}
	.p-blog-card img{
		min-height:180px;
	}
}

/*top-info*/
.top-info-sec{
	padding:98px 0px;
}
.top-info-flex{
	display:flex;
	justify-content:space-between;
	align-items:center;
	margin:auto;
	max-width:1108px;
	gap:0px 24px;
	width:92.48%;
}
.top-info-left{
	width:615px;
}
.top-info-left figure{
	margin:0;
}
.top-info-left img{
	width:100%;
}
.top-info-right .sec-ttl{
	margin-bottom:26px;
	display:block;
}

.top-info-right{
	width:420px;
}

.top-info-right p{
	margin-bottom:20px;
}
.top-info-btn{
	display:flex;
	justify-content:space-between;
}

.line--btn,
.contact--btn{
	width:50%;
	max-width: 207px;
	color:#fff;
	text-decoration:none;
	font-weight:bold;
	font-size:15px;
	display:flex;
	justify-content: center;
	align-items: center;
	letter-spacing: 0.01em;
	text-align:center;
	padding:20px 0px;
	line-height:1;
}

.line--btn{
	background:#628D43;
}
.contact--btn{
	background:#BC3829;
}

@media (max-width:960px){
	.top-info-flex{
		flex-direction:column;
		gap:24px 0px;
		align-items:center;
	}
	.top-info-left,
	.top-info-right{
		width:100%;
	}
	.top-info-btn{
		justify-content:center;
		gap:0px 16px;
		margin-top:24px;
	}
}
@media (max-width:600px){
	.top-info-sec{
		padding-top:60px;
		padding-bottom:48px;
	}
	.top-info-right p{
		font-size:14px;
	}
	.top-info-btn{
		flex-direction:column;
		gap:8px;
	}
	.top-info-btn a{
		width:100%;
		max-width:100%;
	}
}

/*TOP-Staff紹介*/
/* =========================
   TOP STAFF (final)
========================= */

:root{
  --staff-inner-max: 1180px;
  --staff-left-col: 52px;
  --staff-gap: 50px;
  --staff-slide-w: 300px;
  --staff-slide-h: 400px;
  --staff-space: 32px;
  --staff-peek: 120px;
}

/* 外枠 */
.top-staff-sec{
  padding: 80px 0 120px;
	padding-left:5%;
	overflow:hidden;
}

/* ★ padding不要：0に */
.top-staff-sec__inner{
  max-width: var(--staff-inner-max);
  margin: 0 auto;
  padding: 0;
  display: grid;
  grid-template-columns: var(--staff-left-col) 1fr;
  column-gap: var(--staff-gap);
  align-items: start;
}

/* 左：縦書き */
.top-staff-sec__head{
	display:flex;
	justify-content:center;
	align-items:center;
	flex-direction:column;
	width:52px;
}

.top-staff-sec__title{
  writing-mode: vertical-rl;
  text-orientation: mixed;
  letter-spacing: .15em;
  font-size: 28px;
  line-height: 1.2;
  margin-top: 18px;
}

.top-staff-sec__slider{
  position: relative;
  overflow: hidden;
  padding-bottom: 74px;
}


.top-staff-sec__slider{
  margin-right: calc(50% - 50vw);
  padding-right: calc(50vw - 50% + var(--staff-peek));
}

.top-staff-swiper{
  overflow: visible;
  max-width: none;
}


.top-staff-swiper .swiper-wrapper{
  align-items: flex-start;
}

.top-staff-swiper .swiper-slide{
  width: var(--staff-slide-w) !important;
}

/* カード */
.top-staff-card__thumb{
  width: var(--staff-slide-w);
  height: var(--staff-slide-h);
  overflow: hidden;
  background: #eee;
	margin:0;
}
.top-staff-card__thumb img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
transition:0.4s;
}

.top-staff-card__name{
  margin: 0;
  font-size: 14px;
  letter-spacing: .06em;
	display:inline-block;
}
.top-staff-card__job{
	display:inline-block;
	font-size:13px;
	margin-left:8px;
}
.top-staff-card__comment{
	font-size:13px;
	line-height:26px;
	letter-spacing:2px;
}


/* ナビ：左下 */
.top-staff-nav{
  position: absolute;
  left: 0;
  bottom: 0;
  display: flex;
  gap: 8px;
  z-index: 10;
}
.top-staff-nav__btn{
  width: 34px;
  height: 34px;
  border: 1px solid #8a8a8a;
  background: transparent;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  padding: 0;
	transition:0.4s;
}
.top-staff-nav__btn::before{
  content:"";
  width: 6px;
  height: 6px;
  border-top: 1px solid #333;
  border-right: 1px solid #333;
  transform: rotate(225deg);
  display: block;
}
.top-staff-nav__btn--next::before{
  transform: rotate(45deg);
}
.top-staff-nav__btn.is-disabled,
.top-staff-nav__btn:disabled{
  opacity: .3;
  pointer-events: none;
}


.top-staff-card__link{
  display: block;
  width: 300px;
  text-decoration: none;
  color: inherit;
  line-height: 1;
}

.top-staff-card__thumb img{
  display: block;
}

.top-staff-card__body{
  line-height: 1.6;
	margin-top:8px;
}
.top-staff-swiper .swiper-wrapper{
  align-items: flex-start;
}

.top-staff-sec__slider .more-btn{
	position:absolute;
	bottom:0;
	left: 710px;
	height:64px;
}
.top-staff-sec .more-btn.responsive{
	display:none;
}

@media (max-width:1120px){
	.top-staff-sec__slider .more-btn{
		display:none;
	}
	.top-staff-sec .more-btn.responsive{
		display:flex;
		margin:auto;
		margin-top:32px;
	}
}

/* SP */
@media (max-width: 768px){
  .top-staff-sec__inner{
    grid-template-columns: 1fr;
    row-gap: 18px;
  }
  .top-staff-sec__title{
    writing-mode: horizontal-tb;
    margin-top: 0;
    font-size: 22px;
    letter-spacing: .06em;
  }
  .top-staff-sec__slider{
    margin-right: 0;
    padding-right: 2.5%;
  }
	.top-staff-sec__head{
		width:100%;
		text-align:left;
		justify-content:flex-start;
		align-items:flex-start;
	}
	.top-staff-sec .more-btn.responsive{
		margin-top:0;
	}
}

@media (max-width:600px){
	.top-staff-sec{
    padding-top:48px;
  }

	.top-staff-sec__slider{

	}
	
  .top-staff-sec .swiper-slide{
    width:80% !important;
  }

  .top-staff-card__link{
    width:100%;
  }

  .top-staff-card__thumb{
    width:100%;
    height:auto;
    aspect-ratio: 3 / 4;
  }

  .top-staff-card__thumb img{
    width:100%;
    height:100%;
    object-fit:cover;
  }
	.top-staff-card__comment{
		font-size:12px;
		letter-spacing:1px;
	}
}


/*QA-Page*/
.qa-sec{
	padding:100px 0px;
}
.qa-sec .container{
	max-width:1000px;
	margin:auto;
	width:92.48%;
}

.qa-sec .system-anchor__link{
	width:22.5%;
}

.qa-ttl {
    margin: 0 0 20px;
    font-size: 32px;
    line-height: 1.4;
    font-weight: 700;
    color: #000;
	padding-bottom:8px;
	border-bottom:1px solid #b33a2e;
	margin-top:3em;
	scroll-margin-top: 90px;
	margin-bottom:24px;
}

.qa-ac {
    margin-bottom: 24px;
    overflow: hidden;
	border:1px solid #666;
}

.qa-ac summary {
position: relative;
    display: flex;
    align-items: center;
    padding: 1.2em 4.2em 1.2em 1.5em;
    list-style: none;
    background-color: #fff;
    background-image: url('data:image/svg+xml;charset=utf8,%3Csvg xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 viewBox%3D%220 0 28 28%22%3E%3Ccircle cx%3D%2214%22 cy%3D%2214%22 r%3D%2214%22 style%3D%22fill%3A%23ffffff%3B%22%2F%3E%3C%2Fsvg%3E');
    background-position: right 1.5em center;
    background-size: 24px;
    background-repeat: no-repeat;
    color: #000;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.6;
    cursor: pointer;
	transition:0.4s;
}

.qa-ac summary::-webkit-details-marker {
    display: none;
}

.qa-ac summary::before {
    content: "Q.";
    flex: 0 0 auto;
    margin-right: 0.5em;
    font-weight: 700;
    color: #000;
}

.qa-ac summary::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 1.9em;
    width: 6px;
    height: 6px;
    border-right: 2px solid #b33a2e;
    border-bottom: 2px solid #b33a2e;
    transform: translateY(-70%) rotate(45deg);
    transition: transform 0.3s ease;
}

.qa-ac[open] summary::after {
    transform: translateY(-30%) rotate(225deg);
}

.qa-ac__content {
    padding: 24px 1.5em 1.5em;
    color: #333;
    opacity: 0;
    transform: translateY(-10px);
    transition: opacity 0.35s ease, transform 0.35s ease;
}

.qa-ac[open] .qa-ac__content {
    opacity: 1;
    transform: translateY(0);
}

.qa-ac__content::before {
    content: "A.";
    display: block;
    margin-bottom: 0.6em;
    font-weight: 700;
    color: #b33a2e;
}

.qa-ac__content > *:first-child {
    margin-top: 0;
}

.qa-ac__content > *:last-child {
    margin-bottom: 0;
}

.qa-ac__content p {
    margin: 0 0 1em;
    line-height: 1.9;
}

.qa-ac__content ul {
    margin: 0 0 1em 1.2em;
    padding: 0;
}

.qa-ac__content li {
    margin-bottom: 0.5em;
    line-height: 1.8;
}

.qa-ac__content ul ul {
    margin-top: 0.5em;
    margin-bottom: 0.5em;
}

@media (max-width:1024px){
.qa-sec .system-anchor__link{
	width:48%;
}
}


@media (max-width: 768px) {
    .qa-ttl {
        margin-bottom: 16px;
        font-size: 24px;
    }

    .qa-ac summary {
        padding: 1em 3.6em 1em 1em;
        background-position: right 1em center;
        background-size: 22px;
        font-size: 16px;
    }

    .qa-ac summary::after {
        right: 1.4em;
    }

    .qa-ac__content {
        padding: 0 1em 1.2em;
    }

    .qa-ac__content p,
    .qa-ac__content li {
        font-size: 14px;
        line-height: 1.85;
    }
}

@media (max-width:600px){
	.qa-sec{
		padding:48px 0px;
	}
	
.qa-sec .system-anchor__link{
	font-size:12px;
	padding:0;
}

	
	.qa-ttl{
		scroll-margin-top:72px;
		margin-top:32px;
	}
}

.news-sec{
	padding:100px 0px;
	background:#fff;
}
.news-sec .container{
	max-width:1120px;
	width:92.48%;
	margin:auto;
}

.news-article__thumb{
	margin:0;
	margin-top:24px;
	margin-bottom:40px;
}

.news-article__thumb img{
	width:100%;
	max-height:500px;
	object-fit:contain;
	height:auto;
}

.news-article__content{
	font-family: "Zen Old Mincho", serif;
}

.news-article__content p{
	margin-bottom:1.8em;
}
.news-article__nav {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
	margin-top: 80px;
	padding-top: 40px;
	border-top: 1px solid #ddd;
}

.news-article__nav-item a {
	display: flex;
	flex-direction: column;
	height: 100%;
	padding: 4px 6px;
	border-radius: 4px;
	text-decoration: none;
	color: #222;
	transition: .3s;
}



.news-article__nav-item--next {
	text-align: right;
}

.news-article__nav-label {
	margin-bottom: 8px;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #888;
}

.news-article__nav-title {
	font-size: 14px;
	line-height: 1.7;
}

@media (Max-width:600px){
	.news-sec{
		padding:60px 0px;
	}
}

/*Archive-Category*/
.archive-sec{
	padding:60px 0px;
	padding-bottom:120px;
}
.archive-sec .container{
	max-width:1120px;
	width:92.48%;
	margin:auto;
}

.archive-list{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	gap:32px 1.6%;
}

.archive-card{
	width:31%;
	border:1px solid #ccc;
}
.archive-card a{
		color:#000;
}

.archive-card__thumb{
	margin:0;
	aspect-ratio:16 / 9;
	overflow:hidden;
}
.archive-card__thumb img{
	width:100%;
	object-fit:cover;
	height:100%;
	display:block;
	transition:0.4s;
}

.archive-card__body{
	padding:10px;
	padding-bottom:24px;
}
.archive-card__date{
	font-size:12px;
}

.archive-card__updated{
	font-size:12px;
}

.archive-card__title{
	font-size:18px;
}
.archive-card__cats{
	font-size:12px;
}
.nav-wrap{
	display:flex;
	justify-content:center;
	gap:12px;
	margin-top:32px;
}
.nav-wrap a{
	color:#000;
}

@media (max-width:768px){
	.archive-list{
		flex-direction:column;
		gap:32px;
		align-items:center;
	}
	.archive-card{
		width:100%;
		max-width:345px;
	}
}

/*Style*/
/* =========================
   Style Single
========================= */
.style-single-sec{
	padding:120px 0;
}

.style-single-sec .container{
	max-width:1120px;
	width:92.84%;
	margin:auto;
}

.style-single{
	max-width:100%;
}

.style-single__grid{
	display:grid;
	grid-template-columns:minmax(0, 700px) 1fr;
	gap:60px;
	align-items:start;
}

.style-single__main{
	display:grid;
	grid-template-columns:minmax(0, 45%) minmax(0, 55%);
	gap:48px;
	align-items:start;
	min-width:0;
}

.style-single__main > *{
	min-width:0;
}

.style-gallery,
.style-single__info{
	min-width:0;
}

.style-single__side{
	min-width:0;
}


/* =========================
   Gallery
========================= */
.style-gallery{
	width:100%;
	max-width:700px;
	margin:0;
	margin-bottom:0;
}

/* メイン画像ラッパー */
.style-gallery-main-wrap{
	position:relative;
	padding:0 25px;
	margin-bottom:16px;
}

.style-gallery-main{
	overflow:hidden;
	border-radius:16px;
}

.style-gallery-main .swiper-wrapper{
	align-items:stretch;
}

.style-gallery-main .swiper-slide{
	height:auto;
}

.style-gallery-main-img{
	width:100%;
	background:#f8f8f8;
	border-radius:16px;
	overflow:hidden;
}

.style-gallery-main-img img{
	display:block;
	width:100%;
	height:100%;
	object-fit:contain;
	max-height:500px;
	padding:20px;
}

/* =========================
   Thumbs
========================= */
.style-gallery-thumbs{
	display:grid;
	grid-template-columns:repeat(4, 1fr);
	gap:10px;
	max-width:580px;
	margin:0 auto;
}

.style-gallery-thumb{
	display:block;
	width:100%;
	padding:0;
	border:none;
	border-radius:10px;
	overflow:hidden;
	background:#f3f3f3;
	cursor:pointer;
	opacity:.45;
	transition:opacity .3s ease, transform .3s ease;
	appearance:none;
	-webkit-appearance:none;
}


.style-gallery-thumb.is-active{
	opacity:1;
}

.style-gallery-thumb img{
	display:block;
	width:100%;
	height:100%;
	aspect-ratio:1 / 1;
	object-fit:cover;
}

/* =========================
   Arrow
========================= */
.style-gallery-prev,
.style-gallery-next{
	position:absolute;
	top:50%;
	transform:translateY(-50%);
	width:48px;
	height:48px;
	background:#fff;
	border:none;
	border-radius:50%;
	box-shadow:0 6px 18px rgba(0,0,0,.14);
	cursor:pointer;
	z-index:20;
	padding:0;
	transition:opacity .3s ease, transform .3s ease;
	appearance:none;
	-webkit-appearance:none;
}



.style-gallery-prev{
	left:0;
}

.style-gallery-next{
	right:0;
}

.style-gallery-prev::after,
.style-gallery-next::after{
	content:"";
	position:absolute;
	top:50%;
	left:50%;
	width:9px;
	height:9px;
	border-top:2px solid #333;
	border-right:2px solid #333;
}

.style-gallery-prev::after{
	transform:translate(-30%,-50%) rotate(-135deg);
}

.style-gallery-next::after{
	transform:translate(-70%,-50%) rotate(45deg);
}

/* =========================
   Side Box
========================= */
.style-single__box{
	margin-bottom:20px;
	border:1px solid #ddd;
	background:#fff;
}

.style-single__box:last-child{
	margin-bottom:0;
}

.style-single__heading{
	margin:0;
	padding:14px 18px;
	background:#BC3829;
	color:#fff;
	font-size:20px;
	line-height:1.4;
}

.style-single__body{
	padding:18px;
}

.style-single__body p{
	margin:0;
	line-height:1.9;
}

/* =========================
   Table
========================= */
.style-single__table{
	width:100%;
	border-collapse:collapse;
}

.style-single__table th,
.style-single__table td{
	padding:12px;
	vertical-align:top;
	font-size:14px;
	line-height:1.8;
	border-bottom:1px solid #ddd;
}
.style-single__table tr:last-child th,
.style-single__table tr:last-child td{
	border:none;
}

.style-single__table th{
	width:120px;
	font-weight:700;
	text-align:left;
}

.style-single__table td p{
	margin:0;
}

/* =========================
   Staff
========================= */
.style-single__staff,
.style-single__related{
	margin-top:80px;
}

.style-single__section-title{
	margin:0 0 24px;
	font-size:28px;
	line-height:1.4;
	border-bottom:1px solid #BC3829;
	padding-bottom:8px;
}

.style-single__staff-card{
	display:grid;
	grid-template-columns:180px 1fr;
	gap:24px;
	padding:24px;
	border:1px solid #ddd;
	background:#fff;
}

.style-single__staff-image img{
	display:block;
	width:100%;
	height:auto;
}

.style-single__staff-name{
	margin:0 0 12px;
	font-size:22px;
	line-height:1.4;
}

.style-single__staff-name a{
	color:inherit;
	text-decoration:none;
}

.style-single__staff-text p{
	margin:0;
	line-height:1.9;
}
.style-single__staff-link{
	margin-top:16px;
}

.staff-detail-btn{
	display:inline-block;
	padding:10px 20px;
	background:#BC3829;
	color:#fff;
	text-decoration:none;
	font-size:14px;
	transition:opacity .3s;
}


/* =========================
   Related
========================= */
.style-single__related{
	padding-bottom:120px;
}

.style-single__related-list{
	display:flex;
	flex-wrap:wrap;
	gap:24px;
}

.style-single__related-card{
	width:calc((100% - 72px) / 4);
}

.style-single__related-card a{
	display:block;
	color:inherit;
	text-decoration:none;
}

.style-single__related-thumb{
	overflow:hidden;
	background:#f3f3f3;
}

.style-single__related-thumb img{
	display:block;
	width:100%;
	aspect-ratio:4 / 5;
	object-fit:cover;
	height:100%;
	transition:0.4s;
}

.style-single__related-title{
	margin-top:4px;
	font-size:15px;
	line-height:1.6;
}

.style-single__related-more{
	margin-top:32px;
	text-align:center;
}

.style-single__more-btn{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-width:220px;
	padding:14px 24px;
	border:1px solid #BC3829;
	background:#BC3829;
	color:#fff;
	font-size:14px;
	line-height:1;
	cursor:pointer;
	transition:0.4s;
	font-family:"Zen Old Mincho", serif;
}


/* =========================
   Responsive
========================= */
@media (max-width:1024px){
	.style-single__grid{
		grid-template-columns:1fr;
		gap:40px;
	}

	.style-single__main{
		grid-template-columns:minmax(0, 1fr) minmax(0, 340px);
		gap:32px;
	}

	.style-gallery{
		max-width:100%;
	}

	.style-single__related-card{
		width:calc((100% - 50px) / 3);
	}
}

@media (max-width:900px){
	.style-gallery-main-wrap{
		padding:0 16px;
	}

	.style-single__staff-card{
		display:flex;
	}
	
	.style-single__staff-image img{
		max-height:300px;
		object-fit:contain;
	}
}

@media (max-width:768px){
	.style-single__main{
		grid-template-columns:1fr;
		gap:32px;
	}

	.style-gallery{
		max-width:700px;
		margin:0 auto;
	}
	.style-single__main{
		grid-template-columns:1fr;
		gap:32px;
	}

	.style-gallery{
		max-width:100%;
		width:100%;
		margin:0;
	}

	.style-single__info{
		width:100%;
	}

	.style-gallery-thumbs{
		max-width:100%;
	}
	.staff-detail-btn{
		display:block;
		max-width:280px;
		margin:auto;
		text-align:center;
		margin-top:16px;
		width:92.48%;
	}
}

@media (max-width:767px){
	.style-single-sec{
		padding:70px 0;
	}

	.style-gallery-main-wrap{
		padding:0 20px;
		margin-bottom:32px;
	}

	.style-gallery-main,
	.style-gallery-main-img{
		border-radius:10px;
	}

	.style-gallery-thumbs{
		gap:8px;
	}

	.style-gallery-thumb{
		border-radius:8px;
	}

	.style-gallery-prev,
	.style-gallery-next{
		width:40px;
		height:40px;
	}

	.style-single__heading{
		padding:12px 14px;
		font-size:18px;
	}

	.style-single__body{
		padding:14px;
	}

	.style-single__staff-card{
		grid-template-columns:1fr;
		padding:18px;
	}

	.style-single__section-title{
		margin-bottom:18px;
		font-size:24px;
	}

	.style-single__related-list{
		gap:16px;
	}

	.style-single__related-card{
		width:calc((100% - 16px) / 2);
	}
}

@media (max-width:600px){
	.style-single-sec{
		padding-top:32px;
	}
	
	.style-gallery-main-wrap{
		padding:0px 15px;
		margin-bottom:16px;
	}
	
	.style-gallery-thumbs{
		max-width:90%;
	}
	
	.style-gallery-prev,
	.style-gallery-next{
		width:30px;
		height:30px;
	}

	.style-gallery-prev::after,
	.style-gallery-next::after{
		width:7px;
		height:7px;
	}
	
	.style-single__table tr{
		display:flex;
		flex-direction:column;
		padding:8px 0px;
		border-bottom:1px solid #ccc;
	}
	.style-single__table tr:last-child{
		border:none;
	}
	
	.style-single__table th,
	.style-single__table td{
		width:100%;
		border:none;
		padding:0;
	}

	.style-single__staff,
	.style-single__related{
		margin-top:32px;
	}
	
	.style-single__staff-card{
		flex-direction:column;
		padding:32px 16px;
		font-size:14px;
	}

	.style-single__staff-card img{
		max-height:180px;
	}

	.style-single__staff-name{
		font-size:20px;
		text-align:center;
	}

	.style-single__related-thumb img{
		height:auto;
	}

	.style-single__related-title{
		font-size:13px;
		line-height:1.25;
	}
}

/*ヘアカタログ一覧*/
.style-search-sec{
	padding:60px 0 0;
}

.style-search-sec .container{
	max-width:1120px;
	width:92.48%;
	margin:auto;
}

.style-search-box{
	position:relative;
	margin:auto;
	padding:30px 20px;
	background:#f4f1ed;
}

.style-search-box__head{
	display:flex;
	align-items:baseline;
	gap:12px;
	margin-bottom:24px;
}

.style-search-box__head h2{
	margin:0;
	font-size:24px;
	line-height:1.2;
}

.style-search-box__head span{
	font-size:14px;
	color:#666;
}

.style-search-form{
	margin-top:24px;
}

.style-search-form__grid{
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:16px;
}

.style-search-form__col{
	background:transparent;
}

.style-search-form__col-toggle{
	position:relative;
	display:flex;
	align-items:center;
	justify-content:space-between;
	width:100%;
	margin:0 0 10px;
	padding:10px 14px;
	border:none;
	background:#c3b8aa;
	cursor:pointer;
	text-align:left;
}

.style-search-form__col-toggle h3{
	margin:0;
	padding:0;
	background:none;
	color:#fff;
	font-size:16px;
	line-height:1.4;
}

.style-search-form__col-icon{
	position:relative;
	flex:0 0 auto;
	width:18px;
	height:18px;
	margin-left:12px;
}

.style-search-form__col-icon::before{
	content:"";
	position:absolute;
	top:50%;
	left:50%;
	width:16px;
	height:2px;
	background:#fff;
	transform:translate(-50%, -50%);
}

.style-search-form__col-icon::after{
	content:"";
	position:absolute;
	top:50%;
	left:50%;
	width:2px;
	height:16px;
	background:#fff;
	transform:translate(-50%, -50%);
	transition:opacity .3s ease;
}

.style-search-form__col.is-open .style-search-form__col-icon::after{
	opacity:0;
}

.style-search-form__col-body{
	overflow:hidden;
}

.style-search-form__items{
	border:1px solid #ddd;
	background:#fff;
}

.style-search-form__item{
	display:flex;
	align-items:center;
	padding:12px 14px;
	border-bottom:1px solid #eee;
	cursor:pointer;
}

.style-search-form__item:last-child{
	border-bottom:none;
}

.style-search-form__item input{
	margin-right:10px;
}

.style-search-form__empty{
	margin:0;
	padding:16px 14px;
	color:#666;
	font-size:14px;
	line-height:1.7;
}

.style-search-form__buttons{
	display:flex;
	justify-content:center;
	gap:12px;
	margin-top:24px;
}

.style-search-form__submit,
.style-search-form__reset{
	min-width:160px;
	height:46px;
	border:none;
	cursor:pointer;
	font-size:14px;
}

.style-search-form__submit{
	background:#111;
	color:#fff;
}

.style-search-form__reset{
	background:#ddd;
	color:#111;
}

.style-search-form__submit:disabled,
.style-search-form__reset:disabled{
	opacity:.6;
	cursor:not-allowed;
}

/* =========================
   Archive list
========================= */
.style-archive-wrap{
	position:relative;
	min-height:120px;
}

.style-archive-list{
	display:flex;
	flex-wrap:wrap;
	gap:24px 10px;
}

.style-archive-card{
	width:calc((100% - 30px) / 4);
}

.style-archive-card__link{
	display:block;
	text-decoration:none;
	color:inherit;
}

.style-archive-card__thumb{
	margin:0;
	overflow:hidden;
	background:#f3f3f3;
	aspect-ratio:4 / 5;
}

.style-archive-card__thumb img{
	display:block;
	width:100%;
	height:100%;
	object-fit:cover;
	transition:0.4s;
}

.style-archive-card__title{
	margin-top:4px;
	font-size:15px;
	line-height:1.5;
}

/* =========================
   Loading
========================= */
.style-archive-loading{
	position:absolute;
	inset:0;
	display:flex;
	align-items:center;
	justify-content:center;
	background:rgba(255,255,255,.72);
	opacity:0;
	visibility:hidden;
	transition:opacity .25s ease, visibility .25s ease;
	z-index:5;
}

.style-archive-wrap.is-loading .style-archive-loading{
	opacity:1;
	visibility:visible;
}

.style-archive-loading__spinner{
	width:42px;
	height:42px;
	border:3px solid #ddd;
	border-top-color:#111;
	border-radius:50%;
	animation:styleLoadingSpin .8s linear infinite;
}

@keyframes styleLoadingSpin{
	to{
		transform:rotate(360deg);
	}
}

#js-style-archive-result.is-loading{
	opacity:.5;
	pointer-events:none;
}

/* =========================
   Responsive
========================= */
@media (max-width:767px){
	.style-search-box{
		padding:20px 14px;
	}

	.style-search-box__head{
		display:block;
	}

	.style-search-box__head h2{
		font-size:30px;
		margin-bottom:6px;
	}

	.style-search-form__grid{
		grid-template-columns:1fr;
	}

	.style-search-form__buttons{
		flex-direction:column;
	}

	.style-search-form__submit,
	.style-search-form__reset{
		width:100%;
	}

	.style-archive-card{
		width:calc((100% - 10px) / 2);
	}
}

@media (max-width:600px){
	.style-search-sec{
		padding:40px 0 0;
	}

	.style-search-box{
		padding:16px 12px;
	}

	.style-search-box__head h2{
		font-size:26px;
	}

	.style-search-form__col-toggle{
		padding:9px 12px;
	}

	.style-search-form__col-toggle h3{
		font-size:15px;
	}

	.style-search-form__item{
		padding:10px 12px;
	}

	.style-archive-list{
		gap:8px;
	}

	.style-archive-card{
		width:calc((100% - 8px) / 2);
	}

	/* 600px前後は少し縦長にして窮屈なトリミングを防ぐ */
	.style-archive-card__thumb{
		aspect-ratio:4 / 5;
	}
}

/*スタッフ一覧*/

.staff-archive-sec{
	padding:120px 0;
}

.staff-archive-sec .container{
	max-width:1120px;
	width:92.48%;
	margin:auto;
}

.staff-archive-list{
	display:flex;
	flex-wrap:wrap;
	gap:40px 24px;
}

.staff-archive-card{
	width:calc((100% - 72px) / 4);
}
.staff-archive-card__link{
	display:block;
	text-decoration:none;
	color:inherit;
}

.staff-archive-card__thumb{
	margin:0;
	overflow:hidden;
	background:#f3f3f3;
	aspect-ratio:4 / 5;
}

.staff-archive-card__thumb img{
	display:block;
	width:100%;
	height:100%;
	object-fit:cover;
	transition:0.4s;
}



.staff-archive-card__body{
	padding-top:12px;
}

.staff-archive-card__name{
	margin:0;
	font-size:18px;
	line-height:1.5;
	font-weight:700;
	color:#111;
	text-align:center;
}

.staff-archive-empty{
	text-align:center;
	font-size:16px;
	line-height:1.8;
	color:#666;
}

@media (max-width:1000px){
	.staff-archive-card{
		width:calc((100% - 48px) / 3);
	}
}

@media (max-width:700px){
	.staff-archive-card{
		width:calc((100% - 16px) / 2);
	}
	.staff-archive-list{
		gap:24px 10px;
	}
}


@media (max-width:600px){
	.staff-archive-sec{
		padding:70px 0;
	}

	.staff-archive-list{
		gap:24px 10px;
	}

	.staff-archive-card{
		width:calc((100% - 10px) / 2);
	}

	.staff-archive-card__body{
		padding-top:8px;
	}

	.staff-archive-card__name{
		font-size:15px;
		line-height:1.4;
	}
}

/*スタッフ詳細*/
.staff-single-sec{
	padding:120px 0;
}

.staff-single-sec .container{
	max-width:1120px;
	width:92.48%;
	margin:auto;
}

.staff-single{
	max-width:1000px;
	margin:0 auto;
	min-width:0;
}

.staff-single__main{
	display:grid;
	grid-template-columns:minmax(0, 32%) minmax(0, 68%);
	gap:48px;
	align-items:start;
	margin-bottom:80px;
	min-width:0;
}

.staff-single__main > *{
	min-width:0;
}

.staff-single__thumb-wrap{
	width:100%;
	min-width:0;
}

.staff-single__thumb{
	margin:0;
	overflow:hidden;
	background:#f3f3f3;
	aspect-ratio:4 / 5;
}

.staff-single__thumb img{
	display:block;
	width:100%;
	height:100%;
	object-fit:cover;
}

.staff-single__right{
	min-width:0;
}

.staff-single__intro{
	margin-bottom:32px;
}

.staff-single__catch{
	margin:0 0 12px;
	font-size:14px;
	line-height:1.7;
	color:#666;
}

.staff-single__name{
	margin:0 0 8px;
	font-size:36px;
	line-height:1.3;
	font-weight:700;
	color:#111;
}

.staff-single__job{
	margin:0 0 24px;
	font-size:16px;
	line-height:1.6;
	color:#555;
}

.staff-single__comment p{
	margin:0;
	font-size:16px;
	line-height:2;
	color:#222;
}

.staff-single__sns{
	display:flex;
	flex-wrap:wrap;
	gap:10px;
	margin-top:28px;
}

.staff-single__sns a{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-width:120px;
	height:42px;
	padding:0 18px;
	background:#111;
	color:#fff;
	text-decoration:none;
	font-size:14px;
	transition:opacity .3s ease;
}


.staff-single__section{
	margin-top:64px;
}

.staff-single__profile{
	margin-top:0;
}

.staff-single__section:first-of-type{
	margin-top:0;
}

.staff-single__section-title{
	margin:0 0 20px;
	font-size:28px;
	line-height:1.4;
	font-weight:700;
	color:#111;
	border-bottom:1px solid #BC3829;
	padding-bottom:8px;
}

.staff-single__table-wrap{
	overflow-x:auto;
	min-width:0;
}

.staff-single__table{
	width:100%;
	border-collapse:collapse;
	background:#fff;
	table-layout:fixed;
}

.staff-single__table th,
.staff-single__table td{
	border:1px solid #ddd;
	padding:14px 16px;
	vertical-align:top;
	font-size:15px;
	line-height:1.8;
	word-break:break-word;
	overflow-wrap:anywhere;
}

.staff-single__table th{
	width:180px;
	background:#f7f7f7;
	font-weight:700;
	text-align:left;
}

.staff-single__related-list{
	display:flex;
	flex-wrap:wrap;
	gap:24px 12px;
}

.staff-single__related-card{
	width:calc((100% - 36px) / 4);
}

.staff-single__related-card a{
	display:block;
	text-decoration:none;
	color:inherit;
}

.staff-single__related-thumb{
	margin:0;
	overflow:hidden;
	background:#f3f3f3;
	aspect-ratio:4 / 5;
}

.staff-single__related-thumb img{
	display:block;
	width:100%;
	height:100%;
	object-fit:cover;
	transition:transform .4s ease;
}



.staff-single__related-name{
	margin:8px 0 0;
	font-size:15px;
	line-height:1.5;
	text-align:center;
}

.staff-single__styles{
	margin-top:64px;
}

.staff-single__style-list{
	display:flex;
	flex-wrap:wrap;
	gap:24px 12px;
}

.staff-single__style-card{
	width:calc((100% - 36px) / 4);
}

.staff-single__style-card a{
	display:block;
	text-decoration:none;
	color:inherit;
}

.staff-single__style-thumb{
	margin:0;
	overflow:hidden;
	background:#f3f3f3;
	aspect-ratio:4 / 5;
}

.staff-single__style-thumb img{
	display:block;
	width:100%;
	height:100%;
	object-fit:cover;
	transition:0.4s;
}



.staff-single__style-title{
	margin:8px 0 0;
	font-size:15px;
	line-height:1.5;
	text-align:center;
}

.staff-single__more{
	margin-top:32px;
	text-align:center;
}

.staff-single__more-btn{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-width:220px;
	padding:14px 24px;
	border:none;
	background:#BC3829;
	color:#fff;
	font-size:15px;
	line-height:1;
	cursor:pointer;
	transition:opacity .3s ease;
}



.staff-single__more-btn:disabled{
	opacity:.7;
	cursor:default;
}



@media (max-width:800px){
	.staff-single__main{
		grid-template-columns:1fr;
		gap:28px;
		margin-bottom:56px;
	}

	.staff-single__thumb-wrap{
		max-width:420px;
		width:100%;
		margin:0 auto;
	}

	.staff-single__intro{
		margin-bottom:28px;
	}

	.staff-single__related-card{
		width:calc((100% - 12px) / 3);
	}
	.staff-single__related-list{
		gap:24px 6px;
	}
	
	.staff-single__style-card{
		width:calc((100% - 12px) / 2);
	}
}

@media (max-width:600px){
	.staff-single-sec{
		padding:70px 0;
	}

	.staff-single__name{
		font-size:28px;
	}

	.staff-single__job{
		font-size:15px;
	}

	.staff-single__comment p{
		font-size:15px;
		line-height:1.9;
	}

	.staff-single__section{
		margin-top:48px;
	}

	.staff-single__profile{
		margin-top:0;
	}

	.staff-single__section-title{
		font-size:24px;
		margin-bottom:16px;
	}

	.staff-single__table th,
	.staff-single__table td{
		padding:12px 10px;
		font-size:14px;
		line-height:1.7;
	}

	.staff-single__table th{
		width:120px;
	}

	.staff-single__related-list{
		gap:16px 8px;
	}

	.staff-single__related-card{
		width:calc((100% - 8px) / 2);
	}

	.staff-single__related-name{
		font-size:14px;
	}
	.staff-single__style-list{
		gap:16px 8px;
	}

	.staff-single__style-card{
		width:calc((100% - 8px) / 2);
	}

	.staff-single__style-title{
		font-size:14px;
	}
}


/*料金メニュー*/
.system-sec{
	padding:80px 0 120px;
}

.system-sec__inner{
	max-width:1120px;
	width:92.48%;
	margin:0 auto;
}

.system-anchor{
	position:sticky;
	top:20px;
	z-index:10;
	margin-bottom:40px;
}

.system-anchor__list{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	gap:10px;
	padding:16px;
	background:rgba(255,255,255,.92);
	backdrop-filter:blur(8px);
	border:1px solid #e5e5e5;
}

.system-anchor__link{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-height:44px;
	padding:0 18px;
	background:#111;
	color:#fff;
	text-decoration:none;
	font-size:14px;
	line-height:1.4;
	transition:opacity .3s ease;
	width:31%;
}



.system-menu{
	display:flex;
	flex-direction:column;
	gap:56px;
}

.system-menu__section{
	scroll-margin-top:120px;
}

.system-menu__head{
	margin-bottom:20px;
}

.system-menu__label{
	display:inline-block;
	margin-bottom:10px;
	padding:6px 12px;
	background:#c3b8aa;
	color:#fff;
	font-size:12px;
	letter-spacing:.08em;
	line-height:1;
}

.system-menu__title{
	margin:0;
	font-size:28px;
	line-height:1.3;
	color:#111;
	padding-bottom:8px;
	border-bottom:1px dashed #ababab;
}

.system-menu__cards{
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:20px;
}

.system-menu-card{
	padding:24px;
	background:#fff;
	border:1px solid #e5e5e5;
}

.system-menu-card__head{
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	justify-content:space-between;
	gap:12px;
	margin-bottom:14px;
}

.system-menu-card__title{
	margin:0;
	font-size:22px;
	line-height:1.4;
	color:#111;
}

.system-menu-card__price{
	margin:0;
	font-size:18px;
	line-height:1.4;
	font-weight:700;
	color:#111;
	white-space:nowrap;
}

.system-menu-card__desc{
	margin:0;
	font-size:15px;
	line-height:1.9;
	color:#555;
}

.system-menu-card__desc strong{
	color:#111;
}

.system-menu-card__sublist{
	margin-top:16px;
	padding-top:16px;
	border-top:1px solid #e5e5e5;
}

.system-menu-card__sublist p{
	margin:0 0 12px;
	font-size:14px;
	line-height:1.8;
	color:#555;
}

.system-menu-card__sublist p:last-child{
	margin-bottom:0;
}

.system-note-box{
	padding:24px;
	background:#f7f4ef;
	border:1px solid #e5e5e5;
}

.system-note-box p{
	margin:0;
	font-size:15px;
	line-height:1.9;
	color:#555;
}


@media (max-width:767px){
	.system-sec{
		padding:56px 0 80px;
	}

	.system-anchor{
		position:static;
		margin-bottom:28px;
	}

	.system-anchor__list{
		padding:12px;
		gap:8px;
		justify-content:flex-start;
	}

	.system-anchor__link{
		min-height:40px;
		padding:0 14px;
		font-size:13px;
		width:48%;
	}

	.system-menu{
		gap:40px;
	}

	.system-menu__section{
		scroll-margin-top:80px;
	}

	.system-menu__title{
		font-size:26px;
	}

	.system-menu__cards{
		grid-template-columns:1fr;
		gap:16px;
	}

	.system-menu-card{
		padding:18px 16px;
	}

	.system-menu-card__title{
		font-size:19px;
	}

	.system-menu-card__price{
		font-size:16px;
	}

	.system-menu-card__desc{
		font-size:14px;
		line-height:1.8;
	}

	.system-note-box{
		padding:18px 16px;
	}

	.system-note-box p{
		font-size:14px;
		line-height:1.8;
	}
}

/* Hover */
/* =========================================================
   Base transition
========================================================= */

a,
.more-btn,
.more-btn svg,
.fv-info-description,
.fv-info-description svg,
.news-flex-right ul li a::after,
.news-flex-right .to-news-btn,
.news-flex-right .to-news-btn svg,
.news-flex-right .to-news-btn svg path,
.qa-flex a,
.style-card__thumb img,
.top-staff-card__thumb img,
.p-blog-card img,
.style-archive-card__thumb img,
.archive-card__thumb img,
.style-single__related-thumb img,
.staff-archive-card__thumb img,
.staff-single__style-thumb img,
.staff-single__related-thumb img,
.top-staff-nav__btn,
.style-search-form__submit,
.style-search-form__reset,
.style-gallery-prev,
.style-gallery-next,
.qa-ac summary,
.style-single__more-btn,
.staff-single__more button {
	transition: 0.4s;
}


/* =========================================================
   PC only
========================================================= */

@media (hover: hover) and (pointer: fine) {

	a:hover {
		opacity: 0.7;
	}

	.cta--flex__right a:first-child,
	.footer-right a.footer-tel,
	.about-info-cta__tel {
		pointer-events: none;
		cursor: default;
	}

	.header__flex--right ul li:hover a,
	.footer-center ul li:hover a,
	.fv-info-description:hover {
		color: #666;
	}

	.fv-info-description:hover svg {
		right: 30px;
	}

	.more-btn:hover {
		background: #000;
	}

	.more-btn:hover svg {
		transform: translateX(10px);
	}

	.news-flex-right ul li:hover a::after {
		right: 10px;
	}

	.news-flex-right .to-news-btn:hover {
		background: #000;
		color: #fff;
	}

	.news-flex-right .to-news-btn:hover svg {
		right: 8px;
	}

	.news-flex-right .to-news-btn:hover svg path {
		stroke: #fff;
	}

	.qa-flex a:hover {
		background: #b33a2e;
		color: #fff;
		border-color: #b33a2e;
	}

	.style-card__thumb:hover img,
	.top-staff-card__thumb:hover img,
	.p-blog-card:hover img,
	.style-archive-card__thumb:hover img,
	.archive-card__thumb:hover img,
	.style-single__related-thumb:hover img,
	.staff-archive-card__thumb:hover img,
	.staff-single__style-thumb:hover img,
	.staff-single__related-thumb:hover img {
		transform: scale(1.1);
	}

	.top-staff-nav__btn:hover,
	.style-search-form__reset:hover,
	.style-gallery-prev:hover,
	.style-gallery-next:hover {
		opacity: 0.7;
	}

	.style-search-form__submit:hover,
	.style-single__more-btn:hover,
	.staff-single__more button:hover {
		background: #666;
	}

	.qa-ac summary:hover {
		opacity: 0.4;
	}
}


/* =========================================================
   Touch only
========================================================= */

@media (hover: none) and (pointer: coarse) {

	a:active {
		opacity: 0.7;
	}

	.header__flex--right ul li:active a,
	.footer-center ul li:active a,
	.fv-info-description:active {
		color: #666;
	}

	.fv-info-description:active svg {
		right: 30px;
	}

	.more-btn:active {
		background: #000;
	}

	.more-btn:active svg {
		transform: translateX(10px);
	}

	.news-flex-right ul li:active a::after {
		right: 10px;
	}

	.news-flex-right .to-news-btn:active {
		background: #000;
		color: #fff;
	}

	.news-flex-right .to-news-btn:active svg {
		right: 8px;
	}

	.news-flex-right .to-news-btn:active svg path {
		stroke: #fff;
	}

	.qa-flex a:active {
		background: #b33a2e;
		color: #fff;
		border-color: #b33a2e;
	}

	.style-card__thumb:active img,
	.top-staff-card__thumb:active img,
	.p-blog-card:active img,
	.style-archive-card__thumb:active img,
	.archive-card__thumb:active img,
	.style-single__related-thumb:active img,
	.staff-archive-card__thumb:active img,
	.staff-single__style-thumb:active img,
	.staff-single__related-thumb:active img {
		transform: scale(1.1);
	}

	.top-staff-nav__btn:active,
	.style-search-form__reset:active,
	.style-gallery-prev:active,
	.style-gallery-next:active {
		opacity: 0.7;
	}

	.style-search-form__submit:active,
	.style-single__more-btn:active,
	.staff-single__more button:active {
		background: #666;
	}

	.qa-ac summary:active {
		opacity: 0.4;
	}
}