@charset "UTF-8";
         
.contents_inner {
    display: block;
    padding-top: 120px;
    margin-top: -120px;
}
.overimg:hover{opacity: 0.5;}
.spnone{display: block;}
.sponly{display: none;}
.f-left{float: left;}
.f-right{float: right;}
.img100{width: 100%;}
.normal{font-weight: normal;}
.justify{text-align: justify;}
.w48per{width: 48%;}
.w30per{width: 30%;}
.w48per img{width: 100%;}
.w66per{width: 66%;position: relative;}
.w80per{width: 80%;margin: 0 auto;}
.w90per{width: 90%;margin: 0 auto;}
.white{color:#ffffff;}
.shadow{filter: drop-shadow(4px 4px 5px  rgba(0, 0, 0, 0.32));}
.right_btn{float: right;width: 46%;margin: 2em 0;display: block;}
.left_btn{float: left;width: 46%;margin: 2em 0;display: block;}
.center_btn{width: 46%;margin: 2em auto;display: block;}
.sec_up{position:inherit;z-index: 100;}
.black{color:#000000;}
.blue_gray{color: #72828b;}
.center{text-align: center;}
.sec_ttl{font-size: 1.6em;}
.sec_sub_ttl{font-size: 1.4em;}

/* section_00 */
.section_00{position: relative;z-index: 100;}
.sec00_mt{margin-top: -150px;margin-bottom: -150px;}

/* section_01 */
/* news */
.news_left{position: relative; width: 25%;float: left;padding-right: 3%;}
.news_left img{width: 100%;}
#news{width: 72%;float: right;}


#news dl a {
    display: block;
    justify-content: flex-start;
    align-items: center;
    padding-bottom: 1em;
    margin-bottom: 1em;
	margin-top: 1em;
	border-bottom: solid 1px #808080;
	color: #000000;
	position: relative;
	width: 100%;
}

#news dl:last-of-type {
    margin-bottom: 0;
}
/* 右矢印アイコン */
#news dl .arrow {
  width: 28px;
  height: 28px;
  min-width: 28px;
 position: absolute;
  display: inline-block;
	right:2%;bottom:20%;
	border: 1px solid #004d85;
	border-radius: 50%; /* 円形にする */
}

#news dl .arrow::before{
	content: "";
  position: absolute;
  top: 50%;
  left: 40%;
  width: 12px;
  height: 12px;
  border-top: 1px solid #004d85;
  border-right: 1px solid #004d85;
  transform: translate(-50%, -50%) rotate(45deg);}
#news dl dt span {
    position: relative;
    display: inline-block;
    align-items: center;
    padding-right: 0em;
	width: 130px;
	color:#48809e;
}

#news dl dd {
    font-size: 1.04em;
    line-height: 1.5;
	display: block;
    transition:all 0.3s;margin-right: 4em;
}
#news dl a:hover {
    color: #003894;
}
.news_more_pc{
	position: absolute;
	bottom:0;
	width: 96%;
	display: block;
	box-sizing: border-box;
    align-items: center;
    padding: 0.5em;
	padding-top: 0.8em;
	padding-bottom: 0.8em;
    margin-bottom: 1em;
	margin-top: 4em;
	border: solid 1px #004d85;
	color: #004d85;
	position: relative;
	transition:all 0.3s;
	padding-left: 2em;
	font-size: 1.2em;
	line-height: 1.2em;
}
.news_more_pc .arrow {
  width: 28px;
  height: 28px;
  min-width: 28px;
 position: absolute;
  display: inline-block;
	right:5%;
	border: 1px solid #004d85;
	border-radius: 50%; /* 円形にする */
	margin-top: -0.2em;
}
.news_more_pc .arrow::before{
	content: "";
  position: absolute;
  top: 50%;
  left: 40%;
  width: 12px;
  height: 12px;
  border-top: 1px solid #004d85;
  border-right: 1px solid #004d85;
  transform: translate(-50%, -50%) rotate(45deg);}
.news_more{
	display: none;
}



