@charset "utf-8";
/* CSS Document */
html {
    font-size: 16px;
    line-height: 1em;
}
body {
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
    -webkit-text-size-adjust: 100%;
    background-color: #fff;
    color: #555555;
    letter-spacing: 0.04em;
    font-size: 1rem;
    min-width: 1080px;
    font-weight: 500 !important;
}
/* vietnamese */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/roboto/v30/KFOlCnqEu92Fr1MmEU9fCxc4AMP6lbBP.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/roboto/v30/KFOlCnqEu92Fr1MmEU9fChc4AMP6lbBP.woff2) format('woff2');
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/roboto/v30/KFOlCnqEu92Fr1MmEU9fBBc4AMP6lQ.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
.roboto {
    font-family: "Poppins", sans-serif;
    letter-spacing: 0.04em;
}
.clearfix:after {
    content: ".";
    display: block;
    height: 0;
    font-size: 0;
    clear: both;
    visibility: hidden;
}
img {
    width: auto;
    max-width: 100%;
    -webkit-backface-visibility: hidden;
    height: auto;
}
a[href^="tel:"] {
    cursor: default;
}
a:hover {
    transition: all 0.3s;
    opacity: 0.7;
}
a[href^="tel:"]:hover {
    opacity: 1;
}
a.line {
    text-decoration: underline;
}

.sp_only {
    display: none !important;
}
.txt p {
    line-height: 1.6;
    margin-bottom: 1.5em;
}
.txt p:last-child {
    margin-bottom: 0;
}
.mb20 {
    margin-bottom: 20px !important;
}
.mb35 {
    margin-bottom: 35px !important;
}
.mb55 {
    margin-bottom: 55px !important;
}
.mb80 {
    margin-bottom: 80px !important;
}
.mb150 {
    margin-bottom: 150px !important;
}
.txt_small {
    font-size: 0.75em;
}
.txt_bold {
    font-weight: bold;
}
.txt_red {
    color: #e60012;
}
.txt_blue {
    color: #e5151f;
}
.inner {
    max-width: 1080px;
    margin: auto;
}
.mincho {
    font-family: "Sawarabi Mincho";
}

:target:before {
    content:"";
    display:block;
    height:100px;
    margin:-50px 0 0;
}

.btn_blue {
    display: inline-block;
    width: 260px;
    background: url(../../images/common/icn-arrow_black.svg) no-repeat calc(100% - 18px) center;
    background-color: #FFF;
    color: #1470b2;
    font-weight: bold;
    font-size: 1.125rem;
    height: 54px;
    text-align: left;
    position: relative;
	border:1px solid #1470b2;background-size: 29px;
}

.btn_blue span {
    display: block;
    padding: 15px 18px 15px 18px;
    width: 100%;
    height: calc(100% - 6px);
    margin: auto;
    position: relative;
    top: 3px;
}
.btn_green {
    display: inline-block;
    width: 260px;
    background: url(../../images/common/icn-arrow_blue.png) no-repeat calc(100% - 18px) center;
    background-color: #FFF;
    color: #00439d;
    font-weight: bold;
    font-size: 1.125rem;
    height: 54px;
    text-align: left;
    position: relative;
	border:1px solid #002b82;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 25px auto 0;
}

