@charset "UTF-8";

/**
 * site.css
 * 栄養系技官 採用サイト
 *
 * Sections:
 *   [01] Typography
 *   [02] Base styles
 *   [03] Utility
 *   [04] Header
 *   [05] Footer
 *   [06] Hero
 *   [07] Contents
 */

/*	[01] Typography
-----------------------------------------------------*/
@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:300,400,500,700&display=swap&subset=japanese');
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif:ital@1&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Zen+Old+Mincho:wght@400;500&family=Roboto:wght@400&display=swap');

@font-face { font-family: 'savoye_let'; src: url('../../font/savoye_let.eot');}
@font-face { font-family: 'savoye_let'; src: url('../../font/savoye_let.otf') format("truetype");}
/*standard size = 16px*/

/* base font size */
*:first-child+html body {
	font-family: "游ゴシック", "Yu Gothic", "メイリオ", 'Meiryo', "ＭＳ Ｐゴシック", sans-serif;
	font-size: 87.5%;
} /* IE7 */


html>/**/body {
	font-family: 'Noto Sans JP', "游ゴシック", "Yu Gothic", "メイリオ", 'Meiryo', "ＭＳ Ｐゴシック", sans-serif;
	font-size: 87.5%;
} /* IE8 */


html:not(:target) body {
    font-family: 'Noto Sans JP', "游ゴシック Medium", 'Yu Gothic Medium', 'YuGothic Medium', "メイリオ", 'Meiryo', sans-serif;
    font-style:normal;
    font-weight: 400;
    font-size: 16px;
} /* modern */

*:first-child+html body .fnt-min { font-family: , serif; } /* IE7 */
html>/**/body .fnt-min { font-family: 'Zen Old Mincho', 'Hiragino Mincho Pro', 'Yu Mincho', serif; font-weight: 500; font-style: normal; } /* IE8 */
html:not(:target) body .fnt-min { font-family: 'Zen Old Mincho', 'Hiragino Mincho Pro', 'Yu Mincho', serif; font-weight: 500; font-style: normal; } /* modern */

@media all and (-ms-high-contrast:none){
    html:not(:target) body .fnt-min {
        font-family: 'ヒラギノ明朝 Pro W3','Hiragino Mincho Pro','ＭＳ Ｐ明朝','MS PMincho',serif;
        font-weight: bold;
        letter-spacing: 0.12em;
    }

}

*:first-child+html body .fnt-italic { font-family: , serif; } /* IE7 */
html>/**/body .fnt-italic { font-family: 'Noto Serif', serif; font-style: italic;} /* IE8 */
html:not(:target) body .fnt-italic { font-family: 'Noto Serif', serif; font-style: italic;} /* modern */

.fnt-sans{ font-family: 'Roboto', sans-serif; font-weight: 400; font-style: normal;}
.fnt-num{ font-family: 'savoye_let';}

/*  [02] Base styles
-----------------------------------------------------*/
body {
    color: #111111;
    background: #fff;
    overflow-x: hidden;
    position: relative;
    -webkit-text-size-adjust: 100%;
    width: 100%;
    line-height: 1.6;
    letter-spacing: 0.05em;
}
li,p{ letter-spacing: 0.05em; }
a{
    color: #333333;
    font-weight: normal;
    transition: .3s;
}
a:hover{
    cursor: pointer;
}
.clr-wht{ color: #fff }
.red{ color: #e60012; }
.clr-key{ color: #1690CE; }
.clr-grn{ color: #A2CB35; }
.clr-org{ color: #E3B513; }
.bg-key{ background-color: #1690CE; }
.clr-accent{ color: #A2CB35; }
.u-bld{ font-weight: bold; }
.u-ctr{ text-align: center; }
.bg-pale{ background-color: #F5F4F2; }
.u-bdl{ border-bottom: 1px solid #888; }
@media all and (-ms-high-contrast:none){
    .u-bdl{ padding-bottom: 0; }
}
#preloader-wrap{
    width: 100%;
    height: 100vh;
    background: #fff;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 998;
}
#preloader-spin {
    width: 3em;
    height: 3em;
    border-top: .4em solid rgba(1, 1, 1, 0.2);
    border-right: .4em solid rgba(1, 1, 1, 0.2);
    border-bottom: .4em solid rgba(1, 1, 1, 0.2);
    border-left: .4em solid rgba(22, 144, 206, 1);
    animation: spin-loader 1s infinite linear;
    border-radius: 50%;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    z-index: 999;
}
@keyframes spin-loader {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}
        
.preloader-end {
    animation: fade-preloader 1s forwards;
}
        
@keyframes fade-preloader {
    0% {
        opacity: 1;
    }
    99% {
        opacity: 0;
    }
    100% {
        opacity: 0;
        display: none;
        visibility: hidden;
    }
}

/* Buttons */
.btn-action{ background: #1690CE; color: #fff; padding: 14px 20px;}
#back-top{
    width: 50px;
    height: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 100;
    background-color: #A2CB35;
    border-radius: 25px;
    position: fixed;
    right: 20px;
    bottom: 20px;
}
#back-top:hover{
    bottom: 25px;
    cursor: pointer;
    transition: .2s;
}
.hbg-btn,.hbg-btn__bar {
  display: inline-block;
  transition: all .3s;
  box-sizing: border-box;
}
.hbg-btn {
  position: relative;
  width: 50px;
  height: 19px;
  background: none;
  border: none;
  appearance: none;
  cursor: pointer;
  top: -5px;
}
.hbg-btn .hbg-btn__label{
    font-size: 15px;
    position: absolute;
    bottom: -25px;
    left: 0;
    width: 100%;
    letter-spacing: 0.1em;
    text-align: center;
    color: #333;
    font-style: normal;
}
.hbg-btn__bar {
  position: absolute;
  right: 0;
  width: 100%;
  height: 1.5px;
  background-color: #333;
}
.hbg-btn__bar:nth-of-type(1) {
  top: 0;
}
.hbg-btn__bar:nth-of-type(2) {
  top: 9px;
}
.hbg-btn__bar:nth-of-type(3) {
  bottom: 0;
}
.hbg-btn:hover .hbg-btn__bar{
    width: 100%;
}
.hbg-btn:hover .hbg-btn__bar:nth-of-type(2) {
    width: 80%;
}
.hbg-btn::after {
  position: absolute;
  top: 0;
  right: -8px;
  bottom: 0;
  left: 0;
  margin: auto;
  display: block;
  content: '';
  width: 54px;
  height: 54px;
  border-radius: 50%;
  border: 1.5px solid transparent;
  transition: all .75s;
}
.hbg-btn.is-on{
    top: 0;
}
.hbg-btn.is-on .hbg-btn__label{
    opacity: 0;
}
.hbg-btn.is-on .hbg-btn__bar:nth-of-type(1) {
  transform: translateY(8px) rotate(-45deg);
  width: 80%;
  top: 1px;
}
.hbg-btn.is-on .hbg-btn__bar:nth-of-type(2) {
  left: 50%;
  opacity: 0;
  animation: menu-bar .3s forwards;
}
@keyframes menu-bar {
  100% {
    height: 0;
  }
}
.hbg-btn.is-on .hbg-btn__bar:nth-of-type(3) {
  transform: translateY(-7px) rotate(45deg);
  width: 80%;
  bottom: 1px;
}
.hbg-btn.is-on::after {
  animation: menu-ring .4s .25s forwards;
}
@keyframes menu-ring {
  0% {
    border-color: transparent;
    transform: rotate(0);
  }
  25% {
    border-color: transparent #333 transparent transparent;
  }
  50% {
    border-color: transparent #333 #333 transparent;
  }
  75% {
    border-color: transparent #333 #333 #333;
  }
  100% {
    border-color: #333;
    transform: rotate(-680deg);
  }
}

.circ-arrow a{
    width: 80px;
    height: 80px;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    z-index: 20;
    background-color: #fff;
}
.circ-arrow a span{
    display: block;
    background: url("../images/shared/arrow_right.png") center / 70% no-repeat;
    position: relative;
    width: 100%;
    height: 100%;
}
.circ-arrow a::after{
    content: '';
    width: 0;
    height: 100%;
    left: 0;
    position: absolute;
    background: #1690CE;
    display: block;
    z-index: -1;
    transition: .2s;
    top: 0px;
}
.circ-arrow a:hover span{
    background-image: url("../images/shared/arrow_right_w.png");
}
.circ-arrow a:hover::after{
    width: 100%;
}

.more-link{
    width: 280px;
    height:65px;
}
.more-link.large{
    width: 330px;
    height: 85px;
}
.more-link.large a div p{
    font-size: 18px;
}
.more-link a{
    display: block;
    height: 100%;
    background: #1690CE;
    padding: 4px;
    position: relative;
}
.more-link a:hover{
    padding: 0px;
}
.more-link a div{
    display: flex;
    flex-flow: column;
    align-items: center;
    justify-content: center;
    height: 100%;
    border: 1px solid rgba(255,255,255,.8);
}
.more-link a div p{
    font-size: 16px;
    letter-spacing: 2px;
}
.more-link a div img{   
    /*position: absolute;*/
    bottom: 10px;
    transition: .3s;
}
.more-link a:hover div img{
    transform: translateX(5px);
}
.more-link.has-row a div{
    flex-flow: row;
    padding: 0 20px;
    
}
.more-link.has-row a div p{
    left: 24px;
}
.linkBtn{
    width: 280px;
}
.linkBtn a{
    display: block;
    padding: 10px 30px;
    background: #fff;
    text-align: center;
    letter-spacing: 1px;
    border: 1px solid #1690CE;
    border-radius: 4px;
    position: relative;
}
.linkBtn a::after{
    content: '';
    background: url("../images/shared/link_icon.svg")center / 100% no-repeat;
    position: absolute;
    right: 5px;
    top: 5px;
    width: 15px;
    height: 14px;
    display: block;
}
.linkBtn a:hover{
    opacity: .6;
}

.lnk-wrap .circ-arrow{
    position: absolute;
    right: -10px;
    bottom: -10px;
    width: 80px;
    height: 80px;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 20;
    background-color: #fff;
}
.lnk-wrap .circ-arrow span{
    display: block;
    background: url("../images/shared/arrow_right.png") center / 70% no-repeat;
    position: relative;
    width: 100%;
    height: 100%;
}
.lnk-wrap .circ-arrow::after{
    content: '';
    width: 0;
    height: 100%;
    left: 0;
    top: 0;
    position: absolute;
    background: #1690CE;
    display: block;
    z-index: -1;
    transition: .2s;
}
.lnk-wrap:hover .circ-arrow span{
    background-image: url("../images/shared/arrow_right_w.png");
}
.lnk-wrap:hover .circ-arrow::after{
    width: 100%;
}

.circ-arrow.mini{
    width: 70px;
    height: 70px;
}

.entry-box{
    width: 90%;
    max-width: 500px;
    height:180px;
    margin: 150px auto 60px;
    position: relative;
}
.entry-box::before{
    content: '';
    width: 1px;
    height: 100px;
    position: absolute;
    left: 0;
    right: 0;
    top: -120px;
    margin: auto;
    background: #1690CE;
}
.entry-box::after{
    content: '';
    background: #F5F4F2;
    position: absolute;
    width: 104%;
    height: 104%;
    z-index: -1;
    -webkit-transform: rotate(4deg);
    transform: rotate(4deg);
    top: 0;
    bottom: 0;
    left: -2%;
    margin: auto;
}
.entry-box a{
    display: block;
    height: 100%;
    background: #1690CE;
    padding: 10px;
    position: relative;
}
.entry-box a:hover{
    padding: 0px;
}
.entry-box a div{
    display: flex;
    flex-flow: column;
    align-items: center;
    justify-content: center;
    height: 100%;
    border: 1px solid rgba(255,255,255,.8);
}
.entry-box a div p{
    font-size: 25px;
    letter-spacing: 2px;
}
.entry-box a div span{
    font-size: 24px;
    letter-spacing: 0;
}
.entry-box a div img{   
    margin-top: 10px;
    bottom: 25px;
    transition: .3s;
}
.entry-box a:hover div img{
    transform: translateX(5px);
}
.btnBox{
    display: flex;
    justify-content: center;
    grid-gap: 5%;
    gap: 5%;
    position: relative;
    width: 90%;
    max-width: 900px;
    margin: 170px auto 50px;
}
.btnBox::before {
    content: '';
    width: 1px;
    height: 100px;
    position: absolute;
    left: 0;
    right: 0;
    top: -140px;
    margin: auto;
    background: #1690CE;
}
.btnBox .more-link{
    width: 100%;
}
@media (-ms-high-contrast: none) {
    .btnBox .more-link:first-child{
        margin-right: 5%;
    }
}
@media screen and (max-width:899px) and (-ms-high-contrast: none){
    .btnBox .more-link:first-child{
       margin-right: 0;
       margin-bottom: 5%;
   }
}

.more-link.btn-back a{
   background: #898989;
}
.more-link.btn-back a div{
    flex-flow: row-reverse;
}
.more-link.u-ctr a div p{
    right: 0;
    left: 0;
    margin: auto;
    width: 100%;
}
.more-link.btn-back a div img{
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
}
.sns-wrap{
    display: flex;
    align-items: center;
}
.sns-wrap div a{
    width: 100px;
    height: 100px;
    background: #1690CE;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 5px;
    border-radius: 50%;
    border: 0px solid #fff;
    text-align: center;
}
.sns-wrap div a:hover{
    border-width: 10px;
}
.sns-wrap div.facebook a img{
    width: 45px;
}
.sns-wrap div.twitter a img{
    width: 30px;
}

a.lnk-ul{
    position: relative;
} 
a.lnk-ul::after{
    content: '';
    height: 1px;
    width: 0;
    bottom: 0;
    position: absolute;
    background: #1690CE;
    transition: .3s;
    left: 0;
    max-width: 100%;
}
a.lnk-ul:hover::after{
    width: 100%;
}

.acc-icon{
    width: 20px;
    height: 20px;
    position: relative;
    top: 0;
    bottom: 0;
    margin: auto;
    transition: .2s;
}
.acc-icon span{
    position: absolute;
    background: #1690CE;
    margin: auto;
}
.acc-icon span:first-child{
    height: 1.5px;
    width: 100%;
    top: 0;
    bottom: 0;
}
.acc-icon span:last-child{
    height: 100%;
    width: 1.5px;
    left: 0;
    right: 0;
}
.acc-icon.is-exp{
    height: 1px!important;    
}
/* Tablet */
@media screen and (max-width:899px){
    .sns-wrap div a{
        width: 60px;
        height: 60px;
    }
    .sns-wrap .sns.facebook img{
        max-width: 30px;
        height: 100%;
    }
    .sns-wrap .sns.twitter img{
        max-width: 22px;
        height: 100%;
    }
    .entry-box{
        height: 130px;
    }
    .entry-box a{
        padding: 5px;
    }
    .entry-box a div p{
        font-size: 22px;
    }
    .entry-box a div span{
        font-size: 18px;
    }
    .entry-box a div img{
        bottom: 14px;
        height: 10px;
    }
    .circ-arrow a,.lnk-wrap .circ-arrow{
        width: 60px;
        height: 60px;
    }
    .btnBox{
        flex-flow: column;
        grid-gap: 20px;        
        gap: 20px;
        max-width: 350px;
    }
    .hbg-btn:hover .hbg-btn__bar:nth-of-type(2){
        width: 100%;
    }
}
/* Mobile */
@media screen and (max-width:480px){
    .sns-wrap div a{
        width: 50px;
        height: 50px;
    }
    .sns-wrap div a span{
        line-height: 1;
    }
    .sns-wrap .sns.facebook img{
        max-width: 28px;
        height: 100%;
    }
    .sns-wrap .sns.twitter img{
        max-width: 18px;
        height: 100%;
    }
    .hbg-btn{
        width: 41px;
        height: 13px;
    }
    .hbg-btn .hbg-btn__label{
        font-size: 12px;
        bottom: -20px;
    }
    .hbg-btn__bar{
        height: 1px;
    }
    .hbg-btn__bar:nth-of-type(2){
        top: 6px;
    }
    .hbg-btn::after{
        width: 40px;
        height: 40px;
        border: 1px solid transparent;
    }
    .hbg-btn.is-on .hbg-btn__bar:nth-of-type(1){
        transform: translateY(6px) rotate(-45deg);
        top: 1px;
    }
    .hbg-btn.is-on .hbg-btn__bar:nth-of-type(3) {
        transform: translateY(-6px) rotate(45deg);
        bottom: -1px;
    }
    
    #back-top{   
        right: 10px;
    }
    .entry-box{
        height: 100px;
        max-width: 350px;
        margin: 100px auto 30px;
    }
    .entry-box a div p{
        font-size: 18px;
        margin-top: -12px;
    }
    .entry-box a div span{
        font-size: 15px;
        line-height: 1;
    }
    .entry-box a div img{
        bottom: 14px;
        height: 10px;
    }
    .entry-box::before{
        height: 60px;
        top: -80px;
    }
    .circ-arrow a,.lnk-wrap .circ-arrow{
        width: 55px;
        height: 55px;
        right: -7px;
        bottom: -7px;
    }
    .btn-action{
        font-size: 14px;
    }
    .more-link a div p{
        font-size: 14px;
        line-height: 2;
    }
    .more-link a div img{
        height: 10px;
    }
    .linkBtn a{
        font-size: 14px;
    }
    .btnBox{
        grid-gap: 10px;
        gap: 10px;
        margin: 100px auto 0;
    }
    .btnBox .more-link.u-ctr a div p img{
        height: 10px;
    }
    .more-link.large{
        height: 60px;
    }
    .more-link.u-ctr a div p{
        font-size: 16px;
    }
    .btnBox::before {
        height: 60px;
        top: -80px;
    }
}




/* Page heading */
#site-main .pg-title,#page-body .sec-head{ text-align: center; letter-spacing: 0.1em; margin-bottom: 40px;}
#site-main .pg-title h1{ font-size: 40px;}
#site-main .pg-title span{ font-size: 30px; line-height: 1; letter-spacing: 0.02em;}
#page-body .sec-head h2{ font-size: 36px; letter-spacing: 0.08em;}
#page-body .sec-head span{ font-size: 25px; line-height: 1; letter-spacing: 0.02em;}
#page-body .sec-head.col-l{ text-align: left; display:flex; align-items: baseline;}
#page-body .sec-head.col-l *{ margin-right: 20px; }
/*	[03] Utility
-------------------------------------------------------------- */
#site-main{
    margin-top: 100px;
    padding: 60px 0;
    overflow: hidden;
}
.pg-top #site-main{
    margin-top: 0;
    padding-top: 0;
}
.cnt.card-frame{
    position: relative;
}
.cnt.card-frame::after{
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    border: 1px solid #A2CB35;
    left: 10px;
    top: -10px;
    z-index: 10;
    pointer-events: none;
    mix-blend-mode: multiply;
}
.msg-copy{
    text-align: center;
    font-size: 30px;
    letter-spacing: 0.08em;
    margin-top: 100px;
    line-height: 2;
}

/* Breadcrumb */
.pg-crumbs{
    padding-bottom:20px;
    padding-left: 20px;
    position: absolute;
    line-height: 1.2;
}
@media (-ms-high-contrast: none) {
    .pg-crumbs{
        top:100px;
    }
}
@media screen and (max-width:480px) and (-ms-high-contrast: none){
    .pg-crumbs{
        top:60px;
    }
}
.pg-crumbs li{
    position: relative;
    padding: 0 10px;
    line-height: 1;
    height: 20px;
    display: inline-block;
}
.pg-crumbs li a{
    display: inline-block;
    font-size: 14px;
}
.pg-crumbs li a{
    color: #1690CE;
    position: relative;
}
.pg-crumbs li a::after{
    content: '';
    position: absolute;
    height: 1px;
    width: 0;
    background: #1690CE;
    left: 0;
    bottom: 0;
    transition: .2s;
}
.pg-crumbs li a:hover::after{
    width: 100%;
}
.pg-crumbs li > span{ 
    color: #111;
    font-size: 14px;
}
.pg-crumbs li:after{
    content: "";
    display: inline-block;
    border-top: 1px #111 solid;
    border-right: 1px #111 solid;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    right: -4px;
    width: 6px;
    height: 6px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.pg-crumbs li:last-child::after{
    display: none;
}

.page-sec{
    width: 90%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 80px 0 0;
    position: relative;
}
.page-sec.max{
    width: 100%;
    max-width: 100%;
}
.page-sec.max .u-in{
    width: 90%;
    max-width: 1200px;
    margin: 0 auto;
}

.fit-img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    font-family: 'object-fit: cover;'; /* IE fallback */
}
.deco-bl,.deco-tl,.deco-br,.deco-tr{
    position: absolute!important;
    width: auto!important;
    z-index: -1;
}
.deco-bl{
    bottom: -150px;
    left: -80px;
}
.deco-tl{
    top: -80px;
    left: -130px;
}
.deco-br{
    bottom: -80px;
    right: -150px;
}
.deco-tr{
    top: 0;
    right: -100px;
}
/* Desktop */
@media screen and (min-width:900px){
    .mb-hide{
        display: block;
    }
    .sp-hide{
        display: none!important;
    }
    .mb-only{
        display: none!important;
    }
    .pc-hide{
        display: none!important;
    }
}
@media screen and (max-width:1100px){
    .msg-copy{
        font-size: 26px;
    }
}


/* Tablet */
@media screen and (max-width:899px){
    .mb-hide{
        display: none!important;
    }
    .sp-hide{
        display: block;
    }
    .mb-only{
        display: none!important;
    }
    .pc-hide{
        display: block;
    }
    /*#site-main{
        padding-top: 40px;
    }*/
    #site-main .pg-title h1{
        font-size: 34px;
    }
    #page-body .sec-head h2{
        font-size: 32px;
    }
    #site-main .pg-title span{ 
        font-size: 23px;
    }
    #page-body .sec-head span{
        font-size: 20px;
    }
    .page-sec:first-child{
        margin-top: 0;
    }
    #page-body .sec-head.col-l *{
        margin-right: 15px;
    }
    .msg-copy{
        margin-top: 50px;
    }
}

