@charset "utf-8";
/* CSS Document */

.cf:before,
.cf:after {
	content: "";
	display: table;
}

.cf:after {
	clear: both;
}

.cf {
	zoom: 1;
}

.title_area01 {
	text-align: center;
}
	.title_area01 p {
		margin: 5px 0 40px;
		color: #a5001e;
	}

.rs_header {
	margin-bottom: 70px;
}

.item_name h2 {
	border-top: 2px solid #222;
	padding: 5px 0px;
	line-height: 1.3;
	font-size: 1.6rem;
	font-weight: bold;
}
.toprice a {
	display: block;
	padding: 5px;
	border: 2px solid #222;
	color: #222;
	font-size: 2.0rem;
	text-align: center;
}
.toprice a:hover {
	color: #a5001e;
	border: 2px solid #a5001e;
}

.sec_page {
	margin-bottom: 90px;
}
.sec_index {
	margin-bottom: 20px;
	font-size: 2.0rem;
	border-bottom: 2px solid #fabe00;
	color: #fabe00;
	text-align: center;
}
	.sec_index span {
		margin-right: 10px;
	}
.sec_body {
	margin: 20px 0;
}
.sec_sub_index {
	margin-bottom: 15px;
	text-align: center;
	font-size: 20px;
}
.title_has_arrow {
	max-width: 399px;
	margin: 0 auto 20px;
	padding: 10px 10px 22px;
	text-align: center;
	line-height: 1.2;
	color: #fff;
	font-size: 20px;
	font-weight:bold;
	background: #fabe00 url(../img/title_arrow.gif) no-repeat center bottom;
}
.title_has_arrow span {
	display: block;
	font-size: 14px;
}

.note {
	margin: 8px 0 20px;
}
.sec_index + .note {
	margin-top: -14px;
}
.sec_sub_index + .note {
	margin: -18px 0 20px;
}
.note_c {
	text-align: center;
}

.add_price {
	text-align: center;
	font-weight: bold;
}
.add_price em {
	color: #a5001e;
}
.sec_sub_index + .add_price {
	margin-top: -14px;
}


.list {
	clear: both;
}
.list > li {
		float: left;
}

@media print, screen and (min-width: 668px) {
	.list_c2 {
			margin-right: -10px;
			margin-left: -10px;
	}
	.list_c2 > li {
			width: 380px;
			margin: 0 10px;
	}
	.list_c2 > li:nth-child(2n+1) {
			clear: both;
	}
	.list_c3 {
			margin-right: -7px;
			margin-left: -7px;
	}
	.list_c3 > li {
			width: 250px;
			margin: 0 7px;
	}
	.list_c3 > li:nth-child(3n+1) {
			clear: both;
	}
	.list_c4 {
			margin-right: -10px;
			margin-left: -10px;
	}
	.list_c4 > li {
			width: 180px;
			margin: 0 10px;
	}
	.list_c4 div label {
		width:83% !important;
	}
	.list_c4 > li:nth-child(4n+1) {
			clear: both;
	}
	.list_c5 {
			margin-right: -10px;
			margin-left: -10px;
	}
	.list_c5 > li {
			width: 140px;
			margin: 0 10px;
	}
	.list_c5 div label {
		width:80% !important;
	}
	.list_c5 > li:nth-child(5n+1) {
			clear: both;
	}
}

.list_inline {
	text-align: center;
	letter-spacing: -.5em;
}
.list_inline > li {
	float: none;
	margin: 0 7px;
	vertical-align: top;
	text-align: left;
	display: inline-block;
	letter-spacing: normal;
}
@media print, screen and (min-width:668px){
.list_inline.list_c4 > li {
	margin: 0 10px;
}
.list_inline.list_c5 > li {
	margin: 0 10px;
}
}
.list_inline > li.no {
	min-width: 90px;
}
.list_inline > li.yes {
	min-width: 90px;
	white-space: nowrap;
}
.list_inline div label {
	width: auto !important;
}

.list_inline li div {
	padding-right: 10px !important;
}
.list_yn li div {
	padding-right: 10px !important;
}


.list .img {
	display: block;
	margin-bottom: 8px;
	text-align: center;
}
.list .text {
	display: block;
}

.list div {
	zoom: 1;
	margin-top: 10px;
	padding: 4px 6px;
	background: #fff3a6;
}
.list div.l2 {
	min-height: 50px;
}
.list div input {
	float: left;
}
.list div label {
	width: 90%;
	float: left;
	padding-left: 2px;
}
.list div:before,
.list div:after {
	content: "";
	display: table;
}
.list div:after {
	clear: both;
}
.list .text em {
	color: #a5001e;
}