.btn_green span {
    display: block;
    padding: 15px 18px 15px 18px;
    width: 100%;
    height: calc(100% - 6px);
    margin: auto;
    position: relative;
    top: 0px;
}
.btn_white {
    display: inline-block;
    width: 260px;
    background: url(../../images/common/icn-arrow_white.png) no-repeat calc(100% - 18px) center;
    background-color: #002b82;
    color: #FFF;
    font-weight: bold;
    font-size: 1.125rem;
    height: 54px;
    text-align: left;
    position: relative;
    margin: 25px auto 0;
}
.btn_white span {
    display: block;
    padding: 15px 18px 15px 18px;
    width: 100%;
    height: calc(100% - 6px);
    margin: auto;
    position: relative;
    top: 3px;
}
.link_btn {
    color: #006893;
    text-decoration: underline;
}
.link_btn:after {
    content: url(../../images/common/icn-arrow_blue02.jpg);
    padding-left: 8px;
    vertical-align: -2px
}
.align_center {
    text-align: center;
}
.align_right {
    text-align: right;
}
.ttl_h2 {
    text-align: center;
    font-size: 2rem;
    letter-spacing: 0.1em;
    margin: 0 0 1em 0;
    /*color: #071c1f;*/
    color: #252525;
    font-weight: bold;
    border-top: solid 6px #f0f0f0;
    padding-top: 1.2em;
}


.ttl_h2 span {
    font-family: "Poppins", sans-serif;
    display: block;
    position: relative;
    color: rgba(153, 165, 181, 1);
    font-size: 0.75rem;
    letter-spacing: 0.1em;
	font-weight: 400;
}
.ttl_h2 span:before {
  content: "";
  display: block;
    background-color: #22b3c7;
    width: 6px;
    height: 6px;
    margin: 15px auto 10px auto;
}

.home .ttl_h2 span:before {
    width: 270px;
}
.btn_back {
    text-align: right;
	margin:20px auto;
}
.btn_back a {
    padding: 13px 50px 13px 20px;
    background: url(../../images/common/icn-arrow_white.png) no-repeat calc(100% - 15px);
    font-weight: bold;
    color: #fff;
    background-color: #5f5f5f;
    display: inline-block;
}
/*ヘッダー-------------------------------------------------------------------*/
#header {
    background-color: #f1f9fa;
}
/* 横長ロゴ -----------------------*/
#header .logo,
body.scroll #header .logo{
	background: url("../../images/common/logo.svg") no-repeat top 38px left 17px;
	background-size: 356px auto;
	width:390px;
	height:100px;
	z-index: 95;
	display: block;
	position: relative;
	background-color:transparent;
}

#header .logo::after,
body.scroll #header .logo::after{
  content:"RECRUIT";
  position: absolute;
  top: 54px;
  left: 390px;
  transform: translateY(-50%);
  /*width: 130px;*/
  height: 34px;
  padding:0 0.8em;/**/
  background-color:#22b3c7;
  font-family: var(--headline-font-family);
  color: #ffff00 !important;
  font-size: 1.0rem !important;
  font-weight: 600;
  line-height:34px;
  letter-spacing: 0.12em;
  display:block;
  border-radius:8px;
	/*letter-spacing: 0.06em;
    vertical-align: middle;
	margin-top: 8px;
    color:var(--point-color) !important;
    font-size:0.875rem;*/
}

#sp_gnavi {
    display: none;
}
#header > .inner {
    max-width: none;
	display: flex;
}
/*#header .logo {
    letter-spacing: normal;
    vertical-align: middle;
    padding: 20px 0 12px 0;
    margin-left: 20px;
    color:#0b5d62;
    font-size:1.625rem ;
    font-family: "Poppins", sans-serif;
    font-weight: 500;
}*/
.header_box {
	margin-left: auto;
	display: flex;
}
/*
#header .logo img {
    max-width: 250px;
    vertical-align: text-bottom;
    padding-right:10px;
}*/
#header .logo a {
	vertical-align: bottom;
	display: block;
    height: 100%;
}

#header .logo span {
    display: block;
    font-size: 0.75rem;
    font-weight: normal;
    margin: 19px 0 10px 17px;
    color: #3d3d3d;
}
#gnavi {
    color: #3d3d3d;
    font-weight: bold;
    font-size: 0.9375rem;
}
#gnavi > ul {
    letter-spacing: 0.02em;
}
#gnavi > ul > li {
    margin-right: 1.5em;
    display: inline-block;
    vertical-align: middle;
}
#gnavi a {
    /*font-weight: bold;*/
    position: relative;
}

