@charset "utf-8";
/*-----------------------------------------------------
common
--------------------------------------------------------*/
	.forPC,
	.forTB{display:none;}
	.forSP{display:inherit;}

/*-----------------------------------------------------
sp
-------------------------------------------------------*/
html{font-size:10px;}
img {max-width:100%; height:auto;}
body{font-size:1.4rem;}
@media screen and (max-width: 374px) {
	body{font-size:1.3rem;}
}
/*--------------------------------------------------------------------
   wrap
---------------------------------------------------------------------*/
.wrapBox{
    padding-left:10px;
    padding-right:10px;
}
/*--------------------------------------------------------------------
   footer
---------------------------------------------------------------------*/
/* ftrContact--------*/
footer #ftrContact{
    background:url(../images/bg_ftr_sp.jpg) center center no-repeat;
    background-size:cover;
    padding:35px 0 45px;
}

footer #ftrContact p{
    font-weight:bold;
    font-size:1.3rem;
    line-height:2.15;
    padding-bottom:25px;
}

footer #ftrContact a{
    width:208px;
    height:43px;
    line-height:43px;
    font-size:1rem;
}

/* nav--------*/
footer nav{padding:30px;}
footer nav ul{display: inline;}
footer nav ul li{
    line-height:2.9;
    font-size:1.2rem;
    margin:0 1em;
}
footer nav ul + ul{margin-top: 0;}

/* ftrIn--------*/
footer #ftrIn{padding-bottom:25px;}
footer #ftrIn p{    
    font-size:1.1rem;
    line-height:1.2;
    padding-bottom:20px;
}
footer #ftrIn p.copy{font-size:0.9rem; padding-bottom:0;}

/*--------------------------------------------------------------------
   mainTitle
---------------------------------------------------------------------*/
#mainTitle > div{padding-top:40%;}
#mainTitle h2{font-size:2.2rem;}
#mainTitle h2 span{font-size:1.2rem; padding-top:10px;}

/*--------------------------------------------------------------------
   container
---------------------------------------------------------------------*/
#container.toppage{ padding:30px 0 0;}
#container.second{ padding:30px 0 0;}

/* base
-----------------------*/
div[id="container"] p,
div[id="container"] span,
div[id="container"] li,
div[id="container"] dt,
div[id="container"] dd,
div[id="container"] th,
div[id="container"] td{line-height:2.14;}
    
div[id="container"].second p + p,
div[id="container"].second p + ul,
div[id="container"].second p + ol,
div[id="container"].second p + dl,
div[id="container"].second p + table,
div[id="container"].second p + div,
div[id="container"].second ul + p,
div[id="container"].second ul + ul,
div[id="container"].second ul + ol,
div[id="container"].second ul + dl,
div[id="container"].second ul + table,
div[id="container"].second ul + div,
div[id="container"].second ol + p,
div[id="container"].second ol + ul,
div[id="container"].second ol + ol,
div[id="container"].second ol + dl,
div[id="container"].second ol + table,
div[id="container"].second ol + div,
div[id="container"].second dl + p,
div[id="container"].second dl + ul,
div[id="container"].second dl + ol,
div[id="container"].second dl + dl,
div[id="container"].second dl + table,
div[id="container"].second dl + div,
div[id="container"].second table + p,
div[id="container"].second table + ul,
div[id="container"].second table + ol,
div[id="container"].second table + dl,
div[id="container"].second table + table,
div[id="container"].second table + div,
div[id="container"].second div + p,
div[id="container"].second div + ul,
div[id="container"].second div + ol,
div[id="container"].second div + dl,
div[id="container"].second div + table{margin-top:15px;}

/* box
-----------------------*/
#container section{padding:0 0 35px;}
.bg01{padding:35px 15px 0;}
#container.second .bg01{padding:35px 15px 50px;}

/* newsList
---------------*/
#container ul.newsList li{padding:20px 0;}
#container ul.newsList li .date{
    font-size:1.4rem;
    padding-bottom:5px;
    width:auto;
    float:none;
    clear:none;
}
#container ul.newsList li .post{margin-left:0;}
#container ul.newsList li h3{font-size:1.7rem;}
#container ul.newsList li .post p{font-size:1.4rem;}

/*--------------------------------------------------------------------
   toppage
---------------------------------------------------------------------*/
/* mainimage
---------------------------------------------------------*/
#mainImage .inner{padding-top:90%;}
#mainImage .inner p{
    height:1.6em;
    font-size:1.6rem;
    letter-spacing:0.05em;
}
#mainImage .inner .bn2{
	width: calc(276px * 0.75);
	height: calc(84px * 0.75);
	right: 15px;
	top: 15px;
}
/* topLead
----------------------------------------------------*/
#container #topLead{
    padding-left:15px;
    padding-right:15px;
}
#topLead h2{
    font-size:2.2rem;
    line-height:1.55;
    margin-bottom:30px;
}
#topLead p{
    text-align:left;
    font-size:1.8rem;
    line-height:1.8;    
}

