@charset "UTF-8";
/*
* base
*/
@font-face {
  font-family: 'NotoSansCJKjp-Light';
  src: url(../../assets/lib/font/NotoSansCJKjp-Light.woff);
  font-display: swap;
}
@font-face {
  font-family: 'NotoSansCJKjp-Regular';
  src: url(../../assets/lib/font/NotoSansCJKjp-Regular.woff);
  font-display: swap;
}
@font-face {
  font-family: 'NotoSansCJKjp-Medium';
  src: url(../../assets/lib/font/NotoSansCJKjp-Medium.woff);
  font-display: swap;
}
@font-face {
  font-family: 'NotoSansCJKjp-Bold';
  src: url(../../assets/lib/font/NotoSansCJKjp-Bold.woff);
  font-display: swap;
}
@font-face {
  font-family: 'NotoSansCJKjp-DemiLight';
  src: url(../../assets/lib/font/NotoSansCJKjp-DemiLight.woff);
  font-display: swap;
}
@font-face {
 font-family: "NotoSansCJKjp";
 font-style: normal;
 font-weight: 400;
 src: url('./fonts/notosans-regular.eot');
 src: local('Noto Sans CJK JP Regular'),
 url('./fonts/notosans-regular.eot?#iefix') format('embedded-opentype'),
 url('./fonts/notosans-regular.woff') format('woff'),
 url('./fonts/notosans-regular.otf') format('opentype')
}
/* line 1, ../../sass/chouri/base/default/_reset.scss */
body {
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  vertical-align: baseline;
  line-height: 1;
  word-break: break-all;
}

/* line 13, ../../sass/chouri/base/default/_reset.scss */
div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video, input, textarea {
  margin: 0;
  padding: 0;
  border: none;
  font-size: 100%;
  font-weight: normal;
  font-style: normal;
  vertical-align: baseline;
  background: transparent;
}

/* line 24, ../../sass/chouri/base/default/_reset.scss */
img {
  vertical-align: bottom;
}

/* line 28, ../../sass/chouri/base/default/_reset.scss */
article, aside, details, figcaption, figure, footer, header, menu, nav, section, div, address, iframe, canvas, hr, textarea {
  display: block;
  line-height: 1;
}

/* line 33, ../../sass/chouri/base/default/_reset.scss */
iframe {
  width: 100% !important;
}

/* line 37, ../../sass/chouri/base/default/_reset.scss */
a, label {
  cursor: pointer;
}

/* line 41, ../../sass/chouri/base/default/_reset.scss */
blockquote {
  padding: 0;
  margin: 0;
  display: block;
}

/* line 47, ../../sass/chouri/base/default/_reset.scss */
address, em {
  font-style: normal;
}

/* line 51, ../../sass/chouri/base/default/_reset.scss */
hr {
  border: 0;
  margin: 0;
  padding: 0;
}

/* line 57, ../../sass/chouri/base/default/_reset.scss */
ul, ol, li {
  list-style: none;
}

/* line 61, ../../sass/chouri/base/default/_reset.scss */
/*textarea {
  resize: vertical;
  overflow: hidden;
  -webkit-appearance: none;
  border: none;
}*/

/* line 68, ../../sass/chouri/base/default/_reset.scss */
/*input, button, select {
  vertical-align: middle;
  border-radius: 0px;
  border: none;
  background: transparent;
  margin: 0;
  padding: 0;
  cursor: pointer;
  -webkit-appearance: none;
}
*/
input[type="submit"], button, select{
  vertical-align: middle;
  border-radius: 0px;
  border: none;
  background: transparent;
  margin: 0;
  padding: 0;
  cursor: pointer;
  -webkit-appearance: none;
}
/* line 79, ../../sass/chouri/base/default/_reset.scss */
table {
  border-collapse: collapse;
}

/* line 83, ../../sass/chouri/base/default/_reset.scss */
* {
  box-sizing: border-box;
}
/* line 84, ../../sass/chouri/base/default/_reset.scss */
*:before, *:after {
  padding: 0;
  margin: 0;
  line-height: 1;
}
* a{
  text-decoration: none;
  color: #000;
}
/* line 92, ../../sass/chouri/base/default/_reset.scss */
body {
  color: #333;
  font-family: "NotoSansCJKjp-Regular";
}

/* line 97, ../../sass/chouri/base/default/_reset.scss */
input:focus, select:focus, textarea:focus {
  outline: 0;
}

/* line 1, ../../sass/chouri/base/_basic.scss */
body {
  color: #000;
  font-family: "NotoSansCJKjp-Regular";
  font-size: 14px;
  line-height: 24px;
}

/* line 6, ../../sass/chouri/base/_basic.scss */
input:focus, select:focus, textarea:focus {
  outline: 0;
}