#gnavi .btn_header {
    margin: 0;
    text-align: center;
    width: 103px;
}

.btn_header a {
    padding: 15px 0 70px 0;
    background: url("../../images/common/header-icn01.svg") no-repeat center bottom 15px;
    background-size: 56px;
    background-color: #1470b2;
    color: #fff;
    display: block;
    position: relative;
}
/*.btn_header a:after {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 22px 22px 0 0;
    border-color: #000000 transparent transparent transparent;
    position: absolute;
    left: 0;
    top: 0;
}*/
.btn_header.blue02 a {
    background: url(../../images/common/icn02.png) no-repeat center 15px;
    background-color: #2fb5ed;
    margin-left: -5px;
}
.header_contact {
    letter-spacing: normal;
    width: 195px;
    text-align: center;
    padding: 17px 0 11px 0;
    background-color: #22b3c7;
    display: inline-block;
    vertical-align: middle;
	border-left: 1px solid #fff;
}
.header_contact div:nth-of-type(1) {
    margin: 0 auto 5px;
    display: block;
    color: #ffff00;
    font-size: 0.875rem;
    font-weight: bold;
    letter-spacing: 0.1em;
    text-align: center;
	margin-bottom: 1em;
}
.header_contact div:nth-of-type(2) {
    font-size: 0.875rem;
    letter-spacing: 0.3px;
    color: #fff;
	line-height: 1.2em;
}
.header_contact div:nth-of-type(2) a {
    display: block;
	font-size: 1.375rem;
	color: #fff;
	margin: 5px 0 10px 0;
    letter-spacing: 0.4px;
	font-family: "Poppins", sans-serif;
	font-weight: 400;
}

.common_contact {
    padding: 45px 0 45px 0;
    background-color: #fcfbe6;
    background: url(../../images/index/bg-sec03.jpg) no-repeat center top;
    background-size: cover;
}

.common_contact h2.ttl_h2 {
    font-size: 1.5rem;
    line-height: 1.4;
    font-weight: bold;
    color:#FFF;
}

.common_contact .inner {
    max-width:936px;
    margin:35px auto 5px;
    display: flex;
    justify-content: space-between;
}
.common_contact .inner div {
    font-size: 1.125rem;
    display: inline-block;
    line-height: 1.6;
    vertical-align: middle;
}

.common_contact .btn_tel,
.common_contact .btn_mail {
    text-align: left;
    width: 436px;
    display: inline-block;
}

.common_contact .btn_tel {
    padding: 0;
    background: url(../../images/common/icn-tel.png) no-repeat 15px center;
    margin: 0 10px;
    vertical-align: middle;
}

.common_contact .btn_mail {
    padding: 0;
    background: url(../../images/common/icn-mail.png) no-repeat 15px center;
    margin: 0 20px;
    vertical-align: middle;
}
.common_contact .btn_tel a {
    font-size: 2rem;
    font-weight: 400;
    color: #071c1f;
    font-family: "Poppins", sans-serif;
    letter-spacing: 0.05em;
    line-height: 1.3;
}

.common_contact .btn_mail a {
    font-size: 1.5rem;
    color: #071c1f;
	font-weight: bold;
}
.common_contact .btn_tel span,.common_contact .btn_mail span {
    display: block;
    font-weight: normal;
    font-size: 0.8125rem;
    letter-spacing: normal;
}
.common_contact .btn_tel a,
.common_contact .btn_mail a {
    display: block;
    padding: 12px 0 12px 80px;
	position: relative;
	text-align: center;
	background-color: #fff;
}
.common_contact a:before {
	content: "";
	height: 100%;
	width: 78px;
	position: absolute;
	left: 0;
	top: 0;
	pointer-events: none;
}
.common_contact .btn_tel a:before {
	background: url("../../images/common/footer_tel.svg") no-repeat center center;
	background-size: 20px;
		background-color: #1470b2;
}
.common_contact .btn_mail a:before {
	background: url("../../images/common/footer_mail.svg") no-repeat center center;
	background-size: 26px;
		background-color: #1470b2;
}

