@charset "utf-8";


@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,500,700|Open+Sans&display=swap');

body {
	min-width:974px;
	-webkit-text-size-adjust: 100%;
	font-family: -apple-system, blinkMacSystemFont,'Open Sans',Meiryo,'游ゴシック',YuGothicM,YuGothic,Meiryo,sans-serif;
	color:#1b1b1b;
}
.sans {
	font-family: -apple-system, blinkMacSystemFont,'Open Sans',Meiryo,'游ゴシック',YuGothicM,YuGothic,Meiryo,sans-serif;
}
.clearfix:after {
  content: "";
  clear: both;
  display: block;
}

a[target="_blank"]:after {
	content:url('../img/common/icon_exterior.png');
	margin-left:3px;
}
a[target="_blank"]:after {
	content:url('../img/common/icon_exterior.png');
	margin-left:3px;
}
a.hasImg[target="_blank"]:after {
	display:none;
	margin-left:0px;
}
a.textlink {
	color:#c81b3e;
	text-decoration:underline;
}
a.textlink:hover {
	text-decoration:none;
}
@media screen and (min-width: 768px)  {
	a[href^="tel:"] {
		pointer-events: none;
		text-decoration: none;
	}
}

.my-placeholder{ padding: 0px 0px 0px 0px; }

/* ***************************************************************************** CONTAINER
*/

@media screen and (min-width: 768px)  {
	.container {
		position:relative;
		width:100%;
		min-width:970px;
		margin:0 auto;
		overflow:hidden;
	}
}

/* ***************************************************************************** HEADER
*/
header {
	border-top:3px solid #939598;
	position:relative;
	background: url("../img/common/header_bottom_line.png") repeat-x left bottom;
	width:100%;
	font-size:87.5%;
	margin:0;
	z-index:1;
	min-height:125px;
}
header .wrap {
	width:950px;
	margin:0 auto;
}
header .wrap .utility {
	position:relative;
	 min-height:91px;
}
/* Corporate Identity + to TopPage */
header .utility .ci {
	float:left;
	margin-top:15px;
}
header .utility .group-ci {
	position:absolute;
	top:11px;
	right:0;
}
/* .searchBox */
header .utility .searchBox {
	position:absolute;
	bottom:30px;
	right:0;
}
header .utility .searchBox .searchBox_txtbox {
	float:left;
	width:149px;
	height:17px;
	padding:2px 3px;
	border:1px solid #c8d4dc;
}
* html header .utility .searchBox .searchBox_txtbox {
	float:left;
	width:149px;
	height:17px;
	padding:2px 3px 2px 3px;
}
header .utility .searchBox searchBox_submit {
	float:left;
}


#header .mf_finder_searchBox_query_input {
    padding: .2em 0 .2em .4em;
    min-height: 20px;
    font-size: 0.875rem;
}

#header .mf_finder_searchBox_query_wrap {
	height: 22px;
}

/* ***************************************************************************** NAV GENERAL
*/
header .nav,
header .nav ul {
	list-style-type:none;
}
header .nav a {
	text-decoration:none;
	color:#333;
}

/* ***************************************************************************** NAV UTIL
*/
header .utility .nav.other-website {
	position:absolute;
	bottom:35px;
	right:230px;
	font-size:85.71428571%;
}
header .utility .nav.other-website li {
	float:left;
	padding:0 3px;
	line-height:1;
}
* html header .utility .nav.other-website li a {
	line-height:1.2;
}
header .utility .nav.other-website li.last-child {
}
header .utility .nav.other-website li a:link ,
header .utility .nav.other-website li a:visited {
	color:#1b1b1b;
	text-decoration:none;
}
header .utility .nav.other-website li a:hover {
	color:#1b1b1b;
	text-decoration:underline;
}
header .utility .nav.other-website li a.global-web {
display:inline-block;
	 margin:-5px 30px -3px 0;
	 padding:5px 0 3px 10px;
	 min-height:12px;
}
* html header .utility .nav.other-website li a.global-web {
	position:relative;
	 height:12px;
	 margin-bottom:-6px;
}
*+html header .utility .nav.other-website li a.global-web {
	margin-bottom:-5px;
}
header .utility .nav.other-website li a.global-web img.exterior {
	margin:0 0 0 6px;
	padding:0;
	vertical-align:0px;
}

/* ***************************************************************************** NAVI
*/