/* Mobile */
@media screen and (max-width:480px){
    .sp-hide{
        display: none!important;
    }
    .mb-only{
        display: block!important;
    }
    .page-sec{
        padding-top: 60px;
    }

    #site-main{
        padding-top: 40px;
        margin-top: 60px;
    }
    #site-main .pg-title h1{
        font-size: 28px;
    }
    #page-body .sec-head h2{
        font-size: 27px;
        letter-spacing: 0.05em;
        line-height: 1.3;
    }
    #site-main .pg-title, #page-body .sec-head{
        margin-bottom: 30px;
    }
    #site-main .pg-title span{
        font-size: 18px;
    }
    #page-body .sec-head span{
        font-size: 16px;
    }
    #page-body .sec-head.col-l *{
        margin-right: 7px;
    }
    .deco-tr{
        top: -80px;
    }
    .deco-bl {
        bottom: -150px;
        left: -110px;
    }
    .deco-tl {
        top: -120px;
        left: -160px;
    }
    .deco-br{
        bottom: -110px;
        right: -120px;
    }
    .deco-bl img, .deco-tl img, .deco-br img, .deco-tr img{
        -webkit-transform: scale(0.7);
        transform: scale(0.7);
    }
    .cnt.card-frame::after{
        left: 7px;
        top: -7px;
    }
    .msg-copy{
        font-size: 20px;
    }
    .msg-copy{
        margin-top: 0;
    }
    .pg-crumbs{
        padding-left: 5px;
    }
    .pg-crumbs li{
        padding: 0 5px;
    }
    .pg-crumbs li a,.pg-crumbs li span{
        font-size: 12px;
    }
}


/*	[04] Header
-----------------------------------------------------*/
header{
    height: 100px;
    background: rgba(255,255,255,.9);
    position: fixed;
    width: 100%;
    top: 0;
    left: 0;
    z-index: 100;
}
.hd-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 100%;
    padding-left: 2.5%;
}
.hd-inner > .hbg-btn {
    flex-shrink: 0;
    margin: 0 32px;
}
header .site-id a{
    display: flex;
    align-items: center;   
}
header .site-id img{
    border-right: 1px solid #D3D3D3;
    margin-right: 10px;
    padding-right: 10px;
}
.hd-nav {
    display: flex;
    align-items: center;
    flex-grow: 1;
    justify-content: flex-end;
}
header .hd-inner > .hbg-btn{
    flex-shrink: 0;
    margin: 0 32px;
}
.hd-nav__list{
    display: flex;
    margin-right: 10px;
}
.hd-nav__item{
    margin: 0 10px;
}
.hd-nav__item a{
    color: #1690CE;
    font-size: 15px;
}
.hd-nav__item a.btn-action{
    color: #fff;
}

#global-nav{
    position: fixed;
    background: #fff;
    width: 100%;
    height: calc(100% - 100px);
    border-top: 1px solid #D3D3D3;
    flex-flow: column;
    justify-content: space-between;
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
    transition: .5s;
    z-index: 101;
    opacity: 0;
    pointer-events: none;
    top: 100px;
 }
@media (-ms-high-contrast: none) {
    #global-nav{
        z-index: -1;
    }
    #global-nav.is-on{
        z-index: 101;
    }
}
#global-nav.is-on{
    opacity: 1;
    pointer-events: auto;
    -webkit-transform: scale(1.0);
    transform: scale(1.0);
}
#global-nav .gnav-main{
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0 5%;
    height: calc(100% - 80px);
    grid-gap: 5%;
    gap: 5%;
}
#global-nav .gnav-foot{
    height: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    grid-gap: 5%;
    gap: 5%;
    border-top: 1px solid #D3D3D3;
}
@media (-ms-high-contrast: none) {
    #global-nav .gnav-foot li{
        margin: 0 2.5%;
    }
}
#global-nav .gnav-foot li a:hover{
    opacity: .6;
}
#global-nav .gnav-main > div ,#global-nav .gnav-main > ul{
    display: flex;
    flex-flow: column;
    justify-content: space-around;
    height: 100%;
    max-height: 580px;
}
#global-nav .gnav-main .col-l{
    justify-content: center;
    display: flex;
    max-height: 580px;
    justify-content: end;
    grid-gap: 5%;
    gap: 5%;
}
@media (-ms-high-contrast: none) {
    #global-nav .gnav-main .col-l{
        margin-right: 5%;
    }
}
@media screen and (max-width:899px) and (-ms-high-contrast: none){
    #global-nav .gnav-main .col-l{
        margin-right: 0;
        margin-bottom: 3%;
    }
}
#global-nav .gnav-main .col-l p{
    letter-spacing: 1px;
    line-height: 2;
    margin-top: 20px;
}
#global-nav .gnav-main .tag-copy p span{
    font-size: 38px;
    padding: 10px 15px;
    color: #fff;
    display: inline-block;
    background: #1690CE;
    line-height: 1;
    margin-bottom: 10px;
}

#global-nav .gnav-list li a{
    font-size: 22px;
}

#global-nav .gnav-list .iv-nav{
    padding-left: 60px;
}
#global-nav .gnav-list .iv-nav li{
    margin-bottom: 15px;
}  
#global-nav .gnav-list .iv-nav p{
    display: inline;
    margin-right: 10px;
    font-size: 17px;
}
#global-nav .gnav-list .iv-nav p.en{
    font-size: 14px;
    letter-spacing: 0;
    line-height: 1;
}
#global-nav .gnav-list .iv-nav span{
    font-size: 12px;
    display: block;
/*    line-height: 0.5;*/
    line-height: 1.2;
}
#global-nav .gnav-list .iv-nav a{
    display: block;
    position: relative;
}
#global-nav .gnav-list .iv-nav a::before{
    content: '';
    width: 12px;
    height: 1px; 
    background: #000;
    left: -20px;
    position: absolute;
    top: 6px;
}
#global-nav .gnav-list .iv-nav a:hover,#global-nav .gnav-list .iv-nav a:hover::before{
    opacity: .6;
}
#global-nav .gnav-list li a.lnk-ul::after{
    bottom: -2px;
}

@media screen and (max-width:1200px){
    #global-nav .gnav-main{
        justify-content: space-between;
        grid-gap: 0;
        gap: 0;
        padding: 50px 3%;
    }

}
@media screen and (max-width:1100px){
    header .hd-inner > .hbg-btn{
        margin: 0 18px;
    }
    .hd-nav__item{
        margin: 0 5px;
    }
    #global-nav .gnav-main .col-l{
        width: 70%;
    }
    #global-nav .gnav-main .col-l p{
        font-size: 14px;
    }
    #global-nav .gnav-main .tag-copy p{
        font-size: 33px;
        letter-spacing: 0;
    }
}


/* Tablet */
@media screen and (max-width:899px){
    .hd-nav{
        display: none;
    }
    #global-nav .gnav-main{
        padding: 0 5%;
        flex-flow: column;
        justify-content: start;
        grid-gap: 3%;
        gap: 3%;
        max-width: 550px;
        margin: 0 auto;
        min-height: calc(100vh - 80px);
        overflow-y: scroll;
    }
    #global-nav .gnav-main .alt-block{
        display: none;
    }
    #global-nav .gnav-main .col-l{
        width: 100%;
        height: auto;
        margin-top: 5%;
    }
    #global-nav .gnav-main .tag-copy p{
        margin-bottom: 10px;
        line-height: 2;
    }
    #global-nav .gnav-main .col-l p{
        margin-top: 0;
    }
    #global-nav .gnav-main .tag-copy p{
        font-size: 28px;
    }
    #global-nav .gnav-main .col-l .txt-block{
        margin-bottom: 0;
    }
    #global-nav .gnav-main > ul{
        width: 100%;
        height: auto;
        justify-content: start;
        grid-gap: 10px;
        gap: 10px;
    }
    #global-nav .gnav-list li a{
        font-size: 18px;
    }
    #global-nav .gnav-list > li.nav-child{
        border-bottom: 1px solid #1690CE;
        position: relative;
    }
    #global-nav .gnav-list > li.nav-child .acc-icon{
        position: absolute;
        right: 0;
        width: 15px;
        height: 15px;
    }
    #global-nav .gnav-list .iv-nav{
        display: none;
        margin-top: 5px;
    }
    #global-nav .gnav-foot{
        display: none;
    }
    #global-nav .gnav-main > div.sub-list{
        justify-content: center;
        height: auto;
        width: 100%;
    }
    #global-nav .gnav-main > div.sub-list .btn-action{
        text-align: center;
        margin-bottom: 15px;
        padding: 10px 20px;
    }
    #global-nav .gnav-main > div.sub-list ul{
        display: flex;
        flex-flow: wrap;
    }
    #global-nav .gnav-main > div.sub-list li{
        width: 50%;
        height: 35px;
    }
    #global-nav .gnav-main > div.sub-list .sns-wrap{
        justify-content: center;
        margin: 10px 0;
    }
    #global-nav .gnav-main > div.sub-list small{
        text-align: center;
    }
    #global-nav .gnav-main .tag-copy p span{
        font-size: 28px;
        padding:  10px;
    }
}

/* Mobile */
@media screen and (max-width:480px){
    header{
        height: 60px;
    }
    header .site-id img{
        width: 120px;
        margin-right: 7px;
        padding-right: 7px;
    }
    header .site-name{
        font-size: 14px;
    }
    header .hd-inner > .hbg-btn{
        margin: 0 12px;
    }
    #global-nav{
        height: calc(100% - 60px);
        top: 60px;
    }
    #global-nav .gnav-main{
        min-height: calc(100vh - 60px);
    }
    #global-nav .gnav-main .col-l{
        margin-top: 12%;
    }
    #global-nav .gnav-main .col-l p{
        letter-spacing: 0.05em;
        line-height: 1.8;
        font-size: 12px;
    }
    #global-nav .gnav-main .tag-copy p{
        font-size: 22px;
        letter-spacing: 0;
    }
    #global-nav .gnav-main > div.sub-list li a{
        font-size: 12px;
    }
    #global-nav .gnav-list li a{
        font-size: 18px;
    }
    #global-nav .gnav-main > ul{
        grid-gap: 8px;
        gap: 8px;
    }
    #global-nav .gnav-main > div.sub-list small{
        font-size: 11px;
    }
    #global-nav .gnav-main > div.sub-list .btn-action{
        font-size: 14px;
    }
    #global-nav .gnav-list .iv-nav{
        padding-left: 30px;
    }
    #global-nav .gnav-list .iv-nav li{
        margin-bottom: 13px;
    }
    #global-nav .gnav-list .iv-nav span{
        font-size: 11px;
        line-height: 1.3;
    }
    #global-nav .gnav-list .iv-nav p{
        font-size: 16px;
    }
    #global-nav .gnav-list .iv-nav p.en{
        font-size: 13px;
    }
    #global-nav .gnav-main .tag-copy p span{
        font-size: 22px;
        margin-bottom: 5px;
    }
}

/*  [05] Footer
-----------------------------------------------------*/
footer{
    border-top: 2px solid #1690CE;
    padding: 20px 0;
}
footer .ft-nav-wrap{
    width: 90%;
    max-width: 1000px;
    margin: 0px auto 60px;
    padding-top: 80px;
}
footer .ft-nav{
    display: flex;
    justify-content: center;
}
footer .ft-nav__group{
    width: 100%;
    min-width: 140px;
}
footer .ft-nav__group:first-child{
    min-width: 250px;
}
footer .ft-nav__group:nth-child(2){
    min-width: 210px;
}
footer .ft-nav__group:nth-child(3){
    min-width: 250px;
}
footer .ft-nav__hdg{
    margin-bottom: 15px;
}
footer .ft-nav__hdg a{
    color: #1690CE;
    font-size: 20px;
    font-weight: bold;
}
footer .ft-nav__hdg a:hover{
    opacity: .8;
}
footer .ft-nav__list li{
    margin-bottom: 10px;
    font-size: 15px;
}
footer .ft-nav__list li a{
    position: relative;
    padding-left: 12px;
}
footer .ft-nav__list li a:hover{
    opacity: .6;
}
footer .ft-nav__list li a::before{
    content: '';
    height: 1px;
    width: 6px;
    background: #111;
    position: absolute;
    left: 0;
    top: 11px;
}
footer .ft-id{
    display: flex;
    align-items: center;
    justify-content: center;
}
footer .ft-id img{
    border-right: 1px solid #D3D3D3;
    margin-right: 13px;
    padding-right: 13px;
}
footer .ft-id span{
    font-size: 20px;
}
small{
    font-size: 13px;
    letter-spacing: 0.03em;
}
footer .ft-id-wrap{
    text-align: center;
}
footer .ft-copy{
    color: #1690CE;
}
footer .sns-wrap{
    position: absolute;
    right: 80px;
    bottom: 20px;
}

/* Desktop */
@media screen and (max-width:1000px){
    footer .ft-nav-wrap{
        width: 95%;
    }
    footer .ft-nav__hdg a{
        font-size: 18px;
    }
    footer .ft-nav__list li{
        font-size: 14px;
    }
}

/* Tablet */
@media screen and (max-width:899px){
    footer .ft-nav-wrap{
        display: none;
    }
    footer .sns-wrap{
        position: static;
    }
    footer .sns-wrap{
        justify-content: center;
        margin-bottom: 15px;
    }
    
}

/* Mobile */
@media screen and (max-width:480px){
    footer .ft-id{
        transform: scale(.8);
    }
    footer .ft-id img{
        width: 140px;
        margin-right: 8px;
        padding-right: 8px;
    }
    footer .ft-id span{
        font-size: 16px;
    }
    footer small{
        font-size: 10px;
    }

}

.guide-banner{
    display: flex;
    justify-content: center;
    align-items: center;
    height: 220px;
}
.guide-banner .sec-photo{
    max-width: 380px;
}
.guide-banner .sec-photo a:hover{
    opacity: .5;
}
@media screen and (max-width:480px){
    .guide-banner{
        height: 170px;
    }
    .guide-banner .sec-photo{
        max-width: 300px;
    }
}


 
/*	[06] Hero
-----------------------------------------------------*/

#hero {
    margin: 60px auto;
    width: 90%;
    max-width: 1000px;
    height: 370px;
    position: relative;
}
.pg-top #hero{
    width: 100%;
    max-width: calc(100% - 115px);
    margin: 0;
    height: auto;
}
.pg-top #hero .visual-grid{
    margin-top: 100px;
    display: -moz-grid;
    display: -ms-grid;
    display: grid;
    grid-gap: 5px;
    gap: 5px;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.63fr) minmax(0, 1fr);
    grid-template-rows: repeat(3, minmax(0, 1fr));
    grid-template-areas:
        "meeting man buildingTall"
        "buildingSign copy buildingTall"
        "women documents team";
    aspect-ratio: 1560 / 942;
}
.pg-top #hero .visual-grid > div{
    overflow: hidden;
    min-width: 0;
    min-height: 0;
}
.pg-top #hero .visual-grid .visual-meeting{ grid-area: meeting; }
.pg-top #hero .visual-grid .visual-man{ grid-area: man; }
.pg-top #hero .visual-grid .visual-building-tall{ grid-area: buildingTall; }
.pg-top #hero .visual-grid .visual-building-sign{ grid-area: buildingSign; }
.pg-top #hero .visual-grid .visual-women{ grid-area: women; }
.pg-top #hero .visual-grid .visual-documents{ grid-area: documents; }
.pg-top #hero .visual-grid .visual-copy{ grid-area: copy; }
.pg-top #hero .visual-grid .visual-team{ grid-area: team; }

