@charset "UTF-8";
/*   all_parts   */

[data-pagetype="list"] #contents, [data-pagetype="detail"] #contents {
	width: 100%;
	margin: 0 auto;
	position: relative;
	background-color: #fff;
}
#main_contents {
	width: 1000px;
	margin: 0 auto;
}
/*   detail   */
body[data-pagetype="detail"] #back-img {
	background-image: url(/jp/common/back-img/list_contact_top.jpg);
	min-height: 350px;
	background-position: center;
}
#maintitle_area {
	width: 1000px;
	height: 165px;
	margin: 0 auto 50px auto;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	align-content: center;
	align-items: center;
}
#maintitle_area h1 {
	width: 100%;
	font-family: 'Noto Sans JP', serif;
	font-size: 2.8rem;
	font-size: clamp(18px,2.8rem,42px);
	font-weight: 400;
	line-height: 32px;
	color: #212121;
	letter-spacing: 0.2em;
	text-align: left;
	padding: 0;
}
#maintitle_area p {
	width: 100%;
	font-size: 1.4rem;
	font-size: clamp(10px,1.4rem,21px);
	font-weight: 400;
	line-height: 46px;
	color: #212121;
	letter-spacing: 0.1em;
	text-align: left;
	padding: 10px 0 0 0;
}
#main_contents .main_detail_inner {
	width: 100%;
	margin: 0 0 20px 0;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	justify-content: space-between;
}
#main_contents .main_detail_inner .read_copy_area, #main_contents .main_detail_inner .att_copy_area, #main_contents .main_detail_inner .privacy_area {
	width: 100%;
	margin: 0 0 20px 0;
}
#main_contents .main_detail_inner .read_copy_area p {
	font-size: 1.8rem;
	font-size: clamp(10px,1.8rem,27px);
	font-weight: 400;
	line-height: 26px;
	color: #212121;
	letter-spacing: 0.1em;
	text-align: left;
}
#main_contents .main_detail_inner .read_copy_area a{
	color: #E6002D;
}
#main_contents .main_detail_inner .read_copy_area a :hover{
	text-decoration: none;
}
#main_contents .main_detail_inner .att_copy_area p {
	padding: 15px 15px 10px 15px;
    font-size: 1.6rem;
	font-size: clamp(10px,1.6rem,24px);
    font-weight: 400;
    line-height: 20px;
    color: #212121;
    letter-spacing: 0.2em;
    text-align: left;
    display: inline-block;
}
#main_contents .main_detail_inner .att_copy_area a{
	color: #E6002D;
}
#main_contents .main_detail_inner .att_copy_area .discList {
	font-size: 1.4rem;
	font-size: clamp(10px,1.4rem,21px);
	font-weight: 400;
	line-height: 26px;
	color: #212121;
	letter-spacing: 0.1em;
	text-align: left;
	margin: 0 0 0 30px;
}
#main_contents .main_detail_inner .att_copy_area h4{
	padding: 15px 15px 10px 15px;
	margin: 0 0 10px 0;
	font-size: 1.8rem;
	font-size: clamp(10px,1.8rem,27px);
	font-weight: 400;
	line-height: 20px;
	color: #212121;
	letter-spacing: 0.2em;
	text-align: left;
	border-bottom: solid 3px #ccc;
	display: inline-block;
}
#main_contents .main_detail_inner .privacy_area h4 {
	padding: 15px 15px 10px 15px;
	margin: 0 0 10px 0;
	font-size: 1.8rem;
	font-size: clamp(10px,1.8rem,27px);
	font-weight: 400;
	line-height: 20px;
	color: #212121;
	letter-spacing: 0.2em;
	text-align: left;
	border-bottom: solid 3px #ccc;
	display: inline-block;
}
#main_contents .main_detail_inner .privacy_area p {
	font-size: 1.6rem;
	font-size: clamp(10px,1.6rem,24px);
	font-weight: 400;
	line-height: 1.6;
	color: #212121;
	letter-spacing: 0.1em;
	text-align: left;
}
#main_contents .main_detail_inner .form_area {
	width: 100%;
    padding: 10px;
    margin: 0 0 20px 0;
    background-color: #eee;
}
#main_contents .main_detail_inner .form_area h3 {
	border-left: solid 3px #212121;
    padding: 10px 15px 10px 10px;
    margin: 10px;
    font-size: 1.8rem;
	font-size: clamp(10px,1.8rem,27px);
    font-weight: 400;
    line-height: 20px;
    color: #212121;
    letter-spacing: 0.2em;
    text-align: left;
    width: 100%;
}
#main_contents .main_detail_inner .form_area h3 span {
	letter-spacing: 0.1em;
	padding: 0 0 0 20px;
}
#main_contents .main_detail_inner .form_area .att_copy {
	padding: 20px 15px 10px 25px;
    font-size: 1.4rem;
	font-size: clamp(10px,1.4rem,21px);
    font-weight: 400;
    line-height: 20px;
    background-color: #eee;
    color: #212121;
    letter-spacing: 0.1em;
    text-align: left;
    width: 100%;
}
#main_contents .main_detail_inner .form_area .form_block {
	padding: 10px 15px;
	margin: 0 0 10px 0;
	font-size: 1.4rem;
	font-size: clamp(10px,1.4rem,21px);
	font-weight: 400;
	line-height: 20px;
	color: #212121;
	background-color: #eee;
	letter-spacing: 0.1em;
	text-align: left;
	width: 100%;
}
/*forms2.css*/

