@charset "UTF-8";
html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
	padding: 0;
	border: 0;
	outline: 0;
	/* 	font-size: 16px; */
	font-style: normal;
	font-weight: 500;
	vertical-align: baseline;
	/* 	background: transparent; */
	/*font-family: 'Noto Sans JP', "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;*/
	/* 	font-family: "Noto Serif JP", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif; */
}
h1,
h2,
h3,
h4,
h5,
h6,
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary,
div,
span,
p,
ul,
ol,
li,
dl,
dt,
dd,
table,
tr,
th,
td,
a,
img,
*:after,
*:before {
	box-sizing: border-box;
}
.l-page {
	font-weight: 500;
}
h1 {
	line-height: 23px;
	padding: 3.43rem 0;
}
h1 img:nth-of-type(2) {
	display: none;
}
h2 {
	font-size: 1.75rem;
	border-bottom: 1px solid #666666;
	text-align: center;
	display: inline-block;
	margin-bottom: 6.25rem;
	letter-spacing: 0.1em;
	padding-bottom: 5px;
	word-break: keep-all;
}
main p.bdt {
	border-top: 1px solid #666;
	padding: 3rem 1.5rem 4rem;
	text-align: left;
}
p,
li,
dl,
table {
	line-break: strict;
	word-break: break-strict;
	word-wrap: break-word;
	line-height: 2;
	margin-top: 0px;
	margin-bottom: 0px;
}
main p.bdt span {
	font-size: 0.85em;
}
main {
	width: 100%;
	max-width: 800px;
	margin: 0 auto;
	text-align: center;
	background-color: transparent;
}
h2 {
	margin-top: 2rem;
}
/*送信完了*/
body.formConfirmed div.wpcf7 form.sent p.confirmed,
body.formConfirmed div.wpcf7 form.sent .confirm-checkbox,
body.formConfirmed div.wpcf7 form.sent .wpcf7-submit,
body.formConfirmed div.wpcf7 form.sent .wpcf7c-btn-confirm {
	display: none;
}

/*コンタクトのみ*/
body.contact div.wpcf7-validation-errors,
body.contact div.wpcf7-acceptance-missing {
	margin-top: 64px !important;
}
p.font18 {
	font-size: 1.125rem;
}
p.font20 {
	font-size: 1.25rem;
	line-height: 2.44;
}
p.font14 {
	font-size: 0.875rem;
}
p.font12 {
	font-size: 0.75rem;
}

#arcv_cont {
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
#arcv_cont article {
	width: 33.33333333%;
	overflow: hidden;
}
#arcv_cont article a {
	display: block;
	width: 100%;
	position: relative;
}
#arcv_cont article a img {
	transition-duration: 0.8s;
}
#arcv_cont article a:hover {
	opacity: 1;
}
#arcv_cont article a:hover img {
	transform: scale(1.1);
	transition-duration: 0.8s;
}
#arcv_cont article ul.overlay {
	width: 100%;
	height: 100%;
	position: absolute;
	background: rgba(0, 0, 0, 0.5);
	top: 0;
	left: 0;
	opacity: 0;
	-webkit-transition: opacity 0.3s linear;
	-moz-transition: opacity 0.3s linear;
	-o-transition: opacity 0.3s linear;
	transition: opacity 0.3s linear;
	filter: alpha(opacity=0);
}
#arcv_cont article ul.overlay li {
	color: #fff;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	text-align: center;
	width: 100%;
}
#arcv_cont article ul.overlay:hover {
	opacity: 1;
	filter: alpha(opacity=100);
}

#reservation {
	margin-top: 0;
	padding-top: 0;
}

#reservation.brdt {
	padding: 6.5rem 0 9rem;
	border-top: #666 1px solid;
}

@media print, screen and (max-width: 767px) {
	h1 {
		padding-top: 2rem;
		line-height: 11.5px;
	}
	h2 {
		margin-top: 1rem;
		margin-bottom: 4rem;
		border-color: #999;
	}
	#arcv_cont {
		display: block;
		/*padding: 0 6.25%;*/
	}
	#arcv_cont article {
		width: 100%;
		/*margin-bottom: 20px;*/
	}
	#arcv_cont article ul.overlay li {
		font-size: 1.3rem;
	}

	#reservation {
		/*padding: 6.5rem 6% 8rem;*/
		margin-top: 0;
	}
	#reservation.brdt {
		padding: 6.5rem 6% 8rem;
		border-color: #999;
	}
	#reservation h2 {
		margin-bottom: 5rem;
	}
}

/*----------------about----------------*/
body.category-showcase article a {
	display: block;
	width: 100%;
	position: relative;
	margin-bottom: 50px;
}

body.category-showcase article:nth-of-type(1) a img,
body.category-showcase article:nth-of-type(2) a img,
body.category-showcase article:nth-of-type(3) a img {
	opacity: 1;
	transform: translate(0, 0);
	-moz-transform: translate(0, 0);
	-webkit-transform: translate(0, 0);
	-o-transform: translate(0, 0);
	-ms-transform: translate(0, 0);
}

body.category-showcase article a:hover {
	opacity: 1;
}
body.category-showcase article ul.overlay {
	width: 100%;
	height: 100%;
	position: absolute;
	background: rgba(0, 0, 0, 0.5);
	top: 0;
	left: 0;
	opacity: 0;
	-webkit-transition: opacity 0.3s linear;
	-moz-transition: opacity 0.3s linear;
	-o-transition: opacity 0.3s linear;
	transition: opacity 0.3s linear;
	filter: alpha(opacity=0);
}
body.category-showcase article ul.overlay li {
	font-size: 1.5rem;
	color: #fff;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	text-align: center;
	width: 100%;
}
body.category-showcase article ul.overlay:hover {
	opacity: 1;
	filter: alpha(opacity=100);
}

body.category-showcase #arcv_wrapper {
	background: #fafafa;
	margin: 9.375rem 0 6rem;
}
body.category-showcase #arcv_wrapper ul li {
	border-bottom: 1px solid #666666;
	line-height: 1;
	position: relative;
	font-size: 1.125rem;
	text-align: left;
}
body.category-showcase #arcv_wrapper ul li:first-of-type {
	border-top: 1px solid #666666;
}
body.category-showcase #arcv_wrapper ul li a {
	color: #000;
	padding: 1.93rem 0;
	display: block;
	background: url(../images/common/ic-arrow-arcv.png) no-repeat 97.5% 50%;
}

body.category-showcase #arcv_wrapper ul li a:visited {
	color: #a3a3a3;
}

.list-about-pic {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	margin: 130px auto 95px;
}
.list-about-pic > li {
	width: 254px;
}
.list-about-pic > li a {
	display: block;
	color: black;
	font-size: 0.9em;
}
body.page-template-page-about .list-about-pic > li p:last-of-type {
	text-align: center;
	margin-bottom: 0;
	line-height: 2.1em;
	padding: 5px 0 25px;
}

@media print, screen and (max-width: 767px) {
	body.category-showcase header h1 {
		width: 63%;
		top: 45%;
	}
	body.category-showcase #logo_top {
		width: 57.1%;
		margin: 0 auto 6.7rem;
	}
	body.category-showcase h2 {
		margin-bottom: 3.5rem;
		margin-bottom: 5rem;
	}
	body.category-showcase article a {
		margin-bottom: 20px;
	}
	body.category-showcase #arcv_wrapper {
		margin-top: 7rem;
	}
	body.category-showcase #arcv_wrapper ul li:first-of-type,
	body.category-showcase #arcv_wrapper ul li {
		border-color: #999;
	}
	body.category-showcase #arcv_wrapper ul li a {
		background-size: 8px;
		padding: 1.7rem 0;
	}
}