.list li > .att {
	padding: 3px 0 0 30px;
}

.link_btn {
	font-size: 20px;
}
.link_btn a {
	display: block;
	max-width: 380px;
	margin-right: auto;
	margin-left: auto;
	padding: 6px;
	text-align: center;
	line-height: 1.2;
	color: #222;
	border: #222222 2px solid;
}
.link_btn a:hover {
	border: 2px solid #a5001e;
	color: #a5001e;
}
.link_btn i {
	margin-left: 5px;
}


@media print, screen and (min-width:668px){
	#size .sec_index {
		margin-bottom: 40px;
	}
}
.size_input {
	position: relative;
	float: left;
	width: 516px;
	margin-bottom: 50px;
	background-image: url(../img/size.gif);
	background-repeat: no-repeat;
	background-position: 281px 0;
}
dl.size {
	position: relative;
	width: 250px;
	padding: 10px;
	line-height: 1.2;
}
.size dt {
	margin-bottom: 3px;
	font-size: 20px;
}
dl.size .input,
dl.size .unit {
	display: inline-block;
	vertical-align: middle;
	margin-bottom: 8px;
}
dl.size .unit {
	font-size: 16px;
	line-height: 1.0;
}
dl.size input {
	width: 105px;
	height: 30px;
}
dl.size .att {
	font-size: 12px;
}
dl.size_height {
	float: left;
	background: #fabe00;
}
dl.size_width {
	float: right;
	margin-top: 180px;
	padding-top: 34px;
	background: #355689;
	color: #fff;
}
dl.size_height:after {
	position: absolute;
	right: 5px;
	top: 50%;
	content: '';
	width: 20px;
	height: 21px;
	margin-top: -10px;
	background: url(../img/size_height_arrow.png);
}
dl.size_width:after {
	position: absolute;
	left: 50%;
	top: 8px;
	content: '';
	width: 21px;
	height: 20px;
	margin-left: -10px;
	background: url(../img/size_width_arrow.png);
}

.size_note {
	float: right;
	width: 250px;
	line-height: 1.7;
	color: #a5001e;
}

.size_att {
	clear: both;
	padding: 28px 78px 25px 27px;
	border: #a5001e 2px solid;
}
.size_att .main {
	float: left;
	width: 400px;
	margin-bottom: 35px;
}
.size_att h4 {
	margin-bottom: 22px;
	font-size: 18px;
	line-height: 1.2;
}
.size_att .lead {
	margin-bottom: 13px;
}
.spec > dt {
	font-size: 16px;
	color: #a5001e;
}
.spec dl dt {
	clear: both;
	float: left;
	width: 275px;
}
.spec dl dd {
	padding-left: 275px;
}
.spec01 {
	margin-bottom: 10px;
	padding-bottom: 10px;
	border-bottom: #dcdddd 1px dotted;
}
.size_att .img {
	float: right;
	width: 198px;
	margin-bottom: 35px;
}
.size_att .img h5 {
	margin-bottom: 5px;
	text-align: center;
	font-size: 16px;
	color: #fff;
	background: #a5001e;
}
.size_att .link_btn {
	clear: both;
	font-size: 16px;
	font-weight: bold;
}


.sec_parts .list li {
	margin-bottom: 40px;
}

.sub_sec_parts {
	margin: 35px 0 50px;
}
.sub_sec_parts .sub_sec_title {
	font-size: 18px;
}

.sec_option {
	margin: 40px auto 65px;
}
.sec_option:last-child {
	margin-bottom: 0;
}

.sec_option .list_inline {
	margin-bottom: 40px;
}

.sub_sec_option {
	margin: 35px 0 30px;
}
.sub_sec_title {
	margin-bottom: 10px;
	text-align: center;
	font-size: 20px;
	font-weight:bold;
	line-height: 1.2;
	color: #fabe00;
}
.sub_sec_title + .note {
	margin: -10px 0 10px;
}
.option_input_c {
	text-align: center;
}
.option_input_c span {
	padding-left: 5px;
}

.about_chain {
	padding: 30px 430px 40px 27px;
	border: #f2f2f2 5px solid;
	background: url(../img/about_chain.jpg) no-repeat 420px center;
}
.about_chain h5 {
	margin-bottom: 12px;
	font-size: 18px;
}