@media screen and (max-width: 1200px) {
  * p{
    font-size: 24px;
    line-height: 40px;
  }
  /* line 11, ../../sass/chouri/base/_basic.scss */
  .sp-on {
    display: block;
  }

  /* line 14, ../../sass/chouri/base/_basic.scss */
  .pc-on {
    display: none !important;
  }
}
@media screen and (min-width: 1201px) {
  * {
    font-size: 14px;
    line-height: 24px;
  }
  /* line 20, ../../sass/chouri/base/_basic.scss */
  a {
    transition: all 0.6s;
  }
  /* line 22, ../../sass/chouri/base/_basic.scss */
  a:hover {
    opacity: 0.6;
  }
  /* line 26, ../../sass/chouri/base/_basic.scss */
  .pc-on {
    display: block;
  }
  /* line 29, ../../sass/chouri/base/_basic.scss */
  .sp-on {
    display: none !important;
  }
}

/*
* 中身 共通 sp
*/
@media screen and (max-width: 1200px){
  .visual img{
    width: 100%;
  }
  .wrapper{
    width: 90%;
    margin: 0 auto;
  }
  .breadcrumb{
    width: 100%;
    margin: 0 auto 30px;
    border-top: 2px solid #359adc;
    border-bottom: 2px solid #359adc;
    padding: 16px 0;
  }
  .breadcrumb ul{
    width: 90%;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    font-size: 22px;
    line-height: 36px;
  }
  .breadcrumb li a{
    color: #359adc;
    position: relative;
    padding: 0 30px 0 0;
  }
  .breadcrumb li a:after{
    content: "＞";
    color: #000;
    position: absolute;
    top: 18%;
    padding: 0 0 0 5px;
  }

}


/*
* 中身 共通 pc
*/
@media print, screen and (min-width: 1201px){
  .visual img{
    width: 100%;
  }
  .wrapper{
    width: 1100px;
    margin: 0 auto;
  }
  .breadcrumb{
    width: 1100px;
    margin: 30px auto;
  }
  .breadcrumb ul{
    display: flex;
    flex-wrap: wrap;
  }
  .breadcrumb li a{
    color: #359adc;
    position: relative;
    padding: 0 24px 0 0;
  }
  .breadcrumb li a:after{
    content: "＞";
    color: #000;
    position: absolute;
    top: 18%;
    padding: 0 0 0 6px;
  }

}


/*
* header sp
*/
@media screen and (max-width: 1200px) {
  .infoLink{
    display: none;
  }
  header{
    width: 100%;
  }
  header a{
    font-size: 30px;
    line-height: 80px;
    color: #359adc;
    text-decoration: none;
  }
  .headBlock{
    padding: 2% 5%;
    display: flex;
    justify-content: space-between;
  }
  .logo img{
    width: 90%;
  }
  .navMain li a:not(.sub li a){
    display: block;
    width: 100%;
    height: 88px;
    padding: 0 0 0 5%;
    color: #FFF;
    background: #359adc;
    border-bottom: 2px solid #FFF;
    position: relative;
  }
  .navMain li a.arrow:after{
    content: url(../../assets/img/common/arrow.png);
    position: absolute;
    right: 5%;
    top: 32%;
  }
  .navMain li a.arrow.active:after{
    -moz-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
  }
  .sub{
    display: none;
  }
  .sub li a{
    display: block;
    width: 100%;
    height: 88px;
    padding: 0 8% 0;
    color: #359adc;
    border-bottom: 2px solid #359adc;
  }
  /*.navMain li:nth-child(5) .sub li a:not(.sub li:nth-child(1) a){
    height: 125px;
    padding-top: 15px;
    line-height: 45px;
  }*/
  .navFootLink ul{
    display: flex;
    height: 88px;
    padding: 0 0 0 5%;
    background: #359adc;
  }
  .navFootLink li:not(.navFootLink li:last-child){
    margin-right: 50px;
  }
  .navFootLink li a{
    font-size: 22px;
    color: #FFF;
  }

/* 採用情報ページ改良で増えたアコーディオン（3層目）用 start */
  ul.subRec_position{
    display: none;
  }
  li.RecAcco_for_sp a:not(.subRec_position li a){
    display: block;
    width: 100%;
    height: 88px;
    padding: 0 0 0 5%;
    color: #FFF;
    background: #359adc;
    border-bottom: 2px solid #FFF;
    position: relative;
  }
  li.RecAcco_for_sp a.arrow:after{
    content: url(../../assets/img/common/arrow.png);
    position: absolute;
    right: 5%;
    top: 32%;
  }
  li.RecAcco_for_sp a.arrow.active:after{
    -moz-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
  }

}