/*----------------about----------------*/
body.page-template-page-about main h3 {
	font-size: 2rem;
	margin: 4.5rem 0 5rem;
	text-indent: 0.8em;
}
body.page-template-page-about main p {
	line-height: 2.5;
	margin-bottom: 2.3rem;
}
body.page-template-page-about main p.font18:first-of-type::after {
	content: "";
	width: 78px;
	/*border-bottom: 1px solid #000;*/
	display: block;
	margin: 3.4rem auto 3.9rem;
}
body.page-template-page-about main p:last-of-type {
	margin-bottom: 5.3rem;
}

body.page-template-page-about main div.lg-about {
	width: 110px;
	margin: 5.5rem auto 9rem;
}

/*body.page-template-page-about main .lg-about:after{
  content: '';
  width: 78px;
  border-bottom: 1px solid #000;
  display: block;
  margin: 6.4rem auto 3.9rem;
}*/
body.page-template-page-about main p.font18 span {
	letter-spacing: 0;
}
body.page-template-page-about main p.font18 a {
	color: #000;
}
body.page-template-page-about main p.font18:nth-of-type(6) a {
	color: #0099ff;
}

@media print, screen and (max-width: 767px) {
	body.page-template-page-about main p.font18:first-of-type::after {
		width: 39px;
	}
	body.page-template-page-about main p.font18 {
		font-size: 1.2rem;
	}
	body.page-template-page-about main p.font18:nth-of-type(5),
	body.page-template-page-about main p.font18:nth-of-type(6),
	body.page-template-page-about main p.font18:nth-of-type(7) {
		text-align: left;
	}
	body.page-template-page-about main div.lg-about {
		width: 65px;
	}
	.list-about-pic {
		margin: 50px auto;
	}
	.list-about-pic > li {
		width: 48%;
	}
	body.page-template-page-about .list-about-pic > li p:last-of-type {
		text-align: center;
		margin-bottom: 0;
		line-height: 2.1em;
		padding: 5px 0 10px;
	}
}

/*----------------price----------------*/
body.page-template-page-price #price_wrapper {
	max-width: 800px;
	text-align: left;
	margin: 0 auto 0;
}
body.page-template-page-price h3 {
	overflow: hidden;
	border-bottom: 1px solid #666666;
	margin-bottom: 2.6rem;
	padding-bottom: 5px;
}
/*body.page-template-page-price h3:first-of-type{
  margin-bottom: 1rem;
}*/

body.page-template-page-price p.font12 {
	font-size: 0.75rem;
}
body.page-template-page-price h3 span.font26 {
	font-size: 1.625rem;
	float: left;
	display: block;
}
body.page-template-page-price h3 span.font26 span.font16 {
	font-size: 1rem;
}
body.page-template-page-price span.floatR {
	float: right;
	font-size: 1.625rem;
	display: block;
}
body.page-template-page-price span.floatR span.font16 {
	font-size: 1rem;
	margin-right: 1.5rem;
}
body.page-template-page-price ul#ph {
	position: relative;
	height: 600px;
	margin-bottom: 140px;
}

body.page-template-page-price ul#ph li:first-of-type {
	width: 410px;
	position: absolute;
	left: -50px;
	top: 0;
}
body.page-template-page-price ul#ph li:nth-of-type(2) {
	width: 415px;
	position: absolute;
	right: -50px;
	top: 96px;
	z-index: 5;
}
body.page-template-page-price ul#ph li:nth-of-type(3) {
	width: 415px;
	position: absolute;
	left: 68px;
	top: 323px;
}
body.page-template-page-price .plan p:first-of-type {
	margin-bottom: 3.8rem;
}
body.page-template-page-price .plan .plan-box {
	overflow: hidden;
	margin-bottom: 40px;
}
body.page-template-page-price .plan .plan-box img {
	float: left;
	width: 50%;
}
body.page-template-page-price .plan .plan-box .plan-txt {
	float: right;
	width: 45%;
}
body.page-template-page-price .plan .plan-box .plan-txt p.font20 {
	line-height: 100%;
	margin-bottom: 1rem;
}

body.page-template-page-price .plan .transportation-cost {
	border: 1px solid #808080;
	padding: 60px 40px 45px;
	margin-top: 100px;
	margin-bottom: 110px;
}
body.page-template-page-price .plan .transportation-cost h3 {
	border-bottom: none;
}
body.page-template-page-price .plan .transportation-cost h3 span.font26 {
	display: inline;
	float: none;
}
body.page-template-page-price .plan .transportation-cost h3 span.font26 img {
	display: inline-block;
	vertical-align: middle;
	width: 54%;
	margin: 0 44px 0 38px;
}
body.page-template-page-price .plan .transportation-cost h3 span.font1rem {
	font-size: 1rem;
}
body.page-template-page-price .plan .transportation-cost p:first-of-type {
	margin-bottom: 40px;
}
body.page-template-page-price .plan .transportation-cost p:nth-of-type(2) {
	margin-bottom: 0.5rem;
}
body.page-template-page-price .plan .transportation-cost p.font14 {
	margin-bottom: 30px;
}
body.page-template-page-price .plan .transportation-cost p:last-of-type {
	margin-bottom: 0;
}

body.page-template-page-price .plan .box-plan.transportation-cost {
	border: 1px solid #808080;
	border-bottom: none;
	margin-top: 100px;
	margin-bottom: 110px;
	padding: 0;
}
body.page-template-page-price .plan .box-plan.transportation-cost > div {
	padding: 40px 30px 40px 45px;
	border-bottom: 1px solid #808080;
	position: relative;
}
body.page-template-page-price span.font26 {
	font-size: 1.625rem;
}

body.page-template-page-price .plan .box-plan.transportation-cost > div h3 {
	margin-bottom: 23px;
}
body.page-template-page-price .plan .box-plan.transportation-cost > div h3 .font26 {
	letter-spacing: 5px;
	margin-left: 0px;
}
body.page-template-page-price .plan .box-plan.transportation-cost > div h3 .font1rem {
	letter-spacing: 2px;
}
body.page-template-page-price .plan .box-plan.transportation-cost .plan-fee {
	position: absolute;
	/* right: 40px; */
	top: 50px;
	width: 100%;
	text-align: right;
	box-sizing: border-box;
	right: 30px;
}
body.page-template-page-price .plan .box-plan.transportation-cost .plan-fee p {
	margin-bottom: 10px;
}
body.page-template-page-price .plan .box-plan.transportation-cost .plan-fee p.plan-fee-text {
	line-height: 1em;
	margin-bottom: 0;
}
body.page-template-page-price .plan .box-plan.transportation-cost .plan-fee p.plan-fee-text img {
	display: none;
}
body.page-template-page-price .plan .box-plan.transportation-cost .plan-fee p.plan-fee-text-1 {
	background: url(../images/price/box-plan-fee-1.png) 73% 10px no-repeat;
	background-size: 60px 2px;
}
body.page-template-page-price .plan .box-plan.transportation-cost .plan-fee p.plan-fee-text-2 {
	background: url(../images/price/box-plan-fee-2.png) 73% 10px no-repeat;
	background-size: 60px 2px;
}
body.page-template-page-price .plan .box-plan.transportation-cost .plan-fee p.plan-fee-text-3 {
	background: url(../images/price/box-plan-fee-3.png) 67% 10px no-repeat;
	background-size: 126px 3px;
}

body.page-template-page-price .plan .box-plan.transportation-cost .plan-fee .plan-fee-text-discount {
	color: #ff0000;
	font-size: 0.9em;
}
body.page-template-page-price .plan .box-plan.transportation-cost .plan-fee .plan-fee-text-discount .font26 {
	font-size: 1.425rem;
	margin-left: 15px;
	padding-right: 10px;
}

