
@charset "utf-8";


/* ====================================

	1. About

==================================== */

.about_box {
	width: 100%;
	margin: 0 auto 40px auto;
	padding-top: 40px;
	background-size: 100% auto;
	background-position: center 120px;
	background-repeat: repeat-y;
	background-image: url('../img/about/bg.png');
	box-sizing: border-box;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		.about_box {
			padding-top: 0;
		}
	}

.about_box h2 {
	display: inline-block;
	width: 64px;
	height: 240px;
	margin: auto;
	padding: 0;
	padding-top: 60px;
	font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	font-weight: 500;
	font-size: 2.4rem;
	color: #FFF;
	letter-spacing: 0.28em;
	line-height: 64px;
	background-color: #CF543F;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	position: relative;
	box-sizing: border-box;
	border: none;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		.about_box h2 {
			position: absolute;
			top: -40px;
			left: 0;
			right: 0;
			width: 48px;
			height: 120px;
			margin: auto;
			padding-top: 40px;
			font-size: 2.0rem;
			line-height: 48px;
		}
	}

.about_box h2::after {
	display: block;
	content: '';
	position: absolute;
	top: 24px;
	left: 0;
	right: 0;
	width: 20px;
	height: 20px;
	margin: auto;
	background-color: #FFF;
	border-radius: 100%;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		.about_box h2::after {
			top: 18px;
		}
	}

.about_box dl {
	width: 100%;
	overflow: hidden;
	clear: both;
	letter-spacing: -1em;
	box-sizing: border-box;
}
	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		.about_box dl {
			margin-bottom: 40px;
			padding-top: 40px;
		}
	}

.about_box dl dt {
	display: inline-block;
	float: left;
	width: 56%;
	height: 700px;
	vertical-align: middle;
	background-size: auto 700px;
	background-position: center 60px;
	background-repeat: no-repeat;
	box-sizing: border-box;
}

.about_box dl.right {
	text-align: right;
}

.about_box dl.right dt {
	float: right;
}


	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		.about_box dl dt {
			float: none;
			width: 100%;
			height: 0;
			margin-bottom: 20px;
			position: relative;
			padding-top: calc(700 / 1084 * 100%); /* calc(画像高さ ÷ 画像横幅 × 100%) */
			background-size: cover;
			background-position: center top;
		}
		.about_box dl.right dt {
			float: none;
		}
	}

.about_box dl dt {
	text-align: center;
}

.about_box dl:nth-of-type(1) dt {
	background-image: url('../img/about/about_1.png');
}

.about_box dl:nth-of-type(2) dt {
	background-image: url('../img/about/about_2.png');
}

.about_box dl:nth-of-type(3) dt {
	background-image: url('../img/about/about_3.png');
}

.about_box dl:nth-of-type(4) dt {
	background-image: url('../img/about/about_4.png');
}

.about_box dl:nth-of-type(5) dt {
	background-image: url('../img/about/about_5.png');
}

.about_box dl dd {
	float: right;
	display: inline-block;
	width: calc(100% - 56%);
	padding: 240px 100px 100px 100px;
	vertical-align: middle;
	box-sizing: border-box;
}

.about_box dl.right dd {
	float: left;
	text-align: right;
	vertical-align: right;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		.about_box dl dd {
			float: none;
			width: 100%;
			vertical-align: top;
			padding: 0 20px;
		}
		.about_box dl.right dd {
			float: none;
		}
		.about_box dl.right dd {
			text-align: left;
			vertical-align: left;
		}
	}

.about_box dl dd p {
	display: inline-block;
	width: 320px;
	font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	font-weight: 600;
	font-size: 1.8rem;
	letter-spacing: 0.15em;
	line-height: 3.2em;
	color: #00518F;
	vertical-align: middle;
}
.about_box dl.right dd p {
	text-align: left;
	vertical-align: right;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		.about_box dl dd p {
			width: 100%;
			font-size: 1.5rem;
			line-height: 2.5em;
		}
		.about_box dl.right dd p {
			text-align: left;
			vertical-align: left;
		}	
	}




