@charset "utf-8";

/*
	Top CSS
--------------------------------------------------*/
#head_area{
	background-color:#000;
}
html {
	width:100%;
	overflow-x:hidden;
}
body {
	width:100%;
}
#head_area {
	position:absolute;
	top:0;
}
/*-------------------------
	Main contents COMMON
-------------------------*/
#wrap {
	min-width:1000px;
	overflow:hidden;
}
#mainarea {
	position:relative;
	padding-top:84px;
	padding-bottom:0;
	background-color:#000;
	color:#232323;
	font-size:14px;
	line-height:1.86;
	font-family:YakuHanJP, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
	body.technology_top #mainarea{
		padding-top:0;
	}
#mainarea h1.pagetitle {
	position:absolute;
	top:170px;
	left:50%;
	margin-left:-480px;
	line-height:30px;
	font-weight:normal;
	text-shadow:1px 1px 1px hsla(0,0%,0%,0.30);
	color:#ffffff;
	z-index:10;
}

#breadcrumb, #breadcrumb a {
	color:#fff;
}

.section {
	position:relative;
	width:100%;
	height:750px;
	background-color:#fff;
	overflow:hidden;
}
.section .inner {
	position:relative;
	width:960px;
	margin:0 auto;
	overflow:hidden;
	text-align:left;
}

.w-n01{
	letter-spacing: -.01em;
}
.w-n06{
	letter-spacing: -.06em;
}

/*-------------------------
	LOCAL NAVI
-------------------------*/
.local_navi {
	height:35px;
	width:100%;
	background-color:rgba(0,0,0,0.7);
	position:fixed;
	bottom:0;
	z-index:500;
}
.local_navi ul {
	width:960px;
	margin-right:auto;
	margin-left:auto;
	display: table;
}
.local_navi ul li {
	/* float:left; */
	display: table-cell;
	/* width:14.285%; */
	min-width: 90px;
	font-size:12px;
	line-height:35px;
	margin-right:0px;
}
.local_navi ul li a{
	display:inline-block;
	width:100%;
	background-color:rgba(0,0,0,0.2);
	color:#fff;
	text-decoration:none;
	text-align:center;
}
.local_navi ul li a:hover,
.local_navi ul li a.current{
	background-color:rgba(255,255,255,0.6);
	color:#333;
}

/*-------------------------
	CONTENTS
-------------------------*/
.inner{
	width: 960px;
	margin: 0 auto;
	padding: 30px 0 84px;
	text-align: left;
	overflow: hidden;
}
@media (max-width:480px) {
	.inner{
		width: 100%;
		margin: 0 auto;
		padding: 5% 4% 9%;
		text-align: left;
		overflow: hidden;
	}
}

/*-------------------------
	Main Visual
-------------------------*/
#mainvis {
	position:relative;
	height:640px;
	background-color: #fff;
}
.vis-outer{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height:640px;
}
.vis-inner{
	position: relative;
	width: 960px;
}
#vis1, #vis2{
	position: absolute;
	top: 0;
}
#vis1{
	width: 100%;
	height:640px;
	background-image: url(../img/main_vis01.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	color:#fff;
}
#vis1 .vis-inner{
	text-align: right;
}
#vis1 p{
	display: inline-block;
	font-size: 22px;
	line-height: 36px;
	font-weight: bold;
	text-align: left;
}
#vis2{
	width: 100%;
	height: 640px;
	background-color: #000;
	color: #fff;
}
	#vis2{
		display: none;
		z-index: 10;
	}
#vis2 .vis-inner{
	padding: 0;
	text-align: center;
	font-size: 16px;
	line-height: 2;
}
#vis2 .brand_logo{
	margin-bottom: 80px;
	font-size: 28px;
	font-weight: bold;
}
@media (max-width:480px) {
	#mainvis {
		height:600px;
	}
	#vis1, #vis2, .vis-outer{
		height: 600px;
	}
	.vis-inner{
		width: 100%;
	}
	#vis2 .vis-inner{
		padding: 0 4%;
		font-size: 13px;
	}
	#vis2 .brand_logo{
		margin-bottom: 40px;
		font-size: 20px;
	}
	#vis2 .brand_logo img{
		width: 80%;
		height: auto;
	}
}

