@charset "UTF-8";
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}
html {
  line-height: 1;
  -webkit-text-size-adjust: 100%;
  scroll-behavior: smooth;
}

ol,
ul {
  list-style: none;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
caption,
th,
td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}
q {
  quotes: none;
}
:before,
q:after {
  content: "";
  content: none;
}
img {
  vertical-align: middle;
}
a img {
  border: none;
}
a:focus {
  outline: none;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}
-webkit-input-placeholder {
  color: inherit;
}
-moz-placeholder {
  color: inherit;
}
button,
input,
select,
textarea {
  font: inherit;
}
* {
  box-sizing: border-box;
}
@media all and (max-width: 1200px) {
  * img {
    width: 100%;
    height: auto;
  }
}
html {
  height: 100%;
  font-size: 62.5%;
}
body {
  background: #fff;
  font-family: Arial, Verdana, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
  font-weight: 400;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.7;
  color: #212121;
}
@media all and (max-width: 1200px) {
  body {
    position: relative;
    min-width: 100%;
    font-size: 1.2rem;
    -webkit-text-size-adjust: 100%;
  }
}
a {
  text-decoration: none;
  color: inherit;
}
.spCont {
  display: none;
}
@media all and (max-width: 1200px) {
  .spCont {
    display: block;
  }
}
.pcCont {
  display: block;
}
@media all and (max-width: 1200px) {
  .pcCont {
    display: none;
  }
}
.txt_mincho {
  font-family: 'ヒラギノ明朝 ProN W3', 'HiraMinProN-W3', 'HG明朝E', 'MS 明朝';
}

