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

@import url("https://use.typekit.net/zue2tov.css");

html,body{
	font-family:Helvetica, 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	height:100%;
	margin:0;
	padding:0;
	font-size:16px;
	line-height:30px;
	color:#4c4c4c;
}
ul,ol,li,dl,dt,dd,p,strong{
	list-style:none;
	margin:0;
	padding:0;
}
h1,h2,h3,h4,h5,h6{
	margin:0;
	padding:0;
	font-size:1em;
	line-height:100%;
	font-weight:normal;
}

img{
	border:none;
}
a{
	color:#000;
	text-decoration:none;
}

@media screen and (max-width:750px){
}

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

  共通設定

--------------------------------------------------*/
#mainframe{
	width:100%;
	height:100%;
	height:-webkit-calc(100% - 60px);
	height:calc(100% - 60px);
	padding-top:60px;
	z-index:1;
}

#contents{
	width:960px;
	margin:0 auto;
	padding-top:150px;
	padding-bottom:160px;
}

#contents h2{
	display:block;
	width:100%;
	border-bottom:#4c4c4c dotted 1px;
/*	font-size:40px;*/
	font-size:42px;
	font-weight:300;
	line-height:70px;
	text-align:center;
	color:#e60012;
}

.anchor{
	margin-top:-140px;
	padding-top:140px;
}

.pc{
	display:block;
}
.sp{
	display:none;
}


#contents h2,
#mainNavi li,
#footer #logo,
.smaccount,
#footer ul.linklist,
#Copyright,
#version{
	font-family:futura-pt, Helvetica, 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}


@media screen and (max-width:1023px){
#contents{
	width:94%;
	padding-bottom:30%;
}
}

@media screen and (max-width:750px){
#mainframe{
	padding-top:80px;
}

#contents{
	padding-top:20%;
}

.anchor{
	margin-top:-180px;
	padding-top:180px;
}

.pc{
	display:none;
}
.sp{
	display:block;
}

}



/* ヘッダー
--------------------------------------------------*/
#header{
	position:fixed;
	left:0; top:0;
	width:100%;
	height:60px;
	background:#e60012;
	z-index:10;
}
#headerIn{
	width:1200px;
	margin:0 auto;
}
#header #logo{
	position:absolute;
	left:2.6667%; top:16px;
}


#mainNavi{
	display:block;
	width:auto;
	height:60px;
	padding:0 10%;
	text-align:center;
}
#spclose{
	display:none;
	opacity:0;
	-webkit-transition:all 0.3s ease;
	transition:all 0.3s ease;
	cursor:pointer;
}
#spclose.on{
	display:block;
	opacity:1;
}

#mainNavi li{
	display:inline-block;
	padding:0;
	margin:0 4.75%;
/*	font-size:18px;*/
	font-size:20px;
	line-height:60px;
	cursor:pointer;
}
#mainNavi li a,
#mainNavi li strong{
	display:block;	
	padding:0;
	color:#FFFFFF;
	-webkit-transition:color 0.3s ease;
	transition:color 0.3s ease;
}
#mainNavi li strong{
	position:relative;
	font-weight:normal;
}

#mainNavi li.on a,
#mainNavi li:hover a,
#mainNavi li.on strong,
#mainNavi li:hover strong{
	color:rgba(255,255,255,0.50);
}



#mainNavi li .subNavi{
	overflow:hidden;
	position:absolute;
	left:0; top:60px;
	background:rgba(217,217,217,0.50);
	width:100%;
	height:0px;
	text-align:center;
	opacity:0;
	-webkit-transition:all 0.3s ease;
	transition:all 0.3s ease;
	cursor:default;
}
#mainNavi li.on .subNavi{
	height:60px;
	opacity:1;
}
#mainNavi li .subNavi li{
	display:inline-block;
	overflow:hidden;
	float:none;
	height:0;
	margin:0 2%;
	padding:0;
	opacity:0;
	-webkit-transition:all 0.3s ease;
	transition:all 0.3s ease;
}
#mainNavi li.on .subNavi li{
	height:auto;
	opacity:1;
}
#mainNavi li .subNavi li a{
	color:#4c4c4c;
}
#mainNavi li .subNavi li a.on,
#mainNavi li .subNavi li a:hover{
	color:#e60012;
}