/*-------------------------
	lead
-------------------------*/
#lead{
	position: relative;
	padding: 100px 0;
	color: #fff;
	text-align: center;
	overflow: hidden;
}
#lead-content{
	position: relative;
}
#lead-img{
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
}
#lead-img-inner{
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
	background: url(../img/bg.jpg) no-repeat center center /cover;
-webkit-transform:translateZ(0);-moz-transform:translateZ(0);-o-transform:translateZ(0);-ms-transform:translateZ(0);transform:translateZ(0);}
#lead p{
	font-size: 14px;
	line-height: 2;
}
#lead h2{
	margin-bottom: 20px;
	font-size: 38px;
	line-height: 1.5;
	font-weight: bold;
}
#lead h2 span{
	display: block;
	font-size: 24px;
	font-weight: normal;
}
#lead h3{
	margin-top: 40px;
	margin-bottom: 20px;
	font-size: 38px;
	line-height: 1.5;
	font-weight: bold;
}
#kouhou{
	position: relative;
	width: 800px;
	margin: 30px auto 80px;
	display:flex;
}
#kouhou li{
/*	width: 255px; */
	margin:0 10px;
}
#kouhou li img{
	width: 100%;
	height: auto;
}
#kouhou li:nth-child(1){
}
/*
#kouhou li:nth-child(3){
	position: absolute;
	top: 0;
	right: 0;
	width: 535px;
}
*/
#kouhou li a{
	display: block;
	background-color: #fff;
}
.lay_w #kouhou li a:hover img{
	opacity: .7;
}

/* MODAL (.modal) */
.modal{
	display: none;
}
.modal {
	position: fixed;
	height:auto;
	width:96%;
	max-width: 860px;
	min-height: 610px;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	text-align:left;
	padding: 40px 80px 20px;
	top:2.34375%!important;
	left: 4%;
	background-color: rgba(0,0,0,.9);
	z-index: 1100;
}
.modal dd + dt{
	margin-top: 24px;
}
.modal dl dt{
	margin-bottom: 14px;
	background-color: #f8b62d;
	color: #fff;
	font-size: 20px;
	line-height: 1.5;
	font-weight: bold;
	text-align: center;
}
	.modal#kouhou01 dt{ background-color: #f8b62d; }
	.modal#kouhou02 dt{ background-color: #00b4ed; }
	.modal#kouhou03 dt{ background-color: #b14602; }
.modal dl dd{
	font-size: 16px;
	line-height: 1.875;
}
.modal .notes{
	margin-top: 20px;
}
.close-fb{
	position: absolute;
	top: 0;
	right: 0;
	width: 40px;
	height: 40px;
	color: #fff;
	font-size: 36px;
	line-height: 40px;
	text-align: center;
	overflow: hidden;
	cursor: pointer;
}
#lean_overlay {
		position:fixed;
		z-index:100;
		top:0;
		right:0;
		height:100%;
		width:100%;
		background:none;
		display:none;
}
@media (max-width:480px) {
	#lead-content{
		padding: 0 4%;
	}
	#lead p{
		font-size: 12px;
		line-height: 1.58;
	}
	#lead h2{
		margin-bottom: 10px;
		font-size: 21px;
		line-height: 1.33;
	}
	#lead h2 span{
		margin-bottom: 5px;
		font-size: 15px;
	}
	#lead h3{
		margin-top: 40px;
		margin-bottom: 20px;
		font-size: 21px;
		line-height: 1.5;
		font-weight: bold;
	}
	#kouhou{
		width: 100%;
		margin: 30px auto 40px;
	}
	#kouhou li{
		float: left;
		width: 49%;
	}
	#kouhou li:nth-child(1){
		margin: 0 2% 2% 0;
	}
	#kouhou li:nth-child(3){
		position: static;
		top: inherit;
		right: inherit;
		clear: left;
		float: none;
		width: 100%;
	}
	#kouhou li a{
		display: block;
		background-color: #fff;
	}
	
	/* MODAL (.modal) */
	.modal {
		width:92%;
		height: 96VH;
		max-width: inherit;
		min-height: inherit;
		padding: 12% 8%;
		top: 2%!important;
		left: 4%;
	}
	.modal dd + dt{
		margin-top: 15px;
	}
	.modal dl dt{
		margin-bottom: 10px;
		font-size: 14px;
		line-height: 1.5;
	}
	.modal dl dd{
		font-size: 12px;
		line-height: 1.25;
	}
	.modal .notes{
		margin-top: 15px;
		line-height: 1.25;
	}
}

