/*@charset "UTF-8";*/

/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
body,sub,sup{position:relative}a:active,a:hover,input:focus{outline:0}abbr,acronym,fieldset,img,input,legend{border:0}legend,td,th{padding:0}html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}abbr[title]{border-bottom:1px dotted}b,optgroup,strong{font-weight:700}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{-webkit-box-sizing:content-box;box-sizing:content-box;height:0}pre,textarea{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{-webkit-box-sizing:border-box;box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;-webkit-box-sizing:content-box;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}blockquote,body,dd,div,dl,dt,fieldset,form,h1,h2,h3,h4,h5,h6,input,li,ol,p,pre,td,textarea,th,ul{margin:0;padding:0}table{border-collapse:collapse;border-spacing:0}address,caption,cite,code,dfn,th,var{font-style:normal;font-weight:400}ol,ul{list-style:none}caption,th{text-align:left}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:400}q:after,q:before{content:''}a,img{vertical-align:top;display:inline-block}html{font-size:62.5%;line-height:1.75}body{margin:0;font-family:'Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',Meiryo,メイリオ,Osaka,'MS PGothic',arial,helvetica,sans-serif}*{-webkit-box-sizing:border-box;box-sizing:border-box}a,a:hover{text-decoration:none}


/* ===========================================
共通
=========================================== */
@import url(http://fonts.googleapis.com/earlyaccess/notosansjp.css);

html {
  height: 100%;
}
body {
  height: 100%;
  font-family:"Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
}
body.fixed {
  position: fixed;
  width: 100%;
  height: 100%;
}
a {
  color: #000;
}
.pcOnly {
  display: block;
}
.spOnly {
  display: none;
}
.inner {
  min-width: 1200px;
  max-width: 1500px;
  margin: 0 auto;
  position: relative;
}
.l-column {
  width: 1200px;
  min-width: 1200px;
  margin: 0 auto;
}
.wrap {
  min-width: 1200px;
  height: 100%;
  position: relative;
  box-sizing: border-box;
}
article {
  flex: 1 0 auto;
}
.section {
  width: 100%;
  min-width: 1200px;
  background: #fff;
  position: relative;
  z-index: 3;
}
.flexWrap {
  display: flex;
}
@media screen and (max-width: 1219px) {
  .pcOnly {
    display: none;
  }
  .spOnly {
    display: block;
  }
  .inner {
    min-width: 0;
    max-width: 100%;
  }
  .l-column {
    width: 100%;
    min-width: 0;
  }
  .wrap {
    width: 100%;
    min-width: 0;
  }
  .section {
    min-width: auto;
  }
}
@media screen and (max-width: 768px) {
  .pcOnly {
    display: none;
  }
  .spOnly {
    display: block;
  }
  .inner {
    width: calc( 100% - 40px );
    max-width: 100%;
    min-width: 0;
  }
  .l-column {
    width: 100%;
    min-width: auto;
  }
  .wrap {
    min-width: auto;
  }
}

/* ボタン */
.btn a {
  padding: 17px 32px 15px;
  color: #FFF;
  line-height: 1;
  width: 400px;
  position: relative;
  z-index: 5;
  display: block;
  overflow: hidden;
  font-size: 1.4rem;
  transition: .3s;
}
@media all and (-ms-high-contrast:none) {
  .btn a {
    padding-top: 20px;
  }
}
.btn a:before {
  content: '';
  width: 100%;
  height: 80px;
  display: block;
  background: linear-gradient(to left,#2789dd,#356ee3);
  position: absolute;
  top: 0;
  left: 0;
  z-index: -2;
}
.btn a:after {
  content: '';
  width: 200%;
  height: 80px;
  display: block;
  background: linear-gradient(to left,transparent,#356ee3);
  position: absolute;
  top: 0;
  left: -200%;
  z-index: -1;
  transition: .6s;
}
.btn a:hover {
  opacity: 0.8;
}
.btn span.arrow:before {
  content: '';
  width: 8px;
  height: 8px;
  border-right: 2px solid #FFF;
  border-bottom: 2px solid #FFF;
  display: block;
  position: absolute;
  top: 50%;
  right: 28px;
  transform: translateY(-50%) rotate(-45deg);
}
.btn span.arrow:after {
  content: '';
  width: 35px;
  height: 2px;
  background: #FFF;
  display: block;
  position: absolute;
  top: 50%;
  right: 28px;
  transform: translateY(-50%);
}
.btn span.arrow_down:before {
  content: '';
  width: 8px;
  height: 8px;
  border-right: 2px solid #0068bf;
  border-bottom: 2px solid #0068bf;
  display: block;
  position: absolute;
  top: calc(50% + 4px);
  right: 32px;
  transform: translateY(-50%) rotate(45deg);
}
.btn span.arrow_down:after {
  content: '';
  width: 18px;
  height: 2px;
  background: #0068bf;
  display: block;
  position: absolute;
  top: 50%;
  right: 28px;
  transform: translateY(-50%) rotate(90deg);
}
.btn .eng {
  font-size: 2.4rem;
  display: block;
}
.btn .ja {
  font-size: 1.5rem;
  display: block;
  margin-top: 9px;
  font-weight: lighter;
}
.arrow:before {
  content: '';
  width: 7px;
  height: 7px;
  border-right: 2px solid #7b7b7b;
  border-bottom: 2px solid #7b7b7b;
  display: block;
  position: absolute;
  top: 50%;
  right: 49px;
  transform: translateY(-50%) rotate(-45deg);
}
.arrow:after {
  content: '';
  width: 28px;
  height: 2px;
  background: #7b7b7b;
  display: block;
  position: absolute;
  top: 50%;
  right: 50px;
  transform: translateY(-50%);
}

/* 背景白+青枠ボタン */
.btn.white {
  width: 330px;
}
.btn.white a {
  border: 1px solid #0068bf;
  color: #0068bf;
  font-weight: bold;
  padding: 27px 74px 27px 40px;
  width: 330px;
  text-align: center;
  letter-spacing: 0.03em;
  transition: .3s;
}
@media all and (-ms-high-contrast:none) {
  .btn.white a {
    padding-top: 30px;
  }
}
.btn.white a:before,
.btn.white a:after {
  content: normal;
}
.btn.white span.arrow:before {
  border-color: #0068bf;
}
.btn.white span.arrow:after {
  background: #0068bf;
}
.btn.white:hover a {
  color: #fff;
  background-color: #0068bf;
  opacity: 1;
}
.btn.white:hover span.arrow:before {
  border-color: #fff;
}
.btn.white:hover span.arrow:after {
  background: #fff;
}
.btn.white:hover span.arrow_down:before {
  border-color: #fff;
}
.btn.white:hover span.arrow_down:after {
  background: #fff;
}

/* 背景白+赤枠ボタン */
.btn.red {
  width: 330px;
}
.btn.red a {
  border: 1px solid #ff5585;
  color: #ff5585;
  font-weight: bold;
  padding: 27px 74px 27px 40px;
  width: 330px;
  text-align: center;
  letter-spacing: 0.03em;
}
.btn.red a:before,
.btn.red a:after {
  content: normal;
}
.btn.red span.arrow:before {
  border-color: #ff5585;
}
.btn.red span.arrow:after {
  background: #ff5585;
}
.btn.red a:hover {
  color: #fff;
  background-color: #ff5585;
  opacity: 1;
}
.btn.red a:hover span.arrow:before {
  border-color: #fff;
}
.btn.red a:hover span.arrow:after {
  background: #fff;
}

/* 背景赤+赤枠ボタン */
.btn.red.fill a {
  border: 1px solid #ff5585;
  background-color: #ff5585;
  color: #fff;
}
.btn.red.fill span.arrow:before {
  border-color: #fff;
}
.btn.red.fill span.arrow:after {
  background: #fff;
}
.btn.red.fill a:hover {
  color: #ff5585;
  background-color: #fff;
  opacity: 1;
}
.btn.red.fill a:hover span.arrow:before {
  border-color: #ff5585;
}
.btn.red.fill a:hover span.arrow:after {
  background: #ff5585;
}

@media screen and (max-width: 768px) {
  .btn,
  .btn.red,
  .btn a,
  .btn.red a {
     width: 100%;
   }
   .btn a {
    padding: 13px 24px 11px;
    font-size: 1rem;
  }
  .btn .eng {
    font-size: 1.8rem;
  }
  .btn .ja {
    font-size: 1.1rem;
    margin-top: 7px;
  }
  .btn a:before {
    height: 100%;
  }
  .btn a:after {
    content: normal;
  }
  .btn.white {
    width: 248px;
  }
  .btn.white a {
    width: 100%;
    padding: 22px 45px 20px 30px;
  }
  .btn span.arrow:after {
    right: 15px;
  }
  .btn span.arrow:before {
    right: 15px;
  }
  .btn span.arrow:before {
    width: 5px;
    height: 5px;
    right: 21px;
    border-right: 1px solid #FFF;
    border-bottom: 1px solid #FFF;
  }
  .btn span.arrow:after {
    height: 1px;
    width: 27px;
    right: 21px;
  }
}

/*タイトル*/
.titBox {
  margin-bottom: 82px;
}
.titBox .tit {
  color: #000;
  font-size: 3.6rem;
  font-weight: bold;
  font-weight: bold;
  letter-spacing: 0.025em;
  text-align: center;
}
.titBox .lead {
  padding: 0 45px;
  margin-top: 19px;
  font-size: 1.8rem;
  line-height: 1.333333333;
  letter-spacing: 0.025em;
}
.fontB {
  font-weight: bold;
}

/* ===========================================
ヘッダー
=========================================== */
.header {
  position: absolute;
  top: 0;
  z-index: 10;
  width: 100%;
  z-index: 9000;
}
.header .inner {
  display: flex;
  max-width: 1500px;
  min-width: 1200px;
  width: 100%;
  padding: 20px 10px;
  justify-content: space-between;
}
.header .gNav {
  width: calc(100% - 195px);
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
.header .pageNav {
  display: flex;
  justify-content: flex-end;
  flex: 0 0 55%;
  font-size: 1.4rem;
  font-weight: bold;
  color: #000;
  margin-right: 2%;
}
.header .pageNav li + li {
  margin-left: 3%;
}
.header .pageNav a {
  transition: .3s;
  white-space: nowrap;
}
.home .header .pageNav a {
/*  color: #fff;*/
  color: #000;
}
.header .pageNav a:hover {
  opacity: 0.8;
}
.header .socialNav {
  display: flex;
  margin-right: 25px;
}
.header .socialNav li + li {
  margin-left: 9px;
}
.header .socialNav a {
  padding: 10px;
  transition: .3s;
}
.header .socialNav a:hover {
  opacity: 0.8;
}
.header .recruitNav {
  display: flex;
  align-items: center;
}
.header .recruitNav {
  font-size: 1.2rem;
  font-weight: bold;
}
.header .recruitNav a {
  transition: .3s;
}
.home .header .recruitNav a {
  color: #fff;
}
.header .recruitNav a:hover {
  opacity: 0.8;
}
.home .header .recruitNav a .txt {
  color: #000;
}
.header .recruitNav .icoBox {
  margin-right: 22px;
}
.header .recruitNav .icoBox a:before{
  content: '';
  width: 20px;
  height: 20px;
  display: block;
  position:absolute;
  top: 7px;
  transform: translateX(-50%);
}
.header .recruitNav .icoBox.question a:before{
  background: url(../img/common/ico_question.png)center / cover no-repeat;
  left: calc( 50% + 4px );
}
.home .header .recruitNav .icoBox.question a:before{
  background: url(../img/common/ico_question_white.png)center / cover no-repeat;
}
.header .recruitNav .icoBox.news a:before{
  background: url(../img/common/ico_news.png)center / cover no-repeat;
  left: calc( 50% - 2px );
}
.home .header .recruitNav .icoBox.news a:before{
  background: url(../img/common/ico_news_white.png)center / cover no-repeat;
}
.header .recruitNav .icoBox a {
  padding-top: 31px;
  position: relative;
}

/* 追従ヘッダー */
.header .compactNav {
  background: #FFF;
  width: 100%;
  z-index: 9000;
  transition: .3s;
  position: fixed;
  top: -59px;
  opacity: 0;
}
.header .compactNav.is-scroll,
.header .compactNav.is-fixed {
  opacity: 1;
}
.header .compactNav .inner {
  padding: 9px 10px;
  align-items: center;
}
.header .compactNav .gNav {
  width: calc(100% - 127px);
}
.header .compactNav .pageNav {
  margin-right: 7.5%;
  flex: 1 0 58.5%;
}
.header .compactNav .pageNav a {
  color: #000;
}
.header .compactNav .socialNav {
  margin-right: 22px;
}
.header .compactNav .recruitNav a {
  color: #000;
}
.header .compactNav .entryBtn a {
  color: #fff;
}
.header .compactNav .recruitNav .icoBox + .icoBox {
  margin: 0 0 0 9px;
}
.header .compactNav .recruitNav .icoBox a {
  padding-top: 0;
}
.header .compactNav .recruitNav .icoBox a:before,
.header .compactNav .recruitNav .icoBox a:after {
  display: none;
}
.header .compactNav .recruitNav .entryBtn {
  margin-left: 39px;
}
.header .recruitNav .txt {
  display: block;
}
.header .recruitNav .img {
  display: none;
}
.header .compactNav .recruitNav .txt {
  display: none;
}
.header .compactNav .recruitNav .img {
  display: block;
}
.header .spNav {
  display: none;
}
.header .spNavBtn {
  display: none;
}
.header .button-youtube {
  position: absolute;
  right: 25px;
  top: 100px;
  font-size: 14px;
}
.header .button-youtube a {
    color: #ffffff;
    font-weight: normal;
    padding: 10px 55px 10px 15px;
    display: inline-block;
    text-align: left;
    background: url(../img/index/arrow_orange.png) right 20px center no-repeat #d47057;
    background-size: 30px 8px;
    background-color: #d47057;
    border: 1px solid #d47057;
}
.header .button-youtube a:hover {
    background-image: url(../img/index/arrow_orange_hover.png);
    background-color: #ffffff;
    color: #d47057;
    opacity: 1;
}
@media screen and (max-width: 1219px) {
  .header {
    width: 100%;
    transition: .3s;
  }
  .header.is-active {
    background-color: #fff;
  }
  .header.headerColored,
  .header.headerColored .compactNav {
    background-color: #eaf0f6;
  }
  .header .inner {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    padding: 20px 20px 20px 10px;
    display: flex;
    align-items: center;
  }
  .header .compactNav {
    display: flex;
    align-items: center;
    top: -70px;
  }
  .header .compactNav.is-scroll {
    top: 0 !important;
  }
  .header .compactNav .inner {
    padding: 15px 20px 15px 10px;
    align-items: center;
  }
  .header .mainLogo {
    margin: 0 auto 0 2px;
    width: 150px;
  }
  .header .mainLogo img {
    width: 100%;
  }
  .header .mainLogo {
    margin: 0 auto 0 2px;
    width: 150px;
  }
  .header .compactNav .mainLogo img {
    width: 100%;
  }
  .header .pageNav,
  .header .socialNav,
  .header .recruitNav .icoBox {
    display: none;
  }
  .header .compactNav .spNavBtn {
    margin: 0px 13px 0 10px;
  }
  .header.is-active .compactNav {
    opacity: 1;
  }

  /* SPナビ */
  .header .spNavBtn {
    display: block;
    position: relative;
    width: 40px;
    height: 30px;
    margin: 0 0 0 20px;
    z-index: 1000;
  }
  .header .spNavBtn .js-menuBtn {
    display: block;
    width: 100%;
    height: 100%;
  }
  .header .spNavBtn .js-menuBtn span {
    width: 40px;
    height: 2px;
    background: #000;
    display: block;
    position: absolute;
    transition: .3s;
  }
  .header .spNavBtn .js-menuBtn span:nth-child(1) {
    top: 0;
  }
  .header .spNavBtn .js-menuBtn.is-active span:nth-child(1) {
    top: 50%;
    transform: translateY(-50%) rotateZ(45deg);
  }
  .header .spNavBtn .js-menuBtn span:nth-child(2) {
    top: 50%;
    transform: translateY(-50%);
  }
  .header .spNavBtn .js-menuBtn.is-active span:nth-child(2) {
    opacity: 0;
  }
  .header .spNavBtn .js-menuBtn span:nth-child(3) {
    bottom: 0;
  }
  .header .spNavBtn .js-menuBtn.is-active span:nth-child(3) {
    bottom: 50%;
    transform: translateY(50%) rotateZ(-45deg);
  }
  .header .spNav {
    width: 100%;
    height: 100%;
    padding-bottom: 80px;
    top: 80px;
    left: 0;
    position: fixed;
    display: none;
    z-index: 9000;
  }
  .compactNav.is-scroll .spNav {
    top: 70px;
  }
  .header .spNav.is-active {
    visibility: visible;
  }
  .header .spNav .gNav {
    display: block;
    width: 100%;
    height: 100%;
    overflow-y: scroll;
  }
  .header .spNav .pageNav,
  .header .spNav .socialNav,
  .header .spNav .recruitNav .icoBox {
    display: block;
    margin-right: 0;
    flex: 1;
  }
  .header .spNav .pageNav {
    background: #FFF;
  }
  .header .spNav .pageNav li {
    height: 71px;
  }
  .header .spNav .pageNav a {
    display: flex;
    width: 100%;
    height: 100%;
    padding-left: 41px;
    color: #fff;
    font-size: 1.6rem;
    font-weight: bold;
    display: flex;
    align-items: center;
    background-color: #0068bf;
  }
  .header .spNav .pageNav li + li {
    margin-left: 0;
    border-top: 1px solid #fff;
  }
  .header .spNav .socialNav,
  .header .spNav .recruitNav {
    width: 100%;
    display: flex;
    border-bottom: 1px solid #f4f4f4;
    background-color: #fff;
  }
  .header .spNav .socialNav li,
  .header .spNav .recruitNav li {
    width: 50%;
    height: 70px;
  }
  .header .spNav .socialNav li + li,
  .header .spNav .recruitNav li + li {
    margin-left: 0;
    border-left: 1px solid #f4f4f4;
  }
  .header .spNav .socialNav a,
  .header .spNav .recruitNav a {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .header .spNav .socialNav a {
    padding-top: 8px;
    padding-left: 12px;
  }
  .header .spNav .socialNav img {
    width: 27px;
    height: auto;
  }
  .header .spNav .recruitNav {
    box-shadow: 0px 15px 12px -12px rgba(0, 0, 0, 0.15);
  }
  .header .spNav .recruitNav a {
    flex-direction: column-reverse;
  }
  .header .spNav .recruitNav .txt {
    margin-top: -1px;
    display: block;
    font-weight: normal;
  }
  .header .spNav .recruitNav .icoBox + .icoBox {
    margin-left: 0;
  }
  .header .spNav .recruitNav .icoBox a {
    padding-top: 5px;
    padding-left: 2px;
  }
  .header .spNav .recruitNav img {
    width: 19px;
    height: auto;
  }
  .header .spNav .recruitNav .entryBtn {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .header {
    width: 100%;
    transition: .3s;
  }
  .header.is-active {
    background-color: #fff;
  }
  .header.headerColored,
  .header.headerColored .compactNav {
    background-color: #eaf0f6;
  }
  .header .inner {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    padding: 17px 12px 17px 11px;
  }
  .header .compactNav {
    display: flex;
    align-items: center;
  }
  .header .compactNav.is-scroll {
    top: 0 !important;
  }
  .header .compactNav .inner {
    padding: 17px 0 16px 11px;
    align-items: flex-start;
  }
  .header .mainLogo {
    margin: 2px auto 0 2px;
  }
  .header .mainLogo img {
    width: 95px;
  }
  .header .compactNav .mainLogo img {
    width: 95px;
  }
  .header .pageNav,
  .header .socialNav,
  .header .recruitNav .icoBox {
    display: none;
  }
  .header .inner .gNav .socialNav {
    display: block;
    margin-right: 8px;
  }
  .header .inner .gNav .socialNav li {
    display: block;
  }
  .header .inner .gNav .socialNav li:not(:first-child) {
    display: none;
  }
  .header .inner .gNav .socialNav a {
    padding: 1px;
  }
  .header .compactNav .gNav .recruitNav .entryBtn {
    margin-left: 3px;
  }
  .header .compactNav .spNavBtn {
    margin: 0px 13px 0 10px;
  }

  /* SPナビ */
  .header .spNavBtn {
    display: block;
    position: relative;
    width: 18px;
    height:18px;
    margin: 1px 0 0 10px;
    z-index: 1000;
  }
  .header .spNavBtn .js-menuBtn {
    display: block;
    width: 100%;
    height: 100%;
  }
  .header .spNavBtn .js-menuBtn span {
    width: 18px;
    height: 2px;
    background: #000;
    display: block;
    position: absolute;
    transition: .3s;
  }
  .home .header .spNavBtn .js-menuBtn span {
    background: #000;
  }
  .header .spNavBtn .js-menuBtn span:nth-child(1) {
    top: 0;
  }
  .header .spNavBtn .js-menuBtn.is-active span:nth-child(1) {
    top: 50%;
    transform: translateY(-50%) rotateZ(45deg);
  }
  .header .spNavBtn .js-menuBtn span:nth-child(2) {
    top: 50%;
    transform: translateY(-50%);
  }
  .header .spNavBtn .js-menuBtn.is-active span:nth-child(2) {
    opacity: 0;
  }
  .header .spNavBtn .js-menuBtn span:nth-child(3) {
    bottom: 0;
  }
  .header .spNavBtn .js-menuBtn.is-active span {
    background: #000;
  }
  .header .spNavBtn .js-menuBtn.is-active span:nth-child(3) {
    bottom: 50%;
    transform: translateY(50%) rotateZ(-45deg);
  }
  .header .spNav {
    width: 100%;
    height: 100%;
    padding-bottom: 55px;
    top: 55px;
    position: fixed;
    display: none;
    z-index: 9000;
  }
  .header .spNav.is-active {
    visibility: visible;
  }
  .header .spNav  .gNav {
    display: block;
    width: 100%;
    height: 100%;
    overflow-y: scroll;
  }
  .header .spNav .pageNav,
  .header .spNav .socialNav,
  .header .spNav .recruitNav .icoBox {
    display: block;
    margin-right: 0;
    flex: 1;
  }
  .header .spNav .pageNav li {
    height: 71px;
  }
  .header .spNav .pageNav a {
    display: flex;
    width: 100%;
    height: 100%;
    padding-left: 41px;
    color: #fff;
    font-size: 1.6rem;
    font-weight: bold;
    display: flex;
    align-items: center;
    background-color: #0068bf;
  }
  .header .spNav .pageNav li + li {
    margin-left: 0;
    border-top: 1px solid #fff;
  }
  .header .spNav .socialNav,
  .header .spNav .recruitNav {
    width: 100%;
    display: flex;
    border-bottom: 1px solid #f4f4f4;
    background-color: #fff;
  }
  .header .spNav .socialNav li,
  .header .spNav .recruitNav li {
    width: 50%;
    height: 70px;
  }
  .header .spNav .socialNav li + li,
  .header .spNav .recruitNav li + li {
    margin-left: 0;
    border-left: 1px solid #f4f4f4;
  }
  .header .spNav .socialNav a,
  .header .spNav .recruitNav a {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .header .spNav .socialNav a {
    padding-top: 8px;
    padding-left: 12px;
  }
  .header .spNav .socialNav img {
    width: 27px;
    height: auto;
  }
  .header .spNav .recruitNav {
    box-shadow: 0px 15px 12px -12px rgba(0, 0, 0, 0.15);
  }
  .header .spNav .recruitNav a {
    flex-direction: column-reverse;
  }
  .header .spNav .recruitNav .txt {
    margin-top: -1px;
    display: block;
    font-weight: normal;
  }
  .header .spNav .recruitNav .icoBox + .icoBox {
    margin-left: 0;
  }
  .header .spNav .recruitNav .icoBox a {
    padding-top: 5px;
    padding-left: 2px;
  }
  .header .spNav .recruitNav img {
    width: 19px;
    height: auto;
  }
  .header .spNav .recruitNav .entryBtn {
    display: none;
  }
  .compactNav.is-scroll .spNav {
    top: 55px;
  }
  .compactNav .spNavBtn .js-menuBtn span,
  .home .compactNav .spNavBtn .js-menuBtn span {
    background: #000;
  }
  .header .button-youtube {
    position: absolute;
    left: 20px;
    right: 20px;
    top: 580%;
    font-size: 11px;
  }
  .header .button-youtube a {
    display: block;
  }
}
@media screen and (max-width: 414px) {
  .header .button-youtube {
    top: 530%;
  }
}
@media screen and (max-width: 375px) {
  .header .button-youtube {
    top: 530%;
  }
}
@media screen and (max-width: 330px) {
  .header .button-youtube {
    top: 450%;
  }
}

/* ===========================================
エントリー　モーダル
=========================================== */
.entryBtn a {
  color: #FFF;
  background: #ff4184;
  font-size: 1.4rem;
  padding: 8px 52px 8px 29px;
  border-radius: 25px;
  letter-spacing: 0.1em;
  position: relative;
  font-weight: bold;
}
.entryBtn a:after {
  content: '';
  width: 12px;
  height: 12px;
  background: url(../img/common/ico_modal.png)center / cover no-repeat;
  display: block;
  position: absolute;
  right: 19px;
  top: 50%;
  transform: translateY(-50%);
}
.entryBtn a:hover {
  opacity: 0.8;
}
/*.remodal .recruit_nav {
  text-align: center;
}
.remodal .recruit_nav li {
  width: 35%;
  float: left;
  padding: 0;
  text-align: center;
}
.remodal .recruit_nav li.rikunabi {
  width: 36%;
}
.remodal .recruit_nav li.line {
  width: 29%;
}*/
.remodal .recruit_nav {
  text-align: center;
  display: flex;
  gap: 0 20px;
  justify-content: center;
}
.remodal .recruit_nav li p {
  font-size: 16px;
  margin-bottom: 1em;
}
.remodal .recruit_nav li img {
  /*width: 100%;*/
  /*padding: 0 10px;*/
}
.remodal .recruit_nav li a {
  display: inline-block;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .entryBtn a {
    font-size: 1rem;
    padding: 3px 31px 2px 15px;
  }
  .entryBtn a:after {
    width: 10px;
    height: 10px;
    right: 10px;
    top: calc( 50% - 1px );
  }
  .remodal {
    padding: 40px 15px !important;
  }
  .remodal .recruit_nav {
    flex-direction: column;
  }
  .remodal .recruit_nav li {
    width: 100%;
    float: none;
    margin-bottom: 20px;
  }
  .remodal .recruit_nav li.rikunabi {
    width: 100%;
  }
  .remodal .recruit_nav li.line {
    width: 100%;
  }
  .remodal .recruit_nav li:last-child {
    margin-bottom: 0;
  }
  .remodal .recruit_nav li p {
    font-size: 16px;
    margin-bottom: 0.5em;
  }
  .remodal .recruit_nav li img {
    width: 100%;
    max-width: 216px;
  }
}
/* ===========================================
その他のお問い合わせ
=========================================== */
.contact_information {
  margin-top: 80px;
  color: #4e575c;
}
.guidelineArea .contact_information {
  margin-top: 0;
}
.contact_information .contact_title {
  font-size: 2rem;
  margin-bottom: 1.5rem;
}
.contact_information .contact_desc {
  font-size: 1.6rem;
}
.guidelineArea .btnWrap {
  margin-top: 30px;
  margin-bottom: 0;
}
.guidelineArea .btnWrap a {
  font-size: 1.6rem;
}
@media screen and (max-width: 768px) {
  .contact_information {
    margin-top: 40px;
  }
}
/* ===========================================
TOP
=========================================== */
/* KV */
.index .kvArea {
  width: 100%;
  min-width: 1200px;
  position: relative;
  line-height: 0;
  aspect-ratio: 2/1;
  background: #000;
  text-align: center;
}
.index .kvArea::before {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  aspect-ratio: 2/1;
  background: url(../img/index/bg_top_2024.png) center top no-repeat;
  background-size: cover;
  transition: all 1s;
}
.index .kvArea .kv {
  
}
.index .kvArea .catch01 {
  height: 100%;
  /*position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  opacity: 0;*/
  display: flex;
  justify-content: center;
  align-items: center;
  opacity: 1;
  position: relative;
  z-index: 2;
}
.index .kvArea .catch01 .inner {
  overflow: hidden;
  position: relative;
  display: inline-block;
}
.index .kvArea .catch01 .inner::before {
  animation: catch01-inner 1s cubic-bezier(0.4, 0, 0.2, 1) forwards;
  background: #000;
  content: '';
  inset: 0;
  pointer-events: none;
  position: absolute;
  z-index: 1;
}
@keyframes catch01-inner {
  25% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(100%);
  }
}
.index .kvArea .catch02 {
  position: relative;
  z-index: 2;
  opacity: 0;
  width: 80%;
  margin: 0 auto;
  padding-bottom: 100px;
}
.fade_catch {
  opacity: 1 !important;
  transition: 3s;
}
.index .kvArea.fadeOut::before {
  opacity: .6;
}
.index .kvArea.fadeOut .catch01 {
  opacity: .4 !important;
  transition: all 2s;
}
.index .kvArea.fadeOut .catch02 {
  opacity: 1 !important;
  transition: all 2s;
}
/*.index .kvArea.fadeOut .catch02 {
  animation-name: fedeUp;
  animation-duration: 2s; 
  animation-fill-mode: forwards;
}
@keyframes fedeUp {
  0% {
    opacity: 0;
    transform: translateY(100px);
  }
  100% {
    opacity:1;
    transform: translateY(-100px);
  } 
}*/

.index .kvArea #myvideo {
  max-width: 100%;
}
.index .kvArea .inner {
  overflow: hidden;
  position: relative;
}
/*
.index .kvArea .kvTit {
  font-size: 5rem;
  letter-spacing: 0.1em;
  line-height: 2.2;
  top: calc( 50% - 13px );
  left: 209px;
  transform: translateY(-50%);
  color: #0068bf;
  position: absolute;
}
*/
.index .kvArea .kvSlideBox {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
.index .kvArea .kvSlideBox * {
  height: 100%;
}
.index .kvArea .kvSlideBox .item2 {
  background: url(../img/index/img_kv_2_pc.jpg)center / cover no-repeat;
}
.index .kvArea .kvSlideBox .item3 {
  background: url(../img/index/img_kv_3_pc.jpg)center / cover no-repeat;
}
.index .kvArea .kvSlideBox .item4 {
  background: url(../img/index/img_kv_4_pc.jpg)center / cover no-repeat;
}
.index .kvArea .kvSlideBox .item5 {
  background: url(../img/index/img_kv_5_pc.jpg)center / cover no-repeat;
}
.index .kvArea .kvSlideBox .item6 {
  background: url(../img/index/img_kv_6_pc.jpg)center / cover no-repeat;
}
.index .kvArea .kvSlideBox .item7 {
  background: url(../img/index/img_kv_7_pc.jpg)center / cover no-repeat;
}
.index .kvArea .button-youtube {
  position: absolute;
  left: 20px;
  right: 20px;
  bottom: 114px;
  font-size: 12px;
  width: calc( 100% - 40px );
  max-width: 930px;
  margin: 0 auto;
}
.index .kvArea .button-youtube a {
    color: #ffffff;
    font-weight: normal;
    padding: 10px 55px 10px 15px;
    display: block;
    text-align: left;
    background: url(../img/index/arrow_orange.png) right 20px center no-repeat #d47057;
    background-size: 30px 8px;
    background-color: #d47057;
    border: 1px solid #d47057;
}
.index .kvArea .button-youtube a:hover {
    background-image: url(../img/index/arrow_orange_hover.png);
    background-color: #ffffff;
    color: #d47057;
    opacity: 1;
}

@media screen and (max-width: 1219px) {
  .index .kvArea {
    min-width: auto;
  }
  .index .kvArea .kvText {
    font-size: 2rem;
    width: 700px;
  }
  .index .kvArea .kvTit {
    top: calc( 50% - 70px );
    left: 70px;
  }
  .index .kvArea .button-youtube {
    position: absolute;
    /*left: 47px;
    right: 47px;*/
    bottom: 232px;
    font-size: 14px;
    width: calc( 100% - 40px );
    max-width: 930px;
    margin: 0 auto;
  }
}
@media screen and (max-width: 768px) {
  .index .kvArea {
    min-width: auto;
    position: relative;
    /*height: 100vh;
    max-height: 600px;*/
    min-height: 290vw;
  }
  .fade_catch {
    opacity: 1 !important;
    transition: 1s;
  }
  .index .kvArea::before {
/*    height: 100%;*/
/*    height: 150vw;*/
    height: 190vw;
  }
  .index .kvArea .catch01 {
    height: auto;
    display: block;
    padding-top: 80vw;
  }
  .index .kvArea.fadeOut .catch01 {
    /*height: 50%;
    top: 30%;*/
/*    transition: all 1s;*/
  }
  .index .kvArea .catch02 {
    width: 100%;
    padding-bottom: 0;
    padding-top: 90vw;
  }
  .index .kvArea .kvTit {
    font-size: 2.3rem;
    top: calc( 50% - 56px );
    left: 6px;
    letter-spacing: 0;
    line-height: 2.065217391;
  }
  .index .kvArea .kvSlideBox .item2 {
    background: url(../img/index/img_kv_2_sp.jpg)center / cover no-repeat;
  }
  .index .kvArea .kvSlideBox .item3 {
    background: url(../img/index/img_kv_3_sp.jpg)center / cover no-repeat;
  }
  .index .kvArea .kvSlideBox .item4 {
    background: url(../img/index/img_kv_4_sp.jpg)center / cover no-repeat;
  }
  .index .kvArea .kvSlideBox .item5 {
    background: url(../img/index/img_kv_5_sp.jpg)center / cover no-repeat;
  }
  .index .kvArea .kvSlideBox .item6 {
    background: url(../img/index/img_kv_6_sp.jpg)center / cover no-repeat;
  }
  .index .kvArea .kvSlideBox .item7 {
    background: url(../img/index/img_kv_7_sp.jpg)center / cover no-repeat;
  }
  .index .kvArea .button-youtube {
    position: absolute;
    left: 20px;
    right: 20px;
    bottom: 114px;
  }
}
@media screen and (max-width: 420px) {
  .index .kvArea .kvText {
    font-size: 1.2rem;
    width: 336px;
    letter-spacing: 0.1em;
  }
}
@media screen and (max-width: 340px) {
  .index .kvArea .kvText {
    font-size: 1.1rem;
    width: 308px;
  }
}
@media screen and (max-width: 330px) {
  .index .kvArea .button-youtube {
    font-size: 11px;
  }
}
/* IE対策 */
@media all and (-ms-high-contrast:none) {
  .entryBtn a {
    padding: 10px 52px 5px 29px;
  }
}
/* コンテンツ共通 */
.index .secBox {
  background: #FFF;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  box-shadow: 0 0 2px rgba(0,0,0,.2);
  position: relative;
}
.index .tit {
  color: #4e575c;
  font-size: 3.6rem;
  font-weight: bold;
  line-height: 1.56;
  letter-spacing: 0.025em;
}
.section .titBox {
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
}
.index .titBox {
  margin-bottom: 9px;
}
.index .titBox .tit {
  color: #000;
}
.section .lead {
  text-align: center;
  font-size: 1.8rem;
  letter-spacing: 0.03em;
  margin-top: 19px;
}
.index .numbering {
  font-size: 1.6rem;
  font-family: Arial;
  color: #0068bf;
  position: relative;
  display: inline-block;
  font-weight: bold;
  letter-spacing: 0.1em;
}
.index .numbering:after {
  content: '';
  width: 25px;
  height: 2px;
  display: block;
  background: #0068bf;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}

@media screen and (max-width: 768px) {
 .section {
   min-width: auto;
 }
 .index .tit {
   font-size: 1.8rem;
   line-height: 1.5;
 }
}

/* アバウト */
.index .section.service {
  width: 100%;
  background: url(../img/index/bg_service.jpg)center / cover no-repeat;
  padding-top: 80px;
  position: relative;
  z-index: 2;
}
.index .section.service {
  
}
.index .section.service .wrapSecBox {
  background: #fff;
  width: 994px;
  width: 924px;
  margin: 0 auto 85px;
/*  padding: 62px 85px 85px;*/
  padding: 60px;
}
.index .section.service .secBox.one {
  flex-direction: row;
  box-shadow: none;
}
.index .secBox.one .numbering {
  margin-top: 5px;
  display: none;
}
.index .secBox.one .txtBox {
  margin-left: 50px;
  margin-left: 0;
}
.index .secBox.one .txt {
  color: #4e575c;
  font-size: 2.0rem;
  line-height: 2.4;
  letter-spacing: 0.03em;
  display: inline-block;
  margin: 0 0 2em 0;
}
.index .secBox.one .txtBox .txt:last-child {
  margin-bottom: 0;
}
.index .secBox.one .txtLarge {
  font-size: 3rem;
  font-weight: bold;
  display: block;
  margin-top: 1.5em;
  line-height: 1;
}
.index .wrapVideo {
/*  margin-top: 50px;*/
  margin-top: 0;
  text-align: center;
}
.index .wrapVideo .youtube {
  width: 100%;
  /*padding-bottom: 56.25%;*/
  padding-bottom: 56.2%;
  height: 0px;
  position: relative;
}
.index .wrapVideo iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.index .section.service .button-youtube02 {
  /*position: absolute;
  left: 20px;
  right: 20px;
  bottom: 114px;
  font-size: 12px;
  width: calc( 100% - 40px );
  max-width: 930px;
  margin: 0 auto;*/
  /*max-width: 930px;*/
  /*margin: 0 auto;*/
  position: absolute;
  right: 20px;
  top: -57px;
}
.index .section.service .button-youtube02 a {
  color: #FFF;
  background: #ff4184;
  font-size: 16px;
  font-weight: bold;
  padding: 15px;
  border-radius: 15px;
  position: relative;
  padding-right: 65px;
}
.index .section.service .button-youtube02 a:hover {
  opacity: 0.8;
}
.index .section.service .button-youtube02 a::before {
  content: '';
  width: 50px;
  height: 50px;
  background: #ffffff;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  right: 10px;
  margin-top: -25px;
}
.index .section.service .button-youtube02 a::after {
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 10px 0 10px 15px;
  border-color: transparent transparent transparent #ff4184;
  position: absolute;
  top: 50%;
  right: 26px;
  margin-top: -10px;
}
.index .section.service .flexWrap {
  align-items: flex-end;
  justify-content: space-between;
}

.index .serviceList {
  max-width: 612px;
  display: flex;
  justify-content: space-between;
  flex-shrink: 0;
  flex-wrap: wrap;
  font-weight: bold;
  color: #FFF;
  margin: 100px 0 0 65px;
}
.serviceList li {
  width: 270px;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: 85px;
}
.serviceList li a {
  color: #FFF;
  transition: .3s;
}
.serviceList li a:hover {
  opacity: .6;
}
.serviceList li:nth-child(2n) {
  /*margin-left: 72px;*/
}
.serviceList .img {
  text-align: center;
}
.serviceList .tit {
  color: #fff;
  font-size: 1.6rem;
  margin-top: 35px;
  letter-spacing: 0.1em;
  text-align: center;
}
.serviceList .txt {
  font-size: 1.5rem;
  line-height: 1.6;
  font-family: '小塚ゴシック Pro','Kozuka Gothic Pro',sans-serif;
  font-weight: 400;
  letter-spacing: 0.1em;
  margin: 12px 0 0 10px;
  white-space: pre-wrap;
  width: 100%;
}
.index .secBox.two {
  width: 720px;
  height: 410px;
  padding: 62px 85px;
  margin: 0px 0 85px;
}
.index .secBox.two .numbering {
  margin-left: 5px;
  display: none;
}
.index .secBox.two .tit {
  margin-top: 11px;
}
.index .secBox.two .txt {
  margin-top: 41px;
  font-size: 1.5rem;
}
.index .secBox.two .btn {
  right: 20px;
  bottom: -40px;
  position: absolute;
}
@media screen and (max-width: 1219px) {
  .index .section.service {
    padding-top: 100px;
  }
  .index .section.service .wrapSecBox {
    width: calc( 100% - 40px );
    max-width: 930px;
    margin: 0 auto 80px;
    padding: 60px 40px 45px 50px;
  }
  .index .section.service .secBox.one {
    /*top: 0;
    left: 0;
    width: calc( 100% - 40px );
    max-width: 930px;
    padding: 60px 40px 45px 50px;
    position: relative;
    min-height: auto;*/
  }
  .index .secBox.one .txt {
    font-size: 1.8rem;
  }
  .index .section.service .button-youtube02 {
    top: -152px;
  }
  .index .section.service .flexWrap {
    flex-direction: column;
    align-items: center;
  }
  /*
  .index .section.service .secBox.one {
    top: 0;
    left: 0;
    width: calc( 100% - 40px );
    max-width: 930px;
    margin: -271px auto 110px;
    padding: 85px 40px 85px 50px;
    position: relative;
    min-height: auto;
  }
  */
  .index .serviceList {
    max-width: 1078px;
    width: calc( 100% - 80px );
    margin-left: 0;
    margin-top: 0;
  }
  .index .serviceList a {
    width: 100%;
  }
  .serviceList li {
    width: calc( 100% / 3 - 30px );
  }
  .serviceList .tit {
    height: 3em;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .secBox.one .txtBox {
    margin-left: 35px;
  }
}
@media screen and (max-width: 768px) {
  .index .section.service {
    min-height: auto;
    padding: 50px 0;
  }
  .index .section.service .wrapSecBox {
    width: 100%;
    margin: 0 auto 50px;
    padding: 20px;
  }
  /*.index .secBox .txt {
    font-size: 1.2rem;
    line-height: 2;
  }*/
  .index .secBox.one .txt {
    font-size: 1.5rem;
  }
  .index .secBox.one .txtLarge {
    font-size: 2rem;
    line-height: 1.5;
  }
  .index .wrapVideo {
/*    margin-top: 30px;*/
    text-align: center;
  }
  .index .numbering:after {
    height: 1px;
    bottom: 1px;
  }
  .index .section.service .button-youtube02 {
    right: 0;
    top: -152px;
    width: 100%;
  }
  .index .section.service .button-youtube02 a {
    font-size: 14px;
    padding-right: 35px;
    width: 100%;
  }
  .index .section.service .button-youtube02 a::before {
    content: '';
    width: 30px;
    height: 30px;
    background: #ffffff;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    right: 10px;
    margin-top: -15px;
  }
  .index .section.service .button-youtube02 a::after {
    border-width: 8px 0 8px 12px;
    right: 17px;
    margin-top: -8px;
  }

  .index .section.service .secBox.one {
    flex-direction: column;
  }
  .index .section.service .secBox.one .numbering {
    margin-top: 0;
    margin-bottom: 1em;
  }
  .index .section.service .secBox.one .txtBox {
    margin-left: 0;
  }
  .index .secBox.one .tit {
    margin-top: 18px;
  }
  .secBox.one .txt {
    margin: 22px 0 0 2px;
  }
  .index .section.service .flexWrap {
    flex-direction: column;
  }
  .index .serviceList {
    width: 100%;
    margin: 4px auto 21px ;
  }
  .serviceList li {
    width: calc( 50% - 16px );
    margin-bottom: 36px;
  }
  .serviceList li:nth-child(2n) {
    margin-left: 32px;
  }
  .serviceList li .img {
    width: 60px;
    height: 60px;
    margin: 0 auto;
  }
  .serviceList li .img img {
    width: 100%;
  }
  .serviceList .tit {
    font-size: 1.5rem;
    text-align: center;
    line-height: 1.07;
    min-height: 3em;
    display: flex;
    align-items: center;
    margin-top: 10px;
  }
  .serviceList .txt {
    margin: 3px 0 0;
    font-size: 1.2rem;
  }
  .index .secBox.two {
    width: 100%;
    height: auto;
    margin: 0;
    padding: 18px 18px 30px;
  }
  .index .secBox.two .tit {
    margin: 18px 0 0 12px;
  }
  .index .secBox.two .txt {
    margin: 17px 0 0 12px;
  }
  .index .secBox.two .btn {
    position: relative;
    margin-top: 34px;
    right: 0;
    bottom: 0;
  }
}
@media screen and (max-width: 350px) {
  .index .section.service .button-youtube02 {
    top: -146px;
  }
  .index .section.service .button-youtube02 a {
    font-size: 12px;
  }
}

/* 社員インタビュー */
.section.interview {
  padding: 117px 0 122px;
  overflow: hidden;
}
.section.interview .titBox .numbering {
  margin: 0 31px 0 29px;
  display: none;
}
.section.interview .btn {
  margin: 105px auto 0;
}
.section.interview .wrapVideo {
  width: 870px;
  margin: 100px auto 0;
}

/* 社員インタビュー　カルーセル */
.interviewListWrap {
  width: calc(100% + 80px);
  margin: 0 -35px;
  display: flex;
  justify-content: center;
}
.interviewList {
  width: 100%;
  letter-spacing: 0.03em;
  margin: 40px 0 0;
  display: flex;
}
.interviewList li {
  padding: 0 35px;
}
.interviewList li a {
  transition: .3s;
}
.interviewList li a:hover {
  opacity: .8;
}
.interviewList li .img {
  margin-bottom: 15px;
}
.interviewList li .division {
  font-size: 1.2rem;
  font-weight: bold;
  letter-spacing: 0.03em;
}
.interviewList li .name {
  font-size: 1.8rem;
}
.interviewList li .joining {
  font-size: 1.2rem;
  font-weight: bold;
  letter-spacing: 0.03em;
  margin-left: -4px;
}
.interviewList img {
  width: 100%;
  height: auto;
}

/* インタビュー　カルーセル　ボタン */
button.slide-arrow {
  width: 60px;
  height:60px;
  outline: none;
  position: absolute;
  transition: .3s;
  top: -137px;
  top: -100px;
  background: transparent;
  border: 1px solid #c5cccc;
  padding: 0;
}
button.slide-arrow span {
  position: relative;
  width: 100%;
  height: 100%;
  display: block;
}
button.slide-arrow span:before {
  content: '';
  width: 7px;
  height: 7px;
  display: block;
  border-bottom: 1px solid #586668;
  border-right: 1px solid #586668;
  position: absolute;
  left: 50%;
  top: 50%;
}
button.slide-arrow:hover {
  background-color: #c5cccc;
}
button.slide-arrow:hover span:before {
  border-color: #fff;
}
button.prev-arrow {
  right: 96px;
}
button.prev-arrow span:before {
  transform: translate(-25%,-50%) rotateZ(135deg);
}
button.next-arrow{
  right: 37px;
}
button.next-arrow span:before {
  transform: translate(-75%,-50%) rotateZ(-45deg);
}
@media screen and (max-width: 1219px) {
  button.slide-arrow {
    top: -74px;
  }
}
@media screen and (max-width: 768px) {
  .section.interview {
    padding: 65px 0 69px;
  }
  .section.interview .inner {
    width: 100%;
  }
  .section.interview .titBox .numbering {
    margin: 0 19px 0 3px;
  }
  .section.interview .lead {
    /* display: none; */
    font-size: 1.5rem;
  }
  .section.interview .wrapVideo {
    width: calc( 100% - 20px );
    margin: 50px auto 0;
  }

  /* インタビュー　カルーセル */
  .interviewListWrap {
    width: 100%;
    margin: 0;
    display: block;
  }
  .interviewList {
    width: 100%;
    padding: 0 0;
    margin-top: 40px;
  }
  .interviewList li {
    width: 285px;
    margin-left: 27px;
    padding: 0;
  }
  .interviewList li a {
   width: 100%;
  }
  .interviewList li .name {
    font-size: 1.5rem;
  }
  .interviewList li .division {
    margin-top: 10px;
  }
  .interviewList .img,
  .interviewList .img img {
    width: 100%;
  }
  .section.interview .btn {
    margin: 50px auto 0;
  }
  /* カルーセル　ボタン */
  button.slide-arrow {
    width: 29px;
    height: 29px;
    top: calc( 50% - 30px );
    background: #FFF;
    border: 1px solid #c5cccc;
    border-radius: 50%;
    box-shadow: 0 0 4px rgba(0,0,0,.2);
    z-index: 50;
    transform: translateY(-50%);
  }
  button.slide-arrow span:before {
    width: 6px;
    height: 6px;
    border-bottom: 2px solid #586668;
    border-right: 2px solid #586668;
  }
  button.prev-arrow {
    left: 18px;
  }
  button.prev-arrow span:before {
    transform: translate(-45%,-50%) rotateZ(135deg);
  }
  button.next-arrow{
    right: 18px;
  }
  button.next-arrow span:before {
    transform: translate(-65%,-50%) rotateZ(-45deg);
  }
}

/* 職種別対談 */
.section.talk {
  background: #f3f3f3;
  padding: 177px 0 143px;
  position: relative;
  overflow: hidden;
}
.section.talk .bgWrap {
  width: 100%;
  max-width: 1600px;
  position: absolute;
  color: #fff;
  white-space: nowrap;
  font-size: 22rem;
  font-weight: bold;
  line-height: 1;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  font-family: 'Noto Sans JP', sans-serif;
}
.section.talk .bgWrap .bgTxt {
  margin: -53px 0 0 -18px;
  letter-spacing: 0.01em;
  -moz-user-select: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.section.talk .bgWrap .bgTxt + .bgTxt {
  margin: -32px 0 0 -769px;
}
.index .secBox.four {
  width: 670px;
  height: 680px;
  padding: 72px 30px 72px 105px;
  margin: 0 0 0 32px;
  flex-shrink: 0;
}
.index .secBox.four .numbering {
  margin-left: 5px;
}
.index .secBox.four .tit {
  margin-top: 39px;
}
.index .secBox.four .txt {
  margin: 11px 0 0 3px;
}
.index .secBox.four .lead {
  font-size: 2.2rem;
  letter-spacing: 0.03em;
  margin-top: 10px;
  text-align: left;
}
.index .secBox.four .btn {
  margin: 203px 0 0 -5px;
}
.index .talk .img {
  margin: 46px 21px 0 -43px;
  max-width: 820px;
  min-width: 564px;
  width: 50vw;
}
.index .talk .img img {
  width: 100%;
}
@media screen and (max-width: 1219px) {
  .section.talk .pcOnly {
    display: block;
  }
  .section.talk .spOnly {
    display: none;
  }
  .section.talk {
    padding-bottom: 100px;
  }
  .section.talk .flexWrap {
    flex-direction: column-reverse;
  }
  .index .talk .img {
    margin: 0;
    max-width: 100%;
    width: 100%;
    min-width: 100%;
    height: auto;
    min-height: 0%;
  }
  .index .talk .img img {
    width: 100%;
    height: auto;
    padding: 0 80px;
  }
  .index .secBox.four {
    margin: -160px auto 0;
    height: auto;
    padding: 60px 70px 70px 105px;
  }
  .index .secBox.four .btn {
    margin-top: 50px;
  }
}
@media screen and (max-width: 768px) {
  .section.talk .pcOnly {
    display: none;
  }
  .section.talk .spOnly {
    display: block;
  }
  .section.talk {
    padding: 0 0 120px 0;
  }
  .section.talk .bgWrap {
    bottom: 0;
    display: flex;
    align-items: flex-end;
    font-size: 11rem;
  }
  .section.talk .bgWrap .bgTxt {
    bottom: 0;
    margin: 0 0 44px -400px;
  }
  .section.talk .flexWrap {
    flex-direction: column-reverse;
  }
  .index .talk .img {
    margin: 0 0 0 -20px;
    max-width: initial;
    width: calc( 100% + 40px );
    display: block;
  }
  .index .talk .img img {
    width: 100%;
    padding: 0;
  }
  .index .secBox.four {
    width: 100%;
    height: auto;
    margin: -55px 0 0;
    padding: 18px 17px 30px 17px;
  }
  .index .secBox.four .txtBox {
    padding: 0 13px;
  }
  .index .secBox.four .tit {
    margin: 18px 0 0 0;
  }
  .index .secBox.four .txt {
    font-size: 1rem;
    margin: 19px 0 0 1px;
  }
  .index .secBox.four .lead {
    font-size: 1.6rem;
    margin-top: 0;
  }
  .index .secBox.four .btn {
    margin: 31px 0 0;
  }
}

/* 千修について */
.section.about {
  overflow: hidden;
}
.aboutListWrap {
  width: calc(100% + 70px);
  margin: 0 -35px;
  display: flex;
  justify-content: center;
}
.section.about {
  padding: 118px 0 122px;
}
.section.about .titBox .numbering {
  margin: -6px 30px 0 -44px;
  display: none;
}
.index .aboutList {
  width: 100%;
  margin: 81px 0 0;
  display: flex;
}
.index .aboutList li {
  padding: 0 35px;
}
.index .aboutList li a {
  font-size: 1.8rem;
  color: #4e575c;
  font-family: 'Noto Sans JP', sans-serif;
  text-align: center;
  transition: .3s;
}
.index .aboutList li a:hover {
  opacity: .8;
}
.index .aboutList .txt {
  margin-top: 32px;
}
.index .aboutList img {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 768px) {
  .section.about .inner {
    width: 100%;
  }
  .section.about {
    padding: 66px 0 63px;
  }
  .section.about .titBox .numbering {
    margin: 0px 21px 0 -4px;
  }
  .section.about .lead {
    display: none;
  }
  .aboutListWrap {
    width: 100%;
    margin: 0;
    display: block;
  }
  .index .aboutList {
    margin: 40px 0;
    padding: 0;
    position: relative;
  }
  .index .aboutList li {
    width: 285px;
    margin-left: 30px;
    padding: 0;
  }
  .index .aboutList li + li {
    margin-left: 30px;
  }
  .index .aboutList li a {
   width: 100%;
  }
  .index .aboutList li .txt {
    font-size: 1.5rem;
    margin-top: 20px;
  }
  .index .aboutList .img,
  .index .aboutList .img img {
    width: 100%;
  }
  .index .aboutList button.slide-arrow {
    top: calc( 50% - 23px );

  }
}

/* YouTube */
.section.movie {
  overflow: hidden;
}
.section.movie {
  padding: 50px 0 60px;
}
.section.movie .inner {
  width: 978px;
  min-width: 978px;
}
@media screen and (max-width: 768px) {
  .section.movie {
    padding: 0;
  }
  .section.movie .inner {
    width: calc(100% - 20px);
    min-width: calc(100% - 20px);
  }
}

/* よくある質問 */
.section.faq {
  background: #f3f3f3;
  padding: 118px 0 155px;
}
.section.faq .titBox .numbering {
  margin: -6px 30px 0 -22px;
  display: none;
}
.faqList {
  margin-top: 59px;
  font-size: 2.4rem;
  color: #0058b3;
  display: flex;
  flex-direction: column;
}
.faqList li {
  border-top: 2px solid #e1ded8;
}
.faqList li:last-child {
  border-bottom: 2px solid #e1ded8;
}
.faqList a {
  font-size: 2.4rem;
  color: #0058b3;
  padding: 30px 143px 28px;
  position: relative;
  width: 100%;
  transition: .3s;
}
.faqList a:hover {
  opacity: .7;
}
.faqList a:before {
  content: '';
  width: 20px;
  height: 29px;
  background: url(../img/index/ico_question.png)center / cover no-repeat;
  display: block;
  position: absolute;
  left: 92px;
  top: 50%;
  transform: translateY(-50%);
}
.faqList a:after {
  content: '';
  width: 3px;
  height: 3px;
  background: #0058b3;
  display: block;
  position: absolute;
  left: 115px;
  top: calc( 50% + 11px );
  transform: translateY(-50%);
  border-radius: 7px;
}
@media screen and (max-width: 1219px) {
  .faqList {
    padding-right: 40px;
    padding-left: 40px;
  }
}
@media screen and (max-width: 768px) {
  .section.faq {
    padding: 67px 0;
  }
  .section.faq .inner {
    width: 100%;
  }
  .section.faq .titBox .numbering {
    margin: -7px 18px 0 -4px;
  }
  .faqList {
    flex-direction: row;
    margin-top: 42px;
    padding: 0;
    overflow-x: scroll;
  }
  .faqList li {
    width: 200px;
    min-height: 200px;
    border: none;
    flex: 0 0 auto;
  }
  .faqList li:first-child {
    margin-left: 20px;
  }
  .faqList li:last-child {
    padding-right: 20px;
    box-sizing: content-box;
    border-bottom: none;
  }
  .faqList li + li {
    margin-left: 14px;
  }
  .faqList li a{
    width: 100%;
    height: 100%;
    padding: 73px 30px 15px;
    font-size: 1.6rem;
    line-height: 1.5;
    border: 1px solid #e1ded8;
  }
  .faqList li a .arrow {
    display: none;
  }
  .faqList a:before {
    width: 17px;
    height: 26px;
    top: 25px;
    transform: none;
  }
  .faqList a:after {
    content: normal;
  }
}

/* お知らせ */
.section.news {
  padding: 107px 0 180px;
}
.section.news .titBox .numbering {
  margin: -6px 30px 0 9px;
  display: none;
}
.newsList {
  font-size: 1.5rem;
  margin: 61px 0 0;
}
.newsList li {
  display: flex;
  font-family: 'Noto Sans JP', sans-serif;
  position: relative;
  border-top: 2px solid #e1ded8;
  padding: 0 45px;
}
.newsList li:last-child {
  border-bottom: 2px solid #e1ded8;
}
.newsList .dateBox {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
}
.newsList .date {
  color: #4e575c;
  font-weight: bold;
  line-height: 0;
  letter-spacing: 0.04em;
}
.newsList .category {
  font-size: 1.1rem;
  color: #FFF;
  background: #0068bf;
  display: block;
  padding: 1px 7px;
  font-weight: bold;
  margin-top: 23px;
}
.newsList li .txt {
  padding: 68px 0 66px;
  width: 100%;
  margin-left: 71px;
  letter-spacing: 0.03em;
}
.newsList li .txt a {
  text-decoration: underline;
}
.newsList li .txt a:hover {
  text-decoration: none;
}
.newsList li a:hover {
  opacity: .7;
}
.section.news .btn {
  margin: 99px auto 0;
}
@media screen and (max-width: 1219px) {
  .newsList {
    padding-right: 40px;
    padding-left: 40px;
  }
}
@media screen and (max-width: 768px){
  .section.news {
      padding: 67px 0 68px;
  }
  .section.news .titBox .numbering {
    margin: -6px 32px 0 -6px;
  }
  .index .newsList {
    margin: 42px 0 0;
    padding: 0;
  }
  .newsList li {
    flex-direction: column;
    padding: 0;
    border-top: 1px solid #e1ded8;
    padding: 18px 0 19px;
  }
  .newsList li .txt {
    padding: 10px 0 0;
    margin-left: 0;
  }
  .newsList li:last-child {
    border-bottom: 1px solid #e1ded8;
  }
  .newsList .dateBox {
    flex-direction: row;
    justify-content: flex-start;
    margin-left: 3px;
  }
  .newsList .date {
    line-height: 1;
    font-size: 1.2rem;
  }
  .newsList .category {
    margin: 0 0 0 10px;
    font-size: 1rem;
    padding: 3px 5px;
    line-height: 1;
  }
  .newsList li a .arrow {
    display: none;;
  }
  .section.news .btn {
    margin: 49px auto 0;
  }
}

.js-slider {
  display: none;
}
.js-slider.slick-initialized {
  display: block;
}

/* IE対策 */
@media all and (-ms-high-contrast:none) {
  .index .numbering {
   transform: translateY(-10px);
  }
  .interviewList li .tag {
    line-height: 1;
    padding: 6px 14px 1px;
  }
}

/* ===========================================
インタビュー
=========================================== */
/*共通*/
.listBox {
  padding: 0 6px 0 4px;
  display: flex;
}
.listBox .item + .item {
  margin-left: 70px;
}
.listBox .item a {
  transition: .3s;
  font-family: 'Noto Sans JP', sans-serif;
  letter-spacing: 0.025em;
}
.listBox .item a:hover {
  opacity: 0.8;
}
.listBox .item img {
  margin-bottom: 24px;
}
.listBox .item .tit {
  margin-bottom: 22px;
  font-size: 1.8rem;
}
.listBox .item .tit span {
  margin-bottom: 8px;
  font-size: 1.2rem;
  display: block;
}
.listBox .item .tagList {
  display: flex;
}
.listBox .item .tagList li {
  height: 24px;
  padding: 0 16px;
  font-size: 1.2rem;
  border-radius: 12px;
  background-color: #f5f5f5;
  display: flex;
  justify-content: center;
  align-items: center;
}
.listBox .item .tagList li + li {
  margin-left: 8px;
}

/*個別ページ*/
.interview {
  color: #4e575c;
  background-color: #fff;
}
.interview .kvArea {
  position: relative;
  z-index: 1;
}
.interview .kvArea .txtBox {
  min-width: 640px;
  margin-left: -693px;
  padding: 54px 83px 55px 87px;
  background-color: #25282a;
  position: absolute;
  bottom: 10%;
  left: 50%;
  z-index: 10;
}
.interview .kvArea .txtBox .txt {
  margin-bottom: 60px;
  color: #fff;
  font-size: 3.6rem;
  letter-spacing: .025em;
  line-height: 2.222222222;
}
.interview .kvArea .txtBox .tit {
  color: #fff;
  font-size: 2rem;
  text-align: right;
}
.interview .kvArea .txtBox .tit span {
  font-size: 3rem;
}
.interview .kvArea .img img {
  width: 100%;
  height: auto;
}
.interview .contents {
  padding-top: 152px;
  padding-bottom: 92px;
  position: relative;
  border-top: 24px solid #f3f3f3;
  overflow: hidden;
}
.interview .contents .inner {
  max-width: 1500px;
  min-width: 1200px;
  margin: 0 auto;
}
.interview .contents .interviewTxt {
  position: absolute;
  top: -56px;
  left: 15%;
  /*left: 50%;
  transform: translateX(-82%);*/
  pointer-events: none;
}
.leadArea {
  margin-bottom: 180px;
}
.leadArea .leadSection {
  margin-top: 174px;
  display: flex;
  justify-content: space-between;
}
.leadArea .leadSection:nth-of-type(even) {
  flex-direction: row-reverse;
}
.leadArea .leadSection:first-of-type {
  margin-top: 0;
}
.leadArea .leadSection .txtBox {
  width: 553px;
  min-width: 500px;
  width: 40%;
  margin: 13px 0 0 5vw;
  flex-shrink: 0;
}
.leadArea .leadSection .img  {
  width: 74%;
  min-width: 500px;
  max-width: 700px;
  margin-left: 70px;
  height: 100%;
}
.leadArea .leadSection .img img {
  width: 100%;
  height: auto;
}
.leadArea .leadSection:nth-of-type(even) .txtBox  {
  margin: -12px 72px 0 72px;
}
.leadArea .leadSection:nth-of-type(even) .img  {
  margin-left: 45px;
  max-width: 600px;
}
.leadArea .leadSection .tit {
  margin-bottom: 36px;
  font-size: 3.6rem;
  font-weight: bold;
  line-height: 1.5;
  letter-spacing: 0.025em;
  white-space: nowrap;
}
.leadArea .leadSection .tit span {
  margin-left: 8px;
  padding: 0 1px 5px 4px;
  margin-bottom: 9px;
  color: #0068bf;
  font-size: 1.6rem;
  font-weight: bold;
  font-family: Arial;
  line-height: 1;
  border-bottom: 2px solid #0068bf;
  display: inline-block;
}
.leadArea .leadSection .txt {
  font-size: 1.6rem;
  line-height: 2.25;
  letter-spacing: 0.025em;
}
.messageArea {
  margin-bottom: 140px;
}
.messageArea .tit {
  margin-bottom: 36px;
}
.messageArea .titBox .lead {
  padding: 0 200px;
  line-height: 2.25;
}
.holidayArea  {
  margin-bottom: 205px;
}
.holidayArea .flexWrap {
  display: flex;
  justify-content: space-between;
  padding: 0 200px;
  align-items: flex-start;
}
.holidayArea .txtBox {
  min-width: 450px;
}
.holidayArea .img {
  margin: 10px 0 0 50px;
  max-width: 320px;
}
.holidayArea .tit {
  margin-bottom: 36px;
}
.holidayArea .txt {
  font-size: 1.8rem;
  line-height: 2.25;
  letter-spacing: 0.025em;
}
.interview .btnWrap {
  display: flex;
  justify-content: center;
  margin: 80px 0 150px;
}
.interview .btnWrap .btn + .btn {
  margin-left: 66px;
}
.interview .btnWrap .btn {
  min-height: 80px;
  position: relative;
}
.interviewArea {
  margin-bottom: 205px;
}
.interviewArea .titBox {
  margin-bottom: 0;
}
.interviewArea .lead {
  text-align: center;
}
.interviewArea .listBox {
  position: relative;
}
.interviewArea .listBoxWrap .navBtnWrap {
  display: flex;
  position: absolute;
  right: 2px;
  top: -137px;
  border: 1px solid #c5cccc;
}
.interviewArea .listBoxWrap .navBtnWrap:before {
  content: "";
  width: 1px;
  height: 100%;
  background-color: #c5cccc;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
.interviewArea .listBoxWrap .navBtnWrap li {
  width: 58px;
}
.interviewArea .listBoxWrap .navBtnWrap a {
  width: 100%;
  height: 58px;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  transition: .3s;
}
.interviewArea .btn {
  width: 330px;
  height: 70px;
  margin: 105px auto 0;
  position: relative;
  transition: .3s;
}
.interviewArea .btn a {
  width: 100%;
  height: 100%;
  padding: 1px 35px 0 0;
  color: #0068bf;
  font-size: 1.4rem;
  letter-spacing: 0.025em;
  border: 1px solid #0068bf;
  display: flex;
  justify-content: center;
  align-items: center;
}
.talkArea .inner {
  overflow: hidden;
}
.talkArea .titBox {
  margin-bottom: 40px;
}
.talkArea .lead {
  text-align: center;
}
.talkArea .listBox {
  width: 100%;
  margin: 0 0 0;
  padding: 0;
}
.talkArea .listBox .item .tit span {
  margin-bottom: 0;;
}
.talkArea .listBox .item {
  max-width: 347px;
  padding: 0 35px;
}
.talkArea .listBox .item + .item {
  margin-left: 0;
}
.talkListWrap {
  width: calc( 100% + 70px );
  margin: 0 -35px;
  display: flex;
  justify-content: center;
}
.talkArea .listBox .img img {
  width: 100%;
  height: auto;
  margin-bottom: 15px;
}
.talkArea .listBox .tit span {
  font-size: 1.2rem;
  font-weight: bold;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 1219px){
  .interview .kvArea .pcOnly {
    display: block;
  }
  .interview .kvArea .spOnly {
    display: none;
  }
  .interview .kvArea .txtBox {
    min-width: 400px;
    margin-left: -410px;
    padding: 24px 30px;
  }
  .interview .kvArea .txtBox .txt {
    font-size: 2.6rem;
    margin-bottom: 40px;
  }
  .interview .kvArea .txtBox .tit {
    font-size: 1.4rem;
  }
  .interview .kvArea .txtBox .tit span {
    font-size: 2rem;
  }
  .interview .contents .inner {
    max-width: 100%;
    min-width: 0;
    padding-left: 40px;
    padding-right: 40px;
  }
  .interview .contents .interviewTxt {
    width: 100%;
    position: absolute;
    top: -45px;
    left: 0;
    transform: none;
  }
  .interview .contents .interviewTxt img {
    width: 100%;
    height: auto;
  }
  .leadArea .leadSection,
  .leadArea .leadSection:nth-of-type(even) {
    margin-top: 100px;
    flex-direction: column;
  }
  .leadArea .leadSection .txtBox,
  .leadArea .leadSection:nth-of-type(even) .txtBox{
    width: 100%;
    margin: 13px 0 0 0;
  }
  .leadArea .leadSection .img,
  .leadArea .leadSection:nth-of-type(even) .img {
    margin: 70px auto 0;
  }
  .messageArea .titBox .lead {
    padding: 0 0;
  }
  .holidayArea .titBox {
    margin-bottom: 0;
  }
  .holidayArea .flexWrap {
    padding: 0;
  }
  .holidayArea .txtBox {
    width: calc(100% - 370px);
    min-width: auto;
  }
  .holidayArea .img img {
    width: 100%;
    height: auto;
  }
  .holidayArea .txt {
    line-height: 1.625;
  }
  .talkArea .listBox .item {
    max-width: 50%;
  }
}
@media screen and (max-width: 768px) {
  .interview .kvArea .pcOnly {
    display: none;
  }
  .interview .kvArea .spOnly {
    display: block;
  }
  .interview .contents .inner {
    min-width: auto;
    padding-left: 0;
    padding-right: 0;
  }
  .interview .kvArea {
    min-width: auto;
    min-height: 500px;
    overflow: hidden;
    position: relative;
  }
  .interview .kvArea .txtBox {
    width: calc( 100% - 40px );
    min-width: auto;
    top: auto;
    bottom: 20px;
    left: 50%;
    margin-left: 0;
    padding: 22px 20px;
    transform: translateX(-50%);
  }
  .interview .kvArea .txtBox .txt {
    font-size: 1.8rem;
    margin-bottom: 19px;
  }
  .interview .kvArea .txtBox .tit {
    font-size: 1.4rem;
  }
  .interview .kvArea .txtBox .tit span {
    font-size: 1.8rem;
  }
  .interview .contents {
    padding-top: 66px;
    border-top: 10px solid #f3f3f3;
  }
  .interview .contents .inner {
    width: calc( 100% - 40px );
    max-width: 100%;
    min-width: 0;
  }
  .interview .contents .interviewTxt {
    width: 100%;
    top: -23px;
  }
  .interview .contents .interviewTxt img {
    width: 100%;
    height: auto;
  }
  .leadArea {
    margin-bottom: 52px;
  }
  .leadArea .leadSection,
  .leadArea .leadSection:nth-of-type(even) {
    margin-top: 38px;
    flex-direction: column;
  }
  .leadArea .leadSection .tit span {
    font-size: 1.6rem;
    margin-left: -5px;
    margin-bottom: 14px;
    border-bottom: 1px solid #0068bf;
  }
  .leadArea .leadSection .txtBox {
    margin: 0;
    min-width: auto;
    width: 100%;
  }
  .leadArea .leadSection .tit {
    font-size: 2rem;
    margin-left: 7px;
    line-height: 1.4;
    margin-bottom: 21px;
  }
  .leadArea .leadSection .txt {
    line-height: 1.625;
  }
  .leadArea .leadSection:nth-of-type(even) .img,
  .leadArea .leadSection .img {
    width: 100%;
    min-width: auto;
    max-width: 100%;
    margin-left: 0;
    margin-top: 26px;
  }
  .leadArea .leadSection:nth-of-type(even) .txtBox {
    margin: 0;
  }
  .messageArea {
    margin-bottom: 48px;
  }
  .messageArea .tit {
    font-size: 2rem;
    margin-bottom: 14px;
  }
  .messageArea .titBox {
    margin-bottom: 0;
  }
  .messageArea .titBox .lead {
    margin-top: 16px;
    font-size: 1.6rem;
    padding: 0;
    line-height: 1.625;
  }
  .holidayArea {
    margin-bottom: 55px;
  }
  .holidayArea .titBox {
    margin-bottom: 0;
  }
  .holidayArea .tit {
    font-size: 2rem;
    text-align: center;
    margin-bottom: 24px;
  }
  .holidayArea .txtBox {
    width: 100%;
    min-width: auto;
    padding: 0;
  }
  .holidayArea .flexWrap {
    flex-direction: column-reverse;
  }
  .holidayArea .txtBox {
    width: 100%;
    min-width: auto;
  }
  .holidayArea .img {
    margin: 0 auto 26px;
    width: calc( 100% - 86px );
    max-width: 320px;
  }
  .holidayArea .img {
    margin: 0 auto 26px;
    width: calc( 100% - 86px );
    max-width: 320px;
    align-items: flex-start;
    height: 100%;
  }
  .holidayArea .img img {
    width: 100%;
    height: auto;
  }
  .holidayArea .txt {
    font-size: 1.6rem;
    line-height: 1.625;
  }
  .interview .btnWrap {
    flex-direction: column;
    align-items: center;
    margin: 46px 0 0;
  }
  .interview .btnWrap li + li {
    margin: 6px 0 0;
  }
  .interview .btnWrap .btn + .btn {
    margin-left: 0;
  }
  .interview .btnWrap a {
    padding: 24px 34px 26px 40px;
    font-size: 1.8rem;
    transition: .3s;
  }
  .interview .btnWrap a:hover {
    opacity: 0.8;
  }
}
@media screen and (max-width: 768px){
  .interviewArea.spOnly {
    margin-bottom: 52px;
  }
  .interviewArea.spOnly .interviewList {
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .interviewArea.spOnly .interviewList li {
    width: calc( 50% - 20px );
    margin-left: 0;
  }
  .interviewArea.spOnly .interviewList li + li {
    margin-left: 0;
  }
  .interviewArea.spOnly  .btn {
    width: 247px;
    height: 54px;
    margin-top: 25px;
  }
  .interviewArea.spOnly .btn a {
    font-size: 1.1rem;
    padding-right: 0;
  }
  .interviewArea.spOnly .btn span.arrow:before {
    right: 14px;
  }
  .interviewArea.spOnly .btn span.arrow:after {
    right: 15px;
  }
  .talkArea.spOnly .listBox {
    margin-top: 21px;
  }
  .talkArea.spOnly .titBox {
    margin-bottom: 0;
  }
  .talkArea.spOnly .titBox .tit {
    font-size: 2rem;
  }
  .talkArea.spOnly .talkListWrap {
   width: 100%;
   margin: 0;
  }
  .talkArea.spOnly .listBox .item {
    padding: 0;
    width: calc( 100% / 2 - 8px );
    margin-left: 0;
  }
  .talkArea.spOnly .listBox .item + .item {
    margin-left: 16px;
  }
  .talkArea.spOnly .listBox .item img {
    margin-bottom: 10px;
  }
  .talkArea.spOnly .listBox .item .tit {
    font-size: 1.5rem;
    margin-bottom: 0;
  }
  .talkArea.spOnly .listBox .item .tit span {
    font-size: 1.1rem;
    margin-bottom: 0;
  }
}
/* ===========================================
中面
=========================================== */
/* パンくず */
.topicPath {
  font-size: 1.2rem;
  display: flex;
  color: #4e575c;
  position: relative;
  margin-left: 2px;
}
.topicPath li {
  position: relative;
  letter-spacing: 0.025em;
}
.topicPath a {
  color: #4e575c;
}
.topicPath li + li {
  padding-left: 31px;
}
.topicPath li + li:before {
  content: '';
  width: 4px;
  height: 1px;
  background: #4e575c;
  display: block;
  position: absolute;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
}
/*中面ページarticle*/
article.inPage {
  padding-top: 125px;
}
.inPageSection {
  width: 960px;
  margin: 0 auto;
  padding-top: 173px;
  padding-bottom: 220px;
}
.inPageSection > .tit {
  color: #0068bf;
  font-size: 6.4rem;
  line-height: 1;
  letter-spacing: 0.025em;
}
.inPageSection > .txt {
  margin-bottom: 44px;
  color: #4e575c;
  font-size: 1.6rem;
  line-height: 1.625;
}
@media screen and (max-width: 1219px) {
  .inPageSection {
    max-width: 960px;
    min-width: 0;
    width: 100%;
    padding-top: 80px;
    padding-right: 40px;
    padding-left: 40px;
  }
}
@media screen and (max-width: 768px) {
  .topicPath {
    margin-left: 0;
    font-size: 1.3rem;
  }
  article.inPage {
    padding-top: 55px;
  }
  .inPageSection {
    width: 100%;
    max-width: 100%;
    min-width: auto;
    padding: 68px 21px 75px;
    margin: 0 auto;
  }
  .inPageSection > .tit {
    font-size: 2.9rem;
  }
}

.barTit {
  padding-left: 26px;
  margin-bottom: 53px;
  font-size: 3.6rem;
  font-weight: bold;
  line-height: 1.5;
  letter-spacing: 0.025em;
  position: relative;
}
.barTit:after {
  content: "";
  width: 5px;
  height: calc(100% - 14px);
  margin-top: 0px;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  background: linear-gradient(to bottom,#2789dd,#356ee3);
}

@media screen and (max-width: 768px) {
  .barTit {
    padding-left: 13px;
    margin-bottom: 31px;
    font-size:2.9rem;
  }
  .barTit:after {
    width: 4px;
    height: calc(100% - 2px);
  }
}

.inPageList {
  border-top: 1px solid #c9c9c9;
}
.inPageList dt {
  padding-top: 32px;
  margin-bottom: 14px;
  font-size: 2.2rem;
  font-weight: bold;
  letter-spacing: 0.025em;
}
.inPageList dt .fontS {
  color: #000;
  font-size: 1.4rem;
  font-weight: normal;
}
.inPageList dd {
  padding-bottom: 34px;
  color: #4e575c;
  font-size: 1.6rem;
  line-height: 1.625;
  letter-spacing: 0.025em;
  border-bottom: 1px solid #c9c9c9;
}
.inPageList .subTit {
  margin-top: 50px;
  margin-bottom: 20px;
  font-weight: bold;
}
.dataList + .dataList {
  margin-top: 50px;
}
.dataList li {
  display: flex;
  color: #4e575c;
  font-size: 1.6rem;
  line-height: 1.625;
  letter-spacing: 0.025em;
}
.dataList li + li {
  margin-top: 40px;
}
.dataList .tit {
  min-width: 175px;
  margin-right: 20px;
  flex-shrink: 0;
}
.dataList a {
  color: #4e575c;
  text-decoration: underline;
}
.dataList a:hover {
  text-decoration: none;
}

@media screen and (max-width: 768px) {
  .inPageList dt {
    padding-top: 30px;
    margin-bottom: 14px;
    font-size: 2rem;
    line-height: 1.35;
  }
  .inPageList dt .fontS {
    display: block;
  }
  .inPageList dd {
    padding-bottom: 39px;
  }
  .inPageList .subTit {
    margin-top: 50px;
    margin-bottom: 20px;
    font-weight: bold;
  }
  .dataList li {
    display: flex;
    flex-direction: column;
  }
  .dataList li + li {
    margin-top: 15px;
  }
  .dataList .tit {
    margin-right: 0;
    font-weight: bold;
  }
  .dataList .txt {
    margin-left: 1em;
  }
}

/* ===========================================
対談
=========================================== */
.headerTalk {
  background-color: rgba(255,255,255,.4);
}
.talk {
  color: #4e575c;
  background-color: #fff;
}
.talk .kvArea {
  position: relative;
  z-index: 1;
}
.talk .kvArea .txtBox {
  min-width: 640px;
  margin-left: -693px;
  padding: 66px 65px 61px 99px;
  background-color: #25282a;
  position: absolute;
  bottom: 13.7%;
  left: 50%;
  z-index: 10;
  font-weight: bold;
}
.talk .kvArea .txtBox .person {
  position: relative;
  padding-left: 46px;
}
.talk .kvArea .txtBox .person + .person {
  margin-top: 43px;
}
.talk .kvArea .txtBox .place {
  color: #fff;
  font-size: 2.2rem;
  font-weight: bold;
  letter-spacing: 0.025em;
  line-height: 1.8182;
  position: absolute;
  top: -1px;
  left: 0;
}
.talk .kvArea .txtBox .position {
  margin-bottom: 12px;
  color: #fff;
  font-size: 2.2rem;
  font-weight: bold;
  letter-spacing: 0.025em;
  line-height: 1.8182;
}
.talk .kvArea .txtBox .name {
  color: #fff;
  font-size: 3rem;
  line-height: 1.2;
  letter-spacing: 0.025em;
}
.talk .kvArea .txtBox .name span {
  font-size: 1.5rem;
}
.talk .kvArea .img img {
  width: 100%;
  height: auto;
}
.talk .contents {
  padding-top: 110px;
  padding-bottom: 92px;
  position: relative;
  border-top: 24px solid #f3f3f3;
  overflow: hidden;
}
.talk .contents .inner {
  width: 960px;
  min-width: 960px;
  margin: 0 auto;
}
.talk .talkArea {
  padding: 0 0 80px 0;
}
.talk .contents .talkTxt {
  position: absolute;
  top: -58px;
  left: -5px;
  pointer-events: none;
}
.talk .contents .talkLead {
  color: #000;
  font-size: 3.6rem;
  font-weight: bold;
  letter-spacing: .025em;
  line-height: 1.5;
  text-align: center;
  margin-bottom: 70px;
}
.talk .talkArea .talkSection .leadTit,
.talk .talkArea .talkSection .messageTit {
  font-size: 3.6rem;
  font-weight: bold;
  color: #4e575c;
  letter-spacing: 0.025em;
  line-height: 1;
  margin-bottom: 59px;
}
.talk .talkArea .talkSection .messageTit {
  color: #000;
  text-align: center;
  padding-top: 14px;
}
.talk .talkArea .talkSection {
  display: block;
}
.talk .talkArea .talkSection + .talkSection {
  margin-top: 75px;
}
.talk .talkArea .talkSection .leadTit span {
  margin-left: 1px;
  padding: 0 1px 5px 4px;
  margin-bottom: 19px;
  color: #0068bf;
  font-size: 1.6rem;
  font-weight: bold;
  font-family: Arial;
  line-height: 1;
  border-bottom: 2px solid #0068bf;
  display: inline-block;
}
.talk .talkSection .flexWrap {
 justify-content: space-around;
}
.talk .talkSection .personWrap {
  width: 500px;
}
.talk .talkSection .remarksBox {
  display: flex;
  margin-top: 47px;
}
.talk .talkSection .remarksBox .person {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.talk .talkSection .remarksBox:first-child {
  margin-top: 0;
}
.talk .talkSection .remarksBox .person .name {
  font-size: 1.6rem;
  color: #216cbc;
  font-weight: bold;
  margin-top: 3px;
}
.talk .talkSection .remarksBox .txt {
  font-size: 1.6rem;
  color: #4e575c;
  margin: 3px 0 0 21px;
  letter-spacing: 0.01em;
  line-height: 1.625;
}
.talk .talkSection .flexWrap .img {
  margin-left: 20px;
}
@media screen and (max-width: 1219px){
  .talk .kvArea .pcOnly {
    display: block;
  }
  .talk .kvArea .spOnly {
    display: none;
  }
  .talk .kvArea .txtBox {
    min-width: 400px;
    margin-left: -410px;
    padding: 24px 30px;
  }
  .talk .kvArea .txtBox .txt {
    font-size: 2.6rem;
    margin-bottom: 40px;
  }
  .talk .kvArea .txtBox .tit {
    font-size: 1.4rem;
  }
  .talk .kvArea .txtBox .tit span {
    font-size: 2rem;
  }
  .talk .contents .inner {
    max-width: 100%;
    min-width: 0;
    padding-left: 40px;
    padding-right: 40px;
  }
  .talk .contents .talkTxt {
    position: absolute;
    height: 200px;
    top: -45px;
    left: 0;
    transform: none;
  }
  .talk .kvArea .txtBox .place {
    font-size: 1.8rem;
  }
  .talk .talkSection .personWrap {
    width: auto;
  }
  .talk .kvArea .txtBox .person {
    padding-left: 40px;
  }
  .talk .contents .talkTxt img {
    height: 100%;
    width: auto;
  }
  .talk .kvArea .txtBox .position {
    font-size: 1.8rem;
  }
  .talk .kvArea .txtBox .name {
    font-size: 2rem;
  }
  .talk .talkSection .remarksBox + .img {
    text-align: center;
    margin-top: 40px;
  }
/*  .talk .talkSection .remarksBox + .img img {
    width: auto;
  }*/
}
@media screen and (max-width: 768px) {
  .talk .kvArea .pcOnly {
    display: none;
  }
  .talk .kvArea .spOnly {
    display: block;
  }
  .talk .contents .inner {
    width: calc( 100% - 40px );
    max-width: 100%;
    min-width: 0;
    padding: 0;
  }
  .talk .kvArea .txtBox {
    padding: 27px 20px 30px;
    transform: translateX(-50%);
    margin-left: 0;
    width: calc( 100% - 40px );
    min-width: auto;
    bottom: 3%;
  }
  .talk .kvArea {
    overflow: hidden;
  }
  .talk .kvArea .txtBox .person + .person {
    margin-top: 22px;
  }
  .talk .kvArea .txtBox .txt {
    font-size: 2.6rem;
    margin-bottom: 40px;
  }
  .talk .kvArea .txtBox .tit {
    font-size: 1.4rem;
  }
  .talk .kvArea .txtBox .tit span {
    font-size: 2rem;
  }
  .talk .contents {
    padding-top: 44px;
    border-top: 10px solid #f3f3f3;
  }
  .talk .contents .inner {
    max-width: 100%;
    min-width: 0;
  }
  .talk .contents .talkTxt {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    transform: none;
  }
  .talk .contents .talkTxt {
    height: 88px;
    top: -22px;
  }
  .talk .contents .talkTxt img {
    height: 100%;
    width: auto;
  }
  .talk .kvArea .txtBox .person {
    padding-left: 30px;
  }
  .talk .kvArea .txtBox .place {
    font-size: 1.4rem;
    line-height: 1.5715;
    top: 0;
  }
  .talk .kvArea .txtBox .position {
    font-size: 1.4rem;
    line-height: 1.5715;
  }
  .talk .kvArea .txtBox .name {
    font-size: 2rem;
    line-height: 1;
  }
  .talk .kvArea .txtBox .name span {
    font-size: 1.3rem;
  }
  .talk .contents .talkLead {
    font-size: 2rem;
    line-height: 1.4;
    margin-bottom: 35px;
  }
  .talk .talkArea .talkSection + .talkSection {
    margin-top: 48px;
  }
  .talk .talkArea .talkSection .leadTit,
  .talk .talkArea .talkSection .messageTit {
    font-size: 2rem;
    margin-bottom: 26px;
  }
  .talk .talkArea .talkSection .leadTit {
    margin-left: 5px;
    line-height: 1.4;
  }
  .talk .talkArea .talkSection .leadTit span {
    margin-left: -5px;
    margin-bottom: 15px;
  }
  .talk .talkSection .flexWrap {
    flex-direction: column;
  }
  .talk .talkSection .remarksBox .person img {
    width: 50px;
    height: auto;
  }
  .talk .talkSection .remarksBox .txt {
    margin: -7px 0 0 16px;
    letter-spacing: 0;
  }
  .talk .talkSection .remarksBox .person .name {
    font-size: 1.4rem;
    margin-top: 0;
  }
  .talk .talkSection .remarksBox {
    margin-top: 30px;
  }
  .talk .talkSection .img,
  .talk .talkSection .img img {
    width: 100%;
    height: auto;
  }
  .talk .talkSection .remarksBox + .img {
    margin-top: 26px;
  }
  .talk .talkArea.spOnly {
    padding-bottom: 30px;
  }
}

/* ===========================================
1分でわかる千修
=========================================== */
.infographics .inPageSection {
  padding: 75px 0 200px;
}
.infographics .topicPath {
  margin-bottom: 78px;
}
.infographics .inPageSection > .tit {
  margin-bottom: 76px;
}
.infographics .box {
  padding: 65px 0 54px;
  border: 4px solid #f3f3f3;
}
.infographics .box + .box {
  margin-top: 50px;
}
.infographics .inner {
  width: 716px;
  min-width: 0;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.infographics .titBox {
  padding-left: 10px;
  margin-bottom: 30px;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
}
.infographics .titBox .numbering {
  margin-right: 15px;
  font-size: 1.6rem;
  font-family: Arial;
  color: #0068bf;
  position: relative;
  display: inline-block;
  font-weight: bold;
  letter-spacing: 0.1em;
}
.infographics .titBox .numbering:after {
  content: '';
  width: 25px;
  height: 2px;
  display: block;
  background: #0068bf;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}
.infographics .box .tit {
  color: #4e575c;
  font-size: 3.6rem;
  line-height: 1.56;
  letter-spacing: 0.025em;
}
.infographics .box .tit span {
  margin-right: 15px;
  font-size: 1.6rem;
  font-family: Arial;
  color: #0068bf;
  position: relative;
  display: inline-block;
  font-weight: bold;
  letter-spacing: 0.1em;
}
.infographics .box .tit span:after {
  content: '';
  width: 25px;
  height: 2px;
  display: block;
  background: #0068bf;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}
.infographics .box .img {
  margin-bottom: 36px;
}
.infographics .box .txt {
  width: 100%;
  color: #4e575c;
  font-size: 1.6rem;
  line-height: 1.625;
  letter-spacing: 0.025em;
  align-self: flex-start;
}

.inviewFadeIn .titBox,
.inviewFadeIn .img,
.inviewFadeIn .txt {
  transform: translateY(30px);
  opacity: 0;
  transition: transform .7s, opacity 1s;
  transition-delay: .2s;
}
.inviewFadeIn .img {
  transition-delay: .4s;
}
.inviewFadeIn .txt {
  transition-delay: .6s;
}
.inviewFadeIn.is-active .titBox,
.inviewFadeIn.is-active .img,
.inviewFadeIn.is-active .txt {
  transform: translateY(0);
  opacity: 1;
}

@media screen and (max-width: 1219px) {
  .infographics .inPageSection {
    padding: 16px 20px 120px;
  }
  .infographics .topicPath {
    margin-bottom: 31px;
  }
  .infographics .inPageSection > .tit {
    margin-bottom: 39px;
  }
  .infographics .box {
    padding: 21px 80px 25px;
  }
  .infographics .box + .box {
    margin-top: 25px;
  }
  .infographics .inner {
    width: 100%;
  }
  .infographics .titBox {
    padding-left: 0;
    margin-bottom: 24px;
    flex-direction: column;
  }
  .infographics .titBox .numbering {
    margin-right: 0;
    margin-bottom: 18px;
    line-height: 1.5;
  }
  .infographics .titBox .numbering:after {
    content: '';
    width: 25px;
    height: 1px;
    display: block;
    background: #0068bf;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
  }
  .infographics .box .tit {
    font-size: 2.2rem;
    line-height: 1.375;
    letter-spacing: 0.025em;
  }
  .infographics .box .img {
    max-width: calc(100% + 54px);
    margin: 0 -27px 28px;
  }
  .infographics .box .img img {
    max-width: 100%;
    height: auto;
  }
  .infographics .box .txt {
    padding-left: 0;
    font-size: 1.6rem;
    line-height: 1.625;
    letter-spacing: 0.025em;
    align-self: flex-start;
  }

  .inviewFadeIn {
    transform: translateY(30px);
    opacity: 0;
    transition: transform 1s, opacity 1s;
    transition-delay: .2s;
  }
  .inviewFadeIn.delay05s {
    transition-delay: .5s;
  }
  .inviewFadeIn.delay07s {
    transition-delay: .7s;
  }
  .inviewFadeIn.delay1s {
    transition-delay: 1s;
  }
  .inviewFadeIn.is-active {
    transform: translateY(0);
    opacity: 1;
  }
}

@media screen and (max-width: 768px) {
  .infographics .inPageSection {
    padding: 16px 20px 65px;
  }
  .infographics .box {
    padding: 21px 27px 25px;
  }
  .infographics .box .tit {
    font-size: 2rem;
  }
}

@media screen and (max-width: 330px) {
  .infographics .box .img {
    max-width: calc(100% + 34px);
  }
}

/* ===========================================
メッセージ
=========================================== */
.inPage.message {
  overflow: hidden;
}
.message .inPageSection {
  padding: 75px 0 200px;
}
.message .kvArea {
  width: 100%;
  padding: 54px 0 0;
  position: relative;
  margin-bottom: 72px;
}
.message .kvArea:after {
  content: '';
  width: 200vw;
  height: 3px;
  display: block;
  background: #0068bf;
  position: absolute;
  bottom: 0;
  left: 0;
  transform: translateX(-50%);
}
.message .kvArea .tit {
  font-size: 6.4rem;
  color: #0068bf;
  letter-spacing: 0.03em;
}
.message .kvArea .flexWrap {
  align-items: flex-end;
  justify-content: space-between;
  margin-top: -111px;
  color: #4e575c;
}
.message .kvArea .txtBox {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  margin: 0 0 51px 53px;
}
.message .kvArea .lead {
  font-size: 3.6rem;
  color: #4e575c;
  font-weight: bold;
  line-height: 1.5;
  letter-spacing: 0.03em;
}
.message .profile {
  margin: 36px 18px 0 0;
}
.message .profile span {
  display: block;
  line-height: 1;
  text-align: center;
  font-family: YuMincho,'Yu Mincho',serif;
}
.message .profile .position {
  font-size: 1.6rem;
  letter-spacing: 0.03em;
}
.message .profile .name {
  font-size: 2.8rem;
  margin-top: 8px;
}
.message .kvArea .img {
  margin: 0 15px 0 0;
}
.message .mainTxt {
  margin: 0 0 52px 2px;
}
.message .mainTxt .tit {
  font-size: 2.2rem;
  letter-spacing: 0.03em;
  font-weight: bold;
}
.message .mainTxt .txt {
  font-size: 1.6rem;
  margin-top: 14px;
  line-height: 1.63;
  letter-spacing: 0.025em;
}
.message .mainTxt .txt + .txt {
  margin-top: 20px;
}
.message .btnWrap {
  margin-top: 96px;
  display: flex;
  justify-content: center;
}
.message .btnWrap .btn {
  width: auto;
  min-height: auto;
  position: relative;
}
.message .btnWrap .btn + .btn {
  margin-left: 29px;
}
.message .btnWrap .btn a {
  font-size: 1.8rem;
  padding: 25px 28px 25px 33px;
}
@media screen and (max-width: 1219px) {
  .message br.spOnly {
    display: none;
  }
  .message .inPageSection {
    padding: 69px 40px 120px;
  }
  .message .kvArea .txtBox {
    margin: 0 0 31px 10px;
  }
  .message .kvArea .tit {
    font-size: 5rem;
  }
  .message .kvArea .lead {
    font-size: 3rem;
    white-space: nowrap;
  }
  .message .profile {
    margin: 36px 18px 0 0;
  }
  .message .profile .position {
    font-size: 1.4rem;
  }
  .message .profile .name {
    font-size: 2.4rem;
  }
  .message .kvArea .img {
    margin-right: -35px;
    width: 250px;
  }
  .message .kvArea .img img {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .message br.spOnly {
    display: block;
  }
  .message .inPageSection {
    padding: 16px 20px 65px;
  }
  .message .kvArea {
    padding: 20px 0 0;
    margin-bottom: 45px;
  }
  .message .kvArea .tit {
    font-size: 2.9rem;
  }
  .message .kvArea .lead {
   font-size: 2rem;
   line-height: 1.55;
  }
  .message .kvArea .img {
    width: 42%;
    margin: 0 -1px 2px 0;
    flex: 0 0 auto;
  }
  .message .kvArea .img img {
    width: 100%;
    height: auto;
  }
  .message .kvArea .flexWrap {
    margin-top: 22px;
  }
  .message .kvArea .txtBox {
    margin: 0 0 22px 4vw;
    white-space: nowrap;
    align-items: flex-start;
  }
  .message .profile {
    margin: 28px 0 0 28vw;
  }
  .message .profile .position {
    font-size: 1rem;
  }
  .message .profile .name {
    font-size: 1.7rem;
    margin-top: 7px;
  }
  .message .mainTxt {
    margin: 0 0 40px 0;
  }
  .message .mainTxt .tit {
    font-size: 2rem;
    line-height: 1.35;
  }
  .message .mainTxt .txt {
    margin-top: 20px;
  }
  .message .btnWrap {
    margin-top: 46px;
    flex-wrap: wrap;
  }
  .message .btnWrap .btn {
    width: 100%;
  }
  .message .btnWrap .btn + .btn {
    margin: 16px 0 0 0;
  }
}
/* ===========================================
社員インタビュー
=========================================== */
.interviewListArea.inPageSection {
  padding-top: 74px;
  padding-bottom: 200px;
}
.interviewListArea .topicPath {
  margin-bottom: 78px;
}
.interviewListArea .lead {
  font-size: 1.6rem;
  margin-top: 30px;
  letter-spacing: 0.03em;
}
.interviewListArea .interviewList {
  flex-wrap: wrap;
  margin: 74px 0 0 -30px;
  width: auto;
}
.interviewListArea .interviewList li {
  padding: 0;
  width: calc( 100% / 3 - 31px);
  margin: 0 0 48px 30px;
}
.interviewListArea .btnWrap {
  margin-top: 50px;
  margin-bottom: 30px;
  display: flex;
  justify-content: center;
}
.interviewListArea .btnWrap .btn {
  width: auto;
  min-height: auto;
  position: relative;
}
.interviewListArea .btnWrap .btn + .btn {
  margin-left: 29px;
}
.interviewListArea .btnWrap .btn a {
  font-size: 1.8rem;
  padding: 25px 28px 25px 33px;
}
@media screen and (max-width: 768px) {
  .interviewListArea.inPageSection {
    padding-top: 16px;
    padding-bottom: 64px;
  }
  .interviewListArea .topicPath {
    margin-bottom: 30px;
  }
  .interviewListArea .lead {
    line-height: 1.625;
    margin-top: 33px;
    letter-spacing: 0.02em;
  }
  .interviewListArea .interviewList {
    margin: 38px 0 0 -16px;
  }
  .interviewListArea .interviewList li {
    width: calc( 50% - 17px);
    margin: 0 0 26px 16px;
  }
  .interviewListArea .btnWrap {
    margin-top: 19px;
    flex-wrap: wrap;
  }
  .interviewListArea .btnWrap .btn {
    width: 100%;
  }
  .interviewListArea .btnWrap .btn + .btn {
    margin: 16px 0 0 0;
  }
}
/* ===========================================
採用について
=========================================== */
.recruitmentArea > .tit {
  margin-bottom: 121px;
}
.recruitmentBtn {
  margin-bottom: 101px;
  display: flex;
}
.recruitmentBtn.bottom {
  margin-top: 80px;
  margin-bottom: 0;
}
.recruitmentBtn li {
  width: 300px;
  min-height: 250px;
  display: flex;
}
.recruitmentBtn li + li {
  margin-left: 30px;
}
.recruitmentBtn a {
  width: 100%;
  height: 100%;
  color: #fff;
  font-size: 3rem;
  font-weight: bold;
  display: flex;
  justify-content: center;
  align-items: center;
  background: url(../img/recruitment/index/bg_guideline.png) no-repeat center / cover;
  transition: .3s;
}
.recruitmentBtn a:hover {
  opacity: 0.8;
}
.recruitmentBtn .guideline a {
  background-image: url(../img/recruitment/index/bg_guideline_pc.png);
}
.recruitmentBtn .seminar a {
  background-image: url(../img/recruitment/index/bg_seminar_pc.png);
}
.recruitmentBtn .step a {
  background-image: url(../img/recruitment/index/bg_step_pc.png);
}
.recruitmentArea .btnWrap {
  display: flex;
  justify-content: center;
}
.recruitmentArea .btnWrap li + li {
  margin-left: 80px;
}
.recruitmentArea .btnWrap a {
  padding: 24px 34px 26px 40px;
  font-size: 1.8rem;
  transition: .3s;
}
.recruitmentArea .btnWrap a:hover {
  opacity: 0.8;
}

@media screen and (max-width: 768px) {
  .recruitmentArea > .tit {
    margin-bottom: 39px;
  }
  .recruitmentBtn {
    margin-bottom: 40px;
    flex-direction: column;
    align-items: center;
  }
  .recruitmentBtn.bottom {
    margin-top: 45px;
    margin-bottom: 0;
  }
  .recruitmentBtn li {
    width: 100%;
    min-height: 100px;
  }
  .recruitmentBtn li + li {
    margin: 15px 0 0;
  }
  .recruitmentBtn a {
    height: 100px;
    font-size: 1.6rem;
  }
  .recruitmentBtn .guideline a {
    background-image: url(../img/recruitment/index/bg_guideline_sp.png);
  }
  .recruitmentBtn .seminar a {
    background-image: url(../img/recruitment/index/bg_seminar_sp.png);
  }
  .recruitmentBtn .step a {
    background-image: url(../img/recruitment/index/bg_step_sp.png);
  }
  .recruitmentArea .btnWrap {
    flex-direction: column;
    align-items: center;
  }
  .recruitmentArea .btnWrap li + li {
    margin: 17px 0 0;
  }
  .recruitmentArea .btnWrap a {
    padding: 24px 34px 26px 40px;
    font-size: 1.8rem;
    transition: .3s;
  }
  .recruitmentArea .btnWrap a:hover {
    opacity: 0.8;
  }
}

/*選考ステップ*/
.stepList {
  margin-bottom: 50px;
}
.stepList + .txt {
  margin-bottom: 20px;
}
.stepList .item {
  padding: 21px 60px 31px 58px;
  border: 1px solid #0068bf;
  display: flex;
  align-items: center;
  position: relative;
}
.stepList .item + .item {
  margin-top: 58px;
}
.stepList .item:before,
.stepList .item:after {
  content: "";
  position: absolute;
  left: 50%;
}
.stepList .item:before {
  width: 2px;
  height: 57px;
  background-color: #0068bf;
  bottom: -57px;
  transform: translateX(-50%);
}
.stepList .item:after {
  width: 42px;
  height: 42px;
  margin-top: -4px;
  border-right: 2px solid #0068bf;
  border-bottom: 2px solid #0068bf;
  bottom: -58px;
  transform: translateX(-50%) translateY(-7px) rotate(45deg);
}
.stepList .item dt {
  margin: 14px 58px 0 0;
  color: #0068bf;
  font-size: 3rem;
  font-weight: bold;
  font-family: Arial;
  line-height: 1;
  letter-spacing: 0.025em;
  flex-shrink: 0;
}
.stepList .item dd {
  width: 100%;
}
.stepList .item .tit {
  font-size: 2.2rem;
  font-weight: bold;
  line-height: 2.454545455;
  letter-spacing: 0.025em;

  display: flex;
  align-items: center;
  gap: 0 1em;
}
.stepList .item .tit span {
  display: inline-block;
  font-size: 1.4rem;
  font-weight: normal;
}
.stepList .item .txt {
  color: #4e575c;
  font-size: 1.6rem;
  line-height: 1.625;
  letter-spacing: 0.025em;
}
.stepList .item.last {
  padding-top: 37px;
  padding-bottom: 37px;
  color: #fff;
  background-color: #0068bf;
}
.stepList .item.last:before,
.stepList .item.last:after {
  content: normal;
}
.stepList .item.last dt {
  margin-top: 6px;
  color: #fff;
}
.stepList .item.last .tit {
  font-size: 1.6rem;
  line-height: 1.625;
  letter-spacing: 0.025em;
  display: flex;
  align-items: center;
}
.stepList .item.last .tit .fontL {
  margin-right: 17px;
  font-size: 3.6rem;
  display: inline-block;
  white-space: nowrap;
}
.entryBox {
  margin: -100px auto 220px;
  border-top: 1px solid #c9c9c9;
}
.entryBox .inner {
  width: 960px;
  padding-top: 70px;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.entryBox .tit {
  font-size: 2.2rem;
  font-weight: bold;
  line-height: 2.454545455;
  text-align: center;
  margin-bottom: 70px;
}
.entryBox .btn {
  width: 750px;
  height: 80px;
}
.entryBox .btn a {
  padding: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  font-size: 2.2rem;
}
@media screen and (max-width: 1219px) {
  .stepList .item.last .tit .fontL {
    white-space: nowrap;
  }
  .entryBox {
    margin-bottom: 170px;
  }
  .entryBox .inner {
    width: 100%;
  }

}
@media screen and (max-width: 768px) {
  .stepTxt {
    padding-top: 36px;
    position: relative;
  }
  .stepTxt:before {
    content: "";
    width: 100%;
    height: 1px;
    position: absolute;
    top: 0;
    left: 0;
    background-color: #c9c9c9;
  }
  .stepList .item {
    min-height: 0;
    padding: 36px 15px 35px 25px;
    flex-direction: column;
    align-items: flex-start;
    position: relative;
  }
  .stepList .item + .item {
    margin-top: 41px;
  }
  .stepList .item:before {
    height: 40px;
    bottom: -41px;
  }
  .stepList .item:after {
    width: 32px;
    height: 32px;
    bottom: -42px;
  }
  .stepList .item dt {
    margin: 0;
    font-size: 2.5rem;
    letter-spacing: 0.1em;
    position: absolute;
    top: 36px;

    position: relative;
    top: 0;
  }
  .stepList .item .tit {
    margin-left: 113px;
    margin-bottom: 20px;
    font-size: 1.9rem;
    line-height: 1.263157895;
    letter-spacing: 0.015em;

    margin-left: 0;
    margin-top: 10px;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px 0;
  }
  .stepList .item.last {
    padding-top: 34px;
    padding-bottom: 18px;
  }
  .stepList .item.last dt {
    margin-top: 0;
  }
  .stepList .item.last .tit {
    margin-left: 0;
    font-size: 1.6rem;
    font-weight: normal;
    line-height: 1.444444444;
    letter-spacing: 0.025em;
    display: block;
  }
  .stepList .item.last .tit .fontL {
    margin: 0 17px 25px 113px;
    margin: 0 17px 25px 0;
    font-size: 1.9rem;
    font-weight: bold;
    display: block;
  }
  .entryBox {
    margin: -20px auto 110px;
    border-top: 1px solid #c9c9c9;
  }
  .entryBox .inner {
    width: 100%;
    padding: 50px 20px 0;
  }
  .entryBox .tit {
    font-size: 1.6rem;
    line-height: 1.65;
    margin-bottom: 20px;
  }
  .entryBox .btn {
    width: 100%;
    height: 60px;
  }
  .entryBox .btn a {
    font-size: 1.8rem;
  }
}

/*セミナー情報*/
.inPageList .recruit_nav {
  margin-top: 30px;
  display: flex;
  align-items: flex-start;
}
.inPageList .recruit_nav li + li {
  margin-left: 20px;
}
.inPageList .recruit_nav a {
  transition: .3s;
}
.inPageList .recruit_nav a:hover {
  opacity: 0.6;
}
.inPageList .recruit_nav .line {
  width: 144px;
}
.inPageList .recruit_nav .insta {
  width: 216px;
}
/*.inPageList .recruit_nav .mynavi,
.inPageList .recruit_nav .rikunabi {
  width: 200px;
}*/
.inPageList .recruit_nav .mynavi,
.inPageList .recruit_nav .rikunabi {
  width: 280px;
}
.inPageList .recruit_nav img {
  width: 100%;
  height: auto;
}

@media screen and (max-width: 768px) {
  .inPageList .recruit_nav {
    flex-direction: column;
    align-items: center;
  }
  .inPageList .recruit_nav li + li {
    margin-left: 0;
    margin-top: 20px;
  }
}

/* ===========================================
職種紹介
=========================================== */
.jobIndex.inPageSection {
  width: 1280px;
  margin: 0 auto;
  padding-top: 74px;
  padding-bottom: 0;
}
.jobIndex .topicPath {
  margin-bottom: 78px;
}
.jobIndex .lead {
  font-size: 1.6rem;
  margin-top: 30px;
  letter-spacing: 0.03em;
}
.jobIndex .imgWrap {
  margin: 60px auto 0;
}
.jobIndex .imgWrap img {
  margin: 0 auto;
  max-width: 100%;
}
.jobIndex .imgLead {
  font-size: 1.6rem;
  font-weight: bold;
  margin: 24px 0 0;
  text-align: center;
}
.jobIndex .btnWrap {
  width: 724px;
  margin: 90px auto 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.jobIndex .btnWrap li {
  width: 330px;
}
.jobIndex .btn.white a {
  font-size: 1.8rem;
}
.jobArea {
  width: 1280px;
  padding-top: 80px;
  margin: 40px auto 0;
}
.jobArea:last-child {
  margin-bottom: 200px;
}
.jobArea h2 {
  font-size: 3.6rem;
  font-weight: bold;
  line-height: 1;
}
.jobArea h3 {
  font-size: 2.2rem;
  font-weight: bold;
  line-height: 1;
  position: relative;
  padding-left: 13px;
  margin-top: 80px;
}
.jobArea .job_description {
  display: flex;
  justify-content: space-between;
  margin-top: 64px;
}
.jobArea .job_description img {
  max-width: 100%;
}
.jobArea .job_description p {
  font-size: 1.6rem;
  line-height: 2.25;
  width: 42%;
}
.jobArea .job_description + h3 {
  margin-top: 64px;
}
.jobArea h3:before {
  content: "";
  width: 5px;
  height: 100%;
  margin-top: 0px;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  background: linear-gradient(to bottom,#2789dd,#356ee3);
}
.jobArea .job_motivation {
  font-size: 1.6rem;
  line-height: 2.25;
  margin-top: 40px;
}
.jobArea .job_motivation .txt_small {
  font-size: 1.4rem;
}
.jobArea .job_motivation li {
  padding-left: 1.5em;
  position: relative;
}
.jobArea .job_motivation li:before {
  content: "";
  display: inline-block;
  position: absolute;
  left: 0.6em;
  top: 1em;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background-color: #0068bf;
}
.jobArea .job_role {
  margin: 40px auto 0;
  text-align: center;
}
.jobArea .job_role img {
  margin: 0 auto;
  max-width: 100%;
}
.jobArea .job_interview {
  display: flex;
  gap: 0 32px;
  margin: 40px auto 0;
}
.jobArea .job_interview .profile {
  margin: 18px 0 0;
  line-height: 1.66;
}
.jobArea .job_interview .profile .p01 {
  font-size: 1.2rem;
  font-weight: bold;
}
.jobArea .job_interview .profile .p02 {
  font-size: 2.0rem;
}
.jobArea .job_interview .profile .p03 {
  font-size: 1.2rem;
  font-weight: bold;
}

@media screen and (max-width: 768px) {
  .jobIndex.inPageSection {
    width: 100%;
    padding: 16px 20px 0
  }
  .jobIndex .topicPath {
    margin-bottom: 40px;
  }
  .jobIndex .imgWrap {
    margin: 32px auto 0;
  }
  .jobIndex .imgLead {
    margin: 16px 0 0;
    text-align: left;
  }
  .jobIndex .btnWrap {
    width: 100%;
    margin: 48px auto 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: column;
  }
  .jobIndex .btnWrap li {
    width: 100%;
  }
  .jobIndex .btnWrap li:not(:first-child) {
    margin-top: 16px;
  }
  .jobArea {
    width: 100%;
    padding: 60px 20px 0;
    margin: 20px auto 0;
  }
  .jobArea h2 {
    font-size: 2.9rem;
  }
  .jobArea h3 {
    font-size: 2.2rem;
    font-weight: bold;
    margin-top: 48px !important;
  }
  .jobArea .job_description {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    margin-top: 40px;
  }
  .jobArea .job_description p {
    line-height: 1.625;
    width: 100%;
    margin-top: 24px;
  }
  .jobArea .job_motivation {
    line-height: 1.625;
    margin-top: 24px;
  }
  .jobArea .job_interview {
    display: flex;
    flex-wrap: wrap;
    gap: 24px 0;
    justify-content: space-between;
    margin: 24px auto 0;
  }
  .jobArea .job_interview li {
    width: 47.5%;
  }
  .jobArea .job_interview li img {
    max-width: 100%;
  }


  .jobArea:last-child {
    margin-bottom: 120px;
  }
}


/* ===========================================
会社概要
=========================================== */
article.company .inPageSection {
  padding-bottom: 0;
}
.accessArea {
  margin-top: 100px;
  border-top: 1px solid #c9c9c9;
}
.accessArea .inner {
  width: 980px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.accessArea .txtBox,
.accessArea .mapBox {
  width: 50%;
  flex-shrink: 1;
}
.accessArea .txtBox .tit {
  margin-bottom: 33px;
  font-size: 3.6rem;
  font-weight: bold;
  line-height: 1.5;
  letter-spacing: 0.025em;
  position: relative;
}
.accessArea .txtBox .subTit {
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.625;
  letter-spacing: 0.025em;
}
.accessArea .txtBox .txt {
  font-size: 1.4rem;
  line-height: 1.625;
  letter-spacing: 0.025em;
}
.accessArea .txtBox a {
  pointer-events: none;
}
.accessArea .txtBox .bottomTxt {
  margin-top: 20px;
}
.accessArea .mapBox {
  position: relative;
  width: 50%;
  padding-top: 41%;
  overflow:auto;
  -webkit-overflow-scrolling:touch;
}
.accessArea .mapBox iframe {
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  border:none;
  display:block;
  vertical-align: top;
}
@media screen and (max-width: 1219px) {
  .accessArea .inner {
    width: 100%;
    padding: 0 0 0 15px;
  }
  .accessArea .bottomTxt.pcOnly {
    display: block;
  }
  .accessArea .bottomBox.spOnly {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .accessArea {
    margin-top: 100px;
    border-top: 1px solid #c9c9c9;
  }
  .accessArea .inner {
    width: 100%;
    flex-direction: column;
    align-items: flex-start;
    padding: 0;
  }
  .accessArea .txtBox,
  .accessArea .mapBox {
    width: 100%;
  }
  .accessArea .txtBox {
    padding: 30px 21px;
    text-align: center;
  }
  .accessArea .txtBox .tit {
    margin-bottom: 16px;
    font-size: 2.2rem;
  }
  .accessArea .txtBox .subTit {
    margin-bottom: 22px;
    font-size: 1.8rem;
    text-align: center;
    position: relative;
  }
  .accessArea .txtBox .subTit:after {
    content: "";
    width: 50px;
    height: 1px;
    position: absolute;
    left: 50%;
    bottom: -10px;
    transform: translateX(-50%);
    background-color: #0068bf;
  }
  .accessArea .txtBox a {
    color: #0068bf;
    font-size: 2rem;
    line-height: 1;
    pointer-events: all;
  }
  .accessArea .txtBox .bottomTxt {
    margin-top: 20px;
  }
  .accessArea .mapBox {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
    overflow:auto;
    -webkit-overflow-scrolling:touch;
  }
  .accessArea .mapBox iframe {
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    border:none;
    display:block;
  }
  .accessArea .bottomBox {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .accessArea .bottomBox .tit {
    font-size: 1.4rem;
    text-align: center;
  }
  .accessArea .bottomBox .txt {
    text-align: left;
  }
}

/* ===========================================
よくある質問
=========================================== */
.faqPageList dt {
  padding-left: 2em;
  position: relative;
}
.faqPageList dt:before {
  content: "Q：";
  position: absolute;
  top: 32px;
  left: 0;
  font-family:"Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
}
.faqPageList dt a {
  position: absolute;
  top: -50px;
  pointer-events: none;
  opacity: 0;
}

@media screen and (max-width: 768px) {
  .faqPageList dt:before {
    top: 30px;
  }
}



/* ===========================================
フッター
=========================================== */
.footer {
  background: #eff1f2;
  position: relative;
  z-index: 3;
}
.footer .l-column {
  display: flex;
  flex-direction: column;
}
.footer .footerNav {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 44px 0 39px;
  border-bottom: 1px solid #949494;
  margin-bottom: 40px;
}
.footer .pageNav {
  display: flex;
  font-size: 1.4rem;
  font-weight: bold;
  color: #000;
  margin-left: 15px;
}
.footer .pageNav li + li {
  margin-left: 45px;
}
.footer .pageNav a {
  transition: .3s;
}
.footer .recruitNav {
  display: flex;
  align-items: center;
  margin-right: 4px;
}
.footer .recruitNav {
  font-size: 1.2rem;
  font-weight: bold;
}
.footer .entryBtn {
  margin-left: 44px;
}
.footer .recruitNav .icoBox + .icoBox {
  margin-left: 24px;
}
.footer .recruitNav .icoBox a:before{
  content: '';
  width: 20px;
  height: 20px;
  display: block;
  position:absolute;
  top: 4px;
  transform: translateX(-50%);
}
.footer .recruitNav .icoBox.question a:before{
  background: url(../img/common/ico_question.png)center / cover no-repeat;
  left: calc( 50% + 2px );
}
.footer .recruitNav .icoBox.news a:before{
  background: url(../img/common/ico_news.png)center / cover no-repeat;
  left: calc( 50% + 1px );
}
.footer .recruitNav .icoBox a{
  padding-top: 27px;
  position: relative;
  transition: .3s;
}
.footer .bottomNav {
  display: flex;
  justify-content: space-between;
  margin-bottom: 70px;
}
.footer .corporateNav {
  display: flex;
  margin-left: 5px;
  align-items: flex-end;
}
.footer .corporateNav a {
  transition: .3s;
}
.footer .corporateNav a:hover {
  opacity: 0.8;
}
.footer .corporateNav li + li {
  margin: 0 0 5px 48px;
}
.footer .socialNav {
  display: flex;
  margin: -2px 4px 0 0;
}
.footer .socialNav li + li {
  margin-left: 18px;
}
.footer .socialNav a {
  padding: 12px;
  background: #FFF;
  border-radius: 50%;
  transition: .3s;
}
.footer .copyrightNav {
  display: flex;
  font-size: 1.2rem;
  color: #aaa;
  font-weight: bold;
  margin-left: 4px;
  padding-bottom: 26px;
  letter-spacing: -0.1px;
}
.footer .copyrightNav li:first-child {
  margin-right: 54px;
}
.footer .copyrightNav li + li {
  margin-right: 37px;
}
.footer .copyrightNav li a {
  color: #aaa;
  transition: .3s;
}
.footer  a:hover {
  opacity: .6;
}
@media screen and (max-width: 1219px) {
  .footer .inner {
    width: 100%;
  }
  .footer .footerNav {
    display: none;
  }
  .footer .bottomNav {
    margin-bottom: 30px;
    padding: 23px 10px 0;
  }
  .footer .socialNav {
    margin: 0;
  }
  .footer .socialNav li + li {
    margin-left: 12px;
  }
  .footer .socialNav a {
    padding: 8px;
    display: flex;
  }
  .footer .socialNav img {
    width: 22px;
    height: 22px;
  }
  .footer .socialNavWrap {
    display: flex;
  }
  .footer .entryBtn {
    margin-left: 23px;
  }
  .footer .corporateNav {
    margin-left: 12px;
    align-items: center;
  }
  .footer .corporateNav img {
    width: auto;
    height: 25px;
  }
  .footer .copyrightNav {
    font-size: 9px;
    padding-bottom: 10px;
    text-align: center;
    margin-left: 0;
    justify-content: center;
  }
  .footer .copyrightNav li:first-child {
    margin-right: 0;
  }
  .footer .copyrightNav li:nth-child(1n+2) {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .footer .inner {
    width: 100%;
    padding: 0 10px;
    /* background: #000; */
  }
  .footer .footerNav {
    display: none;
  }
  .footer .bottomNav {
    margin-bottom: 30px;
    padding: 23px 0 0;
  }
  .footer .socialNav {
    margin: 0;
  }
  .footer .socialNav li + li {
    margin-left: 12px;
  }
  .footer .socialNav a {
    padding: 6px;
    display: flex;
  }
  .footer .socialNav img {
    width: 12px;
    height: 12px;
  }
  .footer .socialNavWrap {
    display: flex;
  }
  .footer .entryBtn {
    margin-left: 23px;
  }
  .footer .corporateNav {
    margin-left: 12px;
    align-items: center;
  }
  .footer .corporateNav img {
    width: auto;
    height: 14px;
  }
  .footer .copyrightNav {
    font-size: 9px;
    padding-bottom: 10px;
    text-align: center;
    margin-left: 0;
    justify-content: center;
  }
  .footer .copyrightNav li:first-child {
    margin-right: 0;
  }
  .footer .copyrightNav li:nth-child(1n+2) {
    display: none;
  }
}

@media (min-width: 1px) and (max-width: 1050px) {
  a:hover {
    opacity: 1;
    transition: none;
  }
  .btn.red a:hover {
    background-color: #fff;
    color: #ff5585;
  }
  .btn.red.fill a:hover {
    background-color: #ff5585;
    color: #fff;
  }
}