/* Image position */
.pg-top #hero .visual-grid .visual-meeting img{
    object-position: 50% 45%;
    font-family: 'object-fit: cover; object-position: 50% 45%;'; /* IE fallback */
}
.pg-top #hero .visual-grid .visual-man img{
    object-position: 50% 38%;
    font-family: 'object-fit: cover; object-position: 50% 38%;'; /* IE fallback */
}
.pg-top #hero .visual-grid .visual-building-tall img{
    object-position: 55% 50%;
    font-family: 'object-fit: cover; object-position: 55% 50%;'; /* IE fallback */
}
.pg-top #hero .visual-grid .visual-building-sign img{
    object-position: 50% 62%;
    font-family: 'object-fit: cover; object-position: 50% 62%;'; /* IE fallback */
}
.pg-top #hero .visual-grid .visual-women img{
    object-position: 50% 42%;
    font-family: 'object-fit: cover; object-position: 50% 42%;'; /* IE fallback */
}
.pg-top #hero .visual-grid .visual-documents img{
    object-position: 50% 56%;
    font-family: 'object-fit: cover; object-position: 50% 56%;'; /* IE fallback */
}
.pg-top #hero .visual-grid .visual-team img{
    object-position: 50% 40%;
    font-family: 'object-fit: cover; object-position: 50% 40%;'; /* IE fallback */
}

.pg-top #hero .hero-text {
    display: -ms-flex;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    padding: 20px 24px;
    background: #fcfcfc;
    box-sizing: border-box;
}
.pg-top #hero .hero-text > div{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}
.pg-top #hero .hero-text p{
    font-size: 38px;
    line-height: 1.7;
    letter-spacing: 0.03em;
    text-align: center;
    color: #1D8CC8;
}

@media all and (-ms-high-contrast:none){
    .pg-top #hero .hero-text p{
        letter-spacing: 0.12em!important;
    }
}

.pg-top #hero .hero-text p span{
    display: inline-block;
    color: #1D8CC8;
    border-color: #1D8CC8;
    padding-bottom: 10px;
}
.pg-top #hero .hero-text p span + span{
    margin-top: 18px;
}

#hero .scroll-guide{
    height: 207px;
    position: absolute;
    right: -115px;
    width: 115px;
    text-align: center;
    bottom: 0;
}
#hero .scroll-guide span{
    -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
}
#hero .scroll-guide span::after{
    content: '';
    height: 142px;
    width: 1px;
    top: 65px;
    left: 0;
    right: 0;
    margin: auto;
    background: #000000;
    position: absolute;
    -webkit-animation: scroll-line 1.5s cubic-bezier(1, 0, 0, 1) infinite;
    animation: scroll-line 1.5s cubic-bezier(1, 0, 0, 1) infinite;
}

@keyframes scroll-line {
  0% {
    -webkit-transform: scale(1, 0);
    transform: scale(1, 0);
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
  }
  50% {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
  }
  50.1% {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
    -webkit-transform-origin: 0 100%;
    transform-origin: 0 100%;
  }
  100% {
    -webkit-transform: scale(1, 0);
    transform: scale(1, 0);
    -webkit-transform-origin: 0 100%;
    transform-origin: 0 100%;
  }
}

@media screen and (min-width:1500px){
    .pg-top #hero{
        max-width: 1385px;
    }
}
@media screen and (min-width:1550px){
    .pg-top #hero{
        margin: 0 auto;
    }
}
@media screen and (max-width:1200px){
    #hero .scroll-guide{
        right: -45px;
        width: 50px;
    }
}
@media screen and (max-width:1100px){
    .pg-top #hero{
        max-width: calc(100% - 85px);
    }
    .pg-top #hero .scroll-guide{
        width: 85px;
        right: -85px;
    }
    .pg-top #hero .hero-text p{
        font-size: 32px;
    }
}

/* Tablet */
@media screen and (max-width:899px){
    .pg-top #hero{
        max-width: 100%;
    }
    .pg-top #hero .visual-grid{
        grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
        grid-template-rows: clamp(145px, 28vw, 225px) clamp(145px, 28vw, 225px) auto clamp(130px, 24vw, 190px) clamp(130px, 24vw, 190px);
        grid-template-areas:
            "buildingTall man"
            "buildingTall meeting"
            "copy copy"
            "documents women"
            "buildingSign team";
        aspect-ratio: auto;
    }
    .pg-top #hero .hero-text{
        padding: 34px 22px;
    }
    .pg-top #hero .hero-text p{
        font-size: 30px;
    }
    .pg-top #hero .visual-grid .visual-meeting img{
        object-position: 50% 48%;
        font-family: 'object-fit: cover; object-position: 50% 48%;'; /* IE fallback */
    }
    .pg-top #hero .visual-grid .visual-women img{
        object-position: 50% 34%;
        font-family: 'object-fit: cover; object-position: 50% 34%;'; /* IE fallback */
    }
    .pg-top #hero .visual-grid .visual-building-sign img{
        object-position: 50% 55%;
        font-family: 'object-fit: cover; object-position: 50% 55%;'; /* IE fallback */
    }
    #hero{
        margin: 40px auto;
        height: auto;
    }
}
@media screen and (max-width:550px){
   .pg-top #hero .hero-text p{
        font-size: 25px;
   }
   .pg-top #hero{
        max-width: 100%;
   }
   #hero .scroll-guide{
        display: none;
   }
}
/* Mobile */
@media screen and (max-width:480px){
    .pg-top #hero .visual-grid{
        margin-top: 60px;
        gap: 4px;
        grid-template-rows: clamp(140px, 43vw, 200px) clamp(140px, 43vw, 200px) auto clamp(115px, 34vw, 165px) clamp(115px, 34vw, 165px);
    }
    .pg-top #hero .hero-text{
        padding: 34px 18px 30px;
    }
    .pg-top #hero .hero-text p{
        font-size: 26px;
        line-height: 1.65;
    }
    #hero{
        margin: 30px auto 0;
    }
}
@media screen and (max-width:400px){
    .pg-top #hero .hero-text p{
        font-size: 23px;
    }
}


/*	[07] Contents
-----------------------------------------------------*/
/* 01. Top page */
.pg-top #about-area .sec-head{
    margin-bottom: 20px;   
}
.pg-top #about-area .cnt{
/*    padding: 50px 50px 40px;*/
    box-sizing:  border-box;
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
}
.pg-top #about-area .cnt .intro-copy{
    margin-bottom: 40px;
    width: 100%;
}
.pg-top #about-area .cnt > a{
    display: block;
    padding: 50px 50px 40px;
}
.pg-top #about-area .cnt p{
    font-size: 22px;
    letter-spacing: 0.1em;
    width: 70%;
    line-height: 2.2;
}
.pg-top #about-area .cnt .intro-copy span{
    font-size: 36px;
    padding: 15px 50px 0;
    display: inline-block;
    position: relative;
    z-index: 2;
    letter-spacing: 0.03em;
    margin-left: -50px;
    line-height: 1;
}
.pg-top #about-area .cnt .intro-copy span::before{
    content: '';
    width: 100%;
    height: 68px;
    background-color: #1690CE;
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
}
.pg-top #about-area .cnt .sec-info{
    padding: 20px 0 0;
    border-top: 1px solid #D3D3D3;
    margin-top: 30px;
    display: flex;
    justify-content: space-between;
}
.pg-top #about-area .cnt .sec-info p{
    font-size: 18px;
}
.pg-top #about-area .cnt .sec-text{
    display: flex;
    gap: 30px;
    align-items: center;
}
.pg-top #about-area .cnt .sec-text img{
    width: 40%;
    max-width: 385px;
}
.pg-top #about-area .cnt .sec-text p{
   flex:1;
}

.pg-top #voice-area .cnt {
    padding: 0 50px;
    box-sizing:  border-box;
    width: 100%;
    max-width: 1000px;
    margin: 0 auto 150px;
    position: relative;
}
.pg-top #voice-area .block-title{
    display: inline-block;
    background: #fff;
    font-size: 28px;
    position: absolute;
    left: 0;
    top: -20px;
    letter-spacing: 2px;
    padding: 5px 25px;
    z-index: 10;
}
.pg-top #voice-area .block-title span{
    font-size: 135px;
    line-height: 0;
    letter-spacing: 0;
    margin-right: 10px;
    transform: translateY(3px); 
    display: inline-block;
}
.pg-top #voice-area .sec-photo{
    border-top: 5px solid #1690CE;
    position: relative;
    transition: .2s;
    background: #000;
}
.pg-top #voice-area .sec-text{
    margin-top: 20px;
    padding: 15px 0;
    border-top: 1px solid #1690CE;
    border-bottom: 1px solid #1690CE;
}

.pg-top #notice-area{
    padding: 50px 0;
    position: relative;
}
/*
 * 「採用に関するご案内」がトップページ最初のセクションになる期間だけ、
 * ファーストビューとの間に余白を確保する。
 * 前段コンテンツを再公開すると :first-child ではなくなるため自動解除される。
 */
.pg-top #page-body > #notice-area:first-child{
    margin-top: 80px;
}
.pg-top #notice-area .sec-head{
    position: absolute;
    top: -35px;
}
.pg-top #notice-area li a{
    background: #fff;
    padding: 18px 50px;
    margin-bottom: 3px;
    color: #1690CE;
    display: block;
    position: relative;
}
.pg-top #notice-area li a::after{
    content: '';
    width: 10px;
    height: 18px;
    background: url("../images/shared/arrow_right2.png")center / 100% no-repeat;
    position: absolute;
    right: 30px;
    top: 0;
    bottom: 0;
    margin: auto;
    transition: .2s;
}
.pg-top #notice-area li a:hover{
    color: #1690CE88;
}
.pg-top #notice-area li a:hover::after{
    right: 25px;
}
.pg-top #recruit-area .sec-head{
    position: absolute;
    z-index: 1;
    padding: 25px 8px 10px;
    background: #A2CB35;
    width: 50px;
    height: 190px;
    left: 50px;
    top: -20px;
    height: 166px;
}
.pg-top #recruit-area .sec-head h2{
    font-size: 24px;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    letter-spacing: 8px;
    color: #fff;
    line-height: 1.4;
}

.pg-top #recruit-area .cnt{
    padding: 45px;
    display: flex;
    align-items: flex-end;
    background: url("../images/index/recruit_bg.jpg") center / cover no-repeat;
}
.pg-top #recruit-area .cnt .job-copy{
    font-size: 38px;
    width: 340px;
}
.pg-top #recruit-area .cnt .job-copy span{
    background: rgba(255,255,255,.8);
    letter-spacing: 6px;
    display: inline-block;
    margin-top: 5px;
    padding: 3px 15px;
}
.pg-top #recruit-area .cnt .sec-text{
    display: flex;
    background: #fff;
    padding: 30px 3%;
    position: relative;
    width: calc(100% - 360px);
    z-index: 11;
}
.pg-top #recruit-area .cnt .sec-text h3{
    margin-bottom: 10px;
    font-size: 18px;
}
.pg-top #recruit-area .cnt .sec-text .btn-action{
    margin-top: 15px;
    display: inline-block;
    border-radius: 50px;
    transition: .3s;
}
.pg-top #recruit-area .cnt .sec-text .btn-action:hover{
    opacity: .6;
}
.pg-top #recruit-area .cnt .sec-text .txt-block{
    width: 50%;
}
.pg-top #recruit-area .cnt .sec-text .sec-photo{
    width: 53%;
    height: 100%;
    right: -5%;
    top: -8%;
    position: absolute;
}
.pg-top #career-area .cnt{
    display: flex;
    justify-content: space-around;
    width:90%;
    max-width: 1000px;
    margin: 0 auto;
    gap: 5%; 
    position: relative;
}
.pg-top #career-area .cnt > div{
    width: 100%;
    position: relative;
}
@media (-ms-high-contrast: none) {
    .pg-top #career-area .cnt > div:first-child{
        margin-right: 5%;
    }
}
@media screen and (max-width:899px) and (-ms-high-contrast: none){
    .pg-top #career-area .cnt > div:first-child{
        margin-right: 0;
        margin-bottom: 30px;
    }
}


.pg-top #career-area .cnt > div a{
    display: block;
    background: #F5F4F2;
    padding: 30px 5%;
    height: 100%;
}
.pg-top #career-area .sec-text{
    border-top: 1px solid #1690CE;
    border-bottom: 1px solid #1690CE;
    padding: 20px 0;
    height: 100%;
}
.pg-top #career-area .sec-text h3{
    font-size: 20px;
    margin-bottom: 15px;
}
.pg-top #career-area .sec-text h3 span{
    margin-left: 15px;
    padding-left: 15px;
    border-left: 1px solid #1690CE;
    letter-spacing: 0;
    font-size: 18px;
}
@media screen and (max-width:1100px){
    .pg-top #about-area .cnt .intro-copy span{
        font-size: 30px;
    }
    .pg-top #about-area .cnt p{
        font-size: 20px;
        width: 90%;
    }
    .pg-top #recruit-area{
        max-width: 800px;
    }
    .pg-top #recruit-area .cnt{
        flex-flow: column;
        align-items: start;
        padding: 20px 0 30px;
    }
    .pg-top #recruit-area .sec-head{
        left: auto;
        right: 2%;
    }
    .pg-top #recruit-area .cnt .sec-text{
        flex-flow: column-reverse;
        background: none;
        padding: 0;
        margin-top: 20px;
        width: 100%;
    }
    .pg-top #recruit-area .cnt .sec-text .sec-photo{
        position: static;
        width: 60%;
        height: 200px;
    }
    .pg-top #recruit-area .cnt .sec-text .txt-block{
        padding: 30px 20px 20px;
        background: #fff;
        margin-top: -15px;
        margin-left: auto;
        width: 60%;
    }
}
@media screen and (max-width:899px){
    .pg-top #notice-area .sec-head{
        top: -30px;
    }
    .pg-top #about-area .cnt > a{
        padding: 30px 5%;
    }
    .pg-top #about-area .cnt .intro-copy span{
        font-size: 23px;
        margin-left: -5.5%;
        padding: 13px 33px 0;
    }
    .pg-top #about-area .cnt .intro-copy span::before{
        height: 52px;
    }
    .pg-top #about-area .cnt p{
        font-size: 18px;
        line-height: 1.6;
    }
    .pg-top #about-area .cnt .sec-info p{
        font-size: 16px;
    }
    .pg-top #about-area .cnt .sec-info{
        padding-top: 15px;
        margin-top: 15px;
    }
    .pg-top #about-area .cnt .sec-text{
        flex-flow: column;
    }
    .pg-top #about-area .cnt .sec-text img{
        width: 100%;
        max-width: 500px;
    }
    .pg-top #voice-area .cnt{
        padding: 0;
        margin-bottom: 80px;
    }
    .pg-top #voice-area .block-title{
        position: static;
        padding-left: 0;
    }
    .pg-top #voice-area .block-title{
        font-size: 25px;
    }
    .pg-top #voice-area .block-title span{
        font-size: 100px;
    }
    .pg-top #notice-area li a{
        padding: 15px 5%;
    }
    .pg-top #notice-area li a::after{
        right: 10px;
    }
    .pg-top #career-area .cnt{
        flex-flow: column;
        grid-gap: 30px;
        gap: 30px;
        width: 100%;
    }
    .pg-top #career-area .sec-text h3{
        font-size: 18px;
    }
    .pg-top #career-area .sec-text h3 span{
        font-size: 16px;
    }
    .pg-top #career-area .sec-text p{
        font-size: 14px;
    }
    
}
@media screen and (max-width:660px){
    .pg-top #about-area .cnt .intro-copy span{
        padding: 10px 20px 0 5%;
        letter-spacing: 0;
    }
    .pg-top #about-area .cnt > a{
        padding: 20px 2% 20px 5%;
    }
    .pg-top #about-area .cnt p{
        width: 100%;
        font-size: 16px;
        line-height: 1.8;
    }
    .pg-top #about-area .cnt .sec-info p{
        font-size: 14px;
    }
    .pg-top #about-area .cnt .intro-copy span::before{
        height: 44px;
    }

}
@media screen and (max-width:480px){

    .pg-top #notice-area .sec-head{
        top: -40px;
        flex-flow: column;
        grid-gap: 5px;
        gap: 5px;
    }
    .pg-top #about-area .cnt .intro-copy span{
        font-size: 18px;
        padding-right: 5%;
        padding-top: 13px;
        letter-spacing: 0.03em;
    }
    .pg-top #about-area .cnt p{
        font-size: 15px;
        line-height: 2;
    }
    .pg-top #about-area .cnt .sec-info p{
        font-size: 13px;
        letter-spacing: 0;
        line-height: 1.6;
        width: 300px;
    }
    .pg-top #about-area .cnt .sec-text img{
        max-width: 320px;
    }
    .pg-top #about-area .cnt .intro-copy{
        margin-bottom: 25px;
    }
    .pg-top #about-area .cnt .sec-text{
        gap: 20px;
    }
    .pg-top #voice-area{
        margin-bottom: 100px;
    }
    .pg-top #voice-area .cnt{
        margin-bottom: 60px;
    }
    .pg-top #voice-area .block-title{
        font-size: 22px;
    }
    .pg-top #voice-area .block-title span{
        font-size: 75px;
    }
    .pg-top #voice-area .sec-text{
        font-size: 14px;
        padding: 10px 0;
        margin-top: 15px;
    }
    .pg-top #voice-area .sec-photo{
        border-top: 3px solid #1690CE;
    }
    .pg-top #notice-area li a{
        font-size: 14px;
        padding: 15px 5% 15px 3%;
    }
    .pg-top #notice-area li a::after{
        width: 8px;
        height: 15px;
    }
    .pg-top #recruit-area .sec-head{
        padding: 20px 8px 10px;
    }
    .pg-top #recruit-area .sec-head h2{
        font-size: 20px;
    }
    .pg-top #recruit-area .cnt .job-copy{
        font-size: 31px;
    }
    .pg-top #recruit-area .cnt .sec-text .sec-photo{
        width: 90%;
        height: 160px;
    }
    .pg-top #recruit-area .cnt .sec-text .txt-block{
        width: 90%;
        padding-right: 0;
    }
    .pg-top #recruit-area .cnt .sec-text .txt-block p{
        font-size: 14px;
        line-height: 1.8;
    }
    .pg-top #career-area .cnt > div a{
        padding: 25px 5%;
    }
    .pg-top #career-area .sec-text{
        padding: 15px 0;
    }
    .pg-top #career-area .sec-text h3{
        font-size: 16px;
        margin-bottom: 10px;
    }
    .pg-top #career-area .sec-text h3 span{
        margin-left: 10px;
        padding-left: 10px;
        font-size: 14px;
    }
}  