.grommet_quantity .note {
	margin: -5px 0 25px;
}
.grommet_quantity .list div {
	padding-left: 35px;
	background-color: transparent;
}

.option_bouen {
	padding-bottom: 120px;
	background: url(../img/t2_option_bouen_img.jpg) no-repeat center bottom;
}




@media screen and (max-width:667px){

.rs_header {
	margin-bottom: 40px;
}

.sample {
	margin-bottom: 25px;
}
.sec_page {
	margin-bottom: 50px;
}

.sec_index {
	font-size: 1.8rem;
	line-height: 1.2;
	padding-bottom: 5px;
}
	.sec_index span {
		display: block;
		margin-right: 0;
	}

.sec_sub_index {
	font-size: 18px;
}
.title_has_arrow {
	line-height: 1.2;
	font-size: 18px;
}
.title_has_arrow span {
	display: block;
	font-size: 14px;
}

.note {
	margin: 8px 0 20px;
}
.sec_index + .note {
	margin-top: -14px;
}
.sec_sub_index + .note {
	margin: -18px 0 15px;
}

.list div input {
	vertical-align: middle;
}
.list div {
	padding: 4px;
	font-size: 13px;
}
.list div.l2 {
	min-height: 0;
}

.list_c2 {
	margin: 0;
}
.list_c2 > li {
	float: none;
	width: auto;
	max-width: 380px;
	margin: 0 auto 25px;
}
.list_c3,
.list_c4,
.list_c5 {
	margin-right: -1.5%;
	margin-left: -1.5%;
}
.list_c3 > li,
.list_c4 > li,
.list_c5 > li  {
	width: 47%;
	margin: 0 1.5% 25px;
}
.list_c3 > li:nth-child(2n+1),
.list_c4 > li:nth-child(2n+1),
.list_c5 > li:nth-child(2n+1) {
	clear: both;
}

.sec_option .list_inline {
	margin-bottom: 20px;
}

.list li > .att {
	padding: 3px 0 0 0;
}
.list div label {
	width: 84%!important;
}

.list_inline > li.no div label {
	width: auto !important;
}

.list_yn > li div input,
.list_yn > li div label {
	float: none;
}

.link_btn {
	font-size: 18px;
}

.size_input {
	float: none;
	width: auto;
	background-position: right top;
	background-size: 33% auto;
}
dl.size {
	width: 64%;
}

.size dt {
	font-size: 18px;
}
dl.size_height {
	float: none;
	margin-top: 0;
}
dl.size_width {
	float: none;
	margin-top: 20px;
	padding-top: 10px;
}
dl.size_height:after {
	display: none;
}
dl.size_width:after {
	display: none;
}
.size_input {
	margin-bottom: 20px;
}
.size_note {
	margin-bottom: 25px;
	float: none;
	width: auto;
}

.size_att {
	padding: 15px;
}
.size_att .main {
	float: none;
	width: auto;
	margin-bottom: 25px;
}
.size_att h4 {
	font-size: 16px;
}
.spec dl dt {
	margin-bottom: 5px;
	width: 70%;
	padding-right: 10px;
}
.spec dl dd {
	float: left;
	padding-left: 0;
	margin-bottom: 5px;
	width: 30%;
}
.spec01 {
	padding-bottom: 5px;
}
.size_att .img {
	float: none;
	margin: 0 auto 25px;
}


.about_chain {
	padding: 15px;
	background: none;
}
.about_chain h5 {
	margin-bottom: 12px;
	font-size: 18px;
}
.about_chain p {
	padding-bottom: 150px;
	background: url(../img/about_chain.jpg) no-repeat center bottom;
}

.sec_option {
	margin: 30px auto 40px;
}
.sub_sec_option {
	margin: 25px 0 20px;
}
.sub_sec_title {
	font-size: 17px;
}

} /* max-width:667px */

@media screen and (max-width:500px){
	.size_input {
		width: auto;
		padding-top: 185px;
		background-position: center top;
		background-size: auto;
	}
	dl.size {
		width: auto;
	}
}

@media screen and (max-width:386px){
	.about_chain p {
		background-size: contain;
		padding-bottom: 45%;
	}
}


/* ============= 以下、カート用 ============= */
.form_control {
	border: 1px solid #999;
	padding: 6px 12px;
	height: 34px;
	font-size: 1.6rem;
	color: #555;
	line-height: 1.4;
}
.w105 {
	width: 105px;
}

