@charset "UTF-8";
/*
*******************************************************************************************************
# キャンペーン詳細ページ（サンプル）
*******************************************************************************************************
*/
/* ルール */
.box-rule {
	line-height: 1.7;
	padding: 40px 0;
}
.box-rule .ttl {
	font-size: 32px;
	color: #ff5600;
	text-align: center;
	padding: 0 0 28px;
}
.box-rule .sttl {
	font-size: 22px;
	text-align: center;
	padding: 0 0 28px;
}
.box-rule ul > li, .box-rule ol > li {
	font-weight: bold;
	text-indent: -1em;
	padding: 0 0 0 1em;
	margin: 0 0 20px;
}
.box-rule ul > li dl {
	text-indent: 0;
	padding: 0 0 0 3em;
}
.box-rule ul > li dl dt {
	width: 50px;
	text-align: right;
	box-sizing: content-box;
	padding: 0 40px 0 0;
	float: left;
}
.box-rule ol > li dl {
	text-indent: 0;
	padding: 0 0 0 2em;
}
.box-rule ol > li dl dt {
	width: 15px;
	box-sizing: content-box;
	padding: 0 20px 0 0;
	float: left;
}
.box-rule .box-border {
	width: 100%;
	font-size: 14px;
	box-sizing: border-box;
	padding: 25px 36px 6px;
	margin: 50px 0 0;
	border: 2px solid #ff5600;
}
.box-rule .box-text {
	display: table;
	width: 370px;
	margin: 50px auto 0;
}
.box-rule .box-text .img {
	display: table-cell;
	width: 100px;
	vertical-align: middle;
}
.box-rule .box-text .text {
	display: table-cell;
	font-size: 18px;
	color: #ff5600;
	font-weight: bold;
	vertical-align: middle;
	padding: 0 0 0 20px;
}
@media only screen and (min-width: 737px) {
/* パソコン用レイアウト（タブレット端末含む） */
}

@media only screen and (max-width: 736px) {
/* スマートフォン用レイアウト */
.box-rule {
	padding: 30px 20px;
}
.box-rule .ttl {
	font-size: 20px;
}
.box-rule .sttl {
	font-size: 16px;
	text-align: left;
	padding: 0 0 12px;
}
.box-rule ul > li, .box-rule ol > li {
	margin: 0 0 15px;
}
.box-rule ul > li dl, .box-rule ol > li dl {
	padding: 0 0 0 1em;
}
.box-rule ul > li dl dt {
	width: 100%;
	text-align: left;
	box-sizing: border-box;
	padding: 0;
	float: none;
}
.box-rule ul > li dl dd {
	padding: 0 0 0 10px;
}
.box-rule ol > li dl dt {
	width: 14px;
	padding: 0 15px 0 0;
}
.box-rule .box-border {
	font-size: 12px;
	padding: 12px 18px 3px;
	margin: 30px 0 0;
}
.box-rule .box-text {
	display: block;
	width: 100%;
	margin: 30px auto 0;
}
.box-rule .box-text .img {
	display: block;
	width: 70px;
	margin: 0 auto;
}
.box-rule .box-text .text {
	display: block;
	font-size: 16px;
	text-align: center;
	padding: 10px 0 0;
}
}

.wrp-category .inner-category {
	width: 100%;
	box-sizing: border-box;
	padding: 20px 0;
	/* background-color: #efe4c7; */
}


.wrp-category .sttl {
	width: 100%;
	font-size: 20px;
	font-weight: bold;
	text-align: center;
	padding: 0 0 18px;
}

.wrp-category .list-category {
	display: -moz-flex;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.wrp-category .list-category > li {
	display: -moz-flex;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-flex: 1;
	-ms-flex-positive: 1;
	flex-grow: 1;
	width: 33%;
	box-sizing: border-box;
	padding: 0 5px;
}

.wrp-category .list-category > li:nth-child(n+4) {
	padding-top: 10px;
}

.wrp-category .list-category > li > a {
	display: -moz-flex;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-moz-align-items: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	width: 100%;
	height: 100%;
	min-height: 60px;
	line-height: 1.2;
	padding: 5px 30px;
}

.wrp-category .list-category > li > a:before {
	font-size: 16px;
	color: #ffab80;
	right: 15px;
}

.wrp-category .list-category > li > a .text {
	width: 100%;
	text-align: center;
	margin: 0 auto;
}

.wrp-category .list-category > li > a.act {
	box-shadow: 0 0;
	cursor: default;
}

@media only screen and (max-width: 736px) {
	.wrp-category .inner-category {
		padding: 10px 15px;
	}

	.wrp-category .sttl {
		font-size: 15px;
		padding: 0 0 8px;
	}

	.wrp-category .list-category > li {
		width: 50%;
	}

	.wrp-category .list-category > li:nth-child(odd) {
		padding: 0 5px 0 0;
	}

	.wrp-category .list-category > li:nth-child(even) {
		padding: 0 0 0 5px;
	}

	.wrp-category .list-category > li:nth-child(n+3) {
		padding-top: 10px;
	}

	.wrp-category .list-category > li > a {
		min-height: 41px;
		font-size: 12px;
		padding: 5px 10px;
	}

	.wrp-category .list-category > li > a:before {
		font-size: 11px;
		top: auto;
		bottom: 8px;
		right: 50%;
		-webkit-transform: translateX(50%);
		transform: translateX(50%);
	}

	body.android-u4 .wrp-category .list-category > li > a {
		display: table;
		width: 100%;
		height: 41px;
		min-height: 0;
		box-sizing: border-box;
	}

	body.android-u4 .wrp-category .list-category > li > a .text {
		display: table-cell;
		vertical-align: middle;
	}
}



/* **********************

kigyo-wari tsuiki 20171114

********************** */

#main_inner #mvisual {
	display: block;
	margin-bottom: 20px;
	white-space: nowrap;
}

@media only screen and (min-width: 737px) {
/* パソコン用レイアウト（タブレット端末含む） */
#main_inner #mvisual img {
}

}

@media only screen and (max-width: 736px) {
/* スマートフォン用レイアウト */
#main_inner #mvisual img {
	width: 100%;
}
}

#main{
	background: url(/img/common/honepee.png) no-repeat right bottom;
	padding-bottom:200px;
}

#main_inner {
	padding: 20px;
	margin-bottom: 20px;
	background-color: #FFFFFF;
	text-align:center;
	
}

@media only screen and (max-width: 736px) {
#main_inner {
	padding: 10px;
}
}


#main_inner p {
	font-size: 1.1em;
	line-height: 1.5em;
	text-align: center;
}
@media only screen and (max-width: 736px) {
	#main_inner p {
		font-size: 12px;
		line-height: 1.5em;
	}
}
#main_inner p.firstV {
	width: 100%;
	margin: 20px 0px;
}

