@charset "utf-8";
/* CSS Document */

/*---------------------------------------------------------------------*/
/*---import---*/

@import url("./set.css");
@import url("./common.css");
@import url("./parts.css");

/*---body_container-------------------------------------------------------------*/

div#body_container{
position:relative;
width:100%;
min-width: 900px;
max-width: 1600px;
min-height:100%;
overflow:hidden;
padding-top: 110px;
margin: 0 auto;
}

a#smp_menu,
.pc_dn{
	display:none;
}

/*----------------------------------------------------------------*/
/*---header-------------------------------------------------------------*/

header{
	z-index:12000;
	position: fixed;top:0;left:0;
width:100%;
min-width: 1150px;
}

header h1{
	width: 120px;
}

header h1 img{
	width: 100%;
}

/*----------------------------------------------------------------*/
/*---header_container-------------------------------------------------------------*/

header div#header_container{
	position: relative;
	width: 100%;
height:110px;
background-color: rgba(255,255,255,1.0);
padding: 0 40px;

display: -webkit-flex;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
-ms-flex-line-pack: center;
align-content: center;
}

/*----------------------------------------------------------------*/
/*---menu_container-------------------------------------------------------------*/

header div#menu_container{
	width: 100%;

	display: -webkit-flex;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-line-pack: center;
	align-content: center;
}

a.mm_contact{
	width: 190px;
	height: 40px;
	background-color: #21415d;
	background-size: 16px;
	background-image:url(../img/common/icon/mail_wh.svg);
	background-position: left 24px center;
	color: #ffffff;
	font-size: 13px;
	font-weight: 400;
	text-align: center;
	letter-spacing: 0.1em;
	padding-left: 35px;

	display: -webkit-flex;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-ms-flex-line-pack: center;
	align-content: center;
}
a.mm_contact:hover{
background-color: #245179;
}

header div#menu_container a.mm_contact{
margin-left: 0;
}

/*----------------------------------------------------------------*/
/*---sns_ic_list-------------------------------------------------------------*/

header ul.sns_ic_list{
margin-left: auto;
margin-right: 20px;

display: -webkit-flex;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
-ms-flex-line-pack: center;
align-content: center;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
}
header ul.sns_ic_list li{
	width: 42px;
	height: 42px;
}
header ul.sns_ic_list li a{
}

/*----------------------------------------------------------------*/
/*---sub_menu-------------------------------------------------------------*/

div#menu_container ul.sub_menu{
}

/*----------------------------------------------------------------*/
/*---main_menu-------------------------------------------------------------*/

div#menu_container ul.main_menu{
	margin-top: 5px;
	margin-left: 40px;

	display: -webkit-flex;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}
div#menu_container ul.main_menu  li{
}
div#menu_container ul.main_menu  li a{
	height:100%;
}
div#menu_container ul.main_menu li.active > a,
div#menu_container ul.main_menu li a:hover{
	color:#21415d;
}

div#menu_container ul.main_menu > li{
	position: relative;
	height: 100%;

	display: -webkit-flex;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-line-pack: center;
	align-content: center;
}
div#menu_container ul.main_menu > li::after{
	position: relative;top:-1px;
	content: '/';
	font-size:12px;
	margin:0 22px;
}
div#menu_container ul.main_menu > li:last-child::after{
	content: '';
	width: 0;
	margin: 0;
}

div#menu_container ul.main_menu > li > a{
	color:#292929;
	font-size:13.5px;
font-weight:500;
line-height: 1.0em;
letter-spacing: 0.05em;
}

/*----------------------------------------------------------------*/

div#menu_container ul.main_menu > li div{
	position:absolute;top:40px;left:50%;
	width:180px;
	display:none;
	margin-left:-90px;
}

div#menu_container ul.main_menu > li ul{
background-color:rgba(0,0,0,0.8);
}
div#menu_container ul.main_menu > li ul li{
}

div#menu_container ul.main_menu > li ul li a{
	min-height: 46px;
	color:#ffffff;
	font-size:11px;
	line-height: 1.6em;
	letter-spacing: 0.05em;
	text-align:center;
	padding:10px 3px;
	border-bottom:1px rgba(255,255,255,0.1) solid;

	display: -webkit-flex;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-ms-flex-line-pack: center;
	align-content: center;
}
div#menu_container ul.main_menu > li ul li:last-child a{
	border-bottom:none;
}
div#menu_container ul.main_menu div a:hover{
	color:#ffffff;
	background-color:rgba(255,255,255,0.4);
}
div#menu_container ul.main_menu > li ul li a span.txt1{
	width: 100%;
	font-size: 12px;
	text-align: center;
	display: block;
	margin-bottom: 3px;
}