@media screen and (min-width:751px){
#mainNavi li strong:after,
#mainNavi li .subNavi li a:after{
	content:"";
	display:block;
	position:absolute;
	bottom:18px;
	left:50%; right:50%;
	height:1px;
	background-color:transparent;
	-webkit-transition:all 0.3s ease;
	transition:all 0.3s ease;
}
#mainNavi li.on strong:after,
#mainNavi li:hover strong:after{
	content:"";
	left:0%; right:0%;
	background-color:#FFFFFF;
}

#mainNavi li .subNavi li a.on,
#mainNavi li .subNavi li a:hover{
	color:#e60012;
}


}


#language{
	position:absolute;
	right:2.5%; top:22px;
	font-size:14px;
	line-height:16px;
	color:rgba(255,255,255,1);
}
#language span,
#language a{
	color:rgba(255,255,255,0.5);
}
#language a:hover{
	color:rgba(255,255,255,1);
}

@media screen and (max-width:1199px){
#headerIn{
	width:100%;
}
}

@media screen and (max-width:750px){
#header{
	height:80px;
}
#header #logo{
/*	left:3.2%;
	margin-top:20px;
	width:46px;
	height:40px;*/
	left:4%; top:0;
	background:url(../images/hd_logo_sp.png) 0 0 no-repeat;
	background-size:100% auto;
	margin-top:24px;
	width:36px;
	height:32px;
}
#header #logo a{
	display:block;
	width:36px;
	height:32px;
}
#header #logo img{
	display:none;
}


#mainNavi{
	height:60px;
	padding:20px 0 0 14%;
}
.spclose{
	overflow:hidden;
	position:absolute;
	right:4%; top:70px;
	width:0px;
	height:0px;
	z-index:9;
	opacity:0;
	-webkit-transition:opacity 0.3s ease 0.4s;
	transition:opacity 0.3s ease 0.4s;
}
.spclose:before,
.spclose:after{
	content:"";
	overflow:hidden;
	position:absolute;
	left:5px; top:26px;
	border-top:#4d4d4d solid 2px;
	width:42px;
	height:1px;
}
.spclose.on:before{
	-webkit-transform:rotate(45deg);
	transform:rotate(45deg);
}
.spclose.on:after{
	-webkit-transform:rotate(-45deg);
	transform:rotate(-45deg);
}
.spclose.on{
	display:block;
	top:95px;
	width:52px;
	height:52px;
	opacity:1;
}

#mainNavi li{
	display:inline-block;
	background:center top no-repeat;
	background-size:30px auto;
	margin:0 1.5%;
	font-size:14px;
	line-height:20px;
	cursor:pointer;
}
#mainNavi li.navi:nth-child(1){background-image:url(../images/navi_icon_aboutus.png);}
#mainNavi li.navi:nth-child(2){background-image:url(../images/navi_icon_access.png);}
#mainNavi li.navi:nth-child(3){background-image:url(../images/navi_icon_ourbusiness.png);}
#mainNavi li.navi:nth-child(4){background-image:url(../images/navi_icon_recruit.png);}
#mainNavi li.navi:last-child{background-image:url(../images/navi_icon_contact.png);}

#mainNavi li.navi.on:nth-child(1){background-image:url(../images/navi_icon_aboutus_on.png);}
#mainNavi li.navi.on:nth-child(2){background-image:url(../images/navi_icon_access_on.png);}
#mainNavi li.navi.on:nth-child(3){background-image:url(../images/navi_icon_ourbusiness_on.png);}
#mainNavi li.navi.on:nth-child(4){background-image:url(../images/navi_icon_recruit_on.png);}
#mainNavi li.navi.on:last-child{background-image:url(../images/navi_icon_contact_on.png);}


#mainNavi li.navi strong,
#mainNavi li.navi a{
	padding-top:30px;
}
#mainNavi li .subNavi{
	top:80px;
	background:rgba(217,217,217,0.90);
}
#mainNavi li.on .subNavi{
	height:auto;
	padding:80px 0 1px;
}

#mainNavi li .subNavi li{
	display:block;
	overflow:hidden;
	position:relative;
	float:none;
	border-bottom:#4c4c4c dotted 1px;
	padding-left:16px;
	margin:0 2%;
	font-size:24px;
	line-height:79px;
	text-align:left;
}
#mainNavi li .subNavi li:last-child{
	border:none;
}

#mainNavi li .subNavi li a{
	padding-top:0;
}
#mainNavi li .subNavi li a:after{
	content:"";
	display:block;
	position:absolute;
	right:19px; top:28px;
	background:url(../images/btnicon_sp.png) 0 0 no-repeat;
	width:15px;
	height:24px;
}