.common_contact .btn_tel a:hover {
    transition: all 0.3s;
    opacity: 0.7;
}
.common_contact .btn_tel a[href^="tel:"]:hover {
    opacity: 1;
}/**/
.common_contact .ttl_h2 {
	display: flex;
	align-items: center;
	max-width: 936px;
	margin-left: auto;
	margin-right: auto;
	border: none;
	padding-top: 0;
}
.common_contact .ttl_h2 .p01 {
	font-weight: 500;
	font-size: 7.185rem;
	letter-spacing: normal;
}
.common_contact .ttl_h2 .p02 {
	padding-left: 2em;
	font-weight: normal;
	font-size: 1.375rem;
	font-family:  'Noto Serif JP', 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo, serif;
	text-align: left;
	line-height: 1.6
}


/*フッター-------------------------------------------------------------------*/
#footer {
    background-color: #f0f0f0;
    padding: 0 0 0 0;
    color: #3d3d3d;
}
#footer .left {
    text-align:left;
    margin: 0 60px 0 0 ;
}
/*#footer ul li {
    display: block;
    padding: 0 0 0 15px;
    margin: 10px 0;
    position: relative;border:1px solid #95F;
}
#footer ul li:before {
    content: "";
    width: 0.5em;
    height: 0.5em;
    background-color: #002c85;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}
#footer ul li a {
    font-size: 0.875rem;
}*/

#footer .ul02 {
    font-size: 0.875rem;
    font-weight: bold;border:1p solid #000;
}

#footer .ul02 li {
    margin: 14px 0;  
}
#footer .ul02 li:nth-of-type(1) {
    margin: 6px 0 14px;
}

#footer .ul02 li a {
    color:#071c1f;
	display: block;
    padding: 0;
    margin: 0;
}

#footer .ul02 .subttl {
    font-weight: normal !important;
    display: block;
    padding-left: 12px;
    margin:14px 0;
    position: relative;
}
#footer .ul02 .subttl:before {
    content: "";
    width: 0.5em;
    height: 0.5em;
    background-color: #1470b2;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}

.btn_white02 {
    display: inline-block;
    width: 290px;
    background: url(../../images/common/icn-arrow_blue.png) no-repeat calc(100% - 18px) center;
    background-color: #FFF;
    color: #00439d;
    font-weight: bold;
    font-size: 0.875rem;
    height: 40px;
    text-align: left;
    position: relative;
	border:1px solid #002b82;
}
.btn_white02 span {
    display: block;
    padding: 12px 18px;
    width: calc(100% - 6px);
    height: calc(100% - 6px);
    margin: auto;
    position: relative;
    top: 0;
}
.btn_white03 {
    display: inline-block;
    width: 154px;
    background: url(../../images/common/icn-arrow_blue.png) no-repeat calc(100% - 18px) center;
    background-color: #fff;
    color: #e5151f;
    font-weight: bold;
    font-size: 1.125rem;
    height: 56px;
    text-align: left;
    margin-left: 15px;
}
.btn_white03 span {
    display: block;
    border: 1px solid #e5151f;
    ;
    padding: 16px 18px 18px 18px;
    width: calc(100% - 6px);
    height: calc(100% - 6px);
    margin: auto;
    position: relative;
    top: 3px;
    background: url(../../images/common/icn04.png) no-repeat 15px center;
}

#footer #sec04 {
    text-align: left;
    padding:60px 0;
}
#footer #sec04 .innerBox {
    width:90%;
    max-width:1280px;/*1080px*/
	margin:auto;
    border:0px solid #000;
}

.boxFooter01 {
    display: flex;
    justify-content:flex-start;
    align-items:stretch;
}
 