/*----------------------------------------------------------------*/
/*---contents_container-------------------------------------------------------------*/

div#contents_container{
	position:relative;
	width: 1100px;
	padding-top: 40px;
	padding-bottom: 440px;
	margin:0 auto;

display: -webkit-flex;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
}

/*---contents_left-------------------------------------------------------------*/

div#contents_left{
	padding-right: 60px;

-webkit-flex: 1;
flex: 1;
}

/*---contents_right-------------------------------------------------------------*/

div#contents_right{
	width:250px;
}

/*----------------------------------------------------------------*/
/*---footer-------------------------------------------------------------*/

footer{
	position: absolute;bottom:0;left:0;
width:100%;
max-width: 1600px;
height: 360px;
background-color:#212121;
padding: 0 60px;

display: -webkit-flex;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
-ms-flex-line-pack: center;
align-content: center;
}

div#footer_container{
position:relative;
width: 100%;
padding-bottom: 30px;
margin:0 auto;

display: -webkit-flex;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
}
div#footer_container *{
color: #ffffff;
}

div#footer_container div.left{
	width: 50%;

	display: -webkit-flex;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-line-pack: center;
	align-content: center;
}
div#footer_container div.right{
	width: 310px;
}

/*---left-------------------------------------------------------------*/

div#footer_container div.left ul.main_menu{
	width: 100%;
	margin-bottom: 25px;

	display: -webkit-flex;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-line-pack: center;
	align-content: center;
}
div#footer_container div.left ul.main_menu li{
	width: 33.33%;
	padding-right: 20px;
}
div#footer_container div.left ul.main_menu li a{
	font-size: 13px;
	padding: 10px 4px;
border-bottom: 1px rgba(255,255,255,0.1) dashed;
}
div#footer_container div.left ul.main_menu li{
}
div#footer_container div.left ul.main_menu li div{
	display: none;
}

/*---mm_contact-------------------------------------------------------------*/

div#footer_container div.left a.mm_contact{
	background-color: transparent;
	margin-left: 30px;
	border: 1px #ffffff solid;
}

/*----------------------------------------------------------------*/
/*---mm_contact-------------------------------------------------------------*/

div#footer_container div.left ul.sns_ic_list{

display: -webkit-flex;
display: flex;
}
div#footer_container div.left ul.sns_ic_list li{
	width: 42px;
	height: 42px;
}
div#footer_container div.left ul.sns_ic_list li a{
}

div#footer_container #sn_inst a{background-image:url(../img/common/icon/sn_inst_wh.svg);}
div#footer_container #sn_fb a{background-image:url(../img/common/icon/sn_fb_wh.svg);}
div#footer_container #sn_tw a{background-image:url(../img/common/icon/sn_tw_wh.svg);}

/*---right-------------------------------------------------------------*/

div#footer_container div.right a.ft_logo{
	margin-bottom: 20px;
}
div#footer_container div.right a.ft_logo img{
	width: 140px;
}

div#footer_container div.right > b{
	margin-bottom: 10px;
}

div#footer_container div.right > ul{
	margin-bottom: 10px;
}
div#footer_container div.right > ul li{
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 11px;
	padding: 8px 4px;
	border-bottom: 1px rgba(255,255,255,0.1) solid;

	display: -webkit-flex;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-line-pack: center;
	align-content: center;
-webkit-align-items: baseline;
-ms-flex-align: baseline;
align-items: baseline;
}
div#footer_container div.right > ul li a,
div#footer_container div.right > ul li span{
	font: inherit;
}
div#footer_container div.right > ul li:last-child span{
}

/*----------------------------------------------------------------*/
/*---copyright-------------------------------------------------------------*/

div#copyright{
position:absolute;bottom:0;left:0;
width:100%;
height: 44px;
background-color:rgba(255,255,255,0.03);
color:#ffffff;
font-size:11px;
font-weight:400;
font-family: 'Roboto Condensed', sans-serif;
letter-spacing: 0.05em;
padding-top: 3px;

display: -webkit-flex;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
}