#content-menu{
	width: 884px;
	margin: 0 auto;
	overflow: hidden;
}
#content-menu li{
	float: left;
	width: 270px;
}
#content-menu li:nth-child(n+2){
	margin-left: 35px;
}
#content-menu li a{
	display: block;
	width: 100%;
	padding-bottom: 90px;
	background-image: url(../img/lead_arrow.png);
	background-repeat: no-repeat;
	background-position: center bottom 15px;
	border: 2px solid #fff;
	color: #fff;
	font-size: 22px;
	line-height: 36px;
	font-weight: bold;
	text-decoration: none;
}
#content-menu li a:hover{
	background-color: rgba(255,255,255,.4);
	
}
#content-menu li a span.large{
	display: inline-block;
	width: 100%;
	margin-bottom: 10px;
	border-bottom: 2px solid #fff;
	font-size: 32px;
	line-height: 60px;
}
@media (max-width:480px) {
	#content-menu{
		width: 100%;
	}
	#content-menu li{
		float: none;
		width: 100%;
	}
	#content-menu li:nth-child(n+2){
		margin-left: 0;
		margin-top: 4%;
	}
	#content-menu li a{
		width: 100%;
		padding-bottom: 30px;
		background-image: url(../img/lead_arrow.png);
		background-repeat: no-repeat;
		background-position: center bottom 8px;
		background-size: 26px 16px;
		border: 1px solid #fff;
		font-size: 12px;
		line-height: 1.5;
	}
	#content-menu li a br{
		display: none;
	}
	#content-menu li a:hover{
		background-color: rgba(255,255,255,.4);
	}
	#content-menu li a span.large{
		display: inline-block;
		width: 100%;
		margin-bottom: 10px;
		border-bottom: 1px solid #fff;
		font-size: 18px;
		line-height: 30px;
	}
	#content-menu li a span.small{
		display: block;
		padding: 0 10%;
	}
}

/*-------------------------
	Safety
-------------------------*/
#safety{
	background-color: #f0d9cd;
}
#safety .inner{
	width: 1000px;
	margin: 0 auto;
}
#safety h2{
	width: 100%;
	height: 700px;
	text-align: center;
	background: url(../img/safety_vis.jpg) no-repeat center center /cover;
}
#safety h3, #safety h4{
	color: #b54304;
	font-weight: bold;
}
#safety h3{
	letter-spacing: -.03em;
}

#safety-nav{
	width: 100%;
	background-color: #e09a74;
}
#safety-nav ul{
	width: 960px;
	margin: 0 auto;
	overflow: hidden;
}
#safety-nav ul li{
	float: left;
	width: 33.333%;
	background-color: #fff;
}
#safety-nav ul li a{
	position: relative;
	display: block;
	width: 100%;
	background-color: #e09a74;
	color: #fff;
	font-size: 24px;
	line-height: 50px;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
}
#safety-nav ul li a:hover{
	opacity: .7;
}
#safety-nav ul li a:after{
	content: "";
	position: absolute;
	right: .5em;
	top: 50%;
	width: 13px;
	height: 20px;
	margin-top: -10px;
	background: url(../img/arrow_r.png) no-repeat center center /cover;
}
#safety-nav ul li a.active{
	background-color: #b54304;
}
#safety-nav ul li a.active:hover{
	opacity: inherit;
	cursor: default;
}
#safety-nav ul li a.active:after{
	content: "";
}
.safety-wrap{
	width: 3000px;
	overflow: hidden;
}
.safety-col{
	float: left;
	width: 1000px;
	padding: 0 20px;
	box-sizing: border-box;
}
.col p + div{
	margin-top: 20px;
}
@media (max-width:480px) {
	#safety .inner{
		width: 100%;
		padding: 5% 0 9%;
	}
	#safety-nav ul{
		width: 92%;
	}
	#safety-nav ul li a{
		font-size: 17px;
	}
	#safety-nav ul li a:after{
		width: 7px;
		height: 12px;
		margin-top: -6px;
	}
	.safety-wrap{
		width: 300VW;
		overflow: hidden;
	}
	.safety-col{
		float: left;
		width: 100VW;
		margin-right: 0;
		padding: 0 4VW;
	}
	.col p + div{
		margin-top: 20px;
	}
}
#safety h2, #design h2, #support h2{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 700px;
	text-align: center;
}
#safety h3, #design h3, #support h3{
	margin-bottom: 38px;
	background-color: #fff;
	font-size: 28px;
	line-height: 44px;
	text-align: center;
	font-weight: bold;
}
#safety h4, #design h4, #support h4{
	margin-bottom: 15px;
	font-size: 22px;
	line-height: 1.33;
	font-weight: bold;
}
@media (max-width:480px) {
	#safety h2, #design h2, #support h2{
		height: 600px;
	}
	#safety h2 img, #design h2 img, #support h2 img{
		height: 100px;
		width: auto;
	}
	#safety h3, #design h3, #support h3{
		margin-bottom: 4%;
		font-size: 19px;
		line-height: 1.316;
		padding: .25em .5em;
	}
	#safety h4, #design h4, #support h4{
		margin-bottom: 3%;
		font-size: 20px;
		line-height: 1.25;
	}
}