/* 02. About page */
.pg-about #field-area {
    padding-top: 0;
}
.pg-about #field-area .sec-head h2 span{
    border-color: #1690CE;
    font-size: 35px;
    line-height: 2;
}
.pg-about #field-area .cnt{
    width: 90%;
    max-width: 1000px;
    padding: 30px 4% 50px;
    margin: 60px auto;
    
}
.pg-about #field-area .cnt .intro-copy{
    font-size: 23px;
    line-height: 2.5;
    margin-bottom: 50px;
    width: 75%;
}
.pg-about #field-area .cnt .intro-copy p{
    border-color: #ddd;
    color: #333;
}
.pg-about #field-area .cnt .intro-text{
    display: flex;
    align-items: start;
    grid-gap: 5%;
    gap: 5%;
}
@media (-ms-high-contrast: none) {
    .pg-about #field-area .cnt .intro-text .txt-block{
        margin-right: 5%;
        width: 100%;
    }
}
.pg-about #field-area .cnt .intro-text .link-wrap{
    margin-top: 45px;
}
.pg-about #field-area .cnt .intro-text h3{
    font-size: 28px;
    margin-bottom: 20px;
    border-color: #1690CE;
    letter-spacing: 2px;
}
.pg-about #field-area .cnt .intro-text .txt-block p{
    line-height: 2;
}
.pg-about #field-area .more-link{
    margin-bottom: 10px;
}

.pg-about .sec-block .block-title{
    font-size: 28px;
    background: #fff;
    padding: 25px 20px 0;
    position: absolute;
    left: 0;
    top: 0;
}

.pg-about .sec-block .block-title span {
    font-size: 135px;
    line-height: 0;
    letter-spacing: 0;
    margin-right: 10px;
    transform: translateY(3px);
    display: inline-block;
}
.pg-about .sec-block{
    margin: 60px auto;
    padding: 50px 0 0;
    display: flex;
    flex-flow: column;
}
.pg-about .sec-block .cntBox{
    display: flex;
}
.pg-about .sec-block .cntBox .sec-text{
    padding: 30px 4%;
    max-width: 550px;
    line-height: 2;
    margin-top: 80px;
}
.pg-about .sec-block .cntBox .sec-text .more-link{
    margin-top: 20px;
}
.pg-about .sec-block .cntBox .sec-photo{
    margin-right: -3%;
    max-height: 400px;
    min-width: 580px;
    z-index: -1;
    width: 60%;
}
.pg-about .sec-block .cntBox .sec-photo img{
    margin-top: -50px;
    margin-left: -5%;
}
.pg-about .sec-block.reverse .block-title{
    right: 0;
    left: auto;
}
.pg-about .sec-block.reverse .cntBox{
    flex-flow: row-reverse;
}
.pg-about .sec-block.reverse .cntBox .sec-photo{
    margin-right: 0;
    margin-left: -3%;
}
.pg-about .sec-block.reverse .cntBox .sec-photo img{
    margin-left: 5%;
}
.pg-about #cp_faq .cnt{
    display: flex;
    justify-content: space-around;
    width:90%;
    max-width: 1000px;
    margin: 0 auto;
    grid-gap: 5%;
    gap: 5%;
    position: relative;
}
@media (-ms-high-contrast: none) {
    .pg-about #cp_faq .cnt > div:first-child{
       margin-right: 5%;
   }
}
@media screen and (max-width:899px) and (-ms-high-contrast: none){
    .pg-about #cp_faq .cnt > div:first-child{
       margin-right: 0;
       margin-bottom: 30px;
   }
}

.pg-about #cp_faq .cnt > div{
    width: 100%;
    position: relative;
}
.pg-about #cp_faq .cnt > div a{
    display: block;
    background: #F5F4F2;
    padding: 30px 5%;
    height: 100%;
}
.pg-about #cp_faq .sec-text{
    border-top: 1px solid #1690CE;
    border-bottom: 1px solid #1690CE;
    padding: 20px 0;
    height: 100%;
}
.pg-about #cp_faq .sec-text h3{
    font-size: 20px;
    margin-bottom: 15px;
}
.pg-about #cp_faq .sec-text h3 span{
    margin-left: 15px;
    padding-left: 15px;
    border-left: 1px solid #1690CE;
    letter-spacing: 0;
    font-size: 18px;
}
@media screen and (max-width:1200px){
    .pg-about #field-area .cnt{
        padding: 30px 3% 50px;
    }
    .pg-about #field-area .cnt .intro-copy{
        font-size: 22px;
    }
}
@media screen and (max-width:1100px){
    .pg-about #field-area .cnt .intro-copy{
        width: 100%;
    }
    .pg-about .sec-block{
        margin: 0 auto;
    }
    .pg-about .sec-block .cntBox .sec-photo{
        max-height: 340px;
        min-width: 500px;
    }
}
@media screen and (max-width:899px){
    .pg-about #field-area .cnt{
        padding: 20px 5% 40px;
    }
    .pg-about #field-area .sec-head h2 span{
        font-size: 26px;
    }
    .pg-about #field-area .cnt .intro-copy{
        margin-bottom: 30px;
        font-size: 20px;
    }
    .pg-about #field-area .cnt .intro-copy p{
        display: inline;
        padding-bottom: 5px;
    }   
    .pg-about #field-area .cnt .intro-text{
        flex-flow: column;
        align-items: center;
    }
    .pg-about #field-area .cnt .intro-text .link-wrap{
        display: flex;
        flex-flow: column;
        align-items: center;
        margin-top: 30px;
    }
    .pg-about #field-area .linkBtn a{
        display: block;
    }
    .pg-about #field-area .cnt .intro-text h3{
        font-size: 25px;
    }
    .pg-about .sec-block .cntBox, .pg-about .sec-block.reverse .cntBox{
        flex-flow: column-reverse;
    }
    .pg-about .sec-block{
        max-width: 700px;
    }
    .pg-about .sec-block .cntBox .sec-photo{
        margin-right: 0;
        margin-left: 0;
        width: 90%;
        min-width: 0;
    }
    .pg-about .sec-block.reverse .cntBox .sec-photo{
        margin-left: auto;
    }
    .pg-about .sec-block .cntBox .sec-photo img,.pg-about .sec-block.reverse .cntBox .sec-photo img{
        margin-right: 0;
        margin-left: 0;
        margin-top: -20px;
    }
    .pg-about .sec-block .cntBox .sec-text{
        margin-left: auto;
        margin-top: -10px;
        width: 90%;
    }
    .pg-about .sec-block.reverse .cntBox .sec-text{
        margin-right: auto;
        margin-left: 0;
    }
    .pg-about #cp_faq .cnt{
        flex-flow: column;
        grid-gap: 30px;
        gap: 30px;
        width: 100%;
    }
    .pg-about #cp_faq .sec-text h3{
        font-size: 18px;
    }
    .pg-about #cp_faq .sec-text h3 span{
        font-size: 16px;
    }
    .pg-about #cp_faq .sec-text p{
        font-size: 14px;
    }
    .pg-about .sec-block .block-title span{
        font-size: 100px;
    }
    .pg-about .sec-block .block-title{
        position: static;
        font-size: 25px;
    }
    .pg-about .sec-block.reverse .block-title{
        text-align: right;
    }
}
@media screen and (max-width:480px){
    .pg-about #field-area{
        padding-top: 30px;
    }
    .pg-about .sec-block{
        padding: 25px 0;
    }
    .pg-about #field-area .cnt{
        width: 100%;
        padding-left: 7%;
        margin-bottom: 20px;
        margin-top: 30px;
    }
    .pg-about #field-area .sec-head h2 span{
        font-size: 20px;
    }
    .pg-about #field-area .cnt .intro-copy{
        font-size: 15px;
    }
    .pg-about #field-area .cnt .intro-text h3{
        font-size: 20px;
    }
    .pg-about #field-area .cnt .intro-text .txt-block p{
        font-size: 14px;
    }
    .pg-about #cp_faq .cnt > div a{
        padding: 25px 5%;
    }
    .pg-about #cp_faq .sec-text{
        padding: 15px 0;
    }
    .pg-about #cp_faq .sec-text h3{
        font-size: 16px;
        margin-bottom: 10px;
    }
    .pg-about #cp_faq .sec-text h3 span{
        margin-left: 10px;
        padding-left: 10px;
        font-size: 14px;
    }
    .pg-about .sec-block .block-title span{
        font-size: 75px;
    }
    .pg-about .sec-block .block-title{
        font-size: 22px;
    }
    .pg-about .sec-block .cntBox .sec-text{
        font-size: 14px;
        padding: 20px 3% 30px 5%;
        width: 95%;
    }   
    .pg-about .sec-block .block-title{
        padding: 25px 10px 0;
    }
    .pg-about .sec-block .cntBox .sec-photo{
        width: 95%;
    }

    .pg-about .sec-block .cntBox .sec-photo img, .pg-about .sec-block.reverse .cntBox .sec-photo img{
        margin-top: -10px;
    }
}


/*3.看護系技官のフィールド*/
.pg-field #fieldList{
    padding-top: 0;
}
.pg-field #fieldList .cnt{
    margin-bottom: 30px;
}
.pg-field #fieldList .fd-row{
    border-bottom: 1px solid #1690CE;
    font-size: 26px;
    position: relative;
    cursor: pointer;
}
.pg-field #fieldList .fd-row span{
    font-size: 18px;
}
.pg-field #fieldList .fd-row .acc-icon{
    position: absolute;
    right: 20px;
}
.pg-field #fieldList .innerBox{
    display: none;
}
.pg-field #fieldList .innerBox > div{
    padding: 8px 0 0;
    display: flex;
    grid-gap: 5px;
    gap: 5px;
    flex-wrap: wrap;
}
.pg-field #fieldList .innerBox ul{
    width: 100%;
    display: flex;
    flex-flow: column;
    grid-gap: 8px;
    gap: 8px;
    width: calc((100% - 35px) / 7);
}
.pg-field #fieldList .cnt.row-6 .innerBox > div{
    gap: 20px 5px;
}
.pg-field #fieldList .cnt.row-6 .innerBox ul{
    width: calc((100% - 35px) / 6);
}
@media (-ms-high-contrast: none) {
    .pg-field #fieldList .innerBox ul{
        margin-right: 4.9px;
    }
    .pg-field #fieldList .innerBox ul:nth-child(8){
        margin-right: 0;
    }
    .pg-field #fieldList .innerBox ul li{
        margin-bottom: 8px;
    }
}
@media screen and (max-width:1100px) and (-ms-high-contrast: none){
    .pg-field #fieldList .innerBox ul:nth-child(7){
        margin-right: 0;
    }
    .pg-field #fieldList .innerBox ul:nth-child(8){
        margin-right: 4.9px;
    }
}
@media screen and (max-width:899px) and (-ms-high-contrast: none){
    .pg-field #fieldList .innerBox ul:nth-child(4){
        margin-right: 0;
    }
    .pg-field #fieldList .innerBox ul:nth-child(7){
        margin-right: 4.9px;
    }
}

.pg-field #fieldList .cnt:last-child .innerBox ul{
    width: calc((100% - 56px) / 8 * 4);

}
.pg-field #fieldList .innerBox ul li{
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 50px;
    background-color: #E5E5E5; 
    text-align: center;
    font-size: 12px;
    line-height: 1.3;
    border-radius: 50px;
    letter-spacing: 0;
    padding: 3px 0;
}
.pg-field #fieldList .innerBox ul li:first-child{
    border-radius: 0;
}
.pg-field #fieldList .cnt.sub .innerBox ul li:first-child{
    border-radius: 50px;
}
.pg-field #fieldList .innerBox ul li.a-dept{
    background-color: #1690CE;
    color: #fff;
}
.pg-field #fieldList .innerBox ul li a{
    color: #fff;
    height: 100%;
    width: 100%;
    display: flex;
    align-items: center;   
    justify-content: center;
}
.pg-field #fieldList .innerBox ul li.c-dept a{
    color: #111;
}
.pg-field #fieldList .innerBox ul li.fieldBtn{
    box-shadow: 0 3px #00679B;
    transition: .2s;
}
.pg-field #fieldList .innerBox ul li.fieldBtn.c-dept{
    box-shadow: 0 3px #759db2;
    border: 1px solid #d9eaf3;
}

.pg-field #fieldList .innerBox ul li.fieldBtn:hover{
    box-shadow: none;
    -webkit-transform: translateY(2px);
    transform: translateY(2px);
}
.pg-field #fieldList .innerBox ul li.c-dept{
    background-color: #EDF8FF;
}

.pg-field .fieldCntBox .fieldCnt{
    border: 2px solid #1690CE;
    border-radius: 10px;
    background-color: #FAFAFA;
    padding: 15px 0;
    text-align: left;
    position: relative;
}
.pg-field .fieldCntBox .fieldCnt h3{
    font-size: 30px;
    padding: 0 3%;
    margin-bottom: 5px;
}
.pg-field .fieldCntBox .fieldCnt h3 span{
    font-size: .7em;
    margin-left: -5px;
}
.pg-field .fieldCntBox .fieldCnt h4{
    background: #1690CE;
    color: #fff;
    padding: 8px 3%;
    font-size: 22px;
    font-weight: normal;
}

.pg-field .fieldCntBox .fieldCnt .sec-text{
    padding: 20px 3%;
    max-width: 100%;
}
.pg-field .fieldCntBox .fieldCnt .sec-text > div:first-child{
    margin-bottom: 20px;
}
.pg-field .fieldCntBox .fieldCnt h5{
    color: #1690CE;
    border-bottom: 1px solid #1690CE;
    font-size: 16px;
    margin-bottom: 5px;
    padding-bottom: 2px;
    font-weight: 500;
}
.pg-field .fieldCntBox .fieldCnt .sec-text p{
    font-size: 15px;
    letter-spacing: 0.02em;
    text-align: justify;
}
.pg-field .deptBox{
    margin-bottom: 30px;
    display: flex;
    grid-gap: 5px;
    gap: 5px;
    justify-content: end;
}
.pg-field .deptBox li{
    padding: 10px 20px;
    display: inline-block;
    text-align: center;
}
.pg-field .deptBox li.a-dept{
    background-color: #1690CE;
    color: #fff;
}
.pg-field .deptBox li.c-dept{
    background-color: #EDF8FF;
}
.pg-field .syozokubusyo{
    text-align: center;
} 
.pg-field .syozokubusyo p{
    font-size: 25px;
    letter-spacing: 1px;
}
.pg-field .syozokubusyo .linkBtn{
    margin: 20px auto;
}
.pg-field .comment{
    margin-bottom: 60px;
}
.pg-field .comment .commentList{
    display: flex;
    grid-gap: 5%;
    gap: 5%;
    padding: 50px 5%;
    background: #F5F4F2;
    max-width: 1200px;
    margin: 0 auto;
    width: 90%;
    justify-content: center;
}
.pg-field .comment .commentList ul{
    width: 100%;
    display: flex;
    flex-flow: column;
    justify-content: space-between;
}
@media (-ms-high-contrast: none) {
    .pg-field .comment .commentList ul:first-child{
        margin-right: 5%;
    }
    .pg-field .fieldCntBox .fieldCnt h4{
        font-weight: 600;
    }
    .pg-field .comment .commentList li .level1{
        font-weight:600;
    }
}
@media screen and (max-width:899px) and (-ms-high-contrast: none){
    .pg-field .comment .commentList ul:first-child{
        margin-right: 0;
    }
}
.pg-field .comment .commentList li{
    margin-bottom: 30px;
}
.pg-field .comment .commentList li .level1{
    font-size: 25px;
    margin-bottom: 10px;
    line-height: 1.3;
}
.pg-field .comment .commentList li a{
    border-bottom: 1px solid #1690CE;
    width: 100%;
    display: block;
    margin-bottom: 10px;
    position: relative;
    padding-right: 15px;
    color: #1690CE;
}
.pg-field .comment .commentList li dd{
    margin-bottom: 5px;
    padding-left: 10px;
}
.pg-field .comment .commentList li a::after{
    content: '';
    position: absolute;
    background: url("../images/shared/arrow_down.png")center / 100% no-repeat;
    width: 12px;
    height: 7px;
    top: 0;
    bottom: 0;
    margin: auto;
    right: 2px;
    transition: .2s;
    transform: rotate(-90deg);
}
.pg-field .comment .commentList li a:hover::after{
    right: 0;
}
.pg-field .comment .commentList li a:hover{
    opacity: .6;
}
.pg-field .comment .msg-copy{
    line-height: 1.6;
    margin-bottom: 10px;
}
.pg-field .fieldCntBox .fieldCnt .visual-grid{
    display: flex;
    padding: 20px 3%;
    grid-gap: 3%;
    gap: 3%;
}
@media (-ms-high-contrast: none) {
    .pg-field .fieldCntBox .fieldCnt .visual-grid .sec-text{
        margin-right: 3%;
    }
}
@media screen and (max-width:899px) and (-ms-high-contrast: none){
    .pg-field .fieldCntBox .fieldCnt .visual-grid .sec-text{
        margin-right: 0;
        margin-bottom: 20px;
    }
}
.pg-field .fieldCntBox .fieldCnt .visual-grid .sec-photo{
    width: 100%;
    max-width: 200px;
}
.pg-field .fieldCntBox .fieldCnt .visual-grid .sec-photo img{
    height: auto;
}
.pg-field .fieldCntBox .fieldCnt .visual-grid .sec-text{
    padding: 0;
}
@media screen and (max-width:1100px){
    .pg-field #fieldList .innerBox ul{
        width: calc((100% - 30px) / 7);
    }
}
@media screen and (max-width:899px){
    .pg-field #fieldList .innerBox ul{
        width: calc((100% - 20px) / 5);
    }
    .pg-field #fieldList .fd-row{
        font-size: 20px;
    }
    .pg-field #fieldList .innerBox ul li{
        font-size: 12px;
        letter-spacing: -0.01em;
    }
    .pg-field .comment .commentList{
        flex-flow: column;
        padding: 30px 3%;
    }
    .pg-field .comment .commentList li .level1{
        font-size: 20px;
    }
    .pg-field .comment .commentList li dd{
        font-size: 14px;
    }
    .pg-field .syozokubusyo p{
        font-size: 20px;
    }
    .pg-field #fieldList .fd-row .acc-icon{
        width: 15px;
        height: 15px;
        right: 5px;
    }
    .pg-field .fieldCntBox .fieldCnt .visual-grid{
        flex-flow: column;
        grid-gap: 20px;
        gap: 20px;
        align-items: center;
    }
}
@media screen and (max-width:600px){
    .pg-field .deptBox li{
        font-size: 13px;
        padding: 8px 15px;
    }
    .pg-field #fieldList{
        padding-top: 30px;
    }
    .pg-field #fieldList .innerBox > div{
        flex-flow: column;
    }
    .pg-field #fieldList .cnt.row-6 .innerBox > div{
        gap: 5px;
    }
    .pg-field #fieldList .innerBox ul{
        display: grid;
        grid-template: 1fr 1fr 1fr / 0.6fr 1fr;
        width: 100%;
    }
    .pg-field #fieldList .cnt.row-6 .innerBox ul{
        width: 100%;
    }
    .pg-field #fieldList .innerBox ul li:first-child{
        grid-row: 1/6;
        grid-column: 1/2;
    }
    .pg-field #fieldList .innerBox ul li:not(:first-child){
        grid-column: 2/3;
    }
    .pg-field #fieldList .innerBox ul li{
        min-height: 35px;
        font-size: 11px;
    }
    .pg-field .fieldCntBox .fieldCnt{
        max-height: calc(100vh - 30px);
        overflow-y: scroll;
        padding: 10px 0 5px;
    }
    .pg-field .fieldCntBox .fieldCnt .sec-text{
        padding: 10px 3%;
    }
    .pg-field .fieldCntBox .fieldCnt h3{
        font-size: 23px;
    }
    .pg-field .fieldCntBox .fieldCnt h4{
        padding: 5px 3%;
        font-size: 17px;
    }
    .pg-field .fieldCntBox .fieldCnt .sec-text p{
        font-size: 13px;
    }
    .pg-field .fieldCntBox .fieldCnt h5{
        font-size: 15px;
    }
    .pg-field #fieldList .cnt:last-child .innerBox ul{
        width: auto;
    }
    .pg-field #fieldList .fd-row .acc-icon span{
        margin-left: auto;
    }
    .pg-field #fieldList .fd-row span{
        font-size: 15px;
        letter-spacing: 0;
        margin-left: -5px;
    }
    .pg-field .comment .commentList li .level1{
        font-size: 18px;
    }
    .pg-field .comment .commentList li dd{
        font-size: 13px;
        letter-spacing: 0;
    }
    .pg-field .comment .commentList li a::after{
        width: 10px;
        height: 6px;
    }
    .pg-field .comment{
        margin-bottom: 0;
    }
}