.lyt_top {
  width: 100%;
  margin: 0 auto;
  padding-bottom: 305px;
}
@media all and (max-width: 1200px) {
  .lyt_top {
    min-width: initial;
    padding: 44px 0 110px;
  }
}
.lyt_mainWrap {
  background-color: #f0f0f0;
  width: 100%;
}
@media all and (max-width: 1200px) {
  .lyt_mainWrap {
    min-width: initial;
  }
}
.lyt_main {
  width: 100%;
  margin: 0 auto;
  padding-top: 90px;
}
.lyt_main.lyt_message {
  margin-bottom: 225px;
}
@media all and (max-width: 1200px) {
  .lyt_main {
    padding-top: 44px;
    width: 100%;
    min-width: initial;
  }
  .lyt_main.lyt_message {
    margin-bottom: 112px;
  }
}
.lyt_talk {
  width: 100%;
  margin: 0 auto;
  overflow: hidden;
}
@media all and (max-width: 1200px) {
  .lyt_talk {
    padding-top: 44px;
  }
}
.grid_spaceBetween {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.kvStatic {
  width: 100%;
  margin: 0 auto 140px;
  background-size: cover;
  background-position: center top;
  position: relative;
}
.kvStatic .kvStatic_inner {
  position: relative;
  width: 100%;
  height: 500px;
  margin: 0 auto;
  max-width: 1400px;
}
.kvStatic.style {
  margin: 0 auto 102px;
}
.kvStatic.talk .kvStatic_profile {
  width: 1000px;
  height: 147px;
  margin-left: -500px;
}
.kvStatic.talk .kvStatic_profile:after {
  content: "";
  display: block;
  clear: both;
}
.kvStatic.talk .kvStatic_ajuster {
  width: 50%;
  float: left;
}
.kvStatic.talk .kvStatic_ajuster:nth-of-type(2) {
  text-align: right;
}
.kvStatic.talk .kvStatic_comment {
  margin-top: 5px;
}
.kvStatic .kvStatic_profile {
  width: 400px;
  height: 167px;
  padding: 33px 30px 30px 32px;
  position: absolute;
  z-index: 1;
  left: 77px;
  bottom: -60px;
  background: #fff;
}
.kvStatic .kvStatic_ajuster {
  position: relative;
}
.kvStatic .kvStatic_tagWrap {
  position: absolute;
  width: 120px;
  color: #fff;
  font-size: 1.6rem;
  text-align: center;
  line-height: 1;
  right: -30px;
  z-index: 2;
}
.kvStatic .kvStatic_tagWrap:before {
  display: block;
  content: "";
  width: 30px;
  height: 40px;
  -webkit-transform: skew(20deg);
      -ms-transform: skew(20deg);
          transform: skew(20deg);
  position: absolute;
  left: -7px;
  top: 0;
  z-index: -1;
}
.kvStatic .kvStatic_tagWrap.style {
  background: #a98fdb;
}
.kvStatic .kvStatic_tagWrap.style:before {
  background: #a98fdb;
}
.kvStatic .kvStatic_tagWrap.interview {
  background: #f06967;
}
.kvStatic .kvStatic_tagWrap.interview:before {
  background: #f06967;
}
.kvStatic .kvStatic_tagWrap.message {
  background: #31a1b4;
}
.kvStatic .kvStatic_tagWrap.message:before {
  background: #31a1b4;
}
.kvStatic .kvStatic_tagWrap .kvStatic_tag {
  display: table;
  width: 100%;
}
.kvStatic .kvStatic_tagWrap .kvStatic_tag .kvStatic_tagInner {
  display: table-cell;
  height: 40px;
  vertical-align: middle;
}
.kvStatic .kvStatic_bu {
  line-height: 1;
}
.kvStatic .kvStatic_name span {
  font-size: 1.8rem;
}
.kvStatic .kvStatic_name span:before {
  content: attr(data-text);
  display: inline-block;
  font-size: 1.4rem;
  padding-right: 0.5em;
}
.kvStatic .kvStatic_president {
  font-size: 1.8rem;
  display: inline-block;
}
.kvStatic .kvStatic_line {
  color: #666;
  display: inline-block;
  margin-right: 0.8em;
}
.kvStatic .kvStatic_line:before {
  content: none;
}
.kvStatic .kvStatic_comment {
  margin-top: 20px;
  color: #666;
  font-size: 1.2rem;
}
@media all and (max-width: 1200px) {
  .kvStatic {
    position: relative;
    width: 100%;
    margin-bottom: 110px;
  }
  .kvStatic .kvStatic_inner {
    height: 0;
    padding-bottom: 131%;
  }
  .kvStatic.style {
    margin-bottom: 110px;
  }
  .kvStatic.talk {
    margin-bottom: 50px;
  }
  .kvStatic.talk .kvStatic_profile {
    width: 100%;
    height: 60px;
    bottom: -20px;
    margin-left: 0;
    min-width: initial;
    max-width: initial;
    background-color: initial;
    padding: 1px 10px 20px;
  }
  .kvStatic.talk .kvStatic_profile:after {
    content: "";
    display: block;
    clear: both;
  }
  .kvStatic.talk .kvStatic_ajuster {
    width: 50%;
    float: left;
    background-color: #fff;
    padding: 13px 30px 13px 15px;
    text-align: center;
  }
  .kvStatic.talk .kvStatic_ajuster:nth-of-type(2) {
    text-align: center;
    padding: 13px 15px 13px 30px;
  }
  .kvStatic.talk .data_name {
    font-size: 1.4rem;
    margin-left: 5px;
  }
  .kvStatic.talk .data_name:before {
    display: none;
  }
  .kvStatic.talk .kvStatic_line {
    display: none;
  }
  .kvStatic.talk .kvStatic_comment {
    display: none;
  }
  .kvStatic .kvStatic_name span {
    font-size: 1.1rem;
  }
  .kvStatic .kvStatic_name span:before {
    font-size: 1.1rem;
  }
  .kvStatic .kvStatic_profile {
    position: absolute;
    bottom: -87px;
    width: 100%;
    min-width: 300px;
    max-width: 94%;
    height: auto;
    padding: 23px 25px 20px;
    z-index: 1;
    left: 0;
    margin-left: 0;
  }
  .kvStatic .kvStatic_profile .kvStatic_tag .kvStatic_tagInner {
    padding-right: 5px;
    height: 30px;
  }
  .kvStatic .kvStatic_tagWrap:before {
    height: 30px;
    left: -7px;
  }
  .kvStatic .kvStatic_comment {
    margin-top: 15px;
  }
}
.kvMassegeWrap {
  width: 100%;
  margin: 0 auto 140px;
  position: relative;
}
.kvMassegeWrap .kvMassege {
  position: absolute;
  width: 100%;
  height: 500px;
  background-size: cover;
  background-position: center top;
}
.kvMassegeWrap .kvMassege_txt {
  position: relative;
  width: 100%;
  height: 500px;
  margin: 0 auto;
  max-width: 1400px;
}
.kvMassegeWrap .kvMassege_txt .kvMassege_txtInner {
  position: absolute;
  left: 80px;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}
.kvMassegeWrap .kvMassege_txt .kvMassege_txtInner .kvMassege_title {
  font-size: 4.8rem;
  line-height: 1.35;
  color: #31a1b4;
  font-weight: bold;
  margin-bottom: 20px;
}
.kvMassegeWrap .kvMassege_txt .kvMassege_txtInner .kvMassege_pos {
  font-size: 2.1rem;
  line-height: 1.5;
}
.kvMassegeWrap .kvMassege_txt .kvMassege_txtInner .kvMassege_name {
  font-size: 3rem;
  line-height: 1.5;
}
@media all and (max-width: 1200px) {
  .kvMassegeWrap {
    margin: 0 auto 30px;
  }
  .kvMassegeWrap .kvMassege {
    position: relative;
    height: 0;
    padding-bottom: 131%;
  }
  .kvMassegeWrap .kvMassege_txt {
    position: relative;
    height: auto;
    margin: 0 auto;
  }
  .kvMassegeWrap .kvMassege_txt .kvMassege_txtInner {
    position: relative;
    padding: 15px 15px 0;
    left: 0;
    top: 0;
    -webkit-transform: inherit;
        -ms-transform: inherit;
            transform: inherit;
  }
  .kvMassegeWrap .kvMassege_txt .kvMassege_txtInner .kvMassege_title {
    font-size: 2.4rem;
  }
  .kvMassegeWrap .kvMassege_txt .kvMassege_txtInner .kvMassege_pos {
    font-size: 1.4rem;
  }
  .kvMassegeWrap .kvMassege_txt .kvMassege_txtInner .kvMassege_name {
    font-size: 1.6rem;
  }
}
.box_txtAndfigure {
  max-width: 1400px;
  width: 100%;
  margin: 0 auto;
  margin-bottom: 80px;
}
.box_txtAndfigure:after {
  content: "";
  display: block;
  clear: both;
}
.box_txtAndfigure .txtBox {
  padding: 0 60px 0 140px;
}
.box_txtAndfigure .txtBox .title {
  font-size: 3rem;
  line-height: 1.3;
  padding-top: 30px;
  margin-bottom: 37px;
}
.box_txtAndfigure .txtBox .txt {
  line-height: 1.5;
  margin-top: 23px;
  color: #666;
}
.box_txtAndfigure .figureBox >img {
  width: 100%;
  height: auto;
}
.box_txtAndfigure .figureBox,
.box_txtAndfigure .txtBox {
  width: 50%;
  float: right;
}
.box_txtAndfigure.reverce .figureBox,
.box_txtAndfigure.reverce .txtBox {
  float: left;
}
.box_txtAndfigure.reverce .txtBox {
  padding: 0 140px 0 60px;
}
@media all and (min-width: 1201px) {
  .box_txtAndfigure.last {
    margin-bottom: 62px;
  }
}
@media all and (max-width: 1200px) {
  .box_txtAndfigure {
    width: 100%;
    margin: 0 auto;
    margin-bottom: 30px;
    padding: 0 10px;
  }
  .box_txtAndfigure .figureBox,
  .box_txtAndfigure .txtBox {
    width: 100%;
    float: none;
  }
  .box_txtAndfigure.reverce {
    margin-bottom: 30px;
  }
  .box_txtAndfigure.reverce .figureBox,
  .box_txtAndfigure.reverce .txtBox {
    float: none;
  }
  .box_txtAndfigure.reverce .txtBox {
    padding: 0;
  }
  .box_txtAndfigure .txtBox {
    padding: 0;
  }
  .box_txtAndfigure .txtBox .title {
    font-size: 2rem;
    line-height: 1.5;
    padding-top: 20px;
    margin-bottom: 20px;
  }
  .box_txtAndfigure .txtBox .txt {
    line-height: 1.7;
    margin-top: 15px;
  }
  .box_txtAndfigure .figureBox >img {
    width: 100%;
    height: auto;
  }
}
.boxBannerWrap {
  width: 100%;
  margin: 97px auto 0;
  background-size: cover;
  background-position: center top;
  position: relative;
}
.boxBannerWrap {
  width: 100%;
  margin: 97px auto 0;
  background-size: cover;
  background-position: center top;
  position: relative;
}

.boxBannerWrap:after {
  display: block;
  content: "";
  background-color: rgba(0,0,0,0.4);
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 1;
  top: 0;
  left: 0;
}



.shin-boxBannerWrap:after {
  background-color: rgba(0,0,0,0);
}

.boxBannerWrap.typeTalk {
  margin: 0 auto 0;
}
@media all and (max-width: 1200px) {
  .boxBannerWrap {
    margin-top: 45px;
  }
}
.boxBanner {
  height: 440px;
  width: 100%;
  margin: 0 auto;
  max-width: 1246px;
  position: relative;
}
.boxBanner .txt {
  padding-left: 70px;
  position: absolute;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  top: 50%;
  font-size: 4rem;
  line-height: 1.35;
  color: #fff;
  z-index: 2;
}
@media all and (max-width: 1200px) {
  .boxBanner {
    height: 0;
    padding-bottom: 56%;
  }
  .boxBanner .txt {
    font-size: 2rem;
    padding: 0 10px;
  }
}
.boxProfile {
  width: 100%;
  max-width: 1200px;
  margin: 86px auto 90px;
}
.boxProfile.female .txtBox .title {
  color: #f77c8a;
}
.boxProfile.rookie .txtBox .title {
  color: #3eb3e6;
}
.boxProfile:after {
  content: "";
  display: block;
  clear: both;
}
.boxProfile .figureBox,
.boxProfile .txtBox {
  float: left;
}
.boxProfile .figureBox {
  width: 482px;
}
.boxProfile .txtBox {
  width: 520px;
  padding-left: 60px;
}
.boxProfile .txtBox .title {
  font-size: 3rem;
  line-height: 1;
  margin-bottom: 35px;
}
.boxProfile .txtBox .txt {
  margin: 25px 0;
}
@media all and (max-width: 1200px) {
  .boxProfile {
    width: 100%;
    margin: 30px 0 48px;
  }
  .boxProfile .figureBox,
  .boxProfile .txtBox {
    float: none;
    width: 100%;
    padding: 0 15px;
  }
  .boxProfile .txtBox .title {
    display: none;
  }
  .boxProfile .txtBox .txt {
    margin: 22px 0;
  }
}
.panel_txtAndfigure {
  width: 100%;
}
.panel_txtAndfigure:after {
  content: "";
  display: block;
  clear: both;
}
.panel_txtAndfigure .figureBox,
.panel_txtAndfigure .txtBox {
  float: right;
  height: 794px;
  width: 50%;
}
.panel_txtAndfigure .txtBox {
  padding: 0 60px 70px 57px;
}
.panel_txtAndfigure .txtBox .txtBox_inner {
  float: right;
  width: 560px;
}
.panel_txtAndfigure .txtBox .title {
  padding-top: 70px;
  margin-bottom: 20px;
  font-size: 3rem;
  line-height: 1.3;
}

.panel_txtAndfigure .txtBox .title3 {
  padding-top: 70px;
  margin-bottom: 20px;
  font-size: 2rem;
  line-height: 1.3;
  color: #fff;
}

.panel_txtAndfigure .txtBox .title4 {
  padding-top: 70px;
  margin-bottom: 20px;
  font-size: 2rem;
  line-height: 1.3;
  color: #3eb3e6;
}

.panel_txtAndfigure .txtBox .title2 {
  padding-top: 20px;
  margin-bottom: 20px;
  font-size: 2rem;
  line-height: 1.3;
  color: #fff;
}

.panel_txtAndfigure .txtBox .txt {
  line-height: 1.55;
  text-indent: -2rem;
  padding-left: 3rem;
}
.panel_txtAndfigure .txtBox .txt .name {
  display: inline-block;
  font-weight: bold;
  width: 20px;
}
.panel_txtAndfigure.reverce .figureBox,
.panel_txtAndfigure.reverce .txtBox {
  float: left;
}
.panel_txtAndfigure.reverce .txtBox {
  padding: 0 50px 70px 60px;
}
.panel_txtAndfigure.reverce .txtBox .txtBox_inner {
  float: left;
}
.female.section_first .txtBox {
  background-color: #f77c8a;
}
.female.section_first .txtBox .title {
  color: #fff;
}
.female.section_first .txtBox .txt {
  color: #fff;
}
.female.section_first .txtBox .txt .name {
  color: #fff;
}
.female.section_second .txtBox {
  background-color: #fff;
}
.female.section_second .txtBox .title {
  color: #f77c8a;
}
.female.section_second .txtBox .txt .name {
  color: #f77c8a;
}
.female.section_third .txtBox {
  height: auto;
  padding: 0 50px 70px;
}
.female.section_third .txtBox .title {
  color: #f77c8a;
}
.female.section_third .txtBox .txt .name {
  color: #f77c8a;
}
.rookie.section_first .txtBox {
  background-color: #3eb3e6;
}
.rookie.section_first .txtBox .title {
  color: #fff;
}
.rookie.section_first .txtBox .txt {
  color: #fff;
}
.rookie.section_first .txtBox .txt .name {
  color: #fff;
}
.rookie.section_second .txtBox {
  background-color: #fff;
}
.rookie.section_second .txtBox .title {
  color: #3eb3e6;
}
.rookie.section_second .txtBox .txt .name {
  color: #3eb3e6;
}
.rookie.section_third .txtBox {
  height: auto;
  padding: 0 50px 70px;
}
.rookie.section_third .txtBox .title {
  color: #3eb3e6;
}
.rookie.section_third .txtBox .txt .name {
  color: #3eb3e6;
}
.section_third .figureBox,
.section_third .txtBox {
  float: none;
  width: 100%;
}
.section_third .txtBox {
  height: auto;
  padding: 0 77px 70px;
}
.section_third .txtBox .txtBox_inner {
  max-width: 1400px;
  margin: 0 auto;
  width: 100%;
  float: none;
}
@media screen and (max-width: 1399px) {
  .panel_txtAndfigure .txtBox .txtBox_inner {
    width: 100%;
    float: none;
  }
  .panel_txtAndfigure.reverce .txtBox .txtBox_inner {
    width: 100%;
    float: none;
  }
}
@media all and (max-width: 1200px) {
  .panel_txtAndfigure .figureBox,
  .panel_txtAndfigure .txtBox {
    width: 100%;
    float: none;
    height: auto;
  }
  .panel_txtAndfigure .figureBox {
    height: auto;
    width: 100%;
    background-position: 0 0;
    padding-bottom: calc(100% * 794 / 700); /* calc(100*ImageHeight/ImageWidth)% */
    background-size: contain;
  }
  .panel_txtAndfigure .txtBox {
    width: 100%;
    height: auto;
    padding: 0 15px 30px;
  }
  .panel_txtAndfigure .txtBox .txtBox_inner {
    float: none;
  }
  .panel_txtAndfigure .txtBox .title {
    font-size: 2rem;
    line-height: 1.5;
    padding-top: 20px;
    margin-bottom: 25px;
  }
  .panel_txtAndfigure .txtBox .txt {
    line-height: 1.7;
  }
  .panel_txtAndfigure.reverce .txtBox {
    padding: 0 15px 30px;
  }
  .panel_txtAndfigure.reverce .txtBox .txtBox_inner {
    float: none;
  }
  .panel_txtAndfigure.section_third .figureBox {
    padding-bottom: calc(100% * 794 / 1400);
  }
  .panel_txtAndfigure.section_third .txtBox {
    padding: 0 15px 30px;
  }
}
.footerWrap {
  width: 100%;
  position: relative;
}
@media all and (max-width: 1200px) {
  .footerWrap {
    min-width: initial;
  }
}
.footerHead {
  background-color: #3d3d3d;
}
.footerList {
  width: 100%;
  max-width: 1554px;
  margin: 0 auto;
  background-color: #3d3d3d;
  padding: 72px 77px 76px;
}
.footerList:after {
  content: "";
  display: block;
  clear: both;
}
.footerList .title {
  border-bottom: 1px solid #9e9e9e;
  padding-bottom: 6px;
  color: #fff;
  margin-bottom: 20px;
}
.footerList .title > a {
  transition: all 0.3s ease;
}
.footerList .title > a:hover {
  color: #31a1b4;
}
.footerList .title span {
  font-weight: bold;
  font-size: 1.8rem;
  display: inline-block;
  margin-right: 11px;
  letter-spacing: 1.4px;
}
.footerList >.item {
  float: left;
  width: 48%;
  margin-right: 4%;
}
.footerList >.item:nth-child(2n) {
  margin-right: 0;
}
.footerList >.item:nth-child(-n+2) {
  margin-bottom: 40px;
}
@media all and (max-width: 1200px) {
  .footerList {
    min-width: initial;
    width: 100%;
    background-color: #3d3d3d;
    padding: 34px 10px 30px;
  }
  .footerList:after {
    content: "";
    display: block;
    clear: both;
  }
  .footerList .title {
    font-size: 1.1rem;
    border-bottom: none;
    margin-bottom: 8px;
    padding-bottom: 11px;
  }
  .footerList .title span {
    font-size: 1.4rem;
    margin-right: 7px;
  }
  .footerList >.item {
    float: none;
    margin-right: 0px;
    width: 100%;
  }
  .footerList >.item.contact {
    width: 100%;
  }
  .footerList >.item.contact .title {
    border-bottom: 1px solid #9e9e9e;
  }
  .footerList >.item:first-child {
    margin-left: 0;
  }
  .footerList >.item:nth-child(-n+2) {
    margin-bottom: 0;
  }
}
.box_footerCont:after {
  content: "";
  display: block;
  clear: both;
}
.box_footerCont >.item {
  float: left;
}
.box_footerCont >.item:first-child {
  margin-right: 40px;
}
.box_footerCont .nav_footer:after {
  content: "";
  display: block;
  clear: both;
}
.box_footerCont .nav_footer li {
  color: #fff;
  margin-bottom: 9px;
}
.box_footerCont .nav_footer li a:hover {
  border-bottom: 1px solid #fff;
}
.box_footerCont .nav_footer li span {
  display: inline-block;
  margin-left: 10px;
}
.box_footerCont .list_footerInfo {
  color: #fff;
}
.box_footerCont .list_footerInfo >.item {
  margin-bottom: 19px;
}
.box_footerCont .list_footerInfo >.item:last-child {
  margin-bottom: 0;
}
@media all and (max-width: 1200px) {
  .box_footerCont {
    display: none;
  }
  .contact .box_footerCont {
    display: block;
  }
  .box_footerCont .list_footerInfo {
    margin-top: 18px;
  }
  .box_footerCont .list_footerInfo >.item {
    margin-bottom: 10px;
  }
}
.footerBottom {
  width: 100%;
  background-color: #fff;
  padding: 20px 77px;
  max-width: 1554px;
  margin: 0 auto;
}
.footerBottom:after {
  content: "";
  display: block;
  clear: both;
}
.footerBottom .copy {
  color: #999;
  float: left;
  display: table;
  height: 35px;
}
.footerBottom .copy .copy_inner {
  display: table-cell;
  vertical-align: middle;

}
.footerBottom .logoWrap {
  text-align: right;
  float: right;
}
.footerBottom .logoWrap >a {
  display: block;
}
@media all and (max-width: 1200px) {
  .footerBottom {
    width: 100%;
    display: block;
    position: relative;
    padding: 11px 10px;
  }
  .footerBottom .copy,
  .footerBottom .logoWrap {
    float: none;
  }
  .footerBottom .copy {
    text-align: center;
    font-size: 0.7rem;
    display: block;
    height: auto;
  }
  .footerBottom .copy .copy_inner {
    display: inline;
  }
  .footerBottom .logoWrap {
    text-align: center;
    margin: 10px auto;
    width: 235px;
  }
  .footerBottom .logoWrap img {
    width: 100%;
    height: auto;
  }
}
.pageTop {
  display: block;
  width: 165px;
  margin: 0 auto;
  position: absolute;
  top: -106px;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: 10;
}
.pageTop:hover .txt {
  text-decoration: underline;
}
.pageTop .txt {
  text-align: center;
  color: #31a1b4;
  margin-bottom: 14px;
  font-size: 1.8rem;
}
.pageTop .icon_pageTop {
  position: relative;
  display: block;
  content: "";
  background: #3d3d3d;
  height: 70px;
  width: 140px;
  border-radius: 70px 70px 0 0;
  margin: 0 auto;
}
.pageTop .icon_pageTop:after {
  content: '';
  width: 21px;
  height: 21px;
  border: 0px;
  border-top: solid 4px #fff;
  border-right: solid 4px #fff;
  -ms-transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  position: absolute;
  top: 50%;
  left: 50%;
  margin-left: -12px;
  margin-top: 1px;
}
@media all and (max-width: 1200px) {
  .pageTop {
    top: -67px;
  }
  .pageTop .txt {
    font-size: 1.3rem;
  }
  .pageTop .icon_pageTop {
    height: 35px;
    width: 70px;
    border-radius: 35px 35px 0 0;
  }
  .pageTop .icon_pageTop:after {
    width: 10px;
    height: 10px;
    border: 0px;
    border-top: solid 3px #fff;
    border-right: solid 3px #fff;
    margin-left: -5px;
    margin-top: 0;
  }
}
.headerWrap {
  width: 100%;
  left: 0;
  z-index: 100;
  background-color: #fff;
}
.load .headerWrap {
  display: none;
}

@media all and (max-width: 1200px) {
  .headerWrap {
    min-width: initial;
  }
}
.headerWrap.headerWrap_top {
  position: absolute;
}


.headerWrap.fixed {
  position: fixed;
  top: 0;
  height: 100px;
}

@media all and (max-width: 1200px) {
  .headerWrap.headerWrap_top , .headerWrap.innerpage{
    position: fixed;
    top: 0 !important;
  }

  .headerWrap.fixed {
    height: 55px;
  }
}

/*  ヘッダー・メニュー   */


/*親要素*/
.header {
  max-width: 1554px;
  margin: 0 auto;
  position: relative;
}
.header:after {
  content: "";
  display: block;
  clear: both;
}

/*header内のflexboxのみの記述（flexbox単体でセレクタ指定しないこと）*/
.header .flexBox{
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 100px;
}


.header .gnav {
  display: flex;
  width: 650px;
  justify-content: space-around;
}
.header .gnav .item{
  padding: 10px 15px;
}

.header .gnav .item:last-child{
  background-color:#c2e2e7 ;
  padding: 10px 30px;
}
.header .gnav .item:last-child p{
  line-height: 1.8rem;
  text-align: center;
  font-size: small;
}
.header .gnav .item:last-child p:first-child{
  font-size: larger;
  font-weight:500;
  text-align: center;
}

.header .gnav .nameJp,
.header .gnav .nameEn {
  display: block;
  text-align: center;
}
.header .gnav .nameJp {
  font-size: 1.1rem;
  color: #7c7f80;
}
.header .gnav .nameEn {
  font-size: 1.8rem;
  transition: all 0.3s ease;
}
.header .gnavInner.active .nameEn,
.header .gnavInner:hover .nameEn {
  color: #31a1b4;
}

.logoBox{
display: flex;
}
.entryBnr{
  margin-left: 10px;
}

.logoBox img{
  transition:0.3s;
  display:block;
  width:100%;}

.logoBox :hover img{
  opacity:0.7;
}

@media all and (max-width: 1200px) {
  .header {
    width: 100%;
    padding: 0;
    height: 55px;
    top:0;
    z-index: 1000;
  }

  .header .gnav{
    display: flex;
        flex-flow: column;
        width: 50vw;
        justify-content: space-around;
  }
  /* .logo{
    position: fixed;
    left: 0;
  } */

  .header .flexBox{
    display: flex;
    flex-flow: column;
    align-items: center;
    height: fit-content;
    background-color: rgba(255, 255, 255,0.9);
  }

  .header .logoWrap {
    padding: 10px 0;
  }
  .header .logoWrap .logo {
    width: 84px;
    height: auto;
    display: block;
    position: fixed;
  }

  .header .gnavWrap:after {
    content: "";
    display: block;
    clear: both;
  }
  .header .gnav:after {
    content: "";
    display: block;
    clear: both;
  }

  .header .gnavWrap {
    display: none;
    margin-top: 55px;
    padding-top: 10px;
    padding-bottom: 30px;
    position: relative;

  }
  .header .gnav {
    margin-top: 0;
  }
  .header .gnav .item {
    margin-left: 0;
    margin-bottom: 24px;
  }
  .header .gnav .item:last-child {
    margin-bottom: 0;
  }
  .header .gnav .nameJp {
    font-size: 1rem;
    line-height: 1;
  }
  .header .gnav .nameEn {
    font-size: 1.6rem;
  }
  .logoBox{
    position: fixed;
    left: 0;
    z-index: 2000;
    }

}
.nav_trigger {
  display: none;
}
@media all and (max-width: 1200px) {
  .nav_trigger {
    display: block;
    position: absolute;
    top: 20px;
    right: 10px;
    width: 20px;
    height: 15px;
    cursor: pointer;
    text-align: center;
  }
  .nav_trigger img {
    width: auto;
    height: 6px;
    margin-top: 32px;
  }
  .nav_trigger .bar {
    display: block;
    position: absolute;
    left: 0;
    width: 20px;
    height: 2px;
    background-color: #31a1b4;
    transition: all 0.3s;
    border-radius: 3px;
  }
  .nav_trigger .bar:nth-of-type(1) {
    top: 0;
  }
  .nav_trigger .bar:nth-of-type(2) {
    top: 6px;
  }
  .nav_trigger .bar:nth-of-type(3) {
    top: 12px;
  }
  .nav_trigger.active .bar:nth-of-type(1) {
    -webkit-transform: translateY(6px) rotate(-45deg);
    -ms-transform: translateY(6px) rotate(-45deg);
    transform: translateY(6px) rotate(-45deg);
  }
  .nav_trigger.active .bar:nth-of-type(2) {
    opacity: 0;
  }
  .nav_trigger.active .bar:nth-of-type(3) {
    -webkit-transform: translateY(-6px) rotate(45deg);
    -ms-transform: translateY(-6px) rotate(45deg);
    transform: translateY(-6px) rotate(45deg);
  }
}
.headLine_style {
  text-align: center;
  font-size: 4rem;
  margin-bottom: 55px;
}
@media all and (max-width: 1200px) {
  .headLine_style {
    margin-bottom: 10px;
    font-size: 2.3rem;
  }
}
.listTimelineWrap {
  width: 100%;
  margin: 55px auto 55px;
  position: relative;
}
.listTimelineWrap:before {
  top: 10px;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  position: absolute;
  width: 100%;
  height: 20px;
  display: block;
  content: "";
}
.listTimelineWrap.step:before {
  background: #31a1b4;
}
.listTimelineWrap.schedule:before {
  background: #2dccb1;
}
.listTimeline {
  position: relative;
  max-width: 1246px;
  margin: 0 auto;
}
.listTimeline:after {
  content: "";
  display: block;
  clear: both;
}
.listTimeline .item {
  width: 19%;
  float: left;
  margin-left: 10px;
}
.listTimeline .item:first-child {
  margin-left: 0;
}
.listTimeline .item:last-child .arrow:after {
  display: none;
}
.listTimeline .item:last-child .arrow:before {
  display: none;
}
.listTimeline .item >.txt {
  padding: 45px 20px 0;
}
.listTimeline .arrow {
  padding-top: 5px;
  width: 100%;
  height: 20px;
  position: relative;
}
.step .listTimeline .arrow {
  background: #31a1b4;
}
.step .listTimeline .arrow:after {
  border-left-color: #31a1b4;
}
.step .listTimeline .arrow .data {
  border: 2px solid #31a1b4;
}
.step .listTimeline .arrow .txt_data {
  color: #31a1b4;
}
.schedule .listTimeline .arrow {
  background: #2dccb1;
}
.schedule .listTimeline .arrow:after {
  border-left-color: #2dccb1;
}
.schedule .listTimeline .arrow .data {
  border: 2px solid #2dccb1;
}
.schedule .listTimeline .arrow .txt_data {
  color: #2dccb1;
}
.listTimeline .arrow:after {
  border-left: 10px solid #31a1b4;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  content: "";
  position: absolute;
  right: -5%;
  -webkit-transform: translateX(-10px);
      -ms-transform: translateX(-10px);
          transform: translateX(-10px);
  top: 0;
  z-index: 2;
}
.listTimeline .arrow:before {
  border-left: 20px solid #f0f0f0;
  border-top: 20px solid transparent;
  border-bottom: 20px solid transparent;
  content: "";
  position: absolute;
  right: -5%;
  top: -10px;
  z-index: 1;
}
.listTimeline .arrow .data {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-70%, -50%);
      -ms-transform: translate(-70%, -50%);
          transform: translate(-70%, -50%);
  width: 83px;
  height: 83px;
  border-radius: 50%;
  background-color: #fff;
  font-size: 1.8rem;
  font-weight: bold;
  display: table;
}
.listTimeline .arrow .txt_data {
  display: table-cell;
  vertical-align: middle;
  text-align: center;
}
@media all and (max-width: 1200px) {
  .listTimelineWrap {
    width: 100%;
    min-width: initial;
    margin: 10px auto 20px;
    position: relative;
  }
  .listTimelineWrap:before {
    display: none;
  }
  .listTimeline {
    padding: 0 10px 0 31px;
    width: 100%;
  }
  .listTimeline:after {
    content: "";
    display: block;
    clear: both;
  }
  .listTimeline .item {
    width: 100%;
    float: none;
    margin-left: 0;
    display: table;
  }
  .listTimeline .item >.txt {
    padding: 0 0 0 24px;
    display: table-cell;
    vertical-align: middle;
  }
  .listTimeline .arrow {
    width: 10px;
    height: 60px;
    display: table-cell;
  }
  .step .listTimeline .arrow:after {
    border-left-color: transparent;
    border-color: #31a1b4 transparent transparent transparent;
  }
  .schedule .listTimeline .arrow:after {
    border-left-color: transparent;
    border-color: #2dccb1 transparent transparent transparent;
  }
  .listTimeline .arrow:after {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 5px 5px 0 5px;
    bottom: -3px;
    right: 0;
    top: inherit;
    -webkit-transform: initial;
        -ms-transform: initial;
            transform: initial;
  }
  .listTimeline .arrow:before {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 8px 8px 0 8px;
    border-color: #f0f0f0 transparent transparent transparent;
    bottom: -6px;
    right: -3px;
    top: inherit;
  }
  .listTimeline .arrow .data {
    width: 42px;
    height: 42px;
  }
  .listTimeline .arrow .txt_data {
    font-size: 1rem;
  }
}
.inviewfadeIn {
  opacity: 0;
  transition: 0.8s;
}
.fadeIn {
  opacity: 1;
}
.inviewUp {
  -webkit-transform: translate(0, 40px);
      -ms-transform: translate(0, 40px);
          transform: translate(0, 40px);
  transition: 0.8s;
}
.Up {
  -webkit-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
          transform: translate(0, 0);
}
.inviewzoomIn {
  -webkit-transform: scale(0, 0);
      -ms-transform: scale(0, 0);
          transform: scale(0, 0);
  transition: 0.8s;
}
.zoomIn {
  -webkit-transform: scale(1, 1);
      -ms-transform: scale(1, 1);
          transform: scale(1, 1);
}
.inviewfadeInUp {
  opacity: 0;
  -webkit-transform: translate(0, 60px);
      -ms-transform: translate(0, 60px);
          transform: translate(0, 60px);
  transition: 0.8s;
}
.fadeInUp {
  opacity: 1;
  -webkit-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
          transform: translate(0, 0);
}
.js_fadeIn .figureBox,
.js_fadeIn .title,
.js_fadeIn .txt {
  opacity: 0;
  -webkit-transform: translate(0, 60px);
      -ms-transform: translate(0, 60px);
          transform: translate(0, 60px);
  transition: 0.8s;
}
.js_fadeIn .figureBox.fadeInUp,
.js_fadeIn .title.fadeInUp,
.js_fadeIn .txt.fadeInUp {
  opacity: 1;
  -webkit-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
          transform: translate(0, 0);
}
.js_fadeInTalk-figure {
  opacity: 0;
  -webkit-transform: translate(0, 60px);
      -ms-transform: translate(0, 60px);
          transform: translate(0, 60px);
  transition: 0.8s;
}
.js_fadeInTalk-figure.fadeInUp {
  opacity: 1;
  -webkit-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
          transform: translate(0, 0);
}
.js_fadeInTalk-txt .title,
.js_fadeInTalk-txt .txt {
  opacity: 0;
  -webkit-transform: translate(0, 60px);
      -ms-transform: translate(0, 60px);
          transform: translate(0, 60px);
  transition: 0.8s;
}
.js_fadeInTalk-txt .title.fadeInUp,
.js_fadeInTalk-txt .txt.fadeInUp {
  opacity: 1;
  -webkit-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
          transform: translate(0, 0);
}
.js_fadeInTalk .figureBox {
  -webkit-transform: translate(60px, 0);
      -ms-transform: translate(60px, 0);
          transform: translate(60px, 0);
}
.js_fadeInTalk.reverce .figureBox {
  -webkit-transform: translate(-60px, 0);
      -ms-transform: translate(-60px, 0);
          transform: translate(-60px, 0);
}
.js_fadeInTalk .title,
.js_fadeInTalk .txt {
  -webkit-transform: translate(0, 60px);
      -ms-transform: translate(0, 60px);
          transform: translate(0, 60px);
}
.js_fadeInTalk .figureBox,
.js_fadeInTalk .title,
.js_fadeInTalk .txt {
  opacity: 0;
  transition: 0.8s;
}
.js_fadeInTalk .figureBox.fadeInUp,
.js_fadeInTalk .title.fadeInUp,
.js_fadeInTalk .txt.fadeInUp {
  opacity: 1;
  -webkit-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
          transform: translate(0, 0);
}
.js_fadeInProfile .figureBox {
  -webkit-transform: translate(-70px, 0);
      -ms-transform: translate(-70px, 0);
          transform: translate(-70px, 0);
}
.js_fadeInProfile .title,
.js_fadeInProfile .txt {
  -webkit-transform: translate(0, 60px);
      -ms-transform: translate(0, 60px);
          transform: translate(0, 60px);
}
.js_fadeInProfile .figureBox,
.js_fadeInProfile .title,
.js_fadeInProfile .txt {
  opacity: 0;
  transition: 0.8s;
}
.js_fadeInProfile .figureBox.fadeInUp,
.js_fadeInProfile .title.fadeInUp,
.js_fadeInProfile .txt.fadeInUp {
  opacity: 1;
  -webkit-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
          transform: translate(0, 0);
}
.js_slideRight .data,
.js_slideRight .txt {
  opacity: 0;
}
.js_slideRight .data {
  transition: all 0.5s ease;
  -webkit-transform: translate(-70%, -50%);
      -ms-transform: translate(-70%, -50%);
          transform: translate(-70%, -50%);
}
.js_slideRight .data.fadeSlideLeft {
  opacity: 1;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.js_slideRight .txt {
  transition: all 0.5s ease 0.5s;
  position: relative;
  left: -20px;
}
.js_slideRight .txt.fadeSlideLeft {
  opacity: 1;
  left: 0;
}
.js_kvAnimation {
  overflow: hidden;
}
.main-visual {
  width: 100%;
  height: 100vh;
  padding: 40px;
  box-sizing: border-box;
  visibility: visible !important;
}
.main-visual .main-visual__wrapper {
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
}
.main-visual .main-visual__logo {
  position: absolute;
  top: 50%;
  left: 560px;
  z-index: 4;
  overflow: hidden;
}
.main-visual .main-visual__left {
  position: absolute;
  left: -161px;
  width: 58%;
  height: 100%;
  z-index: 2;
  overflow: hidden;
  -webkit-transform: skewX(-20deg);
  -ms-transform: skewX(-20deg);
  transform: skewX(-20deg);
  -webkit-transform-origin: left center;
  -ms-transform-origin: left center;
  transform-origin: left center;
}
.main-visual .main-visual__left:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255,198,39,0.4);
  z-index: 3;
}
.main-visual .main-visual__left .main-visual__logo {
  left: 0;
  -webkit-transform: skewX(20deg) translate(0, -50%);
  -ms-transform: skewX(20deg) translate(0, -50%);
  transform: skewX(20deg) translate(0, -50%);
}
.main-visual .main-visual__left .main-visual__image {
  height: 100%;
}
.main-visual .main-visual__left .main-visual__image .main-visual__video-cover {
  width: 100%;
  height: 100%;
  -webkit-transform: skewX(20deg) translateX(60px);
  -ms-transform: skewX(20deg) translateX(60px);
  transform: skewX(20deg) translateX(60px);
}
.main-visual .main-visual__left .main-visual__image img,
.main-visual .main-visual__left .main-visual__image video {
  width: 110%;
  width: 110vw;
  height: 100%;
  object-fit: cover;
}
.main-visual .main-visual__right {
  position: absolute;
  right: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.main-visual .main-visual__right .main-visual__logo {
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: 1;
}
.main-visual .main-visual__right:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0,147,175,0.4);
}
.main-visual .main-visual__right .main-visual__image {
  height: 100%;
  overflow: hidden;
}
.main-visual .main-visual__right .main-visual__image img,
.main-visual .main-visual__right .main-visual__image video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.main-visual .main-visual__lead {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 714px;
  margin-left: -357px;
  z-index: 10;
  text-align: center;
  margin-top: -40px;
}
.main-visual .main-visual__lead .main-visual__lead-slogan {
  position: relative;
  -webkit-transform: translateY(60px);
  -ms-transform: translateY(60px);
  transform: translateY(60px);
  opacity: 0;
}
.main-visual .main-visual__lead .main-visual__lead-logo {
  padding-top: 40px;
  position: relative;
  -webkit-transform: translateY(40px);
  -ms-transform: translateY(40px);
  transform: translateY(40px);
  opacity: 0;
}
.main-visual .main-visual__scroll {
  position: absolute;
  bottom: 15px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  z-index: 10;
  cursor: pointer;
}
.main-visual .main-visual__scroll .glyph-scrolldown {
  display: block;
  font-size: 16px;
  font-size: 1.6rem;
  color: #fff;
  -webkit-transform: translateY(0px);
  -ms-transform: translateY(0px);
  transform: translateY(0px);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-animation: scrolldownAnimation 2.2s ease-out 0s infinite;
  animation: scrolldownAnimation 2.2s ease-out 0s infinite;
}
.main-visual .main-visual__scroll .glyph-scrolldown:nth-child(2) {
  -webkit-transform: translateY(-4px);
  -ms-transform: translateY(-4px);
  transform: translateY(-4px);
  -webkit-animation: scrolldownAnimation 2.2s ease-out 0.1s infinite;
  animation: scrolldownAnimation 2.2s ease-out 0.1s infinite;
}
.main-visual .main-visual__scroll .glyph-scrolldown:nth-child(3) {
  -webkit-transform: translateY(-8px);
  -ms-transform: translateY(-8px);
  transform: translateY(-8px);
  -webkit-animation: scrolldownAnimation 2.2s ease-out 0.2s infinite;
  animation: scrolldownAnimation 2.2s ease-out 0.2s infinite;
}
@-webkit-keyframes scrolldownAnimation {
  0% {
    opacity: 0;
  }
  40% {
    opacity: 0;
  }
  90% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
.txt_bold {
  font-weight: bold;
}
@-webkit-keyframes scrolldownAnimation {
  0% {
    opacity: 0;
  }
  40% {
    opacity: 0;
  }
  90% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes scrolldownAnimation {
  0% {
    opacity: 0;
  }
  40% {
    opacity: 0;
  }
  90% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
.boxTalk {
  width: 100%;
  position: relative;
  margin-bottom: 80px;
}
.boxTalk:after {
  content: "";
  display: block;
  clear: both;
}
.boxTalk .boxTalk_txtArea {
  position: absolute;
  z-index: 50;

  top: 10px;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
}
.boxTalk .boxTalk_txtArea .title {
  text-align: center;
}
.boxTalk .boxTalk_txtArea .title >span {
  display: block;
  color: #fff;
}
.boxTalk .boxTalk_txtArea .title_en {
  font-size: 5.6rem;
  line-height: 1.3;
  letter-spacing: 4px;
  margin-bottom: 5px;
  font-weight: bold;
}
.boxTalk .boxTalk_txtArea .title_ja {
  font-size: 2.4rem;
}
.boxTalk .boxTalk_item {
  background-size: cover;
  background-position: center top;
  background-repeat: no-repeat;
  display: block;
  float: left;
  width: 100%;
  height: 480px;
  position: relative;
  transition: all 0.3s ease;
}
.boxTalk .boxTalk_item:hover .female {
  border-color: #f77c8a;
  background-color: #f77c8a;
}
.boxTalk .boxTalk_item:hover .rookie {
  border-color: #3eb3e6;
  background-color: #3eb3e6;
}
.boxTalk .boxTalk_item:hover:after {
  background-color: rgba(0,0,0,0);
}
.boxTalk .boxTalk_item:after {
  transition: all 0.3s ease;
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  content: "";
  height: 100%;
  width: 100%;
  background-color: rgba(0,0,0,0.4);
}
.boxTalk .boxTalk_item.rookie {
  background: url("../img/top/kv_talk1.jpg")center 15%;
  background-size: cover;
}
@media all and (min-width: 1200px) {
  .boxTalk .boxTalk_item.rookie {
    background: url("../img/top/kv_talk1.jpg")center 15%;
    background-size: auto;
  }
  /* 更新ここから */

}

.boxTalk .boxTalk_inner {
  width: 100%;
  padding-top: 340px;
}
@media all and (max-width: 1200px) {
  .boxTalk {
    margin-bottom: 40px;
  }
  .boxTalk .boxTalk_txtArea {
    position: relative;
    -webkit-transform: inherit;
        -ms-transform: inherit;
            transform: inherit;
    top: inherit;
    left: inherit;
    padding: 20px 0 10px 0;
  }
  .boxTalk .boxTalk_txtArea .title {
    text-align: center;
  }
  .boxTalk .boxTalk_txtArea .title >span {
    color: #000;
  }
  .boxTalk .boxTalk_txtArea .title_en {
    font-size: 2.8rem;
    line-height: 1.3;
  }
  .boxTalk .boxTalk_txtArea .title_ja {
    font-size: 1.2rem;
  }

  .boxTalk .boxTalk_item {
    float: none;
    width: 100%;
    height: 240px;
  }
  .boxTalk .boxTalk_item:hover .female {
    border-color: #f77c8a;
    background-color: #f77c8a;
  }
  .boxTalk .boxTalk_item:hover .rookie {
    border-color: #3eb3e6;
    background-color: #3eb3e6;
  }
  .boxTalk .boxTalk_item:hover:after {
    background-color: rgba(0,0,0,0);
  }
  .boxTalk .boxTalk_item:after {
    display: none;
  }
  .boxTalk .boxTalk_inner {
    padding-top: 105px;
  }
  .device_pc .boxTalk .boxTalk_item {
    padding-bottom: 68%;
  }
}
@keyframes animate {
  0% {
    background-position: 0;
  }
  100% {
    background-position: -1000px 0;
  }
}
@-webkit-keyframes animate {
  0% {
    background-position: 0;
  }
  100% {
    background-position: -1000px 0;
  }
}
/* ============================= Talk Box ==================================== */

/* .talkBox{
  position: relative;
   padding-top: 420px;
   padding-bottom: 55px;
   background-color: red;
}
.talkBox .title .tl_bgcolor{
  background-color: #fff;
}

.talkBox .kv .title {
  font-size: 5.6rem;
  color: #000;
  font-weight: bold;
  line-height: 1.3;
}

.talkBox .kv .txt {
  font-size: 2.4rem;
  color: #fff;
}
.talkBox .kv {
  position: absolute;
  top: 0;
  left: 0;
  height: 440px;
  width: 100%;
  text-align: center;
  padding-top: 10px;
} */

.boxTop {
  position: relative;
  padding-top: 420px;
  padding-bottom: 55px;
}


.boxTop.talk .kv {
  background: url("../img/top/kv_talk1.jpg") center 17%/cover no-repeat;
}
@media all and (min-width: 1200px) {
  .boxTop.talk .kv {
    background: url("../img/top/kv_talk1.jpg") center 27%/cover no-repeat;
  }
}


.boxTop.interview {
  background-color: #f0f0f0;
}
.boxTop.interview .kv {
  background: url("../img/top/kv_interview_pc.jpg") center center/cover no-repeat;
}
.boxTop.style {
  background: url("../img/bg/bg.gif") center top/cover no-repeat;
}
.boxTop.style .kv {
  background: url("../img/top/kv_style_pc.jpg") center center/cover no-repeat;
}
.boxTop .kv {
  position: absolute;
  top: 0;
  left: 0;
  height: 440px;
  width: 100%;
  text-align: center;
  padding-top: 10px;
}
.boxTop .kv .title {
  font-size: 5.6rem;
  color: #000;
  font-weight: bold;
  line-height: 1.3;
}
.boxTop .kv .txt {
  font-size: 2.4rem;
  color: #fff;
  text-shadow: 0px 0px 5px #9b9b9b;
}

@media all and (max-width: 1200px) {
  .boxTop {
    padding-top: 190px;
    padding-bottom: 10px;
  }
  .boxTop.interview .kv {
    background: url("../img/top/kv_interview_sp.jpg") center top/cover no-repeat;
  }
  .boxTop.style {
    background: url("../img/bg/bg_sp.gif") center top/contain repeat-y;
  }
  .boxTop.style .kv {
    background: url("../img/top/kv_style_sp.jpg") center top/cover no-repeat;
  }
  .boxTop .kv {
    height: 220px;
    /** padding-top: 85px; **/
    padding-top: 10px;
  }
  .boxTop .kv .title {
    font-size: 2.8rem;
    margin-bottom: 0;
  }
  .boxTop .kv .txt {
    font-size: 1.2rem;
    color: #fff;
  }
  .device_pc .boxTop {
    padding-top: 60%;
  }
  .device_pc .boxTop .kv {
    height: 0;
    /** padding: 25% 0 43%; **/
    padding: 3% 0 43%;
  }
}



.listPanel {
  max-width: 1550px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}

.flexBox{
  display: flex;
  column-gap: 40px;
}

.listPanel:after {
  content: "";
  display: block;
  clear: both;
}
.listPanel .item {
  width: 32%;
  margin-bottom: 64px;
  transition-duration: .4s;
}
.listPanel .item:nth-child(3n) {
  margin-right: 0;
}
.listPanel .item >a {
  display: block;
}
.listPanel .item >a img {
  width: 100%;
  height: auto;
}
.listPanel .item .body {
  padding: 30px 0 15px 34px;
  background-color: #fff;
  position: relative;
}
.listPanel .item .body:after {
  content: "";
  display: block;
  clear: both;
}
.listPanel .item .body dl {
  float: left;
  width: 200px;
  margin-bottom: 15px;
}
.listPanel .item .body dl:after {
  content: "";
  display: block;
  clear: both;
}
.listPanel .item .body dl dt {
  float: left;
  font-size: 1.3rem;
  vertical-align: bottom;
}
.listPanel .item .body dl dt.txtName {
  clear: both;
}
.listPanel .item .body dl dt.txtName,
.listPanel .item .body dl dt.txtYear {
  margin-right: 10px;
}
.listPanel .item .body dl dt span {
  vertical-align: middle;
}
.listPanel .item .body dl dd {
  float: left;
}
.listPanel .item .body dl dd.txtName:after {
  padding: 0 12px;
  display: inline-block;
  content: "/";
  color: #a0a0a0;
}
.listPanel .item .body dl dd.txtYear {
  margin-right: 10px;
}
/* ホバーアクション */
.listPanel .item:hover{
  transform: scale(1.02);
}
@media all and (max-width: 1200px) {
  .listPanel {
    width: 100%;
    padding: 0 10px;
  }
  .flexBox{
    display: flex;

    flex-flow: column;
      column-gap: 40px;
    }


  .listPanel .item {
    height: auto;
    width: 100%;
    float: none;
    margin-bottom: 30px;
    margin-right: 0;
  }
  .listPanel .item .body {
    padding: 20px 0 20px 20px;
  }
  .listPanel .item .body dl {
    margin-bottom: 0;
    width: auto;
  }
  .listPanel .item .body dl dt {
    font-size: 1rem;
  }
  .listPanel .item .body dl dd {
    font-size: 1rem;
  }
}
.labelWrap {
  position: relative;
  width: 130px;
  float: right;
  margin-bottom: 15px;
  z-index: 1;
}
.labelWrap:after {
  display: block;
  content: "";
  width: 30px;
  height: 40px;
  -webkit-transform: skew(20deg);
      -ms-transform: skew(20deg);
          transform: skew(20deg);
  position: absolute;
  left: -7px;
  top: 0;
  z-index: -1;
}
.interview .labelWrap {
  background-color: #f06967;
}
.interview .labelWrap:after {
  background-color: #f06967;
}
.style .labelWrap {
  background-color: #a98fdb;
}
.style .labelWrap:after {
  background-color: #a98fdb;
}
.labelWrap .label {
  display: table;
  color: #fff;
  width: 100%;
}
.labelWrap .label .labelinner {
  display: table-cell;
  height: 40px;
  vertical-align: middle;
  text-align: center;
}
@media all and (max-width: 1200px) {
  .labelWrap {
    width: 100px;
    margin-bottom: 0;
  }
  .labelWrap:after {
    height: 30px;
  }
  .labelWrap .label .labelinner {
    height: 30px;
    vertical-align: middle;
    text-align: center;
  }
}
.boxMessageWrap {
  background-color: #31a1b4;
  width: 100%;
}
.boxMessageWrap .boxMassage {
  position: relative;
  padding: 80px 77px 60px;
  max-width: 1246px;
  margin: 0 auto;
}
.boxMessageWrap .boxMassage:after {
  content: "";
  display: block;
  clear: both;
}
.boxMessageWrap .boxMassage .boxMassageInner {
  float: left;
  padding-left: 620px;
  padding-top: 52px;
}
.boxMessageWrap .boxMassage .boxMassageInner .title {
  color: #fff;
  font-size: 6.2rem;
  line-height: 1.3;
  font-weight: bold;
}
.boxMessageWrap .boxMassage .boxMassageInner .titleJp {
  color: #fff;
  font-size: 2.4rem;
  margin-bottom: 19px;
}
.boxMessageWrap .boxMassage .boxMassageInner .txtLead {
  color: #fff;
  margin-bottom: 10px;
}
.boxMessageWrap .boxMassage .boxMassageInner .figureBox {
  position: absolute;
  left: 77px;
  border: 8px solid #fff;
  top: 80px;
}
@media all and (max-width: 1200px) {
  .boxMessageWrap .boxMassage {
    position: relative;
    padding: 29px 10px;
    width: 100%;
    text-align: center;
  }
  .boxMessageWrap .boxMassage:after {
    content: "";
    display: block;
    clear: both;
  }
  .boxMessageWrap .boxMassage .boxMassageInner {
    float: none;
    padding-left: 0;
    padding-top: 0;
  }
  .boxMessageWrap .boxMassage .boxMassageInner .title {
    font-size: 2.8rem;
  }
  .boxMessageWrap .boxMassage .boxMassageInner .titleJp {
    color: #fff;
    font-size: 1.2rem;
    margin-bottom: 13px;
  }
  .boxMessageWrap .boxMassage .boxMassageInner .txtLead {
    color: #fff;
    margin-bottom: 10px;
  }
  .boxMessageWrap .boxMassage .boxMassageInner .figureBox {
    position: static;
    margin-bottom: 17px;
  }
}
.bx-wrapper {
  border: none;
}
.bx-wrapper img {
  display: inline-block;
}
.kv_slideWrap {
  position: relative;
  overflow: hidden;
}
.kv_slideWrap:after {
  content: "";
  display: block;
  clear: both;
}
.kv_slideWrap .kv_slide .item {
  height: 600px;
  position: relative;
  background-position: center top;
  background-repeat: no-repeat;
  background-size: cover;
}
.kv_slideWrap .kv_slide .item.item_first {
  background-image: url("../img/top/kv1_pc.jpg");
}
/* .kv_slideWrap .kv_slide .item.item_second {
  background-image: url("../img/top/kv2_pc.jpg");
} */
.kv_slideWrap .kv_slide .item.item_third {
  background-image: url("../img/top/kv3_pc.jpg");
}
.kv_slideWrap .kv_slide .item.item_four {
  background-image: url("../img/top/kv4_pc.jpg");
}
.kv_slideWrap .kv_slide .item.item_five {
  background-image: url("../img/top/kv5_pc.jpg");
}
.kv_slideWrap .kv_slide .item:nth-child(n+2) {
  display: none;
}
.bx-wrapper .kv_slideWrap .kv_slide .item:nth-child(n+2) {
  display: block;
}
.kv_slideWrap .kv_txtArea {
  z-index: 55;
  width: 1120px;
  position: absolute;
  /** top: 50%; **/
  top: 63%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.kv_slideWrap .kv_txtArea .title {
  text-align: center;
  margin-bottom: 25px;
  font-size: 8rem;
  /** color: #fff; **/
  color: #4FB1C6;
  font-weight: bold;
  line-height: 1;
}
.kv_slideWrap .kv_txtArea .txt {
  text-align: center;
  font-size: 2.4rem;
  /** color: #fff;  **/
  color: #4FB1C6;
  margin-bottom: 25px;
}
@media all and (min-width: 1201px) {
  .kv_slideWrap .kv_slide.kv_talk {
    width: 50%;
    float: left;
  }
  .kv_slideWrap .kv_slide.kv_talk.js_kvSlideLeft {
    left: 0;
  }
  .kv_slideWrap .kv_slide.kv_talk.js_kvSlideRight {
    right: 0;
    -webkit-transform: translateY(-100%);
        -ms-transform: translateY(-100%);
            transform: translateY(-100%);
  }
  .kv_slideWrap .kv_slide.kv_talk .item {
    width: 100%;
    height: 100%;
  }
  .kv_slideWrap .kv_slide.kv_talk .item:nth-child(n+2) {
    display: block;
  }
  .kv_slideWrap .kv_slide.kv_talk .item img {
    width: 100%;
    height: auto;
  }
}
@media all and (max-width: 1200px) {
  .kv_slideWrap .kv_slide.kv_talk.js_kvSlideRight {
    display: none;
  }
  .kv_slideWrap .kv_slide.kv_talk .item {
    background-position: center center;
    float: none;
    width: 100%;
    height: 100%;
  }
  .kv_slideWrap .kv_slide.kv_talk .item:nth-child(n+2) {
    display: none;
  }
  .kv_slideWrap .kv_slide.kv_talk .item img {
    width: 100%;
    height: auto;
  }
  .kv_slideWrap .kv_slide .item {
    height: 557px !important;
  }
  .kv_slideWrap .kv_slide .item.item_first {
    background-image: url("../img/top/kv1_sp.jpg");
  }
  .kv_slideWrap .kv_slide .item.item_second {
    background-image: url("../img/top/kv2_sp.jpg");
  }
  .kv_slideWrap .kv_slide .item.item_third {
    background-image: url("../img/top/kv3_sp.jpg");
  }
  .kv_slideWrap .kv_slide .item.item_four {
    background-image: url("../img/top/kv4_sp.jpg");
  }
  .kv_slideWrap .kv_slide .item.item_five {
    background-image: url("../img/top/kv5_sp.jpg");
  }
  .kv_slideWrap .kv_txtArea {
    width: 100%;
    padding: 0 10px;
  }
  .kv_slideWrap .kv_txtArea .title {
    font-size: 4.4rem;
    margin-bottom: 5px;
  }
  .kv_slideWrap .kv_txtArea .txt {
    font-size: 1.6rem;
  }
}
.scroll {
  z-index: 55;
  position: absolute;
  left: 50%;
  bottom: 60px;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}
.scroll .scroll_txt {
  display: inline-block;
  color: #fff;
  font-size: 2rem;
}
.scroll .scroll_arrow {
  display: block;
  width: 36px;
  height: 36px;
  position: absolute;
  bottom: -36px;
  left: 50%;
  border-radius: 50%;
  -webkit-animation: scroll 1.2s infinite;
          animation: scroll 1.2s infinite;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
}
.scroll .scroll_arrow:before,
.scroll .scroll_arrow:after {
  content: '';
  display: inline-block;
  width: 22px;
  height: 2px;
  background: #fff;
  position: absolute;
  top: 50%;
  right: 50%;
}
.scroll .scroll_arrow:before {
  -webkit-transform: translate(18px, 1px) rotate(-42deg);
      -ms-transform: translate(18px, 1px) rotate(-42deg);
          transform: translate(18px, 1px) rotate(-42deg);
}
.scroll .scroll_arrow:after {
  -webkit-transform: translate(2px, 1px) rotate(42deg);
      -ms-transform: translate(2px, 1px) rotate(42deg);
          transform: translate(2px, 1px) rotate(42deg);
}
@media all and (max-width: 1200px) {
  .scroll {
    bottom: 140px;
  }
  .scroll .scroll_txt {
    font-size: 1.2rem;
    margin-bottom: 0;
  }
  .scroll .scroll_arrow {
    bottom: -27px;
    width: 24px;
    height: 24px;
  }
  .scroll .scroll_arrow:before,
  .scroll .scroll_arrow:after {
    width: 8px;
    height: 1px;
  }
  .scroll .scroll_arrow:before {
    -webkit-transform: translate(7px, 1px) rotate(-42deg);
        -ms-transform: translate(7px, 1px) rotate(-42deg);
            transform: translate(7px, 1px) rotate(-42deg);
  }
  .scroll .scroll_arrow:after {
    -webkit-transform: translate(1px, 1px) rotate(42deg);
        -ms-transform: translate(1px, 1px) rotate(42deg);
            transform: translate(1px, 1px) rotate(42deg);
  }
}
.kv_txtBox {
  z-index: 50;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  text-align: center;
  width: 100%;
}
.kv_txtBox.female .label {
  background-color: #f77c8a;
}
.kv_txtBox.female .title {
  color: #f77c8a;
}
.kv_txtBox.rookie .label {
  background-color: #3eb3e6;
}
.kv_txtBox.rookie .title {
  color: #3eb3e6;
}
.kv_txtBox .label {
  color: #fff;
  display: inline-block;
  width: 200px;
  font-size: 2rem;
  margin: 30px 0 45px;
}
.kv_txtBox .title {
  font-size: 5.6rem;
  line-height: 1;
}
.kv_txtBox .txt {
  font-size: 1.8rem;
}
.kv_txtBox .txt span {
  margin: 4px 0;
  padding: 0 2px;
  display: inline-block;
  background-color: rgba(255,255,255,0.5);
}
@media all and (max-width: 1200px) {
  .kv_txtBox {
    top: 26%;
  }
  .kv_txtBox_shin {
    top: 70% !important;
  }
  .kv_txtBox .label {
    width: 130px;
    margin: 10px 0 25px;
  }
  .kv_txtBox .title {
    font-size: 3.5rem;
  }
  .kv_txtBox .txt {
    font-size: 1.2rem;
  }
}
.js_sectionSecond {
  padding-top: 90px;
}
@media all and (max-width: 1200px) {
  .js_sectionSecond {
    padding-top: 0;
  }
}
@-webkit-keyframes scroll {
  0% {
    -webkit-transform: translate(-50%, -5px);
            transform: translate(-50%, -5px);
  }
  50% {
    -webkit-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
  }
  100% {
    -webkit-transform: translate(-50%, -5px);
            transform: translate(-50%, -5px);
  }
}
@keyframes scroll {
  0% {
    -webkit-transform: translate(-50%, -5px);
            transform: translate(-50%, -5px);
  }
  50% {
    -webkit-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
  }
  100% {
    -webkit-transform: translate(-50%, -5px);
            transform: translate(-50%, -5px);
  }
}
.colorboxWrap {
  display: none;
}
.colorbox {
  padding: 25px 10px 25px;
}
.colorbox .colorboxHead,
.colorbox .colorboxBody {
  width: 100%;
  text-align: center;
}
.colorbox .colorboxHead img {
  width: 60%;
}
.colorbox .colorboxBody img {
  width: 45%;
}
.colorbox .colorboxBody .txt {
  font-size: 1.8rem;
}
#cboxContent {
  margin-top: 37px;
}
#cboxLoadedContent {
  background-color: #000;
}
#cboxOverlay {
  background-color: rgba(0,0,0,0.6);
}
#cboxOverlay,
#cboxWrapper,
#colorbox {
  z-index: 100;
}
#cboxLoadingGraphic {
  background-image: url("../img/colorbox/icon_loading.gif");
}
#cboxPrevious,
#cboxNext,
#cboxSlideshow,
#cboxClose {
  background: url("../img/colorbox/controls.png") no-repeat 0 0;
}
#cboxClose {
  background: url("../img/colorbox/icon_close.png") no-repeat 0 0;
  background-size: cover;
  width: 30px;
  height: 30px;
  top: -35px;
}
#cboxClose:hover {
  background-position: inherit;
}
.bx-wrapper .bx-loading {
  background-image: url("../img/colorbox/icon_loading.gif");
}
.btn_box {
  text-align: center;
}
.btn {
  display: table;
  border: #000 solid 2px;
  font-size: 2rem;
  position: relative;
}
.btn:hover {
  text-decoration: none;
}
@media all and (max-width: 1200px) {
  .btn {
    font-size: 1rem;
    line-height: 1;
  }
}
.btn_white {
  border: #fff solid 2px;
  color: #fff;
}
@media all and (max-width: 1200px) {
  .btn_white {
    border: #000 solid 1px;
  }
}
.btn_inner {
  display: inline-block;
  min-width: 200px;
  padding: 11px 25px 11px 40px;
  position: relative;
  vertical-align: middle;
}
.btn_inner:before {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 7.5px 0 7.5px 10px;
  border-color: transparent transparent transparent #fff;
  content: '';
  display: inline-block;
  width: 14px;
  position: absolute;
  top: 50%;
  left: 20px;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media all and (max-width: 1200px) {
  .btn_inner {
    min-width: 108px;
    padding: 10px 10px 10px 18px;
  }
  .btn_inner:before {
    left: 8px;
    border-width: 4px 0 4px 6px;
  }
}
.btnDetailWrap {
  margin-top: 16px;
}
.btnDetailWrap .btnDetail {
  display: inline-block;
  padding: 10px 19px;
  color: #31a1b4;
  background-color: #fff;
  border: 1px solid #31a1b4;
  font-size: 1.8rem;
}
@media all and (max-width: 1200px) {
  .btnDetailWrap .btnDetail {
    padding: 0 10px;
    width: 100%;
    display: table;
    font-size: 1.3rem;
  }
  .btnDetailWrap .btnDetailInner {
    display: table-cell;
    vertical-align: middle;
    padding: 0;
    width: 100%;
    height: 40px;
  }
}
.btn_anime_type1 {
  transition: all 0.2s ease;
}
.btn_anime_type1:hover {
  background-color: #31a1b4;
  color: #fff;
  border: 1px solid #fff;
}
.btn_anime_type2 {
  box-shadow: inset 0 0 20px rgba(255,255,255,0);
  transition: all 1s cubic-bezier(0.19, 1, 0.22, 1);
}
.btn_anime_type2:after {
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  padding: 0;
  border: solid 2px #fff;
  transition: all 1s cubic-bezier(0.19, 1, 0.22, 1);
}
.btn_anime_type2:hover {
  box-shadow: inset 0 0 20px rgba(255,255,255,0.5), 0 0 20px rgba(255,255,255,0.2);
  color: #fff;
}
.btn_anime_type2:hover:after {
  opacity: 0;
  padding: 15px;
}
.btn_anime_type3 {
  display: inline-block;
  padding: 0;
  border: 2px solid #fff;
  color: #fff;
  text-align: center;
  text-decoration: none;
  outline: none;
  transition: all 0.3s;
}
.btn_anime_type3:hover {
  color: #31a1b4;
  background-color: #fff;
}
.btn_anime_type3:hover .btn_inner:before {
  border-color: transparent transparent transparent #31a1b4;
}
@media all and (max-width: 1200px) {
  .btn_anime_type3 {
    border: 1px solid #fff;
  }
}
.cross_fade {
  display: block;
  position: relative;
}
.btn_prevAndnext {
  width: 100%;
  max-width: 1246px;
  margin: 46px auto 0;
  position: relative;
  height: 270px;
  background-color: #fff;
}
.btn_prevAndnext .prev,
.btn_prevAndnext .next {
  display: inline-block;
  color: #31a1b4;
  font-size: 3.5rem;
  font-weight: bold;
  position: absolute;
  top: 0;
  transition: all 0.3s ease;
}
.btn_prevAndnext .prev:hover:before,
.btn_prevAndnext .next:hover:before {
  border-color: #31a1b4;
}
.btn_prevAndnext .prev:before,
.btn_prevAndnext .next:before {
  position: absolute;
  content: "";
  display: block;
  top: 20px;
  width: 17px;
  height: 17px;
  border-top: 4px solid #3d3d3d;
  border-right: 4px solid #3d3d3d;
}
.btn_prevAndnext .prev {
  left: 39.5%;
}
.btn_prevAndnext .prev:before {
  left: -28px;
  -webkit-transform: rotate(-135deg);
      -ms-transform: rotate(-135deg);
          transform: rotate(-135deg);
}
.btn_prevAndnext .next {
  right: 39.5%;
  transition: all 0.3s ease;
}
.btn_prevAndnext .next:before {
  right: -28px;
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
}
.btn_prevAndnext.type_single .prev,
.btn_prevAndnext.type_single .next {
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  right: inherit;
}
@media all and (max-width: 1200px) {
  .btn_prevAndnext {
    height: 140px;
    min-width: initial;
    width: 100%;
    margin-top: 30px;
  }
  .btn_prevAndnext .prev,
  .btn_prevAndnext .next {
    font-size: 1.6em;
  }
  .btn_prevAndnext .prev:before,
  .btn_prevAndnext .next:before {
    top: 9px;
    width: 9px;
    height: 9px;
    border-top: 3px solid #3d3d3d;
    border-right: 3px solid #3d3d3d;
  }
  .btn_prevAndnext .prev {
    left: 30%;
  }
  .btn_prevAndnext .prev:before {
    left: -26px;
    -webkit-transform: rotate(-135deg);
        -ms-transform: rotate(-135deg);
            transform: rotate(-135deg);
  }
  .btn_prevAndnext .next {
    right: 30%;
  }
  .btn_prevAndnext .next:before {
    right: -26px;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
  }
}
.btnMore {
  display: none;
}
@media all and (max-width: 1200px) {
  .btnMore {
    display: table;
    width: 100%;
    height: 40px;
    margin: 10px 0 30px;
    padding: 0 10px;
  }
  .btnMore.active .btnMoreInner:after {
    -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
            transform: rotate(-45deg);
    margin-top: -3px;
  }
  .btnMore.interview .btnMoreInner {
    background-color: #f06967;
  }
  .btnMore.style .btnMoreInner {
    background-color: #a98fdb;
  }
}
.btnMore .btnMoreInner {
  display: table-cell;
  vertical-align: middle;
  text-align: center;
  color: #fff;
  position: relative;
  font-size: 1.3rem;
}
.btnMore .btnMoreInner:after {
  position: absolute;
  display: block;
  content: "";
  top: 50%;
  right: 15px;
  width: 10px;
  height: 10px;
  margin-top: -9px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform: rotate(135deg);
      -ms-transform: rotate(135deg);
          transform: rotate(135deg);
}
@media all and (max-width: 1200px) {
  .js_moreCont {
    display: none;
  }
}
.btnTalkWrap {
  text-align: center;
}
.btnTalkWrap .btnTalk {
  position: relative;
  z-index: 1;
  display: inline-block;
  padding: 7px 0;
  min-width: 200px;
  color: #fff;
  background-color: #31a1b4;

  vertical-align: middle;
  font-size: 2rem;
  text-align: center;
  transition: 0.3s all ease;
}
.btnTalkWrap .btnTalk:hover{
  background-color: rgb(9, 73, 100);
}

@media all and (max-width: 1200px) {
  .btnTalkWrap {
    text-align: left;
    position: absolute;
    top: 75%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
  .btnTalkWrap .btnTalk {
    min-width: 120px;
    font-size: 1.3rem;
    padding: 7px;
  }
}
.icon {
  position: relative;
}
.icon:after {
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}
.icon_right {
  padding-left: 11px;
}
.icon_right:after {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 4px 0 4px 5px;
  border-color: transparent transparent transparent #fff;
}
.icon_tel {
  padding-left: 40px;
}
.icon_tel:after {
  background-image: url("../img/icon/tel.png");
  background-size: cover;
  width: 24px;
  height: 24px;
}
@media all and (max-width: 1200px) {
  .icon_tel {
    padding-left: 32px;
  }
  .icon_tel:after {
    width: 20px;
    height: 20px;
  }
}
.icon_mail {
  padding-left: 40px;
}
.icon_mail:after {
  background-image: url("../img/icon/mail.png");
  background-size: cover;
  width: 24px;
  height: 24px;
}
@media all and (max-width: 1200px) {
  .icon_mail {
    padding-left: 32px;
  }
  .icon_mail:after {
    width: 20px;
    height: 20px;
  }
}

.logo_maynav{
    float:right;
    padding:22px 25px 0 0;
}

@media all and (max-width: 1200px) {
  .header .logo_maynav{
    float: none;
    position: absolute;
    top: 9px;
    padding-top: 0;
    width: 110px;
    right: 16px;
  }
}
.tl_bgcolor{
	background-color:#fff;
}

section{
  padding-top: 100px;
  margin-top: 0;
}

section#talk{
  padding-top: 100px;
  margin-top: 0;
}

/* =================== Entry list */

#entry{
width: 100%;

}
  .boxOutline{
  border: #efefef 1px solid;
  max-width: 820px;
  position: relative;
  margin: 0 auto;

  padding: 50px;

}