body.page-template-page-price .option p:first-of-type {
	margin-bottom: 5.6rem;
}
body.page-template-page-price .option .option-box {
	overflow: hidden;
	margin-bottom: 40px;
}
body.page-template-page-price .option .option-box:last-of-type {
	margin-bottom: 9rem;
}
body.page-template-page-price .option .option-box img {
	float: left;
	width: 37.5%;
}
body.page-template-page-price .option .option-box .option-txt {
	float: right;
	width: 57.5%;
}
body.page-template-page-price .option .option-box .option-txt p.font18 {
	line-height: 2;
	margin-bottom: 0.44rem;
}
body.page-template-page-price .option .option-box .option-txt p.font18:last-of-type {
	margin-bottom: 0;
}
body.page-template-page-price .option .option-box .option-txt p.font14:after {
	content: "";
	width: 0.875rem;
	border-bottom: 1px solid #000;
	display: block;
	margin: 1rem 0 0.55rem;
}
body.page-template-page-price .option .option-box .option-txt p.font18 span {
	font-size: 0.75rem;
}
body.page-template-page-price .option .option-box .option-txt p.font18 span:nth-of-type(even) {
	font-size: 0.875rem;
}

body.page-template-page-price .other {
	margin-bottom: 5.65rem;
}
body.page-template-page-price .other p.font14 {
	margin-bottom: 2.5rem;
	line-height: 2.4;
}

/*body.page-template-page-price dl{
  margin-top: 2rem;
}
body.page-template-page-price dl dt span{
  border-bottom: 1px solid #666666;
}
body.page-template-page-price dl dt span.font14{
  border-bottom: none;
  font-size: 0.875em;
}
body.page-template-page-price dl dd{
  font-size: 0.937rem;
  margin: 0.1rem 0 2.55rem;
}
body.page-template-page-price dl dd:last-of-type{
  margin-bottom: 4.2rem;
}


body.page-template-page-price .slide-wrapper{
  position: relative;
  margin-bottom: 4.1rem;
}*/

/*body.page-template-page-price h3#transportation{
  padding-top: 5rem;
}

body.page-template-page-price .transportation-cost p:first-of-type{
  margin-bottom: 2.5rem;
}
body.page-template-page-price .transportation-cost p:nth-of-type(3),
body.page-template-page-price .transportation-cost p:nth-of-type(4){
  margin-bottom: 1.8rem;
}
body.page-template-page-price .transportation-cost p:last-of-type{
  margin-bottom: 9rem;
}*/

@media print, screen and (max-width: 767px) {
	body.page-template-page-price h3,
	body.page-template-page-price dl dt span {
		border-color: #999;
	}
	body.page-template-page-price p.font12 {
		font-size: 1.1rem;
	}
	body.page-template-page-price h3 span.font26,
	body.page-template-page-price span.floatR {
		font-size: 1.8rem;
	}

	body.page-template-page-price ul#ph {
		height: 100%;
		margin-bottom: 6.8rem;
	}

	body.page-template-page-price ul#ph li:first-of-type {
		width: 85%;
		margin: 0 auto;
		top: 0;
		position: static;
	}
	body.page-template-page-price ul#ph li:nth-of-type(2) {
		width: 67.8%;
		position: relative;
		right: 0;
		top: 0;
		margin-left: 33.2%;
		margin-top: 20px;
	}
	body.page-template-page-price ul#ph li:nth-of-type(3) {
		width: 67.8%;
		position: static;
		left: 0;
		top: 0;
		margin-right: 33.2%;
		margin-top: -20px;
	}

	body.page-template-page-price .plan .plan-box {
		margin-bottom: 3rem;
	}
	body.page-template-page-price .plan p:first-of-type {
		font-size: 1.2rem;
		margin-bottom: 2.5rem;
	}
	body.page-template-page-price .plan .plan-box img {
		float: none;
		width: 100%;
	}
	body.page-template-page-price .plan .plan-box .plan-txt {
		width: 100%;
		float: none;
		padding: 1.5rem 0 0;
	}
	body.page-template-page-price .plan .plan-box .plan-txt p.font20 {
		font-size: 1.4rem;
	}
	body.page-template-page-price .plan .plan-box .plan-txt p.font15 {
		font-size: 1.2rem;
	}

	body.page-template-page-price .plan .transportation-cost {
		margin-top: 4.4rem;
		padding: 2.1rem 1.8rem;
		margin-bottom: 8rem;
	}
	body.page-template-page-price .plan .transportation-cost h3 span.font26 span {
		width: 33%;
		margin: 0 2%;
		display: inline-block;
		background: url(../images/price/img_price09.png) no-repeat 50%;
		background-size: 400%;
	}
	body.page-template-page-price .plan .transportation-cost h3 span.font26 img {
		/*display: none;*/
		opacity: 0;
	}
	body.page-template-page-price .plan .transportation-cost h3 {
		margin-bottom: 1.5rem;
	}
	body.page-template-page-price .plan .transportation-cost p:first-of-type {
		margin-bottom: 2.6rem;
		font-size: 13px;
	}
	body.page-template-page-price .plan .transportation-cost p.center-sp-3 {
		font-size: 13px;
	}
	body.page-template-page-price .plan .transportation-cost p {
		font-size: 1.1rem;
	}

	/*body.page-template-page-price .transportation-cost p:first-of-type{
  font-size: 1.2rem;
}
body.page-template-page-price .transportation-cost p:last-of-type{
  margin-bottom: 7.5rem;
}
body.page-template-page-price .transportation-cost p:nth-of-type(2),
body.page-template-page-price .transportation-cost p.font14{
  font-size: 1.1rem;
}*/
	body.page-template-page-price .option p:first-of-type {
		font-size: 1.2rem;
		margin-bottom: 3.5rem;
	}
	body.page-template-page-price .option .option-box {
		width: 89%;
		border-bottom: 1px solid #999;
		margin: 0 auto 2.5rem;
	}
	body.page-template-page-price .option .option-box:last-of-type {
		margin-bottom: 7rem;
		border-bottom: none;
	}
	body.page-template-page-price .option .option-box img {
		float: none;
		width: 100%;
	}
	body.page-template-page-price .option .option-box .option-txt {
		width: 100%;
		float: none;
		padding: 1.5rem 0;
	}
	body.page-template-page-price .option .option-box .option-txt p.font18 {
		font-size: 1.4rem;
	}
	body.page-template-page-price .option .option-box .option-txt p.font18 span,
	body.page-template-page-price .option .option-box .option-txt p.font18 span:nth-of-type(even) {
		font-size: 1rem;
	}
	body.page-template-page-price .option .option-box .option-txt p.font14 {
		font-size: 1.1rem;
	}
	body.page-template-page-price .other p.font14 {
		font-size: 1rem;
	}

	body.page-template-page-price .plan .box-plan.transportation-cost > div {
		padding: 25px;
	}
	body.page-template-page-price .plan .box-plan.transportation-cost > div h3 {
		text-align: center;
	}
	body.page-template-page-price .plan .box-plan.transportation-cost > div h3 span:last-child {
		display: block;
		text-align: center;
	}
	body.page-template-page-price .plan .box-plan.transportation-cost .plan-fee {
		position: relative;
		width: auto;
		right: auto;
		top: auto;
		width: auto;
	}
	body.page-template-page-price .plan .box-plan.transportation-cost .plan-fee p.plan-fee-text {
		background: url(../images/price/box-plan-fee-sp.png) left center no-repeat;
		background-size: 100% auto;
	}
	body.page-template-page-price .plan .box-plan.transportation-cost .plan-fee p.plan-fee-text img {
	}
	body.page-template-page-price span.font26 {
		display: inline-block;
		background: #fafafa;
		padding-left: 5px;
	}
	body.page-template-page-price span.font1rem {
		display: inline-block;
		background: #fafafa;
	}
	body.page-template-page-price .plan .box-plan.transportation-cost .plan-fee .plan-fee-text-discount {
		padding-right: 6px;
	}
	body.page-template-page-price .center-sp {
		text-align: center;
	}
	.br-pc {
		display: none;
	}
}

