@charset "utf-8";
/*--------------------------------------
 top
--------------------------------------*/
#main-slides{
	position: relative;
	z-index: 5;
	width: 100%;
}
#main-slides .slide video{
	width: 100%;
	height: auto;
}
#main-slides .slick-dots{
	text-align: left;
	bottom: -11px;
}
#main-slides .slick-dots li,
#main-slides .slick-dots li button{
	width: 50px;
	height: 4px;
	padding: 0;
}
#main-slides .slick-dots li button:before{
	content: "";
	width: 50px;
	height: 4px;
	background: #E5E5E5;
	opacity: 1;
}
#main-slides .slick-dots li.slick-active button:before{
	background: #C34545;
}
.bnr-slides-wrap{
	margin-top: 50px;
}
#bnr-slides .gallery-cell{
	margin: 0 10px;
}
.news-list{
	display: grid;
	grid-template-columns: calc(50% - 15px) calc(50% - 15px);
	gap: 30px;
}
.news-list{
	& time{
		font-size: 1.2rem;
		display: block;
		margin: 15px 0 5px;
		padding: 0 20px;
	}
	& h2{
		line-height: 1.5;
		padding: 0 20px;
	}
}
.btn-wrap-center{
	display: flex;
	justify-content: center;
	margin: 30px 0;
}
.furisode-mainimg{
	display: flex;
	position: relative;
	.img{
		width: 63%;
	}
	.roboto-condenced{
		font-size: 2.6rem;
		background: #fff;
		padding: 12px 18px;
		position: absolute;
		bottom: 30%;
		right: 20px;
		line-height: 1;
	}
	.lead{
		font-size: 1.8rem;
		line-height: 1.5;
		position: absolute;
		left: calc(63% + 20px);
		bottom: calc(30% - 40px);
		padding-right: 20px;
	}
	@media only screen and (max-width: 480px) {
		.lead{
			left: auto;
			right: 20px;
			padding-right: 0;
		}
	}
}
.furisode-mainimg{
	&.new-furisode{
		background: #D6C6C6;
	}
	&.new-hakama{
		background: #E7D5A3;
	}
	&.hakama-rental{
		background: #ECE5D3;
	}
	&.furisode-purchase{
		background: #E1AFAF;
	}
	&.furisode-rental{
		background: #E5CCCC;
	}
	&.furisode-remake{
		background: #F5F5F5;
	}
	&.furisode-photo{
		background: #B2C7C8;
	}
}
#top main .en-title{
	margin-top: 70px;
}
.feature-list{
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 15px;
	& a{
		position: relative;
	}
	& h4{
		background: rgba(32,22,19,0.69);
		text-align: center;
		position: absolute;
		width: 100%;
		top: 50%;
		left: 0;
		color: #fff;
		line-height: 1.5;
		font-size: 2.4rem;
		font-weight: 500;
		padding: 10px 0;
		transform: translateY(-50%);
	}
}
.inpage-furisode-nav{
	position: relative;
	margin-bottom: 20px;
}
.inpage-furisode-nav .furisode-nav > ul{
	gap: 2px;
}
.inpage-furisode-nav .furisode-nav > ul > li{
	flex: 1 1 0;
	position: static;
}
.inpage-furisode-nav .furisode-nav > ul > li > a{
	white-space: wrap;
	line-height: 1.2;
	height: 100%;
	align-items: center;
}
.inpage-furisode-nav .furisode-nav .color-dropdown,
.inpage-furisode-nav .furisode-nav .price-dropdown{
	width: 100%;
}
.inview.fadein{
	opacity: 0;
	transition: opacity 0.5s linear;
}
.inview.fadein.active{
	opacity: 1;
}
/*--------------------------------------
 page common
--------------------------------------*/
#site-main::before{
  content: "";
  display: table;
}
.page-title{
	text-align: center;
	font-size: 2.4rem;
	font-weight: 700;
	margin-top: 70px;
	padding: 0 20px 0 20px;
	margin-bottom: 50px;
	line-height: 1.5;
	&::first-letter{
		color: #C34545;
	}
	&::after{
		content: "";
		display: block;
		width: 100%;
		height: 4px;
		max-width: 350px;
		background: url("../common/img/page/pagetitle-underline.svg");
		background-position: top center;
		background-size: 350px 4px;
		margin: 20px auto 0 auto;
	}
}
.page-title + section{
	margin-top: 0;
}
.page-content p{
	line-height: 2;
}
.page-content .main{
	text-align: center;
	& p{
		text-align: center;
		margin-top: 1em;
	}
}
.page-content .en-title{
	margin-top: 70px;
	line-height: 1;
}
.page-note{
	margin: 0 20px;
	border: 1px solid #C34545;
	line-height: 1.5;
	padding: 20px;
	margin-bottom: 40px;
	.red{
		color: #C34545;
	}
}
/* mouse over */
.fade-hover{
	opacity: 1;
	transition: opacity 0.3 ease;
}
.fade-hover:hover{
	opacity: 0.7;
}
figure.main img{
	width: 100%;
}
/* 見出し */
.en-title{
	font-family: 'Roboto Condensed', sans-serif;
	font-weight: 800;
	font-size: 2.6rem;
	text-align: center;
}
.en-title-jp{
	text-align: center;
	font-size: 1.6rem;
	margin-top: 10px;
	margin-bottom: 30px;
}
.en-title-jp::before,
.en-title-jp::after{
	content: '―';
	margin: 0 10px;
}
.bar-blk{
	background: #201613;
	color: #fff;
	text-align: center;
	padding: 15px 0;
	font-size: 2rem;
	margin-bottom: 40px;
}
.underline-red{
	color: #C34545;
	font-size: 1.6rem;
	font-weight: 500;
	padding-bottom: 15px;
	margin-bottom: 20px;
	border-bottom: 1px solid #C34545;
}

.al-center{
	text-align: center;
}

