@charset "utf-8";

* {font-family:Arial,'メイリオ',Meiryo,'ＭＳ Ｐゴシック',"MS P Gothic",'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro',sans-serif;}

html {font-size:14px;}

@media not all and (max-width : 1024px) {

	html {
		overflow-y:scroll;
		min-width:1150px;
	}

}

body {
	color:#404040;
	line-height:1.5;
	margin:0;
	padding:0;
}

a img {border:none;} /* ie10 */

hr.none {
	clear:both;
	margin:0 0 20px;
	padding:0;
	visibility:hidden;
}

/* リンク */
a {
	color:#2c94bf;
	text-decoration:underline;
}

@media not all and (max-width : 1024px) {

	a:hover {
		color:#894cdb;
		text-decoration:none;
	}

}

/* header */
header {
	background-color:#fff;
	margin:0;
	padding:0;
	width:100%;
}

.headerarea {
	display:block;
	display:flow-root;
}

.headerarea::after { /* flow-root 無効 */
	clear:both;
	content:'';
	display:block;
}

.logo {
	display:block;
	padding:0;
}

.logo img {
	display:inline-block;
	max-height:64px;
	max-width:100%;
	vertical-align:bottom;
}

.tel {display:block;}

@media not all and (max-width : 1024px) {

	.headerarea {
		margin:0 auto;
		width:950px;
	}

	.tel {
		float:right;
		font-size:30px;
		margin:10px 0 8px;
		padding:0;
		text-align:right;
		width:530px;
	}

	.logo {
		float:left;
		margin:10px 0;
		width:410px;
	}

	.header_msg {
		clear:right;
		float:right;
		line-height:1.2;
		margin:0 0 5px;
		padding:0;
		text-align:right;
		width:530px;
	}

}

@media (max-width : 1024px) {

	header {
		border-bottom:1px solid #ccc;
		box-shadow:rgba(0, 0, 0, 0.5) 2px 0;
	}

	header[data-js="yes"] {
		position:fixed;
		z-index:1;
	}

	.tel {
		font-size:16px;
		margin:0;
		padding:5px;
	}

	.logo {
		margin:0 auto 10px;
		text-align:center;
		width:90vw;
		max-width:calc(100% - 120px)
	}

	.header_msg {display:none;}

}

/* ナビ */
.header_nav .nav_item > ul {display:none;}

@media not all and (max-width : 1024px) {

	.header_nav {
		background:url('/images/content_bg.png') repeat 0 0;
		display:block;
		padding:5px 0;
		position:relative;
		z-index:2;
	}

	.header_nav > ul {
		border-collapse:collapse;
		display:table;
		margin:0 auto;
		table-layout:fixed;
		width:85%;
	}

	.header_nav .nav_item {
		background-color:#fff;
		border:1px solid #deb887;
		display:table-cell;
		font-weight:bold;
		padding:0;
		vertical-align:middle;
		width:16.6%;
		width:calc(100% / 6);
	}

	.header_nav .nav_item a {
		background-color:#800000;
		color:#fff;
		display:block;
		padding:10px 5px;
		text-decoration:none;
		text-align:center;
	}

	.header_nav .nav_item:hover > a, .header_nav .nav_item[data-nav-btn="current"] > a {
		color:#404040;
		background-color:#fff;
	}

	.header_nav .nav_item:hover > ul {
		display:block;
		margin:1px 0 0;
		padding:0;
		position:absolute;
	}

	.header_nav .nav_item2 {
		background-color:#fff;
		border:1px solid #deb887;
		border-top:none;
		display:block;
		margin:0;
		padding:0;
		width:calc((85vw - 7px) / 6 - 3px);
		min-width:158.75px; /* 100vw = 1150px */
	}

	.header_nav .nav_item2 a {padding:10px 6px;}

	.header_nav .nav_item2:hover > a {
		color:#404040;
		background-color:#fff;
	}

}