input[type=button] {
	border-radius: 4px;
	padding: 8px 20px;
	font-size: 1.8rem;
	cursor: pointer;
}

.estimate {
	border-top: 5px solid #f2f2f2;
	margin-top: 60px;
	padding-top: 30px;
}
	.estimate .estimateButton {
		border: 2px solid #222;
		background-color: #fff;
		color: #222;
		cursor: pointer;
	}
		.estimate .estimateButton:hover, .estimate .estimateButton:focus {
			border-color: #a5001e;
			background-color: #fff;
			color: #a5001e;
		}
	.estimate p {
		margin-top: 15px;
		line-height: 1.3;
	}

.cart_box {
	margin-top: 50px;
}
.cart_box .item_img {
	text-align: center;
}
.cart_box .item_detail .itemName {
	font-size: 1.6rem;
	font-weight: bold;
}

#summary {
	background-color: #f2f2f2;
	margin-top: 15px;
	padding: 10px 15px;
}

.cart_box .value01 {
	margin-top: 15px;
}
	.cart_box .value01 p {
		display: inline-block;
		color: #a5001e;
		font-size: 1.8rem;
	}
	.cart_box .value01 #utiwake {
		display: block;
	}

.cart_box .value02 {
	border-top: 1px dotted #999;
	margin-top: 15px;
	padding-top: 15px;
}
	.cart_box .value02 select {
		min-width: 80px;
	}
	.cart_box .value02 .qty label {
		margin-right: 15px;
	}
	.cart_box .value02 p {
		margin-top: 6px;
		color: #a5001e;
	}
	.cart_box .value02 .total {
		background-color: #fde8e8;
		margin-top: 15px;
		padding: 12px 20px;
		text-align: right;
	}
		.cart_box .value02 .total #totalprice {
			display: inline-block;
			margin: 0 10px;
			color: #222;
			font-size: 3.6rem;
			font-weight: bold;
			line-height: 1.0;
		}
		.cart_box .value02 .total .soryohosoku {
			font-size: 1.1rem;
		}

.cart_box .cartNote {
	border: 1px dotted #999;
	margin-top: 15px;
	margin-bottom: 15px;
	padding: 10px;
	font-size: 1.2rem;
}


.cart_box .intoCart {
	margin-top: 20px;
}
	.cart_box .intoCart .cartButton {
		border: 1px solid #d58512;
		background-color: #ec971f;
		width: 100%;
		color: #fff;
	}
		.cart_box .intoCart .cartButton:hover, .cart_box .cartButton:focus {
			border-color: #ec971f;
			background-color: #985f0d;
		}
		.cart_box .intoCart .cartButton[disabled] {
			border-color: #9fa0a0;
			background-color: #9fa0a0;
			cursor: not-allowed;
		}
			.cart_box .intoCart .cartButton[disabled]:hover,
			.cart_box .intoCart .cartButton[disabled]:focus {
				border-color: #9fa0a0;
				background-color: #9fa0a0;
			}
.cart_box .again {
	margin: 20px 0;
}
	.cart_box .again .againButton {
		border: 1px solid #8c8c8c;
		background-color: #fff;
		width: 100%;
	}
		.cart_box .again .againButton:hover, .cart_box .againButton:focus {
			border-color: #8c8c8c;
			background-color: #e6e6e6;
		}

.btn_area01 {
	margin-top: 30px;
	text-align: center;
}
.aright {
	display: block;
	border: 3px solid #222;
	padding: 10px 20px;
	text-align: center;
	font-weight: bold;
}
	.aright:hover {
		border: 3px solid #a5001e;
	}
	.aright span {
		position: relative;
	}
	.aright span:after {
		position: absolute;
		font-family: FontAwesome;
		content: '\f054';
		right: -20px;
		top: 50%;
		margin-top: -10px;
	}
.btn_area_red .aright {
	border: 3px solid #a5001e;
	color: #a5001e;
}
	.btn_area_red .aright:hover {
		background-color: #a5001e;
		color: #fff;
	}
.btn_w400 {
	width: 400px;
	margin: 0 auto;
}

@media screen and (max-width:667px){
	input[type=button] {
		padding: 8px 10px;
		font-size: 1.6rem;
		width: 100%;
	}
	.cart_box .value02 .total{
		padding: 6px;
		text-align: center;
	}
		.cart_box .value02 .total #totalprice {
			font-size: 2.8rem;
			margin: 0 5px;
		}
}