/*--------------------------------------
 about
--------------------------------------*/
.num-title{
	font-size: 2.4rem;
	line-height: 1.3;
	font-weight: 700;
	display: flex;
	align-items: center;
	margin-top: 70px;
	padding-right: 20px;
	margin-bottom: 10px;
	.num{
		font-size: 8.6rem;
		line-height: 1;
		color: #E3E3E3;
		font-family: 'Times New Roman', Times, serif;
		font-style: italic;
		font-weight: normal;
		margin-right: 20px;
	}
}
#about .reason .en-title-jp + h3{
	margin-top: 0;
}
#about .reason p{
	margin: 1em 20px;
}
.stat{
	background: #F8F2F2;
	padding: 30px 40px;
	margin: 20px 40px;
	& h4{
		font-size: 2rem;
		font-weight: 700;
		text-align: center;
		margin-bottom: 30px;
	}
}
.stat-list{
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
	& li{
		font-size: 2rem;
		font-family: "Noto Serif JP", serif;
		font-weight: 500;
	}
	& strong{
		font-size: 2.6rem;
		color: #C34545;
	}
}
.indent{
	margin-right: 20px;
	margin-left: 20px;
}
/*--------------------------------------
 service
--------------------------------------*/
.service-content .h2-catch{
	text-align: center;
	display: block;
	padding: 12px 0;
	width: 300px;
	margin: auto;
	background: #C34545;
	color: #fff;
	font-weight: 700;
	position: relative;
	margin-bottom: 25px;
	line-height: 1;
	&::after{
		content: "";
		width: 0;
		height: 0;
		border-style: solid;
		border-right: 24px solid transparent;
		border-left: 24px solid transparent;
		border-top: 15px solid #C34545;
		border-bottom: 0;
		position: absolute;
		top: 100%;
		left: calc(50% - 24px);
	}
}
.service-content h2{
	text-align: center;
	color: #C34545;
	font-size: 2.4rem;
	line-height: 1.5;
	font-weight: 700;
	margin-bottom: 20px;
}
.service-content .price,
.service-price{
	text-align: center;
	font-size: 1.6rem;
	font-weight: 700;
	margin: 20px 0 25px;
	.num{
		color: #C34545;
		font-size: 5rem;
	}
	.yen{
		color: #C34545;
		font-size: 3rem;
	}
}
.service-content .options{
	text-align: center;
	line-height: 2;
}
.service-content p{
	line-height: 2;
}
.option-icons{
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 15px;
	margin-top: 50px;
	margin-bottom: 50px;
	padding-bottom: 35px;
	border-bottom: 1px solid #C34545;
	& li{
		display: flex;
		align-items: center;
		line-height: 1.5;
		font-size: 1.6rem;
		font-weight: 700;
	}
	.ico{
		margin-right: 15px;
	}
}
.option-title{
	background: #000;
	color: #fff;
	font-size: 2.6rem;
	margin: auto;
	width: 155px;
	text-align: center;
	padding: 10px 0;
	position: relative;
	& span{
		position: relative;
		z-index: 1;
	}
}
.option-title::before{
	content: "＋";
	display: block;
	width: 50px;
	height: 50px;
	border-radius: 50px;
	position: absolute;
	top: -25px;
	left: calc(50% - 25px);
	background: #000;
	font-weight: 500;
	padding-top: 3px;
}
#service .option-content{
	background: #F8F2F2;
	border: 1px solid #C34545;
	padding: 30px 20px;
	margin-top: 25px;
	& h4{
		text-align: center;
		font-weight: 700;
		font-size: 2.4rem;
	}
	.price{
		text-align: center;
		color: #C34545;
		font-size: 3.4rem;
		.yen{
			font-size: 2rem;
		}
	}
	& p{
		line-height: 2;
	}
}
.other-plan p{
	text-align: center;
}
.other-plan .furisode-nav{
	margin: 20px 0;
}
.furisode-collection{
	margin: 120px 0;
}
.grid-content-two{
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 50px 27px;
	margin: 40px 0;
	& h4{
		text-align: center;
		line-height: 2;
		font-size: 1.6rem;
		font-weight: 700;
		color: #C34545;
		margin-top: 10px;
		margin-bottom: 10px;
	}
}
.benefit-grid{
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 45px 20px;
	background: #E5CCCC;
	padding: 35px 20px;
	margin-top: 20px;
	margin-left: -20px;
	margin-right: -20px;
	margin-bottom: 20px;
	.col{
		background: #fff;
		display: flex;
		position: relative;
		.img{
			width: 45%;
			max-width: 150px;
			flex-shrink: 0;
			& img{
				width: 100%;
				height: 100%;
				object-fit: cover;
			}
		}
		.txt{
			padding: 10px;
			flex-grow: 1;
			display: flex;
			flex-direction: column;
			align-items: center;
			justify-content: center;
			& h4{
				text-align: center;
				font-size: 1.6rem;
				line-height: 1.5;
				font-weight: 700;
				margin-bottom: 4px;
				color: #C34545;
			}
			& p{
				font-size: 1.2rem;
				line-height: 1.5;
			}
			.en{
				font-family: 'Times New Roman', Times, serif;
				font-style: italic;
				font-size: 1.8rem;
				line-height: 1;
				color: #C34545;
				position: absolute;
				left: 0;
				bottom: 100%;
			}
		}
	}
}
@media only screen and (max-width: 768px) {
	.benefit-grid .col{
		display: block;
		.img {
			text-align: center;
			width: auto;
			max-width: none;
		}
	}
}
.service-content,
section.qa,
section.feature{
	margin-top: 140px;
	margin-bottom: 140px;
}
.furisode-mainimg + .service-content{
	margin-top: 30px;
}
.post-total{
	text-align: right;
	margin: 20px 0;
	padding: 0 20px;
}
.page-lead{
	text-align: center;
	font-size: 2.4rem;
	font-weight: 700;
	line-height: 2;
	margin-bottom: 40px;
	margin-top: 30px;
}
.service-content > img{
	margin-bottom: 20px;
}
#service .indent{
}
.price-table{
	margin: 30px 0;
	width: 100%;
	line-height: 2;
	margin: 50px 0;
	& th{
		background: #8D8D8D;
		color: #fff;
		font-size: 1.6rem;
		font-weight: 700;
		padding: 15px 15px 15px 40px;
		border-bottom: 1px solid #fff;
		position: relative;
		vertical-align: middle;
		width: 50%;
		&::before{
			content: "";
			display: block;
			width: 4px;
			height: calc(100% - 30px);
			position: absolute;
			left: 10px;
			top: 15px;
			background: #fff;
		}
	}
	& td{
		background: #F5F5F5;
		padding: 15px 40px 15px 0;
		border-bottom: 1px solid #fff;
		color: #C34545;
		font-size: 2rem;
		font-weight: 700;
		text-align: right;
		vertical-align: middle;
		.yen{
			font-size: 1.4rem;
		}
	}
	& small{
		font-weight: normal;
		display: block;
		line-height: 1.5;
		margin-top: 5px;
	}
}
#service.mama .service-content{
	& h2{
		margin: 100px 0 50px;
	}
}
#service.photo-plan .service-content{
	& h2{
		margin-bottom: 40px;
	}
	.price{
		margin-top: 0;
	}
}
.hair-grid{
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 13px;
}
.txt-img-grey{
	background: #F5F5F5;
	padding: 20px;
	display: flex;
	gap: 20px;
	margin: 30px 0;
	.img{
		flex-shrink: 0;
		width: 34%;
	}
	h4{
		font-weight: 700;
		font-size: 2rem;
		line-height: 1.75;
		color: #C34545;
		margin-bottom: 20px;
	}
}
#service.photo-plan-own .service-content{
	.grid-content-two{
		margin-bottom: 100px;
	}
}
.eighteenth .options + .h2-catch{
	margin-top: 45px;

}
.eighteenth .blue-bg{
	margin-top: 40px;
}
.ico-lead{
	display: flex;
	gap: 20px;
	margin-top: 80px;
	margin-bottom: 20px;
	.img{
		width: 20%;
		max-width: 102px;
		flex-shrink: 0;
	}
}
/*--------------------------------------
 feature hair
--------------------------------------*/
main article p,
.entry-content p{
	line-height: 2;
}
.page-nav{
	margin: 50px 0 100px 0;
}
.page-nav > ul{
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	gap: 10px;
}
.page-nav > ul > li{
	position: relative;
	flex: 1 1 0;
}
.page-nav > ul > li > a{
	display: flex;
	padding: 10px 25px 10px 14px;
	background: #201613;
	color: #fff;
	font-size: 1.4rem;
	position: relative;
	white-space: nowrap;
	&.active{
		background: #C34545;
	}
}
.page-nav > ul > li > a::after{
	content: '';
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-right: 4px solid transparent;
	border-left: 4px solid transparent;
	border-top: 7px solid #fff;
	border-bottom: 0;
	position: absolute;
	top: calc(50% - 2px);
	right: 8px;
}
.page-nav > ul > li.current-cat a{
	background: #C34545;
}
.content p{
	margin: 1em 0;
}
p.center{
	text-align: center;
}
article > section{
	margin: 120px 0;
}
article > section:last-child{
	margin-bottom: 0;
}
/*--------------------------------------
 feature special
--------------------------------------*/
.collection-grid{
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
	& h4{
		font-size: 2.4rem;
		font-weight: 700;
		position: relative;
		border-left: 4px solid #000;
		padding-left: 10px;
		&::before{
			content: "";
			display: block;
			width: 4px;
			height: 50%;
			background: #C34545;
			position: absolute;
			top: 0;
			left: -4px;
		}
	}
	.num{
		color: #C34545;
		margin-top: 1em;
	}
}
.price-wrap{
	background: #F8F2F2;
	margin-top: 20px;
	display: grid;
	grid-template-columns: 1fr 1fr;
	padding: 20px 40px;
	font-weight: 700;
	font-size: 1.6rem;
	margin-bottom: 60px;
	& p{
		line-height: 1.5;
	}
	.price{
		color: #C34545;
		font-size: 3.6rem;
		& small{
			font-size: 2.6rem;
		}
	}
	.yen{
		color: #C34545;
		font-size: 2rem;
	}
}
.service-photo-gallery .ngg-navigation{
	display: none !important;
}
/*--------------------------------------
 feature lowcost
--------------------------------------*/
h2.blue-bg{
	background: #B7EFEF;
	text-align: center;
	padding: 20px 0;
	text-align: center;
	font-size: 2.4rem;
	font-weight: 700;
	margin-top: 120px;
	color: #202020;
}
.en-title-jp + h2.blue-bg{
	margin-top: 0;
}
/*--------------------------------------
 feature freefitting
--------------------------------------*/
.freefitting .img{
	padding: 0 20px;
	margin-bottom: 20px;
}
p + .underline-red{
	margin-top: 50px;
}

