@charset "utf-8";

/* ------------------------------------------------------------------------- *
 *	Print
/* ------------------------------------------------------------------------- */
@page { size: A4 portrait;}
@media print{
	html,
	body,
	header,
	footer{
		width: 1400px !important;
	}
	body.home #header{
		height:370mm !important;
	}
	body{
		height:auto !important;
	}
	body.home #nav-header,
	#pagetop{
		display:none !important;
	}
}

/* ------ All ------ */
.logo a,
.logo img{
	opacity: 1 !important;
}
i{
	margin-right:0.8em;
}
.btn_min,
.btn_big,
.btn_prd{
	-moz-transition: opacity 0.5s ease;
	-ms-transition: opacity 0.5s ease;
	-webkit-transition: opacity 0.5s ease;
	transition: opacity 0.5s ease;
}
.btn_min:hover,
.btn_big:hover,
.btn_prd:hover{
	opacity:0.8;
}
.nolink{
	cursor:default;
}
.vega{
	-moz-transition: none !important;
	-ms-transition: none !important;
	-webkit-transition: none !important;
	transition: none !important;
}

/* user regist data */
.udata p{
	line-height:1.5em;
	margin-bottom:1.8em;
}
.udata hr{
	display:block;
	border-top:none;
	border-left:none;
	border-right:none;
	border-bottom:1px solid #b3b3b3;
	margin-bottom:1.07em;
}
.udata ul{
	list-style-position: outside;
	margin-bottom: 1em;
	padding-left:1.3em;
}
.udata ul li{
	list-style-type: inherit;
	margin-bottom: 0.3em;
}
.udata ul li:last-child{
	margin-bottom: 0;
}
.udata ol{
	list-style-position: outside;
	margin-bottom: 1em;
	padding-left:1.3em;
}
.udata ol li{
	list-style-type: inherit;
	margin-bottom: 0.3em;
}
.udata ol li:last-child{
	margin-bottom: 0;
}
.udata span{
	display:inline-block;
	vertical-align:middle;
	line-height:1.5em;
}
@media print,screen and (min-width: 641px) {
	#tinymce h3,
	.udata h3{
		font-size:1.14em;
		color:#d90000;
		transform: rotate(0.001deg);
		line-height:1.3em;
		margin-bottom:0.94em;
		letter-spacing:1px;
		display:inline-block;
		vertical-align:middle;
		font-weight:bold;
	}
}
/* Chrome */
@media screen and (-webkit-min-device-pixel-ratio:0) and (min-width: 641px){
	#tinymce h3,
	.udata h3{
		transform: none;
		-webkit-text-stroke: 0.2pxrgba(217,0,0,0.5);
	}
}
@media only screen and (max-width: 640px) {
	#tinymce h3,
	.udata h3{
		font-size:3.75vw;
		color:#d90000;
		transform: rotate(0.001deg);
		line-height:1.3em;
		margin-bottom:0.625em;
		letter-spacing:1px;
		display:inline-block;
		vertical-align:middle;
		font-weight:bold;
	}
}
/* Chrome */
@media screen and (-webkit-min-device-pixel-ratio:0) and (max-width: 640px) {
	#tinymce h3,
	.udata h3{
		transform: none;
		-webkit-text-stroke: 0.2pxrgba(217,0,0,0.5);
	}
}
/* ------ Header ------ */
header{
	position:relative;
	background-color:#bcdbfd;
}
header .header{
	background-color:#fff;
}