.global-nav_mainnav {
	display: flex;
}
.global-nav_mainnav > li{
	flex-grow: 1;
	text-align: center;
	border-left:1px dotted #000;
	position: relative;
}
.global-nav_mainnav > li:last-child{
	border-right:1px dotted #000;
}
.global-nav_mainnav > li > a{
	display: block;
	padding: 5px 0;
}
.global-nav_mainnav .children{
	position: absolute;
	width: 100%;
	left: 0;
	top: 100%;
	background: #FFF;
	box-shadow: 2px 2px 2px rgba(0,0,0,0.3);
	border-top: 1px solid #DDD;
	border-left: 1px solid #DDD;
	border-right: 1px solid #DDD;
	display: none;
}
.global-nav_mainnav .children li{
	text-align: left;
	font-size: 90%;
	line-height: 1.4;
	border-bottom: 1px solid #DDD;
}
.global-nav_mainnav .children li a{
	display: block;
	padding: 10px;
}
.global-nav_mainnav .children li a:hover{
	color: #FFF;
	background: #d32f2e;
}


/* ***************************************************************************** VISUAL
*/

.main-visual{
	border-bottom: 5px solid #d32f2e;
}
.main-visual .path{
	width: 950px;
	margin: 20px auto 15px;
}
.main-visual .path ul{
	display: flex;
	margin-left: 56px;
}
.main-visual .path li{
	font-size: 75%;
}
.main-visual .path li:not(:last-child):after{
	content:">";
	margin: 0 5px;
}
.main-visual .page-tit{
	width: 950px;
	margin: 0 auto 30px;
}
.main-visual .page-tit__bg{
	width: 1420px;
	margin: 0 -235px;
	padding: 20px 235px;
}
.main-visual .page-tit__box{
	background: rgba(255,255,255,.85);
	padding: 20px 56px;
	min-height: 240px;
	display: flex;
	align-items: center;
}
.main-visual .page-tit__tit{
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 262.5%;
	font-weight: 500;
	letter-spacing: .2em;
}
.main-visual .page-tit__lead{
	margin-top: 20px;
	font-size: 95%;
	line-height: 1.6;
}

/* ***************************************************************************** CONTENTS
*/