#language{
	display:none;
}


/*---------------------------------------- 19/09/16 -*/

#mainNavi li.on a,
#mainNavi li:hover a,
#mainNavi li.on strong,
#mainNavi li:hover strong{
	color:#FFFFFF;
}

.spclose{
	right:4%; top:17px;
	width:44px;
	height:44px;
	opacity:1;
	
}
.spclose.on{
	display:block;
	top:15px;
	width:44px;
	height:44px;
	opacity:1;
}

.spclose:before,
.spclose:after{
	left:5px; top:26px;
	width:34px;
	height:1px;
	-webkit-transform:rotate(0deg);
	transform:rotate(0deg);
	-webkit-transition:height 0.3s 0.3s ease, top 0.3s 0.3s ease, border-bottom 0.1s 0.3s ease, transform 0.3s ease;
	transition:height 0.3s 0.3s ease, top 0.3s 0.3s ease, border-bottom 0.1s 0.3s ease, transform 0.3s ease;
}
.spclose:before{
	top:9px;
	height:10px;
	border-top:#FFFFFF solid 2px;
	border-bottom:#FFFFFF solid 2px;
}
.spclose:after{
	top:33px;
	border-top:#FFFFFF solid 2px;
}

.spclose.on:before,
.spclose.on:after{
	left:5px; top:20px;
	height:0;
	border-top:#FFFFFF solid 2px;
	-webkit-transition:height 0.3s ease, top 0.3s ease, border-bottom 0.3s ease, transform 0.3s 0.3s ease;
	transition:height 0.3s ease, top 0.3s ease, border-bottom 0.3s ease, transform 0.3s 0.3s ease;
}
.spclose.on:before{
	border-bottom:#FFFFFF solid 0px;
}


#mainNavi{
	overflow:hidden;
	display:block;
	height:0px;
	background:#e60012;
	margin-top:70px;
	-webkit-transition:all 0.3s ease;
	transition:all 0.3s ease;
	padding:0 5%;
}
#mainNavi.on{
	overflow:hidden;
	overflow-y:scroll;
	display:block;
	height:calc(100vh - 100px);
	padding:10px 5%;
	margin-top:80px;
}
#mainNavi li{
	display:block;
	background:left 7px no-repeat;
	margin:0;
	font-size:21px;
	line-height:26px;
}

#mainNavi li.navi{
	background-size: 40px auto;
	margin:0 0 30px;
}
#mainNavi li.navi strong{
	padding-top:15px;
	padding-bottom:15px;
	padding-left:48px;
	text-align:left;
	cursor:pointer;
}

#mainNavi li .subNavi{
	display:none;
	position:relative;
	top:0;
	background:rgba(255,255,255,0.90);
	height:auto;
	opacity:1;
	-webkit-transition:none;
	transition:none;
}
#mainNavi li .subNavi,
#mainNavi li.on .subNavi{
	padding:1px 0;
}
#mainNavi li .subNavi li{
	line-height: 79px;
	opacity:1;
	-webkit-transition:all 0.3s ease;
	transition:all 0.3s ease;
	height:auto;
}
#mainNavi li.on .subNavi li{
}


/* 3button */
/*
#mainNavi li{
	margin:0 4%;
}
 */

}

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

#header #logo{
}

#header #logo a{
	display:block;
	width:36px;
	height:32px;
}
/*
#mainNavi li.navi{
	margin:0 1%;
}
*/
}
@media screen and (max-width:360px){

/*
#mainNavi li.navi{
	font-size:13px;
}
*/
}
@media screen and (max-width:340px){
#header #logo{
	left:3%;
}
/*
#mainNavi li.navi{
	margin:0 1%;
	font-size:12px;
}
*/

}

/*
@media screen and (max-width:320px){
#mainNavi li.navi{
	margin:0 3%;
}
}


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

#mainNavi li.navi{
	font-size:13px;
}
}
@media screen and (max-width:340px){
#header #logo{
	left:3%;
}

#mainNavi li.navi{
	margin:0 1%;
	font-size:12px;
}

}
*/