/*4.他職種職員から見た看護系技官*/
.alt-block .sec-block{
    margin: 0 auto;
    padding: 50px 0;
    display: flex;
}
.alt-block .sec-block .block-title{
    font-size: 20px;
    letter-spacing: 1px;
    background: #fff;
    width: 100%;
    padding: 20px 5%;
}
.alt-block .sec-block .block-title h3{ 
    font-size: 25px;
}
.alt-block .sec-block .block-title p{
font-size: 16px;
}

.alt-block .sec-block .block-title h3 span{
    font-size: 20px;
}
.alt-block .sec-block .block-title .tag-copy {
    border-bottom: 1px solid #EFEDED;
    padding-bottom: 10px;
    font-size: 30px;
    margin-bottom: 10px;
}
.alt-block .sec-block .cntBox{
    display: flex;
    flex-flow: column;
    grid-gap: 30px;
    gap: 30px;
    width: 80%;
}
@media (-ms-high-contrast: none) {
    .alt-block .sec-block .block-title{
        margin-bottom: 30px;
    }
}
@media screen and (max-width:899px) and (-ms-high-contrast: none){
    .alt-block .sec-block .block-title{
        margin-bottom: 0;
    }
}
.alt-block .sec-block .sec-photo{
    margin-top: 50px;
    max-height: 500px;
    margin-left: -10%;
    z-index: -1;
    width: 70%;
}
.alt-block .sec-block  .sec-text{
    padding: 30px 5% 30px 7%;
    line-height: 2;
    margin-right: 5%;
}
.alt-block .sec-block.reverse{
    flex-flow: row-reverse;
}
.alt-block .sec-block.reverse .sec-photo{
    margin-left: 0;
    margin-right: -10%;
}
@media screen and (max-width:1100px){
    .alt-block .sec-block .sec-text{
        margin-right: 0;
        width: 115%;
    }
    .alt-block .sec-block.reverse .sec-text{
        margin-left: -15%;
    }
    .alt-block .sec-block .block-title .tag-copy{
        font-size: 28px;
    }
}
@media screen and (max-width:899px){
    .alt-block .sec-block {
        max-width: 700px;
    }
    .alt-block .sec-block:first-child{
        padding-top: 0;
    }
    .alt-block .sec-block,.alt-block .sec-block.reverse{
        flex-flow: column-reverse;
    }
    .alt-block .sec-block .cntBox{
        width: 100%;
        grid-gap: 0;
        gap: 0;
        margin-top: -50px;
    }
    .alt-block .sec-block .sec-photo{
        margin-left: 0;
        height: 350px;
        margin-top: 0;
        width: 100%;
    }
    .alt-block .sec-block .sec-photo img{
        object-position: 50% 25%;
        font-family: 'object-fit: cover; object-position: 50% 25%;'; /* IE fallback */
    }
    .alt-block .sec-block.reverse .sec-photo{
        margin-right: 0;
    }
    .alt-block .sec-block .sec-text{
        width: 100%;
        margin-top: -20px;
    }
    .alt-block .sec-block.reverse .sec-text{
        margin-left: 0;
    }
    .alt-block .sec-block .block-title{
        z-index: 11;
        width: 90%;   
    }
    .alt-block .sec-block.reverse .block-title{
        margin-left: auto;
    }
    .alt-block .sec-block .block-title .tag-copy{
        font-size: 24px;
    }
    .alt-block .deco-tr{
        top: -180px;
    }
    .alt-block .deco-tl{
        top: -100px;
        left: -110px;
    }
}
@media screen and (max-width:480px){
    .alt-block .sec-block .cntBox{
        margin-top: -100px;
    }
    .alt-block .sec-block .block-title{
        padding: 15px 5%;
    }
    .alt-block .sec-block .block-title p{
        font-size: 13px;
    }
    .alt-block .sec-block .block-title h3{
        font-size: 20px;
    }
    .alt-block .sec-block .block-title h3 span{
        font-size: 18px;
    }
    .alt-block .sec-block .sec-text{
        font-size: 14px;
        line-height: 1.8;
    }
    .alt-block .sec-block .block-title{
        margin-left: -4%;
    }
    .alt-block .sec-block.reverse .block-title{
        margin-right: -4%;
        margin-left: auto;
        width: 98%;
    }
    .alt-block .sec-block .block-title .tag-copy{
        font-size: 20px;
    }

}

/*5.リーダーメッセージ*/
.leader_message .sec-block{
    margin: 0 auto;
    display: flex;
    margin-bottom: 100px;
    align-items: center;
    padding-top: 20px;
    flex-flow: row-reverse;
}
.leader_message .page-sec{
    padding: 0;
}
.leader_message .sec-block .block-title{
    font-size: 20px;
    letter-spacing: 2px;
    background: #fff;
    width: auto;
    padding: 30px 5% 15px;
    position: relative;
    width: 110%;
}
.leader_message .sec-block .sec-text{
    z-index: 20;
}
.leader_message .sec-block .block-title .title-en{
    background-color: #1690CE;
    display: inline-block;
    text-align: right;
    padding: 5px 25px 5px 30px;
    letter-spacing: 0.05em;
    position: absolute;
    top: -20px;
    left: -30px;
}
.leader_message .sec-block .cntBox{
    display: flex;
    flex-flow: column;
    grid-gap: 20px;
    gap: 20px;
    width: 74%;
    /*align-items: flex-end;*/
}
@media (-ms-high-contrast: none) {
    .leader_message .sec-block .block-title{
        margin-bottom: 20px;
    }
}
@media screen and (max-width:899px) and (-ms-high-contrast: none){
    .leader_message .sec-block .block-title{
        margin-bottom: 0;
    }
}
.leader_message .sec-block .sec-text h3{ 
    font-size: 25px;
}
.leader_message .sec-block .sec-text p{
    font-size: 16px;
}
.leader_message .sec-block .sec-text h3 span{
    font-size: 20px;
}
.leader_message .sec-block .block-title .tag-copy {
    font-size: 32px;
    margin-bottom: 10px;
}
.leader_message .sec-block .block-title .tag-copy span{
    border-bottom: 1px solid #EFEDED;
    padding-bottom: 10px;
    line-height: 2.3;
}
.leader_message .sec-block .sec-photo{
    max-height: 550px;
    margin-right: -15%;
    z-index: -1;
    overflow: hidden;
    width: 100%;
}
.leader_message .sec-block .sec-text{
    padding: 20px 2% 25px 5%;
    line-height: 2;
    margin-left: 10%;
    max-width: 360px;
}
.leader_message .massageBox h4{
    border-bottom: 1px solid #1690CE;
    border-left: 7px solid #1690CE;
    font-size: 27px;
    padding-bottom: 3px;
    margin-bottom: 20px;
    padding-left: 20px;
}
.leader_message .massageBox p{
    letter-spacing: 0.02em;
}
.leader_message .massageBox .cnt{
    margin: 80px 0;
}
.leader_message .massageBox .cnt .txt-block{
    display: flex;
    grid-gap: 4%;
    gap: 4%;
    line-height: 2;
}
@media (-ms-high-contrast: none) {
    .leader_message .massageBox .cnt .txt-block p{
        margin-right: 4%;
    }
    .leader_message .massageBox .cnt .txt-block.reverse p{
        margin-right: 0;
    }
    .leader_message .massageBox .cnt .txt-block.reverse img{
        margin-right: 4%;
    }
    .leader_message .sec-block .sec-text h3{ 
        letter-spacing: 0.05em;
    }
}
@media screen and (max-width:899px) and (-ms-high-contrast: none){
    .leader_message .massageBox .cnt .txt-block *{
        width: 100%;
    }
    .leader_message .massageBox .cnt .txt-block p{
        margin-right: 0;
        margin-bottom: 30px;
    }
    .leader_message .massageBox .cnt .txt-block.reverse img{
        margin-bottom: 30px;
    }
}
.leader_message .massageBox .cnt .txt-block.reverse{
    flex-flow: row-reverse;
} 
.leader_message .massageBox .cnt .txt-block img{
    width: 47.5%;
    min-width: 47.5%;
}
.leader_message .deco-bl{
    left: 30px;
    transform: scale(0.8);
}
@media screen and (max-width:1200px){
    .leader_message .sec-block .cntBox{
        width: 95%;
    }
    .leader_message .sec-block .sec-photo{
        margin-right: -10%;
    }
    .leader_message .sec-block .block-title .tag-copy{
        font-size: 27px;
    }
    .leader_message .sec-block .block-title .title-en{
        font-size: 18px;
    }
}   
@media screen and (max-width:1000px){
    .leader_message .sec-block .sec-text{
        padding: 15px 30px 20px;
    }
    .leader_message .sec-block .block-title .tag-copy{
        font-size: 24px;
    }
    .leader_message .sec-block .block-title .title-en{
        font-size: 16px;
        padding-left: 50px;
    }
    .leader_message .sec-block .sec-text p{
        font-size: 15px;
    }
    .leader_message .sec-block .sec-text h3{
        font-size: 22px;
    }
    .leader_message .sec-block .sec-text h3 span{
        font-size: 17px;
    }
    .leader_message .sec-block .sec-photo{
        margin-right: -17%;
    }
}
@media screen and (max-width:899px){
    .leader_message .sec-block{
        flex-flow: column-reverse;
        max-width: 700px;
    }
    .leader_message .sec-block .block-title .tag-copy{
        font-size: 22px;
    }
    .leader_message .sec-block .sec-text h3{
        font-size: 20px;
    }
    .leader_message .sec-block .sec-text h3 span{
        margin-left: -10px;
        font-size: 16px;
    }
    .leader_message .sec-block .sec-photo{
        margin-left: auto;
        margin-right: 0;
        height: 400px;
        width: 100%;
    }
    .leader_message .sec-block .sec-photo img{
        object-position: 45% 10%;
        font-family: 'object-fit: cover; object-position: 50% 10%;'; /* IE fallback */
        margin-top: -10px;
    }
    .leader_message .sec-block .cntBox{
        align-items: flex-start;
        margin-top: -130px;
        width: 95%;
        grid-gap: 0;
        gap: 0;
        margin-left: -10%;
    }
    .leader_message .sec-block .block-title{
        padding-left: 5%;
        padding: 15px 5% 10px;
        z-index: 12;
        width: auto;
    }
    .leader_message .sec-block .sec-text{
        margin-left: auto;
        margin-top: -10px;
        margin-right: -60px;
        width: 380px;
    }
    .leader_message .sec-block .block-title .title-en{
        left: -10px;
        padding-left: 40px;
    }
    .leader_message .sec-block{
        margin-bottom: 50px;
    }
    .leader_message .massageBox .cnt{
        margin: 60px 0;
    }
    .leader_message .massage{
        font-size: 22px;
    }
    .leader_message .massageBox .cnt .txt-block,.leader_message .massageBox .cnt .txt-block.reverse{
        flex-flow: column;
        grid-gap: 30px;
        gap: 30px;
        align-items: center;
    }
    .leader_message .massageBox .cnt .txt-block img{
        width: 100%;
        max-width: 500px;
    }
    .leader_message .massageBox h4{
        font-size: 20px;
        padding-left: 15px;
    }
    .leader_message .deco-bl{
        left: -80px;
    }
}
@media screen and (max-width:480px){
    .leader_message .massageBox .cnt{
        overflow: hidden;
    }
    /*.leader_message .massageBox .cnt .txt-block img{
        width: 130%;
    }*/
    .leader_message .massageBox .cnt .txt-block{
        font-size: 14px;
    }
    .leader_message .sec-block .sec-text h3{
        font-size: 18px;
    }
    .leader_message .sec-block .sec-text h3 span{
        font-size: 15px;
    }
    .leader_message .sec-block .sec-text p{
        font-size: 14px;
    }
    .leader_message .sec-block .sec-text{
        margin-right: -23px;
        width: 275px;
    }
    .leader_message .sec-block .cntBox{
        width: 100%;
        margin-top: -165px;
    }
    .leader_message .sec-block .block-title .tag-copy{
        font-size: 19px;
        letter-spacing: 0.05em;
    }
    .leader_message .massageBox h4{
        font-size: 18px;
        padding-left: 10px;
        border-left: 5px solid #1690CE;
    }
}


/*7.先輩技官の声*/

.pg-voice #page-body .page-sec#cross-area{
    margin-top: 50px;
} 
.pg-voice #interview-area .cntBox{
    display: flex;
    justify-content: center;
    flex-flow: wrap;
    grid-gap: 30px 3%;
    gap: 30px 3%;
}
@media (-ms-high-contrast: none) {
    .pg-voice #interview-area .cnt{
        margin: 0 1.5% 30px;
    }
}
.pg-voice #interview-area .cnt{
    display: flex;
    flex-flow: column;
    width: 30%;
}
.pg-voice #interview-area .spacer{
    width: 100%;
}
.pg-voice #interview-area .cnt .sec-photo{
    position: relative;
    height: 260px;
    border-top: 5px solid #1690CE;
}
.pg-voice #interview-area .cnt .sec-photo > span{
    position: absolute;
    background: #1690CE;
    padding: 1px 10px;
    color: #fff;
    font-size: 14px;
    bottom: -5px;
    left: -5px;
}
.pg-voice #interview-area .cnt .profile{
    padding-top: 10px;
    line-height: 1.5;
}
.pg-voice #interview-area .cnt .profile span{
    font-size: 13px;
    margin-bottom:5px;
    display: block;
    letter-spacing: 0;
}
.pg-voice #interview-area .cnt .profile p{
    display: inline;
    margin-right: 10px;
    font-size: 22px;
    letter-spacing: 2px;
}
.pg-voice #interview-area .cnt .profile p.en {
    font-size: 16px;
    letter-spacing: 0;
    line-height: 1;
}

.pg-voice #cross-area .cnt {
    padding: 0 50px;
    box-sizing: border-box;
    width: 100%;
    max-width: 1000px;
    margin: 0 auto 50px;
    position: relative;
}
.pg-voice #page-body .sec-head {
    font-size: 28px;
    letter-spacing: 2px;
}
.pg-voice #page-body .sec-head h2 span {
    font-size: 150px;
    line-height: 0;
    letter-spacing: 0;
    margin-right: 10px;
    transform: translateY(3px);
    display: inline-block;
}
.pg-voice #cross-area .sec-photo {
    border-top: 5px solid #1690CE;
    position: relative;
    transition: .2s;
}
.pg-voice #cross-area .sec-photo img{
    max-height: 370px;
}
.pg-voice #cross-area .sec-text {
    margin-top: 20px;
    padding: 15px 0;
    border-top: 1px solid #1690CE;
    border-bottom: 1px solid #1690CE;
}
.pg-voice #interview-area .deco-tl{
    top: -30px;
}
.pg-voice #interview-area .deco-tr{
    top: 50px;
}
.pg-voice #cross-area .deco-bl{
    bottom: -70px;
}
@media screen and (max-width:1100px){
    .pg-voice #interview-area .cntBox{
        max-width: 800px;
        margin: 0 auto;
    }
    .pg-voice #interview-area .cnt{
        width: 48%;
    }
}
@media screen and (max-width:899px){
    .pg-voice #page-body{
        margin-top: 0;
    }
    .pg-voice #page-body .sec-head h2 span{
        font-size: 130px;
    }
    .pg-voice #cross-area .cnt{
        padding: 0;
    }
}
@media screen and (max-width:700px){
    .pg-voice #interview-area .cnt .profile span{
        font-size: 12px;
    }
    .pg-voice #interview-area .cnt .sec-photo > span{
        font-size: 12px;
    }
    .pg-voice #interview-area .cntBox{
        grid-gap: 20px 3%;
        gap: 20px 3%;
    }
    .pg-voice #interview-area .cnt .sec-photo{
        height: 200px;
        border-top: 3px solid #1690CE;
    }
}
@media screen and (max-width:480px){
    .pg-voice #interview-area .cnt {
        width: 90%;
    }
    .pg-voice #interview-area .cnt .sec-photo {
        height: 260px;
    }
    .pg-voice #page-body .sec-head h2 span{
        font-size: 100px;
    }
    .pg-voice #cross-area .sec-photo{
        border-top: 3px solid #1690CE;
    }
    .pg-voice #page-body .sec-head{
        margin-bottom: 20px;
    }
    .pg-voice #page-body .page-sec#cross-area{
        margin-top: 0;
    }
}
@media screen and (max-width:400px){
    .pg-voice #interview-area .cnt .sec-photo {
        height: 200px;
    }
    .pg-voice #page-body .sec-head h2{
        font-size: 25px;
    }
    .pg-voice #page-body .sec-head h2 span{
        font-size: 90px;
        margin-right: 8px;
    }
    .pg-voice #cross-area .sec-text{
        font-size: 14px;
        padding: 10px 0;
        margin-top: 15px;
    }
}