#contents{
	width: 910px;
	margin: 50px auto 80px;
	line-height: 1.7;
}
.sec{
	margin: 60px 0;
}
.sec .sec__tit{
	text-align: center;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 225%;
	font-weight: 500;
	margin-bottom: 40px;
	letter-spacing: .2em;
}
.sub-sec{
	padding: 0 36px;
	margin-top: 50px;
}
.sub-sec:first-child{
	margin-top: 0;
}
.sub-sec .sub-sec__tit{
	border-bottom: 2px solid #dcdcdc;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 162.5%;
	padding: 0 36px 10px;
	font-weight: 500;
	letter-spacing: .1em;
	margin: 0 -36px 20px;
	position: relative;
}
.sub-sec .sub-sec__tit:first-letter{
	color: #d32f2e;
}
.sub-sec .img-col2{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.sub-sec .img-col2:first-child,
.sub-sec__tit + .img-col2,
.sub-sec .img-col3:first-child,
.sub-sec__tit + .img-col3{
	margin-top: -20px;
}
.sub-sec .img-col2 > figure,
.sub-sec .img-col2 > div{
	width: 400px;
	margin-top: 30px;
}
.sub-sec .img-col2 > figure{
	text-align: center;
}
.sub-sec .img-col2 > .thin{
	width:255px;	
}
.sub-sec .img-col2 > .wide{
	width:545px;	
}
.sub-sec .img-col2 > figure > img,
.sub-sec .img-col3 > figure > img{
	max-width: 100%;
}
.sub-sec .img-col2 > figure > figcaption,
.sub-sec .img-col3 > figure > figcaption{
	margin-top: 10px;
}
.sub-sec .img-col2 > .portrait > img{
	width: 340px;
}
.sub-sec .img-col2 > div > p:not(:first-child){
	margin-top: 1.5em;
}
.sub-sec .img-col3{
	display: flex;
	flex-wrap: wrap;
	margin-left: -20px;
}
.sub-sec .img-col3 > figure,
.sub-sec .img-col3 > div{
	width: 266px;
	margin-top: 30px;
	margin-left: 20px;
}

.sub-sec .sub-sec__tit:after{
	content:"";
	position: absolute;
	display: block;
	width: 1.4em;
	height: 2px;
	background: #d32f2e;
	left: calc(36px - 0.2em);
	bottom: -2px;
}
.sub-contents-list ul{
	display: flex;
	flex-wrap: wrap;
	margin: -60px 0 0 -13px;
}
.sub-contents-list ul li{
	width: 308px;
	font-size: 125%;
	font-family: 'Noto Sans JP', sans-serif;
	margin: 60px 0 0 13px;
	position: relative;
}
.sub-sec .sub-contents-list ul{
	margin-top: -40px;
}
.sub-sec .sub-contents-list ul li{
	width: 284px;
	font-size: 112.5%;
}
.sub-contents-list ul li img{
	width: 100%;
	height: auto;
}
.sub-contents-list ul li a{
	display: block;
	text-decoration: none;
	height: 100%;
	border-bottom: 2px solid #d32f2e;
}
.sub-contents-list ul li .sub-contents-list__tit{
	display: block;
	background: url("../img/common/arrow_right_red.png") no-repeat right 10px center / 10px auto;
	text-decoration: none;
	padding: 15px 20px;
}
.sub-contents-list ul li a:hover{
	opacity: .7;
}
.base-table{
	width: 100%;
}
.base-table th{
	background: #e2e2e2;
	border: 1px solid #848484;
	width: 218px;
	padding: 10px;
	font-size: 112.5%;
	vertical-align: middle;
}
.base-table td{
	border: 1px solid #848484;
	padding: 10px 35px;
	font-size: 112.5%;
}

/* ***************************************************************************** BUTTON
*/

.btn .btn__inner{
	display:block;
	padding:15px;
	font-size: 125%;
	line-height:1.33;
	text-align:center;
	text-decoration:none;
	font-weight: bold;
	max-width: 385px;
}
.btn-red .btn__inner{
	background-color:#d32f2e;
	color:#fff;
	border: 1px solid #d32f2e;
}
.btn-red .btn__inner:hover{
	background-color:#fff;
	border: 1px solid #d32f2e;
	color:#d32f2e;
	text-decoration:none;
}
.btn-black .btn__inner{
	background-color:#1b1b1b;
	color:#fff;
	border: 1px solid #1b1b1b;
}
.btn-black .btn__inner:hover{
	background-color:#fff;
	border: 1px solid #1b1b1b;
	color:#1b1b1b;
	text-decoration:none;
}

.btn-center .btn__inner{
	margin-left:auto;
	margin-right:auto;
}

/* ***************************************************************************** SOCIAL
*/

.social-buttons{
	display: flex;
	justify-content: flex-end;
	width: 950px;
	margin: 0 auto;
}

.social-buttons > div{
	margin-left: 20px;
}

/* ***************************************************************************** FOOTER SITEMAP
*/

#footer-sitemap{
	background: #cfd0d1;
	margin-top: 1px;
}

#footer-sitemap .wrap{
	width:950px;
	margin: 0 auto;
	padding: 26px 0;
}
#footer-sitemap a{
	text-decoration:none;
}
#footer-sitemap .wrap .sitemap{
	display: flex;
}
#footer-sitemap .wrap .sitemap > dl{
	flex-grow: 1;
	background: url("../img/common/footer_sitemap_line.png") repeat-y right top;
	padding: 0 11px 100px 12px;
}
#footer-sitemap .wrap .sitemap > dl:last-child{
	background: none;
}
#footer-sitemap .wrap .sitemap > dl dt{
	font-weight: bold;
	font-size: 87.5%;
}
#footer-sitemap .wrap .sitemap > dl dd{
	font-size: 75%;
	margin-top: 10px;
}

/* ***************************************************************************** FOOTER
*/

#footer{
	font-size:75%;
	background: #c6c7c8;
	color:#fff;
	padding: 15px 0;
	font-weight: bold;
}
#footer a {
	color:#fff;
}
footer .wrap {
	width:950px;
	margin:0 auto;
	display: flex;
	justify-content: center;
}
footer .wrap .nav{
	margin-right: 10px;
	display: flex;
}

footer .wrap .nav li{
	margin-right: 5px;
}

footer .wrap .nav li a:after{
	content:none;
}


/* ***************************************************************************** FOOTER
*/