.boxFooter01 div {
    color:  #071c1f;
    line-height: 1.2;
    margin-left: 3%;
    min-width:130px;
    font-size: 0.875rem;
}

.boxFooter01 div:nth-of-type(1) {
    margin-left:0;
    padding-top:10px;
}
.boxFooter01 div:nth-of-type(1) a {
	margin-bottom: 1.5em;
}
.boxFooter01 div:nth-of-type(1) p {
	margin-top: 0.8em;
}
.boxFooter01 div:nth-of-type(3) {
    margin-left:6%;
}
#footer .boxFooter01 div:nth-of-type(2) {
	width: 0;
	margin: 0;
	min-width: inherit;
}
.boxFooter01 div .logo {
    letter-spacing: normal;
    vertical-align: middle;
    padding: 10px 0 12px 95px;
    background: url("../../images/common/logo-mark.png") no-repeat left 4px;
    margin-left: 0;
}

.boxFooter01 div:nth-of-type(1) span {
    font-size: 0.875rem;
    color:#071c1f;
}

.boxFooter01 div:nth-of-type(2) {
    font-size: 0.875rem;
}

.boxFooter01 div:nth-of-type(2) p{
    margin:10px 0;
}

.boxFooter01 div:nth-of-type(2) span {
    font-size: 0.75rem;
}
.boxFooter01 .f_logo img {
    max-width: 260px;
}
.boxFooter01 div .logo_txt_en {
	display: block;
    font-family: var(--headline-font-family);
    color: #ffff00 !important;
    font-size: 1.0rem !important;
    font-weight: 600;
    letter-spacing: 0.12em;
    margin-left: 1.0em;
    padding: 0.5em 1.3em;
    background-color: #22b3c7;
    border-radius: 10px;
}

#footer .right {
    /*width: 870px;*/
    float: right;
    display: flex;
    align-items:stretch;
    margin: 0 0 0 60px; border:1px solid #F8f;
}

#footer .right p {
    margin-right:10px;
    border:1px solid #00f;
}   
#footer .right p:nth-of-type(1) {
    font-size: 1.125rem;
    font-weight: bold;
    margin-bottom: 0.5em;
}
#footer .right p:nth-of-type(2) {
    margin-bottom: 0.5em;
}
#footer .right p:nth-of-type(2) a {
    text-decoration: underline
}
#footer .right p:nth-of-type(3) {
    font-size: 0.75rem;
}
.to_recruit_list {
    background-color: #f0f0f0;
	overflow: hidden; 
}
.home .to_recruit_list {
    padding: 90px 0 90px 0;
}
.to_recruit_list .ttl_h2 {
    color: #071c1f;
    letter-spacing: 0.1em;
}
.to_recruit_list .ttl_h2 span {
    color: rgba(153, 165, 181, 1);
    font-size: 0.75rem;
}
.to_recruit_list .ttl_h2 span:before {
    background-color: #1470b2;
    width: 6px;
    height: 6px;
}

.to_recruit_list .txt p {
    font-weight: bold;
    color: #fff;
}
.home .to_recruit_list .txt p {
    margin-bottom: 40px;
}
.boxRecruitList {}
.boxRecruitList .box {
    background-color: #fff;
    width: 315px !important;
    margin-right: 67px;
}
.boxRecruitList .box a {
    /*display: flex;*/
}
.boxRecruitList .box .img {
    line-height: 0;
    width: 315x;
    height: 240px;
    position: relative;
    overflow: hidden;
    flex-shrink: 0;
}
.boxRecruitList .box .img img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);/**/
    width:100%;
    height: auto;
}
.boxRecruitList .box .cont {
    padding: 15px 0 60px 28px;
    position: relative;
    width: 100%;
}
.boxRecruitList .box .cont h3 {
    color: #071c1f;
    font-weight: bold;
    letter-spacing: 0.12em;
    font-size: 1.375rem;
    margin-bottom: 0.6em;
    line-height: 1.4;
	text-align: left;
}
.boxRecruitList .box .cont dl {
    font-size: 0.9375rem;
    display: flex;
    line-height: 1.5;
}
.boxRecruitList .box .cont dl dt {
    width: 5em;
}
.boxRecruitList .box .cont dl dt, .boxRecruitList .box .cont dl dd {
    text-align:left;
    }
