@charset "utf-8";



.is-txt-custom{color:#;}
.is-bgc-custom{background-color:#;}

.is-txt-custom-pale{color:#;}
.is-bgc-custom-pale{background-color:#;}

.is-txt-custom-deep{color:#;}
.is-bgc-custom-deep{background-color:#;}

.is-bgc-custom-red01{background-color:#F24345;}
.is-bgc-custom-red02{background-color:#CE3032;}
.is-bgc-custom-red03{background-color:#B11B1D;}
.is-bgc-custom-red04{background-color:#981517;}



/* index */
.sec-story,.sec-stage01,.sec-stage02,.sec-stage03,.sec-laststage{background-position: center top;background-size: cover;background-repeat: no-repeat;}

.sec-stage01,.sec-stage02,.sec-stage03,.sec-laststage{background-attachment: fixed;}



.sec-story{background-image: url(../images/sec-story.jpg);}
.sec-stage01{background-image: url(../images/sec-stage01.jpg);}
.sec-stage02{background-image: url(../images/sec-stage02.jpg);}
.sec-stage03{background-image: url(../images/sec-stage03.jpg);}
.sec-laststage{background-image: url(../images/sec-laststage.jpg);}

.sec-lg-recruit .bg-float-ful{transform:scale(1);transition: transform .3s;}
.sec-lg-recruit .bg-float-ful.bg-start{transform:scale(1.2);transition: transform .3s;}



.decobar{background: url(../images/cmn/decobar.png) center bottom repeat-x;border: none;margin:0;padding:0 0 4rem;position: relative;z-index: 99;}
	@media only screen and (max-width:991px)	{.decobar{padding:0 0 3rem;background-size: auto 3rem;}}
	@media only screen and (max-width:767px)	{.decobar{padding:0 0 2rem;background-size: auto 2rem;}}


/* story */
.box-story{
	background-color: rgba(255,255,255,.75);border-radius:1.25rem;
	margin-bottom: 4rem;padding: 4.5rem;
	position: relative;
}
	@media only screen and (max-width:991px)	{.box-story{padding: 3.5rem;}}
	@media only screen and (max-width:767px)	{.box-story{padding: 2.5rem;}}

.box-story:before{
	border: 3px solid #F45657;border-radius:.625rem;
	content: '';
	position: absolute;top: 0.625rem;left: 0.625rem;right: 0.625rem;bottom: 0.625rem;
}

.tit-story{
	color:#F45657;
	font-size: 4em;line-height: 0.75;text-align: center;
	font-family: 'Zen Maru Gothic',sans-serif;font-weight: 900;text-transform: uppercase;
	display: flex;justify-content: center;align-items: center;
}
	@media only screen and (max-width:991px)	{.tit-story{font-size: 3.5em;}}
	@media only screen and (max-width:767px)	{.tit-story{font-size: 3em;}}

.tit-story:before,.tit-story:after{
	background-color: #F45657;
	content: '';width: 0.66em;height: 3px;
	margin: 0 .33em;
}


/* stage01,stage02,stage03,laststage */
.box-stage{
	background-color: #000;color:#FFF;border-radius:.75rem;
	padding: 2.5rem 4rem 5rem;
	position: relative;
}
	@media only screen and (max-width:991px)	{.box-stage{padding: 2rem 3rem 4rem;}}
	@media only screen and (max-width:767px)	{.box-stage{padding: 1.5rem 2rem 3rem;}}

.box-stage:before,.box-stage:after{content: '';position: absolute;}

.box-stage:before{
	border: 3px solid #FFF;border-radius:.625rem;
	top: 2.5rem;left: 0.625rem;right: 0.625rem;bottom: 0.625rem;
}
	@media only screen and (max-width:991px)	{.box-stage:before{top: 2rem;}}
	@media only screen and (max-width:767px)	{.box-stage:before{top: 1.5rem;}}

.box-stage:after{
	background: url(../images/cmn/dot-top-wh.png) center center no-repeat;
	width: 14px;height: 8px;
	right: 1.75rem;bottom: 1.75rem;
}

.box-stage-inner{position: relative;z-index: 1;}

.tit-stage{
	font-family: 'Zen Maru Gothic',sans-serif;font-weight: 900;text-transform: uppercase;
	margin-bottom: 1.25rem;
}

.tit-stage span{
	background-color: #000;color:#F45657;
	font-size: 2.5em;line-height: 1;
	margin:-.5em -.4em 0;padding: 0 .4em;
	display: inline-block;
}
	@media only screen and (max-width:991px)	{.tit-stage span{font-size: 2.25em;}}
	@media only screen and (max-width:767px)	{.tit-stage span{font-size: 2em;}}

.tit-stage small{
	color:#FFF;
	font-size: 2em;line-height: 1;
	font-family: 'Zen Maru Gothic',sans-serif;font-weight: 900;
	margin-top: .625em;
	display: block;
}
	@media only screen and (max-width:991px)	{.tit-stage small{font-size: 1.75em;}}
	@media only screen and (max-width:767px)	{.tit-stage small{font-size: 1.5em;}}



/* stage02 */
.box-outline{
	background-color: rgba(255,255,255,.75);border-radius:1.25rem;
	margin-bottom: 4rem;padding: 4rem;
	position: relative;
}
	@media only screen and (max-width:1199px)	{.box-outline{padding: 3rem;}}
	@media only screen and (max-width:991px)	{.box-outline{padding: 2rem;}}
	@media only screen and (max-width:767px)	{.box-outline{padding: 1rem;}}


.tb-outline th{border-bottom: 3px solid #BBB;text-align: center;width: 11em;}
	@media only screen and (max-width:575px)	{.tb-outline th{text-align: left;border-bottom: 1px dashed #DDD;}}

.tb-outline td{border-bottom: 1px solid #BBB;}
	@media only screen and (max-width:575px)	{.tb-outline th{border-bottom-width:1px;}}



/* stage03 */
.box-facilities{
	background-color: rgba(255,255,255,.75);border-radius:1.25rem;
	margin:0 auto 4rem;padding: .5rem;
	width: 100%;max-width: 50rem;
	position: relative;
}

.tb-facilities th,.tb-facilities td{text-align: center;}
.tb-facilities th{color:#FFF;}
.tb-facilities td{background-color: #FFF;}

.tb-facilities td + td{border-left: 1px solid #BBB;}

.tb-facilities tr + tr td{border-top: 1px solid #BBB;}


/* laststage */
.box-inquiry{
	background-color: rgba(255,255,255,.9);border-radius:1.25rem;
	margin:0 auto 4rem;padding: 4rem;
	position: relative;
}
	@media only screen and (max-width:1199px)	{.box-inquiry{padding: 3rem;}}
	@media only screen and (max-width:991px)	{.box-inquiry{padding: 2rem;}}
	@media only screen and (max-width:767px)	{.box-inquiry{padding: 1rem;}}


.tb-inquiry th,.tb-inquiry td{vertical-align: middle;}

.tb-inquiry th{border-bottom: 3px solid #BBB;width: 11em;}
	@media only screen and (max-width:991px)	{.tb-inquiry th{text-align: left;border-bottom: 1px dashed #BBB;}}

.tb-inquiry td{border-bottom: 1px solid #BBB;}
	@media only screen and (max-width:575px)	{.tb-inquiry th{border-bottom-width:1px;}}


.contact-area{display: flex;justify-content: center;}
	@media only screen and (max-width:575px)	{.contact-area{display: block;}}

[class*="badge-"],a[class*="badge-"]:hover,a[class*="badge-"]:active,a[class*="badge-"]:focus{display: flex;align-items: center;background-color: #FFF;border-radius:6rem;padding: 1em;width: 420px;}
	@media only screen and (max-width:991px)	{[class*="badge-"],a[class*="badge-"]:hover,a[class*="badge-"]:active,a[class*="badge-"]:focus{width: 340px;padding: .75em;}}
	@media only screen and (max-width:767px)	{[class*="badge-"],a[class*="badge-"]:hover,a[class*="badge-"]:active,a[class*="badge-"]:focus{width: 270px;padding: .5em;}}
	@media only screen and (max-width:575px)	{[class*="badge-"],a[class*="badge-"]:hover,a[class*="badge-"]:active,a[class*="badge-"]:focus{width: 100%;}}

.badge-fax{margin-left: 1.75rem;}
	@media only screen and (max-width:1199px)	{.badge-fax{margin-left: 1.5rem;}}
	@media only screen and (max-width:991px)	{.badge-fax{margin-left: 1.25rem;}}
	@media only screen and (max-width:767px)	{.badge-fax{margin-left: 1rem;}}
	@media only screen and (max-width:575px)	{.badge-fax{margin-left: 0;margin-top: 1rem;}}

[class*="badge-"]:before{content: '';flex:0 0 84px;max-width: 84px;height: 84px;background-position: center center;background-repeat: no-repeat;}
	@media only screen and (max-width:991px)	{[class*="badge-"]:before{flex:0 0 63px;max-width: 63px;height: 42px;background-size: contain;}}
	@media only screen and (max-width:767px)	{[class*="badge-"]:before{flex:0 0 42px;max-width: 42px;height: 42px;}}

.badge-tel:before{background-image: url(../images/cmn/ico-tel.png);}
.badge-fax:before{background-image: url(../images/cmn/ico-fax.png);}

[class*="badge-"] div{flex:0 0 calc(100% - 100px);max-width: calc(100% - 100px);margin-left: 0.75rem;}
	@media only screen and (max-width:991px)	{[class*="badge-"] div{flex:0 0 calc(100% - 75px);max-width: calc(100% - 75px);margin-left: 0.66rem;}}
	@media only screen and (max-width:767px)	{[class*="badge-"] div{flex:0 0 calc(100% - 50px);max-width: calc(100% - 50px);margin-left: 0.5rem;}}

[class*="badge-"] strong{font-weight: 700;font-size: 2em;line-height: .75;color:#F24345;font-family: 'Zen Maru Gothic',sans-serif;font-weight: 700;display: block;}
	@media only screen and (max-width:767px)	{[class*="badge-"] strong{font-size: 1.75em;}}

[class*="badge-"] small{font-size: 1em;display: block;color:#000;font-weight: 700;font-family: 'Zen Maru Gothic',sans-serif;font-weight: 700;}

[class*="badge-"] span{font-size: .88em;line-height: 1;color:#000;font-family: 'Zen Maru Gothic',sans-serif;}


/* recruit */



.join-all{display: flex;justify-content: space-around;align-items: flex-end;width: 1080px;margin: 0 auto;position: absolute;left: 0;right: 0;bottom: 2.5rem;z-index: 999;}
	@media only screen and (max-width:1199px)	{.join-all{width: 900px;}}
	@media only screen and (max-width:991px)	{.join-all{width: 100%;padding:0 1.5rem;}}
	@media only screen and (max-width:575px)	{.join-all{padding:0 1rem;}}

.join-all img{width: auto;height: 180px;}
	@media only screen and (max-width:1199px)	{.join-all img{height: 180px;}}
	@media only screen and (max-width:991px)	{.join-all img{height: 150px;}}
	@media only screen and (max-width:767px)	{.join-all img{height: 120px;}}
	@media only screen and (max-width:575px)	{.join-all img{height: 60px;}}
	@media only screen and (max-width:319px)	{.join-all img{height: 50px;}}

.join-all.fixed{position: fixed;}

.join01,.join02,.join03,.join04{display: none;}

.join01.show,.join02.show,.join03.show,.join04.show{display: block;}




.flow-detail{list-style:none;counter-reset: flow-detail;}
	@media only screen and (max-width:767px)	{.flow-detail{}}

.flow-detail .box-head span{font-size: 1.25em;line-height: 1;font-weight: 700;}
	@media only screen and (max-width:575px)	{.flow-detail .box-head span{}}

.flow-detail .box-head span:before {
	color:#F24345;
	font-size: 1.5em;line-height: 0.75;
	counter-increment: flow-detail;
	content: "0" counter(flow-detail) "";
	text-align: center;
	display: inline-block;
	margin-right: 0.5em;
	width: 2.5rem;font-weight: 800;
	}