footer nav,
footer nav ul {
	list-style-type:none;
}
.footerNav {
	float:left;
}
.footerNav li  {
	float:left;
	margin-right:2em;
}

/* ***************************************************************************** PAGETOP
*/
.btn-pagetop{
	width: 950px;
	margin: 20px auto;
	text-align: right;
}
.btn-pagetop img{
	width: 44px;
}

/* ***************************************************************************** TOPICPATH
*/
#topicpath { background:url(../img/common/bg_topicpath_base.png) repeat left top scroll transparent; height:30px; }
#topicpath ul {width: 950px; margin: 0 auto;}
#topicpath ul li { float:left; margin:0; height:30px;font-size:90%; }
#topicpath ul li > a { display:inline-block; padding:7px 13px 0 10px; height:25px; box-sizing: content-box; text-decoration:none; background:url(../img/common/bg_topicpath.png) no-repeat left top scroll transparent; }
* html #topicpath ul li > a { padding:6px 13px 0 18px; height:24px; }
*+html #topicpath ul li > a { padding:6px 13px 0 18px; height:24px; }
#topicpath ul li > span { display:inline-block; padding:5px 20px 0 10px; height:25px; box-sizing: content-box; background:url(../img/common/bg_topicpath.png) no-repeat left center scroll transparent; }
* html #topicpath ul li > span { padding:6px 13px 0 10px; height:24px; }
*+html #topicpath ul li > span { padding:6px 13px 0 10px; height:24px; }

#topicpath ul.steadfast li > a.home ,
#topicpath ul li > a.home { display:block; width:42px; height:30px; padding:0; text-indent:-9999px; overflow:hidden; background:url(../img/common/bg_topicpath_home.png) no-repeat left top scroll transparent; }
#topicpath ul.steadfast li > span.home ,
#topicpath ul li > span.home { display:block; width:42px; height:30px; padding:0; text-indent:-9999px; overflow:hidden; /*background:url(../img/common/bg_topicpath_home_top.png) no-repeat left top scroll transparent; */}

#topicpath ul li:last-child:not(:first-child) { padding:0 0 0 9px; background:url(../img/common/bg_topicpath_last_arrow.png) no-repeat left top scroll transparent; }
#topicpath ul.steadfast li.last-child.home ,
#topicpath ul li:last-child.home { padding:0 9px 0 0; background-image:url(../img/common/bg_topicpath_home_arrow.png); background-position:right top; }
#topicpath ul.steadfast li.last-child.home > a.home ,
#topicpath ul li:last-child:first-child > a.home { background:url(../img/common/bg_topicpath_home.png) no-repeat right top scroll transparent; }
#topicpath ul li:last-child > a { background:url(../img/common/bg_topicpath_last.png) no-repeat right top scroll transparent; }

#topicpath ul li > a:link    { color:#333333; text-decoration:none; }
#topicpath ul li > a:visited { color:#333333; text-decoration:none; }
#topicpath ul li > a:active  { color:#333333; text-decoration:none; }
#topicpath ul li > a:hover   { color:#333333; text-decoration:underline; }

/* for nojs */
#topicpath ul li > span ,
#topicpath ul li > a { width:120px; overflow:hidden; }
* html #topicpath ul li > span ,
* html #topicpath ul li > a { width:auto; overflow:auto; }

#topicpath ul.steadfast li > span ,
#topicpath ul.steadfast li > a { width:auto; overflow:auto; }




@media screen and (min-width: 768px)  {
	.disp_sp {
		display:none !important;
	}
}