/* section_02 */
.section_02_bgcolor{width: 100vw; /* 画面幅いっぱい */
  margin-left: calc(50% - 50vw); /* 親要素から左にずらす */
  background: linear-gradient(90deg, #426f99 50%, #ffffff 50%); /* 50%で分割 */
margin-bottom:5em;}
.section_02{width: 1200px; height: 370px; margin:0 auto;background-image: url("../img/sec_02_back_pc.webp");
	background-repeat: no-repeat;background-size: cover;background-position: center;}
.sec02_left{width: 36%;float: left; padding: 7% 0 0 2%;}
.sec02_right{width: 40%;float: right;padding: 7% 20% 0 2%;}



/* section_03 */
.sec_03_text{width: 48%;}
.section_03{background-color: #004d85;color: #ffffff;}
.mtb{margin: 5em 0;}
.recruit_ul {padding-left: 2em;}
.recruit_ul li{list-style: disc;}
.sec_03_btn_sp{display: none;}
.sec_03_btn{display: inline-block; margin-top: 5%;}
.sec_03_btn img{height: 50px;}
.sec03_img{width: 50%;}
.sec03_img img{width: 140%; height: 520px;object-fit: cover;}
/* section_04 */
.section_04{background-color: #003894;}


/* section_05 */
.section_05{margin:0 auto;background-image: url("../img/sec_05_back_pc.webp");
	background-repeat: no-repeat;background-size: cover;background-position: center; position: relative;}
.sec_05_ttl{width: 40%;float: left;}
.sec_05_btn{float: left;}
.sec_05_btn img{height: 50px;}

/* section_06 */
.section_06{background-image: linear-gradient(to bottom, #ffffff 30%, #172a88 30%);
  height: 700px; /* 要素の高さが必要 */padding-bottom: 5em;}
.sec_06_wrap{position: relative;}
.sec_06_white{background-color: #ffffff;width: 70%;padding: 10%;box-sizing: border-box;}
.sec_06_p{width: 80%;text-align: justify;font-weight: bold;}
.sec06_mb40{margin-bottom: 40px;}
.sec_06_img{width: 40%; position: absolute;bottom:0;right: 0;}
.sec_06_btn{margin-top: 5%;}
.sec_06_btn img{height: 50px;}

/* section_07 */
.section_07{background-color: #e5e9ed;}
.sec_07_left{width: 40%;float: left;}
.sec_07_left img{width: 100%;}
.sec_07_right{width: 56%;float: right;}
.works_r{width: 50%;float: left;margin-top: 1em;}
.sec_07_right img.works{width: 50%;float: left;}
#works{width: 100%;}
#works dl a {
    display: block;
    justify-content: flex-start;
    align-items: center;
    padding-bottom: 1em;
    margin-bottom: 1em;
	margin-top: 1em;
	border-bottom: solid 1px #808080;
	color: #000000;
	position: relative;
	width: 100%;}
#works dl:last-of-type {
    margin-bottom: 0;}
/* 右矢印アイコン */
#works dl .arrow {
  width: 28px;
  height: 28px;
  min-width: 28px;
 position: absolute;
  display: inline-block;
	right:2%;bottom:20%;
	border: 1px solid #004d85;
	border-radius: 50%; /* 円形にする */}
#works dl .arrow::before{
	content: "";
  position: absolute;
  top: 50%;
  left: 40%;
  width: 12px;
  height: 12px;
  border-top: 1px solid #004d85;
  border-right: 1px solid #004d85;
  transform: translate(-50%, -50%) rotate(45deg);}
#works dl dt span {
    position: relative;
    display: inline-block;
    align-items: center;
    padding: 0.4em 1em;
	width: auto;
	color:#3d3a39;border-radius: 25px;font-weight: bold;margin-bottom: 0.6em;}
#works dl dd {
    font-size: 1.04em;
    line-height: 1.5;
	display: block;
    transition:all 0.3s;margin-right: 4em;}
#works dl a:hover {
    color: #003894;}
.bg_cat_01{background-color: #efb917;}
.bg_cat_02{background-color: #8bc6cb;}
.bg_cat_03{background-color: #b7d99b;}
.bg_cat_04{background-color: #f3c1b1;}
.sec_07_btn{float: right;}
.sec_07_btn img{height: 50px;}

/* section_08 */
.sec_08_text{width: 48%;}
.section_08{background-color: #004d85;color: #ffffff;margin-top: 5em;}
.mtb{margin: 5em 0;}
.sec_08_btn{display: inline-block; margin-top: 10%;}
.sec_08_btn img{height: 50px;margin-left: 3em;}
.sec08_img{width: 50%;}
.sec08_img img{width: 140%; height: 450px;object-fit: cover;}


/*
===================================================
 tb タブレット解像度
===================================================
*/
@media screen and (max-width:1000px) {
.spnone{display: block;}
.sponly{display: none;}
/* section_00 */
.sec00_mt{margin-top: -70px;margin-bottom: -20px;}
/* section_02 */
.section_02_bgcolor{width: 100vw; /* 画面幅いっぱい */
  margin-left: calc(50% - 50vw); /* 親要素から左にずらす */
  background: linear-gradient(90deg, #426f99 50%, #ffffff 50%); /* 50%で分割 */
margin-bottom:5em;}
.section_02{width: 100%; height: 280px; margin:0 auto;background-image: url("../img/sec_02_back_pc.webp");
	background-repeat: no-repeat;background-size: contain;background-position: center;}
.sec02_left{width: 30%;float: left; padding: 8% 0 0 8%;}
.sec02_right{width: 35%;float: right;padding: 8% 25% 0 2%;}
/* section_06 */
.section_06{background-image: linear-gradient(to bottom, #ffffff 30%, #172a88 30%);
  height: 600px; /* 要素の高さが必要 */padding-bottom: 5em;}
/* section_07 */
.section_07{padding-top: 2em;}
.works_r{width: 50%;float: left;margin-top:0.5em;font-size: 0.9em;}
	}
/*
===================================================
 sp スマホ解像度
===================================================
*/
@media screen and (max-width:640px) {
.spnone{display: none;}
.sponly{display: block;}
.f-left{float: none;}
.f-right{float: none;}
.w90per{width: 100%;margin:0 auto;}
.w80per{width: 80%;margin:0 auto;}
.w48per{width: 100%;margin:0 auto 2em;}
.w30per{width: 100%;}
.w66per{width: 100%;position: relative;}	
.lh_l {line-height:1.8 !important;}
.right_btn{float: none;width: 80%;margin: 2em auto;display: block;}
.left_btn{float: none;width: 80%;margin: 2em auto;display: block;}
.center_btn{width: 80%;margin: 2em auto;display: block;}	
.sec_ttl{font-size: 1.2em;}
.sec_sub_ttl{font-size: 1.2em;line-height: 1.2em;}
/* section_00 */	
.sec00_mt{margin-top: -70px;margin-bottom: 00px;}
/* section_01 */
/* news */
.news_left{position: relative; width: 100%;float: none;padding-right: 0%;}
.news_left img{width: auto;height: 50px}
#news{width: 100%;float: none;}

#news dl a {
    display: block;
    justify-content: flex-start;
    align-items: center;
    padding-bottom: 0.6em;
    margin-bottom: 0.6em;
	margin-top: 0.6em;
	border-bottom: solid 1px #808080;
	color: #000000;
	position: relative;
	width: 100%;
}
#news dl:last-of-type {
    margin-bottom: 0;
}
/* 右矢印アイコン */
#news dl .arrow {
  width: 28px;
  height: 28px;
  min-width: 28px;
 position: absolute;
  display: inline-block;
	right:2%;
}

#news dl .arrow::before{
	content: "";
  position: absolute;
  top: 100%;
  left: 40%;
  width: 13px;
  height: 13px;
  transform: translate(-50%, -150%) rotate(45deg);}
#news dl dt span {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding-right: 0em;
	width: 130px;
}

#news dl dd {
    font-size: 0.84em;
    line-height: 1.3;
	display: block;
    transition:all 0.3s;margin-right: 3em;
}
#news dl a:hover {
    color: #003894;
}
.news_more_pc{ display: none;
}
.news_more{
	position: absolute;
	bottom:0;
	width: 100%;
	display: block;
	box-sizing: border-box;
    align-items: center;
    padding: 0.5em;
	padding-top: 0.8em;
	padding-bottom: 0.8em;
    margin-bottom: 1em;
	margin-top: 1em;
	border: solid 1px #004d85;
	color: #004d85;
	position: relative;
	transition:all 0.3s;
	padding-left: 1em;
	font-size: 1.2em;
	line-height: 1.2em;
}
.news_more .arrow {
  width: 28px;
  height: 28px;
  min-width: 28px;
 position: absolute;
  display: inline-block;
	right:2%;
	border: 1px solid #004d85;
	border-radius: 50%; /* 円形にする */
	margin-top: -0.2em;
}
.news_more .arrow::before{
	content: "";
  position: absolute;
  top: 50%;
  left: 40%;
  width: 12px;
  height: 12px;
  border-top: 1px solid #004d85;
  border-right: 1px solid #004d85;
  transform: translate(-50%, -50%) rotate(45deg);}
	
/* section_02 */
.section_02_bgcolor{width: 100%; /* 画面幅いっぱい */
  margin-left: 0; /* 親要素から左にずらす */
  background: none; /* 50%で分割 */
margin-bottom:0em;padding-bottom: 3em;}
.section_02{width: 100%; height: auto; margin:0 auto;background-image: url("../img/sec_02_back_sp.webp");
	background-repeat: no-repeat;background-size: cover;background-position: top center;}
.sec02_left{width: 60%;float: none; padding: 12% 0 0 5%;}
.sec02_right{width: 60%;float: none;padding: 4% 0% 0 5%;}
.sp_width{width: 160%;margin-top: 5%;}
	
/* section_03 */
.sec_03_text{width: 100%;}
.section_03{background-color: #004d85;color: #ffffff;padding:3em 0;}
.mtb{margin: 0em 0;}
.recruit_ul {padding-left: 2em;}
.recruit_ul li{list-style: disc;}
.sec_03_btn{display: none; margin-top: 5%;}
.sec_03_btn_sp{display: block;padding: 1em 0;}
.sec_03_btn_sp img{width: 100%; height: auto;}
.sec03_img{width: 100%;}
.sec03_img img{width: 100%; height: auto;object-fit: cover;}
.recruit_menu_box{margin: 2em 0;border-top: solid 1px #ffffff;}
.recruit_sp_menu{width: 100%; border-bottom: solid 1px #ffffff;}
.recruit_sp_menu img{width: 100%;padding: 0.2em 0;}
/* section_04 */
.section_04{display: none;}

	
/* section_05 */
.section_05{margin:0 auto;background-image: url("../img/sec_05_back_sp.webp");
	background-repeat: no-repeat;background-size: contain;background-position:top center; position: relative;}
.sec_05_ttl{width: 70%;float: left;}
	
.sec_05_btn_sp{width: 100%}
.sec_05_btn_sp img{width: 100%;}

/* section_06 */
.section_06{background-image: linear-gradient(to bottom, #ffffff 30%, #172a88 30%);
  height: auto; /* 要素の高さが必要 */padding-bottom: 2em;}
.sec_06_wrap{position: relative;}
.sec_06_white{background-color: #ffffff;width: 100%;padding: 10% 5% 20%;box-sizing: border-box;}
.sec_06_p{width: 100%;text-align: justify;font-weight: bold;}
.sec06_mb40{margin-bottom: 10px;}
.sec_06_img{width: 100%; position: relative;bottom:0;right: 0;padding:0 5%;box-sizing: border-box;margin-top: -10%;}
.sec_06_btn{margin-top: 5%;}
.sec_06_btn img{height: auto;width: 100%;}

/* section_07 */
.section_07{margin-top: 3em}
.sec_07_left{width: 100%;float: none;}
.sec_07_left img{width: 100%;margin: 2em 0;}
.sec_07_right{width: 100%;float:none;}
.works_r{display: none;}
.sec_07_right img.works{width: 46%;float: none;}
#works{width: 100%;margin-top: 1em;}
#works dl a {
    display: block;
    justify-content: flex-start;
    align-items: center;
    padding-bottom: 0.5em;
    margin-bottom: 0.5em;
	margin-top: 0.5em;
	border-bottom: solid 1px #808080;
	color: #000000;
	position: relative;
	width: 100%;}
#works dl:last-of-type {
    margin-bottom: 0;}
/* 右矢印アイコン */
#works dl .arrow {
  width: 20px;
  height: 20px;
  min-width: 20px;
 position: absolute;
  display: inline-block;
	right:2%;bottom:20%;
	border: 1px solid #004d85;
	border-radius: 50%; /* 円形にする */}
#works dl .arrow::before{
	content: "";
  position: absolute;
  top: 50%;
  left: 40%;
  width: 8px;
  height: 8px;
  border-top: 1px solid #004d85;
  border-right: 1px solid #004d85;
  transform: translate(-50%, -50%) rotate(45deg);}
#works dl dt span {
    position: relative;
    display: inline-block;
    align-items: center;
    padding: 0.2em 0.8em;
	width: auto;
	font-size: 0.9em;
	color:#3d3a39;border-radius: 15px;font-weight: bold;margin-bottom: 0.2em;margin-left: 0.4em;}
#works dl dd {
    font-size: 0.9em;
    line-height: 1.2;
	display: block;
    transition:all 0.3s;margin-right: 2.4em;margin-left: 0.4em;}
#works dl a:hover {
    color: #003894;}
.bg_cat_01{background-color: #efb917;}
.bg_cat_02{background-color: #8bc6cb;}
.sec_07_btn{width: 100%; float: right;}
.sec_07_btn img{height: auto;width: 100%;}

/* section_08 */
.sec_08_text{width: 100%;}
.section_08{background-color: #004d85;color: #ffffff;margin-top: 3em;padding: 2em 0;}
.mtb{margin: 0em 0;}
.sec_08_btn{display: inline-block; margin-top: 10%;width: 100%;}
.sec_08_btn img{width: 100%;height: auto;margin-left: 0em;}
.sec08_img{width: 100%;}
.sec08_img img{width: 100%; height: auto;object-fit: cover;margin-top: 2em;}





}