/* ====================================

	2. Shop

==================================== */

dl.shop_box {
	width: 1050px;
	margin: 0 auto 120px auto;
	letter-spacing: -1em;
	box-sizing: border-box;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		dl.shop_box {
			width: 100%;
			margin: 0 auto 60px auto;
		}
	}

dl.shop_box dt {
	display: inline-block;
	width: 665px;
	vertical-align: middle;
	box-sizing: border-box;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		dl.shop_box dt {
			width: 100%;
			margin: 0 auto 30px auto;
		}
		dl.shop_box dt img {
			width: 100%;
		}
	}

dl.shop_box dd {
	display: inline-block;
	width: 320px;
	margin-left: 72px;
	font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	font-weight: 500;
	font-size: 1.7rem;
	letter-spacing: 0.05em;
	line-height: 2.4em;
	color: #00518F;
	vertical-align: middle;
	box-sizing: border-box;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		dl.shop_box dd {
			width: 100%;
			margin-left: 0;
			padding: 0 20px;
			font-size: 1.5rem;
			line-height: 2.0em;
		}
	}


h2.shop {
	position: relative;
	width: 100%;
	height: 520px;
	margin: 0 auto 80px auto;
	padding: 0;
	padding-top: 200px;
	font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	font-weight: 500;
	font-size: 2.6rem;
	color: #00518F;
	text-align: center;
	letter-spacing: 0.32em;
	line-height: 64px;
	border: 0;
	background: none;
	background-image:url(../img/bg_line.svg);
	background-position: center 94px;
	background-repeat: no-repeat;
	box-sizing: border-box;
	z-index: 3;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		h2.shop {
			height: auto;
			margin: 0 auto 40px auto;
			padding: 85px 0 80px 0;
			font-size: 2.0rem;
			background-size: 100% auto;
		}
	}

h2.shop::after {
	position: absolute;
	top: 0;
	display: block;
	width: 100%;
	height: 148px;
	margin: auto;
	content: "";
	background-image:url(../img/shop/bg.svg);
	background-position: left top;
	background-repeat: repeat-x;
	z-index: 5;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		h2.shop::after {
			height: 60px;
			background-size: auto 60px;
		}
	}

h2.shop p {
	display: inline-block;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		h2.shop p {
			-webkit-writing-mode: horizontal-tb;
			-ms-writing-mode: lr-tb;
			writing-mode: horizontal-tb;
		}
	}

.item_box {
	width: 1142px;
	margin: 0 auto 80px auto;
	letter-spacing: -1em;
	box-sizing: border-box;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		.item_box {
			width: calc(100% - 40px);
		}
	}

li.item {
	display: inline-block;
	width: 320px !important;
	margin: 0 30px 60px 30px;
	font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	letter-spacing: 0.15em;
	vertical-align: top;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		li.item {
			display: block;
			width: 100% !important;
			margin: 0 0 40px 0;
		}
	}

.item:nth-child(2n) {
	margin: 0;
	padding: 0 30px;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		.item:nth-child(2n) {
			margin: 0 0 40px 0;
			padding: 0;
		}
	}

.item_pic {
	width: 100%;
	height: 340px;
	margin: 0 auto 20px auto;
	overflow: hidden;
	text-align: center;

}

.item_pic img {
	height: 100%;
	margin: 0 auto;
}

.item_name {
	margin: 0 auto 25px auto;
	padding-bottom: 15px;
	font-size: 2.2rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	line-height: 1.6em;
	color: #072943;
	border-bottom: 1px solid #BC944B;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		.item_name {
			font-size: 1.8rem;
			line-height: 1.4em;
		}
	}