#entry .tl_bgcolor{
  margin: 0 auto;
  text-align: center;
  font-size: 5.6rem;
  color: #30A1B4;
  font-weight: bold;
  line-height: 1.3;
}
#entry h2{
  font-size: 3.2rem!important;
}

#entry h3{
  font-size: 2rem;
  color: #30A1B4;
  line-height: 1.3;
  padding: 20px 15px 10px 0px;
}

@media screen and (max-width: 1200px) {
  #entry .tl_bgcolor{
    margin: 7px 0;
  }

#entry h3{
  font-size: 2rem;
  padding: 10px 0;
  background: #b3dde4;
  color: #121212;
  text-align: center;
  margin: 20px 0;
  width: 100%;
}
}


.recruitWrap{
  width: 100%;
}

.tableWrap {
  overflow: auto;
  width: 100%;
}

.tableWrap table {
  height: 100%;
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
  border-spacing: 10px;
  text-align: left;
}

.tableWrap caption {
  caption-side: top;
  text-align: left;
}

.tableWrap th {
  border: 1px solid #ffffff;
  background-color: #30A1B4;
  color: #ffffff;
  padding: 8px;
  padding-left: 10px;
  width: 30%;
  border-spacing: 10px;
}

.tableWrap td {
  border-bottom: 1px solid #dededf;
  background-color: #ffffff;
  color: #000000;
  padding: 8px;
  padding-left: 10px;
  width: 70%;
}