/* topLink
----------------------------------------------------*/
#container #topLink {padding-bottom:45px;}
.topLinkBox + .topLinkBox{ margin-top:50px;}

.topLinkBox .imgbox{
    width:100%;
    padding-top:72.8%;
}
.topLinkBox.topLink01 .imgbox{background-image:url(../images/img_top_01_sp.jpg);}
.topLinkBox.topLink02 .imgbox{background-image:url(../images/img_top_02_sp.jpg);}

.topLinkBox .txt,
.topLinkBox.topLink02 .txt{
    width:84%;
    height:auto;
    padding:35px 25px 50px;
    position:relative;
    margin:-80px auto 0;    
}
.topLinkBox .txt::after{
    bottom:25px;
    right:25px;
}
.topLinkBox .txt h2{
    font-size:2rem;
    margin-bottom:18px;    
}
.topLinkBox .txt h2 span{font-size:1.2rem;}
.topLinkBox .txt p{line-height:2.14;}

/* topBnr
--------------------------------------------------*/
#container section#topBnr {padding-bottom:0px;}
#topBnr h2{
    font-size:2.2rem;
    line-height:1.55;
    margin-bottom:20px;    
}
#topBnr p{font-size:1em;}
#topBnr ul{
    padding-left:15px;
    padding-right:15px;
    }

#topBnr ul li{
    width:auto;
    float:none;
    padding-bottom:10px;
}
#topBnr ul li + li {float:none;}
#topBnr ul li a{padding-top:41.26%;}
#topBnr ul li.bnr01 a{background-image:url(../images/bn_top_01_sp.jpg);}
#topBnr ul li.bnr02 a{background-image:url(../images/bn_top_02_sp.jpg);}
#topBnr ul li.bnr01 a:hover{background-image:url(../images/bn_top_01_sp.jpg);}
#topBnr ul li.bnr02 a:hover{background-image:url(../images/bn_top_02_sp.jpg);}

#topBnr ul li a div{
    width:214px;
    height:40px;
    padding-left:15px;
    line-height:40px;
    font-size:1.1rem;
    position:absolute;
    top:54%;
    bottom:auto;
    right:0;
}
#topBnr ul li a div::before{
    width:15px;
    height:5px;
    right:14px;
    margin-top:-3px;
}
#topBnr ul li a div span{font-size:0.9rem;}
#topBnr ul li p{
    padding-top:15px;
    font-size:1.2rem;
}
/* topNews
----------------------------------------------------*/
#container #topNews{
    padding-left:15px;
    padding-right:15px;
}
#topNews h2{margin-bottom:20px;}

/*--------------------------------------------------------------------
   local second
---------------------------------------------------------------------*/
/* common
----------------------------------------------------*/
#container.second section.leadBox{
    padding-left:15px;
    padding-right:15px;
}

#container.second section.leadBox p{
    font-size:	1.6rem;
    line-height:2.18;
}

#container.second section.leadBox p.spTxt{text-align:left;}

/*whiteBox*/
section.box01 .inner{padding:10% 0 0;}
section.box01 .txt{
    width:auto;
    float:none;
}
section.box01 .img{
    width:auto;
    float:none;
    padding:0 15px;
    max-width:310px;
    margin:25px auto 0;
}

section.box01 h3{
    padding:0.875em 0 1.25em 7%;
    font-size:2rem;   
}
section.box01 h3::before{width:73%;}

section.box01 .txt > h4,
section.box01 .txt > p{
    padding-left:7%;
    padding-right:7%;  
}
section.box01 .txt > h4{margin-top:15px;}

section.box01 .inner > h3{ padding-left:7%; padding-bottom:1.25em;}
section.box01 .inner > h3::before{width:73%;}
section.box01 .inner > p,
section.box01 .inner > .tbOut,
.recruitBox .spec{padding-left:7%; padding-right:7%;}

/* modal
------------*/
.modal01 .modalIn01#popNomadyIn h4{
	margin-bottom: 20px;
	font-size: 	1.8rem;	
}
.modal01 .modalIn01#popNomadyIn .lead{
	font-size: 	1.8rem;
	line-height: calc(35/22);
}
.modal01 .modalIn01#popNomadyIn .lead + p{
	margin-bottom: 20px;
	font-size: 1em;
	line-height: 2.14;
}
.modal01 .modalIn01#popNomadyIn ol{
	padding: 20px 15px;
	margin-bottom: 20px;
}
.modal01 .modalIn01#popNomadyIn ol li{
	font-size: 1em;
	line-height: 2.14;
}
.modal01 .modalIn01#popNomadyIn .qrBox .txt{
	width: auto;
	float: none;
}
.modal01 .modalIn01#popNomadyIn .qrBox .txt p{
	font-size: 1em;
	line-height: 2.14;
}
.modal01 .modalIn01#popNomadyIn .qrBox .img{
	width: auto;
	float: none;
}
.modal01 .modalIn01#popNomadyIn .qrBox .img img{
	display: block;
	margin-right: auto;
	width: 140px;
	max-width: 100%;
}