/* ------------------------------------------------------------------------- *
 *	PC : 641px < Window Size
/* ------------------------------------------------------------------------- */
@media print,screen and (min-width: 641px) {
	/* ------ Page Top ------ */
	#pagetop{
		display:none;
		bottom: 5%;
		right:2em;
		position: fixed;
		z-index:9999;
	}
	#pagetop a{
		background-color:rgba(217,0,0,0.8);
		display:block;
		height:50px;
		width:50px;
		text-align:center;
		line-height:50px;
		-moz-border-radius: 10px;
		-webkit-border-radius: 10px;
		border-radius: 10px;
	}
	#pagetop a i{
		font-size:35px;
		color:#ffffff;
		vertical-align: middle;
		padding-bottom:5px;
		margin: 0;
		display:inline-block;
		height: 1em;
		line-height:1em;
	}

	/* ------ All ------ */
	.wp-pagenavi {
		float: none;
		text-align: center;
		margin-top:60px;
		display:flex;
		-js-display:flex;
		display:-webkit-flex;
		-webkit-justify-content: center;
		justify-content: center;
		flex-flow: row nowrap;
		-webkit-flex-flow: row nowrap;
		align-items: center;
		-webkit-align-items: center;
	}
	.wp-pagenavi a,
	.wp-pagenavi span {
		background-color:#fff;
		color: #666666;
		display: block;
		margin: 0 0.313em;
		height:1.786em;
		min-width:1.786em;
		box-sizing:border-box;
		-webkit-box-sizing:border-box;
		line-height:1.8em;
		text-align:center;
		opacity:1;
		-moz-transition: all 0.5s ease;
		-ms-transition: all 0.5s ease;
		-webkit-transition: all 0.5s ease;
		transition: all 0.5s ease;
		padding:0 0.2em;
		font-weight:normal;
		border:none;
		font-size: 16px;
	}
	.wp-pagenavi a.previouspostslink,
	.wp-pagenavi a.nextpostslink{
		color: #fff;
		background-color:#d90000;
		border:none;
		font-weight:normal;
	}
	.wp-pagenavi a.previouspostslink i,
	.wp-pagenavi a.nextpostslink i{
		margin:0 auto;
	}
	.wp-pagenavi span.current {color: #fff;background-color:#666666;border:none;font-weight:normal;}
	.wp-pagenavi a:not(.previouspostslink):not(.nextpostslink):hover,
	.wp-pagenavi a:not(.previouspostslink):not(.nextpostslink):link:hover,
	.wp-pagenavi a:visited:hover,
	.wp-pagenavi a:active{color: #fff;background-color:#666666;border:none;font-weight:normal;}

	.wp-pagenavi a.previouspostslink:hover,
	.wp-pagenavi a.nextpostslink:hover{opacity:0.6;}
	.wp-pagenavi .pages{display:none;}
	nav.pagination{background:none;}

	/* button style*/
	.btn_min{
		font-size:1.14em;
		color:#fff !important;
		background: #d90000;
		-moz-border-radius: 0.5em;
		-webkit-border-radius: 0.5em;
		border-radius: 0.5em;
		padding: 0.5em 0.625em 0.375em;
		position:relative;
		text-decoration: none !important;
		text-align:center;
		line-height:1em;
		user-select: none;
		-moz-user-select: none;
		-webkit-user-select: none;
		-ms-user-select: none;
		border:none;
		cursor:pointer;
		width:7.5em;
		margin:0 auto;
		display:flex;
		-js-display:flex;
		display:-webkit-flex;
		-webkit-justify-content: center;
		justify-content: center;
		flex-flow: row nowrap;
		-webkit-flex-flow: row nowrap;
		align-items: center;
		-webkit-align-items: center;
		box-sizing:border-box;
		-webkit-box-sizing:border-box;
	}
	.btn_min:before{
		content:"\f138";
		font-family: "FontAwesome";
		font-size:1em;
		color:#fff;
		margin-right:0.375em;
		height: 1em;
		line-height: 0.9em;
	}

	.btn_big{
		font-size:1.143em;
		color:#fff !important;
		background: #d90000;
		-moz-border-radius: 0.5em;
		-webkit-border-radius: 0.5em;
		border-radius: 0.5em;
		padding: 0.863em 0.625em;
		position:relative;
		text-decoration: none !important;
		text-align:center;
		line-height:1.4em;
		user-select: none;
		-moz-user-select: none;
		-webkit-user-select: none;
		-ms-user-select: none;
		border:none;
		cursor:pointer;
		max-width:17.5em;
		margin:0 auto;
		display:flex;
		-js-display:flex;
		display:-webkit-flex;
		-webkit-justify-content: center;
		justify-content: center;
		flex-flow: row nowrap;
		-webkit-flex-flow: row nowrap;
		align-items: center;
		-webkit-align-items: center;
		box-sizing:border-box;
		-webkit-box-sizing:border-box;
	}
	.btn_big:before{
		content:"\f138";
		font-family: "FontAwesome";
		font-size:1em;
		color:#fff;
		margin-right:0.375em;
		height: 1.1em;
		line-height:1em;
	}
	.btn_big.mail:before{
		content:"\f0e0";
		font-size: 0.9em;
		margin-right: 0.5em;
		line-height: 0.9em;
		height: 1.1em;
	}
	.btn_big.user:before{
		content:"\f007";
		font-size: 0.9em;
		margin-right: 0.5em;
		line-height: 0.9em;
		height: 1.1em;
	}

	.btn_prd{
		font-size:1.14em;
		color:#fff !important;
		background: #d90000;
		-moz-border-radius: 0.5em;
		-webkit-border-radius: 0.5em;
		border-radius: 0.5em;
		padding: 0.5em 0.625em 0.375em;
		position:relative;
		text-decoration: none !important;
		text-align:center;
		line-height:1em;
		user-select: none;
		-moz-user-select: none;
		-webkit-user-select: none;
		-ms-user-select: none;
		border:none;
		cursor:pointer;
		width:7.5em;
		margin:0 auto;
		display:flex;
		-js-display:flex;
		display:-webkit-flex;
		-webkit-justify-content: center;
		justify-content: center;
		flex-flow: row nowrap;
		-webkit-flex-flow: row nowrap;
		align-items: center;
		-webkit-align-items: center;
		box-sizing:border-box;
		-webkit-box-sizing:border-box;
	}
	.btn_prd span{
	}
	.btn_prd i{
		font-size:1em;
	}

	/* link style */
	.cat-item a,
	.link_r{
		text-indent: 0.9em;
		margin-left: 1.4em;
		display: inline-block;
	}
	.cat-item a:before,
	.link_r:before{
		content:"\f138";
		font-family: "FontAwesome";
		font-size:1em;
		margin-left: -2.3em;
		margin-right:0.5em;
		line-height: 1.1em;
		color:#d90000;
	}
	.link_wr{
		text-indent: 0.9em;
		margin-left: 1.4em;
		display: inline-block;
		color:#fff !important;
	}
	.link_wr:before{
		content:"\f138";
		font-family: "FontAwesome";
		font-size:1em;
		margin-left: -2.3em;
		margin-right:0.5em;
		line-height: 1.1em;
		color:#fff;
	}
	.link_o{
		text-indent: 0.9em;
		margin-left: 1.4em;
		display: inline-block;
	}
	.link_o:before{
		content:"\f08e";
		font-family: "FontAwesome";
		font-size:1em;
		margin-left: -2.3em;
		margin-right:0.5em;
		line-height: 1.1em;
		color:#d90000;
	}

	/* title style */
	.ttl_b{
		font-size:1em;
		color:#d90000;
		transform: rotate(0.001deg);
		line-height:1.3em;
		margin-bottom:1.1em;
		letter-spacing:1px;
		display:inline-block;
		vertical-align:middle;
		font-weight:bold;
	}
	.ttl_b a{
		color:#d90000 !important;
		display:inline-block;
		vertical-align:middle;
	}
	.ttl_bb{
		font-size:1em;
		color:#000;
		transform: rotate(0.001deg);
		line-height:1.3em;
		margin-bottom:1.1em;
		letter-spacing:1px;
		display:inline-block;
		vertical-align:middle;
		font-weight:bold;
	}
	.ttl_bb a{
		color:#000 !important;
		display:inline-block;
		vertical-align:middle;
	}
	.ttl_wb{
		font-size:1em;
		color:#fff;
		transform: rotate(0.001deg);
		line-height:1.3em;
		margin-bottom:1.1em;
		letter-spacing:1px;
		display:inline-block;
		vertical-align:middle;
		font-weight:bold;
	}
	.ttl_wb a{
		color:#fff !important;
		display:inline-block;
		vertical-align:middle;
	}

	.ttl_bline{
		width:100%;
		border-bottom:3px solid #b3b3b3;
	}
	.ttl_bline .lbl{
		font-size:2.143em;
		line-height:1.3em;
		display:inline-block;
		vertical-align:top;
		padding:0 0.667em 0.1em 0;
		border-bottom:3px solid #d90000;
		margin-bottom:-3px;
		color:#d90000;
	}

	#page-ttl{
		background-color: rgba(0,0,0,0.2);
		background-repeat: no-repeat;
		background-position: center center;
		background-size: cover;
		width:100%;
		height:360px;
		position:relative;
		z-index:0;
	}
	#page-ttl:before{
		content:"";
		background-image: url(../img/overlays/10.png);
		background-color: rgba(0,0,0,0.2);
		background-repeat: repeat;
		background-position: 0 0;
		background-size: auto;
		display:block;
		width:100%;
		height:100%;
		position:absolute;
		z-index:1;
		top:0;
		left:0;
	}
	#page-ttl h2{
		width:100%;
		height:100%;
		display:flex;
		-js-display:flex;
		display:-webkit-flex;
		-webkit-justify-content: center;
		justify-content: center;
		flex-flow: column wrap;
		-webkit-flex-flow: column wrap;
		align-items: center;
		-webkit-align-items: center;
		z-index:2;
		position:relative;
	}
	#page-ttl h2 .jp{
		color:#fff;
		font-size:32px;
		line-height;1.3em;
		display:block;
		margin-bottom:20px;
		letter-spacing:1px;
	}
	#page-ttl h2 .en{
		color:#fff;
		font-size:1em;
		line-height;1.3em;
		display:block;
		margin-bottom:8px;
	}

	/* p */
	#breadcrumbs{
		position:absolute;
		z-index:3;
		top:20px;
		right:20px;
		display:flex;
		-js-display:flex;
		display:-webkit-flex;
		-webkit-justify-content: flex-end;
		justify-content: flex-end;
		flex-flow: row nowrap;
		-webkit-flex-flow: row nowrap;
		align-items: center;
		-webkit-align-items: center;
	}
	#breadcrumbs i{
		margin:0;
	}
	#breadcrumbs i,
	#breadcrumbs a,
	#breadcrumbs span{
		color:#fff;
	}
	#breadcrumbs a{
		margin-right:15px;
		display:block;
	}
	#breadcrumbs span{
		display:block;
	}
	#breadcrumbs .fa-angle-right{
		margin-right:13px;
	}

	/* table style */
	table.tbl_def1{
		width:100%;
		table-layout:fixed;
		border-top:1px solid #b3b3b3;
	}
	table.tbl_def1 th{
		background-color:#ebe3bd;
		border-bottom:1px solid #b3b3b3;
		padding:1.071em 1.429em;
		line-height:1.6em;
		font-size:1em;
		font-weight:normal;
		vertical-align:middle;
		color:#000000;
	}
	table.tbl_def1 td{
		border-bottom:1px solid #b3b3b3;
		padding:1.071em 1.429em;
		line-height:1.6em;
		font-size:1em;
		vertical-align:middle;
		color:#000000;
	}
	table.tbl_def1 td ul li{
		line-height:1.6em;
		margin-bottom:1.071em;
	}
	table.tbl_def1 td ul li:last-child{
		margin-bottom:0;
	}

	table.tbl_def2{
		width:100%;
		table-layout:fixed;
		border-top:1px solid #b3b3b3;
	}
	table.tbl_def2 th{
		background-color:#ebe3bd;
		border-bottom:1px solid #b3b3b3;
		padding:0.514em 0.571em 0.443em;
		line-height:1.4em;
		font-size:1em;
		font-weight:normal;
		vertical-align:middle;
		color:#000000;
	}
	table.tbl_def2 td{
		border-bottom:1px solid #b3b3b3;
		padding:0.514em 0.571em 0.443em;
		line-height:1.4em;
		font-size:1em;
		vertical-align:middle;
		color:#000000;
	}
	table.tbl_def2 td ul li{
		line-height:1.6em;
		margin-bottom:1.071em;
	}
	table.tbl_def2 td ul li:last-child{
		margin-bottom:0;
	}

	/* ------ Header ------ */
	header #nav-header{
		position: fixed;
		top:0 !important;
		bottom:auto;
		z-index:9999;
		width: 100%;
		-webkit-backface-visibility:hidden;
		backface-visibility:hidden;
	}
	#nav-header .nav-header{
		display:flex;
		-js-display:flex;
		display:-webkit-flex;
		-webkit-justify-content: flex-start;
		justify-content: flex-start;
		flex-flow: column-reverse wrap;
		-webkit-flex-flow: column-reverse wrap;
		align-items: center;
		-webkit-align-items: center;
	}
	.nav-header .t1{
		background-color: rgba(255,255,255,0.7);
		display:flex;
		-js-display:flex;
		display:-webkit-flex;
		-webkit-justify-content: space-between;
		justify-content: space-between;
		flex-flow: row nowrap;
		-webkit-flex-flow: row nowrap;
		align-items: center;
		-webkit-align-items: center;
		padding:10px 20px;
		width: 100%;
		box-sizing:border-box;
		-webkit-box-sizing:border-box;
	}
	.nav-header .t1 .logo{
		text-align:left;
	}
	.nav-header .t1 .logo .ex{
		line-height:1em;
		margin-bottom:10px;
	}
	.nav-header .t1 .logo a{
		display:block;
		max-width:255px;
	}
	.nav-header .t1 .menu .tel{
		margin:0 20px 0 auto;
		max-width:232px;
		min-width:150px;
	}
	.nav-header .t1 .menu .tel a{
		display:block;
	}
	.nav-header .t1 .menu{
		display:flex;
		-js-display:flex;
		display:-webkit-flex;
		-webkit-justify-content: flex-end;
		justify-content: flex-end;
		flex-flow: row nowrap;
		-webkit-flex-flow: row nowrap;
		align-items: center;
		-webkit-align-items: center;
		margin:0 0 0 40px;
	}
	.nav-header .t1 .menu .mbox{
		display:flex;
		-js-display:flex;
		display:-webkit-flex;
		-webkit-justify-content: flex-end;
		justify-content: flex-end;
		flex-flow: row nowrap;
		-webkit-flex-flow: row nowrap;
		align-items: center;
		-webkit-align-items: center;
	}
	.nav-header .t1 .menu .share{
		display:flex;
		-js-display:flex;
		display:-webkit-flex;
		-webkit-justify-content: flex-end;
		justify-content: flex-end;
		flex-flow: row wrap;
		-webkit-flex-flow: row wrap;
		align-items: center;
		-webkit-align-items: center;
	}
	.nav-header .t1 .menu .share{
		margin:10px 0 10px 20px;
	}
	.nav-header .t1 .menu .share .ttl{
		margin-right:15px;
		font-size:0.857em;
	}
	.nav-header .t2{
		background-color:#d90000;
		width:100%;
	}
	.nav-header .t2 .inner{
		display:flex;
		-js-display:flex;
		display:-webkit-flex;
		-webkit-justify-content: space-between;
		justify-content: space-between;
		flex-flow: row nowrap;
		-webkit-flex-flow: row nowrap;
		align-items: flex-start;
		-webkit-align-items: flex-start;
		margin:0 auto;
	}
	.nav-header .t2 .menu{
		display:flex;
		-js-display:flex;
		display:-webkit-flex;
		-webkit-justify-content: center;
		justify-content: center;
		flex-flow: row nowrap;
		-webkit-flex-flow: row nowrap;
		align-items: stretch;
		-webkit-align-items: stretch;
		width:100%;
	}
	.nav-header .t2 .menu > li:first-child{
		border-left:1px solid #b10c15;
		width:16.8%;
	}
	.nav-header .t2 .menu > li:last-child{
		width:16.8%;
	}
	.nav-header .t2 .menu > li{
		width:16.6%;
		border-right:1px solid #b10c15;
		position:relative;
	}
	.nav-header .t2 .menu > li > a{
		padding:13.5px 0;
		display: block;
		position:relative;
		text-align:center;
		z-index: 9999;
	}
	.nav-header .t2 .menu > li > a span{
		display:block;
		line-height:1em;
		text-align:center;
	}
	.nav-header .t2 .menu > li > a .jp{
		color:#fff;
		font-size:16px;
		margin-bottom:5px;
	}
	.nav-header .t2 .menu > li > a .en{
		color:#fff462;
		font-size:12px;
	}
	.nav-header .t2 .menu > li.mega-hover .sub-menu{
		display:block;
	}
	.nav-header .t2 .menu .sub-menu{
		position: relative;
		z-index: 1;
		display:none;
		font-size: 1.143em;
		margin-top: 0.94em;
	}
	.nav-header .t2 .menu .sub-menu:after{
		content: "";
		border-style: solid;
		border-width: 0 1em 1em 1em;
		border-color: transparent transparent #d90000 transparent;
		height: 0;
		width: 0;
		display: block;
		position: absolute;
		left: 50%;
		top: -1em;
		margin-left: -1em;
	}
	.nav-header .t2 .menu > li .sub-container{
		position: absolute;
		left: -100%;
		right: -100%;
		margin: 0 auto;
		width: 100%;
		top: 100% !important;
	}
	.nav-header .t2 .menu > li.mega-hover .sub-container{
		z-index:1 !important;
	}
	.nav-header .t2 .menu > li.m3 .sub-container{
		width: 14em;
	}
	.nav-header .t2 .menu .sub-menu li a{
		box-sizing: border-box;
		-webkit-box-sizing: border-box;
		display: block;
		padding: 0.875em;
		text-align: left;
		background-color: #d90000;
		color: #fff;
		transform: rotate(0.001deg);
		font-size: 1em;
		white-space: nowrap;
		position: relative;
		line-height: 1em;
		opacity:1 !important;
		box-sizing:border-box;
		-webkit-box-sizing:border-box;
		border-top: 1px solid #d90000;
		border-left: 1px solid #d90000;
		border-right: 1px solid #d90000;
		border-bottom: 1px solid #fff;
		font-weight:bold;
	}
	.nav-header .t2 .menu .sub-menu li:first-child a{
		-moz-border-radius: 0.5em 0.5em 0 0;
		-webkit-border-radius: 0.5em 0.5em 0 0;
		border-radius: 0.5em 0.5em 0 0;
	}
	.nav-header .t2 .menu .sub-menu li:last-child a{
		-moz-border-radius: 0 0 0.5em 0.5em;
		-webkit-border-radius: 0 0 0.5em 0.5em;
		border-radius: 0 0 0.5em 0.5em;
		border-bottom: 1px solid #d90000;
	}
	.nav-header .t2 .menu .sub-menu li a:hover{
		color: #d90000;
		transform: rotate(0.001deg);
		background-color:#fff;
		border:1px solid #d90000 !important;
		font-weight:bold;
	}
	.nav-header .t2 .menu .sub-menu li a:before{
		content:"\f0da";
		font-family: "FontAwesome";
		color: #fff462;
		font-size: 1em;
		margin-right: 0.31em;
	}

	.nav-header .social li{
		margin:0;
	}
	.nav-header .social li a{
		font-size:1.143em;
		width:1em;
		height:1em;
		line-height:1em;
		margin:0 0.313em;
	}
	.nav-header .social li.fb a i{
		color:#3c5998;
	}
	.nav-header .social li.tw a i{
		color:#09b0ed;
	}
	.nav-header .social li.gg a i{
		color:#dd4b39;
	}
	.nav-header .social li.ig a i{
		color:#a23499;
	}

	/* Mega Menu Styles */
	.dc-mega .dc-mega-icon{display:none !important;}
	.sub-container .sub-menu{display:none;}
	.mega-menu ul, .mega-menu ul li {list-style: none;}
	.mega-menu ul {position: relative; padding: 0; margin: 0;}
	.mega-menu ul li ul {display: none;}
	.mega-menu .sub {display: none;}
	.mega-menu .sub ul {display: block;}

	.logo a{
		display:inline-block;
		vertical-align:top;
	}
	.logo a img{
		width:100%;
	}

	/* ------ Social ------ */
	.social{
		display:flex;
		-js-display:flex;
		display:-webkit-flex;
		-webkit-justify-content: center;
		justify-content: center;
		flex-flow: row nowrap;
		-webkit-flex-flow: row nowrap;
		align-items: center;
		-webkit-align-items: center;
	}
	.social li{
		margin:0 0.286em;
		text-align:center;
	}
	.social li:first-child{
		margin-left:0;
	}
	.social li:last-child{
		margin-right:0;
	}
	.social li a{
		width:2em;
		height:2em;
		line-height:2em;
		color:#fff;
		margin:0;
		display:flex;
		-js-display:flex;
		display:-webkit-flex;
		-webkit-justify-content: center;
		justify-content: center;
		align-items: center;
		-webkit-align-items: center;
		cursor:pointer;
		-moz-border-radius: 50%;
		-webkit-border-radius: 50%;
		border-radius: 50%;
	}
	.social li i{
		font-size:1em;
		height: 1.35em;
		line-height: 1.35em;
		width: 1.5em;
		padding:0;
		margin:0;
		display:inline-block;
		vertical-align: middle;
	}

	/* form */
	input[type="radio"],
	input[type="checkbox"]{
		cursor:pointer;
	}
	header .search form{
		display:flex;
		-js-display:flex;
		display:-webkit-flex;
		-webkit-justify-content: flex-start;
		justify-content: flex-start;
		flex-flow: row nowrap;
		-webkit-flex-flow: row nowrap;
		align-items: stretch;
		-webkit-align-items: stretch;
	}
	header .search{
		max-width:200px;
		width:100%;
		position:relative;
	}
	header .search form .ico{
		background-color:#b3b3b3;
		display:flex;
		-js-display:flex;
		display:-webkit-flex;
		-webkit-justify-content: center;
		justify-content: center;
		align-items: center;
		-webkit-align-items: center;
		position:absolute;
		right:0;
		top:0;
		z-index:1;
		height:100%;
		-moz-transition: opacity .5s ease;
		-webkit-transition: opacity .5s ease;
		transition: opacity .5s ease;
		cursor:pointer;
	}
	header .search form .ico:hover{
		opacity:0.8;
	}
	header .search form .ico i{
		color:#fff;
		margin:0 auto;
		font-size:20px;
		padding:0 7px;
	}
	input[type='search']{
		width:100%;
		padding-right:35px;
	}
	textarea,
	input[type='search'],
	input[type='text'],
	input[type='password']{
		padding: 0.5em;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		-webkit-border-radius: 0;
		border-radius: 0;
		-moz-appearance: none;
		-webkit-appearance: none;
		-moz-transition: all .2s ease;
		-webkit-transition: all .2s ease;
		transition: all .2s ease;
		outline: none;
		border:1px solid #b3b3b3;
		font-size:1em;
		line-height:1em;
		color:#999999;
	}
	textarea:focus,
	input[type='search']:focus,
	input[type='text']:focus,
	input[type='password']:focus{
		border-color: #ccc;
		-webkit-box-shadow: 0 0 3px rgba(0,0,0,0.1);
		box-shadow: 0 0 3px rgba(0,0,0,0.1);
		background-color:#f5f5f5;
	}
	input[type='search']:focus::-webkit-input-placeholder { color:transparent; }
	input[type='search']:focus:-moz-placeholder { color:transparent; }
	input[type='search']:focus::-moz-placeholder { color:transparent; }
	input[type='text']:focus::-webkit-input-placeholder { color:transparent; }
	input[type='text']:focus:-moz-placeholder { color:transparent; }
	input[type='text']:focus::-moz-placeholder { color:transparent; }
	input[type='password']:focus::-webkit-input-placeholder { color:transparent; }
	input[type='password']:focus:-moz-placeholder { color:transparent; }
	input[type='password']:focus::-moz-placeholder { color:transparent; }

	/* ------ Body ------ */
	html{
		background-color:#d90000;
	}
	body .inner{
		max-width:1000px;
		margin:0 auto;
	}
	body:not(.home) article .inner{
		padding-top:60px;
		padding-bottom:100px;
	}
	#container{
		margin:0 auto;
		background-color:#f6f5f1;
	}
	#container .container{
		display:flex;
		-js-display:flex;
		display:-webkit-flex;
		-webkit-justify-content: space-between;
		justify-content: space-between;
		flex-flow: row nowrap;
		-webkit-flex-flow: row nowrap;
		align-items: stretch;
		-webkit-align-items: stretch;
	}
	#content{
		width:100%;
	}

	/* ------ Footer ------ */
	footer{
		background-color:#d90000;
	}
	footer .inner{
		padding:40px 0;
	}
	footer .logo{
		width:35.4%;
		margin:0 auto 40px;
	}
	#office{
		display:         flex;
		display: -webkit-flex;
		-webkit-justify-content: center;
		        justify-content: center;
		        flex-flow: row nowrap;
		-webkit-flex-flow: row nowrap;
		        align-items: flex-start;
		-webkit-align-items: flex-start;
		margin-bottom: 40px;
		gap: 16%;
	}
	#office li{
		width:30.6%;
	}
	#office li div,
	#office li a,
	#office li span{
		color:#fff;
	}
	#office li .ttl_wb{
		font-size:16px;
		line-height:1em;
		padding-bottom:10px;
		border-bottom:1px solid #fff;
		margin-bottom:9px;
		display:block;
	}
	#office li .addr{
		line-height:1.6em;
		margin-bottom:3px;
	}
	#office li .contact{
		display:flex;
		-js-display:flex;
		display:-webkit-flex;
		-webkit-justify-content: center;
		justify-content: center;
		flex-flow: row wrap;
		-webkit-flex-flow: row wrap;
		align-items: flex-start;
		-webkit-align-items: flex-start;
	}
	#office li .contact .tel{
		white-space:nowrap;
	}
	#office li .contact .fax{
		white-space:nowrap;
	}
	#flink{
		display:flex;
		-js-display:flex;
		display:-webkit-flex;
		-webkit-justify-content: center;
		justify-content: center;
		flex-flow: row nowrap;
		-webkit-flex-flow: row nowrap;
		align-items: center;
		-webkit-align-items: center;
	}
	#flink .social a{
		background-color:#fff !important;
	}
	#flink .social a i{
		color:#d90000;
	}
	#flink .link{
		display:         flex;
		display: -webkit-flex;
		-webkit-justify-content: center;
		        justify-content: center;
		        flex-flow: row nowrap;
		-webkit-flex-flow: row nowrap;
		        align-items: center;
		-webkit-align-items: center;
		gap: 30px;
	}
	.copyright{
		border-top:1px solid #fff;
		display:block;
		margin:0 auto;
		width: 100%;
		padding:20px 0 2em;
		line-height:100%;
		font-size:0.86em;
		letter-spacing:1px;
		color:#fff;
		text-align:center;
	}
}
/* Chrome */
@media screen and (-webkit-min-device-pixel-ratio:0) and (min-width: 641px) {
	.ttl_b{
		transform: none;
		-webkit-text-stroke: 0.2px rgba(217,0,0,0.5);
	}
	.ttl_bb{
		transform: none;
		-webkit-text-stroke: 0.2px rgba(0,0,0,0.5);
	}
	.ttl_wb{
		transform: none;
		-webkit-text-stroke: 0.2px rgba(255,255,255,0.5);
	}
	.nav-header .t2 .menu .sub-menu li a{
		transform: none;
		-webkit-text-stroke: 0.2px rgba(255,255,255,0.5);
	}
	.nav-header .t2 .menu .sub-menu li a:hover{
		transform: none;
		-webkit-text-stroke: 0.2px rgba(217,0,0,0.5);
	}
}