/* -----------------------------------------------------------------------------
モバイル
----------------------------------------------------------------------------- */
@media screen and (max-width: 767px)  {

	body {
		min-width:none;
		min-width:initial;
		font-size:3.5vw;
	}

	.disp_pc {
		display:none !important;
	}
	
	img {
		max-width:100%;
		width:auto;
		max-height:100%;
		height:auto;
	}

/* ***************************************************************************** SPMENU
*/
	#btn_spmenu {
		display:block;
		background-color:#fff;
		border:solid 1px #fff;
		width:6.6vw;
		height:6.6vw;
		position:absolute;
		top:3vw;
		right:5.3vw;
		z-index:200;
		cursor:pointer;
	}
	.icon-animation {
		width: 100%;
		height: 100%;
		display: block;
		position: relative;
	}
	.icon-animation span {
		width: 6.6vw;
		height: 3px;
		display: block;
		background: #1b1b1b;
		position: absolute;
		left: 50%;
		top: calc(50% - 1.5px);
		margin-left: -3.3vw; 
	}
	.icon-animation span {
		-webkit-transition: all 0.3s;
		transition: all 0.3s; 
	}
	.icon-animation .top {
		-webkit-transform: translateY(-2.3vw) scale(1);
		-ms-transform: translateY(-2.3vw) scale(1);
		transform: translateY(-2.3vw) scale(1); 
	}
	.icon-animation .middle {
		background: none;
		position: relative; 
	}
	.icon-animation .middle:before, .icon-animation .middle:after {
		-webkit-transition: all 0.3s;
		transition: all 0.3s;
		content: "";
		width: 6.6vw;
		height: 3px;
		background: #1b1b1b;
		display: block;
		-webkit-transform: rotate(0deg);
		-ms-transform: rotate(0deg);
		transform: rotate(0deg);
	    position: absolute; 
	   }

	.icon-animation .bottom {
		-webkit-transform: translateY(2.3vw) scale(1);
		-ms-transform: translateY(2.3vw) scale(1);
		transform: translateY(2.3vw) scale(1); 
	}

	body.spmenu_opened .icon-animation .top {
		-webkit-transform: translateY(0px) scale(0);
		-ms-transform: translateY(0px) scale(0);
		transform: translateY(0px) scale(0); 
	}

	body.spmenu_opened .icon-animation .bottom {
		-webkit-transform: translateY(0px) scale(0);
		-ms-transform: translateY(0px) scale(0);
		transform: translateY(0px) scale(0); 
	}

	body.spmenu_opened .icon-animation .middle:before {
		-webkit-transform: rotate(45deg) scaleX(1.4142);;
		-ms-transform: rotate(45deg) scaleX(1.4142);;
		transform: rotate(45deg) scaleX(1.4142);; 
	}

	body.spmenu_opened .icon-animation .middle:after {
		-webkit-transform: rotate(-45deg) scaleX(1.4142);
		-ms-transform: rotate(-45deg) scaleX(1.4142);
		transform: rotate(-45deg) scaleX(1.4142); 
	}

/* ***************************************************************************** SPMENU
*/
	#header {
		position:relative;
		top:0;
		left:0;
		width:100%;
		background-color:#fff;
		border-bottom:none;
		font-size:100%;
		min-height:initial;
	}
	#header .wrap {
		padding:0;
		width:100%;
	}
	header .utility {
		width:90%;
		margin-left:auto;
		margin-right:auto;
	}
	header .utility .ci {
		margin-top:4.5vw;
	}
	header .utility .ci img{
		width:34vw;
	}
	header .utility .ci h1 {
		font-size: 2.4vw;
	}
	header .wrap .utility {
		height:13.333vw;
		min-height:none;
		min-height:initial;
	}
	header .utility .group-ci,
	header .utility .nav.other-website {
		display:none;
	}
	header .utility .searchBox {
		top:3.5vw;
		right:12vw;
		bottom:auto;
		display:none;
	}
	header .utility .searchBox .searchBox_txtbox {
		width:30vw;
		height:4vw;
		padding:1vw 1vw;
		margin-right:1vw;
		font-size:100%;
	}
	header .utility .searchBox .searchBox_submit {
		height:6vw;
	}
	#header #btn_spsearch{
		position: absolute;
		width: 6.6vw;
		top: 3vw;
		right: 18vw;
		z-index: 200;
	}