.item_text {
	margin: 0 auto 25px auto;
	font-size: 1.5rem;
	font-weight: 400;
	letter-spacing: 0.1em;
	line-height: 1.6em;
	color: #072943;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		.item_text {
			font-size: 1.5rem;
			line-height: 1.4em;
		}
	}

.item_detail {
	border-top: 1px dashed #BC944B;
	padding-top: 12px;
}

.item_detail dl {
	margin-bottom: 10px;
	padding-bottom: 12px;
	border-bottom: 1px dashed #BC944B;
	box-sizing: border-box;
}


.item_detail dt {
	float: left;
	width: 110px;
	padding-top: 3px;
	font-weight: 600;
	font-size: 1.5rem;
	letter-spacing: 0.05em;
	position: relative;
	color: #072943;
	clear: left;
	box-sizing: border-box;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		.item_detail dt {
			width: 92px;
			font-size: 1.2rem;
		}
	}

.item_detail dd {
	width: calc(100% - 110px);
	margin-left: 110px;
	font-size: 1.3rem;
	font-family: "Noto Sans Japanese";
	letter-spacing: 0.12em;
	color: #666;
	box-sizing: border-box;
}

.item_detail dd.full {
	width: calc(100%);
	margin-left: 0;
	font-size: 1.5rem;
	font-family: "Noto Sans Japanese";
	letter-spacing: 0.12em;
	color: #072943;
	box-sizing: border-box;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		.item_detail dd {
			width: calc(100% - 92px);
			margin-left: 92px;
		}
	}

.item_detail dd.price {
	padding-top: 4px;
	padding-right: 15px;
	font-size: 2.4rem;
	font-weight: 700;
	text-align: right;
	letter-spacing: 0.08em;
	color: #072943;
}
	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		.item_detail dd.price {
			font-size: 2.0rem;
		}
	}

.item_detail dd.price span {
	display: block;
	padding-top: 2px;
	font-size: 1.3rem;
	font-weight: 500;
	margin-right: -10px;
}


.item_input {
	padding-top: 15px;
}

.item_input dl {
	display: inline-block;
	padding: 15px 25px;
	text-align: center;
	background-color: #E6E6E6;
	border-radius: 5px;
	box-sizing: border-box;
}

.item_input dl:nth-of-type(1) {
	width: 140px;
	margin-right: 5px;
}
.item_input dl:nth-of-type(2) {
	width: 160px;
	margin-left: 5px;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 320px) {
		.item_input dl {
			padding: 15px 15px;
		}
		.item_input dl:nth-of-type(1) {
			width: 110px;
			margin-right: 5px;
		}
		.item_input dl:nth-of-type(2) {
			width: 140px;
			margin-left: 5px;
		}
	}

.item_input dt {
	margin-bottom: 5px;
	font-weight: 600;
	font-size: 1.5rem;
	letter-spacing: 0.05em;
	position: relative;
	color: #072943;
	clear: left;
	box-sizing: border-box;
}

.item_input dd {
	font-size: 1.3rem;
	font-family: "Noto Sans Japanese";
	letter-spacing: 0.12em;
	color: #666;
	box-sizing: border-box;
}

.item_input dd input[type=text] {
	width: 80px;
	padding: 12px 10px;
	border: none;
	background-color: #FFF;
	box-sizing: border-box;
}

.item_input dl:nth-of-type(2) dd input[type=text] {
	margin-right: 10px;
}


.item a.bt {
	display: block;
	width: 274px;
	height: 56px;
	margin: 25px auto 0 auto;
	text-indent: -9999px;
	background-image:url(../img/shop/bt_cart.png);
	background-position: center center;
	background-repeat: no-repeat;
	border: none;
}

.item a.bt:hover {
	filter:alpha(opacity=80);
	-moz-opacity: 0.8;
	opacity: 0.8;
}


.item a.bt2 {
	display: block;
	width: 274px;
	height: 56px;
	margin: 25px auto 0 auto;
	text-indent: -9999px;
	background-image:url(../img/shop/bt2_cart.png);
	background-position: center center;
	background-repeat: no-repeat;
	border: none;
}