/*-------------------------
	Design
-------------------------*/
#design{
	background-color: #d8ece7;
}
#design h2{
	background: url(../img/design_vis.jpg) no-repeat center center /cover;
}
#design h3, #design h4{
	color: #179277;
	font-weight: bold;
}

/*-------------------------
	Support
-------------------------*/
#support{
	background-color: #cceaef;
}
#support h2{
	width: 100%;
	height: 700px;
	text-align: center;
	background: url(../img/support_vis.jpg) no-repeat center center /cover;
}
#support h3, #support h4{
	color: #0295b0;
	font-weight: bold;
}
#support h3{
	letter-spacing: -.03em;
}


.col2{
	overflow: hidden;
}
.col2 .col{
	float: left;
	width: 460px;
}
.col2 .col:first-of-type{
	margin-right: 40px;
}
@media (max-width:480px) {
	.col2 .col{
		float: none;
		width: 100%;
	}
	.col2 .col:first-of-type{
		margin-right: 0;
		margin-bottom: 8.7%;
	}
}

.btn{
	margin: 32px auto 0;
	text-align: center;
}
.btn a{
	position: relative;
	display: inline-block;
	padding: 0 2em;
	color: #fff;
	font-size: 24px;
	line-height: 40px;
	text-align: center;
	font-weight: bold;
	text-decoration: none;
}
.btn a:after{
	content: "";
	position: absolute;
	right: .5em;
	top: 50%;
	width: 13px;
	height: 20px;
	margin-top: -10px;
	background: url(../img/arrow_r.png) no-repeat center center /cover;
}
#safety .btn a{ background-color: #b54304; }
#design .btn a{ background-color: #57bfa8; }
#support .btn a{ background-color: #0295b0; }
@media (max-width:480px) {
	.btn a{
		width: 87%;
		padding: .25em 1em;
		font-size: 19px;
		line-height: 1.368;
	}
	.btn a:after{
		right: .25em;
		width: 10px;
		height: 16px;
		margin-top: -8px;
	}
}

@media (max-width:480px) {
	* {
		box-sizing:border-box;
	}
	img {
		width:100%;
		height:auto;
		vertical-align:top;
	}
	#fontplus-trial-banner {
		width:auto;
		height:auto;
	}
	#wrap {
		position:relative;
		width:320px;
		min-width:100%;
		max-width:100%;
		overflow:hidden;
	}
	#head_area {
		position:absolute;
		top:0;
	}
	/*-------------------------
		Local Navigation
	-------------------------*/
	.local_navi {
		display:none;
	}
	/*-------------------------
		Main contents COMMON
	-------------------------*/
	#wrap {
		min-width:100%;
		overflow:hidden;
	}
	#mainarea {
		position:relative;
		padding:40px 0 0;
		background-color: #fff;
		color:#6e6e6e;
		font-size:12px;
		line-height:1.67;
		font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	}
	
	
	/*-------------------------
		CONTENTS
	-------------------------*/
	.contents {
		width:100%;
		height:auto;
		display:inherit;
		margin-left:0;
	}
	.content {
		width:100%;
		display:block;
		padding-top:10%;
		padding-bottom:10%;
	}
	.odd {
		padding-left:0;
	}
	.even {
		padding-right:0;
	}
	.cmi {
		display:none;
	}
	.cl, .cr {
		padding-left:0;
		padding-right:0;
		width:80%;
		margin-right:auto;
		margin-left:auto;
	}
}