/*--------------------------------------
 news
--------------------------------------*/
.cat-nav{
	padding-top: 15px;
	margin-bottom: 50px;
	.en-title{
		font-size: 2.4rem;
	}
	.page-nav{
		margin-top: 20px;
		margin-bottom: 0px;
	}
}
.post-meta{
	display: flex;
	justify-content: center;
	gap: 20px;
	margin-top: -20px;
	margin-bottom: 50px;
	& li{
		background: #F5F5F5;
		padding: 10px 20px;
		border-radius: 100px;
	}
}
.wp-pagenavi {
  text-align: center;
  margin: 60px 0 20px;
}
.wp-pagenavi a, .wp-pagenavi span {
  display: inline-block;
  padding: 8px 12px;
  margin: 0 3px;
  background: #F5F5F5;
  text-decoration: none;
  font-size: 14px;
}
.wp-pagenavi a:hover {
  background: #e0e0e0;
  color: #000;
}
.wp-pagenavi span.current {
  background: #C34545;
  color: #fff;
  font-weight: bold;
}
/*--------------------------------------
 qa
--------------------------------------*/
.qa-content{
	.qa-title{
		background: #444444;
		color: #fff;
		font-weight: 600;
		padding: 10px 0 10px 17px;
		cursor: pointer;
		position: relative;
		.num{
			color: #E3BC9D;
			margin-right: 17px;
			font-family: 'Times New Roman', Times, serif;
			font-style: italic;
			font-weight: 400;
			font-size: 1.8rem;
		}
	}
	.qa-answer{
		font-size: 1.2rem;
		padding: 10px 20px 20px 20px;
		line-height: 2;
	}
}
.qa-content + .qa-content{
	margin-top: 12px;
}
.qa-content .ico{
	display: inline-block;
	width: 38px;
	height: 100%;
	position: absolute;
	top: 0;
	right: 0;
	background: #E3BC9D;
}
.qa-content .ico:before,
.qa-content .ico:after{
	content: "";
	display: block;
	width: 15px;
	height: 2px;
	background: #fff;
	position: absolute;
	top: 18px;
	left: 12px;
}
.qa-content .ico:after{
	transform: rotate(90deg);
	transition: all 0.2s linear;
}
.qa-content .active .ico:after{
	transform: rotate(0deg);
}
.qa-answer-btn{
	display: flex;
	align-items: center;
	gap: 20px;
	.qa-btn{
		flex-shrink: 0;
	}
}
.btn-gold{
	background: #E3BC9D;
	display: inline-block;
	padding: 10px 15px;
}
#faq-detail{
	margin-bottom: 140px;
}
/*--------------------------------------
 products
--------------------------------------*/
.productsorder{
	text-align: right;
	margin-top: 60px;
	margin-bottom: 25px;
	padding: 0 20px;
	.active{
		color: #C34545;
	}
}
.productlist{
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 50px 11px;
	.postthumbnail{
		display: block;
		margin-bottom: 10px;
	}
}
.productlist.two{
	grid-template-columns: 1fr 1fr;
	gap: 30px 30px;
	max-width: 620px;
	margin-left: auto;
	margin-right: auto;
}
.productlist.four{
	grid-template-columns: 1fr 1fr 1fr 1fr;
}
.productlist.five{
	grid-template-columns: 1fr 1fr 1fr;
}
@media only screen and (max-width: 460px) {
	.productlist{
		grid-template-columns: 1fr 1fr;
		gap: 50px 10px !important;
	}
}
.productlist.sp-three{
	grid-template-columns: 1fr 1fr 1fr;
}
.productlist li{
	position: relative;
	text-align: center;
	.postthumbnail img{
		width: 100%;
	}
}
.productlist .fewlefticon{
	position: absolute;
	top: 0;
	right: 0;
}
ul.productlist li.hakama .favbtn,
ul.productlist li.mens .favbtn,
ul.productlist li.normal-rental .favbtn,
ul.productlist li.products-normal .favbtn,
#products.hakama .favbtn,
#products.mens .favbtn,
#products.normal-rental .favbtn,
#products.products-normal .favbtn,
#products.hakama #contantbtn_fav p,
#products.mens #contantbtn_fav p,
#products.normal-rental #contantbtn_fav p,
#products.products-normal #contantbtn_fav p{
  display: none;
}
.productlist .size{
	text-align: center;
	margin: 10px 0;
	span{
		display: inline-block;
		text-align: center;
		margin: 10px 0;
		background: #F5F5F5;
		margin: 0 auto;
		padding: 6px 10px;
		border-radius: 100px;
 }
}
.productlist .new-arrival{
	position: absolute;
	top: 0;
	left: 5px;
}
.productlist .new-arrival img{
	width: 40px;
	height: auto;
}
ul.productlist .nodata p{
	white-space: nowrap;
}
.postthumbnail-wrap{
	position: relative;
}
ul.ranklist li:before{
  content: "1";
  display: block;
  width: 28px;
  height: 28px;
  line-height: 28px;
  text-align: center;
  border-radius: 100px;
  background: #FFAA00;
  color: #fff;
  font-size: 15px;
  font-weight: bold;
  position: absolute;
  top: 3px;
  left: 3px;
  z-index: 1;
}
ul.ranklist li:nth-child(2):before{
  content: "2";
  background: #E6C789;
}
ul.ranklist li:nth-child(3):before{
  content: "3";
  background: #B88318;
}
ul.ranklist li:nth-child(4):before{
  content: "4";
  background: #44361B;
}
.favbtn {
  margin-top: 10px;
}
.favbtn a {
  display: block;
}
.favbtn span {
  display: block;
	text-align: center;
  padding: 10px 0;
  box-sizing: border-box;
}
.favbtn span:first-child {
  color: #C34545;
  border: 1px solid #C34545;
}
.favbtn span:last-child {
  color: #fff;
  background: #C34545;
  border: 1px solid #C34545;
  display: none;
}
.favbtn a.checked span:first-child {
  display: none;
}
.favbtn a.checked span:last-child {
  display: block;
}
.favbtn a span:first-child strong.x,
.favbtn a span:last-child strong.x{
  font-size: 26px;
  font-weight: normal;
  line-height: 1;
  margin-right: 10px;
	margin-left: 10px;
}
@media only screen and (max-width: 768px) {
	.favbtn a span:first-child strong.x, 
	.favbtn a span:last-child strong.x{
		font-size: 15px;
		margin-right: 4px;
		margin-left: 6px;
	}
	#favorites .favbtn span:last-child{
		line-height: 1.5;
	}
}
.search-title{
	text-align: center;
	background: #C34545;
	color: #fff;
	padding: 10px 0;
	cursor: pointer;
	position: relative;
}
.search-title .ico{
	display: inline-block;
	width: 80px;
	height: 22px;
	position: absolute;
	top: calc(50% - 11px);
	right: 20px;
	background: #201613;
}
.search-title .ico:before,
.search-title .ico:after{
	content: "";
	display: block;
	width: 15px;
	height: 2px;
	background: #fff;
	position: absolute;
	top: 10px;
	left: 31px;
}
.search-title .ico:after{
	transform: rotate(90deg);
	transition: all 0.2s linear;
}
.search-title.active .ico:after{
	transform: rotate(0deg);
}
.search-queries{
	display: none;
	background: #F5F5F5;
	padding: 30px 20px;
	.grid{
		display: grid;
		grid-template-columns: auto 1fr;
		gap: 20px 20px;
	}
	@media only screen and (max-width: 460px) {
		.grid{
			grid-template-columns: 1fr;
		}
	}
	& h5{
		font-weight: 500;
		font-size: 1.6rem;
		border-left: 5px solid #201613;
		padding-left: 20px;
		margin-top: 9px;
		margin-right: 10px;
	}
	.col:nth-child(odd){
		display: flex;
		align-items: flex-start;
	}
}
.help-ico{
	color: #3F7DE8;
	.ico{		
		display: inline-block;
		width: 26px;
		height: 26px;
		line-height: 23px;
		text-align: center;
		border: 1px solid #3F7DE8;
		background: #fff;
		color: #3F7DE8;
		font-size: 1.6rem;
		border-radius: 100px;
		margin-top: 5px;
		margin-left: auto;
		margin-right: 10px;
		@media only screen and (max-width: 460px) {
			margin-left: 0;
		}
	}
}
section.size h3{
	font-weight: bold;
	margin-bottom: 20px;
}
#searchbox_renew ul#color{
  display: grid;
	gap: 8px;
	grid-template-columns: repeat(7, 1fr);
	@media only screen and (max-width: 460px) {
		grid-template-columns: repeat(5, 1fr);
	}
}
#searchbox_renew ul li{
  background: #DBDBDB;
}
#searchbox_renew ul li label{
  display: block;
  text-align: center;
  padding: 11px 0;
  cursor: pointer;
}
#searchbox_renew ul#color li label input{
  display: none;
}
#searchbox_renew ul#color li.red.checked {
  background: #ea5e5e;
}
#searchbox_renew ul#color li.blue.checked {
  background: #5e82ea;
}
#searchbox_renew ul#color li.yellow.checked {
  background: #eae55e;
}
#searchbox_renew ul#color li.green.checked {
  background: #78ea5e;
}
#searchbox_renew ul#color li.orange.checked {
  background: #eac15e;
}
#searchbox_renew ul#color li.skyblue.checked {
  background: #bcd4ff;
}
#searchbox_renew ul#color li.yellowgreen.checked {
  background: #D7E288;
}
#searchbox_renew ul#color li.purple.checked {
  background: #c288fd;
}
#searchbox_renew ul#color li.pink.checked {
  background: #ffb9ea;
}
#searchbox_renew ul#color li.black.checked {
  background: #4e4e4e;
  color: #fff;
}
#searchbox_renew ul#color li.white.checked {
  background: #fff;
}
#searchbox_renew ul#color li.beige.checked {
  background: #e2d7c3;
}
#searchbox_renew ul#color li.grey.checked {
  background: #b6b6b6;
}
#searchbox_renew #type,
#searchbox_renew #pricetype{
  display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
}
#searchbox_renew #pricetype{
	margin-bottom: 12px;
}
#searchbox_renew .radiolist li.checked{
	background: #C34545;
	color: #fff;
}
#searchbox_renew .radiolist li.disabled{
	color: #999;
}
#searchbox_renew .radiolist li label input{
  display: none;
}
#searchbox_renew .radiolist li label input[type="radio"]:checked + span.radio:before{
  display: inline-block;
}
#searchbox_renew .checkboxlist{
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	& label{
		padding-left: 12px;
		padding-right: 12px;
	}
	& input{
		display: none;
	}
}
#searchbox_renew .checkboxlist li.checked{
	background: #C34545;
	color: #fff;
}
#searchbox_renew #sell_checkboxlist,
#searchbox_renew #rental_checkboxlist{
	display: none;
}
#searchbox_renew #sell_checkboxlist.active,
#searchbox_renew #rental_checkboxlist.active{
	display: flex;
}
#searchbox_renew .btnbox{
	text-align: center;
	margin-top: 50px;
	& button{
		display: inline-block;
		border: 0;
		background: #201613;
		color: #fff;
		padding: 10px 0;
		width: 100%;
		max-width: 300px;
		font-size: 1.6rem;
		cursor: pointer;
	}
}
#searchbox_renew .hide{
	display: none;
}
ul.searchcqueries {
  background: #F5F5F5;
  padding: 20px;
  margin-bottom: 20px;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 2px;
}
ul.searchcqueries li {
  background: #fff;
  padding: 7px 12px;
	border-radius: 100px;
}
.hakama .selections-normal-rental,
.mens .selections-normal-rental{
	display: none !important;
}