.item a.bt3 {
	display: block;
	width: 274px;
	height: 56px;
	margin: 25px auto 0 auto;
	text-indent: -9999px;
	background-image:url(../img/shop/bt3_cart.png);
	background-position: center center;
	background-repeat: no-repeat;
	border: none;
}

p.shop {
	width: 1050px;
	margin: 0 auto;
	padding: 15px;
	font-size: 1.6rem;
	font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	font-weight: 600;
	text-indent: 0.15em;
	text-align: center;
	letter-spacing: 0.15em;
	color: #072943;
	border: 1px solid #072943;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		p.shop {
			width: calc(100% - 40px);
			padding: 15px 10px;
			font-size: 1.3rem;
			box-sizing: border-box;
		}
	}




/* ====================================

	3. Use

==================================== */

.coming_soon {
	width: 800px;
	height: 400px;
	margin: 0 auto 0 auto;
	padding: 140px;
	color: #00518F;
	border: 1px solid #00518F;
	box-sizing: border-box;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		.coming_soon {
			width: calc(100% - 40px);
			height: auto;
			padding: 40px 0;
			border: none;
			border-top: 1px solid #00518F;
			border-bottom: 1px solid #00518F;
		}
	}

.coming_soon p {
	font-size: 4.0rem;
	font-weight: 400;
	font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	text-align: center;
	text-indent: 0.12em;
	letter-spacing: 0.12em;
	line-height: 1.0em;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		.coming_soon p {
			font-size: 2.4rem;
		}
	}

.coming_soon p:nth-of-type(2) {
	margin-top: 40px;
	font-size: 3.0rem;
	text-indent: 0.18em;
	letter-spacing: 0.18em;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		.coming_soon p:nth-of-type(2) {
			margin-top: 30px;
			font-size: 2.0rem;
		}
	}





/* ====================================

	7. Contact

==================================== */

#error_text{
	margin-bottom: 30px;
	color: #FFF;
	line-height: 1.8rem;
	font-weight: 700;
	text-align: center;
	letter-spacing: 0.1em;
}

.contact_text {
	width: 1280px;
	margin: 0 auto 40px auto;
	font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	font-size: 2.4rem;
	text-align: center;
	letter-spacing: 0.05em;
	line-height: 1.6em;
	color: #0055A6;
	box-sizing: border-box;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		.contact_text {
			width: calc(100% - 40px);
			margin: 0 auto 0 auto;
			font-size: 1.5rem;
			text-align: left;
		}
	}

.contact_text .must {
	font-size: 2.0rem;
	color: #ff3838;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		.contact_text .must {
			display: inline-block;
			padding-top: 20px;
			font-size: 1.4rem;
		}
	}

#form_box {
	width: 1080px;
	margin: 0 auto 40px auto;
	padding: 40px 0 20px 0;
	border: 1px solid #0055A6;
	box-sizing: border-box;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		#form_box {
			width: calc(100% - 40px);
			margin: 0 auto 0 auto;
			padding: 0;
			border: none;
		}
	}

#form_box table.form {
	width: 980px;
	margin: 0 auto 30px auto;
	font-size: 13px;
	letter-spacing: 2px;
	border-collapse: collapse;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		#form_box table.form {
			width: 100%;
			margin: 0 auto 0 auto;
		}
	}


#form_box table.form a {
	color: #F9690E;
}

#form_box table.form tr {
}

#form_box table.form th {
	width: 340px;
	padding: 20px 0 15px 0;
	white-space: nowrap;
	font-size: 2.2rem;
	font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	letter-spacing: 0.05em;
	color: #000;
	border-bottom: #0055A6 1px dashed;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		#form_box table.form th {
			border-bottom: none;
		}
	}

#form_box table.form th.kaigyou {
	white-space: normal;
	word-break: break-all !important;
}