/* 5button
@media screen and (max-width:680px){
#mainNavi li.navi{
	margin:0 3%;
}
}
@media screen and (max-width:570px){
#mainNavi li.navi{
	margin:0 2%;
}
}
@media screen and (max-width:500px){
#mainNavi li.navi{
	margin:0 1%;
}
}
@media screen and (max-width:460px){
#header #logo{
	background-size:40px auto;
	margin-top:23px;
	width:40px;
	height:40px;
}
#mainNavi li.navi{
	margin:0 2%;
	font-size:14px;
}
}
@media screen and (max-width:440px){
#mainNavi li.navi{
	margin:0 1%;
}
}
@media screen and (max-width:400px){

#header #logo{
	left:3.2%;
	background-size:36px auto;
	margin-top:25px;
	width:36px;
	height:35px;
}

#mainNavi{
	padding-top:15px;
}
#mainNavi li.navi{
	margin:0 2%;
	background-size:30px auto;
	padding-top:30px;
	font-size:12px;
}
}
@media screen and (max-width:380px){

#mainNavi li.navi{
	margin:0 1.5%;
}
}
@media screen and (max-width:370px){

#mainNavi li.navi{
	margin:0 1%;
}
}
@media screen and (max-width:355px){

#mainNavi li.navi{
	margin:0 0.5%;
	font-size:12px;
}
}
@media screen and (max-width:340px){

#mainNavi li.navi{
	margin:0 1%;
	font-size:11px;
}
}
*/

/* フッター
--------------------------------------------------*/
#footer{
	position:relative;
	background:#ececec;
}
#footer #footerIn{
	width:960px;
	margin:0 auto;
	padding:59px 32px 0;
	color:#4c4c4c;
}
#footer #logo{
	position:absolute;
	left:2.6667%; top:16px;
}
#footer #logo a.logoimg{
	position:absolute;
	left:0; top:0;
	display:block;
}
#footer #logo .breadcrumbs{
	padding-left:50px;
/*	font-size:18px;*/
	font-size:20px;
	line-height:30px;
}
#footer #logo .breadcrumbs span{
	display:inline-block;
	padding:0 12px;
}
#footer .gototop{
	position:absolute;
	right:2.6667%; top:16px;
}
#footer .gototop a.logoimg{
	position:absolute;
	left:t0; top:0;
	display:block;
}

.smaccount{
	border-top:#4c4c4c 1px dotted;
	margin:0 auto;
	padding:12px 0 10px 25px;
}
.smaccount:after{
	content:"";
	clear:both;
	display:block;
	width:100%;
	font-size:0;
	line-height:0;
}
.smaccount div{
	float:left;
/*	font-size:18px;*/
	font-size:20px;
	line-height:37px;
}
.smaccount .Facebook,
.smaccount .Twitter,
.smaccount .X-Twitter,
.smaccount .LINE,
.smaccount .Instagram{
/*	padding-left:105px;*/
	padding-left:76px;
}
.smaccount .Facebook a,
.smaccount .Twitter a,
.smaccount .X-Twitter a,
.smaccount .LINE a,
.smaccount .Instagram a{
	display:block;
	background:left center no-repeat;
	background-size:37px auto;
	padding-left:43px;
}
.smaccount .Facebook a{background-image:url(../images/icon_facebook.png);}
.smaccount .Twitter a{background-image:url(../images/icon_twitter.png);}
.smaccount .X-Twitter a{background-image:url(../images/icon_x-twitter.png);}
.smaccount .LINE a{background-image:url(../images/icon_line.png);}
.smaccount .Instagram a{background-image:url(../images/icon_instagram.png);}


#footer ul.linklist{
	display:block;
	border-top:#4c4c4c 1px dotted;
	border-bottom:#4c4c4c 1px dotted;
	padding:12px 0 12px 25px;
}
#footer ul.linklist:after{
	content:"";
	clear:both;
	display:block;
	width:100%;
	font-size:0;
	line-height:0;
}
#footer ul.linklist li{
	float:left;
	padding-right:100px;
	padding-bottom:23px;
}
#footer ul.linklist li:last-child{
	padding:0;
}
#footer ul.linklist dt{
	display:block;
/*	font-size:18px;*/
	font-size: 20px;
	line-height:37px;
}
#footer ul.linklist dd{
	display:block;
	padding-left:6px;
/*	font-size:14px;*/
	font-size: 16px;
	line-height:24px;
}
#footer ul.linklist dl a{
	display:block;
	text-decoration:none;
	color:#4c4c4c;
}
#footer ul.linklist dl a:hover{
	text-decoration:underline;
}