.mktoForm {
	width: 100% !important;
}
.mktoForm .mktoLabel {
	width: 200px !important;
}
.mktoForm .mktoFormRow {
	padding: 10px 0;
}
.mktoForm [class^="mktoFormRow"]:fist-of-type {
	background-color: #fff;
}
.mktoForm .mktoFormCol {
	margin: 0 !important;
	width: 100%;
}
.mktoForm .mktoFieldWrap {
	width: 95%;
}
.mktoForm .mktoRadioList, .mktoForm .mktoCheckboxList {
	width: auto !important;
	padding: 0 !important;
}
.mktoHtmlText {
	width: auto !important;
	font-size: 1.6rem;
	font-size: clamp(10px,1.6rem,24px);
}
.mktoForm button.mktoButton {
	border-radius: 4px;
	font-size: 1.8rem !important;
	font-size: clamp(10px,1.8rem,27px)!important;
	padding: 25px 100px !important;
}
.mktoForm .mktoAsterix {
	float: left !important;
	padding-left: 1px !important;
	padding-right: 10px !important;
}
.mktoForm .mktoButtonRow {
	display: block !important;
	text-align: center !important;
}
.mktoForm .mktoButtonRow span {
	margin-left: 0 !important;
}
/*-------------------------*/

#main_contents .main_detail_inner .form_area .form_block label {
	font-size: 1.6rem;
	font-size: clamp(10px,1.6rem,24px);
	font-weight: 400;
	line-height: 20px;
	color: #212121;
	letter-spacing: 0.1em;
	text-align: left;
	background-color: #eee;
}
#main_contents .main_detail_inner .form_area .form_block input[type="text"], #main_contents .main_detail_inner .form_area .form_block input[type="email"], #main_contents .main_detail_inner .form_area .form_block input[type="tel"] {
	width: calc(100% - 300px) !important;
	border: solid 1px #b6b6b6;
	border-radius: 4px;
	height: 2.13em;
	text-indent: 0.33em;
	line-height: 1.6rem;
	padding: 2px 0.3em;
	vertical-align: middle;
	font-size: 1.6rem;
	font-size: clamp(10px,1.6rem,24px);
	font-weight: 400;
	color: #212121;
	letter-spacing: 0.1em;
	text-align: left;
	margin-bottom: 5px;

}
#main_contents .main_detail_inner .form_area .form_block input[type="radio"] {
	position: absolute;
	opacity: 0;
}
#main_contents .main_detail_inner .form_area .form_block input[type="radio"]+label {
	margin-left: 0em;
	cursor: pointer;
}
#main_contents .main_detail_inner .form_area .form_block input[type="radio"]+label:before {
	content: '';
	background: #f4f4f4;
	border-radius: 100%;
	border: 1px solid #b4b4b4;
	display: inline-block;
	width: 1.2em;
	height: 1.2em;
	position: relative;
	top: -0.2em;
	margin-right: 1em;
	margin-bottom: 5px;
	vertical-align: top;
	cursor: pointer;
	text-align: center;
	transition: all 250ms ease;
}
#main_contents .main_detail_inner .form_area .form_block input[type="radio"]:checked+label:before {
	background-color: #3197EE;
	box-shadow: inset 0 0 0 4px #f4f4f4;
}
#main_contents .main_detail_inner .form_area .form_block input[type="radio"]:focus+label:before {
	outline: none;
	border-color: #3197EE;
}
#main_contents .main_detail_inner .form_area .form_block input[type="radio"]:disabled+label:before {
	box-shadow: inset 0 0 0 4px #f4f4f4;
	border-color: #b4b4b4;
	background: #b4b4b4;
}
#main_contents .main_detail_inner .form_area .form_block input[type="radio"]+label:empty:before {
	margin-right: 0;
}
#main_contents .main_detail_inner .form_area .form_block select {
	border: solid 1px #b6b6b6;
	border-radius: 3px 0 0 3px;
	height: 2.13em;
	text-indent: 0.33em;
	line-height: 1.6rem;
	padding: 2px 0.3em;
	font-size: 1.6rem;
	font-size: clamp(10px,1.6rem,24px);
	font-weight: 400;
	color: #212121;
	letter-spacing: 0.1em;
	text-align: left;
	display: block;
	overflow: hidden;
	text-overflow: ellipsis;
	cursor: pointer;
	background-color: #fff;
	width: calc(100% - 300px) !important;
}
#main_contents .main_detail_inner .form_area .form_block textarea {
	border: solid 1px #b6b6b6;
	border-radius: 4px;
	line-height: 1.6rem;
	padding: 2px 0.5em;
	vertical-align: middle;
	font-size: 1.6rem;
	font-size: clamp(10px,1.6rem,24px);
	font-weight: 400;
	color: #212121;
	letter-spacing: 0.1em;
	text-align: left;
	width: calc(100% - 300px) !important;
}
#main_contents .main_detail_inner .prodcut_list_area {
	width: 48%;
	padding: 2px;
	margin: 0 0 4% 0;
	border: solid 1px #e6e6e6;
}
#main_contents .main_detail_inner .prodcut_list_area .prodcut_detail_block {
	width: 100%;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: nowrap;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
	background-image: url(/jp/common/images/bg.png);
	background-color: #f0f0f0;
	transition: all 0.5s;
	filter: alpha(opacity=100);
	-moz-opacity: 1.0;
	opacity: 1.0;
}
#main_contents .main_detail_inner .prodcut_list_area .prodcut_detail_block:hover {
	filter: alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.5;
	text-decoration: none;
}
#main_contents .main_detail_inner .prodcut_list_area .prodcut_detail_block .prodcut_detailphoto_box {
	width: 210px;
}
#main_contents .main_detail_inner .prodcut_list_area .prodcut_detail_block .prodcut_detailname_box {
	width: calc(100% - 210px);
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	justify-content: center;
	align-content: center;
	align-items: center;
}
#main_contents .main_detail_inner .prodcut_list_area .prodcut_detail_block .prodcut_detailname_box h2 {
	margin: 20px 0 0 0;
	padding: 0 15px;
	font-size: 2rem;
	font-size: clamp(16px,2rem,30px);
	font-weight: 400;
	line-height: 26px;
	color: #212121;
	letter-spacing: 0.2em;
	text-align: left;
	position: relative;
}
#main_contents .main_detail_inner .prodcut_list_area .prodcut_detail_block .prodcut_detailname_box h2::after {
	content: " ";
	display: block;
	width: 24px;
	height: 24px;
	margin: 20px auto 0 auto;
	background-image: url(/jp/common/images/link_arrow_red.svg);
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
}
#main_contents .main_detail_inner .prodcut_list_area p {
	padding: 20px;
	font-size: 1.4rem;
	font-size: clamp(10px,1.4rem,21px);
	font-weight: 400;
	line-height: 22px;
	color: #212121;
	letter-spacing: 0.1em;
	text-align: left;
	position: relative;
}
/*   smart phone   */