.entryBoxList ul,.entryBoxList ol {
  list-style: none;
  background: #fff;/*背景色*/
  padding: 0.5em 0.5em 0.5em 2em;/*ボックス内の余白*/
}

.entryBoxList ul li,.entryBoxList ol li {
  line-height: 1.5; /*文の行高*/
  padding: 0.5em 0; /*前後の文との余白*/
  display: flex; /* 点とリストを横並びに */
  align-items: center; /* 垂直方向に中央揃い */
}

.entryBoxList li::before{
  content: "●"; /* 記号(黒丸)を挿入 */
  color: #30A1B4; /* 好きな色にする */
  font-size: 0.9em; /* 黒丸の大きさに差異があるので調整 */
  margin-right: 1em; /* 余白 */
 }

.recruitWrap div[class*="txt"] {
  margin: 15px 0 10px 0;
  font-size: 1.5rem;
}


.entryBtnBox{
  margin: 0 auto;
  width: 400px;
  height: fit-content;
}

.entryBtn {
  display: block;
  font-size: 2.2rem;
  text-align: center;
  text-decoration: none;
  line-height: 60px;
  outline: none;
  color: #30A1B4;
  background-color: #fff;
  position: relative;
  border: 1px solid #30A1B4;
  transition: color 0.5s ease;
}
.entryBtn .txt{
  position: relative;
  font-size: 2rem;
}