/*--------------------------------------
 shoplist
--------------------------------------*/
#shoplist .aside-shop-list{
	margin: 0 20px 70px 20px;
	& a{
		font-size: 1.8rem;
	}
}
#shoplist .shop-list{
	display: block;
	background: #F5F5F5;
	padding-bottom: 35px;
}
#shoplist .shop-list dt{
	margin-top: 30px;
	&:first-child{
		margin-top: 0;
	}
}
.shop-list-page{
	.shop-list-content{
		display: block;
		border-bottom: 0;
	}
	.shop-list-content::after{
		content: "";
		display: block;
		width: 100%;
		clear: both;
	}
	.shop-name{
		margin: 13px 0;
	}
	.address-content{
		background: #fff;
		padding: 20px;
		display: grid;
		grid-template-columns: 1fr 34%;
		gap: 20px;
	}
	.address{
	}
	.address table{
		width: 100%;
		line-height: 1.5;
		& th{
			white-space: nowrap;
			width: 1%;
		}
		& th, & td{
			padding: 10px;
		}
		& tr{
			border-bottom: 1px dashed #707070;
			&:last-child{
				border-bottom: 0;
			}
		}
	}
	.btn-tel{
		font-size: 1.8rem;
		color: #C34545;
		font-weight: 500;
		margin-top: 13px;
		display: inline-block;
	}
	.btn-tel::before{
		content: "";
		display: inline-block;
		width: 41px;
		height: 36px;
		background: url("/furisode/common/img/shoplist/ico-tel.png") no-repeat;
		background-size: contain;
		vertical-align: -9px;
		margin-right: 10px;
	}
}
/*--------------------------------------
 photo gallery
--------------------------------------*/
.ngg-galleryoverview.default-view{
	display: grid !important;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 10px;
}
/*--------------------------------------
 products
--------------------------------------*/
.querytext{
	margin-top: 60px;
	padding: 0 20px;
	line-height: 1.5;
}
.querytext + .productsorder{
	margin-top: 20px;
}
.dialog{
	display: none;
	line-height: 1.5;
	width: 740px;
	& h3{
		color: #C34545;
		border-left: 5px solid #C34545;
		padding: 5px 0 5px 10px;
		font-weight: 500;
		font-size: 2rem;
		margin-bottom: 20px;
	}
	& h4{
		font-weight: 500;
		font-size: 1.6rem;
		margin-top: 20px;
	}
	& p{
		line-height: 1.5;
		margin: 1em 0;
	}
}
.product-slide-wrap{
	position: relative;
	margin-top: 40px;
	text-align: center;
	padding: 0 62px;
}
.product-slide{
	margin: 0 auto;
	width: 100%;
}
.product-slide .slide{
	max-width: 363px;
	margin: 0 5px;
}
@media only screen and (max-width: 768px) {
	.product-slide-wrap{
		padding: 0;
	}
	.product-slide .slide{
		max-width: none;
		width: 100%;
	}
}
.product-slide .slide img{
	width: 100%;
	height: auto;
}
#products .fewlefticon{
	position: absolute;
	top: 0;
	right: 85px;
	width: 70px;
	height: 70px;
	& img{
		width: 100%;
		height: auto;
	}
}
@media only screen and (max-width: 780px) and (min-width: 650px) {
	#products .fewlefticon{
		right: calc((100% - 610px) / 2);
	}
}
@media only screen and (max-width: 650px) {
	#products .fewlefticon{
		right: 20px;
	}
}
.slick-prev::before,
.slick-next::before {
  content: '';
}
.slick-prev, .slick-next{
	width: 40px;
	height: 40px;
	display: block;
	background-image: url("/furisode/common/img/ico/slick-arrow.svg");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	transform: translate(0);
	z-index: 1;
}
.slick-prev{
	left: -50px;
}
.slick-next{
	right: -50px;
	transform-origin: center center;
	transform: rotate(180deg);
}
@media only screen and (max-width: 768px) {
	.slick-prev{
		left: 3px;
	}
	.slick-next{
		right: 3px;
	}
}
.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus
{
  background-image: url("/furisode/common/img/ico/slick-arrow.svg");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}