#form_box table.form td {
	padding: 20px 0 20px 20px;
	font-size: 1.5rem;
	text-align: left;
	border-bottom: #0055A6 1px dashed;
}


#form_box table.form th p,
#form_box table.form td p {
	margin-top: 10px;
	font-size: 1.4rem;
	white-space: normal;
	color: #666;
	word-break: break-all !important;
}

#form_box table.form th ul li,
#form_box table.form td ul li {
	font-size: 12px;
}

.point {
	font-size: 1.6rem;
	font-weight: 700;
	background: linear-gradient(transparent 65%, #FFEA00 65%);
}

.hissu {
	margin-left: 10px;
	padding: 4px 5px 5px 5px;
	display: inline-block;
	font-size: 2.0rem;
	font-weight: 700;
	text-indent: 2px;
	line-height: 100%;
	color: #ff3838;
}

td span {
	display: inline-block;
}


/*フォームの大きさ*/
.form_name,
.form_pref {
	width: 200px;
}

.form_tel {
	width: 50%;
}

.form_add {
	width: 100%;
}

.form_mail {
	width: 100%;
}

.form_text {
	width: 100%;
	height: 150px;
}

#form_box table.form input[type="text"] {
	margin:0;
	padding: 10px 5px;
	font-size: 1.6rem;
	letter-spacing: 1px;
	box-sizing: border-box;
}

#form_box table.form textarea {
	margin:0;
	padding: 6px 5px;
	line-height:150%;
	font-size: 14px;
	letter-spacing: 1px;
	box-sizing: border-box;
}

.error_text{
	margin-top: 10px;
	margin-bottom: -5px;
	display: block;
	font-size: 1.1rem;
	letter-spacing: 1px;
	color: #F9690E;
}

.error{
	background-color: #FFF4E5;
}

hr{
	height: 1px;
	border: none;
	border-bottom: 1px dashed #CCC
}


label:hover {
	cursor: pointer;
}


/* 各ベンダープレフィックスが取れた標準版！！(http://caniuse.com/#search=placeholder-shown) */
:placeholder-shown {
	color: #BBB; }

/* Google Chrome, Safari, Opera 15+, Android, iOS */
::-webkit-input-placeholder {
	color: #BBB; }

/* Firefox 18- */
:-moz-placeholder {
	color: #BBB; opacity: 1; }

/* Firefox 19+ */
::-moz-placeholder {
	color: #BBB; opacity: 1; }

/* IE 10+ */
:-ms-input-placeholder {
	color: #BBB; }


	/* === ▽ Responsive ▽ === */
	@media (max-width: 420px) {
		span label {
			display: block;
		}
	}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 1120px) {
		#form_box table.form {
			width: 100%;
			box-sizing: border-box;
			font-size: 1.3rem;
			letter-spacing: 2px;
			border: none;
		}
		
		#form_box table.form tr {
			margin-bottom: 25px;
			display: block;
			box-sizing: border-box;
		}
		
		#form_box table.form tr:last-child {
			margin-bottom: 0;
			border-bottom: none;
		}
		
		#form_box table.form th {
			width: 100%;
			padding: 10px;
			display: block;
			letter-spacing: 2px;
			color: #000;
			background-color: #f2f2f2;
			box-sizing: border-box;
		}

		#form_box table.form.col2 th {
			width: 100%;
			max-width: 100%;
		}
		#form_box table.form th.bl {
			width: 100%;
			max-width: 100%;
			margin-top: 20px;
			padding: 3px 10px;
			border-left: #ddd 6px solid !important;
			background-color: #FFF;
		}
		
		#form_box table.form td {
			width: 100%;
			padding: 20px 0;
			display: block;
			box-sizing: border-box;
		}

		input[type="text"]{
			margin:0;
			padding: 12px 5px;
			font-size: 1.5rem;
			letter-spacing: 1px;
			box-sizing: border-box;
		}
		
		textarea{
			margin:0;
			padding: 10px 5px;
			line-height:150%;
			font-size: 1.5rem;
			letter-spacing: 1px;
			box-sizing: border-box;
		}
		
		/*フォームの大きさ*/
		.form_name {
			width: 40%;
		}
		.form_tel,
		.form_add,
		.form_mail,
		.form_text {
			width: 100%;
		}
		.error_text {
			font-size: 1.1rem;
		}
		.orange_box {
			font-size: 1.1rem;
		}
		.sp_pt00 {
			padding-top: 0 !important;
		}
	}
	/* === ▽ Responsive ▽ === */
	@media (max-width: 420px) {
		#form_box table.form {
			margin: 0 auto 30px auto;
		}
		
		#form_box table.form th,
		#form_box table.form td {
			font-size: 1.4rem;
		}
		
		#form_box table.form th p,
		#form_box table.form td p {
			font-size: 1.3rem;
		}
		
		input[type="text"],
		textarea {
			font-size: 1.4rem;
		}
		
		select{
			height: 42px;
			margin: 0;
			padding: 0 5px;
		}
		
		.form_name {
			width: 220px;
		}
		.form_pref {
			width: 160px;
		}
		.form_tel {
			width: 100%;
		}
		span label.point {
			display: inline-block;
			font-size: 1.4rem;
			font-weight: 700;
			background: linear-gradient(transparent 65%, #FFEA00 65%);
		}
	}