.recruitWrap .entryBtn:hover {
  color: #fff;
}
.entryBtn:hover::before {
  transform: scaleX(1);
  transform-origin: left;
}
.entryBtn::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: #30A1B4;
  transform: scaleX(0);
  transform-origin: right;
  transition: all 0.5s ease;
  transition-property: transform;
}


@media screen and (max-width: 1200px) {
  .entryBtnBox{
    margin-top:15px;
    margin-bottom: 15px;
    width: 100%;
  }
  }

/* Flow */
/* 要素本体 */
.flowWrap{
  padding: 10px;
}
.flowBox{
  display: flex;
}
@media screen and (max-width: 1200px) {

  .flowWrap{
    margin: 0 auto;
    padding: 0;
  }
  .flowBox{
  flex-flow: column;
  }

}


.stepBox{
  width: 100%;
}
@media screen and (max-width: 1200px) {
  .stepBox{
  display: flex;
  }
}

.stepBar{
  color: #fff;
}
/* step1などの数字 */
.stepInner{
  font-size: 1.2rem;
  margin: 0 auto;
  text-align: center;
  margin-top: 2px;
  margin-bottom: 3px;
}
.stepInner:nth-of-type(2){
  font-size: 3.8rem;
}

.flowBox .stepBar{
  position: relative;
  height: 150px;
  width: 110px;
  padding: 25px 0px 0 5px;
  margin: 0 12px 0;
}
.flowBox .stepBar::after{
  content: "";
  position: absolute;
  top: 0;
  right: -30px;
  border-width: 76px 15px;
  border-style: solid;
  }

  .stepTxt{
    margin: 0 auto;
    text-align: center;
    width: 75%;
    color: #444;
    font-weight: bold;
    margin-top: 0.7rem;
    margin-bottom: 1rem;
  }