.product-title-wrap{
	display: flex;
	justify-content: center;
	margin: 35px 20px 50px 20px;
	position: relative;
	.favorites-btn{
		position: absolute;
		right: 0;
		top: 0;
	}
}
.parent {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
}
.outlet{
	color: #C34545;
	display: flex;
	align-items: center;
	position: absolute;
	top: 0;
	left: 0;
	.ico-clock{
		margin-right: 6px;
	}
	.ico{
		margin-left: 10px;
		margin-top: 0;
		margin-right: 0;
	}
}
@media only screen and (max-width: 768px) {
	.outlet{
		top: 35px;
	}
}
.producttitle{
	text-align: center;
	display: flex;
	justify-content: center;
	.fewleft{	font-size: 11px;
		font-weight: bold;
		color: #fff;
		text-align: center;
		background: #CD0003;
		padding: 4px 11px;
		border-radius: 30px;
		align-self: center;
		margin-top: -3px;
		margin-left: 15px;
	}
}
ul.spec{
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	padding: 0 20px;
	& li{
		background: #F5F5F5;
		padding: 9px 18px 11px 18px;
		border-radius: 100px;
		& span + span{
			margin-left: 1em;
		}
	}	
}
.price-grid{
	display: grid;
	grid-template-columns: 1fr 1fr;
	margin: 40px 20px;	
}
@media only screen and (max-width: 768px) {
	.price-grid{
		grid-template-columns: 1fr;
		gap: 25px;
	}
}
.hakama .price-grid{
	grid-template-columns: 1fr;
}
.price-list{
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 10px;
	align-items: center;
	font-size: 1.8rem;
	margin-bottom: 10px;
	& dt{
		background: #000;
		padding: 19px 20px;
		color: #fff;
	}
	& dd{
		position: relative;
	}
}
@media only screen and (max-width: 768px) {
	.price-list dt{
		min-width: 100px;
		padding: 14px 0;
		text-align: center;
	}
}
.price-note{
	color: #727272;
	font-size: 1.3rem;
	margin-top: 5px;
}
.note-red{
	background: #F5F5F5;
	padding: 20px 20px;
	margin: 60px 0 30px;
	& p{
		color: #C34545;
	}
}
.fancybox-bg{
	background: transparent;
}
.fancybox-content{
	border: 1px solid #201613;
	border-radius: 10px;
}
.btn-row{
	display: flex;
	justify-content: center;
	gap: 30px;
	& > *{
		flex: 1 1 0;
		max-width: 240px;
	}
	.favbtn{
		margin-top: 0;
		font-size: 1.6rem;
		line-height: 1;
	}
	.favbtn a span{
		padding: 20px 0;
	}
	.btn{
		padding: 20px 0;
		font-size: 1.6rem;
		line-height: 1;
	}
	.btn::after{
		display: none;
	}
}
@media only screen and (max-width: 768px) {
	.btn-row{
		gap: 10px;
		padding: 0 20px;
	}
}
body .simplefavorite-button.preset{
	box-shadow: none;
	padding: 6px 10px 7px 24px;
	border-radius: 0;
}
body .sf-icon-favorite::before{
	content: "";
	background: url("/furisode/common/img/ico/ico-heart-k.svg") no-repeat;
	background-size: contain;
	display: inline-block;
	width: 15px;
	height: 15px;
	vertical-align: -1px;
}
body .active .sf-icon-favorite::before,
body .simplefavorite-button.preset:hover .sf-icon-favorite::before{
	background-image: url("/furisode/common/img/ico/ico-heart-w.svg");
}
body .simplefavorite-button.preset.active,
body .simplefavorite-button.preset:hover{
	background: #CB0000;
	border-color: #CB0000;
}
.productlist .favorites-btn{
	position: absolute;
	bottom: 0;
	right: 0;
}
.noitems{
	text-align: center;
}
.hakama-note{
	margin: 0 20px;
	border: 1px solid #C34545;
	color: #C34545;
	line-height: 1.5;
	padding: 20px;
	margin-bottom: 40px;
}
/*--------------------------------------
 voice
--------------------------------------*/
.voice-wrap{
	background: #fff;
	border: 17px solid #F5F5F5;
	max-height: 700px;
	overflow: auto;
}
.voice-wrap.archive{
	max-height: none;
	overflow: visible;
}
.voice-content{
	display: flex;
	gap: 20px;
	padding: 20px 20px;
	.img{
		flex-shrink: 0;
		width: 70px;
	}
	.txt{
		display: flex;
		flex-wrap: wrap;
		.content{
			width: 100%;
		}
		.name{
			color: #C34545;
			font-weight: 600;
		}
		.rate{
			color: #C34545;
			margin-left: 2em;
		}
		.stars{
			color: #DCBF00;
		}
		.text{
			line-height: 1.5;
			margin-top: 15px;
		}
	}
}
.voice-content + .voice-content{
	border-top: 1px dashed #B4B4B4;
}
.voice .page-nav{
	margin-bottom: 30px;
}
/*--------------------------------------
 movie
--------------------------------------*/
.video-wrap{
	margin: 20px;
}
#movie video{
	width: 100%;
	height: auto;
}
#movie h2{
	text-align: center;
	font-weight: 700;
	font-size: 2.4rem;
	margin: 50px 0 20px 0;
}
.video-grid{
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
	margin: 0 20px;
}
.btn-youtube{
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 40px;
	border: 1px solid #C34545;
	font-size: 2.2rem;
	font-weight: 700;
	padding: 20px 20px;
	margin-top: 40px;
	line-height: 1.2;
}
.btn-youtube::before{
	content: "";
	display: inline-block;
	width: 140px;
	height: 32px;
	background: url("../img/movie/logo-youtube.png") no-repeat;
	background-size: contain;
	margin-right: 20px;
}
.youtube-wrap{
  position: relative;
  width: 100%;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
}
.youtube-wrap iframe{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

/*--------------------------------------
 fitting form
--------------------------------------*/
.fittingform{
	margin: 0 20px;
}
.fittingform h2{
  text-align: center;
  font-weight: bold;
  font-size: 16px;
  margin: 100px 0 60px 0;
}	
.fittingform h1 + h2,
.fittingform h1 + * > h2:first-child{
  margin-top: 60px;
}
.fittingform h2 .underline{
  border-bottom: 1px solid #2A2A2A;
  display: inline-block;
  padding: 0 5px 18px 5px;
}
.fittingform h1 + p{
  text-align: center;
  margin-top: 30px;
  font-size: 16px;
}
.fittingform ul.productlist li:nth-child(5n){
  margin-right: 0;
}
#favorites{
  position: relative;
}
#favorites .loader{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(255,255,255,0.5);
}
#favorites ul.productlist li .postthumbnail:before{
  display: none;
}
#favorites .favbtn span:last-child{
  display: flex;
	align-items: center;
}
.fittingform div.note{
  background: #F5F5F5;
  padding: 30px;
  margin: 60px auto 20px auto;
  height: 180px;
	max-width: 580px;
  overflow: scroll;
}
.fittingform div.note p{
  line-height: 2em;
}
.fittingform div.note p + p{
  margin-top: 2em;
}
.fittingform .btn{
  text-align: center;
}
.fittingform p.btnp + .btn{
  margin-top: 20px;
}