@media screen and (max-width:640px) {
	/*   all_parts   */
	[data-pagetype="list"] #contents, [data-pagetype="detail"] #contents {
		width: 100%;
		margin: 0 auto;
		position: relative;
		background-color: #fff;
	}
	#main_contents {
		width: 100%;
		margin: 0 auto;
	}
	/*   detail   */
	#main_contents .main_detail_inner {
		width: 100%;
		padding: 40px 0 0 0;
		background-color: #fff;
	}
	body[data-pagetype="detail"] #back-img {
		background-image: url(/jp/common/back-img/list_contact_top.jpg);
		min-height: 285px;
		background-position: center;
	}
	#maintitle_area {
		width: 100%;
		height: 165px;
		margin: 0 auto;
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		align-content: center;
		align-items: center;
	}
	#maintitle_area h1 {
		width: 100%;
		font-family: 'Noto Sans JP', serif;
		font-size: 2.8rem;
		font-size: clamp(20px,2.8rem,42px);
		font-weight: 400;
		line-height: 32px;
		color: #212121;
		letter-spacing: 0.2em;
		text-align: left;
		padding: 0;
		background-color: rgba(255, 255, 255, 0.7);
	}
	#maintitle_area p {
		width: 100%;
		font-size: 1.4rem;
		font-size: clamp(10px,1.4rem,21px);
		font-weight: 400;
		line-height: 46px;
		color: #212121;
		letter-spacing: 0.1em;
		text-align: left;
		padding: 10px 0 0 0;
		background-color: rgba(255, 255, 255, 0.7);
	}
	#main_contents .main_detail_inner {
		width: 100%;
		margin: 0 0 20px 0;
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	#main_contents .main_detail_inner .read_copy_area, #main_contents .main_detail_inner .att_copy_area, #main_contents .main_detail_inner .privacy_area {
		width: 100%;
		margin: 0 0 20px 0;
		padding: 0 1.0rem;
	}
	#main_contents .main_detail_inner .read_copy_area p {
		font-size: 1.8rem;
		font-size: clamp(10px,1.8rem,27px);
		font-weight: 400;
		line-height: 26px;
		color: #212121;
		letter-spacing: 0.1em;
		text-align: left;
	}
	#main_contents .main_detail_inner .att_copy_area p {
		font-size: 1.4rem;
		font-size: clamp(10px,1.4rem,21px);
		font-weight: 500;
		line-height: 26px;
		color: #212121;
		letter-spacing: 0.1em;
		text-align: left;
	}
	#main_contents .main_detail_inner .att_copy_area .discList {
		font-size: 1.4rem;
		font-size: clamp(10px,1.4rem,21px);
		font-weight: 400;
		line-height: 26px;
		color: #212121;
		letter-spacing: 0.1em;
		text-align: left;
		margin: 0 0 0 30px;
	}
	#main_contents .main_detail_inner .privacy_area h4 {
		padding: 40px 15px 10px 15px;
		margin: 0 0 10px 0;
		font-size: 1.8rem;
		font-size: clamp(10px,1.8rem,27px);
		font-weight: 400;
		line-height: 20px;
		color: #212121;
		letter-spacing: 0.2em;
		text-align: left;
		border-bottom: solid 3px #ccc;
		display: inline-block;
	}
	#main_contents .main_detail_inner .privacy_area p {
		font-size: 1.4rem;
		font-size: clamp(10px,1.4rem,21px);
		font-weight: 500;
		line-height: 26px;
		color: #212121;
		letter-spacing: 0.1em;
		text-align: left;
	}
	#main_contents .main_detail_inner .form_area .att_copy {
		padding: 10px 1.0rem;
	}
	#main_contents .main_detail_inner .form_area .form_block {
		padding: 0;
		margin: 0 0 10px 0;
		font-size: 1.4rem;
		font-size: clamp(10px,1.4rem,21px);
		font-weight: 400;
		line-height: 20px;
		color: #212121;
		letter-spacing: 0.1em;
		text-align: left;
		width: 100%;
	}
	/*forms2.css*/
	.mktoForm {
		width: 100% !important;
	}
	.mktoForm .mktoLabel {
		width: 100% !important;
	}
	.mktoForm .mktoFormRow {
		padding: 10px 1.0rem;
	}
	.mktoForm [class^="mktoFormRow"]:fist-of-type {
		background-color: #fff;
	}
	.mktoForm .mktoFormCol {
		margin: 0 !important;
		width: 100%;
	}
	.mktoForm .mktoFieldWrap {
		width: 100%;
	}
	.mktoForm .mktoRadioList, .mktoForm .mktoCheckboxList {
		width: auto !important;
		padding: 0 !important;
	}
	.mktoHtmlText {
		width: auto !important;
		font-size: 1.6rem;
		font-size: clamp(10px,1.6rem,24px);
	}
	.mktoForm button.mktoButton {
		border-radius: 4px;
		font-size: 1.8rem !important;
		font-size: clamp(10px,1.8rem,27px) !important;
		padding: 25px 100px !important;
	}
	.mktoButtonRow {
		width: 100%;
		text-align: center !important;
	}
	.mktoButtonRow .mktoButtonWrap {
		margin: 0 !important;
	}
	/*-------------------------*/
	#main_contents .main_detail_inner .form_area .form_block label {
		font-size: 1.6rem;
		font-size: clamp(10px,1.6rem,24px);
		font-weight: 400;
		line-height: 20px;
		color: #212121;
		letter-spacing: 0.1em;
		text-align: left;
	}
	#main_contents .main_detail_inner .form_area .form_block input[type="text"], #main_contents .main_detail_inner .form_area .form_block input[type="email"], #main_contents .main_detail_inner .form_area .form_block input[type="tel"] {
		width: 100% !important;
	}
	#main_contents .main_detail_inner .form_area .form_block input[type="radio"] {
		position: absolute;
		opacity: 0;
	}
	#main_contents .main_detail_inner .form_area .form_block input[type="radio"]+label {
		margin-left: 0em;
		cursor: pointer;
	}
	#main_contents .main_detail_inner .form_area .form_block input[type="radio"]+label:before {
		content: '';
		background: #f4f4f4;
		border-radius: 100%;
		border: 1px solid #b4b4b4;
		display: inline-block;
		width: 1.2em;
		height: 1.2em;
		position: relative;
		top: -0.2em;
		margin-right: 1em;
		margin-bottom: 5px;
		vertical-align: top;
		cursor: pointer;
		text-align: center;
		transition: all 250ms ease;
	}
	#main_contents .main_detail_inner .form_area .form_block input[type="radio"]:checked+label:before {
		background-color: #3197EE;
		box-shadow: inset 0 0 0 4px #f4f4f4;
	}
	#main_contents .main_detail_inner .form_area .form_block input[type="radio"]:focus+label:before {
		outline: none;
		border-color: #3197EE;
	}
	#main_contents .main_detail_inner .form_area .form_block input[type="radio"]:disabled+label:before {
		box-shadow: inset 0 0 0 4px #f4f4f4;
		border-color: #b4b4b4;
		background: #b4b4b4;
	}
	#main_contents .main_detail_inner .form_area .form_block input[type="radio"]+label:empty:before {
		margin-right: 0;
	}
	#main_contents .main_detail_inner .form_area .form_block select {
		width: 100% !important;
	}
	#main_contents .main_detail_inner .form_area .form_block textarea {
		border: solid 1px #b6b6b6;
		border-radius: 4px;
		line-height: 1.6rem;
		padding: 2px 0.5em;
		vertical-align: middle;
		font-size: 1.6rem;
		font-size: clamp(10px,1.6rem,24px);
		font-weight: 400;
		color: #212121;
		letter-spacing: 0.1em;
		text-align: left;
		width: 100% !important;
		height: 20vh !important;
	}
	#main_contents .main_detail_inner .prodcut_list_area {
		width: 48%;
		padding: 2px;
		margin: 0 0 4% 0;
		border: solid 1px #e6e6e6;
	}
	#main_contents .main_detail_inner .prodcut_list_area .prodcut_detail_block {
		width: 100%;
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-flex-wrap: nowrap;
		-ms-flex-wrap: nowrap;
		flex-wrap: nowrap;
		background-image: url(/jp/common/images/bg.png);
		background-color: #f0f0f0;
		transition: all 0.5s;
		filter: alpha(opacity=100);
		-moz-opacity: 1.0;
		opacity: 1.0;
	}
	#main_contents .main_detail_inner .prodcut_list_area .prodcut_detail_block:hover {
		filter: alpha(opacity=50);
		-moz-opacity: 0.5;
		opacity: 0.5;
		text-decoration: none;
	}
	#main_contents .main_detail_inner .prodcut_list_area .prodcut_detail_block .prodcut_detailphoto_box {
		width: 210px;
	}
	#main_contents .main_detail_inner .prodcut_list_area .prodcut_detail_block .prodcut_detailname_box {
		width: calc(100% - 210px);
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		justify-content: center;
		align-content: center;
		align-items: center;
	}
	#main_contents .main_detail_inner .prodcut_list_area .prodcut_detail_block .prodcut_detailname_box h2 {
		margin: 20px 0 0 0;
		padding: 0 15px;
		font-size: 2rem;
		font-size: clamp(16px,2rem,30px);
		font-weight: 400;
		line-height: 26px;
		color: #212121;
		letter-spacing: 0.2em;
		text-align: left;
		position: relative;
	}
	#main_contents .main_detail_inner .prodcut_list_area .prodcut_detail_block .prodcut_detailname_box h2::after {
		content: " ";
		display: block;
		width: 24px;
		height: 24px;
		margin: 20px auto 0 auto;
		background-image: url(/jp/common/images/link_arrow_red.svg);
		background-position: center;
		background-size: cover;
		background-repeat: no-repeat;
	}
	#main_contents .main_detail_inner .prodcut_list_area p {
		padding: 20px;
		font-size: 1.4rem;
		font-size: clamp(10px,1.4rem,21px);
		font-weight: 400;
		line-height: 22px;
		color: #212121;
		letter-spacing: 0.1em;
		text-align: left;
		position: relative;
	}
}