/* business
----------------------------------------------------*/
#container .businessBox + .businessBox{margin-top:35px;}
#container .businessBoxIn{
    padding-left:7%;
	padding-right:7%;
}
.businessBoxIn .flowBox{
	width: 400px;
	max-width: 100%;
	margin: 0 auto;
}

.businessBoxIn .flowBox .item{
	width:auto;
	float: none;
	margin-right:0;
	padding: 15px 20px 10px;
}
.businessBoxIn .flowBox .item + .item{margin-top: 30px;}

.businessBoxIn .flowBox .item + .item::before{
	width: 100%;
	height: 30px;
	background: url("../images/arrow_flow2.svg") center center no-repeat;
	background-size: 12px auto;
	margin-left:0;
	top: -30px;
}

/* company
----------------------------------------------------*/
#container .companyBox + .companyBox{margin-top:40px;}
#container .companyBox .companyTxt{font-size:1.7rem;}
#container .companyBox .companyTxt span{font-size:1.3rem;}

.companyBox .companyTb th,
.companyBox .companyTb td{
    display:list-item;
    list-style-type:none;
    padding:0 0 15px;
    text-align:left;
}
.companyBox .companyTb th{
    width:100%;
    border-bottom:none;
    padding-top:15px;
    padding-bottom:0;
    }

.companyBox .map{
    padding-top:64.4%;
    margin:0 7% 10px;
}
#container .companyBox.mapOut{padding-bottom:30px;}

/* recruit
----------------------------------------------------*/
#container .recruitBox + .recruitBox{margin-top:40px;}

.recruitBox .tit{margin-bottom:30px;}
.recruitBox .tit span{
    font-size:2rem;
    padding:0.2em 3em;
}
.recruitBox .tit p{font-size:1.7rem;}

.recruitBox .spec table{margin-bottom:30px;}
.recruitBox .spec table th,
.recruitBox .spec table td{
    display:list-item;
    list-style-type:none;
    padding:0 0 15px;
    text-align:left;
}
.recruitBox .spec table th{
    width:100%;
    border-bottom:none;
    padding-top:15px;
    padding-bottom:0;}

.recruitBox .btn{
    width:208px;
    height:43px;
    line-height:43px;
    font-size:1rem;
}

/* premium
----------------------------------------------------*/
#container.second.premium .premiumTitle{padding-bottom: 40px;}
#container.second.premium .premiumTitle .subTit01{
	width: 27.69em;
	height:auto;
	margin: 0 auto 15px;
	line-height: 2.15;
	font-size: 1.3rem;
}
#container.second.premium .premiumTitle h2{font-size: 2.5rem;}
#container.second.premium .premiumTitle h2 span{
	display: block;
	font-size: 1.2rem;
}
#container.second.premium .premiumTitle .subTit02{font-size: 1.3rem;}

#container.second.premium section{padding: 25px;}
#container.second.premium section .box01{padding-bottom: 45px;}
#container.second.premium section .box01 .txt,
#container.second.premium section .box01 .img{
	width: auto;
	float: none;
	padding: 0;
}
#container.second.premium section .box01 .img{
	max-width: 223px;
	margin: 30px auto 0;
}
#container.second.premium section .box02{
	width: 100%;
	max-width: 315px;
	padding-top:0;
	margin: 0 auto;
	position:static;
}
#container.second.premium section .box02 .img{position:static;}
#container.second.premium section .box02 .txt{
	padding-top: 20px;
	padding-left:25px;
	position:static;
}
#container.second.premium section .btn{padding-top: 60px;}
#container.second.premium section .btn p{ line-height: 2;}
#container.second.premium section .btn a{
	width: 240px;
	height: 60px;
	line-height: 60px;
}

/* contact
----------------------------------------------------*/
#container .contactBox{
    padding-left:15px;
    padding-right:15px;
}
#container .contactLead{
    font-size:	1.5rem;
    line-height:2;
}
#container .attention{
    padding:15px;    
}

/* form
----------------------------------------------------*/
#form table{margin-bottom:40px;}
#form table th,
#form table td{
    display:list-item;
    list-style:none;
    padding:15px 0;
}
#form table th{
    width:auto;
    border-bottom:none;
    padding-bottom:0;
}
#form table th br{display:none;}

#form table input[type="text"],
#form table input[type="email"],
#form table input[type="url"],
#form table textarea{
    width:100%;
}

#form .btn{padding-top:0; padding-bottom:10px;}
#form .btn input,
.btnThanks a{
    display:block;
    width:210px;
    height:44px;
    margin:10px auto 0;
    line-height:44px;
    font-size:1.2rem;
}
#form .btn input
.btnThanks a{max-width:80%;}


/* information
----------------------------------------------------*/
#container section.informationBox{
    padding-left:15px;
    padding-right:15px;
}


/* pager
--------------*/
.pagination{padding:30px 15px 15px;}

@media screen and (max-width: 374px) {
    /*iphone5*/
}