.fittingform .btn button{
  background: #C34545;
  color: #fff;
  display: block;
  border: 0;
  width: 100%;
  max-width: 700px;
  margin: 20px auto;
  font-size: 20px;
  font-weight: bold;
  height: 60px;
  line-height: 60px;
  border-radius: 100px;
  cursor: pointer;
}
.fittingform .btn button:hover{
  opacity: 0.6;
}
.fittingform .btn button:disabled{
  background: #E4E4E4;
  color: #707070;
  position: relative;
  cursor: not-allowed;
}
.fittingform .btn button:disabled:hover{
  opacity: 1;
}
.fittingform .btn a{
  background: #1A1718;
  color: #fff;
  display: inline-block;
  border: 0;
  width: 100%;
  max-width: 338px;
  margin: 20px 10px;
  font-size: 20px;
  font-weight: bold;
  height: 60px;
  line-height: 60px;
  border-radius: 100px;
}
.fittingform .btn + .btn{
  margin-top: 30px;
}
.fittingform p.btnp{
  text-align: center;
  font-weight: bold;
  font-size: 16px;
}
p.agreecheckbox{
  text-align: center;
  font-weight: bold;
  font-size: 16px;
  margin-bottom: 80px;
}
.fittingform #selectstore .labels{
  display: flex;
  flex-wrap: wrap;
}
.fittingform #selectstore .labels label{
  position: relative;
  width: calc(25% - 10px);
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1.5em;
  height: 6em;
  margin-right: 13px;
  margin-bottom: 13px;
  cursor: pointer;

}
.fittingform #selectstore .labels label:nth-child(4n){
  margin-right: 0;
}
.fittingform #selectstore .labels label input{
  display: none;
}
.fittingform #selectstore .labels label .border{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 1px solid #E4E4E4;
}
.fittingform #selectstore .labels label input[type=radio]:checked + .border{
  border-color: #C34545;
	border-width: 2px;
}
.fittingform h3{
  text-align: center;
  font-weight: bold;
  font-size: 16px;
  margin-bottom: 20px;
}
.fittingform #selectstore .labels + h3{
  margin-top: 35px;
}
/*試着フォーム*/
.grecaptcha-badge{
  bottom: 100px !important;
}
#contentswrapper.fittingform{
  margin-top: 30px;
}
.fittingform select{
  border: 1px solid #E4E4E4;
  background: #F5F5F5;
  font-size: 16px;
  padding: 20px 10px;
}
.fittingform .selectcenter{
  text-align: center;
}
.fittingform .selectcenter select{
  width: 100%;
  max-width: 500px;
}
.fittingform #favlist.disablelink li .favbtn{
  display: none;
}
.fittingform #favlist.disablelink li a{
  pointer-events: none;  
}
.fittingform .w500wrap{
  max-width: 500px;
  margin: auto;
  font-size: 16px;
}
.fittingform .w500wrap input,
.fittingform .w500wrap select{
  width: 100%;
  font-size: 16px;
  padding: 10px;
  box-sizing: border-box;
}
.fittingform .w500wrap textarea{
  width: 100%;
  padding: 10px;
  font-size: 16px;
  height: 7em;
  box-sizing: border-box;
}
.fittingform .w500wrap p{
  font-size: 14px;
  line-height: 1.5em;
  margin-top: 0.5em;
}
.fittingform .w500wrap p.pink{
  color: #C34545;
  font-size: 16px;
  margin-top: 2em;
}
.fittingform p a{
  color: #C34545;
}
.fittingform h4{
  font-weight: bold;
  margin: 25px 0 20px 0;
}
.fittingform h5{
  margin-bottom: 10px;
  margin-top: 20px;
}
.fittingform .daterow{
  display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 30px;
}
.fittingform .daterow input{
  margin-right: 20px;
}
.fittingform .complete p{
  line-height: 1.5em;
}
.fittingform .btn-wrap{
	text-align: center;
	margin-top: 50px;
}
.fittingform .btn-wrap + .btn-wrap{
	margin-top: 50px;
}
.fittingform .btn.large{
	height: 60px;
	line-height: 60px;
	font-size: 2rem;
}
.validate-wrap{
	position: relative;
}
#maxnumbtnnote{
	color: #c60c18;
	animation: blink 0.5s infinite alternate;
}
label.error{
	color: #c60c18;
	display: block;
	margin-top: 12px;
	margin-bottom: 12px;
	font-weight: 700;
	font-size: 1.5rem;
	animation: blink 0.5s infinite alternate;
}
label.error::before{
	content: "※";
}
@keyframes blink {
	0% {
		opacity: 1;
	}
	100% {
		opacity: 0.5;
	}
}
/*--------------------------------------
 contact catalog form
--------------------------------------*/
.form-title{
	background: #201613;
	color: #fff;
	font-size: 2rem;
	padding: 8px 0 10px 20px;
	position: relative;
	margin: 40px 0 20px 0;
	.ico{
		display: flex;
		align-items: center;
		color: #fff;
		position: absolute;
		right: 0;
		top: 0;
		height: 100%;
		padding: 0 20px;
	}
	.required{
		background: #C34545;
	}
	.optional{
		background: #45BAC3;
	}
}
.indent .form-title{
	margin-left: -20px;
	margin-right: -20px;
}
.form-style{
	line-height: 1.5;
}
.form-style input[type="text"],
.form-style input[type="date"],
.form-style input[type="tel"],
.form-style input[type="number"],
.form-style input[type="email"],
.form-style select,
.form-style textarea{
	background: #F5F5F5;
	border: 1px solid #B4B4B4;
	padding: 20px 20px;
	font-size: 1.6rem;
	margin: 10px 0 20px 0;
	display: block;
	width: 100%;
}
.form-style .inline{
	display: inline !important;
	width: auto !important;
}
.form-style .input-col{
	display: flex;
	gap: 20px;
	& input{
		width: 100%;
	}
}
.form-style textarea{
	height: 15em;
}
.form-style h4{
	font-weight: 700;
	margin-top: 30px;
}
#form div.privacy {
  max-width: 600px;
  margin: auto;
  margin-top: 50px;
	margin-bottom: 20px;
  background: #F0F0F0;
  height: 180px;
  overflow: scroll;
  padding: 30px;
  -webkit-overflow-scrolling: touch;
}
#form div.privacy h3 {
  font-weight: bold;
  text-align: center;
  margin-bottom: 0.5em;
}
#form .btnwrap{
	display: flex;
	align-items: flex-end;
	justify-content: center;
	gap: 30px;
	margin-top: 80px;
}
#form p{
	line-height: 1.5;
}
.domainnote{
	background: #F8F2F2;
	border: 1px solid #707070;
	padding: 20px;
	line-height: 1.75;
	margin-top: 50px;
}
.catalog-grid{
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 25px;
	text-align: center;
	position: relative;
}
.catalog-option{
  cursor: pointer;
}
#catalog-error{
	position: absolute;
	top: -38px;
	left: 0;	
}
.radio-ico {
	display: block;
  width: 20px;
  height: 20px;
  border: 2px solid #ccc;
  border-radius: 50%;
	position: relative;
	margin: 0 auto 10px auto;
}
.catalog-option img {
  border: 3px solid transparent;
  border-radius: 4px;
  transition: border 0.3s;
	max-width: 200px;
}
.catalog-option input[type="radio"] {
	opacity: 0;
	margin-right: -13px;
}
.catalog-option:has(input[type="radio"]:checked) .radio-ico {
  border-color: #C34545;
}
.catalog-option:has(input[type="radio"]:checked) img {
  border-color: #C34545;
}
.radio-ico::after {
  content: "";
  width: 10px;
  height: 10px;
  background: #C34545;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(0);
  transition: transform 0.2s ease-in-out;
}
.catalog-option:has(input[type="radio"]:checked) .radio-ico {
  border-color: #C34545;
}
.catalog-option:has(input[type="radio"]:checked) .radio-ico::after {
  transform: translate(-50%, -50%) scale(1);
}
.catalog-grid .col{
	& h3{
		text-align: left;
		font-weight: 700;
		color: #C34545;
		margin-top: 20px;
		margin-bottom: 10px;
	}
	& p{
		text-align: left;
	}
}