@media (max-width : 1024px) {

	.header_nav {display:none;}

	.header_nav[data-js="yes"] {
		display:block;
		max-height:100vh;
		position:fixed;
		right:0;
		top:0;
		z-index:2;
	}

	[data-btn-type] {
		color:#fff;
		height:50px;
		outline:none;
		position:fixed;
		right:10px;
		top:10px;
		width:50px;
		z-index:3;
	}

	[data-btn-type="close"] {
		background-color:#800000;
		border:none;
		border-radius:25px;
	}

	[data-btn-type="open"] {
		background:none;
		border:none;
		font-size:50px;
	}

	[data-btn-type="open"] + .header_nav {overflow-y:scroll;}

	[data-btn-type="close"] + .header_nav > ul {display:none;}

	[data-btn-type="open"] + .header_nav > ul {
		background-color:#800000;
		color:#fff;
		display:block;
		min-height:calc(100vh - 60px);
		margin:0;
		padding:60px 0 0;
		position:relative;
		right:0;
		top:0;
		width:200px;
	}

	.header_nav .nav_item {
		display:block;
		margin:0 15px;
		padding:0;
		text-align:center;
	}

	.header_nav .nav_item a {
		color:inherit;
		display:block;
		line-height:1.5;
		margin:0;
		padding:15px 0;
		text-align:left;
		text-decoration:none;
	}

	.header_nav .nav_item > [data-sp-subnav="open"] {
		display:block;
		margin:0;
		padding:0;
	}

	.header_nav .nav_item2 {
		display:block;
		margin:0;
		padding:0;
		text-align:left;
	}

	.header_nav .nav_item2 a {
		color:inherit;
		display:block;
		line-height:1.5;
		margin:0;
		padding:15px 0;
		text-decoration:none;
		text-indent:20px;
	}

}

/* パンくず */
.pankuzu {
	font-size:14px;
	margin:0;
	padding:0;
}

.pankuzu ul {padding:10px 0;}

.pankuzu li {display:inline-block;}

.pankuzu li + li::before {
	content:'＞';
	margin:0 5px;
}

.pankuzu li a {
	color:inherit;
	text-decoration:underline;
}