/*
 	Button
==================================== */

#button {
	margin-bottom: 20px;
	padding: 20px 0;
	text-align: center;
}

#button .submit,
#button .back {
	width: 360px;
	padding-top: 96px;
	display: inline-block;
	text-align: center;
	font-weight: 400;
	font-size: 2.2rem;
	font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	text-indent: 0.2em;
	letter-spacing: 0.2em;
	color: #0055A6;
	background: none;
	border: none;
	background-position: center top;
	background-repeat: no-repeat;
	background-image: url('../img/bt_arrow_submit.svg');
	box-sizing: border-box;
	-webkit-appearance: none;
}

#button .back {
	color: #999;
	background-image: url('../img/bt_arrow_back.svg');
}

#button .submit:hover,
#button .back:hover {
	filter:alpha(opacity=80);
	-moz-opacity: 0.8;
	opacity: 0.8;
	cursor: pointer;
}

	@media (max-width: 767px) {
		#button {
			padding: 0;
			text-align: center;
			box-sizing: border-box;
		}
		
		#button .submit,
		#button .back {	
			width: 100%;
		//	height: 60px;
			margin-bottom: 20px !important;
			display: block;
			text-align: center;
		//	font-size: 16px;
			font-weight: bold;
			letter-spacing: 3px;
			border: none;
			border-radius: 5px;
			box-sizing: border-box;
			-webkit-appearance:none;
		}

		#button .submit:hover,
		#button .back:hover {	
			opacity: 1.0;
		}

		#button .back {
			background: #999;
		}
	}



/*
 	Check
==================================== */

.check {
	padding: 10px 15px;
	font-size: 1.6rem;
	color: #666;
	background-color: #EEE;
	box-sizing: border-box;
}

.check.name,
.check.pref {
	display: inline-block;
	width: 200px;
}
	/* === ▽ Responsive ▽ === */
	@media (max-width: 420px) {
		.check.name {
			width: 220px;
		}
		.check.pref {
			width: 160px;
		}
	}

#form_box table.form td .check p {
	color: #000;
}


/*
 	Comp
==================================== */


section .text {
	margin: 0 auto;
	width: 1280px;
	font-size: 1.6rem;
	letter-spacing: 0.15em;
	line-height: 2.4rem;
	text-align: center;
	box-sizing: border-box;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		section .text {
			width: 100%;
			margin: 0 auto;
			padding: 0 15px;
			font-size: 1.4rem;
		}
	}




