@charset "utf-8";
/********************************************************
	
	flex-grid:| sm  | md  | lg  |  xl  |
	min-width:| 576 | 768 | 992 | 1200 |
	max-width:| 575 | 767 | 991 | 1199 |

********************************************************/
.c-container--prod{
	padding-top: 35px;
	padding-bottom: 100px;
}
@media screen and (max-width: 767px){
	.c-container--prod{
		padding-top: 30px;
		padding-bottom: 50px;
	}
	.c-page__lead{
		font-size: 1.4rem;
		text-align: left;
	}
}

.c-page__lead > p{
	margin-bottom: 0.5em;
}

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

    電話 / FAX

====================================================== */
.blk-tel{
	max-width: 764px;
	margin: 0 auto 50px;
	padding: 20px 0;
	border: 1px solid #666666;

	font-size: 2.2rem;
	line-height: 1.25;
}
.blk-tel__inner{
	display: flex;
	align-items: flex-end;
	justify-content: center;
}
.blk-tel__name,
.blk-tel__tel{
	padding: 0 10px;
}
.blk-tel__name{
	white-space: nowrap;
}
.blk-tel__name span{
	font-size: 1.6rem;
	line-height: 1;
}
@media only screen and (max-width: 767px) {
	.blk-tel{
		display: flex;
		justify-content: center;
		margin: 0 auto 25px;

		font-size: 1.3rem;
	}
	.blk-tel__inner{
		display: flex;
		flex-direction: column;
		align-items: flex-start;
	}
	.blk-tel__name{
		margin-bottom: 0.5em;
	}
	.blk-tel__name span{
		font-size: 1.2rem;
	}
}
/* ======================================================

    お問合せ

====================================================== */
.contact-form {
	width: 100%;
	margin-bottom: 70px;
	border: 1px solid #aaaaaa;
    table-layout: fixed;

    font-size: 1.8rem;
    letter-spacing: 0;
}
.contact-form th,
.contact-form td {
	padding: 20px ;
	text-align: left;
    vertical-align: top;
	border-bottom: 1px solid #aaaaaa;
}
.contact-form th {
	position: relative;
	width: 34%;
	min-width: 200px;
	padding-right: 70px;
	background-color: #eeeeee;
}
.contact-form th.required-label label::after {
	content: '必須';
	font-size: 1.2rem;
	color: #ffffff;
	background-color: #b40006;
	text-align: center;
	width: 40px;
	height: 24px;
	line-height: 24px;
	border-radius: 3px;
	position: absolute;
	right: 20px;
	top: 20px;
}
@media only screen and (max-width: 767px) {
	.contact-form {
		margin-bottom: 0;
		border: none;
	    font-size: 1.2rem;
	}
	.contact-form th,
	.contact-form td {
		padding: 10px ;
		border-bottom: none;
		display: block;
		width: 100%;
		max-width: 100%;
	}
	.contact-form td {
		padding: 5px 0 25px;
	}
	.contact-form th.required-label label::after {
		right: 10px;
		top: 6px;
		font-size: 1.0rem;
	}
}
/* ======================================================
    インプット要素
====================================================== */
.contact-form input[type=text],
.contact-form input[type=datetime],
.contact-form input[type=tel],
.contact-form input[type=email],
.contact-form textarea {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	/*box-shadow: none;*/
	width: 100%;
	padding: 10px;
	border: 1px solid #ccc;
	background-color: #fff;
	font-size: inherit;
	border-radius: 3px;
}
.contact-form input[type=text]:focus,
.contact-form input[type=datetime]:focus,
.contact-form input[type=tel]:focus,
.contact-form input[type=email]:focus,
.contact-form textarea:focus {
	outline: solid 1px #009CE5;
}
.contact-form input[type=datetime]{
	width: 250px;
}
.contact-form .zip-wrap input[type=text] {
	width: 120px;
}
.contact-form textarea {
	min-height: 300px;
}
.contact-form input[type=text]:placeholder-shown,
.contact-form input[type=datetime]:placeholder-shown,
.contact-form input[type=tel]:placeholder-shown,
.contact-form input[type=email]:placeholder-shown,
.contact-form textarea:placeholder-shown {
 	color: #999;
}
@media only screen and (max-width: 767px) {
	.contact-form textarea {
		min-height: 140px;
	}
}
/* ======================================================
    セレクト要素
====================================================== */
.contact-form select {
	width: 190px;
	padding: 10px 40px 10px 10px;
	border: 1px solid #ccc;
	border-radius: 3px;

	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;

	background-image:
		linear-gradient(45deg, transparent 50%, #0b2f31 50%),
		linear-gradient(135deg, #0b2f31 50%, transparent 50%),
		linear-gradient(to right, #fff, #fff);
	background-position:
		calc(100% - 21px) calc(1em + 2px),
		calc(100% - 16px) calc(1em + 2px),
		100% 0;
	background-size:
		5px 5px,
		5px 5px,
		44px 44px;
	background-repeat: no-repeat;

	font-size: inherit;
}
.contact-form select:focus {
	outline: solid 1px #009CE5;
}
@media only screen and (max-width: 767px) {
	.contact-form select {
		width: 100%;
	}
}
/* ======================================================
    注意事項
====================================================== */
.notes {
	max-width: 900px;
	margin: 0 auto 70px;
}
.notes__ttl {
	margin-bottom: 30px;

	font-size: 2.2rem;
	font-weight: bold;
}
.notes__inner {
	width: 100%;
	/*height: 200px;*/
	margin-bottom: 20px;
	/*padding: 10px;*/
	/*border: 1px solid #aaa;*/
	/*overflow-y: scroll;*/
}
.notes__inner dl {
	margin-bottom: .5em;
}
.notes__inner dt {
	margin-bottom: .5em;
	font-size: 1.8rem;
	font-weight: bold;
}
.notes__inner dd {
	text-indent: -1em;
	padding-left: 1em;
	margin-top: 2px;
}
.notes__inner dd::before {
	content: "・";
}
@media only screen and (max-width: 767px) {
	.notes {
		margin: 0 auto 35px;
		font-size: 1.2rem;
	}
	.notes__ttl {
		font-size: 1.3rem;
	}
	.notes__inner {
		/*height: 150px;*/
	}
	.notes__inner dt {
		font-size: 1.3rem;
	}
}
/* ======================================================
    送信 | リセット
====================================================== */
.contact-btns{
	text-align: center;
}
.contact__submit,
.contact__reset {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;

	position: relative;
	height: 70px;
	border: 1px solid #666666;
	border-radius: 5px;
	/*box-shadow: none;*/
	cursor: pointer;
	
	text-decoration: none;
	text-align: center;
	vertical-align: top;
	transition: all 0.2s ease-in-out;
}
.contact__submit{ width: 364px; background-color: #888; color: #fff; font-size: 2.0rem;}
.contact__reset{ width: 272px; background-color: #fff; color: #666; font-size: 1.8rem;}

@media only screen and (max-width: 767px) {
	.contact__submit,
	.contact__reset {
		height: 50px;
		margin-bottom: 20px;
	}
	.contact__submit{ width: 90%; font-size: 1.4rem; }
	.contact__reset{ width: 67%; font-size: 1.2rem; }
}
/* ======================================================

    お問合せ　確認

====================================================== */
.contact-confirmation-wrap {
	
}
/* ======================================================

    お問合せ　完了

====================================================== */
.contact-completion-wrap {
	text-align: center;
	padding-bottom: 30px;
}
.contact-completion__message {
	font-size: 2.0rem;
	margin-bottom: 30px;
}
@media only screen and (max-width: 767px) {
.contact-completion__message {
	font-size: 1.4rem;
}
}
.contact-completion__link-detail{
	display: block;
	max-width: 550px;
	padding: 15px;
	margin-left: auto;
	margin-right: auto;
	border: 1px solid #666666;
	background-color: rgba(0,0,0,0);
	transition: all 300ms;

	text-align: center;
	line-height: 1;
}
/* ======================================================

    お問合せ　エラーページ

====================================================== */
.error_messe {
	text-align: center;
}

