<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">@charset "UTF-8";
/*
 * style.css
 *
 *  version --- 1.0
 *  updated --- 2017/11/30
 */

.pc{display: none!important;}

.grecaptcha-badge{
	z-index: 9999;
}

/* !wrapper
---------------------------------------------------------- */
#wrapper {
  width: 100%;
  overflow: hidden;
  min-width: 320px;
  position: relative;
  z-index: 2;
  padding-top: 60px;
}
.menuOpen{
  overflow: hidden;
  height: calc(100vh - 60px);
}
.inner{
	padding: 0 25px;
	box-sizing: border-box;
	margin: 0 auto;
	position: relative;
}
/*loading*/
.o-loading-screen {
    width: 100%;
    height: 100%;
    background: #fff;
    position: fixed;
    bottom: 0;
    right: 0;
    z-index: 10001;
    -webkit-transition: all .7s cubic-bezier(0,0,.2,1) 0s;
    transition: all .7s cubic-bezier(0,0,.2,1) 0s;
    -webkit-transition-timing-function: cubic-bezier(1,.02,1,1)!important;
    transition-timing-function: cubic-bezier(1,.02,1,1)!important;
    
}
.o-loading-screen.active{pointer-events: none;opacity: 0}
.o-loading-screen .o-progressbar {
	display: none;
    width: 0;
    height: 2px;
    background:#f28e1e;
    top: 60%;
    transition: all .5s cubic-bezier(0,0,.2,1) 0s;
}
.o-loading-screen .o-progressbar, .o-loading-screen .o-progressnum {
    position: absolute;
    -webkit-transition: all .5s cubic-bezier(0,0,.2,1) 0s;
    left: 0;
}
.o-loading-screen .o-progressnum {
    top: calc(50% - 45px);
    text-align: center;
    width: 100%;
    font-size: 2rem;
    letter-spacing: 0.05em;
    font-weight: bold;
    color: #fff;
    transition: all .5s cubic-bezier(0,0,.2,1) 0s;
}
.loading-shutter-logo {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    z-index: 101;
    transition: all 1.6s ease-out;
    transform: scale(1, 1);
    box-sizing: border-box;
	opacity: 0;
}
.loading-shutter-logo.active {
		-webkit-transition: -webkit-transform .2s ease-in-out .15s;
		transition: -webkit-transform .2s ease-in-out .15s;
		transition: transform .2s ease-in-out .15s;
		transition: transform .2s ease-in-out .15s, -webkit-transform .2s ease-in-out .15s;
		transform: scale(1.1, 1.1);
}


/* !header
---------------------------------------------------------- */
#header {
	position: fixed;
    width: 100%;
    left: 0;
    top: 0;
    z-index: 996;
    box-sizing: border-box;
    background: #fff;
    min-width: 320px;
}

#headerIn {
	height: 60px;
	display: flex;
	align-items: center;
}
#headerLogo {
	margin-left: 15px;
	width: 260px;
}


.headerRecruit{
	text-align: center;
	padding: 20px;
}
.headerContact{
	text-align: center;
    padding: 0 20px 20px;
}
/* !breadcrumb
---------------------------------------------------------- */
#breadcrumb{
   display: none;
}
.anchorUl{
	display: none;
}

/* !gNavi
---------------------------------------------------------- */
		
#gNavi {
	display: none;
	position: fixed;
    z-index: 998;
    width: 255px;
    height: 100vh;
    height: var(--view-height,100vh);
    top: 0;
    right: 0;
    -webkit-overflow-scrolling: touch;
    overflow: auto;
    background: #29a6dd;
    box-sizing: border-box;
    padding: 0 0 80px;
}
.overlay{
    display: none;
	position: fixed;
	left: 0;
	top: 0px;
	width: 100vw;
	height: 100%;
	background: rgba(35,35,35,0.4);
	z-index: 997;
	text-indent: -9999px;
}
.navHd{
	color: #fff;
	font-size: 2rem;
	font-weight: 500;
	line-height: 1;
	letter-spacing: 0.05em;
	padding: 26px 15px;
	border-bottom: 1px solid #ccc;

}
.navUl{width: 100%;}
.navUl li {
	border-bottom: 1px solid #cccccc;
}
.navUl li a {
	color: #fff;
	display: block;
	font-size: 1.6rem;
	font-weight: 500;
	letter-spacing: 0.05em;
	padding: 14px 15px;
	padding-right: 5px;
}
.navUl li a font{
	color: #87c13f
}
.navUl li a:hover{text-decoration: none;}

.btnMenu {
	position: fixed;
    right: 0;
    top: 0;
    z-index: 999;
}
.btnMenu a {
	display: block;
    width: 60px;
    height: 60px;
    box-sizing: border-box;
    position: relative;
    background: #29a6dd;
    opacity: 1;
}
.btnMenu a span {
    display: block;
    width: 36px;
    height: 1px;
    position: absolute;
    left: 12px;
    transition: all 0.4s;
    -webkit-transition: all 0.4s;
    -moz-transition: all 0.4s;
}
.btnMenu a span:before {
    content: "";
    background-color: #fff;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    box-sizing: border-box;
}
.btnMenu a:hover span:before {
	animation: .4s hideaway;
	-webkit-animation: .4s hideaway;
}
.btnMenu a:hover span:nth-child(2):before {
	animation-delay: .14s;
}
.btnMenu a:hover span:nth-child(3):before {
	animation-delay: .28s;
}
.btnMenu a span:first-child {
	top: 13px;
}

.btnMenu a span:nth-child(2) {
	top: 21px;
}

.btnMenu a span:nth-child(3){
    top:29px;
}