/*----------------guide----------------*/
body.page-template-page-guide .guide div.box {
	border: 1px solid #808080;
	padding: 2.75rem 3.125rem 3.125rem;
}
body.page-template-page-guide .guide h4 {
	font-size: 1.5rem;
	margin-bottom: 2rem;
}
body.page-template-page-guide .guide div.box p.font18 {
	line-height: 2.4;
}

body.page-template-page-guide .guide p.font20 {
	margin-bottom: 5.3rem;
}
body.page-template-page-guide .guide p.font18 a span {
	font-size: 1rem;
}
body.page-template-page-guide .guide p.font14 {
	margin-top: 2.875rem;
	text-align: left;
}
body.page-template-page-guide .guide p.gd-ar span {
	font-size: 1.43rem;
	margin: 2.2rem 0 1.3rem;
	display: block;
	font-family: YuGothic, YuGothicM;
}

body.page-template-page-guide .qa h2 {
	display: block;
	text-align: left;
	border-bottom: none;
	margin: 3.5rem 0 0.8rem;
	padding-top: 5rem;
}
body.page-template-page-guide .qa dl {
	text-align: left;
	border-bottom: 1px solid #666;
	margin-bottom: 6rem;
}
body.page-template-page-guide .qa dl dt.btn-q {
	font-size: 1.125rem;
	border-top: 1px solid #666666;
	padding: 1.3rem 0 1.3rem 0.4em;
	cursor: pointer;
	background: url(../images/guide/img-ic-guide-btn-q-o.svg) no-repeat 97% 50%;
	background-size: 21px;
	transition: 0.3s;
}
body.page-template-page-guide .qa dl dt.btn-q:hover {
	opacity: 0.7;
}

body.page-template-page-guide .qa dl dt.btn-q.active {
	background: url(../images/guide/img-ic-guide-btn-q-c.svg) no-repeat 97% 50%;
	background-size: 19px;
}
/*body.page-template-page-guide .qa dl dt.active:after{
  content: '';
  width: 1.125rem;
  border-bottom: 1px solid #666;
  display: block;
  margin: 1em 0 0;
}*/
body.page-template-page-guide .qa dl dd.btn-a {
	display: none;
	padding: 0 0.4em 1.3rem 0.4em;
}
body.page-template-page-guide .qa dl dd.btn-a:before {
	content: "";
	width: 1.125rem;
	border-top: 1px solid #666;
	display: block;
	padding-top: 1.3rem;
}

@media print, screen and (max-width: 767px) {
	body.page-template-page-guide .guide div.box {
		padding: 2.75rem 1.75rem 3.125rem;
	}
	body.page-template-page-guide .guide div.box p.font18 {
		text-align: left;
		line-height: 2;
	}
	body.page-template-page-guide .qa h2 {
		margin-top: 7rem;
	}
	body.page-template-page-guide .qa dl dt.btn-q,
	body.page-template-page-guide .qa dl dt.btn-q.active {
		background-size: 13px;
		padding-right: 10%;
		border-color: #999;
	}
	body.page-template-page-guide .qa dl dd.btn-a {
		font-size: 1.125rem;
		line-height: 2;
	}

	body.page-template-page-guide .qa dl,
	body.page-template-page-guide .qa dl dd.btn-a:before {
		border-color: #999;
	}
}

/*----------------member----------------*/
body.page-template-page-member main .prf {
	padding-top: 3.125rem;
	border-top: 1px solid #666666;
}
body.page-template-page-member main p {
	text-align: left;
	padding: 2rem 6.25%;
}
body.page-template-page-member main img {
	opacity: 1;
	transform: translate(0, 0);
	-moz-transform: translate(0, 0);
	-webkit-transform: translate(0, 0);
	-o-transform: translate(0, 0);
	-ms-transform: translate(0, 0);
}

body.page-template-page-member main .name {
	font-size: 1.75rem;
	padding-bottom: 0;
}
body.page-template-page-member main .name span {
	font-size: 1.125rem;
	display: block;
}
body.page-template-page-member main p.prf-txt {
	line-height: 2.2;
}
body.page-template-page-member main #insta-feed {
	padding: 3.7rem 6px 0;
	display: flex;
	flex-wrap: wrap;
}
body.page-template-page-member main #insta-feed li {
	width: 25%;
	padding: 0 6px;
}
body.page-template-page-member main #insta-feed li img {
	width: 100%;
}

body.page-template-page-member main ul.mbm_pager {
	border-top: 1px solid #666;
	border-bottom: 1px solid #666;
	padding: 1.5rem 0;
	margin: 4.8rem 0 6rem;
	position: relative;
}
body.page-template-page-member main ul.mbm_pager li,
body.page-template-page-member main ul.mbm_pager li a {
	display: inline-block;
	color: #000;
	width: 200px;
}
body.page-template-page-member main ul.mbm_pager li.btn-previous a,
body.page-template-page-member main ul.mbm_pager li.btn-next a {
	text-indent: -299px;
	overflow: hidden;
	height: 22px;
	position: absolute;
}
body.page-template-page-member main ul.mbm_pager li.btn-previous a {
	background: url(../images/member/ic-arrow-previous.svg) no-repeat 0 50%;
	left: 2.5%;
	top: 50%;
	transform: translateY(-50%);
}
body.page-template-page-member main ul.mbm_pager li.btn-next a {
	background: url(../images/member/ic-arrow-next.svg) no-repeat 100% 50%;
	right: 2.5%;
	top: 50%;
	transform: translateY(-50%);
}

body.page-template-page-member main div.prf {
	display: flex;
	margin-bottom: 3.125rem;
}
body.page-template-page-member main div.prf:nth-of-type(4) {
	margin-top: 0;
	margin-bottom: 6rem;
	padding-bottom: 3.125rem;
	border-bottom: 1px solid #666666;
}
body.page-template-page-member main div.prf div {
	width: 50%;
	margin-right: 7%;
}
body.page-template-page-member main div.prf ul {
	width: 43%;
	text-align: left;
	padding-top: 0.9rem;
}
body.page-template-page-member main div.prf ul li a {
	margin-top: 1.5rem;
	display: inline-block;
	color: #000;
	font-size: 1.125rem;
	letter-spacing: 0.05em;
}

/*Instagram Feed*/
#sb_instagram #sbi_images {
	text-align: left;
}
#sb_instagram a {
	transition: 0s !important;
}
#sb_instagram a:hover,
#sb_instagram a:focus {
	opacity: 0.5 !important;
	transition: 0.3s !important;
	animation: none;
}