@media not all and (max-width : 1024px) {

	.pankuzu {background:url('/images/bg_body.jpg') 0 0 repeat #fafad2;}

	.pankuzu ul {
		margin:0 auto;
		width:85vw;
	}

	.pankuzu li a:hover {
		color:inherit;
		opacity:0.7;
	}

}

@media (max-width : 1024px) {

	.pankuzu {width:100%;}

	.pankuzu[data-pankuzu="top"] {
		background:url('/images/bg_body.jpg') 0 0 repeat #fafad2;
		transition:height,opacity 2s;
	}

	.pankuzu[data-pankuzu="up"] {
		background-color:rgba(255,255,255,0.5);
		opacity:1;
		position:fixed;
		transition:opacity 2s;
		z-index:1;
	}

	.pankuzu[data-pankuzu="down"] {
		background-color:rgba(255,255,255,0.5);
		opacity:0;
		position:fixed;
		transition:height,opacity 2s;
		z-index:1;
	}

	.pankuzu ul {margin:0 5px;}

}

/* フッター */
.foot_nav {
	font-size:85%;
	background:url('/images/bg_body.jpg') 0 0 repeat #fafad2;
	margin:0;
	padding:5px 5%;
	width:90%;
}

.foot_nav ul {
	display:block;
	margin:0 auto;
}

.foot_nav_item {
	display:inline-block;
	line-height:2.2;
	text-align:left;
}

.foot_nav_item + .foot_nav_item::before {
	content:'｜';
	margin:0 5px;
}

.foot_nav_link {
	color:#333;
	text-decoration:none;
}

.foot_nav_link:hover {color:#777;}

.foot_copy {
	background:url('/images/bg_body.jpg') 0 0 repeat #fafad2;
	color:#666;
	display:block;
	font-size:72.25%;
	margin:0;
	padding:2px 0 5px;
	text-align:center;
}

@media not all and (max-width : 1024px) {

	.foot_nav ul {
		padding:0;
		text-align:center;
	}

}

@media (max-width : 1024px) {

	.foot_nav ul {
		padding:0 0 0 calc(60px - 5vw);
		text-align:left;
	}

}

/* ページトップ */
@media not all and (max-width : 1024px) {

	.page_nav {
		background:url('/images/bg_footer.png') left top ;
		display:block;
		display:flow-root;
		margin:0 auto;
		padding:12px 7.5% 0;
		width:85%;
	}

	.page_nav::after {
		clear:both;
		content:'';
		display:block;
	}

	.page_nav li {display:block;}

	.page_nav li:nth-of-type(2n + 1) {
		clear:left;
		float:left;
	}

	.page_nav li:nth-of-type(2n) {
		clear:right;
		float:right;
	}

}

@media (max-width : 1024px) {

	.page_nav {display:none;}

	[data-move="top"] {
		bottom:10px;
		left:10px;
		position:fixed;
	}

}

/* contents */
.contents {
	background:url('/images/bg_body.jpg') 0 0 repeat #fafad2;
	display:block;
	display:flow-root;
	margin:0 auto;
	padding:0;
	width:100%;
}

.contents::after { /* flow-root 無効 */
	clear:both;
	content:'';
	display:block;
}

/* main */
.main {
	display:block;
	display:flow-root;
	padding:0;
}

body[data-page="home"] .main {
	margin:0 auto;
	padding:20px 0;
	width:84vw;
}

body:not([data-page="home"]) .main {padding:0 0 20px;}

.main::after { /* flow-root 無効 */
	clear:both;
	content:'';
	display:block;
}

.main_title {
	background:url('/images/title_01.png') 0 0 no-repeat;
	color:#fff;
	font-size:20px;
	font-weight:normal;
	line-height:30px;
	margin:0;
	padding:0;
	text-indent:15px;
}

@media not all and (max-width : 1024px) {

	body:not([data-page="home"]) .main {
		float:left;
		margin:0 0 0 8vw;
		width:66vw;
	}

}

@media (max-width : 1024px) {

	body:not([data-page="home"]) .main {
		margin:0 auto;
		width:84vw;
	}

}

/* ホーム */
.home_bnr {
	display:block;
	margin:0;
	padding:0;
	width:100%;
}

.home_bnr_item {
	background-color:#fff;
	display:inline-block;
	margin:0;
	padding:0;
	vertical-align:bottom;
}

.home_bnr a {display:block;}

.home_bnr a:hover {opacity:0.7;}

.home_bnr img {
	display:block;
	max-width:100%;
}

@media not all and (max-width : 780px) {

	.home_bnr_item {width:15.8vw;}

	.home_bnr_item + .home_bnr_item {margin:0 0 0 1.25vw;}

	.home_bnr_item:nth-of-type(5n + 1) {margin:0;}

	.home_bnr_item:nth-of-type(n + 6) {margin-top:1.25vw;}

}

@media (max-width : 780px) {

	.home_bnr {display:inline-block;}

	.home_bnr_item {width:27vw;}

	.home_bnr_item:nth-of-type(3n + 1) {margin:0;}

	.home_bnr_item:nth-of-type(3n) {margin:0 0 0 1.5vw;}

	.home_bnr_item:nth-of-type(3n + 2) {margin:0 0 0 1.5vw;}

	.home_bnr_item:nth-of-type(n + 4) {margin-top:1.5vw;}

}

@media (max-width : 400px) {

	.home_bnr_item {width:40vw;}

	.home_bnr_item:nth-of-type(2n + 1) {margin:0;}

	.home_bnr_item:nth-of-type(2n) {margin:0 0 0 4vw;}

	.home_bnr_item:nth-of-type(n + 3) {margin-top:4vw;}

}

/* お知らせ */
.news_block {
	display:block;
	margin:0;
	padding:0;
}

.news_list {
	background:url('/images/content_bg.png') repeat 0 0;
	border:1px solid #deb887;
	display:block;
	margin:0;
	overflow-y:auto;
	padding:5px;
}

.news_item {
	display:block;
	margin:0;
	padding:0;
}

.news_item:hover {
	background-color:#800000;
	color:white;
}

.news_item:nth-of-type(even):not(:hover) {background-color:#efe4d8;}

.news_item > a {
	color:inherit;
	display:block;
	margin:0;
	padding:10px 5px;
	text-decoration:none;
}

.news_item + .news_item {border-top:1px dashed #deb887;}

.news_item time {
	display:inline-block;
	margin:0 1em 0 0;
	padding:0;
	text-align:left;
	width:6.5em;
}

@media not all and (max-width : 700px) {

	.news_block {
		float:left;
		width:calc(84vw - 520px);
		min-width:40vw;
	}

	.news_list {height:335px;}

}

@media (max-width : 700px) {

	.news_block {width:100%;}

	.news_list {max-height:335px;}

}

/* fb_box */
.fb_box {
	display:block;
	height:377px;
	margin:0;
	overflow:hidden;
	padding:0;
	text-align:center;
}

@media not screen and (max-width : 700px) {

	.fb_box {
		float:right;
		width:500px;
		max-width:40vw;
	}

}

@media only screen and (max-width : 700px) {

	.fb_box {
		margin-top:20px;
		width:100%;
	}

}

/* home_address */
.home_address {
	background:url('/images/content_bg.png') repeat 0 0;
	border:1px solid #deb887;
	display:block;
	display:flow-root;
	margin:0;
	padding:10px;
	width:calc(100% - 22px);
}

.home_address::after { /* flow-root無効 */
	clear:both;
	content:'';
	display:block;
}

.home_address h2 {
	font-size:14px;
	font-weight:normal;
	margin:0;
	padding:0;
}

.home_address_top {
	display:block;
	font-size:18px;
	font-weight:bold;
	margin:0;
	padding:0;
}


.addr_detail {
	display:block;
	display:flow-root;
	margin:0;
	padding:0;
}

.addr_detail::after { /* flow-root無効 */
	clear:both;
	content:'';
	display:block;
}

.addr_detail dt {
	clear:left;
	display:block;
	float:left;
	margin:0 1em 0 0;
	padding:0;
}

.addr_detail dd {
	display:block;
	float:left;
	margin:0;
	padding:0;
}

@media not all and (max-width : 1024px) {

	.home_address {position:relative;}

	.home_address h2 {
		left:451px;
		position:absolute;
		top:11px;
	}

	.home_address_top {
		float:left;
		width:440px;
	}

	.addr_detail {
		float:right;
		position:relative;
		width:calc(100% - 440px);
	}

	.addr_detail dt.addr_detail_zip {
		clear:none;
		margin-left:6em;
	}

	.addr_detail dt.addr_detail_tel {margin-left:6em;}

}

@media (max-width : 1024px) {

	.home_address {margin-top:20px;}

	.home_address h2 {margin:15px 0 0;}

}

@media not all and (max-width : 410px) {

	.addr_detail_zip + dd {margin-right:10px;}

}

@media (max-width : 410px) {

	.addr_detail_zip + dd + dd {margin-left:3em;}

}

@media not all and (max-width : 370px) {

	.addr_detail dt.addr_detail_fax {
		clear:none;
		margin:0 1em 0 2em;
	}

}

/* 商品 */
.goods_box {
	background:url('/images/content_bg.png') repeat 0 0;
	border:1px solid #deb887;
	display:block;
	display:flow-root;
	margin:0;
	padding:14px;
}

.goods_box + h2 {margin-top:20px;}

.goods_box::after { /* flow-root無効 */
	clear:both;
	content:'';
	display:block;
}

.goods_msg, .goods_msg_2 {
	display:block;
	line-height:1.8;
	margin:0;
	padding:0;
}

.goods_msg_2 {margin-bottom:15px;}

.goods_title {
	font-weight:normal;
	margin:0;
	padding:0;
}

.goods_list {
	margin:0 auto;
	padding:0;
}

.goods_item {
	display:block;
	margin:0;
	padding:10px;
	text-align:center;
}

.goods_item > a {
	color:inherit;
	display:block;
	text-decoration:none;
}

.goods_item p {
	display:block;
	margin:0;
	padding:0;
	text-align:center;
}

.goods_img {
	height:auto;
	margin:0 auto 5px;
	max-width:100%;
}

.ura_menu {color:red;}

@media not all and (max-width : 700px) {

	.goods_list {
		display:-ms-grid;
		display:grid;
		-ms-grid-columns:(1fr)[3]; /* ie */
		grid-template-columns:repeat(3, 1fr);
	}

	.goods_item:nth-of-type(3n + 1) {-ms-grid-column:1; /* ie */}

	.goods_item:nth-of-type(3n + 2) {-ms-grid-column:2; /* ie */}

	.goods_item:nth-of-type(3n) {-ms-grid-column:3; /* ie */}

	.goods_item:nth-of-type(n + 4) {-ms-grid-row:2; /* ie */}

	.goods_item:nth-of-type(n + 7) {-ms-grid-row:3; /* ie */}

	.goods_item:nth-of-type(n + 10) {-ms-grid-row:4; /* ie */}

}

@media (max-width : 700px) {

	.goods_list {display:block;}

}

/* イベント */
.event_title {
	background:url('/images/title_01.png') 0 0 no-repeat;
	color:#fff;
	font-size:20px;
	font-weight:normal;
	line-height:30px;
	margin:0;
	padding:0;
	text-indent:1em;
}

.event_time {
	display:inline-block;
	margin:0 15px 0 0;
	padding:0;
	text-indent:0;
}

.event_box {
	background:url('/images/content_bg.png') repeat 0 0;
	border:1px solid #deb887;
	display:block;
	display:flow-root;
	margin:0;
	padding:14px;
}

.event_box::after { /* flow-root無効 */
	clear:both;
	content:'';
	display:block;
}

.event_list {
	display:block;
	margin:0 auto;
	padding:0;
}

.event_item {
	display:block;
	margin:0;
	padding:0;
	text-align:center;
}

.event_img {
	height:auto;
	margin:10px;
	vertical-align:bottom;
	max-width:calc(100% - 20px);
}

.event_msg {
	display:block;
	line-height:1.8;
	margin:0;
	padding:0;
}

.event_list + .event_msg  {margin:10px 0 0;}

@media not all and (max-width : 700px) {

	.event_list {
		display:flex;
		justify-content:center;
		flex-wrap:wrap;
	}

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

}

@media (max-width : 700px) {

	.event_list {display:block;}

}

/* チェーン店 */
.chain_list {
	display:block;
	margin:0;
	padding:0;
}

.chain_item {
	display:inline-block;
	margin-right:0;
	margin-bottom:0;
	padding:0;
	position:relative;
}

.chain_item::after {
/*	background-color:#fff;*/
	bottom:0;
	content:'';
	display:block;
	position:absolute;
	z-index:0;
}

.chain_item:nth-of-type(2n + 1) {margin-left:0;}

.chain_link {
	color:inherit;
	position:relative;
	text-decoration:none;
	z-index:1;
}

.chain_link:hover {color:inherit;}

.chain_name {
	display:block;
	font-size:1.2rem;
	font-weight:normal;
	margin:0;
	padding:0;
	text-indent:1em;
}

.chain_link:hover .chain_name {opacity:0.7;}

.chain_img {
	display:block;
	margin:0;
	padding:0;
	position:relative;
	max-width:100%;
	z-index:1;
}

.chain_link:hover .chain_img {opacity:0.7;}

@media not all and (max-width : 1024px) {

	.chain_item {width:31vw;}

	.chain_item::after {
		height:31vw;
		width:31vw;
	}

	.chain_item:nth-of-type(2n) {margin-left:4vw;}

	.chain_item:nth-of-type(n + 3) {margin-top:4vw;}

}

@media (max-width : 1024px) {

	.chain_item {width:40vw;}

	.chain_item::after {
		height:40vw;
		width:40vw;
	}

	.chain_item:nth-of-type(2n) {margin-left:4vw;}

	.chain_item:nth-of-type(n + 3) {margin-top:4vw;}

}

.chain_detail_img {
	display:block;
	height:auto;
	margin:0;
	max-width:100%;
}

.chain_map {
	border:none;
	display:block;
	margin:0;
	padding:0;
}

@media not all and (max-width : 1024px) {

	.chain_detail_img {
		float:left;
		margin:0 0 20px 0;
		width:32vw;
	}

	.chain_map_div {
		float:right;
		position:relative;
		width:32vw;
	}

	.chain_map_div::before {
		content:'';
		display:block;
		padding-top:32vw;
	}

	.chain_map {
		height:100%;
		left:0;
		position:absolute;
		top:0;
		width:100%;
	}

}

@media (max-width : 1024px) and (min-width : 700px) {

	.chain_detail_img {
		float:left;
		width:calc(50% - 10px);
	}

	.chain_map_div {
		float:right;
		position:relative;
		width:calc(50% - 10px);
	}

	.chain_map_div::before {
		content:'';
		display:block;
		padding-top:100%;
	}

	.chain_map {
		height:100%;
		left:0;
		position:absolute;
		top:0;
		width:100%;
	}

}

@media (max-width : 700px) {

	.chain_detail_img {width:100%;}

	.chain_map {
		margin-bottom:20px;
		height:67.5vw;
		width:100%;
	}

}

/* 会社概要 */
.about_table {
	border-collapse:collapse;
	margin:0;
}

.about_col_th {width:100px;}

.about_table th, .about_table td {
	border:1px solid #deb887;
	font-weight:normal;
	padding:9px;
}

.about_table th {background-color:#ecd9ac;}

.about_table td {background-color:#fff;}

.about_table td > * {
	display:block;
	margin:0;
	padding:0;
}

.about_img {
	display:block;
	margin:0 0 20px 0;
}

.about_map {
	border:none;
	display:block;
	margin:0;
	padding:0;
}

.about_note {
	color:red;
	font-size:14px;
	margin-top:5px;
}

@media not all and (max-width : 1024px) {

	.about_table {
		float:left;
		width:32vw;
	}

	.about_img {
		clear:left;
		float:left;
		margin:0 0 20px 0;
		width:32vw;
	}

	.about_map_div {
		float:right;
		position:relative;
		width:32vw;
	}

	.about_map_div::before {
		content:'';
		display:block;
		padding-top:calc(32vw * 451 / 680 + 404px); /* 写真の比率 + テーブルの高さ + 20px */
	}

	.about_map {
		height:100%;
		left:0;
		position:absolute;
		top:0;
		width:100%;
	}

}

@media (max-width : 1024px) and (min-width : 700px) {

	.about_table {
		float:left;
		width:calc(50% - 10px);
	}

	.about_img {
		clear:left;
		float:left;
		width:calc(50% - 10px);
	}

	.about_map_div {
		float:right;
		position:relative;
		width:calc(50% - 10px);
	}

	.about_map_div::before {
		content:'';
		display:block;
		padding-top:calc(75% + 409px); /* 写真の比率 + テーブルの高さ + 20px */
	}

	.about_map {
		height:100%;
		left:0;
		position:absolute;
		top:0;
		width:100%;
	}

}

@media (max-width : 700px) {

	.about_table {width:100%;}

	.about_img {width:100%;}

	.about_map {
		margin-bottom:20px;
		height:67.5vw;
		width:100%;
	}

}

/* サイトマップ */
.sitemap_list {
	display:block;
	margin:0 auto;
}

.sitemap_list .nav_item {line-height:2.2;}

.sitemap_list .nav_item > a {text-decoration:none;}

.sitemap_list .nav_item2 {line-height:2.2;}

.sitemap_list .nav_item2 > a {text-decoration:none;}

/* サイトポリシー */
.policy_title {
	font-size:16px;
	text-align:left;
	margin:0 0 10px;
	padding:0;
	text-indent:1em;
}

.policy_caution > dt {
	font-weight:bold;
	color:#777;
	margin:10px 0 0 18px;
	padding:0;
	text-indent:-18px;
}

.policy_caution > dd {
	margin:10px 0 0 0;
	padding:0;
	text-indent:1em;
}

.policy_privacy {
	padding:0;
	margin:0;
}

.policy_privacy > li {
	margin:10px 0 0 18px;
	display:block;
	text-indent:-18px;
}

.policy_caution > dt::before, .policy_privacy > li::before {
	content:url('/images/acc_policy.png');
	margin-right:2px;
	position:relative;
	top:2px;
}

/* お問い合わせ */
.form_list {
	margin:0;
	padding:0;
	width:100%;
}

.form_item {padding:0;}

.form_title, .form_detail {padding:10px;}

.form_title {background-color:#ecd9ac;}

.form_detail {background-color:#fff;}

.hissu::after {
	color:red;
	content:' ※';
}

.form_info_1 {
	font-size:14px;
	display:block;
	margin:0 0 10px;
	padding:0;
}

.form_info_1::before {
	content:url('../images/key.jpg');
	margin-right:5px;
	position:relative;
	top:5px;
}

.form_info_2 {
	font-size:14px;
	display:block;
	margin:10px 0 0;
	padding:0;
	text-align:center;
}

.form_btn {
	display:block;
	height:2rem;
	margin:10px auto;
	padding:0;
	min-width:150px;
}

.form_notice {
	color:red;
	display:block;
	font-size:14px;
	margin:5px 0;
	padding:0;
}

[name="contents0"], [name="contents2"], [name="contents3"] {width:95%;}

[name="contents1"] {
	margin-right:20px;
	width:80px;
}

[name="contents4"], [name="contents5"] {
	margin:0 10px;
	width:50px;
}

[name="contents4"]:first-of-type, [name="contents5"]:first-of-type {margin-left:0;}

[name="contents6"] {
	display:block;
	width:300px;
	max-width:95%;
}

[name="contents7"] {
	resize:vertical;
	width:95%;
}

@media not all and (max-width : 450px) {

	.form_list {
		border-collapse:collapse;
		display:table;
		table-layout:fixed;
	}

	.form_item {display:table-row;}

	.form_title, .form_detail {
		border:1px solid #deb887;
		display:table-cell;
	}

	.form_title {
		text-align:center;
		vertical-align:middle;
		width:90px;
	}

}

@media (max-width : 450px) {

	.form_list {
		border-top:1px solid #deb887;
		display:block;
	}

	.form_item {
		border-bottom:1px solid #deb887;
		border-left:1px solid #deb887;
		border-right:1px solid #deb887;
		display:block;
		margin:0;
	}

	.form_title, .form_detail {
		display:block;
		margin:0;
	}

	.form_title {
		border-bottom:1px solid #deb887;
		text-align:left;
	}

}

/* サイド */
.side {padding:0 0 20px;}

.side > * + * {
	display:block;
	margin:20px 0 0;
}

.side_nav_list {
	display:block;
	margin:0;
	padding:0;
}

.side_nav_item {
	display:block;
	margin:0;
	padding:10px;
}

.side_nav_item > a {
	color:inherit;
	font-size:16px;
}

.side_nav_item + .side_nav_item {border-top:1px solid #ccc;}

.side_bnr {
	display:block;
	margin:0;
	padding:0;
}

.side_bnr li {padding:0;}

.side_bnr li img {
	display:block;
	max-width:100%;
}

.side_title {
	font-size:20px;
	font-weight:normal;
	line-height:30px;
	margin:0;
	padding:0;
	text-indent:15px;
}

.side_box {
	border:1px solid #ccc;
	display:block;
	padding:5px;
}

.side_box p {
	margin:0;
	padding:0;
}

@media not all and (max-width : 1024px) {

	.side {
		display:block;
		float:right;
		margin:0 8vw 0 0;
		width:15vw;
		max-width:300px;
	}

	.side_nav_list {margin-bottom:20px;}

	.side_bnr li {
		background-color:#fff;
		display:block;
		margin:0 0 10px;
	}

	.side_bnr li a:hover {opacity:0.7;}

}

@media (max-width : 1024px) {

	.side {
		display:block;
		display:flow-root;
		margin:0 auto;
		width:84vw;
	}

	.side::after { /* flow-root 無効 */
		clear:both;
		content:'';
		display:block;
	}

	.side_bnr li {display:inline-block;}
}

@media only screen and (max-width : 1024px) and (min-width : 720px) {

	.side_bnr li {width:calc((84vw - 60px) / 3);}

	.side_bnr li:not(:nth-of-type(3n)) {margin:20px 20px 0 0;}

	.side_bnr li:nth-of-type(3n) {margin:20px 0 0;}

}

@media only screen and (max-width : 720px) and (min-width : 330px) {

	.side_bnr li {width:calc((84vw - 20px) / 2);}

	.side_bnr li:not(:nth-of-type(2n)) {margin:20px 20px 0 0;}

	.side_bnr li:nth-of-type(2n) {margin:20px 0 0;}

}

@media only screen and (max-width : 330px) {

	.side_bnr li {
		margin:20px 0 0;
		width:84vw;
	}

}
