@charset "UTF-8";

 /* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
shop
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */

#information table {
	width: 100%;
	table-layout: fixed;
}
#information table tr > * {
	vertical-align: middle;
}
#information table th {
	text-align: center;
	border-top: 1px solid #fff;
	border-bottom: 1px solid #fff;
}
#information table td {
	border-top: 1px solid #444;
	border-bottom: 1px solid #444;
}
#information table .button {
	min-width: 106px;
	height: 32px;
	line-height: 32px;
	text-align: center;
	border: 1px solid #fff;
	display: block;
	padding: 0 5px;
}
#information table .button.access {
	padding: 0;
}
#information table .button:before {
	content: "";
	width: 0;
	height: 0;
	margin-right: 7px;
	margin-bottom: 2px;
	vertical-align: middle;
	display: inline-block;
	border: solid transparent;
	border-left-color: #fff;
	border-width: 3.5px 0 3.5px 6px;
}
#information table .button img { vertical-align: middle; }

#service {
	background: url(../images/shop/bg_service.jpg) no-repeat center center;
	background-size: cover;
	-moz-background-size: cover;
	-webkit-background-size: cover;
}
#service li {
	color: #000;
}

@media screen and (min-width:981px){
	#mainVis {
		background-image: url(../images/shop/main_pc.jpg);
	}

	#information { padding: 80px 0 0; }
	#information h2 img {
		margin-bottom: 50px;
		vertical-align: top;
	}
	#information .inner {
		padding-left: 140px;
		padding-right: 140px;
	}
	#information table tr > * {
		font-size: 14px;
		line-height: 19px;
	}
	#information table th { width: 150px; }
	#information table td { padding: 25px 15px 25px 30px; }
	#information table .button {
		font-size: 12px;
		margin: -8px 0 -7px;
		display: inline-block;
	}
	#information table .button.fr {
		float: right;
	}

	#table h2 {
		padding-top: 45px;
		margin-top: 77px;
	}
	#table h2 img {
		vertical-align: top;
		margin-bottom: 45px;
	}
	#table .wrap {
		background: url(../images/shop/bg_table_pc.jpg) no-repeat center top;
		background-size: 100% auto;
		padding-top: 17.2%;
	}
	#table li {
		height: 492px;
		position: relative;
	}
	#table li:nth-child(2) {
		padding-top: 90px;
		margin-top: -90px;
	}
	#table li:after {
		content: "";
		display: block;
		width: calc(50% + 85px);
		height: 100%;
		position: absolute;
		top: 0;
		background: no-repeat center center;
		background-size: cover;
		-moz-background-size: cover;
		-webkit-background-size: cover;
	}
	#table li:nth-child(1):after {
		left: 0;
		background-image: url(../images/shop/table_img01.jpg);
	}
	#table li:nth-child(2):after {
		top: 90px;
		right: 0;
		height: calc(100% - 90px);
		background-image: url(../images/shop/table_img02.jpg);
	}
	#table li .inner:after {
		content: "";
		display: block;
		clear: both;
	}
	#table li:nth-child(1) .inner {
		padding-top: 127px;
		padding-left: 620px;
	}
	#table li:nth-child(2) .inner {
		padding-top: 52px;
		padding-right: 620px;
	}
	#table .text {
		font-size: 14px;
		line-height: 28px;
		letter-spacing: 0;
		margin: 24px 0 21px;
	}
	#table .count {
		float: left;
		padding-top: 16px;
		border-top: 1px solid #4d4d4d;
	}

	#service { padding-bottom: 134px; }
	#service h2 { padding: 50px 0 48px; }
	#service h2 img {
		width: 235px;
		vertical-align: top;
	}
	#service ul:after {
		content: "";
		display: block;
		clear: both;
	}
	#service li {
		width: 470px;
		font-size: 14px;
		line-height: 22px;
	}
	#service li:nth-child(1) { float: left; }
	#service li:nth-child(2) { float: right; }
	#service li dl {
		margin-top: 20px;
		padding: 1px 0 1px 16px;
		border-left: 1px solid #000;
	}
	#service li dt {
		font-size: 18px;
		font-weight: bold;
		margin-top: -2px;
	}
	#service li dd { margin: 13px 0 -5px; }
}

@media screen and (max-width:980px){
	#mainVis {
		background-image: url(../images/shop/main_sp.jpg);
	}

	#information h2 img {
		margin: 40px 0;
		vertical-align: top;
	}
	#information .inner {
		padding: 0 15px;
	}
	#information table { margin-bottom: 50px; }
	#information table tr > * {
		font-size: 12px;
		line-height: 17.5px;
		padding: 15px 0 12px;
	}
	#information table th { width: 75px; }
	#information table td {
		padding-left: 8px;
		letter-spacing: 0;
	}
	#information table td span { display: inline-block; }
	#information table .button { margin-top: 10px; }

	#table h2 { padding-top: 50px; }
	#table h2 img {
		vertical-align: top;
		margin-bottom: 25px;
	}
	#table .wrap {
		background: url(../images/shop/bg_table_sp.jpg) no-repeat center top;
		background-size: 100% auto;
		padding: 34.8% 10px 30px;
	}
	#table li + li {
		padding-top: 45px;
		margin-top: -45px;
	}
	#table li:before {
		content: "";
		display: block;
		width: 100%;
		padding-top: 62%;
		margin-bottom: 22px;
		background: no-repeat center center;
		background-size: cover;
		-moz-background-size: cover;
		-webkit-background-size: cover;
	}
	#table li:nth-child(1):before {
		background-image: url(../images/shop/table_img01.jpg);
	}
	#table li:nth-child(2):before {
		background-image: url(../images/shop/table_img02.jpg);
	}
	#table li .inner { padding-left: 15px; }
	#table li .inner:after {
		content: "";
		display: block;
		clear: both;
	}
	#table li .text { margin: 20px 0 13px; }
	#table li:nth-child(2) .text { letter-spacing: -0.03em; }
	#table li .text span { display: inline-block; }
	#table li .count {
		float: left;
		padding-top: 13px;
		padding-bottom: 32px;
		border-top: 1px solid #4e4e4d;
	}

	#service h2 img {
		height: 19px;
		margin: 50px 0 10px;
	}
	#service li { padding: 0 10px; }
	#service li img { width: 100%; }
	#service li dl {
		margin: 15px 0 20px;
		padding-left: 10px;
		border-left: 1px solid #000;
	}
	#service li dt {
		font-size: 16px;
		font-weight: bold;
		margin: 5px 0 2px;
	}
	#service li dd span { display: inline-block; }
	#service ul { padding-bottom: 1px; }
}