/*.btnMenu.active{top: -3px}*/
.btnMenu.active a{background:none;color: #fff }
.btnMenu.active a span{left: 17px}
.btnMenu.active a span:before{width: 20px;background: #fff;}
.btnMenu.active a em{color: #fff }
.btnMenu.active a span:first-child {
    -webkit-transform: translateY(14px) rotate(45deg);
    -moz-transform: translateY(14px) rotate(45deg);
    -ms-transform: translateY(14px) rotate(45deg);
    transform: translateY(14px) rotate(45deg);
}

.btnMenu.active a span:nth-child(2) {
    opacity: 0;
}

.btnMenu.active a span:nth-child(3) {
    -webkit-transform: translateY(-14px) rotate(-45deg);
    -moz-transform: translateY(-14px) rotate(-45deg);
    -ms-transform: translateY(-14px) rotate(-45deg);
    transform: translateY(-14px) rotate(-45deg);
}
.btnMenu a em {
    font-size: 1.3rem;
    font-weight: 500;
    line-height: 1;
    position: absolute;
    left: 0;
    top:36px;
    z-index: 2;
    width: 100%;
    color: #fff;
    text-align: center;
}
.btnMenu a em:nth-of-type(2){display: none}
.btnMenu.active a em:nth-of-type(1){display: none}
.btnMenu.active a em:nth-of-type(2){display: block;}
	
/* !mainVisual
---------------------------------------------------------- */
#mainVisual {
	background: url(../img/index/bg_mv_sp.jpg)no-repeat bottom center;
	background-size: cover;
	position: relative;
	height: 250px;
}
.mvImg{
	position: absolute;
	right: 0;
	left: 16px;
	top: 0;
	z-index: 1;
	height: 220px;
	background-position: top center
}
.mvIcon{
	position: absolute;
	bottom: 5px;
	left: 14px;
	z-index: 2;
	width: 150px;
}
.mvLine{
	position: absolute;
	z-index: 3;
	top: calc(50% - 15px);
	transform: translateY(-50%);
	width: 100%;
	text-align: left;
	width: 45px;
}
.mvText{
	position: absolute;
	z-index: 3;
	/*right: -50px;*/
	top: calc(50% - 15px);
	transform: translateY(-50%);
	width: 100%;
	height: 175px;
	text-align: right;
}
.mvText img{
    width: auto;
    height: 175px;
}

/* !teaser
---------------------------------------------------------- */
#teaser {
	height: 222px;
	background: url(../img/common/bg_teaser02.jpg)no-repeat bottom 32px center #eefbff;
	background-size: 100% auto;
	position: relative;
	padding-top: 104px;
}
#teaser:before{
	content: '';
	top: 0;
	left: 0;
	position: absolute;
	width: 100%;
	height: 100%;
	z-index: 2;
	background: url(../img/common/line_before.png)no-repeat top 50px center;
	background-size: 100% auto;
}
.teaserImg{
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	width: 100%;
	height: 144px;
}
#teaser .inner{z-index: 3;}
.teaserBox{
	margin: 0 auto;
	width: 287px;
	height: 125px;
	padding: 13px 25px;
	background: url(../img/common/bg_teaserbox.png)no-repeat;
	background-size: 100% 100%;
	color: #fff;
}
.teaserBox .en{
	font-size: 1.75rem;
	letter-spacing: 0.2em;
}
.teaserBox .jp{
	font-weight: bold;
	font-size:  1.75rem;
	letter-spacing: 0.1em;
	margin-top: 10px;
}



/* !contents
---------------------------------------------------------- */
#contents {
	
}

#main {
	
}

#side {
	
}

.inner {
	
}

/* !pageTop
---------------------------------------------------------- */
.pageTop img{
	width: 100px;
}

/* !footer
---------------------------------------------------------- */
#footer {
	background: url("../img/common/bg_footer_sp.png") bottom center no-repeat #1288c9;
	background-size:100% auto;
	padding-bottom: 25px;
	color: #fff;
	text-align: center;
}

#footer .footerIn {
	
}

.footerinfo{
}
.footerlogo{
	padding: 25px;
	border-bottom: 1px solid #fff;
	width: 100%;
	display: flex;
	justify-content:center;
	align-items: center;
}
.footerlogo img{width: 256px}
.footerTel a{
	display: inline-block;
	margin: 22px 0;
	white-space: nowrap;
	color: #fff;
    font-size: 2.4rem;
    letter-spacing: 0.05em;
    padding-left: 22px;
    background: url(../img/common/tel02.png)no-repeat center left;
    background-size: 14px auto;
}
.footerContact{
	margin: 0px 0 20px;
}
.footerContact img,
.footerOther img{width: 275px}

.footerlinks{
	display: none;
}

.footerOther{
	padding-bottom: 25px;
	border-bottom: 1px solid #fff;
}
.footerOther p + p{margin-top: 20px}
#copyright {
	margin: 20px 0;
	text-align: center;
	font-weight: 500;
	font-size: 1.15rem;
	letter-spacing: 0.26em;
}

/* !h(n)eading
---------------------------------------------------------- */
.hdL {
	
}

.hdM {
	
}

.hdS {
	
}

.hdS {
	text-align: center;
	margin-bottom: 20px;
	color: #0071b7;
}
.hdS:after{
	content: '';
	display: block;
	margin: 0 auto;
	width: 25px;
	height: 2px;
	background: #f7e921;
}
.hdS .en{
	font-size: 2.6rem;
	letter-spacing: 0.2em;
}
.hdS .jp{
	font-size:1.75rem;
	letter-spacing: 0.1em;
	margin: 7px 0 10px;
	font-weight: bold;
}


/* !list
---------------------------------------------------------- */
.list01 {
	
}

/* !table
---------------------------------------------------------- */
.table01 {
	
}