@media print, screen and (max-width: 767px) {
	body.page-template-page-member h2 {
		margin-bottom: 5.6rem;
	}
	body.page-template-page-member main .prf,
	body.page-template-page-member main div.prf {
		display: block;
		padding-top: 2.5rem;
		border-color: #999;
	}
	body.page-template-page-member main div.prf div {
		width: 100%;
	}
	body.page-template-page-member main div.prf ul {
		width: 100%;
		padding-top: 2.4rem;
	}
	body.page-template-page-member main .name {
		font-size: 2.2rem;
	}
	body.page-template-page-member main .name span {
		font-size: 1.32rem;
		line-height: 2.2;
	}
	body.page-template-page-member main .prf-txt {
		font-size: 1.1rem;
	}
	body.page-template-page-member main div.prf ul li a {
		font-size: 1.2rem;
		margin-top: 2.5rem;
	}
	body.page-template-page-member main div.prf:nth-of-type(3) {
		margin-bottom: 5rem;
		border-color: #999;
	}

	/*メンバー紹介*/
	body.page-template-page-member main p {
		padding: 2rem 0;
	}
	body.page-template-page-member main p.prf-txt {
		padding: 1.5rem 0 2rem;
	}
	body.page-template-page-member main #insta-feed {
		padding: 3.7rem 1px 0;
	}
	body.page-template-page-member main #insta-feed li,
	#sb_instagram #sbi_images {
		padding: 1px !important;
	}

	body.page-template-page-member main ul.mbm_pager li.btn-previous a,
	body.page-template-page-member main ul.mbm_pager li.btn-next a {
		background-size: 10px;
	}
	body.page-template-page-member main ul.mbm_pager li,
	body.page-template-page-member main ul.mbm_pager li a {
		width: 90px;
		font-size: 1.25rem;
	}
}

/*----------------contact----------------*/
body.contact main p.bdt {
	border-top: 1px solid #666;
	padding: 3rem 1.5rem 4rem;
	text-align: left;
}
body.contact main p.bdt span {
	font-size: 0.85em;
}
div.wpcf7 form {
	text-align: left;
	padding: 0 1.5rem;
	/*   margin-bottom: 5rem; */
	margin-bottom: 135px;
}

div.wpcf7 dl {
	width: 100%;
}
div.wpcf7 dd {
	width: 80.25%;
	margin-bottom: 2rem;
	margin-top: 0.2rem;
}

.required:after {
	display: inline-block;
	content: "*";
	opacity: 1;
	color: #ff4343;
	font-size: 1.25rem;
	line-height: 1em;
	text-align: center;
}

div.wpcf7 dl.tel-box dt,
div.wpcf7 dl.text-box dt,
div.wpcf7 dl.zip-box dt,
div.wpcf7 dl.place-box dt {
	letter-spacing: 0.25em;
}

div.wpcf7 dl.text-box dd,
div.wpcf7 dl.addr-box dd,
div.wpcf7 dl.place-box dd {
	width: 93.75%;
}
div.wpcf7 textarea {
	width: 100%;
}

div.wpcf7 input[type="text"],
div.wpcf7 input[type="email"],
div.wpcf7 input[type="tel"],
div.wpcf7 textarea {
	border: 1px solid #999999;
	padding: 16px 20px;
	font-size: 1.125rem;
	background-color: #fafafa;
	width: 100%;
	box-sizing: border-box;
	line-height: 1;
	-webkit-appearance: none;
	border-radius: 0;
}

_::-webkit-full-page-media,
_:future,
:root div.wpcf7 input[type="text"],
_::-webkit-full-page-media,
_:future,
:root div.wpcf7 input[type="email"],
_::-webkit-full-page-media,
_:future,
:root div.wpcf7 input[type="tel"],
_::-webkit-full-page-media,
_:future,
:root div.wpcf7 textarea {
	line-height: 2;
	padding: 11px 20px;
}

div.wpcf7 input::placeholder,
div.wpcf7 input:-ms-input-placeholder,
div.wpcf7 input::-ms-input-placeholder {
	color: #b3b3b3 !important;
}

div.wpcf7 input[type="text"]:focus,
div.wpcf7 input[type="email"]:focus,
div.wpcf7 input[type="tel"]:focus,
div.wpcf7 textarea:focus,
input[type="date"] {
	border-color: #333333;
	outline: 0;
}

.wpcf7c-conf:focus {
	border: 1px solid #eeeeee !important;
}

/*入力漏れ*/
.wpcf7-not-valid {
	border: 1px solid #ff0000 !important;
	background-color: #fafafa !important;
}

/*ラジオボタン*/
div.wpcf7 .radio-btn span.wpcf7-list-item {
	margin: 1rem 3rem 0 1.4rem;
}
div.wpcf7 .radio-btn input[type="radio"] {
	display: none;
}
div.wpcf7 .radio-btn .wpcf7-list-item-label {
	position: relative;
	padding-left: 0.7em;
}
div.wpcf7 .radio-btn .wpcf7-list-item-label:before {
	-webkit-transition: opacity 0.2s linear;
	transition: opacity 0.2s linear;
	position: absolute;
	top: 50%;
	left: -20px;
	display: block;
	margin-top: -13px;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	border: 7px solid #333;
	background-color: #fff;
	content: "";
	opacity: 0;
}
div.wpcf7 .radio-btn .wpcf7-list-item-label:after {
	-webkit-transition: border-color 0.2s linear;
	transition: border-color 0.2s linear;
	position: absolute;
	top: 50%;
	left: -20px;
	display: block;
	margin-top: -13px;
	width: 24px;
	height: 24px;
	border: 1px solid #acacac;
	border-radius: 50%;
	content: "";
	opacity: 1;
}

div.wpcf7 .radio-btn input[type="radio"]:checked + .wpcf7-list-item-label:before,
div.wpcf7 .radio-btn input[type="hidden"] + .wpcf7-list-item-label:before {
	opacity: 1;
}
div.wpcf7 .radio-btn input[type="radio"]:checked + .wpcf7-list-item-label:after {
	opacity: 0;
}

/*チェックボックス*/
div.wpcf7 .wpcf7-checkbox span.wpcf7-list-item {
	margin: 1rem 3rem 0 1.4rem;
}
div.wpcf7 .wpcf7-checkbox input[type="checkbox"] {
	display: none;
}
div.wpcf7 .wpcf7-checkbox .wpcf7-list-item-label {
	position: relative;
	padding-left: 0.7em;
}
div.wpcf7 .wpcf7-checkbox .wpcf7-list-item-label:before {
	-webkit-transition: opacity 0.2s linear;
	transition: opacity 0.2s linear;
	position: absolute;
	top: 55%;
	left: -20px;
	display: block;
	margin-top: -13px;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	border: 7px solid #333;
	background-color: #fff;
	content: "";
	opacity: 0;
}
div.wpcf7 .wpcf7-checkbox .wpcf7-list-item-label:after {
	-webkit-transition: border-color 0.2s linear;
	transition: border-color 0.2s linear;
	position: absolute;
	top: 55%;
	left: -20px;
	display: block;
	margin-top: -13px;
	width: 24px;
	height: 24px;
	border: 1px solid #acacac;
	border-radius: 50%;
	content: "";
	opacity: 1;
}

div.wpcf7 .wpcf7-checkbox input[type="checkbox"]:checked + .wpcf7-list-item-label:before,
div.wpcf7 .wpcf7-checkbox input[type="hidden"] + .wpcf7-list-item-label:before {
	opacity: 1;
}
div.wpcf7 .wpcf7-checkbox input[type="checkbox"]:checked + .wpcf7-list-item-label:after {
	opacity: 0;
}

/*ご希望の日程*/
div.wpcf7 .date-box {
}