/*8.先輩技官インタビュー*/
.pg-interview .sec-block{
    margin: 0 auto;
    display: flex;
    margin-bottom: 100px;
    align-items: center;
    padding-top: 0;
}
.pg-interview .sec-block .block-title{
    font-size: 20px;
    letter-spacing: 2px;
    background: #fff;
    width: 100%;
    padding: 30px 5% 20px;
    position: relative;
}
@media (-ms-high-contrast: none) {
    .pg-interview .sec-block .block-title{
        margin-bottom: 20px;
    }   
}
.pg-interview .sec-block .block-title .title-en{
    background-color: #1690CE;
    display: inline-block;
    text-align: right;
    padding: 5px 25px 5px 30px;
    letter-spacing: 0.05em;
    position: absolute;
    top: -20px;
    left: -30px;
}
.pg-interview .sec-block .block-title .title-en span{
    font-size: 45px;
    margin-left: 5px;
    line-height: 0.3;
}
.pg-interview .sec-block .cntBox{
    display: flex;
    flex-flow: column;
    grid-gap: 20px;
    gap: 20px;
    width: 80%;
    align-items: flex-end;
    margin-top: 30px;
}
.pg-interview .sec-block .sec-text{
    padding: 20px 50px 25px;
    line-height: 2;
    margin-right: 5%;
    width: 90%;
}
.pg-interview .sec-block .sec-text h3{ 
    font-size: 25px;
}
.pg-interview .sec-block .sec-text p{
    font-size: 16px;
}
.pg-interview .sec-block .sec-text h3 span{
    font-size: 20px;
}
.pg-interview .sec-block .sec-text .career{
    border-top: 1px solid #BABABA;
    padding: 15px 0;
    margin-top: 5px;
    display: flex;
    flex-flow: wrap;
    font-size: 13px;
    line-height: 1.7;
    color: #333;
}
.pg-interview .sec-block .sec-text .career dt{
    width: 80px;
    font-weight: 400;
}
.pg-interview .sec-block .sec-text .career dd{
    width: calc(100% - 80px);
}
.pg-interview .sec-block .block-title .tag-copy {
    font-size: 32px;
    margin-bottom: 10px;
    color: #1690CE;
}
.pg-interview .sec-block .block-title .tag-copy span{
    border-bottom: 1px solid #1690CE;
    padding-bottom: 10px;
    line-height: 2.3;
}
.pg-interview .sec-block .sec-photo{
    margin-left: -5%;
    z-index: -1;
    overflow: hidden;
    width: 60%;
}
.pg-interview .massageBox{
    padding: 0;
}
.pg-interview .massageBox h4{
    border-bottom: 1px solid #1690CE;
    border-left: 7px solid #1690CE;
    font-size: 27px;
    padding-bottom: 3px;
    margin-bottom: 20px;
    padding-left: 20px;
}
.pg-interview .massageBox .cnt{
    margin: 80px 0;
}
.pg-interview .massageBox .cnt .txt-block{
    display: flex;
    grid-gap: 4%;
    gap: 4%;
    line-height: 2;
}

@media (-ms-high-contrast: none) {
    .pg-interview .massageBox .cnt .txt-block p{
        margin-right: 4%;
    }
    .pg-interview .massageBox .cnt .txt-block.reverse p{
        margin-right: 0;
    }
    .pg-interview .massageBox .cnt .txt-block.reverse img{
        margin-right: 4%;
    }
}
@media screen and (max-width:899px) and (-ms-high-contrast: none){
    .pg-interview .massageBox .cnt .txt-block *{
        width: 100%;
    }
    .pg-interview .massageBox .cnt .txt-block p{
        margin-right: 0;
        margin-bottom: 30px;
    }
    .pg-interview .massageBox .cnt .txt-block.reverse img{
        margin-bottom: 30px;
    }
}

.pg-interview .massageBox .cnt .txt-block.reverse{
    flex-flow: row-reverse;
} 
.pg-interview .massageBox .cnt .txt-block img{
    width: 47.5%;
    min-width: 47.5%;
    max-width: 540px;
}
.pg-interview .massageBox .cnt .txt-block.verticalImg img{
    min-width: 40%;
    width: 40%;
    max-width: 450px;
}
.pg-interview .workstyle{
    position: relative;
    border: 2px solid #1690CE;
    padding: 50px 5%;
    display: flex;
    justify-content: center;
}
.pg-interview .workstyle h3{
    background-color: #fff;
    font-size: 35px;
    padding: 0 30px;
    position: absolute;
    top: -30px;
    letter-spacing: 1px;
}
.pg-interview .workstyle .flow .flowBelt{
    width: 40px;
    height: 95%;
    background: #DBDBDB;
    margin-right: 35px;
    display: inline-block;
    vertical-align: top;
    border-radius: 50px;
}
.pg-interview .workstyle .flow ul{
    display: inline-block;
    width: calc(100% - 120px);
}
.pg-interview .workstyle .flow li{
    position: relative;
    border-bottom: 1px dashed #B2B2B2;
    padding-bottom: 20px;
    margin-bottom: 20px;
}
.pg-interview .workstyle .flow li::after{
    content: '';
    position: absolute;
    width: 30px;
    height: 100%;
    background: url("../images/interviews/arrow_down.png")center / 100% no-repeat;
    top: 50px;
    left: -75px;
}
.pg-interview .workstyle .flow li:last-child{
    border: none;
    padding-bottom: 0;
    margin-bottom: 0;
}
.pg-interview .workstyle .flow li:last-child::after{
    display: none;
}
.pg-interview .workstyle .flow li div{
    width: 75px;
    height: 75px;
    text-align: center;
    border-radius: 50px;
    display: flex;
    flex-flow: column;
    justify-content: center;
    padding: 8px;
    position: absolute;
    left: -97px;
    z-index: 10;
}
.pg-interview .workstyle .flow li div span{
    font-size: 14px;
    margin-bottom: 3px;
}
.pg-interview .workstyle .flow li div p{
    border-top: 1px solid #fff;
    font-size: 17px;
}
.pg-interview .workstyle .flow dt{
    font-size: 19px;
    margin-bottom: 10px;
}
.pg-interview .workstyle .flow dd{
    font-size: 14px;
}
.pg-interview .sec-block.reverse{
    flex-flow: row-reverse;
}
.pg-interview .sec-block.reverse .cntBox{
    padding-left: 0;
    padding-right: 5%;
}
.pg-interview .sec-block.reverse .sec-photo{
    margin-left: 0;
    margin-right: -5%;
}
.pg-interview .interview05 .sec-block .block-title{
    width: 90%;
/*    margin-right: -7%;*/
    padding-right: 0;
}
.pg-interview .interview05 .sec-block .block-title .tag-copy{
    letter-spacing: 0.03em;
}
.pg-interview .sec-block.reverse .block-title{
    padding-right: 0;
    width: 109%;
}
#interview01 .deco-br{
    bottom: -110px;
    right: -120px;
}
#interview02 .deco-tl{
    left: 20px;
}
#interview03 .deco-br{
    bottom: -130px;
}
#interview04 .deco-tl{
    top: -100px;
    left: 20px;
}
#interview05 .deco-br{
    bottom: -140px;
    transform: rotate(160deg) scale(0.8);
}
@media screen and (max-width:1200px){
    .pg-interview .page-sec.sec-block{
        width: 95%;
    }
    .pg-interview .sec-block .block-title{
        padding-left: 0;
        padding-right: 3%;
    }
    .pg-interview .sec-block .block-title .title-en {
        font-size: 18px;
    }
    .pg-interview .sec-block .block-title .title-en span{
        font-size: 42px;
    }
    .pg-interview .sec-block .block-title .tag-copy{
        font-size: 27px;
    }
    .pg-interview .sec-block.reverse .block-title{
        padding-left: 5%;
    }

}
@media screen and (max-width:1000px){
    .pg-interview .sec-block .block-title .tag-copy{
        font-size: 22px;
    }
    .pg-interview .sec-block .block-title .title-en{
        font-size: 16px;
    }
    .pg-interview .sec-block .sec-text p{
        font-size: 15px;
        line-height: 1.6;
    }
    .pg-interview .sec-block .sec-text h3{
        font-size: 22px;
    }
    .pg-interview .sec-block .sec-text h3 span{
        font-size: 17px;
    }
    .pg-interview .sec-block.reverse .block-title{
        padding-left: 3%;
        padding-right: 3%;
        width: auto;
    }

}
@media screen and (max-width:899px){
    .pg-interview .page-sec.sec-block{
        flex-flow: column-reverse;
        width: 100%;
    }
    .pg-interview .sec-block .sec-photo{
        margin: 0 auto;
        height: 580px;
        width: 100%;
        max-width: 430px;
    }
    .pg-interview .sec-block .cntBox{
        margin-top: -240px;
        align-items: start;
        grid-gap: 0;
        gap: 0;
        width: 90%;
    }
    .pg-interview .sec-block .block-title{
        width: auto;
        padding: 15px 3% 10px;
        z-index: 12;
    }

    .pg-interview .sec-block .sec-text {
        margin-left: auto;
        margin-top: -10px;
        margin-right: 0;
        width: 90%;
        max-width: 480px;
    }
    .pg-interview .massageBox h4{
        font-size: 20px;
    }
    .pg-interview .massageBox .cnt .txt-block{
        font-size: 14px;
    }
    .pg-interview .massageBox .cnt .txt-block{
        flex-flow: column;
        grid-gap: 30px;
        gap: 30px;
        align-items: center;
    }
    .pg-interview .massageBox .cnt .txt-block.reverse{
        flex-flow: column-reverse;
    }
    .pg-interview .massageBox .cnt .txt-block img{
        width: 100%;
        max-width: 500px;
        max-height: 350px;
    }
    .pg-interview .massageBox .cnt .txt-block.verticalImg img{
        width: 60%;
        max-height: 450px;
    }
    .pg-interview .massageBox .cnt{
        margin: 60px 0;
    }
    .pg-interview .workstyle h3{
        font-size: 26px;
        top: -25px;
        padding: 0 15px;
    }
    .pg-interview .workstyle .flow dt{
        font-size: 17px;
    }
    .pg-interview .workstyle .flow li div span{
        font-size: 13px;
    }
    .pg-interview .workstyle .flow li div p{
        font-size: 15px;
    }
    .pg-interview .workstyle .flow li div{
        width: 60px;
        height: 60px;
        left: -82px;
    }
    .pg-interview .workstyle .flow .flowBelt{
        width: 25px;
    }
    .pg-interview .workstyle .flow li::after{
        left: -61px;
        width: 20px;
    }
    .pg-interview .workstyle .flow ul{
        width: calc(100% - 65px);
    }
    .pg-interview .sec-block.reverse .cntBox{
        padding: 0;
    }
    .pg-interview .sec-block.reverse .sec-photo{
        margin: 0 auto;
    }
    .pg-interview .interview05 .sec-block .block-title{
        margin-right: -5%;
        width: auto;
        padding-left: 0;
    }

}
@media screen and (max-width:480px){
    .pg-interview .page-sec.sec-block{
        margin-bottom: 50px;
    }
    .pg-interview .sec-block .sec-photo{
        max-width: 100%;
    }
    .pg-interview .sec-block .block-title .title-en{
        left: -10px;
    }
    .pg-interview .sec-block .cntBox{
        width: 100%;
    }
    .pg-interview .sec-block .block-title .title-en{
        font-size: 14px;
    }
    .pg-interview .sec-block .block-title .title-en span{
        font-size: 38px;
    }
    .pg-interview .sec-block .sec-text h3 span{
        font-size: 16px;
        letter-spacing: 0.01em;
    }
    .pg-interview .sec-block .block-title .tag-copy{
        font-size: 20px;
        letter-spacing: 1px;
    }
    .pg-interview .sec-block .sec-text{
        padding: 20px 10px 20px 30px;
    }
    .pg-interview .massageBox h4{
        font-size: 18px;
        padding-left: 10px;
        border-left: 5px solid #1690CE;
    }
    .pg-interview .massageBox .cnt .txt-block img{
        max-height: 280px;
    }
    .pg-interview .workstyle{padding-left: 7%;}
   
    
    .pg-interview .workstyle .flow .flowBelt{
        height: 88%;
        margin-right: 21px;
        width: 15px;
    }
    #interview02.pg-interview .workstyle .flow .flowBelt{
        height: 95%;
    }
    #interview04.pg-interview .workstyle .flow .flowBelt{
        height: 85%;
    }
    .pg-interview .workstyle .flow li div{
        left: -64px;
    }
    .pg-interview .workstyle .flow ul{
        width: calc(100% - 46px);
    }
    .pg-interview .workstyle .flow dd{
        font-size: 13px;
    }
    .pg-interview .massageBox .cnt .txt-block.verticalImg img{
        width: 70%;
        height: 340px;
    }
    .pg-interview .interview04 .sec-block .block-title,.pg-interview .interview05 .sec-block .block-title,.pg-interview .sec-block.reverse .block-title{
        padding-left: 5%;
        padding-right: 5%;
    }
    .pg-interview .workstyle .flow li::after{
        background-size: 100% 15px;
        background-repeat: repeat-y;
        background-position: top center;
        top: 62px;
        width: 12px;
        left: -40px;
    }
    .pg-interview .deco-tl{
        top: 50px;
    }
    #interview02 .deco-br{
        bottom: -130px;
    }
    #interview02 .deco-tl{
        left: -120px;
    }
    #interview03 .deco-br{
        right: -170px;
    }
    #interview04 .deco-tl{
        top: 40px;
        left: -110px;
    }
    #interview04 .deco-br{    
        bottom: -180px;
        right: -70px;  
        transform: rotate(45deg);
    }
}



/*9.若手先輩クロストーク*/

.pg-cross #page-body #copy{
    text-align: center;
    padding-top: 0;
}
.pg-cross #page-body #copy span{
    color: #1690CE;
    font-size: 30px;
    margin-bottom: 15px;
    margin-left: -5px;
    letter-spacing: 0.1em;
    text-decoration: underline 1px;
    padding-bottom: 5px;
    text-underline-offset: 10px;
    line-height: 2.5;
}
.pg-cross #page-body #copy .sec-photo{
    position: relative;
    margin-top: 50px;
}
.pg-cross #page-body #copy .sec-photo::before{
    content:'';
    position: absolute;
    background: #F5F4F2;
    width: 100%;
    height: 85%;
    top: 0;
    bottom: 0;
    left: 0;
    z-index: -1;
    margin:auto;
}
.pg-cross #page-body #copy .sec-photo > div{
    width: 80%;
    margin-left: -10%;
    position: relative;
}
.pg-cross #target{
    padding-top: 0;
}
.pg-cross #target .tag-copy{
    text-align: center;
}
.pg-cross #target .tag-copy span{
    font-size: 35px;
    padding: 0 15px;
    background: #1690CE;
    color: #fff;
    display: inline;
    display: inline-block;
    letter-spacing: 0;
}
.pg-cross .cntBox{
    display: flex;
    justify-content: center;
    margin: 80px 0;
    gap: 30px;
    align-items: center;
}
.pg-cross .cntBox .member{
    width: 20%;
    max-width: 130px;
}
.pg-cross .cntBox .cnt{
    display: flex;
    flex: 1;
    flex-flow: column;
    gap: 40px;
}
.pg-cross .cntBox .profile{
    display: flex;
/*    flex-flow: column;*/
    text-align: center;
    width: 100%;
    position: relative;
    justify-content: center;
    align-items: center;
}
.pg-cross .cntBox .cnt01 .profile{
    border: 1px solid #E3B513;
    border-bottom: 5px solid #E3B513;
}
.pg-cross .cntBox .cnt02 .profile{
    border: 1px solid #A2CB35;
    border-bottom: 5px solid #A2CB35;
}
.pg-cross .cntBox .profile .txt-block{
    width: 45%;
}
@media (-ms-high-contrast: none) {
    .pg-cross .cntBox .profile:first-child{
        margin-right: 10px;
    }
}

.pg-cross .cntBox .profile h3{
    font-size: 22px;
    margin-bottom: 12px;
    letter-spacing: 1px;
}
.pg-cross .cntBox .profile h3 span{
    display: block;
    font-size: 13px;
    letter-spacing: 0.05em;
    line-height: 1;
}
.pg-cross .cntBox .profile p{
    font-size: 12px;
    color: #555;
}
.pg-cross .cntBox .profile img{
    width: 180px;
    height: 230px;
    margin-top: -50px;
}
.pg-cross .talkBox{
    padding-top: 0;
}
.pg-cross .talkBox h4 {
    border-bottom: 1px solid #1690CE;
    border-left: 7px solid #1690CE;
    font-size: 27px;
    padding-bottom: 3px;
    margin-bottom: 40px;
    padding-left: 20px;
}
.pg-cross .talkBox .cnt{
    margin: 80px auto;
}
.pg-cross .talkBox .talkCnt{
    display: flex;
    grid-gap: 20px;
    gap: 20px;
    margin: 30px auto;
}
.pg-cross .talkBox .talkCnt p{
    font-size: 14px;
}
.pg-cross .talkBox .talkCnt img{
    height: 80px;
}
.pg-cross .deco-tr{
    transform: scale(0.8) rotate(160deg);
    top: -20px;
}
.pg-cross .deco-bl{
    bottom: -100px;
    transform: scale(1.1);
}
@media (-ms-high-contrast: none) {
    .pg-cross .talkBox .talkCnt img{
        margin-right: 20px;
    }   
}