.boxRecruitList .box .cont .read_more {
    font-size: 0.875rem;
    color: #fff;
    background-color: #1470b2;
    width: 140px;
    height: 37px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    right: 0;
    bottom: 0;
	 font-family: "Poppins", sans-serif;
}
.boxRecruitList .box .cont .read_more span {
    position: relative;
    padding-right: 35px;
}
.boxRecruitList .box .cont .read_more span:after {
    content: '';
    display: block;
    width: 0.5em;
    height: 0.5em;
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.boxRecruitList .slick-prev:before, .boxRecruitList .slick-next:before {
    content: none;
}
.boxRecruitList .slick-prev, .boxRecruitList .slick-next {
    width: 77px;
    height: 77px;
    opacity: 1 !important;
}
.boxRecruitList .slick-prev {
    background: url("../../images/common/icn-prev.png") no-repeat center center !important;
    left: -120px;
}
.boxRecruitList .slick-next {
    background: url("../../images/common/icn-next.png") no-repeat center center !important;
    right: -120px;
}
.home .to_recruit_list .btn_green {
    margin: 50px auto 0 auto;
}
.boxNews01 {
    padding: 0 0 0 0 ;
	min-height: 289px;
    background-color: #fff;
    background: url("../../images/index/bg-news.png") no-repeat center top;
    background-size: auto;
    border-top:1px solid #002b82;
	display: flex;
	align-items: center;
}
.boxNews01 .inner {
	width: 100%;
	padding-left: 110px;
}
.boxNews01 .boxWrap {
    display: flex;
}
.boxNews01 .ttl {
    position: relative;
    flex-shrink: 0;
	background-color: #22b3c7;
	width: 182px;
	height: 182px;
	display: flex;
	justify-content: center;
	align-items: center;
}
/*.boxNews01 .boxWrap .ttl:after {
    content: "";
    width: 1px;
    height: 112px;
    background-color: #b0a579;
    position: absolute;
    right: 0;
    top: 0;
}*/
.boxNews01 .boxWrap .ttl h2 {
	font-size: 0.9375rem;
	margin-bottom: 23px;
	font-weight: 400;
	color: #fff;
	font-family: "Poppins", sans-serif;
	letter-spacing: 0.11em;
	text-align: center;
}
.boxNews01 .ttl h2 span {
    font-size: 2.5rem;
    display: block;
    font-weight: normal;
    letter-spacing: 0.08em;
    margin-bottom: 0.1em;
}
.boxNews01 .boxWrap .ttl a {
    font-size: 0.75rem;
    color: #fff;
    background-color: #1470b2;
    width: 122px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.boxNews01 .boxWrap .ttl a span {
    position: relative;
    padding-right: 20px;
	font-style: italic;
	font-weight: bold;
	color: #fff;
	
}
.boxNews01 .boxWrap .ttl a span:after {
    content: '';
    display: block;
    width: 0.3em;
    height: 0.3em;
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.boxNews01 .cont {
    padding-left: 45px;
	padding-top: 30px;
    width: 100%;
}
.boxNews01 .cont dl {
    display: flex;
    line-height: 1.5;
}
.boxNews01 .cont dl:nth-child(n + 2) {
    margin-top: 25px;
}
.boxNews01 .cont dl dt {
     font-size: 0.875rem;
    width: 8em;
	display: flex;
	align-items: center;
}
.boxNews01 .cont dl dd {
    width: calc(100% - 8em);
    font-weight: bold;
}
.boxSnsInline {
    display: flex;
    justify-content: space-between;
    padding-bottom: 45px;
}
.boxSnsInline .box {
    width: 49%;
    background-color: #fff;
    min-height: 300px;
    padding: 40px 30px 30px 30px;
}
.boxSnsInline .ttl {
    text-align: center;
    margin-bottom: 40px;
	padding-right: 0;
}

.boxFooter02 {
    display: flex;
    justify-content: center;
    align-items:stretch;
    padding: 40px 0;
    border-top:1px solid #002b82;
    background-color: #f3f3f3;
}

.boxFooter02 img{
    width:300px;
    height:auto;
    background-color: #165b9c;
    box-shadow: 0px 3px 13px 0px rgba(0, 0, 0, 0.35);
}

.boxFooter02 a:nth-of-type(2) {
    margin: 0 3em;
	padding:0;
}
.boxFooter03 {
    padding: 30px 0;
    background-color: #0e0e0e;
}
.boxFooter03 .inner {
    display: flex;
    align-items: center;
    justify-content: center;
}
.boxFooter03 .name {
    font-weight: bold;
    font-size: 1.125rem;
    margin-right: 1.8em;
}
.boxFooter03 p span:nth-child(n+2) {
    margin-left: 1.2em;
}
.boxFooter03 .sns {
    margin-left: 25px;
	display: flex;
	align-items: center;
}
.boxFooter03 .sns a:first-child {
    margin-right: 5px;
}
.boxFooter03 .sns a {
	line-height: 0;
}


.copyright {
    text-align: center;
    color: #fff;
    font-size: 0.75rem;
    padding: 20px 0;
    background-color: #1470b2;
}
.boxFooterMap {
    width: 100%;
    position: relative;
    padding-top: 25%;
}
.boxFooterMap iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -webkit-filter: saturate(28%);
	filter: saturate(28%);
}


#gnavi > ul {
    display: flex;
}
#gnavi > ul > li {
    display: flex;
    align-items: center;
    /*position: relative;*/
}
#gnavi ul li.current {
    position: relative;
    color: #0b5d62;
}
#gnavi ul li a .en {
	/*position: absolute;*/
	left: 0;
	right: 0;
	margin: auto;
	bottom: -25px;
	font-weight: normal;
	font-family: "Poppins", sans-serif;
	font-size: 0.75rem;
	text-align: center;
	letter-spacing: 0.04em;
	padding-top:2em;
	color:#22b3c7;
	display: none;
}
#gnavi ul li.current a .en {
	display: block;
}
/*#gnavi ul li.current:before {
    content: "";
    width: 8px;
    height: 8px;
    background-color: #009bde;
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    bottom: 20px;
}*/
/*#gnavi ul li.current:after {
    content: "";
    width:0;
    height:0;
    border-style:solid;
    border-width: 11px 11px 0 11px;
    border-color: #b1ca5e transparent transparent transparent;
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    top: 0;
}*/
#gnavi ul li.current {
	background: url(../../images/common/ico-current.png) no-repeat center 50px;
}
#gnavi ul li.current a {
	min-width:90px;
	text-align: center;
}
.btn_header a {
    width: 100%;
}
#gnavi ul.child {
    position: fixed;
    top: 100px;
    left: 0;
	width: 100vw;
    background-color:rgba(20,112,178,0.8);
    padding: 2.0em 1.5em;
    box-sizing: border-box;
    visibility: hidden;
    opacity: 0;
    transition: all 0.5s;
	text-align:center;
}
#gnavi ul.child.open {
    visibility: visible;
    opacity: 1;
    z-index: 2;
}