@media only screen and (min-width: 737px) {
/* パソコン用レイアウト（タブレット端末含む） */
#main_inner p.firstV img {
	width: 737px;
}
}


@media only screen and (max-width: 736px) {
/* スマートフォン用レイアウト */
#main_inner p.firstV img {
	width: 100%;
}

}


#main_inner .hojin {
	max-width: 1000px;
	margin: 20px;
	padding: 5px;
	border: solid #ffefd2 1px;
	background: #ffefd2;
	text-align: left;
}

@media only screen and (min-width: 737px) {
/* パソコン用レイアウト（タブレット端末含む） */
#main_inner .hojin {
	/* width: 697px; */
	margin: 20px auto;
}

}

#main_inner .hojin p {
	text-align: left;
	font-size: 1.0em;
	font-weight: bold;
	margin-bottom: 15px;
}

#main_inner .hojin p.mm {
	text-align: center;
	font-size: 18px;
	font-weight: normal;
	margin: 0;
}
#main_inner .hojin p.mm:first-child {
	margin-bottom: 20px;
}
@media only screen and (max-width: 736px) {
	#main_inner .hojin {
		margin:0 auto 20px ;
	}

	#main_inner .hojin p {
		font-size: 12px;
		margin-bottom: 15px;
	}
	
	#main_inner .hojin p.mm {
		font-size: 12px;
	}
	#main_inner .hojin p.mm:first-child {
		margin-bottom: 10px;
	}
}

/* ************************ h2 バリエーション */

#main_inner h2.imakoso {
	padding: 20px;
	margin: 20px 0px;
	color: #fff;
	font-size: 1.6em;
	font-weight: bold;
	background: #ea5a02;
	border: solid #ea5a02 1px;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-ms-border-radius: 5px;
	-o-border-radius: 5px;
	-moz-border-radius: 5px;
	background: #ea5a02;
}


#main_inner h2.jisseki {
	height: 200px;
	margin: 20px 0px;
}

@media only screen and (min-width: 737px) {
/* パソコン用レイアウト（タブレット端末含む） */
#main_inner h2.jisseki img {
	width: 697px;
}

}


@media only screen and (max-width: 736px) {
/* スマートフォン用レイアウト */
#main_inner h2.jisseki img {
	width: 100%;
}
}


#main_inner h2.hdo {
	width: 100%;
	height: 34px;
	display: block;
	margin: 20px 0px;
	text-align: left;
}

@media only screen and (max-width: 736px) {
/* スマートフォン用レイアウト */
#main_inner h2.hdo img {
	background-size: contain;
}

}



/* ************************ h3 バリエーション */




#main_inner .hojin h3 {
	border-left: 20px #ea5a02 solid;
	font-weight: bold;
	color: #ea5a02;
	margin: 20px 0px;
	padding: 0px 20px;
}


@media only screen and (min-width: 737px) {
/* パソコン用レイアウト（タブレット端末含む） */

}

@media only screen and (max-width: 736px) {
/* スマートフォン用レイアウト */

#main_inner .hojin h3.kyk {
	border-right: none;
}


#main_inner .hojin h3.sych {
	border-right: none;
}




}


#main_inner h3#nayami {
	display: block;
	line-height: 1.8em;
	border-bottom: solid #ea5a02 2px;
}




#main_inner #inq h3.enq {
	border: none;
	padding: 10px 20px;
	text-align: left;
	font-size: 1.0em;
	border-bottom: 1px #ea5a02 solid;
}

@media only screen and (min-width: 737px) {
/* パソコン用レイアウト（タブレット端末含む） */
#main_inner #inq img {
	width: 620px;
	}

}


@media only screen and (max-width: 736px) {
/* スマートフォン用レイアウト */
#main_inner #inq img {
	width: 100%;
	}
}


.fa {
	margin-right: 5px;
}

#main_inner #inq h3.enq i.chaO {
	color: #ea5a02;
}



#main_inner h2#katakoshi,
#main_inner h2#kaimin {
	text-align: center;
	line-height: 1.8em;
	display: flex;
	display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
	align-items: center;
	-webkit-align-items: center;
	-moz-align-items: center;
	-ms-align-items: center;
	-o-align-items: center;
}

#main_inner h2#katakoshi:before,
#main_inner h2#katakoshi:after,
#main_inner h2#kaimin:before,
#main_inner h2#kaimin:after {
	content: "";
	flex-grow: 1;
	height: 2px;
	background: #ea5a02;
	display: block;
}

#main_inner h2#katakoshi:before,
#main_inner h2#kaimin:before {
	margin-right: 0.4em;
}
#main_inner h3#katakoshi:after,
#main_inner h3#kaimin:after {
	margin-left: 0.4em;
}



#main_inner h3#karafac {
	width: 100%;
	height: 20px;
	display: block;
	border: none;
	text-align: left;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	background: url(../img/cont10_02.png) left top no-repeat;
	background-size: contain;
}


#main_inner h3#onuki {
	width: 257px;
	height: 20px;
	display: block;
	border: none;
	text-align: left;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	background: url(../img/cont10_04.png) left top no-repeat;
}


/* ************************ h3 バリエーション end */


#main_inner .kakomi {
	margin: 20px 12%;
	padding: 20px;
	border: solid #ffefd2 1px;
	border-radius: 20px;
	-webkit-border-radius: 20px;
	-ms-border-radius: 20px;
	-o-border-radius: 20px;
	-moz-border-radius: 20px;
	background: #ffefd2;
	text-align: center;
}



#main_inner .kakomi .type01 {
	margin: 0px 10px;
	padding: 0px;
	vertical-align: middle;
	text-align: center;
}

#main_inner .kakomi .type01 img {
	margin-right: 10px;
	width: 80px;
}


@media only screen and (min-width: 737px) {
/* パソコン用レイアウト（タブレット端末含む） */
#main_inner .kakomi {
	width: 600px;
	margin: 20px auto;
}

}


#main_inner .clr {
	clear: both;
	text-align: center;
	padding-top: 20px;
}

p span {
	color: #ea5a02;
	font-weight: bold;
}

p span#ble {
	color: #0083ff;
	font-weight: bold;
}

p span.okey {
	font-size: 1.5em;
	margin: 20px 0px;
	line-height: 2.0em;
}


#main_inner #inq {
	margin: 10px;
	padding: 20px;
	border: solid #ea5a02 1px;
	border-radius: 20px;
	-webkit-border-radius: 20px;
	-ms-border-radius: 20px;
	-o-border-radius: 20px;
	-moz-border-radius: 20px;
}

@media only screen and (min-width: 737px) {
/* パソコン用レイアウト（タブレット端末含む） */
#main_inner #inq {
	width: 697px;
	margin: auto;
	}
#main_inner #inq p.rcn {
	margin-right: 20px;
	}
}


