@charset "utf-8";
.clearfix:after {
	content: "";
	display: block;
	clear: both
}

@media screen and (max-width:640px) {
	body {
		font-size: 100%
	}
}

.default-wrap {
	max-width: 75rem!important;
	margin: 0 auto
}

h2.u-step {
	font-size: 160%
}

.h-large {
	font-size: 130%;
	border-bottom: 1px solid #747474;
	font-weight: 700;
	line-height: 1.3;
	padding-bottom: 5px;
	position: relative;
	padding-left: 20px
}

.h-large:before {
	height: 5px;
	top: 10px;
	width: 20px;
	position: absolute;
	top: 8px;
	left: 0;
	display: block;
	width: 14px;
	height: 4px;
	content: "";
	background-color: #1aabc1
}

@media print,
screen and (min-width:640px) {
	.h-large:before {
		top: 10px;
		width: 20px;
		height: 5px
	}
}

@media print,
screen and (min-width:640px) {
	.h-large {
		padding-left: 30px;
		font-size: 20px!important
	}
}

.u-col {
	margin: 15px!important
}

.u-colto {
	margin: 15px 0!important
}

@media print,
screen and (min-width:640px) {
	.u-col {
		margin: 20px!important
	}
	.u-colto {
		margin: 20px 0!important
	}
}

.m-step {
	position: relative;
	clear: both;
	border: 1px solid #d9d9d9;
	background-color: #f7f7f7
}

.m-step:not(:last-child) {
	margin-bottom: 50px
}

.m-step:not(:last-child):after {
	position: absolute;
	bottom: -35px;
	left: calc(50% - 20px);
	width: 0;
	height: 0;
	border-width: 17px 20px 0;
	border-style: solid;
	border-color: #1aabc1 transparent transparent
}

.m-step__contents {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: calc(100% - 300px);
	min-height: 140px;
	padding: 20px 0 20px 20px
}

@media print,
screen and (max-width:639px) {
	.m-step__contents {
		width: 100%!important;
		padding: 20px 0 20px 20px
	}
}

.m-step__img img {
	display: inline-block;
	max-width: 100%;
	height: auto;
	vertical-align: middle;
	-ms-interpolation-mode: bicubic
}

.m-step__img {
	position: absolute;
	top: 0;
	right: 0;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: 300px;
	padding: 20px
}

@media print,
screen and (max-width:639px) {
	.m-step__img {
		position: relative;
		width: 100%!important
	}
}

.m-step__header {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: calc(100% - 300px);
	padding: 20px 0 0 20px;
	border-left: 4px solid #747474!important
}

@media print,
screen and (max-width:639px) {
	.m-step__header {
		width: 100%!important;
		padding: 20px 20px 0
	}
}

.m-step__header + div {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	border-left: 4px solid #1aabc1!important
}

.u-step .u-no {
	top: -5px
}

.u-cl-r {
	color: #1aabc1!important
}

.u-pt15 {
	padding-top: 15px!important
}

.u-step .u-oline {
	top: -5px
}

@media print,
screen and (min-width:640px) {
	.u-step .u-oline {
		top: -15px
	}
}

#shop .u-hr1 + * {
	margin-top: 20px;
	margin-bottom: 50px
}

.u-hr1 {
	height: 7px;
	margin: 0;
	border: 0;
	background: url(../../img/bg_hr1.png)
}

.caution_text {
	list-style: none;
	padding: 1.2em
}

.caution_text li span {
	color: #1aabc1
}

.sppostagewrapper {
	display: flex;
}

.sppostagewrapper > dl {
	width: calc(100%/8);
	text-align: center;
}

.sppostagewrapper > dl::before {
	display: inline-block;
	padding-bottom: .6em;
	font-size: .8em;
	font-weight: bold;
}

.sppostagewrapper > dl:first-child::before   { content: '東北地方' }
.sppostagewrapper > dl:nth-child(2)::before  { content: '関東地方' }
.sppostagewrapper > dl:nth-child(3)::before  { content: '北陸/甲信越' }
.sppostagewrapper > dl:nth-child(4)::before  { content: '東海地方' }
.sppostagewrapper > dl:nth-child(5)::before  { content: '近畿地方' }
.sppostagewrapper > dl:nth-child(6)::before  { content: '中国地方' }
.sppostagewrapper > dl:nth-child(7)::before  { content: '四国地方' }
.sppostagewrapper > dl:last-child::before    { content: '九州地方' }