/*add */

.local_navilist h3{
	font-size:14px;
}

#footer_area img{
	min-width:initial;
	min-width:auto;
}
.mt10{ margin-top:10px; }
.mt18{ margin-top:14px; }
.mt20{ margin-top:20px; }
.mt30{ margin-top:30px; }
.mt40{ margin-top:40px; }
.mt50{ margin-top:50px; }
.pt20{ padding-top:20px; }

.fblock:after { visibility: hidden; display: block; font-size: 0; content: " "; clear: both; height: 0; }
* html .fblock { zoom: 1; } /* IE6 */
*:first-child+html .fblock { zoom: 1; } /* IE7 */


.contents-wrap{
	width:100%;
	padding:50px 0 30px;
	background-color:#fff;
}
.contents-wrap .content-section{
	width:930px;
	margin:0 auto 70px;
	padding:0;
	text-align:left;
	font-size:14px;
	color:#000000;
	overflow:hidden;
}
	.contents-wrap .content-section.sec_3b2{
		width:600px;
	}
.contents-wrap h2{
	margin-bottom:20px;
	padding-left:15px;
	border-left:3px solid #000;
	color:#000000;
	font-size:20px;
	font-weight:bold;
}
.contents-wrap h3{
	font-size:14px;
	line-height:1.4;
	font-weight:bold;
	margin-bottom:5px;
}

.contents-wrap p{
	text-align:justify;
}
.contents-wrap p.notes{
	margin-top:0.5em;
	font-size:0.85em;
}

/* < 480px */
@media (max-width:480px) {
	body.pages #modeltop{
		height:auto;
		padding:0;
	}
	body.pages #modeltop .inner{
		width:100%;
		padding:0;
	}
	body.pages #modeltop .section_head h1{
		display:block;
		margin-bottom:20px;
		background-color:#fff;
		overflow:hidden;
	}
	body.pages #modeltop .section_head h1 .category{
		float: inherit;
		display: block;
		padding:0 5px;
		color:#fff;
		font-size:12px;
		line-height:24px;
	}
	body.pages #modeltop .section_head h1 .pagetitle{
		float: inherit;
		display: block;
		margin-top: 10px;
		padding: 0;
		color:#466a9a;
		font-size:24px;
		line-height:1.2;
	}
		body.pages.cat-safety #modeltop .section_head h1{ border: none; }
		body.pages.cat-safety #modeltop .section_head h1 .category{ background-color:#466a9a; }
		body.pages.cat-safety #modeltop .section_head h1 .pagetitle { color:#466a9a; }
		body.pages.cat-amenity #modeltop .section_head h1 { border: none; }
		body.pages.cat-amenity #modeltop .section_head h1 .category{ background-color:#4f716f; }
		body.pages.cat-amenity #modeltop .section_head h1 .pagetitle { color:#4f716f; }
		body.pages.cat-quality #modeltop .section_head h1 { border: none; }
		body.pages.cat-quality #modeltop .section_head h1 .category{ background-color:#836f50; }
		body.pages.cat-quality #modeltop .section_head h1 .pagetitle { color:#836f50; }
	body.pages #modeltop .section_head p.lead{
		padding-bottom:0;
		color:#000;
		font-size:18px;
		line-height:1.5;
		font-weight:normal;
	}
		body.pages #modeltop .section_head p.lead span{ display: inline; }
	body.pages #modeltop .visal_img{
		margin-top: 0;
	}

	.contents-wrap{
		width:100%;
		padding:3.125%;
		background-color:#fff;
	}
	.contents-wrap .content-section{
		width:100%;
		margin:0 auto 10%;
/*
		padding:0;
		text-align:left;
		font-size:14px;
		color:#000000;
		overflow:hidden;
*/
	}
	#mainarea .content-section:last-of-type{
		margin:0;
	}
		.contents-wrap .content-section.sec_3b2{
			width:600px;
		}
	.contents-wrap h2{
		margin-bottom:3.125%;
		padding-left:3.125%;
		border-left:3px solid #000;
		color:#000000;
		font-size:18px;
		font-weight:bold;
	}
	.contents-wrap h2 br{
		display: none;
		word-spacing: -0.40em;
	}
	.contents-wrap h3{
		font-size:13px;
		line-height:1.4;
		font-weight:bold;
		margin-bottom:5px;
	}

	.contents-wrap p{
		text-align:justify;
	}
	.contents-wrap p.notes{
		margin-top:0.5em;
		font-size:0.85em;
	}
}