/* ====================================

	8. Company

==================================== */

div.company {
	width: 1280px;
	margin: 0 auto 120px auto;
	padding: 60px 0 40px 0;
	font-size: 1.6rem;
	letter-spacing: 0.12em;
	color: #000;
	box-sizing: border-box;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		div.company {
			width: calc(100% - 40px);
			margin: 0 auto 60px auto;
			padding: 0;
			font-size: 1.4rem;
		}
	}

.company_text {
	display: inline-block;
	width: calc(100% - 680px);
	padding-right: 40px;
	vertical-align: top;
	box-sizing: border-box;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		.company_text {
			display: block;
			width: 100%;
			margin: 0 auto 30px auto;
			padding: 0;
		}
	}

.company_map {
	display: inline-block;
	width: 640px;
	vertical-align: top;
	box-sizing: border-box;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		.company_map {
			display: block;
			width: 100%;
		}
	}

.company dl {
	width: 100%;
	margin: 0 auto 15px auto;
	padding-bottom: 15px;
	letter-spacing: 0.12em;
	clear: both;
	border-bottom: 1px solid #0055A6;
	position: relative;
}

.company dl dt {
	float: left;
	clear: left;
	width: 126px;
	padding: 4px 0 8px 20px;
	text-align: left;
	color: #0055A6;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		.company dl dt {
			float: none;
			width: 100%;
			margin: 0 auto 10px auto;
			padding: 0;
		}
	}

.company dl dd {
	width: calc( 100% - 160px);
	margin-left: 160px;
	padding: 0;
	line-height: 140%;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		.company dl dd {
			width: 100%;
			margin: 0 auto;
			padding: 0;
		}
	}

.company iframe{
	width: 100%;
	height: 500px;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		.company iframe{
			height: 360px;
		}
	}
	@media (max-width: 420px) {
		.company iframe{
			height: 240px;
		}
	}
	@media (max-width: 320px) {
		.company iframe{
			height: 200px;
		}
	}

.company.buyer {
	width: 780px;
	margin: 0 auto;
	padding: 40px 40px 20px 40px;
	border: 3px double #0055A6;
	box-sizing: border-box;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		.company.buyer {
			width: calc(100% - 40px);
			padding: 30px 20px;
		}
	}

.company.buyer dl dt {
	float: left;
	clear: left;
	width: 240px;
	padding: 4px 0 8px 20px;
	text-align: left;
	color: #666;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		.company.buyer dl dt {
			float: none;
			width: 100%;
			padding: 0;
		}
	}

.company.buyer dl dd {
	width: calc( 100% - 300px);
	margin-left: 300px;
	padding: 0;
	line-height: 140%;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		.company.buyer dl dd {
			width: 100%;
			margin-left: 0;
		}
	}

.company.buyer p {
	margin-bottom: 25px;
	font-weight: 600;
	font-size: 2.4rem;
	font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	text-indent: 0.15em;
	text-align: center;
	letter-spacing: 0.15em;
	color: #0055A6;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		.company.buyer p {
			width: calc(100% - 40px);
			font-size: 2.0rem;
		}
	}



/* ====================================

	9. Privacy

==================================== */

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		h1.law {
			display: none;
		}
	}


h2.law {
	position: relative;
	width: 100%;
	height: 420px;
	margin: 0 auto 80px auto;
	padding: 0;
	font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	font-weight: 500;
	font-size: 2.6rem;
	color: #00518F;
	text-align: center;
	letter-spacing: 0.32em;
	line-height: 2.0em;
	border: 0;
	background: none;
	background-image:url(../img/bg_line.svg);
	background-position: center top;
	background-repeat: no-repeat;
	box-sizing: border-box;
	z-index: 3;
}