@media screen and (max-width:899px){
    .pg-cross #page-body .tag-copy span{
        font-size: 28px;
    }
}
@media screen and (max-width:899px){
    .pg-cross #target .tag-copy span{
        font-size: 30px;
    }
    .pg-cross #page-body #copy{
        padding-top: 30px;
    }
    .pg-cross #page-body #copy span{
        font-size: 26px;
    }
    .pg-cross #page-body #copy .sec-photo > div{
        width: 100%;
    }
    .pg-cross .cntBox{
        flex-flow: column;
    }
    .pg-cross .cntBox .cnt{
/*        padding: 40px 5%;*/
        max-width: 600px;
    }

    /*.pg-cross .cntBox .cnt.cnt01{
        margin-left: -4%;
        margin-right: auto;
    }
    .pg-cross .cntBox .cnt.cnt02{
        margin-left: auto;
        margin-right: -2%;
        margin-top: -70px;
    }*/
    .pg-cross .cntBox .profile {
        min-width: 380px;
    }
    .pg-cross .cntBox .profile h3{
        font-size: 20px;
    }
    .pg-cross .cntBox .profile h3 span{
        font-size: 13px;
    }
    .pg-cross .cntBox .profile img{
        width: 200px;
        height: 210px;
        margin-right: -5%;
    }
    .pg-cross .talkBox h4{
        font-size: 20px;
        padding-left: 15px;
    }
    .pg-cross .deco-tr{
        right: -60px;
    }
    .pg-cross .deco-tr img{
        width: 200px;
    }
    .pg-cross .cntBox .profile .txt-block{
        width: 55%;
    }
}
@media screen and (max-width:700px){
    .pg-cross #page-body #copy{
        width: 100%;
        padding-top: 0;
    }
    .pg-cross #page-body #copy span{
        font-size: 23px;
        letter-spacing: 0;
    }
}
@media screen and (max-width:480px){
    .pg-cross .cntBox{
        gap: 15px;
        margin: 40px auto;
    }
    .pg-cross .cntBox .cnt{
        grid-gap: 3%;
        gap: 20px;
        width: auto;
    }
    .pg-cross #page-body #copy span{
        font-size: 18px;
        letter-spacing: 1px;
        line-height: 2.2;
    }
    .pg-cross #target .tag-copy span{
        font-size: 23px;
    }
    .pg-cross #page-body #copy .sec-photo > div{
        width: 130%;
        margin-left: -25%;
    }
    .pg-cross .cntBox .profile{
        min-width: 340px;
    }
    .pg-cross .cntBox .profile img{
        height: 160px;
        width: 150px;
        margin-top: -25px;
    }
    .pg-cross .cntBox .profile h3{
        font-size: 16px;
    }
    .pg-cross .cntBox .profile h3 span,.pg-cross .cntBox .profile p{
        font-size: 11px;
    }
    .pg-cross .cntBox .member{
        width: 25%;
    }
    .pg-cross .talkBox .cnt{
        margin: 50px auto;
    }
    .pg-cross .talkBox .talkCnt img{
        /*width: 60px;*/
        height: 60px;
    }
    .pg-cross .talkBox .talkCnt{
        font-size: 15px;
    }
    .pg-cross .talkBox .talkCnt p{
        font-size: 14px;
    }
    .pg-cross .talkBox h4{
        font-size: 18px;
        padding-left: 10px;
        border-left: 5px solid #1690CE;
    }
    .pg-cross .talkBox .sec-photo{
        height: 120px;
        margin-bottom: 60px;
    }
    .pg-cross .deco-tr{
        top: -100px;
        right: -60px;
    }
    .pg-cross .deco-tr img{
        width: 250px;
    }
}

/*==========================10.キャリアパス・働く環境*/
#career-path .pg-career{
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    grid-gap: 5%;
    gap: 5%;
}
#career-path .pg-career img{
    width: 60%;
    max-width: 100%;
    min-width: 250px;
    max-height: 570px;
}
@media (-ms-high-contrast: none) {
    #career-path .pg-career img{
        margin-right: 5%;
    }
}
@media screen and (max-width:899px) and (-ms-high-contrast: none){
    #career-path .pg-career img{
        margin-right: 0;
        margin-top: 30px;
    }
}


#career-path .pg-career .careerText{
    width: 100%;
}

/* あしらい */
.deco-bl,.deco-tl,.deco-br,.deco-tr{
    position: absolute!important;
    width: auto!important;
    z-index: -1;
}
#career-path .deco-tr{
    top: -20px;
    right: -150px;
}
#career-path .deco-tr img{
    width: 70%;
}
#career-path .deco-bl{
    bottom: -30px;
    left: -80px;
}
#career-path .deco-bl{
    width: 70%;
}
/* グラフ */
#page-body .graph{
    margin: 80px auto 0;
    padding: 20px 0;
    background: #fdf8e3; 
    background: -moz-linear-gradient(-45deg,  #fdf8e3 0%, #fceeeb 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(-45deg,  #fdf8e3 0%,#fceeeb 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(135deg,  #fdf8e3 0%,#fceeeb 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}
#page-body .graph img{
    display: block;
    margin: 0 auto;
    width: 90%;
    max-width: 800px;
}
#page-body .graph p{
    font-size: 13px;
    color: #5C5C5C;
    text-align: center;
}

@media screen and (max-width:1000px){
    #page-body .graph img{
        max-width: 600px;
    }
}
@media screen and (max-width:899px){
    #career-path .pg-career{
        flex-flow: column-reverse;
        align-items: center;
        grid-gap: 50px;
        gap: 50px;
    }
    #career-path .pg-career img{
        width: 100%;
        max-width: 400px;
        height: auto;
    }
}
@media screen and (max-width:480px){
    #career-path .pg-career .careerText p{
        font-size: 14px;
        line-height: 1.8;
    }
    #career-path .pg-career img{
        max-height: 300px;
    }
    #page-body .graph img{
        width: 95%;
    }
}


/* ---------WLB------------ */
#work-life .sec-head p{
    margin-top: 1.5em;
}
#work-life .wlbCnt{
    max-width: 1130px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: stretch;
    margin: 100px auto 0;
}
#work-life .wlbCnt .wlblist {
    width:30%;
    min-width: 270px;
    margin: 0 auto 60px;
    position: relative;
    border: 1px solid #1690CE;
}
#work-life .wlbCnt .wlblist h1{
    font-size: 60px;
    background-color: #fff;
    position: absolute;
    top: -45px;
    left: 0;
    right: 0;
    margin: auto;
    width: 60px;
    text-align: center;
}
#work-life .wlblist .listBody{
    width: 90%;
    text-align: center;
    margin: 0 auto;
    padding: 60px 0;

}
#work-life .wlblist .listBody img{
    width: 27%;
    margin-bottom: 20px;
} 
#work-life .wlblist .listBody h2{
    width: 90%;
   font-size: 23px;
   margin: 0 auto;
   padding-bottom: 10px;
   margin-bottom: 20px;
   border-bottom: 1px solid#EFEDED;
}
#work-life .wlblist .listBody p{
    display: inline-block;
    margin: 0 auto;
text-align: left;
}

@media screen and (max-width:899px){
    #work-life .sec-head p{
        text-align: left;
    }
    #work-life .wlbCnt .wlblist{
        min-width: 200px;
    }
    #work-life .wlblist .listBody h2{
        font-size: 18px;
    }
    #work-life .wlblist .listBody p{
        font-size: 13px;
    }
    #work-life .wlblist .listBody{
        padding: 53px 0 30px;
    }
}
@media screen and (max-width:480px){
    #work-life .sec-head p{
        font-size: 14px;
    }
    #work-life .wlbCnt {
        margin-top: 0;
    }
    #work-life .wlbCnt .wlblist{
        min-width: auto;
        width:47%;
    }
    #work-life.page-sec{
        margin-bottom: 0;
    }
    #work-life .wlbCnt .wlblist h1{
        padding: 0 15px;
        line-height: 1;
        top: -27px;
        line-height: 1;
    }
    #work-life .wlblist .listBody{
        padding: 32px 0 20px;
    }
    #work-life .wlbCnt .wlblist{
        margin-bottom: 40px;
    }
    #work-life .wlblist .listBody h2{
        width: 100%;
        font-size: 16px;
    }
    #work-life .wlblist .listBody img{
        margin-bottom: 10px;
    }
}

/*=========================11.採用情報・業務説明会*/
#Entry{
    padding-top: 0;
    padding-bottom: 40px;
}
.pg-entry .page-sec > div{
    padding-top: 100px;
    margin-bottom: 30px;
}
.pg-entry .page-sec > div:first-child{
    padding-top: 0;
}
.pg-entry .cnt > div{
    margin: auto !important;
}
.pg-entry .informationList{
border: 1px solid #1690CE;
}
.pg-entry .information p{
    margin-bottom: 15px;
}

.pg-entry .information ul li{
    margin: 25px 10px;
}
.pg-entry .information ul li p{
    border-bottom: 1px solid #188AC4;
    display: inline;
    margin: 10px;
}
#Entry .section ,
#Entry .jobfair{
    background-color: #FAFAFA;
    position: relative;
}

#Entry .section .sec-head{
    position: absolute;
    top: -35px;
}

#Entry .section .sectionText{
    padding: 30px;
}
#Entry .section .sectionText .sectionInfo{
    padding: 30px 2.5%;
    background: #f1f1f1;
    margin: 20px 0;
    color: #333;
    font-size: 20px;
    color: #1690CE;
}
#Entry .section .sectionText .sectionInfo p{
    letter-spacing: 2px;
}
#Entry .section .sectionText .sectionInfo a{
    color: #1690CE;
    border-bottom: 1px solid #1690CE;
    letter-spacing: 2px;
    font-weight:600;
}
#Entry .section .flexBox{
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    border-bottom: 1px solid #1690CE;
    padding: 25px 0px;
}
#Entry .section .flexBox:last-child{
    border-bottom: none;
}
#Entry .section .flexBox .block-title{
    width: 20%;
    min-width: 140px;
    font-size: 15px;
    color: #1690CE;
}
#Entry .section .flexBox .txt-block{
    width: 80%;
    font-size: 15px;
}
#Entry .section .flexBox .txt-block a{
    color: #1690CE;
    border-bottom: 1px solid #1690CE;
}
#Entry .section .flexBox .txt-block p{
    margin-bottom: 10px;
}
#Entry .section .flexBox .txt-block .lnk-ul{
    width: 100%;
    height: 1px;
    background-color: #ddd;
}
#Entry .section .flexBox .txt-block *:first-child{
    margin-top: 0;
}
#Entry .section .flexBox .txt-block *:last-child{
    margin-bottom: 0;
}
#Entry .section .flexBox .txt-block ul{
    margin: 25px 0;
}
#Entry .section .flexBox .txt-block ul li{
    margin: 8px 0;
}
#Entry .section .flexBox .txt-block ul li{
    margin-left: 2em;
    text-indent: -1em;
}
#Entry .section .flexBox .txt-block ul li.listTitle{
    margin-left: 1em;
    text-indent: -1em;
}

#Entry .mailBtn a div{
    background-color: #1690CE;
    width: 398px;
    height: 80px;
    padding: 0 30px;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    align-items: center;
    grid-gap: 10px;
    gap: 10px;
}
#Entry .mailBtn a p{
    font-size: 20px;
}
#Entry .mailBtn>p{
    text-align: center;
    font-size: 14px;
    padding:10px 0 40px;
    color: #535353
}

@media screen and (max-width:899px){
    #Entry .section .flexBox{
        font-size: 14px;
    }
    #Entry .section .flexBox{
        flex-flow: column;
        grid-gap: 20px;
        gap: 20px;
    }
    .pg-entry .page-sec > div{
        padding-top: 100px;
    }
    #Entry .section .flexBox .block-title,#Entry .section .flexBox .txt-block{
        width: 100%;
    }
    #Entry .section .sectionText .sectionInfo{
        font-size: 18px;
        letter-spacing: 1px;
    }
}
@media screen and (max-width:480px){
    #Entry .section .sectionText{
        padding: 30px 5%;
    }
    #Entry .section .sec-head{
        top: -24px;
    }
    #Entry .section .flexBox .txt-block{
        font-size: 14px;
    }
    #Entry .mailBtn a div{
        width: 90%;
        max-width: 300px;
        height: 60px;
    }
    #Entry .mailBtn a p{
        font-size: 16px;
    }
    #Entry .mailBtn a img{
        height: 22px;
    }
    #Entry .mailBtn > p{
        font-size: 13px;
    }
    .pg-entry .information ul li{
        margin: 20px 2.5%;
    }
    .pg-entry .information ul li p{
        font-size: 14px;
        margin: 0;
    }
    .pg-entry .page-sec:first-child{
        margin-bottom: 0;
    }
    .pg-entry .page-sec > div{
        padding-top: 60px;
    }
    .pg-entry .page-sec:first-child{
        padding-top: 0;
    }
    #Entry .section .flexBox .txt-block ul li{
        margin-left: 1em;
    }
    #Entry .section .flexBox{
        padding: 15px 0;
    }
    #Entry .section .sectionText .sectionInfo{
        font-size: 15px;
        letter-spacing: 0.02em;
    }
}
/*=========================12.よくある質問*/

 .pg-faq .pg-title p{
    margin-top: 1.5em;
    line-height: 2em;
}
.pg-faq{
    overflow-y: scroll;
}
.pg-faq #site-main .page-sec{
    padding-top: 0;
}
.pg-faq #faq .question,.pg-faq #faq .answer{
    padding: 10px 10px 15px 10px;
}
.pg-faq #faq .question{
    border-top: 1px solid #1690CE;
    font-size: 17px;
    position: relative;
    cursor: pointer;
    justify-content: space-between;
}
.pg-faq #faq .question,.pg-faq #faq .answer{
    display: flex;
    align-items: flex-start;
}
.pg-faq #faq .answer{
    border-top: 1px solid #E6E6E6;
    padding: 20px 50px 20px 10px;
    justify-content: flex-start;
}
.pg-faq #faq .question p.txt-block{
    padding-top: 14px;
    width: calc(100% - 65px);
}
.pg-faq #faq .question > span,.pg-faq #faq .answer > span{
    margin-right: 20px;
    font-size: 30px;
    width: 25px;
}
.pg-faq #faq .answer > span{
    margin-top: -10px;
}
.pg-faq #faq .question p,.pg-faq #faq .answer p{
    max-width: 100%;
}
.pg-faq #faq .answer p{
    width: 100%;
}
.pg-faq #faq .innerBox{
    display: none;
}
.pg-faq #faq .innerBox .flexBox p.answer{
    font-size: 30px;
    padding: 10px 10px;
    margin-right: 60px;
}
.pg-faq #faq .cnt:last-of-type{
    border-bottom: 1px solid #1690CE;
}

@media screen and (max-width:480px){
    .pg-faq #faq .answer p{
        padding-top: 10px;
    }
    .pg-faq #faq .answer p{
        padding-top: 0;
    }
    .pg-faq #faq .answer p a{
        color: #1690CE;
        border-bottom: 1px solid #1690CE;
    }
    .pg-faq #faq .question, .pg-faq #faq .answer{
        padding-right: 25px;
        padding-left: 0;   
    }
    .pg-faq #faq .question p, .pg-faq #faq .answer p{
        font-size: 14px;
        line-height: 1.8;
    }
    .pg-faq #faq .question > span, .pg-faq #faq .answer > span{
        font-size: 25px;
    }
    .pg-faq #faq .question::after{
        width: 15px;
        height: 8px;
        right: 5px;
    }
    .pg-faq #faq .question p.txt-block{
        padding-top: 8px;
    }
    .pg-faq .page-sec{
        padding-bottom: 0;
    }
    .pg-faq .pg-title p{
        font-size: 14px;
    }
}

/* -----------------------------------------------------
   Top page recruitment information renewal
----------------------------------------------------- */
/* News links */
.pg-top #notice-area li a{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
}

/* Recruitment section shell */
.pg-top #recruit-area{
    max-width: 1120px;
}
.pg-top #recruit-area .cnt{
    display: block;
    align-items: initial;
    padding: 58px 58px 52px 100px;
    background:
        linear-gradient(rgba(255,255,255,.93), rgba(255,255,255,.93)),
        url("../images/index/recruit_bg.jpg") center / cover no-repeat;
    box-sizing: border-box;
}
.pg-top #recruit-area .sec-head{
    left: 34px;
    top: -20px;
    width: 50px;
    height: 190px;
    padding: 25px 8px 10px;
    box-sizing: border-box;
}
.pg-top #recruit-area .sec-head h2{
    font-size: 24px;
}
.pg-top #recruit-area .recruitment-layout{
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(250px, .85fr);
    gap: 0;
    border: 1px solid #dce4e7;
    background: #fff;
    position: relative;
    z-index: 11;
}
.pg-top #recruit-area .recruitment-guidance,
.pg-top #recruit-area .recruitment-brochure{
    padding: 42px 46px 44px;
    box-sizing: border-box;
}
.pg-top #recruit-area .recruitment-brochure{
    border-left: 1px solid #dce4e7;
    background: #f8faf9;
}
.pg-top #recruit-area .recruitment-kicker{
    display: block;
    margin-bottom: 13px;
    font-size: 20px;
    letter-spacing: .04em;
}
.pg-top #recruit-area .recruitment-layout h3{
    margin-bottom: 20px;
    color: #1d8cc8;
    font-size: 28px;
    line-height: 1.45;
    letter-spacing: .08em;
}
.pg-top #recruit-area .recruitment-lead{
    margin-bottom: 28px;
    font-size: 16px;
    line-height: 2;
}
.pg-top #recruit-area .recruitment-links{
    border-top: 1px solid #1d8cc8;
}
.pg-top #recruit-area .recruitment-links > li{
    border-bottom: 1px solid #d6e4eb;
}
.pg-top #recruit-area .recruitment-links > li > a{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    min-height: 70px;
    padding: 15px 48px 15px 4px;
    color: #1d8cc8;
    font-size: 15px;
    line-height: 1.7;
    position: relative;
    box-sizing: border-box;
    transition: opacity .2s;
}
.pg-top #recruit-area .recruitment-links > li > a::after{
    content: '';
    width: 9px;
    height: 16px;
    background: url("../images/shared/arrow_right2.png") center / 100% no-repeat;
    position: absolute;
    right: 14px;
    top: 0;
    bottom: 0;
    margin: auto;
    transition: right .2s;
}
.pg-top #recruit-area .recruitment-links > li > a:not([href="#"]):hover{
    opacity: .65;
}
.pg-top #recruit-area .recruitment-links > li > a:not([href="#"]):hover::after{
    right: 9px;
}
/* Brochure */
.pg-top #recruit-area .brochure-link{
    display: block;
    width: min(100%, 230px);
    margin: 0 auto;
}
.pg-top #recruit-area .brochure-cover{
    width: 100%;
    aspect-ratio: 210 / 297;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 8px 24px rgba(37, 64, 75, .14);
    position: relative;
}
.pg-top #recruit-area .brochure-cover > img{
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.pg-top #recruit-area .brochure-link-text{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-top: 18px;
    color: #1d8cc8;
    font-size: 14px;
    line-height: 1.5;
    text-align: center;
}