.stepBox:nth-of-type(1) .stepBar{
  background-color: #8cced8;
  }
  .stepBox:nth-of-type(1) .stepBar::after{
  border-color: transparent transparent transparent #8cced8;
  }

  .stepBox:nth-of-type(2) .stepBar{
    background-color: #5cb8c7;
    }
    .stepBox:nth-of-type(2) .stepBar::after{
    border-color: transparent transparent transparent #5cb8c7;
    }

    .stepBox:nth-of-type(3) .stepBar{
      background-color: #30A1B4;
      }
      .stepBox:nth-of-type(3) .stepBar::after{
      border-color: transparent transparent transparent #30A1B4;
      }

      .stepBox:nth-of-type(4) .stepBar{
        background-color: #298c9b;
        }
        .stepBox:nth-of-type(4) .stepBar::after{
        border-color: transparent transparent transparent #298c9b;
        }

        .stepBox:nth-of-type(5) .stepBar{
          background-color: #187e8e;
          }
          .stepBox:nth-of-type(5) .stepBar::after{
          border-color: transparent transparent transparent #187e8e;
          }

  /* レスポンシブ縦並びのステップフロー */
  @media screen and (max-width: 1200px) {
    .boxOutline{
      padding: 15px;
    }
    .stepTxt{
      flex: 1;
    }
    .flowBox .stepBar{
      position: relative;
      height: 70px;
      width: 220px;
      padding: 5px;
      margin: 0 12px 40px
    }
    .flowBox .stepBar::after{
      top: 100%;
      right:initial ;
      left: 0;
      border-width: 25px 110px 0 110px;
      }
        .stepBox:nth-of-type(1) .stepBar::after{
        border-color:  #8cced8 transparent transparent transparent;
        }

          .stepBox:nth-of-type(2) .stepBar::after{
          border-color:  #5cb8c7 transparent transparent transparent;
          }

            .stepBox:nth-of-type(3) .stepBar::after{
            border-color:  #30A1B4 transparent transparent transparent;
            }

              .stepBox:nth-of-type(4) .stepBar::after{
              border-color: #298c9b transparent transparent transparent;
              }

                .stepBox:nth-of-type(5) .stepBar::after{
                border-color:#187e8e transparent transparent transparent;
                }

      /* 改行無効 */
    .stepTxt br {
      display: none;
    }

    .stepInner:nth-of-type(2){
      line-height: 4rem;
    }
  }