div.wpcf7 .date-box dd {
	position: relative;
}
div.wpcf7 .date-box dd span:before {
	position: absolute;
	content: "";
	margin-top: -6px;
	top: 50%;
	right: 25px;
	width: 20px;
	height: 12px;
	background-image: url(../images/order/ic-arrow-date.svg);
	background-repeat: no-repeat;
}
div.wpcf7 .date-box dd span.wpcf7-not-valid-tip:before {
	display: none;
}
input[type="date"] {
	border: 1px solid #999999;
	padding: 15px;
	font-size: 1.125rem;
	background-color: #fafafa;
	width: 100%;
	box-sizing: border-box;
}
/*safariハック*/
_::-webkit-full-page-media,
_:future,
:root input[type="date"] {
	padding: 13px 10px 7px;
}
input[type="date"]::-webkit-calendar-picker-indicator {
	position: absolute;
	margin-top: -15px;
	top: 50%;
	right: 7px;
	padding: 0;
	width: 30px;
	height: 28px;
	/*  background: rgba(255, 0, 0, 0.5); // 一旦背景色を付けて、見やすくします*/
	color: transparent;
	cursor: pointer;
	background: transparent;
}

input[type="date"]::-webkit-inner-spin-button {
	-webkit-appearance: none;
}
input[type="date"]::-webkit-clear-button {
	-webkit-appearance: none;
}

/*送信ボタン*/
div.wpcf7 [type="button"],
div.wpcf7 [type="reset"],
div.wpcf7 [type="submit"] {
	padding: 0 1.7rem;
	font-size: 1.125rem;
	height: 80px;
	line-height: 78px;
	box-sizing: border-box;
	width: 468px;
	border: none;
	font-family: "Noto Serif JP", "メイリオ", serif, sans-serif;
	background-color: #fafafa;
	cursor: pointer;
	margin-top: 3.5rem;
	border: 1px solid #808080;
	transition: 0.2s;
	-webkit-appearance: none;
	border-radius: 0;
}

div.wpcf7 [type="button"]:hover,
div.wpcf7 [type="reset"]:hover,
div.wpcf7 [type="submit"]:hover {
	border: 1px solid #e6e6e6;
	background-color: #e6e6e6;
	opacity: 1;
	transition: 0s;
}

div.wpcf7 form.custom-wpcf7c-confirmed [type="submit"].wpcf7c-elm-step2[disabled] {
	margin-top: 1.5rem;
	border: 1px solid #e6e6e6;
	background-color: #e6e6e6;
	color: #fff;
	cursor: default;
	transition: 0.2s;
}
div.wpcf7 form.custom-wpcf7c-confirmed [type="submit"].wpcf7c-elm-step2[disabled]:hover {
	margin-top: 1.5rem;
	border: 1px solid #e6e6e6;
	background-color: #e6e6e6;
	color: #fff;
}
div.wpcf7 form.custom-wpcf7c-confirmed [type="submit"].wpcf7c-elm-step2 {
	background-color: #4d4d4d;
	border: 1px solid #4d4d4d;
	color: #fff;
	margin-top: 1.5rem;
	transition: 0.2s;
}
div.wpcf7 form.custom-wpcf7c-confirmed [type="submit"].wpcf7c-elm-step2:hover {
	background-color: #2a2a2a;
	border: 1px solid #2a2a2a;
}

div.wpcf7 input[type="submit"]:focus,
div.wpcf7 input[type="button"]:focus {
	border: none;
	outline: 0;
}

/*Alert*/
span.wpcf7-not-valid-tip {
	color: #ff0000;
	font-size: 0.875rem;
}

div.wpcf7-response-output {
	border: 2px solid #ff0000;
	color: #ff0000;
	box-sizing: border-box;
	margin: 0 !important;
	width: 800px;
}
div.wpcf7-validation-errors,
div.wpcf7-acceptance-missing {
	border: 2px solid #ff0000 !important;
}
div.wpcf7-mail-sent-ok {
	color: #000;
}

/*確認画面*/
body.formConfirmed div.wpcf7 {
	border-top: 1px solid #666;
	padding-top: 3rem;
}
div.wpcf7 #confirm {
	display: none;
}
body.formConfirmed div.wpcf7 #confirm {
	display: block;
}
body.formConfirmed div.wpcf7 form.invalid #confirm {
	display: none;
}
body.formConfirmed div.wpcf7 form .inputForm,
body.formConfirmed div.wpcf7 form .wpcf7-form-control-wrap {
	display: none;
}
body.formConfirmed div.wpcf7 form.invalid .inputForm,
body.formConfirmed div.wpcf7 form.invalid .wpcf7-form-control-wrap {
	display: block;
}

p.confirmed {
	display: none;
}
body.formConfirmed div.wpcf7 form p.confirmed {
	display: block;
	color: #ff0000;
	margin-bottom: 2rem;
}
body.formConfirmed div.wpcf7 form.invalid p.confirmed {
	display: none;
}

form.custom-wpcf7c-confirmed p.confirmed.sent {
	display: none;
}
body.formConfirmed div.wpcf7 form dd {
	margin-top: 0;
	font-family: Hiragino Sans, "ヒラギノ角ゴシック", Hiragino Kaku Gothic ProN, "ヒラギノ角ゴ ProN W3", "メイリオ", serif, sans-serif;
	font-weight: 300;
}
body.formConfirmed div.wpcf7 form.invalid dd {
	margin-top: 0.2rem;
}

/*送信完了*/
body.formConfirmed div.wpcf7 form.sent p.confirmed,
body.formConfirmed div.wpcf7 form.sent .confirm-checkbox,
body.formConfirmed div.wpcf7 form.sent .wpcf7-submit,
body.formConfirmed div.wpcf7 form.sent .wpcf7c-btn-confirm {
	display: none;
}

/*コンタクトのみ*/
body.contact div.wpcf7-validation-errors,
body.contact div.wpcf7-acceptance-missing {
	margin-top: 64px !important;
}

body.contact.formConfirmed div.wpcf7 #confirm {
	margin-bottom: 98px;
}

@media print, screen and (max-width: 767px) {
	div.wpcf7 dd,
	div.wpcf7 dl.text-box dd,
	div.wpcf7 dl.addr-box dd,
	div.wpcf7 dl.place-box dd,
	div.wpcf7 .date-box dd {
		width: 100%;
	}
	div.wpcf7 input[type="text"],
	div.wpcf7 input[type="email"],
	div.wpcf7 input[type="tel"],
	div.wpcf7 textarea {
		font-size: 16px;
	}

	div.wpcf7 [type="button"],
	div.wpcf7 [type="reset"],
	div.wpcf7 [type="submit"] {
		width: 100%;
		color: #1a1a1a;
	}
	div.wpcf7-response-output {
		width: 100%;
	}
	body.formConfirmed div.wpcf7 {
		border-color: #999;
	}
	body.formConfirmed div.wpcf7 form p.confirmed {
		padding-top: 6rem;
		font-size: 1.125rem;
	}
	body.formConfirmed div.wpcf7 form dd {
		font-size: 1.125rem;
	}
}

/*----------------order----------------*/
body.order main p.bdt {
	border-top: 1px solid #666;
	padding: 3rem 1.5rem 1.5rem;
	text-align: left;
}
body.order main ul {
	padding: 0 1.5rem 0;
}
body.order main ul li {
	color: #ff0000;
	font-size: 0.875rem;
	text-align: left;
	line-height: 2.3;
}
body.order div.wpcf7 {
	padding-top: 3.8rem;
}
body.order div.wpcf7 textarea {
	height: 170px;
}

body.order span.wpcf7-list-item {
	margin: 0.5rem 0 0;
}

body.order.formConfirmed main p.bdt,
body.order.formConfirmed main ul {
	display: none;
}

/*このサービスを知ったきっかけはなんですか？*/
div.wpcf7 dl.how-box dd {
	width: 100%;
}
div.wpcf7 dl.how-box dd .checkbox-865,
div.wpcf7 dl.how-box dd .other-textarea {
	display: inline-block;
	vertical-align: middle;
}
div.wpcf7 dl.how-box dd .checkbox-865 .wpcf7-checkbox span.wpcf7-list-item {
	margin: 1rem 1rem 0 1.4rem;
}
div.wpcf7 dl.how-box dd .other-textarea textarea {
	height: 35px;
	padding: 5px 5px 0;
	max-width: 600px;
	vertical-align: middle;
}