.sppostagewrapper > dl:first-child  dt { background-color: #ddeec7 }
.sppostagewrapper > dl:nth-child(2) dt { background-color: #b8e2d5 }
.sppostagewrapper > dl:nth-child(3) dt { background-color: #bae3e9 }
.sppostagewrapper > dl:nth-child(4) dt { background-color: #bee2f5 }
.sppostagewrapper > dl:nth-child(5) dt { background-color: #c4d8ee }
.sppostagewrapper > dl:nth-child(6) dt { background-color: #c8c3e1 }
.sppostagewrapper > dl:nth-child(7) dt { background-color: #eed9e8 }
.sppostagewrapper > dl:last-child   dt { background-color: #f1bdc8 }

.sppostagewrapper > dl > * {
	padding: .4em;
	border: 1px solid #ccc;
	border-top: none;
}

.sppostagewrapper > dl > dt:first-child {
	border-top: 1px solid #ccc;
}

.sppostagewrapper > dl dd {
	text-align: right;
}

dd,
dl.specification dl,
dt {
	margin: 0;
	padding: 0
}

.r_form {
	width: 100%;
	background: #1aabc1
}

#md_box {
	position: fixed;
	top: 0;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	width: 100vw;
	height: 100vh;
	background-color: rgba(0, 0, 0, .8);
	z-index: 1
}

#md_box .md_btn {
	display: block;
	padding: 1em;
	margin-top: 1em;
	color: #fff;
	font-size: 1.4em;
	font-weight: 700;
	text-align: center
}

#md_box .md_btn:hover {
	color: #ddd;
	cursor: pointer
}

.m-step__contents .orico {
	display: -webkit-inline-box;
	display: -webkit-inline-flex;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	padding: .2em .6em;
	margin: 1em 0;
	background-color: #fff7f2;
	border-top: 1px solid #f60;
	border-bottom: 1px solid #f60
}

.m-step__contents .orico form {
	margin-left: 1em
}

.m-step__contents .orico strong {
	color: #f60
}

.default-wrap h1 + .deli_delay {
	padding: 1em;
	margin-top: 1em;
	color: #e74c3c;
	text-align: center;
	background-color: #fcedeb;
	border-top: 1px solid #e74c3c;
	border-bottom: 1px solid #e74c3c
}

.default-wrap h1 + .deli_delay span {
	text-decoration: underline
}

#mail_form {
	margin-top: 30px;
}

#mail_form .caution {
	padding: 1em;
	margin-top: 30px;
	color: #fc5c65;
	border: 1px solid #fc5c65;
	border-radius: 4px;
}

#mail_form dl {
	display: flex;
	flex-wrap: wrap;
	margin-top: 30px;
}

#mail_form dl > * {
	padding: 1em;
}

#mail_form dl > *:not(:first-of-type) {
	border-top: 1px dashed #ccc;
}

#mail_form dl dt {
	width: 40%;
}

#mail_form dl .required:after {
	display: inline-block;
	content: '必須';
	padding: .2em .4em;
	margin-left: .6em;
	font-size: .8em;
	border-radius: 4px;
	color: #fff;
	background-color: #fc5c65;
}

#mail_form dl dd {
	width: 60%;
}

#mail_form dl dd > ul {
	display: flex;
}

#mail_form dl dd > ul li + li {
	margin-left: 1em;
}

#mail_form dl dd > ul + ul,
#mail_form dl dd > div + ul {
	display: block;
	margin-top: 1em;
}

#mail_form dl dd > ul + ul li {
	width: 100%;
	margin-left: 0;
}

#mail_form dl dd > ul + ul li + li {
	margin-top: 1em;
}

#mail_form dl dd ul li > span {
	display: block;
}

#mail_form dl dd input,
#mail_form dl dd select,
#mail_form dl dd textarea {
	width: 100%;
	padding: .6em;
	border: 1px solid #ccc;
	border-radius: 4px;
}

#mail_form dl dd label:hover,
#mail_form dl dd select:hover {
	cursor: pointer;
}

#mail_form dl dd span.product2018,
#mail_form dl dd span.product2017,
#mail_form dl dd span.units,
#mail_form dl dd span.met_color_g,
#mail_form dl dd span.met_color {
	position: relative;
	display: flex;
	align-items: center;
}

#mail_form dl dd span.product2018:after,
#mail_form dl dd span.product2017:after,
#mail_form dl dd span.units:after,
#mail_form dl dd span.met_color_g:after,
#mail_form dl dd span.met_color:after {
	display: inline-block;
	position: absolute;
	right: 1em;
	content: '\f0d7';
	font-family: 'FontAwesome';
	line-height: 0;
}