#main_inner #inq p {
	font-size: 0.9em;
	line-height: 1.4em;
	text-align: left;
}

#main_inner #inq p.rcn {
	text-align: right;
}


/* ************************ CV */

#main_inner .cvBanner {
	clear: both;
	display: block;
	margin: 30px auto;
	}


@media only screen and (min-width: 737px) {
/* パソコン用レイアウト（タブレット端末含む） */
#main_inner .cvBanner img {
	width: 697px;
}
#main_inner p {
	margin: auto;
	}
#main_inner p img {
	width: 697px;
	}
}

@media only screen and (max-width: 736px) {
/* スマートフォン用レイアウト */
#main_inner .cvBanner img {
	width: 100%;
	}

#main_inner p img {
	width: 100%;
	}


}



#main_inner .seT {
	display: table;
	width: 100%;
	padding: 0px;
	margin: 20px 0px;
	text-align: center;
}


#main_inner .seT p {
	text-align: left;
}


#main_inner .seT .Lft .at {
	text-align: right;
	font-size: small;
	color: #999999;
	}


#main_inner .seT .Lft {
	padding: 0px;
	text-align: left;
}

#main_inner .seT .Lft p {
	text-align: left;
}


#main_inner .seT .Rght {
	padding: 0px;
	margin: 0px;
	vertical-align: middle;
}

#main_inner .seT .RIM {
	margin-right: 20px;
	vertical-align: middle;
}

@media only screen and (min-width: 737px) {
/* パソコン用レイアウト（タブレット端末含む） */
#main_inner .seT {
	display: table;
	width: 737px;
	padding: 0px;
	margin: 20px auto;
	text-align: center;
}
#main_inner .seT .Rght img {
	width: 500px;
	}


#main_inner .seT .RIM {
	width: 319px;
}


}

#main_inner img.genki {
	margin: 20px 0px;
}

#main_inner .step {
	margin: 20px auto 0px auto;
	width: 600px;
	display: inline-block;
	padding: 1px;
	background: #ffefd2;
	border: solid #ffefd2 1px;
	-webkit-border-radius: 10px;
	-ms-border-radius: 10px;
	-o-border-radius: 10px;
	-moz-border-radius: 10px;
	}

#main_inner .step p {
	text-align: left;
	padding: 5px 20px 5px 0px;
	}


#main_inner .step .S01 {
	margin: 0px 20px 0px 0px;
	width: 100px;
	height: 35px;
	padding: 30px;
	font-weight: bold;
	font-size: 24px;
	color: #ea5a02;
	float: left;
	border-right: 1px solid #ea5a02;
	}

#main_inner #omakase {
	padding: 30px;
	background: #fff9d6;
	border: solid #fff9d6 1px;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-ms-border-radius: 10px;
	-o-border-radius: 10px;
	-moz-border-radius: 10px;
}


#main_inner #omakase .Rbc {
	padding: 0px;
	margin-right: 20px;
	float: left;
	width: 147px;
}


#main_inner #omakase .Rbc p {
	text-align: left;
}


#main_inner #omakase .Tbc {
	padding: 0px;
	margin: 0px;
	float: left;
	width: 680px;
	}

#main_inner #omakase .Tbc p {
	text-align: left;
	}

#main_inner #omakase .Tbc .ss {
	text-align: right;
	font-size: 0.9em;
	}


@media only screen and (min-width: 737px) {
/* パソコン用レイアウト（タブレット端末含む） */
#main_inner #omakase {
	width: 687px;
	margin: 20px auto;
	display: table;
	border-collapse:separate;
	border-spacing: 10px;
}
#main_inner #omakase .Rbc {
	display: table-cell;
}
#main_inner #omakase .Tbc {
	display: table-cell;
	width: 520px;
	}
#main_inner #omakase .Tbc p {
	width: 520px;
	}


#main_inner .stxt {
	text-align: right;
	font-size: 0.8em;
	width: 900px;
	margin: 0 auto;
	}
}


@media only screen and (max-width: 736px) {
/* スマートフォン用レイアウト */
#main_inner #omakase .Rbc {
	padding: 0px;
	margin-right: 20px;
	width: 100%;
}

#main_inner #omakase .Rbc img {
	padding: 0px;
	margin-right: 20px;
	width: 147px;
}

#main_inner #omakase .Rbc p {
	text-align: left;
}


#main_inner #omakase .Tbc {
	padding: 0px;
	margin: 0px;
	float: left;
	width: 100%;
	}

#main_inner #omakase .Tbc p {
	text-align: left;
	}

#main_inner #omakase .Tbc .ss {
	text-align: right;
	font-size: 0.9em;
	}

#main_inner .stxt {
	text-align: right;
	font-size: 0.8em;
	width: 100%;
	margin: 0 auto;
	}
}



@media only screen and (min-width: 737px) {
.flow {
	width: 680px;
	margin: 0 auto 10px auto;
	}

}

p span.pnt {
	display: inline-block;
	background: #F90;
	padding: 5px;
	color: #333333;
	margin: 0.4em;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	-ms-border-radius: 3px;
	-o-border-radius: 3px;
	-moz-border-radius: 3px;
	}
.ctxt {
	text-align: center;
	}

.form-btn {
	width: 50%;
    margin: 0 auto;
}
.ticket-ttl {
	text-align: center;
	margin-top: 60px;
}
.ticket {
	padding-top: 20px;
}
.ticket .box {
	display: table;
	margin-bottom: 30px;
}
.ticket .img {
    display: table-cell;
    width: 40%;
    vertical-align: middle;
    line-height: 0;
}
.ticket .img span {
    display: block;
}
.ticket .box-text {
	display: table-cell;
    vertical-align: top;
    box-sizing: border-box;
	font-size: 20px;
    padding: 0 0 0 30px;
}
.ticket > .box-text .description {
	width: 100%;
    box-sizing: border-box;
	font-size: 28px;
}
.ticket .box-text .price {
	font-weight: bold;
	font-size: 30px;
	margin-top: 10px;
	margin-bottom: 10px;
}
.ticket .box-text .notice {
	font-size: 18px;
}

@media only screen and (max-width: 736px) {
	.form-btn {
		width: 70%;
		margin: 0 auto;
	}
	.ticket-ttl {
		text-align: center;
		margin-top: 30px;
		font-size: 24px;
	}
	.ticket {
		padding-top: 20px;
	}
	.ticket .box {
		display: table;
		margin-bottom: 30px;
	}
	.ticket .img {
		display: table-cell;
		width: 40%;
		vertical-align: middle;
		line-height: 0;
	}
	.ticket .img span {
		display: block;
	}
	.ticket .box-text {
		font-size: 18px;
		padding: 0 0 0 15px;
	}
	.ticket .text {
		font-size: 16px;
	}
	.ticket .box-text .description {
		font-size: 13px;
	}
	.ticket .box-text .price {
		font-size: 20px;
		margin-top: 6px;
		margin-bottom: 6px;
	}
	.ticket .box-text .notice {
		font-size: 10px;
	}
	}