/* ***************************************************************************** NAVI
*/
	.global-nav {
		position:absolute;
		top:13.333vw;
		top:calc(13.333vw + 2px);
		left:0;
		width:0%;
		overflow:hidden;
		text-align:left;
		margin-bottom:0px;
		transition-property:width;
		transition-duration:0.5s;
		background-color:#fff;
		z-index:99999;
		letter-spacing:0.1em;
	}
	.spmenu_opened .global-nav {
		width:100%;
	}
	.global-nav_mainnav {
		display:block;
		width:100vw;
	}
	.global-nav_mainnav a,
	.global-nav_mainnav span{
		display:block;
	}
	.global-nav_mainnav > li{
		position:relative;
		float:none;
		text-align: left;
	}
	.global-nav_mainnav > li > a {
		background:url(../img/common/arrow_right2.png) 95% center no-repeat;
		background-size:13px 13px;
	}/*
	.global-nav_mainnav > li.opened > a {
		background:url(/common/images/arrow_bottom2.png) 95% center no-repeat;
		background-size:13px 13px;
	}*/
	.global-nav_mainnav > li.global-nav_mainnav-contact {
		background:#bbb;
		text-align:center;
	}
	.global-nav_mainnav > li.global-nav_mainnav-contact a{
		background-image:none;
		color:#fff;
	}
	.global-nav_mainnav > li.global-nav_mainnav-contact span{
		display:inline-block;
		background:url(../img/common/arrow_right2_w.png) right center no-repeat;
		background-size:9px 9px;
		padding-right:2em;
	}
	.global-nav_mainnav > li > a ,
	.global-nav_mainnav > li.current > a ,
	.global-nav_mainnav > li:hover > a {
		padding:1.5em 0em 1.5em 5.33vw;
		border-bottom:solid 1px #c9c9c9;
	}
	.global-nav_mainnav > li > a > span{
		padding:0px;
		border-right:none;
	}
	.global-nav_mainnav > li:first-child > a > span{
		border-left:none;
	}
	.global-nav_mainnav .children{
		position: static;
		box-shadow: none;
		border-top: none;
		border-bottom: 1px solid #DDD;
	}
	.global-nav_mainnav .children{
		padding: .5em 0;
		display: block !important;
	}
	.global-nav_mainnav .children li{
		border: none;
	}
	.global-nav_mainnav .children li a{
		padding-left: 2.5em;
	}
	.global-nav_mainnav .children li a:hover{
		color: inherit;
		background: none;
	}
	.global-nav_subnav {
		position:static;
		width:100%;
		top:auto;
		left:auto;
		border:none;
		font-size:85.7%;
		text-align:left;
		line-height:1.33;
		display:none;
		box-shadow:none;
	}
	.global-nav_subnav > li {
		border-bottom:none;
		background:none;
	}
	.global-nav_subnav > li.current {
		border-bottom:none;
		background:none;
	}
	.global-nav_subnav > li.current a{
		color:#fff;
	}
	.global-nav_subnav > li > a {
		display:block;
		width:100%;
		height:auto;
		padding:1.0em 0 1.0em 7vw;
	}
	.global-nav_subnav > li > a br {
		display:none;
	}
	.global-nav_subnav > li > a > span{
		display:table-cell;
		vertical-align:middle;
		padding:0 14px;
	}
	.global-nav  a[target="_blank"] span {
		padding-right:0px;
	}
	.global-nav  a[target="_blank"] span:after {
		display:inline-block;
		position:static;
		margin-left:0.2em;
		top:auto;
		right:auto;
	}
	.section.figure.figure-full {
		width:111.1111%;
		margin-left:-5.5555%;
	}
	.section .columnTwo .columnItem,
	.section .columnThree .columnItem{
		width:100%;
		margin-right:0%;
		float:none;
		margin-bottom:1.5em;
	}
	.columnItem_figure {
		margin-bottom:0.1em;
	}


/* ***************************************************************************** VISUAL
*/
	.main-visual{
		border-bottom-width: 3px;
	}
	
	.main-visual .path{
		width: auto;
		margin: 15px 20px;
	}
	.main-visual .path ul{
		margin-left: 0;
	}
	.main-visual .page-tit{
		width: auto;
		margin: 0 auto 15px;
	}
	.main-visual .page-tit__bg{
		width: auto;
		margin: 0;
		padding: 20px;
	}
	.main-visual .page-tit__box{
		background: rgba(255,255,255,.85);
		padding: 20px;
		min-height: 214px;
	}
	.main-visual .page-tit__tit{
		margin-bottom: 15px;
		font-size: 193%;
	}