/* カラム */
.col_2b1l, .col_2b1r {
	float:left;
	width:450px;
}
.col_2b1c{
	width: 450px;
	margin: 0 auto;
}
.col_3b2l, .col_3b2r{
	float:left;
	width:600px;
}
.col_3b2c{
	width:600px;
	margin-left: auto;
	margin-right: auto;
}
.col_3b1l, .col_3b1c, .col_3b1r{
	float:left;
	width:300px;
}
.col_2b1l, .col_3b2l,
.contents-wrap .col_3b1l,
.contents-wrap .col_3b1c{
	margin-right: 30px;
}
.col_4b1l, .col_4b1r {
	float:left;
	width:210px;
}

.fblock_t{
	display: table;
	table-layout: fixed;
}
.fblock_t .col_2b1l, .fblock_t .col_2b1r {
	float:none;
	display: table-cell;
	width:450px;
	vertical-align: bottom;
}
	.fblock_t .col_2b1l {
		padding-right: 30px;
	}
.fblock_t .col_3b2l, .fblock_t .col_3b2r{
	float:none;
	display: table-cell;
	width:600px;
	vertical-align: bottom;
}
	.fblock_t .col_3b2l{
		width: 640px;
		padding-right: 40px;
	}

.fblock_t .col_3b1l, .fblock_t .col_3b1c, .fblock_t .col_3b1r{
	float:none;
	display: table-cell;
	width:300px;
	vertical-align: bottom;
}
.fblock_t .col_3b1l, .fblock_t .col_3b1c{
	width: 300px;
	padding-right: 30px;
}
.fblock_t .col_2b1l,
.fblock_t .col_3b2l,
.fblock_t .col_3b1l,
.fblock_t .col_3b1c{
	margin-right: 0;
}

/* カラム < 480px */
@media (max-width:480px) {
	.col_2b1l, .col_2b1r, .col_2b1c,
	.col_3b2l, .col_3b2r, .col_3b2c, .col_3b1l, .col_3b1c, .col_3b1r	{
		float: none;
		width:100%;
		margin: 0 0 20px;
	}
	.fblock .col_2b1l:last-child,
	.fblock .col_2b1r:last-child,
	.fblock .col_2b1c:last-child,
	.fblock .col_3b2l:last-child,
	.fblock .col_3b2r:last-child,
	.fblock .col_3b2c:last-child,
	.fblock .col_3b1l:last-child,
	.fblock .col_3b1c:last-child,
	.fblock .col_3b1r:last-child	{ margin-bottom: 0; }

	.col_2b1l, .col_3b2l,
	.contents-wrap .col_3b1l,
	.contents-wrap .col_3b1c{
		margin-right: 0;
	}
	.col_4b1l, .col_4b1r {
		float:left;
		width:210px;
	}

	.fblock_t{
		display: inherit;
		table-layout: inherit;
	}
	.fblock_t .col_2b1l, .fblock_t .col_2b1r,
	.fblock_t .col_3b2l, .fblock_t .col_3b2r,
	.fblock_t .col_3b1l, .fblock_t .col_3b1c, .fblock_t .col_3b1r{
		float: inherit;
		display: inherit;
		width:100%;
		padding: 0;
		vertical-align: inherit;
	}
}