/*=======================================================
　基本設定
=======================================================*/
/* @font-face {
	font-family: "noto-sans-jp";
	src: url(./fonts/Noto_Sans_JP/NotoSansJP-Regular.woff) format("woff");
	font-weight: normal;
	font-display: swap;
  }
  @font-face {
	font-family: "noto-sans-jp";
	src: url(./fonts/Noto_Sans_JP/NotoSansJP-Bold.woff) format("woff");
	font-weight: bold;
	font-display: swap;
  } */

  * {
	margin: 0;
	padding: 0;
  }
  *,
  *:before,
  *:after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	font-style: normal;
	-webkit-box-shadow: none;
	box-shadow: none;
	outline: none;
	line-break: strict;
	word-break: break-word;
	word-wrap: break-word;
	overflow-wrap: break-word;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  }
  *,
  *:focus,
  a:focus {
	outline: none;
  }
  body,
  .ly_head,
  .ly_main,
  .ly_foot {
	/* min-width: 1024px; */
  }
  .noto-sans {
	background: #fff;
	font-family: "noto-sans-jp", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-size: 17px;
	line-height: 1.6;
	letter-spacing: 0.04em;
	-webkit-text-size-adjust: 100%;
	color: #222;
  }
  article,
  aside,
  figcaption,
  figure,
  picture,
  footer,
  main,
  header,
  nav,
  section {
	display: block;
  }
  table {
	border-collapse: separate;
	border-spacing: 0;
  }
  ul,
  ol {
	list-style: none;
  }
  p,
  li,
  dt,
  dd,
  th,
  td {
	-ms-line-break: strict;
	line-break: strict;
	word-break: break-word;
  }
  a {
	text-decoration: none;
	color: inherit;
  }
  img {
	width: 100%;
	height: auto;
	vertical-align: middle;
	image-rendering: -webkit-optimize-contrast;
  }
  picture {
	line-height: 0;
  }
  input,
  button,
  select,
  textarea {
	-webkit-appearance: none;
	border-radius: 0;
	appearance: none;
	background-color: transparent;
	border: none;
	cursor: pointer;
	font-size: 16px;
	outline: none;
  }
  input:-webkit-autofill {
	box-shadow: 0 0 0px 1000px #fff inset;
  }
  input[type=checkbox] {
	display: none;
  }
  input[type=radio] {
	display: none;
  }
  button, textarea {
	font-family: inherit;
	font-size: 100%;
  }

  @media screen and (max-width: 736px) {
	body,
	.ly_head,
	.ly_main,
	.ly_foot {
	  /* min-width: 750px; */
	  max-width: 736px;
	  width: 100%;
	}
	body {
	  font-size: 28px;
	  line-height: 1.5;
	}
	.sp {
	  display: initial;
	}
	.pc {
	  display: none;
	}
  }