body.formConfirmed div.wpcf7 form dd#checkbox-855-confirm,
body.formConfirmed div.wpcf7 form dd#checkbox-865-confirm {
	margin-bottom: 0;
}

/*同意*/
.confirm-checkbox {
	position: relative;
}
.confirm-checkbox input {
	display: none;
}
body.order .confirm-checkbox .checkbox-text {
	margin-top: 1rem;
}
.confirm-checkbox .checkbox-text {
	display: inline-block;
	position: relative;
	padding-left: 60px;
	height: 42px;
	line-height: 42px;
}
.confirm-checkbox .checkbox-text:before {
	position: absolute;
	top: 11px;
	left: 11px;
	display: block;
	width: 20px;
	height: 20px;
	background-color: #4d4d4d;
	content: "";
	opacity: 0;
	-moz-transform: scale(0.6);
	-o-transform: scale(0.6);
	-ms-transform: scale(0.6);
	-webkit-transform: scale(0.6);
	transform: scale(0.6);
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	-ms-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}
.confirm-checkbox input:checked + .checkbox-text:before {
	opacity: 1;
	-moz-transform: scale(1);
	-o-transform: scale(1);
	-ms-transform: scale(1);
	-webkit-transform: scale(1);
	transform: scale(1);
}
.confirm-checkbox input:checked + .wpcf7c-conf-hidden + .checkbox-text:before {
	opacity: 1;
	-moz-transform: scale(1);
	-o-transform: scale(1);
	-ms-transform: scale(1);
	-webkit-transform: scale(1);
	transform: scale(1);
}
.confirm-checkbox .checkbox-text:after {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 42px;
	height: 42px;
	border: 1px solid #999999;
	content: "";
}

@media print, screen and (max-width: 767px) {
	body.order main p.bdt {
		font-size: 1.1rem;
	}
	body.order main ul li {
		font-size: 1rem;
	}
	div.wpcf7 .wpcf7-checkbox span.wpcf7-list-item {
		margin-bottom: 1rem;
	}
	div.wpcf7 dl.how-box dd .other-textarea {
		width: 75%;
	}
	div.wpcf7 dl.how-box dd .other-textarea textarea {
		width: 100%;
		height: 60px;
	}
}

/*----------------agreement----------------*/
body.agreement main {
	padding-bottom: 12.5rem;
}
body.agreement main p {
	padding: 0 0.9em;
	text-align: left;
}
body.agreement main p:first-of-type {
	border-top: 1px solid #666;
	padding: 3rem 1.5rem 0.4rem;
}

body.agreement main p.pd03 {
	padding: 0 0.3em;
	margin-bottom: 0.5em;
}
body.agreement main p:nth-of-type(3) {
	margin-top: 3rem;
}
body.agreement main p:last-of-type {
	margin-top: 0.6em;
}

body.agreement main ul {
	text-align: left;
	padding: 0 1.5rem;
}

body.agreement main h3 {
	overflow: hidden;
	border-bottom: 1px solid #666666;
	margin-bottom: 1.25rem;
	padding-bottom: 13px;
	font-size: 1.25rem;
	text-align: left;
	margin-top: 3.9rem;
}

body.agreement main ul li {
	text-align: left;
	text-indent: -0.9em;
	margin-bottom: 0.5rem;
}
body.agreement main ul:last-of-type li:last-of-type {
	margin-bottom: 0;
}
body.agreement main ul li span {
	letter-spacing: -0.1em;
}

@media print, screen and (max-width: 767px) {
	body.agreement main p:first-of-type,
	body.agreement main h3 {
		border-color: #999;
	}
}

/*----------------company----------------*/
body.page-template-page-company dl {
	font-size: 1.125rem;
	border-bottom: 1px solid #666;
	padding: 1.2rem 0;
	text-align: left;
	overflow: hidden;
	line-height: 2.33;
}
body.page-template-page-company dl:first-of-type {
	padding-top: 1rem;
}
body.page-template-page-company dl:last-of-type {
	margin-bottom: 12.5rem;
}
body.page-template-page-company dt {
	width: 23%;
	float: left;
	padding-left: 2%;
}
body.page-template-page-company dd {
	width: 75%;
	float: left;
}

@media print, screen and (max-width: 767px) {
	body.page-template-page-company dl {
		border-color: #999;
	}
}

/*----------------privacy----------------*/
.privacy .page {
	padding-bottom: 12.5rem;
}
.privacy .page p,
.privacy .page ul {
	text-align: left;
	padding: 0 1.5rem;
}
.privacy .page p:first-of-type {
	border-top: 1px solid #666;
	padding: 3rem 1.5rem 0.4rem;
}
.privacy .page h3 {
	overflow: hidden;
	border-bottom: 1px solid #666666;
	margin-bottom: 1.25rem;
	padding-bottom: 13px;
	font-size: 1.25rem;
	text-align: left;
	margin-top: 3.9rem;
}

.privacy .page ul li {
	text-align: left;
	text-indent: -0.9em;
	margin-bottom: 0.5rem;
}
.privacy .page ul li:first-of-type {
	text-indent: -0.7em;
}
.privacy .page ul:last-of-type li:last-of-type {
	margin-bottom: 0;
}
.privacy .page ul li span {
	letter-spacing: -0.1em;
}

@media print, screen and (max-width: 767px) {
	body.page-template-page-privacy main p:first-of-type,
	body.page-template-page-privacy main h3 {
		border-color: #999;
	}
}

body.showcase {
	background-color: #4d4d4d;
}
body.showcase #toggle {
	background-color: rgba(77, 77, 77, 0.7);
	transition: 0.3s;
}
body.showcase #toggle:hover {
	opacity: 0.5;
}

body.showcase .trigger span,
body.showcase .trigger span:nth-of-type(2)::after {
	background-color: #fafafa;
}

body.showcase #toggle.active {
	background: rgba(250, 250, 250, 0.7);
}
body.showcase #toggle.active .trigger span,
body.showcase #toggle.active .trigger span:nth-of-type(2)::after {
	background-color: #666;
}

body.showcase h1 img:nth-of-type(1) {
	display: none;
}
body.showcase h1 img:nth-of-type(2) {
	display: block;
}

body.showcase main h2 {
	border-bottom: none;
	color: #ffffff;
}
body.showcase main article img {
	margin-bottom: 50px;
}
body.showcase main article img:first-of-type {
	display: none;
}
body.showcase main article img:nth-of-type(2),
body.showcase main article img:nth-of-type(3),
body.showcase main article img:nth-of-type(4) {
	opacity: 1;
	filter: alpha(opacity=100);
	-ms-filter: "alpha(opacity=100)";
	transform: translate(0, 0);
	-moz-transform: translate(0, 0);
	-webkit-transform: translate(0, 0);
	-o-transform: translate(0, 0);
	-ms-transform: translate(0, 0);
}
body.showcase main article img.aligncenter {
	width: 67.5%;
}

body.showcase main article img:last-of-type {
	margin-bottom: 42px;
}
body.showcase main article p {
	text-align: left;
	color: #ffffff;
	padding: 0 3.1%;
	line-height: 2.125;
}