/* コラム */
.column{
	margin-top:15px;
}
.column_title{
	font-weight:bold;
}
	body.cat-safety h3.column_title { color:#003a69; }
	body.cat-amenity h3.column_title{ color:#005b57; }
	body.cat-quality h3.column_title{ color:#835300; }
.column_box{
	overflow:hidden;
	padding:19px;
	background-color:#e2f1f2;
	border:1px solid #9fa0a0;
}
	body.cat-safety .column_box { background-color:#e2f1f2; border:1px solid #9fa0a0; }
	body.cat-amenity .column_box{ background-color:#e2f1f2; border:1px solid #9fa0a0; }
	body.cat-quality .column_box{ background-color:#eeeee7; border:1px solid #999; }
.column_box .col_2b1l, .column_box .col_2b1r{
	float: left;
	width: 430px;
}
	.column_box .col_2b1l{ margin-right: 30px; }

.column_box h4{
	margin-bottom:10px;
	padding-bottom:5px;
	border-bottom:1px solid #000;
	font-weight:bold;
}
.column_box h5{
	font-weight: bold;
}
	body.cat-safety  .column_box h5{ color: #003a69; }
	body.cat-amenity .column_box h5{ color: #005b57; }
	body.cat-quality .column_box h5{ color: #4b716f; }

/* コラム < 480px */
@media (max-width:480px) {
	.column_box{
		overflow:hidden;
		padding:5%;
		background-color:#e2f1f2;
		border:1px solid #9fa0a0;
	}
	.column_box .col_2b1l, .column_box .col_2b1r{
		float: inherit;
		width: 100%;
		margin: 15px 0 0;
	}
}



/* TABLE */
.contents-wrap table{
	border-collapse:collapse;
	width:100%;
}
.contents-wrap table th, .contents-wrap table td{
	padding:0.5em;
	border:1px solid #000;
	text-align:center;
}
.contents-wrap table td.bg_gray{
	background-color: #e8e8e8;
}
@media (max-width:480px) {
	.contents-wrap table{
		font-size:12px;
	}
	.contents-wrap table th, .contents-wrap table td{
		padding:0.25em 0.2em;
	}
}


/* 図表 */
.fig_box{
	box-sizing:border-box;
	padding:15px 15px;
	background-color:#dcdddd;
}
.fig_box h3{
	margin-bottom:5px;
	line-height:1.4;
}
.figure_box{
	padding:20px;
	background-color:#eee;
	font-size:12px;
	overflow:hidden;
}
@media (max-width:480px) {
	.fig_box{
		box-sizing:border-box;
		padding:3.333%;
		background-color:#dcdddd;
	}
}

.caption{
	margin-top:5px;
	font-size:12px;
	line-height:1.4;
}
sup{font-size: 75%;display: inline-block;transform: translateY(-.25em);color:#222;font-weight: normal;}
span.caption{
	display:inline-block;
 padding-left: 2em;
 text-indent: -2em;
}

.img_center{ text-align:center; }
.img_right { float:right; margin-left:15px; }
.txt_small { font-size: 0.85em; font-weight:normal; }
.contents-wrap .txt_r { text-align: right; }

a.lnkbtn{
	display:inline-block;
	margin:20px auto 0;
	padding: 5px 20px;
	background-color:#444;
	border:1px solid #797979;
	color:#b4b4b4;
	text-align:center;
	line-height:25px;
	font-weight:bold;
	text-decoration:none;
}
a.lnkbtn:hover{
	color:#b4b4b4;
	opacity: 0.7;
}
.lnkbtn span{
	font-weight:normal;
}
@media (max-width:480px) {
	.img_right {
		float: inherit;
		margin-left:0;
		margin-bottom: 3%;
	}

	a.lnkbtn{
		width:100%;
		padding: 15px 0px;
		font-size:12px;
		line-height:15px;
	}
}



a.menu_btn{
	display:inline-block;
	width:360px;
	margin-top:30px;
	background-color:#444;
	border:1px solid #797979;
	color:#b4b4b4;
	text-align:center;
	line-height:50px;
	font-weight:bold;
	text-decoration:none;
}
a.menu_btn:hover{
	color:#b4b4b4;
	opacity: 0.7;
}
.menu_btn span{
	font-weight:normal;
}