/* ***************************************************************************** CONTENTS
*/

	#contents{
		width: auto !important;
		margin: 40px 20px;
	}
	
	.sec{
		margin: 40px 0;
	}

	.sec .sec__tit{
		letter-spacing: inherit;
		margin-bottom: 30px;
	}
	.sub-sec{
		padding: 0 20px;
	}
	.sub-sec .sub-sec__tit{
		padding: 0 20px 10px;
		margin: 0 -20px 20px;
		font-size: 143%;
	}
	.sub-sec .sub-sec__tit:after{
		left: calc(20px - 0.2em);
	}
	.sub-sec .img-col2,
	.sub-sec .img-col3{
		display: block;
	}
	.sub-sec .img-col2:first-child,
	.sub-sec__tit + .img-col2,
	.sub-sec .img-col3:first-child,
	.sub-sec__tit + .img-col3{
		margin-top: -20px;
	}
	.sub-sec .img-col2 > figure,
	.sub-sec .img-col2 > div,
	.sub-sec .img-col3 > figure,
	.sub-sec .img-col3 > div{
		width: auto !important;
		margin-top: 30px;
	}
	.sub-sec .img-col2 > .portrait > img{
		width: auto;
	}
	.sub-contents-list ul{
		display: block;
		margin: 0 !important;
	}
	.sub-contents-list ul li{
		width: auto !important;
		text-align: center;
		border-bottom: 1px solid #d32f2e;
		margin: 50px 0 0 0;
	}
	.sub-contents-list ul li:first-child{
		margin-top: 0;
	}
	.sub-contents-list ul li .sub-contents-list__tit{
		text-align: left;
	}
	.base-table,
	.base-table tbody,
	.base-table tr,
	.base-table th,
	.base-table td{
		display: block;
	}
	.base-table th{
		width: auto;
		text-align: center;
		border-bottom: none;
	}
	.base-table td{
		padding: 25px 30px;
		border-bottom: none;
	}
	.base-table tr:last-child td{
		border-bottom: 1px solid #848484;
	}

/* ***************************************************************************** LOCALMENU
*/
.localMenu {
	display:none;
}
	body.menu_fixed .mainContents .localMenu.localMenu-fixed .localMemu_wrapper {
		top:0px;
	}


	/* ***************************************************************************** SOCIAL
	*/
	
	.social-buttons{
		width: auto;
		justify-content: center;
	}


	/* ***************************************************************************** PAGETOP
	*/
	
	.btn-pagetop{
		width: auto;
		padding-right: 24px;
	}

	/* ***************************************************************************** TOPIC PATH
	*/
	
	#topicpath{
		display: none;
	}


	/* ***************************************************************************** FOOTER SITEMAP
	*/
	
	#footer-sitemap{
		border-top: 12px solid #b3b3b5;
	}
	#footer-sitemap .wrap {
		width: auto;
		margin: 0 auto;
		padding-top: 0;
	}
	#footer-sitemap .wrap .sitemap{
		display: block;
	}
	#footer-sitemap .wrap .sitemap > dl{
		padding: 0;
		background: none;
	}
	#footer-sitemap .wrap .sitemap > dl dt{
		font-size: 100%;
		border-bottom: 1px solid #b5b5b7;
		margin: 0 !important;
	}
	#footer-sitemap .wrap .sitemap > dl dt a{
		padding: 15px 15px 15px 60px;
		background: url("../img/home/f_arrow.png") no-repeat 28px center / 16px 16px;
		display: block;
	}
	#footer-sitemap .wrap .sitemap > dl dd{
		display: none;
	}

	#footer {
		background: #cfd0d1;
		padding: 0;
	}
	#footer .wrap {
		width: auto;
		display: block;
	}
	#footer .wrap .nav{
		display: block;
		margin: 0 15px;
	}
	#footer .wrap .nav li{
		font-size: 120%;
		margin: 0 0 15px;
	}
	#footer .wrap .nav a{
		color: #1b1b1b;
	}
	#footer .wrap .copyright{
		font-size: 120%;
		background: #c6c7c8;
		text-align: center;
		padding: 15px 0;
	}

}

@media screen and (orientation: landscape) and (max-width: 767px){
	body {
		font-size:2.7vw;
	}
}
































/* -----------------------------------------------------------------------------
モバイル
----------------------------------------------------------------------------- */
@media screen and (max-width: 767px)  {
	.bnr_hatanavi {
		position:fixed;
		top:auto;
		bottom:0;
		left:0;
		right:auto;
		width:100%;
		height:13.33vw;
		overflow:hidden;
	}
	.bnr_hatanavi img{
		width:100%;
		vertical-align:bottom;
	}
	.bnr_hatanavi a{
		margin-bottom:0px;
		transition-duration:0.3s;
		transition-property:margin-top;
	}
	body.reached_bottom .bnr_hatanavi a{
		margin-top:13.33vw;
	}
	body.reached_bottom .btnPagetop {
		z-index:100;
	}
}