body.showcase main article ul {
	border-top: 1px solid #fff;
	border-bottom: 1px solid #fff;
	padding: 1.2rem 0;
	margin: 2.55rem 0 6rem;
	position: relative;
}
body.showcase main article ul li,
body.showcase main article ul li a {
	display: inline-block;
	font-size: 1.25rem;
	color: #fff;
	width: 200px;
}
body.showcase main article ul li.btn-previous a,
body.showcase main article ul li.btn-next a {
	text-indent: -299px;
	overflow: hidden;
	height: 22px;
	position: absolute;
}
body.showcase main article ul li.btn-previous a {
	background: url(../images/showcase/ic-arrow-previous.png) no-repeat 0 50%;
	left: 2.5%;
	top: 50%;
	transform: translateY(-50%);
}
body.showcase main article ul li.btn-next a {
	background: url(../images/showcase/ic-arrow-next.png) no-repeat 100% 50%;
	right: 2.5%;
	top: 50%;
	transform: translateY(-50%);
}

body.showcase #arcv_posts {
	margin: 6.25rem 0;
}
body.showcase #arcv_posts ul li {
	border-bottom: 1px solid #fff;
	line-height: 1;
	position: relative;
	font-size: 1.125rem;
	text-align: left;
}
body.showcase #arcv_posts ul li:first-of-type {
	border-top: 1px solid #fff;
}
body.showcase #arcv_posts ul li a {
	color: #fff;
	padding: 2rem 0;
	display: block;
	background: url(../images/showcase/ic-arrow-arcv.png) no-repeat 97.5% 50%;
}

body.showcase #arcv_posts ul li a:visited {
	color: #b5b5b5;
}

@media print, screen and (max-width: 767px) {
	body.showcase main article img {
		margin-bottom: 20px;
	}
	body.showcase main article img:last-of-type {
		margin-bottom: 2.5rem;
	}
	body.showcase main article img.aligncenter {
		width: 100%;
	}
	body.showcase main article ul,
	body.showcase #arcv_posts ul li:first-of-type,
	body.showcase #arcv_posts ul li {
		border-color: #999;
	}
	body.showcase main article ul li,
	body.showcase main article ul li a {
		width: 90px;
	}
	body.showcase main article ul li.btn-previous a,
	body.showcase main article ul li.btn-next a {
		background-size: 10px;
	}
	body.showcase #arcv_posts ul li a {
		background-size: 8px;
		padding: 1.7rem 0;
	}
}

.select-wrap {
	position: relative;
	/* overflow: hidden; */
	display: block;
	min-width: 100px;

	background-color: #fafafa;
	width: 100%;
	box-sizing: border-box;
	line-height: 1;
	-webkit-appearance: none;
	border-radius: 0;
	vertical-align: middle;
}

.select-wrap select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	position: relative;
	z-index: 2;
	display: block;
	width: 100%;
	/* fallback non calc support */
	/* width: -webkit-calc(100% + 5em); */
	margin: 0;
	padding: 17px 35px 17px 11px;
	/* padding: .6875rem 2.1875rem .6875rem .6875rem; */
	background: transparent;
	border: 0;
	outline: none;
	font-size: 16px;
	font-size: 1rem;
	line-height: 1.5;
	border-radius: 0;
	border: 1px solid #999999;
}

.select-arrow:before {
	content: "";
	position: absolute;
	content: "";
	/* margin-top: -8px; */
	top: 24px;
	right: 25px;
	width: 20px;
	height: 12px;
	background-image: url(../images/order/ic-arrow-date.svg);
	background-repeat: no-repeat;
}
.select-arrow .wpcf7-not-valid {
	background: none !important;
}
.select-arrow .wpcf7-not-valid-tip {
	line-height: 2;
}

/*----------------Gallery----------------*/
.btn-more {
	width: 200px;
	margin: 0 auto 50px;
}
.btn-more a {
	display: block;
	text-align: center;
	color: #1a1a1a;
	border: 1px solid #1a1a1a;
	padding: 15px;
}
.btn-more-loading {
	display: block;
	margin: 0 auto;
	width: 75px;
}
.list-gallery-cat {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	max-width: 900px;
	margin: -40px auto 65px;
}
.list-gallery-cat > li {
	margin: 0 20px;
}
.list-gallery-cat > li a {
	color: #1a1a1a;
	padding-bottom: 4px;
}
.list-gallery-cat > li a:hover,
.list-gallery-cat > li.is-active {
	border-bottom: 1px solid #1a1a1a;
}
.list-gallery {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	position: relative;
	box-sizing: border-box;
	width: 950px;
	margin: 0 auto;
	margin-left: -50px;
	margin-bottom: 140px;
}
.list-gallery > li {
	width: 23%;
	margin-right: 1%;
	margin-bottom: 1%;
}
.list-gallery > li:nth-child(4n) {
	margin-right: 0;
}
.list-gallery > li img {
	width: 100%;
	max-width: auto;
}
.box-showcase {
	background: #fafafa;
	width: 100vw;
	position: relative;
	left: 50%;
	right: 50%;
	margin-left: -50vw;
	margin-right: -50vw;
	box-sizing: border-box;
	padding-top: 40px;
	margin-bottom: -55px;
	padding-bottom: 130px;
}
.box-showcase * {
	color: #32373c;
}
.box-showcase h2 {
	border-bottom: 1px solid #32373c;
	margin-bottom: 80px;
}
.box-showcase h2 + p {
	margin-bottom: 60px;
}
.list-showcase {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	width: 900px;
	margin: 0 auto;
}
.list-showcase > li {
	width: 274px;
	margin: 19px 39px 20px 0;
}
.list-showcase > li:nth-child(3n) {
	margin-right: 0;
}
.list-showcase > li p {
	text-align: center;
	margin: 0;
	padding-top: 5px;
}
.list-showcase > li p:before {
	content: "「";
}
.list-showcase > li p:after {
	content: "」";
}
@media print, screen and (max-width: 767px) {
	html {
		font-size: 70%;
	}
	main {
		padding: 20px 6.25%;
	}
	.list-gallery-cat {
		width: auto;
		margin-top: 10px;
		margin-bottom: 30px;
	}
	.list-gallery-cat > li {
		margin: 5px 20px;
	}
	.list-gallery {
		width: auto;
		position: relative;
		left: 0%;
		right: 0%;
		margin: 0 0 40px;
		padding: 0;
	}
	main .list-gallery > li {
		width: 31%;
		margin-right: 3%;
		margin-bottom: 3%;
	}
	.list-gallery > li:nth-child(4n) {
		margin-right: 3%;
		margin-bottom: 3%;
	}
	.list-gallery > li:nth-child(3n) {
		margin-right: 0%;
	}
	.list-gallery > li:nth-child(4n) {
	}
	.box-showcase {
		background: #fafafa;
		width: auto;
		position: relative;
		left: 0%;
		right: 0%;
		margin-left: -8%;
		margin-right: -8%;
		box-sizing: border-box;
		padding-top: 40px;
		padding-left: 6.25%;
		padding-right: 6.25%;
		margin-bottom: -55px;
		padding-bottom: 40px;
	}
	.box-showcase h2 {
		margin-bottom: 40px;
	}
	.box-showcase h2 + p {
		font-size: 1.2rem;
		line-height: 2.5;
		margin-bottom: 2.3rem;
	}
	.list-showcase {
		width: auto;
	}
	.list-showcase > li {
		width: 100%;
		text-align: center;
		margin: 0 auto 25px;
	}
	.list-showcase > li p {
		font-size: 1.2rem;
		line-height: 2.5;
	}
}

/* order */
.order .l-page p a,
.agreement .l-page p a,
.contact .l-page p a {
	background: transparent;
	text-decoration: none;
	color: #0099ff;
	transition: 0.3s;
}
.order .l-page p b {
	font-weight: bolder;
}

.l-footer-old {
	padding-top: 100px;
	padding-bottom: 100px;
}

@media print, screen and (max-width: 740px) {
	p,
	li,
	dl,
	table {
		line-height: 1.7;
	}
}