/*=======================================================
WORRIES
=======================================================*/
.bl_worries {
	max-width: 1100px;
	margin:0 auto;
	padding: 64px 0;
	background: url(../img/worries_bg.jpg) top center/cover no-repeat;
  }
  .bl_worries .el_sec_mainTtl {
	width: 472px;
	height: 48px;
	margin: 0 auto 44px;
  }
  .bl_worriesList {
	display: flex;
	flex-wrap: wrap;
	gap: 36px 24px;
	width: 768px;
	margin: 0 auto;
  }
  .bl_worriesItem {
	width: 240px;
	position: relative;
  }
  .bl_worriesItem::after {
	position: absolute;
	content: "";
	width: 240px;
	height: 164px;
	bottom: 0;
	left: 0;
	z-index: 1;
  }
  .bl_worriesItem:first-of-type .bl_item_imgWrapper {
	margin-bottom: 26px;
  }
  .bl_worriesItem:nth-of-type(odd)::after {
	background: #2b67c6;
  }
  .bl_worriesItem:nth-of-type(odd) .bl_item_imgWrapper {
	border: 4px solid #2b67c6;
  }
  .bl_worriesItem:nth-of-type(even)::after {
	background: #25a3c1;
  }
  .bl_worriesItem:nth-of-type(even) .bl_item_imgWrapper {
	border: 4px solid #25a3c1;
  }
  .bl_worries .bl_item_imgWrapper {
	border-radius: 50%;
	background: #fff;
	width: 172px;
	height: 172px;
	margin: 0 auto 14px;
	position: relative;
	z-index: 2;
  }
  .bl_worries .bl_item_txt {
	text-align: center;
	position: relative;
	z-index: 2;
	color: #fff;
	font-weight: 700;
	margin-bottom: 14px;
  }
  
  @media screen and (max-width: 736px) {
	.bl_worries {
	  padding: 20px 0;
	  background: url(../img/worries_bg_sp.jpg) top center/cover no-repeat;
	}
	.bl_worries .el_sec_mainTtl {
	  width: 80%;
	  height: 64px;
	  margin: 0 auto;
	}
	.bl_worriesList {
	  gap: 12px;
	  width: 100%;
	}
	.bl_worriesItem {
	  width: 48%;
	}
	.bl_worriesItem::after {
	  width: 100%;
	  height: 120px;
	}
	.bl_worriesItem:first-of-type .bl_item_imgWrapper {
	  margin-bottom: 20px;
	}
	.bl_worries .bl_item_imgWrapper {
	  width: 120px;
	  height: 110px;
	  margin: 0 auto 11px;
	}
	.bl_worries .bl_item_txt {
	  margin-bottom: 16px;
	  font-size: 14px;
	}
	.bl_worriesItem img {
		width: 90%;
	}
	  .bl_worriesItem:nth-of-type(odd) .bl_item_imgWrapper {
		border: 2px solid #2b67c6;
	  }
	  .bl_worriesItem:nth-of-type(even) .bl_item_imgWrapper {
		border: 2px solid #25a3c1;
	  }
  }
  /*=======================================================
共通
=======================================================*/
.bl_media01 .bl_media_imgWrapper {
	width: 496px;
  }
  .bl_media01 .bl_media_body {
	flex: 1;
  }
  .bl_media01 .bl_media_ttl {
	margin-bottom: 13px;
	border-bottom: 1px solid #dddddd;
	color: #222222;
	display: flex;
	align-items: end;
	gap: 4px;
	padding: 0 0 13px 18px;
	position: relative;
	font-size: 26px;
	line-height: 1.5;
  }
  .bl_media01 .bl_media_ttl::before {
	position: absolute;
	content: "";
	width: 6px;
	height: 40px;
	border-radius: 3px;
	background: #eb5c02;
	top: 0;
	left: 0;
  }
  .bl_media01 .bl_media_ttl span {
	font-size: 16px;
	letter-spacing: 0.06em;
	font-weight: 400;
	margin-bottom: 3px;
	color: #222222;
  }
  
  .bl_media02 {
	width: 960px;
	margin: 0 auto;
  }
  .bl_media02 .bl_media_imgWrapper {
	width: 464px;
  }
  .bl_media02 .bl_media_body {
	flex: 1;
  }
  .bl_media02 .bl_media_ttl {
	color: #674d1d;
	font-size: 26px;
	font-weight: 700;
	letter-spacing: 0.06em;
	margin-bottom: 16px;
  }
  .bl_media02 .el_btn {
	width: 244px;
	height: 46px;
	color: #fff;
	font-size: 17px;
	font-weight: 700;
	letter-spacing: 0.04em;
	background: linear-gradient(180deg, #ffce00 0%, #eb5c02 100%);
	border: 2px solid #eb5c02;
	border-radius: 2px;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 0 0 3px 31px;
	position: relative;
  }
  .bl_media02 .el_btn::before {
	background: url(../images/icon_home.svg) top center/contain no-repeat;
	width: 20px;
	height: 20px;
	position: absolute;
	content: "";
	top: calc(50% - 2px);
	left: 19px;
	transform: translateY(-50%);
  }
  
  @media screen and (max-width: 736px) {
	.bl_media01 .bl_media_imgWrapper {
	  width: 100%;
	}
	.bl_media01 .bl_media_imgWrapper.sp {
	  margin-bottom: 32px;
	  display: block;
	}
	.bl_media01 .bl_media_ttl {
	  margin-bottom: 10px;
	  border-width: 2px;
	  justify-content: center;
	  align-items: center;
	  gap: 7px;
	  color: #eb5c02;
	  flex-direction: column;
	  padding: 0 0 10px;
	  font-size: 22px;
	  line-height: 1.5;
	}
	.bl_media01 .bl_media_ttl::before {
	  display: none;
	}
	.bl_media01 .bl_media_ttl span {
	  font-size: 22px;
	  margin-bottom: 0;
	}
	.bl_media02 {
	  width: 100%;
	}
	.bl_media02 .bl_media_imgWrapper {
	  width: 100%;
	}
	.bl_media02 .bl_media_imgWrapper.sp {
	  display: block;
	  margin-bottom: 32px;
	}
	.bl_media02 .bl_media_ttl {
	  font-size: 40px;
	  margin-bottom: 39px;
	  text-align: center;
	  line-height: 1;
	}
	.bl_media02 .el_btn {
	  width: 480px;
	  height: 96px;
	  font-size: 32px;
	  border-width: 3px;
	  padding: 0 0 4px 55px;
	  margin: 0 auto;
	}
	.bl_media02 .el_btn::before {
	  width: 40px;
	  height: 40px;
	  top: calc(50% - 2px);
	  left: 45px;
	}
  }
  /* PC SP */
 .pc {
	display: initial;
  }
  .sp {
	display: none;
  }
  @media screen and (max-width: 736px) {
	body,
	.ly_head,
	.ly_main,
	.ly_foot {
	  /* min-width: 750px; */
	  max-width: 736px;
	  width: 100%;
	}
	body {
	  font-size: 28px;
	  line-height: 1.5;
	}
	.sp {
	  display: initial;
	}
	.pc {
	  display: none;
	}
  }
  /*=======================================================
ABOUT
=======================================================*/
.bl_about .el_sec_mainTtl {
	background: url(../images/about_ttl_bg.jpg) top center/cover no-repeat;
	padding: 32px 0 31px;
  }
  .bl_about .el_sec_mainTtl img {
	display: block;
	width: 400px;
	margin: 0 auto 20px;
  }
  .bl_about .el_sec_mainTtl span {
	width: 570px;
	height: 43px;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 22px;
	color: #fff;
	background: linear-gradient(180deg, #efc828 0%, #eb8802 100%);
	padding-bottom: 3px;
	margin: 0 auto;
	font-size: 24px;
  }
  .bl_about .bl_mediaList {
	display: flex;
	flex-wrap: wrap;
	gap: 56px;
  }
  .bl_about .bl_media:first-of-type .bl_media_ttl {
	font-size: 16px;
	letter-spacing: 0.06em;
	font-weight: 400;
	padding-bottom: 16px;
	gap: 0;
  }
  .bl_about .bl_media:first-of-type .bl_media_ttl span {
	margin-bottom: 0;
	font-size: 26px;
	letter-spacing: 0.04em;
	font-weight: 700;
	margin-bottom: -6px;
	position: relative;
	padding-right: 15px;
  }
  .bl_about .bl_media:first-of-type .bl_media_ttl span::after {
	position: absolute;
	content: "®︎";
	font-size: 21px;
	letter-spacing: 0.06em;
	font-weight: 700;
	bottom: -2px;
	right: -2px;
  }
  .bl_about .bl_media:first-of-type .bl_media_txt .el_deco {
	position: relative;
	padding-right: 12px;
  }
  .bl_about .bl_media:first-of-type .bl_media_txt .el_deco::after {
	position: absolute;
	content: "®";
	font-size: 21px;
	bottom: -6px;
	right: -1px;
  }
  @media screen and (max-width: 736px) {
	.bl_about .el_sec_mainTtl {
	  background: url(../images/about_ttl_bg_sp.jpg) top center/cover no-repeat;
	  padding: 32px 0 32px;
	}
	.bl_about .el_sec_mainTtl img {
	  width: 529px;
	  margin: 0 auto 34px;
	}
	.bl_about .el_sec_mainTtl span {
	  width: 690px;
	  height: 52px;
	  border-radius: 26px;
	  padding-bottom: 4px;
	  font-size: 30px;
	}
	.bl_about .bl_mediaList {
	  padding: 30px 0 10px;
	  gap: 80px;
	}
	.bl_about .bl_media:first-of-type .bl_media_ttl {
	  font-size: 12px;
	  color: #222222;
	}
	.bl_about .bl_media:first-of-type .bl_media_ttl span {
	  color: #eb5c02;
	  font-size: 22px;
	  margin-bottom: 0;
	  padding-right: 20px;
	}
	.bl_about .bl_media:first-of-type .bl_media_ttl span::after {
	  font-size: 18px;
	  bottom: 0px;
	  right: 3px;
	}
	.bl_about .bl_media:first-of-type .bl_media_txt .el_deco {
	  padding-right: 10px;
	}
	.bl_about .bl_media:first-of-type .bl_media_txt .el_deco::after {
	  font-size: 18px;
	  bottom: -7px;
	}
  }
/*=======================================================
REASON
=======================================================*/
.bl_reason {
	margin-bottom: 60px;
	/* padding: 80px 0; */
  }
  .bl_reason .el_sec_mainTtl {
	position: relative;
	font-size: 32px;
	letter-spacing: 0.06em;
	padding-bottom: 10px;
	margin-bottom: 40px;
	line-height: 1.4;
	/*
	padding-bottom: 18px;
	margin-bottom: 56px;
	*/
  }
  .bl_reason .el_sec_mainTtl::after {
	position: absolute;
	content: "";
	width: 336px;
	height: 6px;
	background: url(../img/reason_ttl_dot.svg) top center/contain no-repeat;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
  }
  .bl_reason .bl_media:first-of-type {
	margin-bottom: 8px;
  }
  .bl_reason .el_att02 {
	margin-bottom: 36px;
  }
  .bl_reason .bl_point {
	width: 770px;
	margin: 0 auto 51px;
	border: 1px solid #2b67c6;
  }
  .bl_reason .bl_point_ttl {
	background: #2b67c6;
	color: #fff;
	font-size: 24px;
	font-weight: 700;
	letter-spacing: 0.06em;
	padding-bottom: 3px;
	height: 48px;
	display: flex;
	justify-content: center;
	align-items: center;
  }
  .bl_reason .bl_point_def {
	background: url(../img/point_def_bg.png) top center/cover no-repeat;
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	padding: 25px 0 23px 105px;
  }
  .bl_reason .bl_point_def > div {
	width: 100%;
	display: flex;
	gap: 20px;
	align-items: center;
  }
  .bl_reason .bl_point_def > div:first-of-type > dt {
	color: #fff;
	background: #eb5c02;
  }
  .bl_reason .bl_point_def > div > dt {
	width: 94px;
	height: 33px;
	display: flex;
	justify-content: center;
	align-items: center;
	padding-bottom: 3px;
	font-size: 22px;
	font-weight: 700;
	letter-spacing: 0.04em;
	color: #eb5c02;
	background: #fff;
	border: 1px solid #eb5c02;
  }
  .bl_reason .bl_point_def > div > dd {
	font-size: 24px;
	font-weight: 700;
	letter-spacing: 0.04em;
  }
  
  @media screen and (max-width: 736px) {
	.bl_reason {
	  padding: 30px 0 10px;
	}
	.bl_reason .el_sec_mainTtl {
	  padding-bottom: 15px;
	  font-size: 23px;
	  margin-bottom: 40px
	}
	.bl_reason .el_sec_mainTtl::after {
	  width: 250px;
	  height: 8px;
	  background: url(../img/reason_ttl_dot_sp.svg) top center/contain no-repeat;
	}
	.bl_reason .bl_media:first-of-type {
	  margin-bottom: 24px;
	}
	.bl_reason .el_att02 {
	  margin-bottom: 28px;
	}
	.bl_reason .bl_point {
	  width: 100%;
	  margin: 0 auto;
	  border-width: 2px;
	}
	.bl_reason .bl_point_ttl {
	  font-size: 18px;
	}
	.bl_reason .bl_point_def {
	  background: url(../img/point_def_bg_sp.png) top center/cover no-repeat;
	  gap: 13px;
	  padding: 15px 25px
	}
	.bl_reason .bl_point_def > div {
	  flex-direction: column;
	  gap: 13px;
	}
	.bl_reason .bl_point_def > div > dt {
	  width: 70px;
	  height: 23px;
	  padding-bottom: 5px;
	  font-size: 15px;
	  border-width: 2px;
	  padding: 1px
	}
	.bl_reason .bl_point_def > div > dd {
	  font-size: 17px;
	  width: 690px;
	  text-align: center;
	  line-height: 1;
	}
  }
/*=============================
　共通レイアウト
==============================*/
/* 全体のWrapper */
.ly_allWrapper {
  overflow: hidden;
  max-width: 2000px;
  margin: 0 auto;
}
/* inner */
.ly_head_inner,
.ly_foot_inner,
.ly_cont,
.ly_cont_inner {
  width: 1024px;
  height: 100%;
  margin-right: auto;
  margin-left: auto;
  position: relative;
}

/* 2カラム */
.ly_cont__col {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 44px;
}
.ly_cont_main {
  width: 700px;
}
.ly_cont_side {
  width: 280px;
}
/* bl_media */
.bl_mediaList {
  display: flex;
  flex-wrap: wrap;
}
.bl_media {
  display: flex;
  flex-wrap: wrap;
  position: relative;
  gap: 32px;
}
.bl_media__rev {
  flex-direction: row-reverse;
}
.bl_media_txt+.bl_media_txt {
  margin-top: 25px;
}
.bl_media_txt+.el_att {
  margin-top: 8px;
}
/* bl_card */
.bl_cardUnit {
  display: flex;
  flex-wrap: wrap;
}
.bl_card {
  position: relative;
}
 @media screen and (max-width: 736px) {
  inner
  .ly_cont,
  .ly_cont_inner {
    width: 90%;
  }
  /* 2カラム */
  .ly_cont__col {
    gap: 80px;
  }
  .ly_cont_main,
  .ly_cont_side {
    width: 100%;
  }
  .bl_media_txt {
    font-size: 14px;
  }
  .bl_media_txt+.bl_media_txt {
    margin-top: 20px;
  }
  .bl_media_txt+.el_att {
    margin-top: 24px;
  }
} 
/*=============================
　共通パーツ
==============================*/
/* 各sectionメイン見出し */
.el_sec_mainTtl {
  text-align: center;
}
/* bl_bulletList */
.bl_bulletList > li {
  padding-left: 1em;
  position: relative;
}
.bl_bulletList > li::before {
  content: "・";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
}
.bl_bulletList.bl_bulletList__square > li {
  padding-left: calc(1em + 8px);
}
.bl_bulletList.bl_bulletList__square > li::before {
  content: "■";
}
/* bl_numList */
.bl_numList {
  counter-reset: num;
}
.bl_numList > li {
  padding-left: 1.2em;
  position: relative;
}
.bl_numList > li:before {
  counter-increment: num;
  content: counter(num) ".";
  position: absolute;
  top: 0;
  left: 0;
}
.bl_numList.bl_numList__circle > li:first-of-type::before {
  content: "①";
}
.bl_numList.bl_numList__circle > li:nth-of-type(2)::before {
  content: "②";
}
.bl_numList.bl_numList__circle > li:nth-of-type(3)::before {
  content: "③";
}
.bl_numList.bl_numList__circle > li:nth-of-type(4)::before {
  content: "④";
}
.bl_numList.bl_numList__circle > li:nth-of-type(5)::before {
  content: "⑤";
}
/* el_btn */
.el_btn {
  padding-bottom: 2px;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}
/* ※ */
.el_att {
  padding-left: 1em;
  position: relative;
  font-size: 14px;
}
.el_att::before {
  content: "※";
  position: absolute;
  top: 0;
  left: 0;
}
.el_att01, .el_att02 {
  padding-left: 2em;
}
.el_att01::before {
  content: "※1";
}
.el_att02::before {
  content: "※2";
}
span.el_att {
  display: block;
}
@media screen and (max-width: 736px) {
  /* 各sectionメイン見出し */
  /* el_btn */
  /* el_label */
  .el_label {
    padding-top: 0;
  }
  .el_att {
    font-size: 11px;
  }
}




/*=============================
　法人様向けページ用 追加スタイル
==============================*/
/*--- index page ---*/
.mod-ttl-page:before {
    display: inline-block;
    content: '';
    vertical-align: middle;
    margin: -6px 15px 0 0;
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-position: 0 0;
}

.mod-ttl-page.icn-liaison:before {
	width: 54px;
    height: 54px;
    background-image: url("../img/icon_liaison.png");
}

.lead-page {
	text-align: center;
	margin-bottom: 40px;
}

.lead-page .text {
    font-size: 20px;
    color: #a5843d;
    font-weight: bold;
}

.liaison-list_item {
	height: 160px;
	margin-bottom: 32px;
}

.liaison-list_item:hover { opacity: .8; }

.liaison-list_item > a {
	display: flex;
	align-items: center;
	height: 100%;
	border: 1px solid #bebebe;
	border-radius: 1rem;
	overflow: hidden;
	position: relative;
}

.liaison-list_item-thumb {
	flex: 0 0 480px;
	width: 480px;
	height: 100%;
}

.liaison-list_item-txt {
	flex: 1;
	min-width: 0;
	padding: 1rem 1.5rem;
}

.liaison-index .liaison-list .liaison-index_name {
    color: #ff5600;
    margin-bottom: .5rem;
    font-size: 1.17rem;
}

.liaison-index .liaison-list .liaison-list_item a:after {
    display: block;
    width: 16px;
    height: 16px;
    content: '\e919';
    font-family: iconfont;
    font-style: normal;
    font-weight: 400;
    font-size: 10px;
    color: #fff;
    text-align: center;
    line-height: 16px;
    border-radius: 8px;
    background-color: #ff5600;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    position: absolute;
    bottom: 10px;
    right: 10px;
}


/*--- single page ---*/
.content-sec { margin-bottom: 60px; }

.contents-bn {
	width: 1000px;
	height: 100px;
	margin: 0 auto;
}

.contents-bn.bn_liaison-employee-benefits a { background-color: #ffefd2; }

.contents-bn.bn_liaison-promotion a { background-color: #fffcf3; }

.contents-bn a {
	border: 1px solid #222;
	border-radius: 1rem;
	display: flex;
	align-items: center;
	overflow: hidden;
}

.contents-bn_img img {
	flex: 0 0 720px;
	width: 720px;
	height: 100px;
	object-fit: cover;
	object-position: center;
}

.contents-bn_btn {
	background-color: #fff;
	color: #222;
	padding: 8px 32px;
	border: 1px solid #222;
	border-radius: 8px;
	margin-left: auto;
	margin-right: 20px;
}

.contents-bn a:hover .contents-bn_btn {
	background-color: #ff5810;
	border-color: #ff5810;
	color: #fff;
}

.dot-headings {
	font-size: 32px;
	letter-spacing: .06em;
	line-height: 1.4;
	text-align: center;
	margin: 0 auto 40px;
	padding-bottom: 10px;
	border-bottom: 6px dotted #ff5810;
	display: table;
}

.underlined-headings {
	margin-bottom: 13px;
	border-bottom: 1px solid #ddd;
	color: #222;
	display: flex;
	align-items: end;
	gap: 4px;
	padding: 0 0 13px 18px;
	position: relative;
	font-size: 26px;
	line-height: 1.5;
}

.underlined-headings::before {
	position: absolute;
	content: "";
	width: 6px;
	height: 80%;
	border-radius: 3px;
	background: #eb5c02;
	top: 0;
	left: 0;
}

.frame-headings {
	border: 2px solid #ff5810;
	color: #ff5810;
	font-weight: bold;
	font-size: 24px;
	line-height: 60px;
	padding: 0 1.25rem;
	margin: 0 auto 40px;
	display: table;
}

.cta-btn {
	width: 560px;
	margin: 0 auto 60px;
}

.note-annotation {
	font-size: 12px;
	line-height: 1.6;
	color: #666;
	display: inline-block;
}

.content-2column {
	display: flex;
	gap: 40px;
}

.content-2column_50 { flex: 1; }

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

p > i {
	font-style: normal;
	font-size: 10px;
	vertical-align: top;
	color: #333;
}

.header-image {
	width: 1090px;
	margin: 20px auto 60px;
}

.header-image h1 {
	margin-bottom: 40px;
	border-radius: 24px;
	overflow: hidden;
	position: relative;	
}

.header-image_lead {
	width: 1000px;
	margin: 0 auto;
	padding: 24px;
	border: 2px solid #ff5810;
	border-radius: 1rem;
}

.header-image_lead-heading {
	color: #ff5810;
	font-size: 32px;
	margin-bottom: 1rem;
	letter-spacing: .08em;
	text-align: center;
	display: block
}

.about-kf_image { margin: 40px 0; }

.about-kf_image figure {
	border-radius: 1rem;
	overflow: hidden;
}

.salon-distribution-map {
	width: 760px;
	margin: 0 auto;
}

.support-menu-list { margin-bottom: 40px; }

.support-menu-list_item {
	border: 1px solid #bebebe;
	border-radius: .6rem;
	overflow: hidden;
	margin-bottom: 30px;
	display: flex;
	align-items: center;
}

.support-menu-list_item:last-child { margin-bottom: 0; }

.support-menu-list_item-image {
	width: 440px;
	flex: 0 0 440px;
	margin: 0;
}

.support-menu-list_item-detail {
	padding: 0 30px;
	flex: 1;
}

.support-menu-list_item-detail h3 {
	color: #ff5810;
	font-size: 1.5rem;
	font-weight: bold;
	margin-bottom: 1rem;
	line-height: 1;
}

.support-menu-list_item-detail p { line-height: 1.4; }

.support-menu-list_item-detail dl {
	font-size: 14px;
	line-height: 1.2;
	margin-top: 1rem;
	display: flex;
	gap: 10px;
}

.support-menu-list_item-detail dt {
	width: 46px;
	height: 24px;
	line-height: 24px;
	flex: 0 0 46px;
	background: #dedede;
	text-align: center;
	border-radius: 32px;
}

.support-menu-list_item-detail dd {
	flex: 1;
	letter-spacing: 0;
}

.support-menu-list_item-detail dd span { font-size: 11px; margin-left: 4px; }

.support-menu-list_item-detail dd small { margin-top: 4px; }

.support-menu-list_item-detail_link {
	font-size: .8rem;
	margin-top: 8px;
}

.support-menu-list_item-detail_link a {
	color: #222;
	text-decoration: underline;
}

.support-menu-list_item-detail_link a:hover { text-decoration: none; }

.pie-chart {
	width: 1090px;
	margin: 32px -45px 0;
	text-align: center;
}

.pie-chart_item {
	display: flex;
	gap: 40px;
}

.pie-chart_item img {
	width: 240px;
	height: auto;
}

.infinite-scroll {
	position: relative;
	left: 50%;
	right: 50%;
	width: 100vw;
	margin-left: -50vw;
	margin-right: -50vw;
	margin-bottom: 40px;
	overflow: hidden;
}

.infinite-scroll_inner {
	display: flex;
	width: max-content;
}

.infinite-scroll_inner img {
	width: 600px;
	height: auto;
}

.text-block { margin-bottom: 40px; }

.product-menu-list_item {
	display: flex;
	gap: 30px;
	align-items: center;
	border-bottom: 1px solid #bebebe;
	padding: 1rem;
}

.product-menu-list_item:first-child {
	border-top: 1px solid #bebebe;
	margin-top: 2rem;
}

.product-menu-list_item-img {
	flex: 0 0 320px;
	width: 320px;
}

.product-menu-list_item-detail {
	flex: 1;
	min-width: 0;
}

.product-menu-list_item-detail h4 {
	font-size: 1.5rem;
	color: #ff5810;
	line-height: 1.2;
	margin-bottom: 1rem;
}

.product-menu-list_item-detail_price {
	font-size: 20px;
	font-weight: 600;
	line-height: 1.1;
	margin: 8px 0;
}


@media screen and (max-width: 750px) { /* for SP */
	/*--- index page ---*/
	.lead-page { text-align: left; }

    .lead-page .text { font-size: 16px; }

	.liaison-list_item {
		height: auto;
		margin-bottom: 32px;
	}

	.liaison-list_item > a {
		display: block;
		align-items: unset;
		height: auto;
	}

	.liaison-list_item-thumb {
		flex: none;
		width: 100%;
		height: auto;
	}
	
	.liaison-list_item-txt {
		flex: none;
		min-width: initial;
		padding: 1rem;
	}
	
	.liaison-list_item-txt p { font-size: 14px; }


	/*--- single page ---*/
	.wrap-inner { padding: 0 16px; }
	
	.content-sec { margin-bottom: 40px; }

	.contents-bn {
		width: 100%;
		height: 80px;
		margin: 0 auto;
	}
	
	.contents-bn a {
		display: block;
		align-items: center;
		overflow: hidden;
	}
	
	.contents-bn_img img {
		flex: none;
		width: 100%;
		height: auto;
	}
	
	.contents-bn_btn { display: none; }
	
	.contents-bn a:hover .contents-bn_btn {
		background-color: #ff5810;
		border-color: #ff5810;
		color: #fff;
	}
	
	.dot-headings {
		font-size: 22px;
		letter-spacing: .06em;
		line-height: 1.4;
		text-align: center;
		margin: 0 auto 24px;
		padding-bottom: 10px;
		border-bottom: 6px dotted #ff5810;
		display: table;
	}
	
	.underlined-headings {
		margin-bottom: 13px;
		border-bottom: 1px solid #ddd;
		color: #222;
		display: flex;
		align-items: end;
		gap: 4px;
		padding: 0 0 13px 18px;
		position: relative;
		font-size: 18px;
		line-height: 1.5;
	}
	
	.underlined-headings::before {
		position: absolute;
		content: "";
		width: 6px;
		height: 80%;
		border-radius: 3px;
		background: #eb5c02;
		top: 0;
		left: 0;
	}
	
	.frame-headings {
		border: 2px solid #ff5810;
		color: #ff5810;
		font-weight: bold;
		font-size: 18px;
		line-height: 40px;
		padding: 0 1.25rem;
		margin: 0 auto 24px;
		display: table;
	}
	
	.cta-btn {
		width: 100%;
		margin: 0 0 40px;
	}
	
	.content-2column { display: block; }
	
	.content-2column_50 { flex: none; }
	
	.flex-row-reverse { flex-direction: initial; }
	
	.header-image {
		width: auto;
		margin: 20px auto 40px;
	}
	
	.header-image h1 {
		margin-bottom: 20px;
		border-radius: 8px;
		overflow: hidden;
		position: relative;	
	}
	
	.header-image_lead {
		width: auto;
		margin: 0 auto;
		padding: 16px;
		border: 2px solid #ff5810;
		border-radius: 1rem;
	}
	
	.header-image_lead-heading {
		color: #ff5810;
		font-size: 24px;
		margin-bottom: 1rem;
		letter-spacing: .08em;
		text-align: center;
		display: block
	}
	
	.about-kf_image { margin: 24px 0; }
	
	.about-kf_image figure {
		border-radius: 1rem;
		overflow: hidden;
		margin-bottom: 1rem;
	}
	
	.salon-distribution-map {
		width: auto;
		margin: 0 auto;
	}
	
	.reason-img { margin: 1rem 0; }
	
	.support-menu-list { margin-bottom: 24px; }
	
	.support-menu-list_item {
		border: 1px solid #bebebe;
		border-radius: .6rem;
		overflow: hidden;
		margin-bottom: 1rem;
		display: inline-block;
		align-items: center;
	}
	
	.support-menu-list_item:last-child { margin-bottom: 0; }
	
	.support-menu-list_item-image {
		width: 100%;
		flex: none;
		margin-bottom: 1rem;
	}
	
	.support-menu-list_item-detail {
		padding: 16px;
		flex: none;
	}

	.pie-chart {
		width: 100%;
		margin: 1rem 0 0;
		text-align: center;
	}
	
	.pie-chart_item {
		flex-wrap: wrap;
		gap: 1rem;
	}
	
	.pie-chart_item figure { width: calc((100% - 20px) / 2); }
	
	.pie-chart_item img {
		width: 100%;
		height: auto;
	}

	.infinite-scroll {
		position: relative;
		left: 50%;
		right: 50%;
		width: 100vw;
		margin-left: -50vw;
		margin-right: -50vw;
		margin-bottom: 24px;
		overflow: hidden;
	}
	
	.infinite-scroll_inner {
		display: flex;
		width: max-content;
	}
	
	.infinite-scroll_inner img {
		width: 320px;
		height: auto;
	}
	
	.text-block { margin-bottom: 24px; }

	.product-menu-list_item {
		display: block;
		align-items: normal;
	}

	.product-menu-list_item-img {
		flex: none;
		width: 80%;
		margin: 0 auto 1rem;
	}
	
	.product-menu-list_item-detail {
		flex: none;
		min-width: auto;
	}
}