h2#privacy {
	height: 520px;
	padding-top: 200px;
	background-position: center 94px;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		h2.law {
			height: auto;
			margin: 20px auto 0 auto;
			padding: 0 0 80px 0;
			font-size: 2.0rem;
			line-height: 1.6em;
			background-size: 100% auto;
		}
		h2#privacy {
			height: auto;
			margin: 0 auto 20px auto;
			padding: 80px 0 80px 0;
			font-size: 2.0rem;
			line-height: 1.6em;
			background-size: 100% auto;
		}
	}

h2#privacy::after {
	position: absolute;
	top: 0;
	display: block;
	width: 100%;
	height: 148px;
	margin: auto;
	content: "";
	background-image:url(../img/shop/bg.svg);
	background-position: left top;
	background-repeat: repeat-x;
	z-index: 5;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		h2#privacy::after {
			height: 60px;
			background-size: auto 60px;
		}
	}

h2.law p {
	display: inline-block;
	text-align: left;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		h2.law p {
			-webkit-writing-mode: horizontal-tb;
			-ms-writing-mode: lr-tb;
			writing-mode: horizontal-tb;
			text-align: center;
		}
	}

div.privacy {
	width: 1080px;
	margin: 0 auto 140px auto;
	padding-top: 20px;
	font-size: 1.6rem;
//	font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
//	font-weight: 600;
	letter-spacing: 0.12em;
	border-top: 1px solid #0055A6;
	box-sizing: border-box;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		div.privacy {
			width: calc(100% - 40px);
			margin: 0 auto 60px auto;
		}
	}

.privacy dl {
	width: 1080px;
	margin: 0 auto 20px auto;
	padding-bottom: 20px;
	letter-spacing: 0.12em;
	clear: both;
	color: #000;
	border-bottom: 1px solid #0055A6;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		.privacy dl {
			width: 100%;
			font-size: 1.3rem;
		}
	}

.privacy dl dt {
	float: left;
	width: 320px;
	padding: 4px 0 8px 20px;
	text-align: left;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		.privacy dl dt {
			float: none;
			width: 100%;
			padding: 0 0 5px 0;
		}
	}

.privacy dl dd {
	width: calc( 100% - 320px);
	margin-left: 320px;
	padding: 0;
	line-height: 160%;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		.privacy dl dd {
			width: 100%;
			margin-left: 0;
		}
	}

.privacy dl dd .small {
	font-size: 1.4rem;
	line-height: 160%;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		.privacy dl dd .small {
			font-size: 1.2rem;
		}
	}

.privacy dl dd .blue {
	padding: 0 5px;
	font-size: 2.0rem;
	font-weight: 600;
	color: #0055A6;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		.privacy dl dd .blue {
			font-size: 1.6rem;
		}
	}

div.privacy2 {
	width: 1080px;
	margin: 0 auto;
	font-size: 1.5rem;
	letter-spacing: 0.12em;
	box-sizing: border-box;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		div.privacy2 {
			width: calc(100% - 40px);
			font-size: 1.3rem;
		}
	}

.privacy2 dl {
	margin: 0 auto 40px auto;
	letter-spacing: 0.12em;
}

.privacy2 dl dt {
	margin-bottom: 20px;
	padding: 0 0 15px 30px;
	font-size: 2.0rem;
	text-align: left;
	position: relative;
	color: #0055A6;
	border-bottom: 1px solid #0055A6;
	box-sizing: border-box;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		.privacy2 dl dt {
			padding: 0 0 10px 25px;
			font-size: 1.5rem;
		}
	}

.privacy2 dl dt::after {
	display: block;
	content: '';
	position: absolute;
	top: .3em;
	left: 5px;
	width: 10px;
	height: 10px;
	background-color: #0055A6;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.privacy2 dl dd {
	font-size: 1.6rem;
	line-height: 160%;
	color: #000;
	box-sizing: border-box;
}

	/* === ▽ Responsive ▽ === */
	@media (max-width: 642px) {
		.privacy2 dl dd {
			font-size: 1.3rem;
		}
	}