/*contact*/
.contactTop{
	padding: 30px 0 17px;
	text-align: center;
	background: url(../img/contact/bg_top.jpg)no-repeat bottom center;
    background-size: 100% 90px;
	font-size: 1.5rem;
}
.contactTop .topP{
	padding-bottom: 25px;
	text-align: left;
	font-size: 1.5rem;
	line-height: 1.8;
	font-weight: 500;
}
.contactTop .box{
	border: 2px solid #256599;
	margin: 0 auto;
	box-sizing: border-box;
	padding: 9px 10px 9px;
	background: #fff;
	font-weight: 500;
}
.contactTop .title{
	border-bottom: 1px solid #256599;
	padding-bottom: 7px;
	margin-bottom: 5px;
}
.contactTop .tel a {
    display: inline-block;
    font-size: 2.55rem;
    color: #295eaa;
    padding-left: 24px;
    background: url(../img/contact/tel.png)no-repeat center left;
	font-weight: bold;
    background-size:19px auto;
}
.contactTop .text{
	padding-top: 5px;
}
.formWrap{position: relative;padding:25px 0 40px}
.formWrap .topP{
	font-weight: 500;
	margin-bottom: 15px;
}
.formWrap .topP font{color: #ec2028}
.stepUl{
	font-size: 0;
	text-align: center;
	padding: 10px 0 16px;
}
.stepUl li{
	display: inline-block;
	vertical-align: top;
	width: calc(33.33% - 6px);
	max-width: 193px;
}
.stepUl li + li{margin-left: 9px}
.stepUl li span{
	display: block;
	padding: 10px 20px;
	padding-right: 0;
	color: #0071b7;
	background: #e6e6e6;
	font-weight: 400;
	font-size: 1.25rem;
	line-height: 1.24;
	text-align: left;
}
.stepUl li.active span{
	color: #fff;
	background: #0071b7;
}
.tableBox{
	position: relative;
}
.tableBox .icon01{
	position: absolute;
	z-index: 1;
	left: 0;
	top: 0px;
	width: 62px;
}
.tableBox .icon02{
	position: absolute;
	z-index: 1;
	right: -50px;
	top: 0;
	width: 110px;
}
.table03{
	width: 100%;
}
.table03 th,.table03 td{
	display: block;
	padding: 9px 10px 9px;
}
.table03 th{
	background: #d4efff;
	padding: 7px 10px;
	border-radius: 3px;
	color: #000;
	position: relative;
}
.table03 th span{
	float: right;
    font-size: 1.2rem;
    line-height: 1.875;
    font-weight: normal;
    color: #fff;
    background: #888;
    padding: 0px 5px;
    position: relative;
    top: -2px;
    border-radius: 3px;
}
.table03 th span.must{background: #ea182f}
.table03 td .example{font-size: 1.25rem;padding-top: 3px;color: #626262}
.table03 td .p02{font-size: 1.25rem;line-height: 1.12; padding:7px 0 }
.table03 td .p04{font-size: 1.15rem;line-height: 1.8; padding:11px 0;font-weight: bold;}

.table03 td select,
.table03 td input[type='text'],
.table03 td input[type='number'],
.table03 td input[type='tel'],
.table03 td input[type='email'] {
    height: 30px;
    width: 100%;
    border: 1px solid #c7d4d9;
    box-sizing: border-box;
    padding: 0 10px;
    background: #f7f7f7
}
.table03 td.error input[type='text'],
.table03 td.error input[type='number'],
.table03 td.error input[type='tel'],
.table03 td.error input[type='email']{background: #fdf3ce}
.table03 td textarea{
	width: 100%;
    border: 1px solid #c7d4d9;
    box-sizing: border-box;
    padding: 7px 10px;
    resize: none;
    font-family: initial;
    min-height: 160px;
    margin-bottom: 3px;
    background: #f7f7f7
}
.table03 td select{
	background: url(../img/common/select.png)no-repeat right 10px center;
	background-size:14px auto;
    padding: 0 17px 0 8px;
    font-size: 1.2rem;
    margin-bottom: 3px;
    display: inline-block;
    width: auto;
    box-sizing: border-box;
    width: 100%;
    border-radius: 3px;
    border-color: #9da5a8
}
.table03 .date span{
	display: inline-block;
	width: 15px;
	font-size: 1.2rem
}
.table03 td input[type='number'].short{max-width: 70%;}
.table03 td input[type='number']{max-width: 70%;}
.policyBox{
	overflow-y: auto;
	height: 100px;
	line-height: 1.5;
	font-size: 1.25rem;
	border: 1px solid #000;
	box-sizing: border-box;
	padding: 3px 6px;
	margin-bottom: 9px;
}
.policyBox p + p{padding-top: 15px;}
.policyBox p span{display: block;font-weight: bold;}
.agreeP{
	background: #f1f1f1;
    padding: 7px;
}
.agreeP a{
	color: #e71c24;
	border-bottom: 1px solid currentColor
}
.agreeP a:hover{text-decoration: none;}
.table03 td select.labelS{
}
label.checkBox01 input[type="checkBox"],
label.radioBox01 input[type="radio"]{
    margin-right: 7px;
    position: relative;
    top: 1px;
}
.agreeP label.checkBox01 input[type="checkBox"]{margin-right: 5px;}
label.radioBox01 + label.radioBox01{margin-left: 35px;}

.table03 .fileP{
	position: relative;
	display: inline-block;
	overflow: hidden;
}
.table03 .fileP span{
	display: flex;
	align-items: center;
	height: 30px;
	cursor: pointer;
	font-size: 1.2rem;
}
/*
.table03 .fileP input{
	position: absolute;
	left: 0;
	top: 0;
	opacity: 0;
	-ms-filter: 'alpha(opacity=0)';
	width:100%;
	height: 30px;
	cursor: pointer;
}
*/

.formWrap .btn{padding: 20px 0 0px;text-align: center;}
.formWrap .btn  li + li{margin-top: 10px}
.formWrap .btn  input,
.formWrap .btn  a {
	background: #fff;
	color: #1b78ca;
	display: flex;
    justify-content: center;
    align-items: center;
	width: 188px;
	height: 48px;
	border: 1px solid  #1b78ca;
	font-size: 1.5rem;
	font-weight: 500;
	letter-spacing: 0.1em;
	margin: 0 auto;
}
.formWrap .btn  input[type="submit"],
.formWrap .btn  a {
	background:url(../img/common/arrow01.png)no-repeat right 16px center #1b78ca;
	background-size: 15px auto;
	color: #fff;
}

.toolWrap{
    padding: 40px 0 50px;
    color: #333;
}
.toolWrap .inner{max-width: 940px}
.toolWrap .hd{
    font-size: 1.4rem;
    padding-bottom: 5px;
    border-bottom: 1px solid #b5b5b5;
    margin-bottom: 5px;
    text-align: center;
}
.toolWrap .text{
    font-size: 1.2rem;
}

/*index*/
.recruitSp{
	padding: 20px;
	text-align: center;
}

.indexRecruit{
	padding: 20px 0 20px;
	background: url(../img/index/bg_recruit.jpg)no-repeat left -140px center;
	background-size: auto 100%;
}
.indexRecruit .hdS{
	display: flex;
	align-items: center;
	position: relative;
	padding-left: 5px;
	padding-bottom: 15px;
	margin-bottom: 5px;
}
.indexRecruit .hdS:after {
    content: '';
    width: 1100px;
    height: 5px;
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: 1;
    background: url(../img/index/line_hd.png)no-repeat right bottom;
    background-size: 100% 5px;
}
.indexRecruit .hdS .en{
	font-size: 1.8rem;
	margin-right: 15px
}
.indexRecruit .hdS .jp{
	font-size: 1.75rem;
	margin: 0
}
.indexUl01 li{
	padding: 10px 5px;
	position: relative;
}
.indexUl01 li:after{
	content: '';
    width: 100%;
    height: 1px;
    background: #29a6dd;
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: 1;
}
.indexUl01 li a{
	font-size: 1.25rem;
	line-height: 17px;
	letter-spacing: 0.15em;
}
.indexUl01 .date{
	margin-bottom: 8px;
}
.indexUl01 .text{
}
.indexRecruit .btn{
	text-align: center;
	padding-top: 17px;
}
.indexRecruit .btn img{width: 104px}


.indexAbout{
	padding: 15px 0 0px;
}
.indexAbout .hdS{margin-bottom: }
.indexDl01{
}
.indexDl01 dt{
	margin: 0 -15px;
	position: relative;
}
.indexDl01 dt:before{
	content: '';
	position: absolute;
	left: 5px;
	bottom: 5px;
	width: 100%;
	height: 100%;
	border: 1px solid #29a6dd;
	z-index: -1;
}
.indexDl01 dd{
	padding: 25px 15px 35px;
	margin: 0 -15px;
	background: url(../img/index/bg_about.jpg)no-repeat right center;
	background-size: cover;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}
.indexDl01 dd .text{
	font-size: 1.55rem;
	line-height: 1.74;
	color: #004699;
	font-weight: bold;
	letter-spacing: 0.05em;
	margin-bottom: 16px;
}
.indexDl01 .btn{text-align: center;padding-top: 10px}
.indexDl01 .btn img{width: 120px}

.indexNumber{
	background: url(../img/index/bg_number.jpg)no-repeat center bottom;
	background-size: cover;
	padding: 20px 0;
}
.indexDl02{
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.indexDl02 dt{width: 49%}
.indexNumber .hdS{color: #fff;text-align: left;}
.indexNumber .hdS:after{display: none;}
.indexNumber .hdS .en{
	font-size: 1.65rem;
}
.indexNumber .hdS .jp{
	font-size: 1.6rem;
	margin: 5px 0 15px;
}
.indexNumber .btn{
}
.indexNumber .btn img{width: 130px}
a.btnLink01:hover{opacity: 1}
a.btnLink01 .on{display: none;}
a.btnLink01:hover .no{display: none;}
a.btnLink01:hover .on{display: block;}

.indexWorks{
	padding: 25px 0 30px;
	background: url(../img/index/bg_works_sp.jpg)no-repeat center center;
	background-size: cover;
}
.indexWorks .p01{
	text-align: center;
	font-size: 1.5rem;
	font-weight: bold;
	letter-spacing: 0.25em;
	color: #29a6dd;
}
.indexWorks .p02{
	font-size: 1.4rem;
	letter-spacing: 0.1em;
	font-weight: 500;
	letter-spacing: 0.25em;
	margin: 6px 0 20px;
}
.worksSlider{
	text-align: center;
}
.worksList{
}
.worksList a{
	max-width: 250px;
	margin: 10px auto;
	display: block;
	border: 2px solid #2595e0;
	padding: 10px;
	text-align: center;
	position: relative;
	z-index: 2;
	color: #29a6dd;
	background: url(../img/index/arrow01.png)no-repeat right 20px bottom 10px #fff;
	background-size:  16px auto
}
.worksList a:before{
	content: '';
	position: absolute;
	left: -6px;
	top: -4px;
	width: calc(100% + 12px);
	height: calc(100% + 8px);
	z-index: -1;
	background: url(../img/index/shadow_works.png)no-repeat;
	background-size: 100% 100%
}
.worksList a:hover{opacity: 1}
.worksList a .en{
	font-size: 0.9rem;
	letter-spacing: 0.25em;
	padding: 3px 0 5px;
	white-space: nowrap;
}
.worksList a .jp{
	font-size: 1.5rem;
	letter-spacing: 0.25em;
}
.indexWorks .btn{
	text-align: center;
	padding-top: 20px
}
.indexWorks .btn img{width: 120px}
.slick-prev,
.slick-next {
    position: absolute;
    width: 50px;
    height: 50px;
    z-index: 3;
    background: url(../img/index/slick_prev_sp.png)no-repeat;
    background-size: 100% auto;
    left: -15px;
    top: 50%;
    transform: translateY(-50%);
}
.slick-next{
	left: auto;
	right: -15px;
    background: url(../img/index/slick_next_sp.png)no-repeat;
    background-size: 100% auto;
}

.indexEmployee{
	padding: 10px 0 20px;
	background: url(../img/index/bg_employee.jpg)no-repeat center center;
	background-size: cover;
	color: #fff;
}
.indexEmployee .hdS{color: #fff}
.employeeSlider .slick-prev,
.employeeSlider .slick-next {
    top: 115px;
    left: 0
}
.employeeSlider .slick-next{
	left: auto;
	right: 0
}
.employeeSlist .box{
	position: relative;
	padding: 10px 3px;
	max-width: 210px;
	margin: 0 auto;
}

.employeeSlist .box a{
	display: block;
	width: 100%;
	color: #fff;
}

.employeeSlist .cpy{
	position: absolute;
	left: 0px;
	top: 0;
    /*transform: translateY(-50%);*/
    z-index: 2;
    background: url(../img/index/bg_cpy.png)no-repeat;
    background-size: 100% 100%;
    font-weight: bold;
    letter-spacing: 0.1em;
    font-size: 1.15rem;
    padding: 2px 10px;
    color: #0f9fd1
}
.employeeSlist .cpy.blue{color: #01437f}
.employeeSlist .intro{
	font-size: 1.4rem;
	line-height: 18px;
	letter-spacing: 0.25em;
	margin: 8px 0 8px;
	font-weight: bold;
}
.employeeSlist .name{
	font-size: 1.25rem;
	line-height: 18px;
	letter-spacing: 0.1em;
	font-weight: bold;
}

.employeeSlist .photo img{
	width: 100%;
	height: auto;
}

.indexOther{
	padding: 22px 0;
}
.indexDl03{
}
.indexDl03 dd{
	margin-top: 22px
}
.indexDl03 a{
	display: block;
	position: relative;
	color: #fff;
}
.indexDl03 .img{
	position: relative;
}
.indexDl03 a:hover{opacity: 1}
.indexDl03 .img:before{
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
	width: 100%;
	height: 100%;
	background: url(../img/index/before_other01.png)no-repeat;
	background-size: 100% 100%;
}
.indexDl03 dd .img:before{
	background: url(../img/index/before_other02.png)no-repeat;
	background-size: 100% 100%;
}
.indexDl03 .hdS{
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	z-index: 2;
	width: 100%;
	color: #fff;
}
.indexDl03 .hdS:after{content: none;}
.indexDl03 .hdS .jp{letter-spacing: 0.2em}

.indexEntry{
	background: url(../img/index/bg_entry_sp.jpg)no-repeat center center;
	background-size: cover;
	padding: 20px 0 30px
}
.indexEntry .hdS .jp{letter-spacing: 0.25em}
.indexEntry .p01{
	text-align: center;
	font-size: 1.4rem;
	letter-spacing: 0.1em;
	font-weight: bold;
	margin-bottom: 18px
}
.indexUl02{
}
.indexUl02 li{
	text-align: center;
	margin-bottom: 15px;
}
.indexUl02 img{width: 250px}


/*welfare*/
.evrmtSec01{
	padding: 22px 0 30px;
	background: url(../img/welfare/bg_sec01.jpg)no-repeat bottom center;
	background-size: 100% calc(100% - 43px); 
}
.evrmtSec01 .bgImg{
	height: 173px;
}
.evrmtSec01 .p01,
.evrmtSec02 .p01{
	text-align: center;
	font-size: 1.7rem;
	line-height: 32px;
	color: #004699;
	margin: 11px 0 15px;
	font-weight: bold;
}
.evrmtSec01 .p02,
.evrmtSec02 .p02{
	font-size: 1.5rem;
	line-height: 31px;
}

.evrmtSec01 .p03{
	width: 100%;
	margin: auto;
	margin-top: 20px;
	line-height: 180%;
}

.evrmtSec02{
	padding: 22px 0 40px;
	background: url(../img/welfare/bg_sec02.jpg)no-repeat top 40px center;
	background-size: 100% auto;
}
.evrmtSec02 .p01{
	margin: 0
}
.evrmtSec02 .p02{
	margin: 15px 0 25px;
}

.evrmtSec03{
	padding: 45px 0 80px;
	background-color: #f0f5f7;
}

.group_box{
	
}

.group_box p{
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: bold;
	color: #0071b7;
	text-align: center;
	font-size: 2.0rem;
	margin-bottom: 10px;
	margin-top: 30px;
	
}

.group_box dl dd{
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: bold;
}

.evrmtSec01 ul {
    display: flex;
	flex-wrap: wrap;
}

.evrmtSec01 ul li {
    width: 50%;
}

.evrmtSec01 .p03 .sm_txt{
	font-size: 80%;

}



.evrmtUl01{margin-left: -30px}
.evrmtUl01 li{
	float: left;
	width: 50%;
	padding-left: 30px;
	margin-bottom: 30px;
	text-align: center;
}
.evrmtUl01 .text{
	font-size: 1.5rem;
	line-height: 19px;
	letter-spacing: 0.1em;
	color: #0071b7;
	font-weight: bold;
	margin-top: 8px;
}
.recreationBox .hd{
	padding: 0 5px;
	font-size: 1.7rem;
	letter-spacing: 0.2em;
	color: #0071b7;
	border-bottom: 1px solid #80b8db;
	margin-bottom: 12px;
}
.evrmtUl02{font-size: 0;text-align: center;padding: 0 0px}
.evrmtUl02 li{
	display: inline-block;
	max-width: 50%;
	padding: 0 6px;
	margin-bottom: 15px;
}
.evrmtUl02 li .text{
	font-size: 1.25rem;
	font-weight: 500;
	padding-top: 4px;
	letter-spacing: 0.25em;
}
.evrmtUl02 li .text.tl{text-align: left;}

.pageNext{
	background: #e9f9ff;
	padding: 30px 0px;
}
.white{
	background: #fff;
	padding: 30px 0px;
}


.pageNext a{
	display: flex;
	align-items: center;
	max-width: 318px;
	height: 77px;
	border: 2px solid #29a6dd;
	padding: 0 28px;
	background: url(../img/common/arrow_next.png)no-repeat right 28px center #fff;
	background-size: 20px auto;
	color: #0071b7;
	margin: 0 auto;
}
.pageNext .en{
	font-size: 2.6rem;
	letter-spacing: 0.2em;
}
.pageNext .jp{
	font-size: 1.5rem;
	font-weight: bold;
	margin-left: 25px
}


/*knowSec01*/
.knowSec01{
	padding: 15px 0 60px;
	background: url(../img/know/bg_sec01.jpg)no-repeat center center;
	background-size: cover;
}
.knowSec01 .p01{
	text-align: center;
	font-size: 2.5rem;
	letter-spacing: 0.2em;
	color: #004699
}
.knowSec01 .p02{
	text-align: center;
	font-size: 1.75rem;
	letter-spacing: 0.05em;
	margin: 5px 0 20px;
	font-weight: bold;
	color: #004699
}
.knowSec01 .text{
	font-weight: 500;
	font-size: 1.5rem;
	line-height: 2;
}
.knowSec01 .text + .text{padding-top: 0px}

.knowSec02{
	background: url(../img/know/bg_sec02_sp.png)no-repeat top 25px center,
	url(../img/welfare/bg_sec01.jpg)no-repeat bottom center;
    background-size: 100% auto,100% 100%;
    padding: 15px 0 40px;
    position: relative;
}
.knowSec02 .inner{max-width: 1150px}
.knowDl01{margin-bottom: 23px}
.knowDl01 dt{
	margin-bottom: 15px
}
.knowDl01 dd{
	overflow: hidden;
}
.knowDl01 .title{
	display: flex;
	align-items: center;
	font-size: 1.5rem;
	letter-spacing: 0.05em;
	color: #0071b7;
	font-weight: bold;
	margin-bottom: 14px
}
.knowDl01 .title span{
	font-size: 2.9rem;
	line-height: 1;
	letter-spacing: 0.2em;
	color: #29a6dd;
	font-weight: normal;
	min-width: 48px;
	height: 38px;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-right: 17px;
	background: url(../img/know/point.png)no-repeat;
	background-size: 100% 100%;
}
.knowDl01 .text{
	font-size: 1.4rem;
	line-height: 26px;
	letter-spacing: 0.05em;
	font-weight: 500
}


.knowSec03{
    padding: 25px 0 0px;
}
.knowUl01{margin-left: -15px}
.knowUl01 li{
	float: left;
	width: 100%;
	padding-left: 15px;
	margin-bottom: 15px
}
.knowUl01 li.big{width: auto}
.knowSec03 .hdS{display: none;}
.tabHd{
	padding:15px 4px;
	line-height: 1;
	border-bottom: 2px solid #0071b7;
	background: url(../img/common/tab_open.png)no-repeat right 4px center;
	background-size: 33px auto;
	cursor: pointer;
	font-size: 1.4rem;
	letter-spacing: 0.1em;
	font-weight: bold;
	color: #0071b7
}
.tabHd.active{
	background: url(../img/common/tab_close.png)no-repeat right 4px center;
	background-size: 33px auto;
}
.tabCont {
    display: none;
    padding-top: 15px;
}
.tabClose{
	padding-top: 25px;
	text-align: center;
}
.tabClose img{width: 166px}

.knowSec04{
	padding: 25px 0 45px;
}
.knowSec04 .hdS{display: none;}
.knowSec04 .tabCont{
	padding: 20px 15px 40px;
	background: #e9f9ff;
	margin: 0 -15px;
}
.knowUl02{margin-left: -7px}
.knowUl02 li{
	float: left;
	width: 33.33%;
	padding-left: 7px;
}
.knowSec04 .p01{
	text-align: center;
	font-size: 1.75rem;
	letter-spacing: 0.05em;
	color: #4d4d4d;
	margin: 20px 0;
	font-weight: bold;
}
.knowSec04 .p02{
	font-size: 1.4rem;
	line-height: 2;
	letter-spacing: 0.1em;
	font-weight: 500;
}

.knowSec05{
	padding: 15px 0;
	background: #b1d9f2;
	text-align: center;
}
.knowUl03{text-align: center;}
.knowUl03 li + li{
	margin-top: 10px
}
.knowWrap .pageNext{background: none}

.knowyt{
	width: 100%;
	margin: auto;
	margin-top: 40px;
}


.knowyt iframe{
	text-align: center;
	width: 100%;
	height: 200px;
}

/*about*/
.aboutSec01{
	background: url(../img/know/bg_sec02_sp.png)no-repeat top 80px center,
	url(../img/about/bg_sec01.jpg)no-repeat bottom center;
    background-size: 100% auto,750px auto;
    padding: 20px 0 80px;
}
.aboutUl01{margin-left: -8px}
.aboutUl01 li{
	float: left;
	width: 50%;
	padding-left: 8px;
	margin-bottom: 8px;
}
.aboutSec01 .p01{
	text-align: center;
	font-size: 1.75rem;
	line-height: 27px;
	letter-spacing: 0.05em;
	color: #004699;
	margin: 26px 0 14px;
	font-weight: bold;
}
.aboutSec01 .p02{
	font-size: 1.5rem;
	line-height: 2;
	letter-spacing: 0.1em;
	font-weight: 500;
}

.aboutSec02{
	margin-top: -40px;
	background: url(../img/welfare/bg_sec01.jpg)no-repeat bottom center;
    background-size: 100% calc(100% - 40px);
    padding: 18px 0 30px;
    position: relative;
}
.aboutSec02 .hdS{margin-bottom: 30px}
.aboutDl01{
}
.aboutDl01 dt{
	margin-bottom: 30px
}
.aboutDl01 .img{
	position: relative;
	max-width: 80%;
	margin: 0 auto;
	z-index: 1;
}
.aboutDl01 .img img{position: relative;z-index: 2}
.aboutDl01 .img:before{
	content: '';
	position: absolute;
	left: -14px;
	top: -10px;
	z-index: 1;
	width: calc(100% + 28px);
	height: calc(100% + 20px);
	background: url(../img/about/before_img.png)no-repeat;
	background-size: 100% 100%;
}
.aboutDl01 .title{
	font-weight: bold;
	color: #333333;
	font-size: 1.75rem;
	letter-spacing: 0.05em;
	margin-bottom: 20px;
	text-align: center;
}
.aboutDl01 .text{
	font-size: 1.5rem;
	line-height: 2;
	letter-spacing: 0.05em;
	font-weight: 500
}

.aboutSec03{
	padding: 25px 0
}
.aboutSec03 .hdS{margin-bottom: 18px}
.aboutSec03 .tabBox + .tabBox{margin-top: 20px}
.aboutDl02{
	position: relative;
	padding-bottom: 0px;
}
.aboutDl02 dt{
	margin-bottom: 0px;
}
.aboutDl02 dd{

}
.aboutDl02 .img{position: relative;z-index: 1}
.aboutDl02 .img img{position: relative;z-index: 2}
.aboutDl02 .img:before{
	content: '';
	position: absolute;
	left: -7px;
	top: 7px;
	z-index: 1;
	width: 100%;
	height: 100%;
	background: url(../img/welfare/bg_sec01.jpg)no-repeat;
	background-size: 100% 100%;
}
.hd01{
	color: #fff;
	background: #0071b7;
	height: 72px;
	position: relative;
	padding: 0 20px;
	margin-bottom: 15px;
}
.hd01 .en{
	font-size: 0.9rem;
	letter-spacing: 0.25em;
	padding: 10px 0 8px;
}
.hd01 .jp{
	font-size: 1.75rem;
	letter-spacing: 0.25em;
}
.aboutDl02 .title{
	font-size: 1.75rem;
	line-height: 25px;
	letter-spacing: 0.05em;
	color: #0071b7;
	margin: 15px 0 10px;
	font-weight: bold;
}
.aboutDl02 .text{
	font-size: 1.5rem;
	line-height: 2;
	font-weight: 500;
	letter-spacing: 0.05em;
	margin-bottom: 15px;
}
.aboutDl02 .link{
	display: block;
	background: url(../img/about/arrow.png)no-repeat right 13x bottom 13px #fff;
	background-size: 20px auto;
	padding: 10px;
	box-shadow: 0 0 4px rgba(0,0,0,.25);
}
.aboutDl02 .intro{
	font-size: 1.1rem;
	letter-spacing: 0.1em;
	color: #0071b7;
	padding-bottom: 2px;
	margin-bottom: 6px;
	border-bottom: 1px solid #0071b7;
	font-weight: 500
}
.aboutDl02 .photo{
	float: left;
	width: 75px;
	margin-right: 12px;
}
.aboutDl02 .ovfl{
	overflow: hidden;
	line-height: 1.8;
}
.aboutDl02 .cpy{
	font-size: 1rem;
	letter-spacing: 0.1em;
	font-weight: bold;
	color: #0f9fd1;
}
.aboutDl02 .name{
	font-size: 1.1rem;
	letter-spacing: 0.1em;
	font-weight: bold;
}

#ac04 .hd01{background: #29a6dd}
#ac04 .hd01:before{background:#29a6dd }
#ac04 .aboutDl02 .title{color: #29a6dd}

#ac05 .hd01{background: #1ba5a5}
#ac05 .hd01:before{background:#1ba5a5 }
#ac05 .aboutDl02 .title{color: #1ba5a5}

#ac06 .hd01{background: #54a2ba}
#ac06 .hd01:before{background:#54a2ba }
#ac06 .aboutDl02 .title{color: #54a2ba}

#ac07 .hd01{background: #c6a138}
#ac07 .hd01:before{background:#c6a138 }
#ac07 .aboutDl02 .title{color: #c6a138}


#ac09 .hd01{background: #00a498}
#ac09 .hd01:before{background:#00a498 }
#ac09 .aboutDl02 .title{color: #00a498}

#ac10 .hd01{background: #4292ba}
#ac10 .hd01:before{background:#4292ba }
#ac10 .aboutDl02 .title{color: #4292ba}


#about .pageNext{background: #fff}
#about .tabHd{font-size: 1.75rem}


/*careerplan*/
.careerplanSec01 {
    background:url(../img/welfare/bg_sec01.jpg)no-repeat bottom center;
    background-size:100% calc(100% - 50px);
    padding: 30px 0 40px;
    position: relative;
}
.careerplanUl01{display: flex;justify-content: space-between;margin: 0 -15px}
.careerplanUl01 li + li{margin-left: 8px}
.careerplanSec01 .p01{
	text-align: center;
	font-size: 1.75rem;
	letter-spacing: 0.05em;
	color: #4d4d4d;
	margin: 22px 0 19px;
	font-weight: bold;
}
.careerplanSec01 .p02{
	font-size: 1.5rem;
	line-height: 31px;
	letter-spacing: 0.1em;
	font-weight: 500;
}

.careerplanSec02 {
    padding: 25px 0 60px;
    background: url(../img/know/bg_sec01.jpg)no-repeat center center;
    background-size: 750px auto;
}
.careerplanUl02{
}
.careerplanUl02 li{

}
.careerplanUl02 li + li{
	margin-top: 30px
}
.careerplanDl01 dt{
	float: left;
	margin-left: -15px;
	width: calc(50% + 15px);
	margin-right: 15px;
}
.careerplanDl01 dd{overflow: hidden;}
.careerplanUl02 .title{
	font-size: 1.5rem;
	letter-spacing: 0.1em;
	color: #333333;
	margin: 6px 0;
	font-weight: bold;
}
.careerplanUl02 .text{
	font-size: 1.4rem;
	line-height: 19px;
	letter-spacing: 0.1em;
	font-weight: 500;
}

.careerplanSec03{
    background:url(../img/welfare/bg_sec01.jpg)no-repeat bottom center;
    background-size:100% calc(100% - 45px);
    padding: 25px 0 20px;
    position: relative;
}
.tabUl{
	display: flex;
	justify-content: center;
}
.tabUl li{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100px;
	max-width: calc(33.33% - 8px);
	height: 30px;
	margin: 0 4px;
	background: #fff;
	border: 1px solid #29a6dd;
	border-radius: 5px 5px 0 0;
	color: #29a6dd;
	font-size: 1.4rem;
	font-weight: bold;
	letter-spacing: 0.1em;
	border-bottom: none;
}
.tabUl li.active{
	background: #29a6dd;
	color: #fff;
}
.tabInner{
	background: #fff;
	border: 1px solid #29a6dd;
	padding: 15px 20px;

	position: fixed;
	top: -10000%;
	left:-10000%;
	width: 320px;
	/*display: none;*/
}
.tabInner.active{
	position: static;
	width: auto;
	/*display: block;*/
}

.tabInner .hd{
	font-size: 1.5rem;
	letter-spacing: 0.1em;
	font-weight: bold;
	color: #0da3cc;
	text-align: center;
	margin-bottom: 18px;
}
.tabInner .p01{
	font-size: 1.4rem;
	font-weight: 500;
	letter-spacing: 0.1em;
}
.tabInner .hd + .p01{
	margin: -12px auto 10px
}
.tabUl02{
}
.tabUl02 li{
	position: relative;
}
.tabUl02 li + li{margin-top: 30px}
.tabUl02 li + li:before{
	content: '';
	position: absolute;
	left: 0;
	top:-30px;
	z-index: 1;
	width: 100%;
	height: 30px;
	background: url(../img/careerplan/before_tab_sp.png)no-repeat center center;
	background-size: 27px auto
}

.tabUl02 .box{
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 7px;
}
.tabUl02 .date{
	font-size:1.15rem;
	letter-spacing: 0.1em;
	font-weight: bold;
	color: #0da3cc;
}
.tabUl02 .title{
	display: flex;
	align-items: center;
	padding: 0 16px;
	width: 172px;
	height: 46px;
	background: url(../img/careerplan/bg_title_sp.png)no-repeat;
	background-size: 100% 100%;
	font-size: 1.4rem;
	line-height: 1.3;
	font-weight: bold;
	color: #fff;
	letter-spacing: .05em;
}
.tabUl02 .title br{display: none;}
.tabUl02 .text{
	background: #dcf7ff;
	padding: 6px 8px;
	font-size: 1.25rem;
	line-height: 20px;
	letter-spacing: .1em;
	font-weight: 500;
	min-height: 72px;
}

.careerplanSec04{
	margin-top: 0;
    background:url(../img/careerplan/bg_sec04.jpg)no-repeat bottom center;
    background-size:100% calc(100% - 45px);
    padding: 25px 0 20px;
    position: relative;
}
#ac04 .tabInner .hd,
#ac04 .tabUl02 .date{
	color: #0071b7
}
#ac04 .tabUl02 .title{
	background: url(../img/careerplan/bg_title02_sp.png)no-repeat;
    background-size: 100% 100%;
}
#ac04 .tabUl02 li + li:before{
	background: url(../img/careerplan/before_tab03_sp.png)no-repeat center center;
	background-size: 27px auto
}

#careerplan .pageNext{background: #fff}
.errorMessage {
    color: #ea182f;
}

.aboutDl02 .photo img{
	height: auto;
}


/**/

.rec_tab_area{
	width: calc(100% - 20px);
	margin: 35px auto 0;
	border-bottom: 1px solid #29a6dd;
}

.rec_tab_area ul{
    display: flex;
    justify-content: center;
    cursor: pointer;
}

.rec_tab_area ul li{
    display: flex;
    justify-content: center;
    align-items: center;
    max-width: 50%;
    height: 60px;
    margin: 0 10px;
    background: #fff;
    border: 1px solid #29a6dd;
    border-radius: 10px 10px 0 0;
    color: #29a6dd;
    font-size: 1.4rem;
    font-weight: bold;
    letter-spacing: 0.1em;
    border-bottom: none;
}

.rec_tab_area ul li a{
	box-sizing: border-box;
	padding: 0 8px;
	text-align: center;
}

.rec_tab_area ul li.active{
    background: #29a6dd;
    color: #fff;
}

.rec_tab_area ul li.active a{
    color: #fff;
}









</pre></body></html>