/* ------------------------------------------------------------------------- *
 *	Mobile (Low Res) : 1040px > 641px
/* ------------------------------------------------------------------------- */
@media only screen and (max-width: 1040px) and (min-width: 641px) {
	/* ------ Header ------ */
	.nav-header .t1 .menu .mbox{
		flex-flow: row wrap;
		-webkit-flex-flow: row wrap;
	}

	/* ------ Body ------ */
	#page-ttl{
		height:34.615vw;
	}
	body .inner{
		padding-left: 20px !important;
		padding-right: 20px !important;
		box-sizing: border-box;
		-webkit-box-sizing: border-box;
		max-width: 1040px;
	}
}

/* ------------------------------------------------------------------------- *
 *	Mobile (Low Res) : 800px > 641px
/* ------------------------------------------------------------------------- */
@media only screen and (max-width: 800px) and (min-width: 641px) {
	/* ------ Header ------ */
	.nav-header .t2 .menu .sub-menu{
		font-size:1em;
	}
	.nav-header .t2 .menu .sub-menu li a{
		padding:0.714em !important;
	}
	.nav-header .t2 .menu > li > a .jp{
		font-size:15px !important;
		letter-spacing:-1px !important;
		white-space:nowrap;
	}
	.nav-header .t2 .menu > li > a .en{
		font-size:11px !important;
	}
}