/* Contact */
.pg-top #recruit-area .recruitment-contact{
    display: grid;
    grid-template-columns: 230px minmax(0, 1fr);
    margin-top: 24px;
    border-top: 3px solid #a2cb35;
    background: #f6f8f7;
    position: relative;
    z-index: 11;
}
.pg-top #recruit-area .contact-heading{
    padding: 30px 32px;
    border-right: 1px solid #d8dfdc;
    box-sizing: border-box;
}
.pg-top #recruit-area .contact-heading span{
    display: block;
    margin-bottom: 10px;
    font-size: 20px;
}
.pg-top #recruit-area .contact-heading h3{
    color: #273b44;
    font-size: 23px;
    font-weight: 400;
    line-height: 1.5;
    letter-spacing: .08em;
}
.pg-top #recruit-area .contact-content{
    padding: 28px 36px 30px;
    box-sizing: border-box;
}
.pg-top #recruit-area .contact-intro{
    margin-bottom: 20px;
    font-size: 14px;
    line-height: 1.9;
}
.pg-top #recruit-area .contact-details{
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px 28px;
}
.pg-top #recruit-area .contact-details > div{
    display: grid;
    grid-template-columns: 64px minmax(0, 1fr);
    align-items: baseline;
}
.pg-top #recruit-area .contact-details > div:first-child{
    grid-column: 1 / -1;
}
.pg-top #recruit-area .contact-details dt{
    color: #65747a;
    font-size: 12px;
    font-weight: 500;
    letter-spacing: .08em;
}
.pg-top #recruit-area .contact-details dd{
    font-size: 14px;
    line-height: 1.8;
    overflow-wrap: anywhere;
}
.pg-top #recruit-area .contact-details a{
    color: #1d8cc8;
    border-bottom: 1px solid #1d8cc8;
}

@media screen and (max-width: 1100px){
    .pg-top #recruit-area{
        max-width: 90%;
    }
    .pg-top #recruit-area .cnt{
        display: block;
        padding: 55px 44px 44px 85px;
    }
    .pg-top #recruit-area .sec-head{
        left: 28px;
        right: auto;
    }
    .pg-top #recruit-area .recruitment-layout{
        grid-template-columns: minmax(0, 1.35fr) minmax(230px, .75fr);
    }
    .pg-top #recruit-area .recruitment-guidance,
    .pg-top #recruit-area .recruitment-brochure{
        padding: 36px 34px 38px;
    }
    .pg-top #recruit-area .recruitment-contact{
        grid-template-columns: 200px minmax(0, 1fr);
    }
}

@media screen and (max-width: 760px){
    .pg-top #notice-area li a{
        align-items: flex-start;
        gap: 10px;
    }
    .pg-top #recruit-area{
        width: 92%;
        max-width: 92%;
    }
    .pg-top #recruit-area .cnt{
        padding: 72px 24px 28px;
    }
    .pg-top #recruit-area .sec-head{
        left: 24px;
        right: auto;
        top: -18px;
        width: auto;
        height: auto;
        padding: 11px 22px 12px;
    }
    .pg-top #recruit-area .sec-head h2{
        -ms-writing-mode: horizontal-tb;
        writing-mode: horizontal-tb;
        font-size: 21px;
        letter-spacing: .12em;
        line-height: 1.4;
    }
    .pg-top #recruit-area .recruitment-layout{
        display: block;
    }
    .pg-top #recruit-area .recruitment-guidance,
    .pg-top #recruit-area .recruitment-brochure{
        padding: 32px 28px 36px;
    }
    .pg-top #recruit-area .recruitment-brochure{
        border-top: 1px solid #dce4e7;
        border-left: 0;
    }
    .pg-top #recruit-area .recruitment-layout h3{
        font-size: 24px;
    }
    .pg-top #recruit-area .recruitment-lead{
        font-size: 15px;
    }
    .pg-top #recruit-area .brochure-link{
        width: min(72%, 255px);
    }
    .pg-top #recruit-area .recruitment-contact{
        display: block;
    }
    .pg-top #recruit-area .contact-heading{
        padding: 24px 28px 17px;
        border-right: 0;
        border-bottom: 1px solid #d8dfdc;
    }
    .pg-top #recruit-area .contact-heading span{
        margin-bottom: 5px;
    }
    .pg-top #recruit-area .contact-content{
        padding: 24px 28px 28px;
    }
    .pg-top #recruit-area .contact-details{
        display: block;
    }
    .pg-top #recruit-area .contact-details > div{
        margin-top: 7px;
    }
}

@media screen and (max-width: 480px){
    .pg-top #notice-area li a{
        display: block;
        padding-right: 42px;
    }
    .pg-top #recruit-area{
        width: 94%;
        max-width: 94%;
    }
    .pg-top #recruit-area .cnt{
        display: block;
        padding: 66px 14px 18px;
    }
    .pg-top #recruit-area .sec-head{
        left: 14px;
        padding: 10px 18px 11px;
    }
    .pg-top #recruit-area .sec-head h2{
        font-size: 19px;
    }
    .pg-top #recruit-area .recruitment-guidance,
    .pg-top #recruit-area .recruitment-brochure{
        padding: 27px 20px 30px;
    }
    .pg-top #recruit-area .recruitment-kicker{
        margin-bottom: 9px;
        font-size: 18px;
    }
    .pg-top #recruit-area .recruitment-layout h3{
        margin-bottom: 15px;
        font-size: 21px;
    }
    .pg-top #recruit-area .recruitment-lead{
        margin-bottom: 22px;
        font-size: 14px;
        line-height: 1.85;
    }
    .pg-top #recruit-area .recruitment-links > li > a{
        display: block;
        min-height: 0;
        padding: 16px 34px 16px 2px;
        font-size: 14px;
    }
    .pg-top #recruit-area .brochure-link{
        width: min(70%, 220px);
    }
    .pg-top #recruit-area .brochure-link-text{
        display: block;
        font-size: 13px;
    }
    .pg-top #recruit-area .recruitment-contact{
        margin-top: 14px;
    }
    .pg-top #recruit-area .contact-heading{
        padding: 21px 20px 15px;
    }
    .pg-top #recruit-area .contact-heading span{
        font-size: 18px;
    }
    .pg-top #recruit-area .contact-heading h3{
        font-size: 20px;
    }
    .pg-top #recruit-area .contact-content{
        padding: 20px 20px 24px;
    }
    .pg-top #recruit-area .contact-intro{
        font-size: 13px;
        line-height: 1.85;
    }
    .pg-top #recruit-area .contact-details > div{
        display: block;
        margin-top: 12px;
    }
    .pg-top #recruit-area .contact-details dt{
        margin-bottom: 2px;
    }
    .pg-top #recruit-area .contact-details dd{
        font-size: 13px;
    }
}


/* Temporary top-page section control
-----------------------------------------------------*/
/*
 * 「採用に関するご案内」は一時非公開です。
 * 再公開時は index.html の #notice-area から hidden 属性を削除してください。
 * hidden を外すと、下記の追加余白も自動的に解除されます。
 */
.pg-top #page-body > #notice-area[hidden] + #recruit-area{
    margin-top: 80px;
}

/* Placeholder links: keep normal appearance until final URLs are supplied. */
.pg-top #recruit-area a[href="#"],
.pg-top #notice-area a[href="#"]{
    cursor: pointer;
}
.pg-top #recruit-area .recruitment-links a[href="#"]{
    color: #1d8cc8;
}
.pg-top #recruit-area .recruitment-links a[href="#"]::after{
    opacity: 1;
}

/* Prevent the contact heading from wrapping on desktop. */
.pg-top #recruit-area .recruitment-contact{
    grid-template-columns: 260px minmax(0, 1fr);
}
.pg-top #recruit-area .contact-heading{
    padding-left: 30px;
    padding-right: 30px;
}
.pg-top #recruit-area .contact-heading h3{
    white-space: nowrap;
    word-break: keep-all;
}

@media screen and (max-width: 1100px){
    .pg-top #recruit-area .recruitment-contact{
        grid-template-columns: 245px minmax(0, 1fr);
    }
    .pg-top #recruit-area .contact-heading{
        padding-left: 26px;
        padding-right: 26px;
    }
}

@media screen and (max-width: 760px){
    .pg-top #page-body > #notice-area[hidden] + #recruit-area{
        margin-top: 65px;
    }
    .pg-top #recruit-area .recruitment-contact{
        display: block;
    }
    .pg-top #recruit-area .contact-heading h3{
        white-space: normal;
    }
}

@media screen and (max-width: 480px){
    .pg-top #page-body > #notice-area[hidden] + #recruit-area{
        margin-top: 52px;
    }
}


/* Recruitment links: hover and keyboard focus accessibility
----------------------------------------------------- */
.pg-top #recruit-area .contact-phone-note,
.pg-top #recruit-area .contact-extension{
    display: inline-block;
    white-space: nowrap;
}
.pg-top #recruit-area .contact-phone-note{
    margin-left: .65em;
}
.pg-top #recruit-area .contact-extension{
    margin-left: .35em;
}

/* A visible keyboard focus indicator is provided site-wide. */
a:focus-visible{
    outline: 3px solid #f2a900;
    outline-offset: 3px;
    border-radius: 2px;
}

/* Recruitment list links */
.pg-top #recruit-area .recruitment-links > li > a{
    transition: background-color .2s ease, color .2s ease, text-decoration-color .2s ease;
}
.pg-top #recruit-area .recruitment-links a span{
    text-decoration: underline;
    text-decoration-color: transparent;
    text-decoration-thickness: 1px;
    text-underline-offset: .22em;
    transition: text-decoration-color .2s ease;
}
@media (hover: hover){
    .pg-top #recruit-area .recruitment-links a:hover{
        color: #126d9e;
        background-color: #eef8fc;
        opacity: 1;
    }
    .pg-top #recruit-area .recruitment-links a:hover span{
        text-decoration-color: currentColor;
    }
    .pg-top #recruit-area .recruitment-links a:hover::after{
        right: 9px;
    }
}
.pg-top #recruit-area .recruitment-links a:focus-visible{
    color: #126d9e;
    background-color: #eef8fc;
}
.pg-top #recruit-area .recruitment-links a:focus-visible span{
    text-decoration-color: currentColor;
}
.pg-top #recruit-area .recruitment-links a:focus-visible::after{
    right: 9px;
}

/* Brochure link */
.pg-top #recruit-area .brochure-cover{
    transition: transform .22s ease, box-shadow .22s ease, opacity .22s ease;
}
.pg-top #recruit-area .brochure-link-text{
    text-decoration: underline;
    text-decoration-color: transparent;
    text-decoration-thickness: 1px;
    text-underline-offset: .25em;
    transition: color .2s ease, text-decoration-color .2s ease;
}
@media (hover: hover){
    .pg-top #recruit-area .brochure-link:hover .brochure-cover{
        transform: translateY(-5px);
        box-shadow: 0 13px 30px rgba(37, 64, 75, .22);
        opacity: 1;
    }
    .pg-top #recruit-area .brochure-link:hover .brochure-link-text{
        color: #126d9e;
        text-decoration-color: currentColor;
    }
}
.pg-top #recruit-area .brochure-link:focus-visible .brochure-cover{
    transform: translateY(-5px);
    box-shadow: 0 13px 30px rgba(37, 64, 75, .22);
}
.pg-top #recruit-area .brochure-link:focus-visible .brochure-link-text{
    color: #126d9e;
    text-decoration-color: currentColor;
}

/* Telephone link */
.pg-top #recruit-area .contact-details a{
    display: inline-block;
    padding: 1px 2px;
    text-decoration: none;
    transition: color .2s ease, background-color .2s ease, border-color .2s ease;
}
@media (hover: hover){
    .pg-top #recruit-area .contact-details a:hover{
        color: #126d9e;
        border-color: #126d9e;
        background-color: #eaf6fb;
    }
}
.pg-top #recruit-area .contact-details a:focus-visible{
    color: #126d9e;
    border-color: #126d9e;
    background-color: #eaf6fb;
}

/* Notice links are currently hidden, but retain accessible states when restored. */
@media (hover: hover){
    .pg-top #notice-area li a:hover{
        color: #126d9e;
        background-color: #eef8fc;
        opacity: 1;
        text-decoration: underline;
        text-underline-offset: .22em;
    }
}
.pg-top #notice-area li a:focus-visible{
    color: #126d9e;
    background-color: #eef8fc;
    text-decoration: underline;
    text-underline-offset: .22em;
}

@media screen and (max-width: 480px){
    .pg-top #recruit-area .contact-phone-note{
        margin-left: .5em;
    }
    .pg-top #recruit-area .contact-extension{
        margin-left: 0;
    }
}

/* Contact telephone layout refinement
----------------------------------------------------- */
/* Keep the phone number, representative note and extension on one clean line. */
.pg-top #recruit-area .contact-phone{
    display: flex;
    flex-wrap: nowrap;
    align-items: baseline;
    gap: 0 .55em;
    min-width: 0;
    white-space: nowrap;
    overflow-wrap: normal;
    word-break: keep-all;
}
.pg-top #recruit-area .contact-phone-note,
.pg-top #recruit-area .contact-extension{
    flex: 0 0 auto;
    margin-left: 0;
}

/* Switch the contact panel to a full-width content column before it becomes cramped. */
@media screen and (max-width: 980px){
    .pg-top #recruit-area .recruitment-contact{
        display: block;
    }
    .pg-top #recruit-area .contact-heading{
        padding: 24px 28px 17px;
        border-right: 0;
        border-bottom: 1px solid #d8dfdc;
    }
    .pg-top #recruit-area .contact-heading span{
        margin-bottom: 5px;
    }
    .pg-top #recruit-area .contact-content{
        padding: 24px 28px 28px;
    }
    .pg-top #recruit-area .contact-details{
        grid-template-columns: minmax(360px, 1.2fr) minmax(220px, .8fr);
        gap: 8px 24px;
    }
}

/* Stack the detail groups only when two columns no longer fit comfortably. */
@media screen and (max-width: 680px){
    .pg-top #recruit-area .contact-details{
        display: block;
    }
    .pg-top #recruit-area .contact-details > div{
        margin-top: 9px;
    }
}

@media screen and (max-width: 480px){
    .pg-top #recruit-area .contact-phone{
        gap: 0 .35em;
        font-size: clamp(12px, 3.35vw, 13px);
        letter-spacing: 0;
    }
}

/* Contact panel width and detail alignment refinement
----------------------------------------------------- */
/* Give the contact information more usable width and keep the heading compact. */
.pg-top #recruit-area .recruitment-contact{
    grid-template-columns: 205px minmax(0, 1fr);
}
.pg-top #recruit-area .contact-heading{
    padding: 27px 22px;
}
.pg-top #recruit-area .contact-heading span{
    margin-bottom: 7px;
    font-size: 18px;
}
.pg-top #recruit-area .contact-heading h3{
    font-size: 21px;
    letter-spacing: .05em;
}
.pg-top #recruit-area .contact-content{
    padding-left: 30px;
    padding-right: 30px;
}

/* Size the telephone column by its actual content instead of splitting both columns equally. */
.pg-top #recruit-area .contact-details{
    grid-template-columns: max-content minmax(300px, 1fr);
    column-gap: 42px;
}
.pg-top #recruit-area .contact-details > div:nth-child(2){
    min-width: max-content;
}
.pg-top #recruit-area .contact-details > div:nth-child(3){
    min-width: 0;
}
.pg-top #recruit-area .contact-details > div:nth-child(3) dd{
    overflow-wrap: anywhere;
}

/* Stack phone and e-mail before the two-column row becomes cramped. */
@media screen and (max-width: 1280px){
    .pg-top #recruit-area .contact-details{
        grid-template-columns: minmax(0, 1fr);
        row-gap: 8px;
    }
    .pg-top #recruit-area .contact-details > div:first-child{
        grid-column: auto;
    }
}

@media screen and (max-width: 980px){
    .pg-top #recruit-area .contact-heading{
        padding: 22px 24px 16px;
    }
    .pg-top #recruit-area .contact-heading h3{
        font-size: 20px;
    }
    .pg-top #recruit-area .contact-content{
        padding-left: 24px;
        padding-right: 24px;
    }
}


/* Related recruitment documents */
.pg-top #recruit-area .recruitment-links > li{
    border-bottom: 1px solid #d6e4eb;
}
.pg-top #recruit-area .recruitment-links > li > a{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    min-height: 70px;
    padding: 15px 48px 15px 4px;
    color: #1d8cc8;
    font-size: 15px;
    line-height: 1.7;
    position: relative;
    box-sizing: border-box;
    transition: opacity .2s;
}
.pg-top #recruit-area .recruitment-links > li > a::after{
    content: '';
    width: 9px;
    height: 16px;
    background: url("../images/shared/arrow_right2.png") center / 100% no-repeat;
    position: absolute;
    right: 14px;
    top: 0;
    bottom: 0;
    margin: auto;
    transition: right .2s;
}
.pg-top #recruit-area .recruitment-links > li > a:hover{
    opacity: .65;
}
.pg-top #recruit-area .recruitment-links > li > a:hover::after{
    right: 9px;
}
.pg-top #recruit-area .recruitment-related-links{
    margin: -2px 0 18px;
    padding: 0 14px 0 18px;
    border-left: 2px solid #d6e4eb;
}
.pg-top #recruit-area .recruitment-related-links > li{
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 16px;
    padding: 9px 0;
    border-bottom: 1px dotted #d6e4eb;
    font-size: 13px;
    line-height: 1.6;
}
.pg-top #recruit-area .recruitment-related-links > li:last-child{
    border-bottom: 0;
}
.pg-top #recruit-area .recruitment-related-title{
    min-width: 0;
}
.pg-top #recruit-area .recruitment-file-links{
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    gap: 8px;
    white-space: nowrap;
}
.pg-top #recruit-area .recruitment-file-links a{
    display: inline;
    min-height: 0;
    padding: 0;
    color: #1d8cc8;
    font-size: 12px;
    line-height: 1.5;
    text-decoration: underline;
    text-underline-offset: 3px;
    transition: opacity .2s;
}
.pg-top #recruit-area .recruitment-file-links a::before{
    content: '[';
    text-decoration: none;
}
.pg-top #recruit-area .recruitment-file-links a::after{
    content: ']';
    width: auto;
    height: auto;
    background: none;
    position: static;
    margin: 0;
}
.pg-top #recruit-area .recruitment-file-links a:hover{
    opacity: .65;
}

@media screen and (max-width: 600px){
    .pg-top #recruit-area .recruitment-related-links{
        padding-left: 12px;
    }
    .pg-top #recruit-area .recruitment-related-links > li{
        display: block;
    }
    .pg-top #recruit-area .recruitment-file-links{
        display: flex;
        margin-top: 4px;
    }
}