#footer .markset{
	text-align:left;
	border-bottom:#4c4c4c 1px dotted;
	padding:12px 0 2px 14px;
}
#footer .markset .mark{
	display:inline-block;
	font-size:11px;
	line-height:16px;
	text-align:center;
	margin:0 10px 10px;
}
#footer .markset .mark .text{
	margin-top:4px;
}
#footer .markset .mark:nth-child(1) .text{
	padding-top:4px;
}
#footer .markset .mark:nth-child(2) .text{
	padding-top:6px;
}
#footer .markset .mark:nth-child(4) .text{
	padding-top:4px;
}


#Copyright{
	padding:20px 0;
	text-align:center;
/*	font-size:14px;*/
	line-height:20px;
}
#Copyright br{
	display:none;
}

@media screen and (max-width:1023px){
#footer #footerIn{
	width:auto;
	margin:0 auto;
	padding:59px 32px 0;
	color:#4c4c4c;
}
.smaccount .Facebook,
.smaccount .Twitter,
.smaccount .X-Twitter,
.smaccount .LINE,
.smaccount .Instagram{
	padding-left:7%;
}
}

@media screen and (max-width:950px){
.smaccount .sma_title{
	float:none;
}
.smaccount .sma_title{
	float:none;
}
.smaccount .Facebook{
	padding-left:0;
}
}

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

.smaccount{
	padding:20px 0 20px 15px;
}

#footer #logo{
	background:url(../images/ft_logo_sp.png) 0 0 no-repeat;
	background-size:34px auto;
	min-height:30px;
}

#footer #logo img{
	display:none;
}

#footer #logo a.logoimg{
	width:36px;
	height:32px;
}

#footer #footerIn{
	padding:30px 3% 0;
}

#footer #logo{
	position:relative;
	left:0;
	margin-left:2.6667%;
}
#footer #logo .breadcrumbs{
	padding:0 44px;
	font-size:16px;
}
#footer #logo .breadcrumbs span{
	padding:0 9px;
}

.smaccount div{
	font-size:20px;
	line-height:42px;
}
.smaccount .Facebook,
.smaccount .Twitter,
.smaccount .X-Twitter,
.smaccount .LINE{
	padding-left:0;
	padding-right:10%;
}
.smaccount .Instagram{
	padding-left:0;
	padding-right:0;
}


#footer ul.linklist{
	border-bottom:none;
	padding:0;
}
#footer ul.linklist li{
	float:none;
	padding:0;
}
#footer ul.linklist dl a:hover{
	text-decoration:none;
}
#footer ul.linklist dt{
	position:relative;
	padding-left:15px;
	cursor:pointer;
	z-index:2;
}

#footer ul.linklist dt:before,
#footer ul.linklist dt:after{
	content:"";
	display:block;
	position:absolute;
	right:12px; top:23px;
	-webkit-transition:all 0.3s ease;
	transition:all 0.3s ease;
}
#footer ul.linklist dt:before{
	border-bottom:#4d4d4d solid 2px;
	width:34px;
	height:16px;
}
#footer ul.linklist dt:after{
	border-left:#4d4d4d solid 2px;
	width:16px;
	height:34px;
}
/*
#footer ul.linklist li:last-child dt:before,
#footer ul.linklist li:last-child dt:after{
	display:none;
}
*/
#footer ul.linklist dt.on:after{
	right:20px; top:15px;
	-webkit-transform:rotate(-90deg);
	transform:rotate(-90deg);
}



#footer ul.linklist dt,
#footer ul.linklist dd{
	border-bottom:#4c4c4c 1px dotted;
	line-height:79px;
	font-size:22px;
	cursor:pointer;
}

#footer ul.linklist dd{
	overflow:hidden;
	position:relative;
	height:0px; top:-5px;
	border-width:0px;
	padding-left:8%;
	line-height:0px;
	opacity:0;
	z-index:1;
	-webkit-transition:all 0.3s ease;
	transition:all 0.3s ease;
/*
	height:79px;
	line-height:79px;
	opacity:1;
*/
}

#footer ul.linklist dd:after{
	content:"";
	display:block;
	position:absolute;
	right:19px; top:0; bottom:0;
	background:url(../images/btnicon_sp.png) 0 0 no-repeat;
	width:15px;
	height:24px;
	margin:auto;
}

#footer ul.linklist dd.on{
	top:0;
	height:79px;
	border-width:1px;
	line-height:79px;
	opacity:1;
}

#footer .markset{
	padding-top:20px;
	padding-left:0;
}

#Copyright br{
	display:block;
}

}



#version{
	padding:0 0 20px;
	text-align:center;
}
#version:after{
	content:"Ver 1.2.3";
}