/* ------------------------------------------------------------------------- *
 *	Mobile (Low Res) : 640px > 0
/* ------------------------------------------------------------------------- */
@media only screen and (max-width: 640px) {
	/* ------ Page Top ------ */
	#pagetop{
		opacity:1 !important;
		display:block !important;
	}
	#pagetop a{
		background: #333333; /* Old browsers */
		background: -moz-linear-gradient(top,  #333333 0%, #2b2b2b 100%); /* FF3.6-15 */
		background: -webkit-linear-gradient(top,  #333333 0%,#2b2b2b 100%); /* Chrome10-25,Safari5.1-6 */
		background: linear-gradient(to bottom,  #333333 0%,#2b2b2b 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#333333', endColorstr='#2b2b2b',GradientType=0 ); /* IE6-9 */
		text-align:center;
		display:flex;
		-js-display:flex;
		display:-webkit-flex;
		-webkit-justify-content: center;
		justify-content: center;
		flex-flow: row wrap;
		-webkit-flex-flow: row wrap;
		align-items: center;
		-webkit-align-items: center;
		width:100%;
		padding:5vw 0;
	}
	#pagetop a i{
		font-size:5.625vw;
		color:#fff;
		line-height:1em;
		margin-right:0.75em;
	}
	#pagetop a span.sp{
		font-size:4.7vw;
		line-height:1em;
		color:#fff;
	}

	/* ------ All ------ */
	.pc{display:none !important;}
	.wp-pagenavi {
		float: none;
		text-align: center;
		margin-top:9.375vw;
		display:flex;
		-js-display:flex;
		display:-webkit-flex;
		-webkit-justify-content: center;
		justify-content: center;
		flex-flow: row nowrap;
		-webkit-flex-flow: row nowrap;
		align-items: center;
		-webkit-align-items: center;
	}
	.wp-pagenavi a,
	.wp-pagenavi span {
		font-size:3.5vw;
		background-color:#fff;
		color: #666666;
		display: block;
		margin: 0 0.36em;
		height:1.875em;
		min-width:1.875em;
		box-sizing:border-box;
		-webkit-box-sizing:border-box;
		line-height:1.9em;
		text-align:center;
		opacity:1 !important;
		-moz-transition: all 0.5s ease;
		-ms-transition: all 0.5s ease;
		-webkit-transition: all 0.5s ease;
		transition: all 0.5s ease;
		padding:0 0.2em;
		border:none;
		font-weight:normal;
	}
	.wp-pagenavi a.previouspostslink,
	.wp-pagenavi a.nextpostslink{
		color: #fff;
		background-color:#d90000;
		border:none;
		font-weight:normal;
	}
	.wp-pagenavi a.previouspostslink i,
	.wp-pagenavi a.nextpostslink i{
		margin:0 auto;
	}
	.wp-pagenavi span.current {color: #fff;background-color:#666666;border:none;font-weight:normal;}
	.wp-pagenavi a:not(.previouspostslink):not(.nextpostslink):hover,
	.wp-pagenavi a:not(.previouspostslink):not(.nextpostslink):link:hover,
	.wp-pagenavi a:visited:hover,
	.wp-pagenavi a:active{color: #fff;background-color:#666666;border:none;font-weight:normal;}

	.wp-pagenavi a.previouspostslink:hover,
	.wp-pagenavi a.nextpostslink:hover{opacity:0.6;}
	.wp-pagenavi .pages{display:none;}
	nav.pagination{background:none;}

	/* button style*/
	.btn_big,
	.btn_min,
	.btn_prd{
		font-size:4.375vw;
		color:#fff !important;
		background: #dd0000; /* Old browsers */
		background: -moz-linear-gradient(top,  #dd0000 0%, #d30000 100%); /* FF3.6-15 */
		background: -webkit-linear-gradient(top,  #dd0000 0%,#d30000 100%); /* Chrome10-25,Safari5.1-6 */
		background: linear-gradient(to bottom,  #dd0000 0%,#d30000 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#dd0000', endColorstr='#d30000',GradientType=0 ); /* IE6-9 */
		-moz-border-radius: 0.4em;
		-webkit-border-radius: 0.4em;
		border-radius: 0.4em;
		padding: 0.75em 0.536em;
		position:relative;
		text-decoration: none !important;
		text-align:center;
		line-height:1em;
		user-select: none;
		-moz-user-select: none;
		-webkit-user-select: none;
		-ms-user-select: none;
		border:none;
		cursor:pointer;
		max-width:100%;
		width:100%;
		margin:0 auto;
		display:flex;
		-js-display:flex;
		display:-webkit-flex;
		-webkit-justify-content: center;
		justify-content: center;
		flex-flow: row nowrap;
		-webkit-flex-flow: row nowrap;
		align-items: center;
		-webkit-align-items: center;
		box-sizing:border-box;
		-webkit-box-sizing:border-box;
	}
	.btn_big:before,
	.btn_min:before{
		content:"\f138";
		font-family: "FontAwesome";
		font-size:1em;
		color:#fff;
		margin-right:0.393em;
		height: 1em;
		line-height:0.9em;
	}

	.btn_big.mail{
		padding: 0.75em 0.536em;
	}
	.btn_big.mail:before{
		content:"\f0e0";
		font-size:1em;
		margin-right:0.357em;
	}
	.btn_big.fb{
		background: #4865a1; /* Old browsers */
		background: -moz-linear-gradient(top,  #4865a1 0%, #324e8c 100%); /* FF3.6-15 */
		background: -webkit-linear-gradient(top,  #4865a1 0%,#324e8c 100%); /* Chrome10-25,Safari5.1-6 */
		background: linear-gradient(to bottom,  #4865a1 0%,#324e8c 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#4865a1', endColorstr='#324e8c',GradientType=0 ); /* IE6-9 */
	}
	.btn_big.fb:before{
		content:"\f082";
	}
	.btn_big.user:before{
		content:"\f007";
		font-size:1em;
		margin-right:0.357em;
	}

	/* link style */
	.cat-item a,
	.link_r{
		text-indent: 0.9em;
		margin-left: 1.4em;
		display: inline-block;
	}
	.cat-item a:before,
	.link_r:before{
		content:"\f138";
		font-family: "FontAwesome";
		font-size:1em;
		margin-left: -2.3em;
		margin-right:0.5em;
		line-height: 1.1em;
		color:#d90000;
	}
	.link_wr{
		text-indent: 0.9em;
		margin-left: 1.4em;
		display: inline-block;
		color:#fff !important;
	}
	.link_wr:before{
		content:"\f138";
		font-family: "FontAwesome";
		font-size:1em;
		margin-left: -2.3em;
		margin-right:0.5em;
		line-height: 1.1em;
		color:#fff;
	}
	.link_o{
		text-indent: 0.9em;
		margin-left: 1.4em;
		display: inline-block;
	}
	.link_o:before{
		content:"\f08e";
		font-family: "FontAwesome";
		font-size:1em;
		margin-left: -2.3em;
		margin-right:0.5em;
		line-height: 1.1em;
		color:#d90000;
	}

	/* title style */
	.ttl_b{
		font-size:1em;
		color:#d90000;
		transform: rotate(0.001deg);
		line-height:1.3em;
		margin-bottom:1.1em;
		letter-spacing:1px;
		display:inline-block;
		vertical-align:middle;
		font-weight:bold;
	}
	.ttl_b a{
		color:#d90000 !important;
		display:inline-block;
		vertical-align:middle;
	}
	.ttl_bb{
		font-size:1em;
		color:#000;
		transform: rotate(0.001deg);
		line-height:1.3em;
		margin-bottom:1.1em;
		letter-spacing:1px;
		display:inline-block;
		vertical-align:middle;
		font-weight:bold;
	}
	.ttl_bb a{
		color:#000 !important;
		display:inline-block;
		vertical-align:middle;
	}
	.ttl_wb{
		font-size:1em;
		color:#fff;
		transform: rotate(0.001deg);
		line-height:1.3em;
		margin-bottom:1.1em;
		letter-spacing:1px;
		display:inline-block;
		vertical-align:middle;
		font-weight:bold;
	}
	.ttl_wb a{
		color:#fff !important;
		display:inline-block;
		vertical-align:middle;
	}

	.ttl_bline{
		width:100%;
		border-bottom:6px solid #b3b3b3;
		margin-bottom:3.125vw;
	}
	.ttl_bline .lbl{
		font-size:4.75vw;
		line-height:1.3em;
		display:inline-block;
		vertical-align:top;
		padding:0 0.658em 0.5em 0;
		border-bottom:6px solid #d90000;
		margin-bottom:-6px;
		color:#d90000;
	}

	#page-ttl{
		background-color: rgba(0,0,0,0.2);
		background-repeat: no-repeat;
		background-position: center center;
		background-size: cover;
		width:100%;
		height:31.25vw;
		position:relative;
		z-index:1;
	}
	#page-ttl:before{
		content:"";
		background-image: url(../img/overlays/10.png);
		background-color: rgba(0,0,0,0.2);
		background-repeat: repeat;
		background-position: 0 0;
		background-size: auto;
		display:block;
		width:100%;
		height:100%;
		position:absolute;
		z-index:2;
		top:0;
		left:0;
	}
	#page-ttl h2{
		width:100%;
		height:100%;
		display:flex;
		-js-display:flex;
		display:-webkit-flex;
		-webkit-justify-content: center;
		justify-content: center;
		flex-flow: column wrap;
		-webkit-flex-flow: column wrap;
		align-items: center;
		-webkit-align-items: center;
		z-index:3;
		position:relative;
	}
	#page-ttl h2 .jp{
		color:#fff;
		font-size:6.5vw;
		line-height;1.3em;
		display:block;
		margin:0.433em auto 0.409em;
		letter-spacing:1px;
	}
	#page-ttl h2 .en{
		color:#fff;
		font-size:3vw;
		line-height;1.3em;
		display:block;
	}

	/* table style */
	table.tbl_def1{
		width:100%;
		table-layout:fixed;
		border-top:1px solid #b3b3b3;
	}
	table.tbl_def1 th{
		background-color:#ebe3bd;
		border-bottom:1px solid #b3b3b3;
		padding:0.58em 0 0.58em 0.893em;
		line-height:1.5em;
		font-size:1em;
		font-weight:normal;
		vertical-align:middle;
		color:#000000;
	}
	table.tbl_def1 td{
		border-bottom:1px solid #b3b3b3;
		padding:0.58em 0 0.58em 0.893em;
		line-height:1.5em;
		font-size:1em;
		vertical-align:middle;
		color:#000000;
	}
	table.tbl_def1 td ul li{
		line-height:1.5em;
		margin-bottom:0.536em;
	}
	table.tbl_def1 td ul li:last-child{
		margin-bottom:0;
	}

	table.tbl_def2{
		width:100%;
		table-layout:fixed;
		border-top:1px solid #b3b3b3;
	}
	table.tbl_def2 th{
		background-color:#ebe3bd;
		border-bottom:1px solid #b3b3b3;
		padding:0.58em 0 0.58em 0.893em;
		line-height:1.5em;
		font-size:1em;
		font-weight:normal;
		vertical-align:middle;
		color:#000000;
	}
	table.tbl_def2 td{
		border-bottom:1px solid #b3b3b3;
		padding:0.58em 0 0.58em 0.893em;
		line-height:1.5em;
		font-size:1em;
		vertical-align:middle;
		color:#000000;
	}
	table.tbl_def2 td ul li{
		line-height:1.5em;
		margin-bottom:0.536em;
	}
	table.tbl_def2 td ul li:last-child{
		margin-bottom:0;
	}

	/* ------ Header ------ */
	#toggle:not(.on){
		display:none;
		opacity:0;
	}
	#toggle nav ul{
		position:relative;
	}
	#toggle nav ul:not(.on){
		display:none;
	}
	#toggle{
		position: fixed;
		z-index: 10000;
		width:100%;
		height:100%;
		-moz-transition: all 0.5s ease;
		-ms-transition: all 0.5s ease;
		-webkit-transition: all 0.5s ease;
		transition: all 0.5s ease;
		background-color:#d90000;
		-webkit-backface-visibility:hidden;
		backface-visibility:hidden;
		overflow-y:scroll;
	}
	#toggle .ttl{
		background-color:#fff;
		display:flex;
		-js-display:flex;
		display:-webkit-flex;
		-webkit-justify-content: space-between;
		justify-content: space-between;
		flex-flow: row nowrap;
		-webkit-flex-flow: row nowrap;
		align-items: flex-start;
		-webkit-align-items: flex-start;
		margin:0 auto;
		padding:3.125vw;
	}
	#toggle .ttl .logo{
		width:61.56vw;
		height:auto;
	}
	#toggle .ttl .close{
		background-color:#333333;
		display:flex;
		-js-display:flex;
		display:-webkit-flex;
		-webkit-justify-content:center;
		justify-content:center;
		flex-flow: row wrap;
		-webkit-flex-flow: row wrap;
		align-items: center;
		-webkit-align-items: center;
		width:12.5vw;
		height:12.5vw;
		position:absolute;
		top:0;
		right:0;
		z-index:1;
	}
	#toggle .ttl .close a{
		width:100%;
		height:100%;
		display:flex;
		-js-display:flex;
		display:-webkit-flex;
		-webkit-justify-content:center;
		justify-content:center;
		align-items: center;
		-webkit-align-items: center;
		cursor:pointer;
	}
	#toggle .ttl .close i{
		font-size:5vw;
		color:#fff;
		margin:0;
	}
	#toggle nav ul.on li{
		box-sizing:border-box;
		-webkit-box-sizing:border-box;
		display:flex;
		-js-display:flex;
		display:-webkit-flex;
		align-items: stretch;
		-webkit-align-items: stretch;
		border-bottom:1px solid #fff;
	}
	#toggle nav ul.on li a{
		color:#fff;
		position:relative;
		font-size:5vw;
		padding: 0.756em 7.813vw 0.756em 0.625em;
		box-sizing:border-box;
		-webkit-box-sizing:border-box;
		width:100%;
		display:flex;
		-js-display:flex;
		display:-webkit-flex;
		align-items: center;
		-webkit-align-items: center;
		line-height:1.3em;
	}
	#toggle nav ul li a:after{
		content:"\f054";
		font-family: "FontAwesome";
		color:#fff;
		font-size:5vw;
		position:absolute;
		top:50%;
		right:3.125vw;
		margin-top:-0.5em;
		height:1em;
		line-height: 1em;
	}

	#nav-header{
		width: 100%;
		z-index:9999;
		-webkit-backface-visibility:hidden;
		backface-visibility:hidden;
		position: absolute;
		top:6.25vw;
	}
	header.on #nav-header{
		position: fixed;
		top:0;
	}
	.nav-header .t2 .menu{
		background-color:rgba(255,255,255,0.7);
		display:flex;
		-js-display:flex;
		display:-webkit-flex;
		-webkit-justify-content: space-between;
		justify-content: space-between;
		flex-flow: row nowrap;
		-webkit-flex-flow: row nowrap;
		align-items: stretch;
		-webkit-align-items: stretch;
	}
	.nav-header .t2 .menu .logo{
	}
	.nav-header .t2 .menu .logo a{
		padding:2.031vw 3.125vw;
	}
	.nav-header .t2 .menu .logo a img{
		width:59.844vw;
		height:auto;
	}
	.nav-header .t2 .menu .btn{
		display:flex;
		-js-display:flex;
		display:-webkit-flex;
		-webkit-justify-content: flex-end;
		justify-content: flex-end;
		flex-flow: row nowrap;
		-webkit-flex-flow: row nowrap;
		align-items: stretch;
		-webkit-align-items: stretch;
		height:14.844vw;
	}
	.nav-header .t2 .menu .btn > li{
		height:100%;
	}
	.nav-header .t2 .menu .btn li.tel{
		border-right:1px solid #fff;
	}
	.nav-header .t2 .menu .btn li a,
	.nav-header .t2 .menu .btn li.bar{
		background-color:#d90000;
		height:100%;
		display:flex;
		-js-display:flex;
		display:-webkit-flex;
		-webkit-justify-content: center;
		justify-content: center;
		flex-flow: column wrap;
		-webkit-flex-flow: column wrap;
		align-items: center;
		-webkit-align-items: center;
		cursor:pointer;
		width:14.844vw;
	}
	.nav-header .t2 .menu .btn li i{
		color:#fff;
		font-size:7.188vw;
		margin:0;
		line-height:1em;
	}
	.nav-header .t2 .menu .btn li .lbl{
		color:#fff;
		font-size:2.5vw;
		line-height:1em;
		margin:0.86em 0 0;
		display:block;
	}

	/* Mega Menu Styles */
	.sub-container .sub-menu{display:none !important;}

	.logo a{
		display:inline-block;
		vertical-align:top;
	}
	.logo a img{
		width:100%;
	}

	/* ------ Body ------ */
	html{
		background-color:#d90000;
	}
	body:not(.home) article .inner{
		padding-top:9.375vw;
		padding-bottom:9.375vw;
	}
	body .inner{
		padding-left: 3.125vw;
		padding-right: 3.125vw;
		box-sizing: border-box;
		-webkit-box-sizing: border-box;
	}
	body:not(.home) #content .inner p.none{
		text-align:center;
		font-size:1.5em;
		letter-spacing:1px;
	}
	#container{
		margin:0 auto;
		background-color:#f6f5f1;
	}

	/* ------ Social ------ */
	.social{
		display:flex;
		-js-display:flex;
		display:-webkit-flex;
		-webkit-justify-content: center;
		justify-content: center;
		flex-flow: row nowrap;
		-webkit-flex-flow: row nowrap;
		align-items: center;
		-webkit-align-items: center;
	}
	.social li{
		margin:0 2.344vw;
		text-align:center;
	}
	.social li:first-child{
		margin-left:0;
	}
	.social li:last-child{
		margin-right:0;
	}
	.social li a{
		width:9.375vw;
		height:9.375vw;
		line-height:9.375vw;
		color:#fff;
		margin:0;
		display:flex;
		-js-display:flex;
		display:-webkit-flex;
		-webkit-justify-content: center;
		justify-content: center;
		align-items: center;
		-webkit-align-items: center;
		cursor:pointer;
		-moz-border-radius: 50%;
		-webkit-border-radius: 50%;
		border-radius: 50%;
	}
	.social li i{
		font-size:4.688vw;
		height: 1em;
		line-height: 1em;
		width: 1em;
		padding:0;
		margin:0;
		display:inline-block;
		vertical-align: middle;
	}

	/* form */
	input[type="radio"],
	input[type="checkbox"]{
		cursor:pointer;
	}
	header .search form{
		display:flex;
		-js-display:flex;
		display:-webkit-flex;
		-webkit-justify-content: flex-start;
		justify-content: flex-start;
		flex-flow: row nowrap;
		-webkit-flex-flow: row nowrap;
		align-items: stretch;
		-webkit-align-items: stretch;
	}
	header .search{
		max-width:78.125vw;
		width:100%;
		position:relative;
	}
	header .search form .ico{
		background-color:#b3b3b3;
		display:flex;
		-js-display:flex;
		display:-webkit-flex;
		-webkit-justify-content: center;
		justify-content: center;
		align-items: center;
		-webkit-align-items: center;
		position:absolute;
		right:0;
		top:0;
		z-index:1;
		height:100%;
		-moz-transition: opacity .5s ease;
		-webkit-transition: opacity .5s ease;
		transition: opacity .5s ease;
		cursor:pointer;
	}
	header .search form .ico:hover{
		opacity:0.8;
	}
	header .search form .ico i{
		color:#fff;
		margin:0 auto;
		font-size:5.313vw;
		padding:0 0.412em;
	}
	input[type='search']{
		width:100%;
		padding-right:6.25vw;
	}
	textarea,
	input[type='search'],
	input[type='text'],
	input[type='password']{
		padding: 0.795em;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		-webkit-border-radius: 0;
		border-radius: 0;
		-moz-appearance: none;
		-webkit-appearance: none;
		-moz-transition: all .2s ease;
		-webkit-transition: all .2s ease;
		transition: all .2s ease;
		outline: none;
		border:1px solid #b3b3b3;
		font-size:1em;
		line-height:1em;
		color:#999999;
	}
	textarea:focus,
	input[type='search']:focus,
	input[type='text']:focus,
	input[type='password']:focus{
		border-color: #ccc;
		-webkit-box-shadow: 0 0 3px rgba(0,0,0,0.1);
		box-shadow: 0 0 3px rgba(0,0,0,0.1);
		background-color:#f5f5f5;
	}
	input[type='search']:focus::-webkit-input-placeholder { color:transparent; }
	input[type='search']:focus:-moz-placeholder { color:transparent; }
	input[type='search']:focus::-moz-placeholder { color:transparent; }
	input[type='text']:focus::-webkit-input-placeholder { color:transparent; }
	input[type='text']:focus:-moz-placeholder { color:transparent; }
	input[type='text']:focus::-moz-placeholder { color:transparent; }
	input[type='password']:focus::-webkit-input-placeholder { color:transparent; }
	input[type='password']:focus:-moz-placeholder { color:transparent; }
	input[type='password']:focus::-moz-placeholder { color:transparent; }

	/* ------ Footer ------ */
	footer{
		background-color:#d90000;
	}
	footer .inner{
		padding-top:9.375vw;
		padding-bottom:6.25vw;
	}
	#office{
		text-align:left;
		margin-bottom:9.375vw;
	}
	#office li{
		margin-bottom:5vw;
	}
	#office li:last-child{
		margin-bottom:0;
	}
	#office li div,
	#office li a,
	#office li span{
		color:#fff;
	}
	#office li .ttl_wb{
		line-height:1em;
		padding-bottom:0.893em;
		border-bottom:1px solid #fff;
		margin-bottom:0.893em;
		display:block;
	}
	#office li .addr{
	}
	#office li .contact{
		display:flex;
		-js-display:flex;
		display:-webkit-flex;
		-webkit-justify-content: flex-start;
		justify-content: flex-start;
		flex-flow: row wrap;
		-webkit-flex-flow: row wrap;
		align-items: flex-start;
		-webkit-align-items: flex-start;
	}
	#office li .contact .tel{
		white-space:nowrap;
	}
	#office li .contact .fax{
		white-space:nowrap;
	}
	#flink{
		display:flex;
		-js-display:flex;
		display:-webkit-flex;
		-webkit-justify-content: center;
		justify-content: center;
		flex-flow: row nowrap;
		-webkit-flex-flow: row nowrap;
		align-items: center;
		-webkit-align-items: center;
	}
	#flink .social a{
		background-color:#fff !important;
	}
	#flink .social a i{
		color:#d90000;
	}
	.copyright{
		border-top:1px solid #fff;
		display:block;
		margin:0 auto;
		width: 100%;
		padding:1.042em 0;
		line-height:100%;
		font-size:3vw;
		letter-spacing:1px;
		color:#fff;
		text-align:center;
	}
}
/* Chrome */
@media screen and (-webkit-min-device-pixel-ratio:0) and (max-width: 640px) {
	.ttl_b{
		transform: none;
		-webkit-text-stroke: rgba(217,0,0,0.5);
	}
	.ttl_bb{
		transform: none;
		-webkit-text-stroke: rgba(0,0,0,0.5);
	}
	.ttl_wb{
		transform: none;
		-webkit-text-stroke: rgba(255,255,255,0.5);
	}
}

/* Mobile (Low Res) : 480px > 0 */
@media only screen and (max-width: 480px) {
	.ttl_bline{
		border-bottom:3px solid #b3b3b3;
	}
	.ttl_bline .lbl{
		border-bottom:3px solid #d90000;
		margin-bottom:-3px;
	}
}