#gnavi ul.child li {
    display: inline;
}

#gnavi ul.child li:nth-child(n +2) {
    margin-left: 1.2em;
}

#gnavi ul.child li:nth-child(n +2):before {
	content: "／";
    padding-right:1.2em;
	color: #FFF;
}

#gnavi ul.child li a{
	color:#fff;
}

#gnavi ul.child li.current:after {
display: none;
}

body.scroll #header {
    position: fixed;
    width: 100%;
    top: 0;
    left: 0;
    z-index: 9999;
}

.boxGnaviSmall {
    color: #fff;
    font-weight: bold;
    position: absolute;
    left: 0;
    width: 100%;
    z-index: 999;
    background-color:rgba(20,112,178,0.9);
    top: 100px;
    padding: 60px 0;
    display: none;
}
body.scroll .boxGnaviSmall {
	top: 100px;
}
body.scroll #gnavi ul.child {
	top: 100px;
}
.boxGnaviSmall .boxFooter01{
    display: flex;
    justify-content:space-around;
    align-items:stretch;
    margin:0 auto;
	max-width:900px;
}

.boxGnaviSmall .boxFooter01 div {
    color: #fff;
    line-height: 1.2;
    margin-left: 3%;
    font-size: 0.9375rem ;   
}

.boxGnaviSmall .boxFooter01 div:nth-of-type(1) {
    margin-left:0;
    padding-top:0;
}
/*.boxGnaviSmall .left {
    text-align: center;
}*/
.boxGnaviSmall ul li {
    margin: 14px 0;
}
.boxGnaviSmall ul li.subttl {
    padding: 0 0 0 20px;
    margin: 14px 0;
    position: relative;
    font-weight: normal;
}
.boxGnaviSmall ul li.subttl:before {
    content: "";
    width: 0.25em;
    height: 0.25em;
    background-color: #fff;
    position: absolute;
    left: 5px;
    top: 50%;
    transform: translateY(-50%);
}