#mail_form dl dd textarea {
	width: 100%;
}

#mail_form dl dd label input {
	display: none;
}

#mail_form dl dd div ul li + li {
	margin-top: 1em;
}

#mail_form dl dd ul li p small {
	opacity: .6;
}

#mail_form dl dd ul li p strong {
	color: #fc5c65;
}

#mail_form dl dd label input[type=radio] + span:before,
#mail_form dl dd label input[type=checkbox] + span:before {
	display: inline-block;
	font-family: 'FontAwesome';
	padding-right: .4em;
	transition: .2s all;
}

#mail_form dl dd label input[type=radio] + span:before {
	content: '\f1db';
}

#mail_form dl dd label input[type=checkbox] + span:before {
	content: '\f096';
}

#mail_form dl dd label input[type=radio]:checked + span,
#mail_form dl dd label input[type=checkbox]:checked + span {
	color: #1aabc1;
}

#mail_form dl dd label input[type=radio]:checked + span:before {
	content: '\f111';
}

#mail_form dl dd label input[type=checkbox]:checked + span:before {
	content: '\f14a';
}

#mail_form dl dd ul li a {
	padding: .6em;
	color: #fff;
	background-color: #1aabc1;
	border: 2px solid transparent;
	border-radius: 4px;
}

#mail_form dl dd ul li a:hover {
	color: #0d58be;
	background-color: transparent;
	border-color: #0d58be;
}

#mail_form dl dd span.wpcf7-not-valid-tip {
	padding-top: 1em;
	color: #eb3b5a;
	font-size: .8em;
	font-weight: inherit;
}

.wpcf7-radio > span {
	padding: .4em;
	margin: .2em;
}

section.privacy {
	margin-top: 50px;
}

section.privacy .inner {
	padding: 50px 30px;
	border: 1px solid #ccc;
}

section.privacy h2 {
	font-size: 1.6em;
	font-weight: bold;
	text-align: center;
	text-decoration: underline;
}

section.privacy h2 + p {
	margin-top: 1em;
}

section.privacy ol {
	margin-top: 50px;
}

section.privacy ol li {
	padding: 1.4em 1em;
}

section.privacy ol li + li {
	border-top: 1px dashed #ccc;
}

section.privacy ol li h3 {
	font-weight: bold;
	text-decoration: underline;
}

section.privacy ol li h3 + p {
	margin-top: 1em;
	font-size: .9em;
}

.privacycheck {
	margin: 30px 0 50px;
}

.privacycheck .inner {
	padding: 30px;
	text-align: center;
	border: 1px solid #ccc;
}

.privacycheck p + p {
	margin-top: 1em;
}

.privacycheck label:hover {
	cursor: pointer;
}

.privacycheck label input[type=checkbox]:checked + span {
	color: #1aabc1;
}

.privacycheck label input[type=checkbox] + span:before {
	display: inline-block;
	content: '\f096';
	font-family: 'FontAwesome';
	padding-right: .4em;
	transition: .2s all;
}

.privacycheck label input[type=checkbox]:checked + span:before {
	content: '\f14a';
}

.privacycheck #form_submit input {
	padding: .6em;
	color: #fff;
	background-color: #1aabc1;
	border: 2px solid transparent;
	border-radius: 4px;
}

.privacycheck #form_submit input:hover {
	color: #0d58be;
	background-color: transparent;
	border-color: #0d58be;
}

@media screen and (max-width: 768px) {
	.sppostagewrapper {
		flex-wrap: wrap;
	}

	.sppostagewrapper dl {
		width: calc(100%/3);
	}

	.sppostagewrapper dl:nth-child(n+4) {
		margin-top: 50px;
	}

	#mail_form dl > * {
		padding: 2em 1em;
	}

	#mail_form dl dt,
	#mail_form dl dd {
		width: 100%;
	}

	#mail_form dl > dt {
		font-size: .8em;
		font-weight: bold;
	}

	#mail_form dl > dt:not(:first-of-type) {
		border-top-style: solid;
	}

	#mail_form dl > dd {
		padding-top: 0;
	}

	#mail_form dl > dd:not(:first-of-type) {
		border-top: none;
	}

	#mail_form dl > dd ul li a {
		display: inline-block;
	}

	#mail_form dl dd input,
	#mail_form dl dd select,
	#mail_form dl dd textarea {
		padding: 1em;
	}
}