/*
* header pc
*/
@media print, screen and (min-width: 1201px) {
  .navBtn,
  .navFootLink{
    display: none;
  }
  header{
    border-bottom: 2px solid #359adc;
    display: flex;
    justify-content: space-between;
    margin-top: 26px;
  }
  header a{
    text-decoration: none;
    color: #000;
  }
  .headInner{
    width: 1100px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
  }
  .headBlock{
    margin-bottom: 17px;
  }
  .infoLink ul{
    width: 358px;
    margin: 0 0 16px auto;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
  }
  .infoLink a{
    font-size: 12px;
    color: #364474;
  }
  .infoLink a span{
    color: #fff;
    background: #02622a;
    border-radius: 5px;
    padding: 2px 10px;
  }
  .navMain ul{
    width: 872px;
    display: flex;
    justify-content: space-between;
    font-family: "NotoSansCJKjp-DemiLight";
    margin-bottom: 10px;
  }
  .navMain ul li{
    flex-grow: 1;
    text-align: center;
    padding: 2px 0;
    position: relative;
  }
  .navMain ul li+ li {
    border-left: 1px solid #333;
  }
  a.is-current{
    color: #3097db;
  }
  .navMain ul li a{
    text-decoration: none;
    display: block;
  }
  ul.sub{
    display: block;
    width: 120px;
    margin: 0 auto;
    /*padding: 0 0 15px 0;*/
    border: 1px solid #359adc;
    position: absolute;
    top: 38px;
    display: none;
    z-index:100;
  }
  ul.sub li{
    text-align: left;
    background-color: rgba( 255, 255, 255, 0.95 );
    padding: 15px 10px 0;
    line-height: 20px;
  }
  ul.sub li+ li {
    border-left: none;
  }
  ul.sub li:last-child{
    padding-bottom: 15px;
  }

/* 採用情報ページ改良で増えたアコーディオン（3層目）用 start */
  ul.subRec_position{
    display: block;
    width: 150px;
    margin: 0 auto;
    /*padding: 0 0 15px 0;*/
    border: 1px solid #359adc;
    position: absolute;
    top: 20px;
    left: 118px;
    display: none;
    z-index:100;
  }
  ul.subRec_position li{
    text-align: left;
    background-color: rgba( 255, 255, 255, 0.95 );
    padding: 15px 10px 0;
    line-height: 20px;
  }
  ul.subRec_position li+ li {
    border-left: none;
  }
  ul.subRec_position li:last-child{
    padding-bottom: 15px;
  }
/* 採用情報ページ改良で増えたアコーディオン（3層目）用 end */

}

/*
  footer sp
*/
@media screen and (max-width: 1200px) {
  footer{
    width: 100%;
    margin: 0 auto;
    text-align: center;
  }
  .totop{
    width: 90%;
    margin: 0 auto;
    text-align: right;
  }
  .inner{
    width: 100%;
    margin: 45px auto 0;
    padding: 40px 0 0 0;
    border-top: 1px solid #004c8a;
    border-bottom: 1px solid #004c8a;
  }
  .footerLink ul{
    width: 60%;
    margin: 0 auto 50px;
    display: flex;
    justify-content: space-between;
    font-size: 24px;
  }
  .footerLink li:first-child{
    border-right: 1px solid #000;
    flex-grow: 0.73;
  }
  .footerInfo{
    width: 100%;
  }
  .footerInfo h3{
    font-size: 30px;
    line-height: 50px;
    font-family: "NotoSansCJKjp-Medium";
    padding: 0 0 10px 0;
  }
  .footerInfo span{
    font-size: 36px;
    font-family: "NotoSansCJKjp-Medium";
  }
  .footerInfo ul{
    margin-bottom: 85px;
  }
  .footerInfo li:not(.footerInfo li:nth-child(2)){
    width: 90%;
    margin: 0 auto;
  }
  .footerInfo li:nth-child(2) {
    margin: 45px auto 38px;
    position: relative;
    width: 100%;
    padding-top: 50%;
  }
  .footerInfo li:nth-child(2) iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
  }
  .copyright{
    margin: 15px 0;
  }

}

/*
  footer pc
*/
@media print, screen and (min-width: 1201px) {
  footer{
    width: 100%;
    margin: 0 auto;
    /*position: fixed;
    bottom: 0;*/
  }
  footer .inner{
    width: 1100px;
    margin: 16px auto 0;
    padding: 20px 0 0 0;
    border-top: 1px solid #004c8a;
    border-bottom: 1px solid #004c8a;
  }
  footer .totop{
    width: 1100px;
    margin: 0 auto;
    text-align: right;
  }
  .footerLink ul{
    width: 275px;
    height: 25px;
    display: flex;
    justify-content: space-between;
    margin: 0 auto 32px;
  }
  .footerLink li:first-child{
    border-right: 1px solid #000;
    padding-right: 27px;
    /*flex-grow: 0.55;*/
  }
  .footerInfo h3{
    font-size: 18px;
    line-height: 30px;
    padding: 0 0 14px 0;
  }
  .footerInfo span{
    font-size: 20px;
    font-family: "NotoSansCJKjp-Medium";
  }
  .footerInfo ul{
    display: flex;
    justify-content: space-between;
    margin-bottom: 20px;
  }
  .footerInfo li:nth-child(1){
    width: 442px;
  }
  .footerInfo li:nth-child(2){
    width: 375px;
    height: 175px;
    position: relative;
  }
  .footerInfo li:nth-child(2) iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
  }
  .copyright{
    text-align: center;
    margin: 10px 0;
  }
}



@media print{
}