.header__hamburger {
	display: none;
}
@media only screen and (min-width:1516px) {
	.boxGnaviSmall {
		display: none !important;
	}
}
@media only screen and (max-width:1515px) and (min-width:768px) {
    #gnavi ul li:not(:last-child) {
        display: none;
    }
    .header_box {
        display: flex;
        margin-left: auto;
    }
    .header__hamburger {
		display: block;
        width: 60px;
        height: 100%;
		margin: 0 15px;
    }
    .hamburger {
        background-color: transparent;
        border-color: transparent;
        z-index: 9999;
    }
    .hamburger span {
        width: 30px;
        height: 2px;
        background-color: #1470b2;
        position: relative;
        transition: ease .4s;
        display: block;
		margin: auto;
    }
    .hamburger span:nth-child(1) {
        top: 0;
    }
    .hamburger span:nth-child(2) {
        margin: 8px auto;
    }
    .hamburger span:nth-child(3) {
        top: 0;
    }
    .header__nav.active {
        transform: translateX(0);
    }
    .hamburger.active span:nth-child(1) {
        top: 5px;
        transform: rotate(45deg);
    }
    .hamburger.active span:nth-child(2) {
        opacity: 0;
    }
    .hamburger.active span:nth-child(3) {
        top: -15px;
        transform: rotate(-45deg);
    }
}

.upToTop {
    opacity: 1;
    display: none;
    position: fixed;
    right: 2%;
    bottom: 30px;
    z-index: 13;
    cursor: pointer;
}
.upToTop .upToTopIn {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    width: 40px;
    height: 40px;
    background-color: #22B3C7;
    font-size: 1.2rem;
    color: #ffff00;
}
#header .logo_txt {
	color: #151515;
	font-weight: bold;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 1.6875rem;
	letter-spacing: 0.08em;
	margin-right: 0.3em;
}
.boxFooter01 div .logo_txt {
	color: #151515!important;
	font-weight: bold;
	font-family: "Noto Sans JP", sans-serif;
	letter-spacing: 0.08em;
	font-size: 1.25rem!important;
}
/*.boxFooter01 div .logo_txt_en {
	font-family: "Poppins", sans-serif;
	color: #0b5d62!important;
	font-size: 1.07625rem!important;
	font-weight: 500;
	margin-left: 0.7em;
}*/
.boxFooter01 .f_logo {
	display: flex;
	align-items: center;
}




