@charset "UTF-8";
/* ==========================================================
Name:
    module.css

Description:
    サイトで共通使用する汎用モジュール及びページ固有のスタイルを記述する
    汎用モジュールは、アルファベット降順(A->Z)に記述する
    ページ固有のスタイルは、ディレクトリ名のアルファベット降順(A->Z)、
    ファイル名のアルファベット降順(A->Z)にそれぞれ記述する

Contents:
    module
    page
    utility
========================================================== */
/* ==========================================================
*
*   module
*
========================================================== */
/* ---------------------------------------------
*   anchor-link
--------------------------------------------- */
.anchor-link {
  padding-top: 50px;
  margin-top: -50px;
  margin-right: 0;
  margin-left: 0;
  margin-bottom: 0;
  border: none;
}
@media screen and (max-width: 640px) {
  .anchor-link {
    padding-top: 63px;
    margin-top: -63px;
  }
}

/* ---------------------------------------------
*   blue-title
--------------------------------------------- */
.blue-title {
  line-height: 1.3;
  letter-spacing: .14em;
  font-family: 'Roboto Condensed', sans-serif;
  font-weight: 700;
  color: #004DB0;
  font-size: 2.9230769231rem;
}
@media screen and (max-width: 640px) {
  .blue-title {
    letter-spacing: .06em;
    font-size: 10.1333333333vw;
  }
}
@media screen and (max-width: 640px) {
  .blue-title--wide {
    letter-spacing: .15em;
  }
}

/* ---------------------------------------------
*   blue-note
--------------------------------------------- */
.blue-note {
  color: #004DB0;
  font-weight: bold;
  font-size: 1.0769230769rem;
}
@media screen and (max-width: 640px) {
  .blue-note--large {
    font-size: 4.2666666667vw;
  }
}

/* ---------------------------------------------
*   blue-link-area
--------------------------------------------- */
.blue-link-area {
  display: flex;
}
@media screen and (max-width: 640px) {
  .blue-link-area--gnav {
    justify-content: center;
    margin-right: 6.2666666667vw;
  }
}

/*  blue-link
--------------------------------------------- */
.blue-link {
  position: relative;
  display: flex;
  align-items: center;
  font-family: 'Roboto Condensed', sans-serif;
  font-weight: 300;
  background-color: #004DB0;
  width: 147px;
  height: 36px;
  box-sizing: border-box;
  padding-left: 8px;
  color: #fff;
  font-size: 0.9230769231rem;
}
.blue-link:before {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  display: block;
  width: 34px;
  height: 2px;
  background-color: #fff;
  z-index: 1;
  transform: translateY(-50%);
}
@media screen and (max-width: 640px) {
  .blue-link:before {
    width: 8.9333333333vw;
    height: 0.2666666667vw;
    min-height: 1px;
  }
}
.blue-link:after {
  content: "";
  position: absolute;
  top: 50%;
  right: -28px;
  display: block;
  width: 28px;
  height: 2px;
  background-color: #004DB0;
  z-index: 1;
  transform: translateY(-50%);
}
@media screen and (max-width: 640px) {
  .blue-link:after {
    right: -7.4666666667vw;
    width: 7.4666666667vw;
    height: 0.2666666667vw;
    min-height: 1px;
  }
}
@media screen and (max-width: 640px) {
  .blue-link {
    width: 81.7333333333vw;
    height: 11.7333333333vw;
    padding-left: 2.6666666667vw;
    font-size: 3.7333333333vw;
  }
}

/* ---------------------------------------------
*   break-hide
--------------------------------------------- */
.break-hide {
  display: none;
}
@media screen and (min-width: 1041px) {
  .break-hide {
    display: block;
  }
}

/* ---------------------------------------------
*   clearfix
--------------------------------------------- */
.clearfix:after {
  content: "";
  clear: both;
  display: block;
}

/* ---------------------------------------------
*   download-link-area
--------------------------------------------- */
.download-link-area {
  display: flex;
}
.download-link-area--right {
  justify-content: flex-end;
}
@media screen and (max-width: 1040px) {
  .download-link-area--break-center {
    justify-content: center;
  }
}

/*  download-link
--------------------------------------------- */
.download-link {
  position: relative;
  display: flex;
  align-items: center;
  font-family: 'Roboto Condensed', sans-serif;
  font-weight: 300;
  background-color: #8ACDE8;
  width: 250px;
  height: 46px;
  box-sizing: border-box;
  padding-left: 8px;
  color: #fff;
  font-size: 1.0769230769rem;
}
@media screen and (max-width: 640px) {
  .download-link {
    width: 89.0666666667vw;
    height: 12.2666666667vw;
    padding-left: 2.6666666667vw;
  }
}
.download-link:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 10px;
  display: block;
  width: 19px;
  height: 18px;
  background: url(/common/ver.1/img/icon_dl_white.png) 0 0 no-repeat;
  background-size: 100% auto;
  z-index: 1;
  transform: translateY(-50%);
}
@media screen and (max-width: 640px) {
  .download-link:after {
    right: 2.6666666667vw;
    width: 5.0666666667vw;
    height: 4.8vw;
  }
}

/* ---------------------------------------------
*   hover-opacity
--------------------------------------------- */
.hover-opacity {
  transition: opacity 300ms;
}
.hover-opacity:hover {
  opacity: 0.8;
}

/* ---------------------------------------------
*   main-title
--------------------------------------------- */
.main-title {
  position: relative;
  padding-top: 27px;
  padding-bottom: 47px;
}
@media screen and (max-width: 640px) {
  .main-title {
    padding-top: 8vw;
    padding-bottom: 13.6vw;
  }
}
.main-title:before, .main-title:after {
  content: "";
  position: absolute;
  z-index: -1;
  display: block;
  width: 407px;
  height: 120px;
}
@media screen and (max-width: 640px) {
  .main-title:before, .main-title:after {
    width: 42.9333333333vw;
    height: 32vw;
  }
}
.main-title:before {
  top: 0;
  left: 0;
  background: url(/common/ver.1/img/bg_deco1.png) 0 0 no-repeat;
}
@media screen and (max-width: 640px) {
  .main-title:before {
    background: url(/common/ver.1/img/sp/bg_deco1.png) 0 0 no-repeat;
    background-size: 100% auto;
  }
}
.main-title:after {
  top: 0;
  right: 0;
  background: url(/common/ver.1/img/bg_deco2.png) 0 0 no-repeat;
}
@media screen and (max-width: 640px) {
  .main-title:after {
    background: url(/common/ver.1/img/sp/bg_deco2.png) 0 0 no-repeat;
    background-size: 100% auto;
  }
}
.main-title__title {
  text-align: center;
}
.main-title__title-jp {
  display: block;
  letter-spacing: .2em;
  line-height: 1.2;
  color: #000;
  font-weight: bold;
  font-size: 1.8461538462rem;
  margin-bottom: 2px;
}
@media screen and (max-width: 640px) {
  .main-title__title-jp {
    letter-spacing: .1em;
    margin-bottom: 1px;
  }
}
.main-title__title-en {
  position: relative;
  font-family: 'Roboto Condensed', sans-serif;
  font-weight: 700;
  letter-spacing: .1em;
  line-height: 1.2;
  display: block;
  color: #004DB0;
  font-size: 1.0769230769rem;
}
.main-title__title-en:before {
  content: "";
  position: absolute;
  bottom: -8px;
  left: 50%;
  display: block;
  width: 20px;
  height: 2px;
  background-color: #004DB0;
  z-index: 1;
  transform: translateX(-50%);
}
@media screen and (max-width: 640px) {
  .main-title__title-en:before {
    bottom: -2.1333333333vw;
    width: 5.3333333333vw;
    height: 0.5333333333vw;
  }
}

/* ---------------------------------------------
*   menu-keyvisual
--------------------------------------------- */
.menu-keyvisual {
  position: relative;
  margin-bottom: 100px;
}
@media screen and (max-width: 640px) {
  .menu-keyvisual {
    margin-bottom: 19.3333333333vw;
  }
}
@media screen and (max-width: 640px) {
  .menu-keyvisual--recruit {
    margin-bottom: 26.6666666667vw;
  }
}
.menu-keyvisual--company {
  position: relative;
  width: 100%;
}
.menu-keyvisual--company:before {
  content: "";
  display: block;
  padding-top: 56.25%;
}
@media screen and (max-width: 640px) {
  .menu-keyvisual--company:before {
    display: none;
  }
}
.menu-keyvisual--company .menu-keyvisual__movie {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
}
@media screen and (max-width: 1040px) {
  .menu-keyvisual--company .menu-keyvisual__movie {
    z-index: -1;
  }
}
.menu-keyvisual--company .menu-keyvisual__movie .video-wrap:before {
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  display: block;
  position: absolute;
  background: rgba(0, 0, 0, 0.2) url("/company/box/img/main-bg-dot.png") 0 0;
  content: '';
}
.menu-keyvisual--company .menu-keyvisual__movie .video-wrap video {
  width: 100%;
}
.menu-keyvisual__image img {
  width: 100%;
}
@media screen and (max-width: 640px) {
  .menu-keyvisual__contents {
    position: relative;
  }
}
@media screen and (max-width: 640px) {
  .menu-keyvisual__contents:before {
    content: "";
    position: absolute;
    right: 0;
    bottom: -5.3333333333vw;
    left: 0;
    display: block;
    width: 100%;
    height: 5.3333333333vw;
    background-color: #8ACDE8;
    z-index: 1;
  }
}
.menu-keyvisual__contents-title {
  position: absolute;
  top: 4.5833333333vw;
  left: 0;
  background-color: #004DB0;
  box-sizing: border-box;
  padding-top: 1.9166666667%;
  padding-right: 2.5%;
  padding-bottom: 1.9166666667%;
  padding-left: 12.3333333333%;
}
@media screen and (max-width: 1040px) {
  .menu-keyvisual__contents-title {
    position: static;
    width: 100%;
    padding-right: 2.5%;
    padding-bottom: 5px;
    padding-left: 2.5%;
  }
}
@media screen and (max-width: 640px) {
  .menu-keyvisual__contents-title {
    padding-top: 5.3333333333vw;
    padding-right: 5.0666666667%;
    padding-bottom: 10.4vw;
    padding-left: 5.0666666667%;
    margin-top: 0;
    margin-top: 0;
    transform: none;
  }
}
.menu-keyvisual__contents-title:before {
  content: "";
  position: absolute;
  right: 0;
  bottom: -10px;
  left: 0;
  display: block;
  width: 91%;
  height: 10px;
  background-color: #8ACDE8;
  z-index: 1;
}
@media screen and (max-width: 640px) {
  .menu-keyvisual__contents-title:before {
    display: none;
  }
}
.menu-keyvisual__contents-title--about {
  width: 37.5%;
}
@media screen and (max-width: 1040px) {
  .menu-keyvisual__contents-title--about {
    width: 100%;
    padding-bottom: 25px;
  }
}
@media screen and (max-width: 640px) {
  .menu-keyvisual__contents-title--about {
    padding-bottom: 10.4vw;
  }
}
.menu-keyvisual__contents-title--recruit {
  width: 35.1666666667%;
  padding-right: 1.6666666667%;
}
@media screen and (max-width: 1040px) {
  .menu-keyvisual__contents-title--recruit {
    width: 100%;
  }
}
@media screen and (max-width: 640px) {
  .menu-keyvisual__contents-title--recruit {
    padding-right: 5.0666666667%;
    padding-bottom: 1.3333333333vw;
  }
}
.menu-keyvisual__contents-title--interview {
  width: 35.1666666667%;
  padding-left: 8.3333333333%;
}
.menu-keyvisual__contents-title--interview.right {
  padding-left: 1.6666666667%;
  padding-right: 8.3333333333%;
  left: auto;
  right: 0;
}
@media screen and (max-width: 640px) {
  .menu-keyvisual__contents-title--interview.right {
    padding-right: 2.5%;
    padding-left: 2.5%;
  }
}
.menu-keyvisual__contents-title--interview.right:before {
  left: auto;
}
@media screen and (max-width: 1040px) {
  .menu-keyvisual__contents-title--interview {
    width: 100%;
  }
}
@media screen and (max-width: 640px) {
  .menu-keyvisual__contents-title--interview {
    padding-bottom: 4vw;
  }
}
.menu-keyvisual__contents-title--interview .department {
  margin-top: 1em;
  font-size: 1.3333333333vw;
  color: #fff;
}
@media screen and (max-width: 1040px) {
  .menu-keyvisual__contents-title--interview .department {
    font-size: 1.3846153846rem;
    margin-bottom: 1em;
  }
}
@media screen and (max-width: 640px) {
  .menu-keyvisual__contents-title--interview .department {
    font-size: 3.7333333333vw;
    margin-bottom: 0;
  }
}
.menu-keyvisual__contents-title-item {
  letter-spacing: .05em;
  line-height: 1.7;
  color: #fff;
  font-weight: bold;
  font-size: 1.5vw;
}
@media screen and (max-width: 1040px) {
  .menu-keyvisual__contents-title-item {
    font-size: 1.3846153846rem;
  }
}
@media screen and (max-width: 640px) {
  .menu-keyvisual__contents-title-item {
    font-size: 4.8vw;
  }
}
.menu-keyvisual__contents-title-text {
  line-height: 1.7;
  text-align: justify;
  color: #fff;
  margin-top: 10px;
}
.menu-keyvisual__contents-texts {
  position: absolute;
  top: 50%;
  right: 0;
  width: 36.6666666667%;
  box-sizing: border-box;
  padding-top: 23px;
  padding-right: 12.5%;
  padding-bottom: 23px;
  padding-left: 1.6666666667%;
  transform: translateY(-50%);
  background-color: #fff;
  margin-top: 11.4166666667vw;
}
@media screen and (max-width: 1040px) {
  .menu-keyvisual__contents-texts {
    position: static;
    width: 100%;
    padding-top: 5px;
    padding-right: 2.5%;
    padding-left: 2.5%;
    background-color: #004DB0;
    margin-top: 0;
    transform: none;
  }
}
@media screen and (max-width: 640px) {
  .menu-keyvisual__contents-texts {
    position: static;
    width: 100%;
    padding-top: 1.8666666667vw;
    padding-right: 5.3333333333%;
    padding-bottom: 9.3333333333vw;
    padding-left: 5.3333333333%;
    margin-top: 0;
    transform: none;
  }
}
.menu-keyvisual__contents-texts:before {
  content: "";
  position: absolute;
  right: 0;
  bottom: -10px;
  display: block;
  width: 91%;
  height: 10px;
  background-color: #8ACDE8;
  z-index: 1;
}
@media screen and (max-width: 1040px) {
  .menu-keyvisual__contents-texts:before {
    display: none;
  }
}
.menu-keyvisual__contents-texts-item {
  line-height: 1.8;
  color: #323232;
  font-weight: bold;
  font-size: 1.0833333333vw;
}
@media screen and (max-width: 1040px) {
  .menu-keyvisual__contents-texts-item {
    color: #fff;
    font-size: 1rem;
  }
}
@media screen and (max-width: 640px) {
  .menu-keyvisual__contents-texts-item {
    font-size: 3.4666666667vw;
  }
}

/* ---------------------------------------------
*   section
--------------------------------------------- */
.section {
  max-width: 1920px;
  width: 100%;
  box-sizing: border-box;
  margin-right: auto;
  margin-left: auto;
}
@media only screen and (max-width: 640px) {
  .section {
    width: auto;
    padding-right: 0;
    padding-left: 0;
    margin-right: 5.0666666667vw;
    margin-left: 5.0666666667vw;
  }
}
@media screen and (max-width: 640px) {
  .section {
    margin-right: 0;
    margin-left: auto;
  }
}
.section--reverse .contents-cassette {
  flex-direction: row-reverse;
}

/* ---------------------------------------------
*   title-area
--------------------------------------------- */
.title-area {
  margin-bottom: 20px;
}
@media screen and (max-width: 640px) {
  .title-area {
    margin-bottom: 5.3333333333vw;
  }
}
.title-area--center {
  text-align: center;
}

/* ---------------------------------------------
*   component
--------------------------------------------- */
.comp {
  /*  見出し
  --------------------------------------------- */
  /*  レイアウトパターン
  --------------------------------------------- */
}
.comp__wrap {
  padding: 50px 0 100px 0;
}
@media screen and (max-width: 640px) {
  .comp__wrap {
    padding: 50px 5.3333333333%;
  }
}
.comp__section {
  width: 75%;
  margin: 0 auto;
  font-size: 1.2307692308rem;
}
@media screen and (max-width: 640px) {
  .comp__section {
    width: 100%;
  }
}
.comp__h1 {
  margin-bottom: 2em;
  padding-bottom: .5em;
  position: relative;
  border-bottom: solid 4px #8ACDE8;
  font-size: 2.1538461538rem;
  font-weight: bold;
}
@media screen and (max-width: 640px) {
  .comp__h1 {
    font-size: 1.5384615385rem;
  }
}
.comp__h1:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 4px #004DB0;
  bottom: -4px;
  width: 15%;
}
.comp__h2 {
  margin-bottom: 2em;
  padding-bottom: .5em;
  border-bottom: solid 2px #004DB0;
  font-size: 1.5384615385rem;
  font-weight: bold;
}
@media screen and (max-width: 640px) {
  .comp__h2 {
    font-size: 1.3846153846rem;
  }
}
.comp__h3 {
  margin-bottom: 2em;
  padding: 0.25em 0.5em;
  border-left: solid 5px #004DB0;
  font-size: 1.3846153846rem;
  font-weight: bold;
}
@media screen and (max-width: 640px) {
  .comp__h3 {
    font-size: 1.2307692308rem;
  }
}
.comp__h4 {
  margin-bottom: 2em;
  font-size: 1.2307692308rem;
  font-weight: bold;
}
@media screen and (max-width: 640px) {
  .comp__h4 {
    font-size: 1.2307692308rem;
  }
}
.comp__layout-text-photo {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 100px;
}
@media screen and (max-width: 640px) {
  .comp__layout-text-photo {
    margin-bottom: 50px;
  }
}
.comp__layout-text-photo .text {
  width: 50%;
}
@media screen and (max-width: 640px) {
  .comp__layout-text-photo .text {
    width: 100%;
  }
}
.comp__layout-text-photo .text p {
  margin-bottom: 1em;
}
.comp__layout-text-photo .photo {
  width: 45%;
}
@media screen and (max-width: 640px) {
  .comp__layout-text-photo .photo {
    width: 100%;
  }
}
.comp__layout-text-photo .photo img {
  display: block;
}
.comp__layout-text-photo .photo .caption {
  margin-top: .3em;
  font-size: 1rem;
}
@media screen and (max-width: 640px) {
  .comp__layout-text-photo .photo .caption {
    font-size: 0.9230769231rem;
  }
}
.comp__layout-photo {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 100px;
}
@media screen and (max-width: 640px) {
  .comp__layout-photo {
    margin-bottom: 50px;
  }
}
.comp__layout-photo .photo {
  width: 45%;
}
.comp__layout-photo .photo1 {
  width: 100%;
}
@media screen and (max-width: 640px) {
  .comp__layout-photo .photo,
  .comp__layout-photo .photo1 {
    width: 100%;
    margin-bottom: 1em;
  }
}
.comp__layout-photo .photo img,
.comp__layout-photo .photo1 img {
  display: block;
}
.comp__layout-photo .photo .caption,
.comp__layout-photo .photo1 .caption {
  margin-top: .3em;
  font-size: 1rem;
}
@media screen and (max-width: 640px) {
  .comp__layout-photo .photo .caption,
  .comp__layout-photo .photo1 .caption {
    font-size: 0.9230769231rem;
  }
}
.comp__layout-text-col1 {
  width: 75%;
  margin-bottom: 100px;
}
.comp__layout-text-col100 {
  width: 100%;
  margin-bottom: 100px;
}
@media screen and (max-width: 1040px) {
  .comp__layout-text-col1,
  .comp__layout-text-col100 {
    width: 100%;
  }
}
@media screen and (max-width: 640px) {
  .comp__layout-text-col1,
  .comp__layout-text-col100 {
    margin-bottom: 50px;
  }
}
.comp__layout-text-col1 p,
.comp__layout-text-col100 p {
  margin-bottom: 1em;
}
.comp__layout-text-col2 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 100px;
}
@media screen and (max-width: 640px) {
  .comp__layout-text-col2 {
    margin-bottom: 50px;
  }
}
.comp__layout-text-col2 .text {
  width: 45%;
}
@media screen and (max-width: 640px) {
  .comp__layout-text-col2 .text {
    width: 100%;
    margin-bottom: 1em;
  }
}
.comp__layout-text-col2 .text p {
  margin-bottom: 1em;
}
.comp__layout-table {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  margin-bottom: 100px;
}
.comp__layout-table a{
  color: #3487eb;
}
@media screen and (max-width: 640px) {
  .comp__layout-table {
    margin-bottom: 50px;
  }
  .comp__layout-table a{
    color: #3487eb;
  }
}
.comp__layout-table table {
  width: 100%;
}
@media screen and (max-width: 640px) {
  .comp__layout-table table {
    width: auto;
    white-space: nowrap;
  }
}

.comp__layout-table table td, .comp__layout-table table th {
  padding: 5px;
  border: 1px solid #ccc;
}
.comp__layout-table table th, .comp__layout-table table .title {
  background: #DCF0FA;
}

/*追加（CSR：テーブル用）*/
.comp__layout-table__2 {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  margin-bottom: 50px;
}
.comp__layout-table__2 a{
  color: #3487eb;
}
@media screen and (max-width: 640px) {
  .comp__layout-table__2 {
    margin-bottom: 50px;
  }
  .comp__layout-table__2 a{
    color: #3487eb;
  }
}
.comp__layout-table__2 table {
  width: 85%;
}
@media screen and (max-width: 640px) {
  .comp__layout-table__2 table {
    width: auto;
    white-space: nowrap;
  }
}

.comp__layout-table__2 table td, .comp__layout-table__2 table th {
  padding: 5px;
  border: 1px solid #ccc;
  text-align:center
}
.comp__layout-table__2 table th, .comp__layout-table__2 table .title {
  background: #DCF0FA;
}
/*追加おわり（CSR：テーブル用）*/

/*追加（社外通報窓口：テーブル用）*/
.comp__layout-table__3 {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  margin-bottom: 50px;
}
.comp__layout-table__3 a{
  color: #3487eb;
}
@media screen and (max-width: 640px) {
  .comp__layout-table__3 {
    margin-bottom: 50px;
  }
  .comp__layout-table__3 a{
    color: #3487eb;
  }
}
.comp__layout-table__3 table {
  width: 85%;
}
@media screen and (max-width: 640px) {
  .comp__layout-table__3 table {
    width: auto;
    white-space: nowrap;
  }
}

.comp__layout-table__3 table td, .comp__layout-table__3 table th {
  padding: 5px;
  border: 1px solid #ccc;
  text-align:left;
}
.comp__layout-table__3 table th, .comp__layout-table__3 table .title {
  background: #DCF0FA;
}
/*追加おわり（CSR：テーブル用）*/

.comp__layout-button {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  margin-bottom: 100px;
}
.comp__layout-button a {
  display: flex;
  align-items: center;
  width: 23%;
  color: #FFF;
  background-color: #004DB0;
}
@media screen and (max-width: 640px) {
  .comp__layout-button a {
    width: 100%;
    margin-bottom: 1em;
  }
}
.comp__layout-button a span {
  display: block;
  width: 100%;
  text-align: center;
  padding: 20px 10px;
}
/*株主総会ボタン用*/
.comp__layout-button2 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  margin-bottom: 100px;
}
.comp__layout-button2 a {
  display: flex;
  align-items:flex-start;
  width: 30%;
  color: #FFF;
  background-color: #004DB0;
}
@media screen and (max-width: 640px) {
  .comp__layout-button2 a {
    width: 100%;
    margin-bottom: 1em;
  }
}
.comp__layout-button2 a span {
  display: block;
  width: 100%;
  text-align: center;
  padding: 20px 10px;
}
/*株主総会用おわり*/

.comp__layout-back {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  margin-bottom: 20px;
}
.comp__layout-back a {
  display: flex;
  align-items: center;
  width: 30%;
  color: #FFF;
  background-color: #8ACDE8;
}
@media screen and (max-width: 640px) {
  .comp__layout-back a {
    width: 100%;
    margin-bottom: 1em;
  }
}
.comp__layout-back a span {
  display: block;
  width: 100%;
  text-align: center;
  padding: 20px 10px;
}
.comp__item-list {
  width: 100%;
  margin-bottom: 1em;
}
@media screen and (max-width: 640px) {
  .comp__item-list {
    width: 100%;
    margin-bottom: 1em;
  }
}
.comp__item-list ul {
  list-style: disc;
  padding-left: 1.5em;
}
.comp__item-list ul li {
  margin-bottom: .5em;
}
.comp__item-list ul li > ul {
  margin-top: .5em;
}
/*黒点なし（追加）*/
.comp__item-list2 {
  width: 100%;
  margin-bottom: 1em;
}
@media screen and (max-width: 640px) {
  .comp__item-list2 {
    width: 100%;
    margin-bottom: 1em;
  }
}
.comp__item-list2 ul {
  list-style: none;
  padding-left: 1.5em;
}
.comp__item-list2 ul li {
  margin-bottom: .5em;
}
.comp__item-list2 ul li > ul {
  margin-top: .5em;
}
.comp__item-list2-text {
  font-weight: bold;
}
/*黒点なしおわり*/

.comp__item-pdf:after {
  content: '';
  display: inline-block;
  width: 16px;
  height: 16px;
  margin-top: -1px;
  margin-left: 5px;
  background-image: url("/common/ver.1/img/icon_pdf.png");
  background-size: cover;
  vertical-align: middle;
}
.comp__item-dl {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin-bottom: 1em;
}
.comp__item-dl dt {
  width: 33%;
  margin-bottom: 1em;
}
.comp__item-dl dd {
  margin-left: auto;
  width: 66%;
  margin-bottom: 1em;
}
.comp__item-dl--line {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 1em;
}
.comp__item-dl--line dt {
  display: flex;
  align-items: center;
  width: 33%;
  margin-bottom: 1em;
  padding-bottom: 1em;
  border-bottom: 1px solid #004DB0;
}
.comp__item-dl--line dd {
  margin-left: auto;
  width: 66%;
  margin-bottom: 1em;
  padding-left: 1%;
  padding-bottom: 1em;
  border-bottom: 1px solid #004DB0;
}
/* 下線2 */
.comp__item-dl--line2 {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 1em;
}
.comp__item-dl--line2 dt {
  display: flex;
  align-items: center;
  width: 20%;
  margin-bottom: 1em;
  padding-bottom: 1em;
  border-bottom: 1px solid #004DB0;
}
@media screen and (max-width: 640px) {
  .comp__item-dl--line2 dt {
    width: 29%;
  }
}
.comp__item-dl--line2 dd {
  margin-left: auto;
  width: 79%;
  margin-bottom: 1em;
  padding-left: 1%;
  padding-bottom: 1em;
  border-bottom: 1px solid #004DB0;
}
@media screen and (max-width: 640px) {
  .comp__item-dl--line2 dd {
    width: 70%;
  }
}
/* /下線2 */
/* 下線3 */
.comp__item-dl--line3 {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 1em;
}
.comp__item-dl--line3 .cimg {
  display: flex;
  align-items: center;
  width: 10%;
  margin-bottom: 1em;
  padding-left: 10px;
  padding-bottom: 1em;
  border-bottom: 1px solid #004DB0;
}
.comp__item-dl--line3 img {
  width: 100%;
  border: 1px solid #a9a9a9;
}
.comp__item-dl--line3 .cdate {
  float: right;
  display: flex;
  align-items: center;
  width: 10%;
  margin-bottom: 1em;
  padding-left: 2em;
  padding-bottom: 1em;
  border-bottom: 1px solid #004DB0;
}
.comp__item-dl--line3 .ctitle {
  float: right;
  display: flex;
  align-items: center;
  width: 45%;
  margin-bottom: 1em;
  padding-left: 2em;
  padding-bottom: 1em;
  border-bottom: 1px solid #004DB0;
  clear: both;
}
/* /下線3 */
.comp__form-block {
  display: flex;
  margin: 0 auto 1em;
  width: 80%;
}
@media screen and (max-width: 640px) {
  .comp__form-block {
    display: block;
    width: 100%;
    margin: 0 0 50px 0;
  }
}
.comp__form-block dt {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  position: relative;
  width: 250px;
  padding-left: 20px;
  padding-right: 10px;
  font-size: 18px;
  font-weight: bold;
}
@media screen and (max-width: 640px) {
  .comp__form-block dt {
    display: block;
    width: auto;
    margin-bottom: .5em;
    padding-left: 0;
    padding-right: 0;
  }
}
.comp__form-block dt .label {
  flex-grow: 1;
}
@media screen and (max-width: 640px) {
  .comp__form-block dt .label {
    display: inline-block;
  }
}
.comp__form-block dt .required {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 3px 10px;
  background-color: #B53C3C;
  border-radius: 4px;
  color: #fff;
  font-size: 14px;
}
@media screen and (max-width: 640px) {
  .comp__form-block dt .required {
    display: inline-block;
    margin-left: .5em;
  }
}
.comp__form-block dd {
  display: flex;
  flex-grow: 1;
  padding-left: 10px;
  margin-top: 0;
}
@media screen and (max-width: 640px) {
  .comp__form-block dd {
    padding-left: 0;
    padding-right: 0;
  }
}
.comp__form-block input[type='text'], .comp__form-block input[type='email'], .comp__form-block textarea {
  box-sizing: border-box;
  font-size: 16px;
  line-height: 1.65em;
  border-radius: 4px;
  padding-left: 10px;
  padding-right: 10px;
  border: 1px solid #C8C8C8;
  width: 100%;
}
.comp__form-block input[type='text'].half, .comp__form-block input[type='email'].half, .comp__form-block textarea.half {
  width: 50%;
}
.comp__form-block--btn {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 50px 0;
}
@media screen and (max-width: 640px) {
  .comp__form-block--btn {
    justify-content: space-between;
  }
}
.comp__form-block--btn button {
  width: 200px;
  padding: 10px;
  margin: 0 10px;
  align-items: center;
  background-color: #004DB0;
  border: none;
  border-radius: 4px;
  font-size: 16px;
  color: #FFF;
}
@media screen and (max-width: 640px) {
  .comp__form-block--btn button {
    width: 45%;
    margin: auto;
  }
}
.comp__form-block--checkbox label {
  position: relative;
  display: inline-block;
  text-align: center;
  padding-left: 30px;
  font-size: 18px;
}
.comp__form-block--checkbox label:before {
  content: "";
  display: block;
  position: absolute;
  top: 3px;
  left: 0;
  width: 20px;
  height: 20px;
  border: 1px solid #999;
  border-radius: 4px;
}
.comp__form-block--checkbox input[type=checkbox] {
  visibility: hidden;
  width: 0;
}
.comp__form-block--checkbox input[type=checkbox]:checked + label:after {
  content: "";
  display: block;
  position: absolute;
  top: 4px;
  left: 7px;
  width: 6px;
  height: 12px;
  transform: rotate(40deg);
  border-bottom: 3px solid #fff;
  border-right: 3px solid #fff;
}
.comp__form-block--checkbox input[type=checkbox]:checked + label:before {
  background-color: #004DB0;
  border-color: #004DB0;
}
.comp__form-block--selectwrap {
  position: relative;
  width: 100%;
}
.comp__form-block--selectwrap::before {
  content: '';
  position: absolute;
  width: 20px;
  height: 12px;
  z-index: 1;
  right: 15px;
  top: calc(50% - 4px);
  pointer-events: none;
  background-image: url("/common/ver.1/img/icon_arrow_down.svg");
  background-repeat: no-repeat;
  background-size: 15px;
}
.comp__form-block--selectwrap select {
  outline: none;
  -moz-appearance: none;
  text-overflow: '';
  background: none transparent;
  vertical-align: middle;
  font-size: inherit;
  color: inherit;
  -webkit-appearance: button;
  -moz-appearance: button;
  appearance: button;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  padding: 0 10px;
  border: 1px solid #C8C8C8;
  width: 100%;
  min-height: 30px;
  border-radius: 4px;
  font-size: 16px;
  line-height: 1.6em;
}
.comp__form-block.confirm {
  margin-bottom: 40px;
}
.comp__form-block.confirm dt, .comp__form-block.confirm dd {
  border-bottom: 1px solid #C8C8C8;
  padding-bottom: 1em;
}
@media screen and (max-width: 640px) {
  .comp__form-block.confirm dt, .comp__form-block.confirm dd {
    padding-bottom: .5em;
  }
}
.comp__form-block.confirm dt {
  padding-left: 0;
}
.comp__form-block-full {
  text-align: center;
  margin-bottom: 1em;
}
.comp__form-block-full.terms-check {
  margin: 50px 0;
  font-size: 16px;
}

/*  about-contents-cassette
--------------------------------------------- */
/* ==========================================================
*
*   page
*
========================================================== */
/* ---------------------------------------------
*   keyvisual
--------------------------------------------- */
.keyvisual {
  position: relative;
  margin-bottom: 100px;
}
@media screen and (max-width: 640px) {
  .keyvisual {
    margin-bottom: 19.4666666667vw;
  }
}
.keyvisual__logo {
  position: absolute;
  top: -60px;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 99;
  background: #fff url("/common/ver.1/img/top/logo.png") center center no-repeat;
  background-size: 312px;
  pointer-events: none;
}
.keyvisual__logo.js-anime-on {
  animation: anime0 1.5s ease;
  animation-fill-mode: forwards;
}
.keyvisual__logo.js-anime-on-stepend {
  animation-timing-function: step-start;
}
@media screen and (max-width: 640px) {
  .keyvisual__logo {
    top: -95px;
  }
}
.keyvisual__bg {
  position: absolute;
  top: -60px;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 99;
  background-color: #004DB0;
  pointer-events: none;
}
@media screen and (max-width: 640px) {
  .keyvisual__bg {
    top: -95px;
  }
}
.keyvisual__bg.js-anime-on {
  animation: anime1 1.5s ease;
  animation-fill-mode: forwards;
}
.keyvisual__bg.js-anime-on-stepend {
  animation-timing-function: step-start;
}
.keyvisual__image {
  width: 82.3333333333%;
  height: calc(100vh - 50px);
}
@media screen and (max-width: 640px) {
  .keyvisual__image {
    width: 100%;
    height: calc(100vh - 63px);
  }
}
@media screen and (orientation: landscape) and (max-width: 640px) {
  .keyvisual__image {
    height: 157.3333333333vw !important;
  }
}
.keyvisual__image img {
  width: 100%;
}
.keyvisual__lead {
  display: flex;
  position: absolute;
  right: 0;
  top: 50%;
  background-color: #004DB0;
  color: #fff;
  width: 501px;
  height: 104px;
  transform: translate(100%, -50%);
  margin-top: -73px;
  opacity: 0;
}
@media screen and (max-width: 640px) {
  .keyvisual__lead {
    top: 24.2666666667vw;
    width: 57.6vw;
    height: 38.2666666667vw;
    margin-top: 0;
    transform: translateX(0);
    opacity: 0;
  }
}
.keyvisual__lead.js-anime-on {
  animation: anime2 2s ease;
  animation-fill-mode: forwards;
}
@media screen and (max-width: 640px) {
  .keyvisual__lead.js-anime-on {
    animation: anime2SP 2s ease;
    animation-fill-mode: forwards;
  }
}
.keyvisual__lead.js-anime-on-stepend {
  animation-timing-function: step-start;
}
.keyvisual__lead-text {
  display: flex;
  align-items: center;
  justify-content: center;
  padding-left: 4.1666666667vw;
  font-weight: bold;
  font-size: 1.6153846154rem;
  line-height: 1.8;
  text-indent: -1em;
}
@media screen and (max-width: 640px) {
  .keyvisual__lead-text {
    line-height: 2;
    font-size: 4.2vw;
    padding-left: 5.3333333333vw;
    text-indent: 0;
    letter-spacing: .05em;
  }
}
.keyvisual__icon {
  position: absolute;
  right: 5.8333333333vw;
  bottom: 17px;
  display: block;
  text-align: center;
  opacity: 0;
}
@media screen and (max-width: 640px) {
  .keyvisual__icon {
    right: auto;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
  }
}
.keyvisual__icon.js-anime-on {
  animation: anime3 1.5s ease;
  animation-fill-mode: forwards;
}
.keyvisual__icon.js-anime-on-stepend {
  animation-timing-function: step-start;
}
.keyvisual__icon-text {
  font-family: 'Roboto Condensed', sans-serif;
  font-weight: 300;
  font-weight: bold;
  font-size: 0.8461538462rem;
}
@media screen and (max-width: 640px) {
  .keyvisual__icon-text {
    position: relative;
    color: #fff;
    padding-bottom: 8vw;
  }
  .keyvisual__icon-text:before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    display: block;
    width: 0.2666666667vw;
    min-width: 1px;
    height: 7.0666666667vw;
    background-color: #fff;
    z-index: 1;
    transform: translateX(-50%);
  }
}

@keyframes anime0 {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes anime1 {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(100%);
  }
}
@keyframes anime2 {
  0% {
    opacity: 0;
    transform: translate(100%, -50%);
  }
  100% {
    opacity: 1;
    transform: translate(0, -50%);
  }
}
@keyframes anime2SP {
  0% {
    opacity: 0;
    transform: translateX(100%);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes anime3 {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
/* ---------------------------------------------
*   contents-cassette
--------------------------------------------- */
.contents-cassette {
  display: flex;
  align-items: center;
}
@media screen and (max-width: 640px) {
  .contents-cassette {
    display: block;
  }
}
.contents-cassette--1 {
  padding-left: 2.5%;
}
@media screen and (max-width: 640px) {
  .contents-cassette--1 {
    padding-left: 0;
  }
}
.contents-cassette--1 .contents-cassette__image:after {
  bottom: -15px;
  left: -15px;
}
@media screen and (max-width: 640px) {
  .contents-cassette--1 .contents-cassette__image:after {
    bottom: -2.2666666667vw;
    left: -2.2666666667vw;
  }
}
@media screen and (max-width: 640px) {
  .contents-cassette--1 .contents-cassette__image {
    padding-left: 2.2666666667vw;
    margin-bottom: 8.6666666667vw;
  }
}
.contents-cassette--1 .contents-cassette__texts {
  margin-right: 50px;
}
@media screen and (max-width: 640px) {
  .contents-cassette--1 .contents-cassette__texts {
    padding-right: 5.3333333333vw;
    padding-left: 5.3333333333vw;
    margin-left: 0;
  }
}
.contents-cassette--2 {
  padding-right: 2.5%;
}
@media screen and (max-width: 640px) {
  .contents-cassette--2 {
    padding-right: 0;
  }
}
.contents-cassette--2 .contents-cassette__image:after {
  top: -15px;
  right: -15px;
}
@media screen and (max-width: 640px) {
  .contents-cassette--2 .contents-cassette__image:after {
    top: -2.2666666667vw;
    right: -2.2666666667vw;
  }
}
@media screen and (max-width: 640px) {
  .contents-cassette--2 .contents-cassette__image {
    padding-right: 2.2666666667vw;
    margin-bottom: 6.6666666667vw;
  }
}
.contents-cassette--2 .contents-cassette__texts {
  margin-left: 50px;
}
@media screen and (max-width: 640px) {
  .contents-cassette--2 .contents-cassette__texts {
    padding-right: 5.3333333333vw;
    padding-left: 5.3333333333vw;
    margin-left: 0;
  }
}
.contents-cassette__title {
  line-height: 1.7;
  font-weight: bold;
  font-size: 1.3846153846rem;
  margin-bottom: 23px;
}
@media screen and (max-width: 640px) {
  .contents-cassette__title {
    margin-bottom: 6.6666666667vw;
  }
}
.contents-cassette__texts {
  min-width: 302px;
  width: 25.811965812%;
}
@media screen and (max-width: 640px) {
  .contents-cassette__texts {
    width: 100%;
    box-sizing: border-box;
    min-width: 0;
  }
}
.contents-cassette__text {
  line-height: 1.7;
  margin-bottom: 28px;
}
@media screen and (max-width: 640px) {
  .contents-cassette__text {
    margin-bottom: 7.4666666667vw;
  }
}
.contents-cassette__image {
  position: relative;
  z-index: 1;
  width: 58.1196581197%;
}
@media screen and (max-width: 640px) {
  .contents-cassette__image {
    width: 100%;
    box-sizing: border-box;
  }
}
.contents-cassette__image:after {
  content: "";
  position: absolute;
  z-index: -1;
  width: 97.5%;
  height: 36.4166666667vw;
  display: block;
  background-color: #8ACDE8;
}
@media screen and (max-width: 640px) {
  .contents-cassette__image:after {
    width: 95.3333333333vw;
    height: 62.6666666667vw;
  }
}
.contents-cassette__image img {
  width: 100%;
}

/*  contents-cassette-body
--------------------------------------------- */

/* ---------------------------------------------
*   pickup-index-lineup
--------------------------------------------- */

.pickup-index-lineup {
  position: relative;
  width: 95%;
  z-index: 1;
  /*margin-right: auto;*/
  margin-bottom: 80px;
  margin-left: auto;
}
@media screen and (max-width: 640px) {
  .pickup-index-lineup {
    width: 100%;
    box-sizing: border-box;
    padding-right: 5.3333333333vw;
    padding-left: 5.3333333333vw;
    margin-bottom: 47.3333333333vw;
  }
}
.pickup-index-lineup__list {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  border: 1px solid #fff;
}
.pickup-index-lineup__list-item {
  width: calc(100% / 3.5);
  height: 25vw;
  max-height: 250px;
  box-sizing: border-box;
  border-right: 1px solid #fff;
  padding-right: 10px; 
  padding-bottom: 60px;
}

@media screen and (max-width: 1040px) {
  .pickup-index-lineup__list-item {
    width: calc(100% / 2.2);
    height: auto;
  }
}
.pickup-index-lineup__link {
  width: 100%;  /*100%*/
  height: 100%; /*100%*/
  max-height: 225px;
  box-sizing: border-box;
  padding-bottom: 1.6666666667vw;
  display: block;
}
@media screen and (max-width: 1040px) {
  .pickup-index-lineup__link {
    height: 100%;
    /*padding-bottom: 12vw;*/
  }
}
@media screen and (max-width: 640px) {
  .pickup-index-lineup__link {
    height: 40vw;
  }
}
.pickup-index-lineup__link--icon1 {
  /*background-image: url(/box/img/startline_toyama.png);*/
  background-position: 50% 10%;
  background-repeat: no-repeat;
  /*background-size: 105px 119px;*/
}
@media screen and (max-width: 1040px) {
  .pickup-index-lineup__link--icon1 {
  background-position: 50% 10%;
    /*background-size: 14.5333333333vw 21.7333333333vw;*/
    /*background-position: 50% 61%;*/
  }
}
@media screen and (max-width: 640px) {
  .pickup-index-lineup__link--icon1 {
    background-size: 50% 50%;
    /*background-position: 50% 61%;*/
  }
}
.pickup-index-lineup__link-frame {
  height: 100%;
  box-sizing: border-box;
  padding-top: 140px;
  text-align: center;
  color: #fff;
}
@media screen and (max-width: 1040px) {
  .pickup-index-lineup__link-frame {
    /*padding-top: 55px;*/
  }
}
@media screen and (max-width: 640px) {
  .pickup-index-lineup__link-frame {
    padding-top: 60%;
    /*padding-top: 16.6666666667vw;*/
  }
}
.pickup-index-lineup__link-frame-title {
  position: relative;
  letter-spacing: .08em;
  font-family: 'Roboto Condensed', sans-serif;
  font-weight: 400;
  font-size: 1.1538461538rem;
  margin-bottom: 8px;
}
@media screen and (max-width: 640px) {
  .pickup-index-lineup__link-frame-title {
    font-size: 2.9333333333vw;
    margin-bottom: 1.3333333333vw;
  }
}
.pickup-index-lineup__link-frame-title:before {
  content: "";
  position: absolute;
  bottom: -2px;
  left: 50%;
  display: block;
  width: 21px;
  height: 2px;
  background-color: #fff;
  z-index: 1;
  transform: translateX(-50%);
}
@media screen and (max-width: 640px) {
  .pickup-index-lineup__link-frame-title:before {
    width: 4.1333333333vw;
    height: 0.4vw;
  }
}
.pickup-index-lineup__link-frame-text {
  font-size: 1.3076923077rem;
  font-weight: 700;
  color: #004DB0;
  padding-bottom:20px;
}
@media screen and (max-width: 640px) {
  .pickup-index-lineup__link-frame-text {
    font-size: 3.3333333333vw;
  }
}
.pickup-index-lineup__link-frame-note {
  font-size: 0.9230769231rem;
}
@media screen and (max-width: 640px) {
  .pickup-index-lineup__link-frame-note {
    font-size: 2.4vw;
  }
}
/*----- pickup-index-lineup_END --------------*/
/* ---------------------------------------------
*   index-lineup
--------------------------------------------- */
.index-lineup {
  position: relative;
  width: 74.5833333333%;
  z-index: 1;
  margin-right: auto;
  margin-bottom: 200px;
  margin-left: auto;
}
@media screen and (max-width: 640px) {
  .index-lineup {
    width: 100%;
    box-sizing: border-box;
    padding-right: 5.3333333333vw;
    padding-left: 5.3333333333vw;
    margin-bottom: 47.3333333333vw;
  }
}
.index-lineup:before, .index-lineup:after {
  content: "";
  position: absolute;
  z-index: -2;
  display: block;
  width: 874px;
  height: 582px;
}
.index-lineup:before {
  top: -121px;
  left: -153px;
  background: url(/common/ver.1/img/top/bg_deco1.png) 0 0 no-repeat;
}
@media screen and (max-width: 640px) {
  .index-lineup:before {
    top: -8.2666666667vw;
    left: 0px;
    background: url(/common/ver.1/img/sp/top/bg_deco1.png) 0 0 no-repeat;
    background-size: 137.8666666667vw 98.9333333333vw;
  }
}
.index-lineup:after {
  bottom: -197px;
  right: -154px;
  background: url(/common/ver.1/img/top/bg_deco2.png) 0 0 no-repeat;
}
@media screen and (max-width: 640px) {
  .index-lineup:after {
    right: -120.7333333333vw;
    bottom: -99.7333333333vw;
    background: url(/common/ver.1/img/sp/top/bg_deco2.png) 0 0 no-repeat;
    background-size: 137.8666666667vw 99.0666666667vw;
  }
}
.index-lineup__list {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  border: 1px solid #fff;
}
.index-lineup__list:before, .index-lineup__list:after {
  content: "";
  position: absolute;
  z-index: -1;
  display: block;
  background-color: #8ACDE8;
}
.index-lineup__list:before {
  bottom: -15px;
  left: -15px;
  max-width: 365px;
  max-height: 386px;
  width: 30.4166666667vw;
  height: 32.1666666667vw;
}
@media screen and (max-width: 640px) {
  .index-lineup__list:before {
    /*bottom: -5.3333333333vw;*/
    /*left: -5.3333333333vw;*/
    width: 55.0666666667vw;
    height: 66vw;
  }
}
.index-lineup__list:after {
  top: -15px;
  right: -15px;
  max-width: 526px;
  max-height: 419px;
  width: 43.8333333333vw;
  height: 34.9166666667vw;
}
@media screen and (max-width: 640px) {
  .index-lineup__list:after {
    /*top: -5.3333333333vw;*/
    /*right: -5.3333333333vw;*/
    width: 78.1333333333vw;
    height: 63.2vw;
  }
}
.index-lineup__list-item {
  background-color: #004DB0;
  width: calc(100% / 4);
  height: 18.75vw;
  max-height: 225px;
  box-sizing: border-box;
  border-right: 1px solid #fff;
}
@media screen and (max-width: 1040px) {
  .index-lineup__list-item {
    width: calc(100% / 2);
    height: auto;
  }
}
@media screen and (max-width: 1040px) {
  .index-lineup__list-item:nth-of-type(2n) {
    border-right: none;
  }
}
@media screen and (max-width: 1040px) {
  .index-lineup__list-item:nth-child(n + 3) {
    border-top: 1px solid #fff;
  }
}
.index-lineup__list-item:nth-of-type(4n) {
  border-right: none;
}
.index-lineup__list-item:nth-child(n + 5) {
  border-top: 1px solid #fff;
}
.index-lineup__link {
  height: 100%;
  box-sizing: border-box;
  padding-bottom: 1.6666666667vw;
  display: block;
}
@media screen and (max-width: 1040px) {
  .index-lineup__link {
    height: 100%;
    padding-bottom: 12vw;
  }
}
@media screen and (max-width: 640px) {
  .index-lineup__link {
    height: 40vw;
  }
}
.index-lineup__link--icon1 {
  background-image: url(/box/img/icon1.png);
  background-position: 50% 10%;
  background-repeat: no-repeat;
}
@media screen and (max-width: 1040px) {
  .index-lineup__link--icon1 {
  background-position: 50% 10%;
    /*background-size: 14.5333333333vw 21.7333333333vw;*/
    /*background-position: 50% 61%;*/
  }
}
@media screen and (max-width: 640px) {
  .index-lineup__link--icon1 {
    background-size: 50% 50%;
    /*background-position: 50% 61%;*/
  }
}
.index-lineup__link--icon2 {
  background-image: url(/box/img/icon2.png);
  background-position: 50% 10%;
  background-repeat: no-repeat;
  /*background-size: 105px 119px;*/
}
@media screen and (max-width: 1040px) {
  .index-lineup__link--icon2 {
  background-position: 50% 10%;
    /*background-size: 14.5333333333vw 21.7333333333vw;*/
    /*background-position: 50% 61%;*/
  }
}
@media screen and (max-width: 640px) {
  .index-lineup__link--icon2 {
    background-size: 50% 50%;
    /*background-position: 50% 61%;*/
  }
}
.index-lineup__link--icon3 {
  background-image: url(/box/img/icon3.png);
  background-position: 50% 10%;
  background-repeat: no-repeat;
}
@media screen and (max-width: 1040px) {
  .index-lineup__link--icon3 {
  background-position: 50% 10%;
    /*background-size: 14.5333333333vw 21.7333333333vw;*/
    /*background-position: 50% 61%;*/
  }
}
@media screen and (max-width: 640px) {
  .index-lineup__link--icon3 {
    background-size: 50% 50%;
    /*background-position: 50% 61%;*/
  }
}

/*0920アイコン追加*/
.index-lineup__link--icon4 {
  background-image: url(/box/img/icon4.png);
  background-position: 50% 10%;
  background-repeat: no-repeat;
}
@media screen and (max-width: 1040px) {
  .index-lineup__link--icon4 {
  background-position: 50% 10%;
    /*background-size: 14.5333333333vw 21.7333333333vw;*/
    /*background-position: 50% 61%;*/
  }
}
@media screen and (max-width: 640px) {
  .index-lineup__link--icon4 {
    background-size: 50% 50%;
  }
}
.index-lineup__link--icon5 {
  background-image: url(/box/img/icon5.png);
  background-position: 50% 10%;
  background-repeat: no-repeat;
}
@media screen and (max-width: 1040px) {
  .index-lineup__link--icon5 {
  background-position: 50% 10%;
    /*background-size: 14.5333333333vw 21.7333333333vw;*/
    /*background-position: 50% 61%;*/
  }
}
@media screen and (max-width: 640px) {
  .index-lineup__link--icon5 {
    background-size: 50% 50%;
  }
}
.index-lineup__link--icon6 {
  background-image: url(/box/img/icon6.png);
  background-position: 50% 10%;
  background-repeat: no-repeat;
}
@media screen and (max-width: 1040px) {
  .index-lineup__link--icon6 {
  background-position: 50% 10%;
    /*background-size: 14.5333333333vw 21.7333333333vw;*/
    /*background-position: 50% 61%;*/
  }
}
@media screen and (max-width: 640px) {
  .index-lineup__link--icon6 {
    background-size: 50% 50%;
  }
}
.index-lineup__link--icon7 {
  background-image: url(/box/img/icon7.png);
  background-position: 50% 10%;
  background-repeat: no-repeat;
}
@media screen and (max-width: 1040px) {
  .index-lineup__link--icon7 {
  background-position: 50% 10%;
    /*background-size: 14.5333333333vw 21.7333333333vw;*/
    /*background-position: 50% 61%;*/
  }
}
@media screen and (max-width: 640px) {
  .index-lineup__link--icon7 {
    background-size: 50% 50%;
  }
}
.index-lineup__link--icon8 {
  background-image: url(/box/img/icon8.png);
  background-position: 50% 10%;
  background-repeat: no-repeat;
}
@media screen and (max-width: 1040px) {
  .index-lineup__link--icon8 {
  background-position: 50% 10%;
    /*background-size: 14.5333333333vw 21.7333333333vw;*/
    /*background-position: 50% 61%;*/
  }
}
@media screen and (max-width: 640px) {
  .index-lineup__link--icon8 {
    background-size: 50% 50%;
  }
}
/*/0920アイコン追加*/


.index-lineup__link-frame {
  height: 100%;
  box-sizing: border-box;
  padding-top: 140px;
  text-align: center;
  color: #fff;
}
@media screen and (max-width: 1040px) {
  .index-lineup__link-frame {
    /*padding-top: 55px;*/
  }
}
@media screen and (max-width: 640px) {
  .index-lineup__link-frame {
    padding-top: 60%;
    /*padding-top: 16.6666666667vw;*/
  }
}
.index-lineup__link-frame-title {
  position: relative;
  letter-spacing: .08em;
  font-family: 'Roboto Condensed', sans-serif;
  font-weight: 400;
  font-size: 1.1538461538rem;
  margin-bottom: 8px;
}
@media screen and (max-width: 640px) {
  .index-lineup__link-frame-title {
    font-size: 2.9333333333vw;
    margin-bottom: 1.3333333333vw;
  }
}
.index-lineup__link-frame-title:before {
  content: "";
  position: absolute;
  bottom: -2px;
  left: 50%;
  display: block;
  width: 21px;
  height: 2px;
  background-color: #fff;
  z-index: 1;
  transform: translateX(-50%);
}
@media screen and (max-width: 640px) {
  .index-lineup__link-frame-title:before {
    width: 4.1333333333vw;
    height: 0.4vw;
  }
}
.index-lineup__link-frame-text {
  font-size: 1.3076923077rem;
}
@media screen and (max-width: 640px) {
  .index-lineup__link-frame-text {
    font-size: 3.3333333333vw;
  }
}
.index-lineup__link-frame-note {
  font-size: 0.9230769231rem;
}
@media screen and (max-width: 640px) {
  .index-lineup__link-frame-note {
    font-size: 2.4vw;
  }
}

/* ---------------------------------------------
*   index-lineup2
--------------------------------------------- */
.index-lineup2 {
  position: relative;
  width: 55%;
  z-index: 1;
  margin-right: auto;
  margin-bottom: 200px;
  margin-top: 150px;
  margin-left: auto;
}
@media screen and (max-width: 640px) {
  .index-lineup2 {
    width: 100%;
    box-sizing: border-box;
    padding-right: 3vw;
    padding-left: 3vw;
    margin-bottom: 47.3333333333vw;
  }
}
.index-lineup2:before, .index-lineup2:after {
  content: "";
  position: absolute;
  z-index: -2;
  display: block;
  width: 600px;
  height: 300px;
}
.index-lineup2:before {
  top: -60px;
  left: -153px;
  background: url(/common/ver.1/img/top/bg_deco1.png) 0 0 no-repeat;
}
@media screen and (max-width: 640px) {
  .index-lineup2:before {
    top: -20vw;
    left: 0px;
    background: url(/common/ver.1/img/sp/top/bg_deco1.png) 0 0 no-repeat;
    background-size: 95vw 68vw;
  }
}
.index-lineup2:after {
  bottom: -90px;
  right: -154px;
  background: url(/common/ver.1/img/top/bg_deco2.png) 0 0 no-repeat;
}
@media screen and (max-width: 640px) {
  .index-lineup2:after {
    right: -65vw;
    bottom: -46vw;
    background: url(/common/ver.1/img/sp/top/bg_deco2.png) 0 0 no-repeat;
    background-size: 95vw 68vw;
  }
}
.index-lineup__list2 {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  border: 1px solid #fff;
}
.index-lineup__list2:before, .index-lineup__list2:after {
  content: "";
  position: absolute;
  z-index: -1;
  display: block;
  background-color: #92c25e;
}
.index-lineup__list2:before {
  bottom: -15px;
  left: -15px;
  max-width: 365px;
  max-height: 189px;
  width: 30.4166666667vw;
  height: 32.1666666667vw;
}
@media screen and (max-width: 640px) {
  .index-lineup__list2:before {
    /*bottom: -5.3333333333vw;*/
    /*left: -5.3333333333vw;*/
    width: 30vw;
    height: 30vw;
  }
}
.index-lineup__list2:after {
  top: -15px;
  right: -15px;
  max-width: 526px;
  max-height:189px;
  width: 43.8333333333vw;
  height: 34.9166666667vw;
}
@media screen and (max-width: 640px) {
  .index-lineup__list2:after {
    /*top: -5.3333333333vw;*/
    /*right: -5.3333333333vw;*/
    width: 30vw;
    height: 30vw;
  }
}
.index-lineup__list-item2 {
  background-color: #004DB0;
  width: calc(100% / 3);
  height: 15vw;
  max-height: 120px;
  box-sizing: border-box;
  border-right: 1px solid #fff;
}
@media screen and (max-width: 1040px) {
  .index-lineup__list-item2 {
    width: calc(100% / 2);
    height: 15vw;
  }
}
@media screen and (max-width: 1040px) {
  .index-lineup__list-item2:nth-of-type(2n) {
    border-right: none;
  }
}
@media screen and (max-width: 1040px) {
  .index-lineup__list-item2:nth-child(n + 3) {
    border-top: 1px solid #fff;
  }
}
.index-lineup__list-item2:nth-of-type(3n) {
 /* border-right: none;*/
}
.index-lineup__list-item2:nth-child(n + 4) {
  border-top: 1px solid #fff;
}
.index-lineup__link2 {
  height: 100%;
  box-sizing: border-box;
  display: block;
}
@media screen and (max-width: 1040px) {
  .index-lineup__link2 {
    height: 100%;
  }
}
@media screen and (max-width: 640px) {
  .index-lineup__link2 {
    /*height: 18vw;*/
  }
}
.index-lineup__link-frame2 {
  height: 100%;
  align-items: center;
  display: flex;
  justify-content: center;
  text-align: center;
  color: #fff;

}
@media screen and (max-width: 1040px) {
  .index-lineup__link-frame2 {
  }
}
@media screen and (max-width: 640px) {
  .index-lineup__link-frame2 {
  }
}
.index-lineup__link-frame-title2 {
  position: relative;
  letter-spacing: .08em;
  font-family: 'Roboto Condensed', sans-serif;
  font-weight: 400;
  font-size: 1.1538461538rem;
  margin-bottom: 8px;
}
@media screen and (max-width: 640px) {
  .index-lineup__link-frame-title2 {
    font-size: 2.9333333333vw;
    margin-bottom: 1.3333333333vw;
  }
}
.index-lineup__link-frame-title2:before {
  content: "";
  position: absolute;
  bottom: -2px;
  left: 50%;
  display: block;
  width: 21px;
  height: 2px;
  background-color: #fff;
  z-index: 1;
  transform: translateX(-50%);
}
@media screen and (max-width: 640px) {
  .index-lineup__link-frame-title2:before {
    width: 4.1333333333vw;
    height: 0.4vw;
  }
}
.index-lineup__link-frame-text2 {
  font-size: 1.3076923077rem;
}
@media screen and (max-width: 640px) {
  .index-lineup__link-frame-text2 {
    font-size: 3.3333333333vw;
  }
}
.index-lineup__link-frame-note2 {
  font-size: 0.9230769231rem;
}
@media screen and (max-width: 640px) {
  .index-lineup__link-frame-note2 {
    font-size: 2.4vw;
  }
}

/* ---------------------------------------------
*   index-news
--------------------------------------------- */
.index-news {
  padding-top: 20px;
  padding-bottom: 20px;
  background-color: rgba(0, 77, 176, 0.1);
}
@media screen and (max-width: 640px) {
  .index-news {
    padding-top: 5.3333333333vw;
    padding-right: 5.3333333333vw;
    padding-bottom: 5.3333333333vw;
    padding-left: 5.3333333333vw;
  }
}
.index-news__title {
  width: 45px;
  position: relative;
  letter-spacing: .1em;
  text-align: center;
  line-height: 1.8;
  font-family: 'Roboto Condensed', sans-serif;
  font-weight: 700;
  color: #004DB0;
  font-size: 2.3076923077rem;
  writing-mode: vertical-rl;
  margin-right: 40px;
}
@media screen and (max-width: 640px) {
  .index-news__title {
    width: 9.0666666667vw;
    padding-top: 1.3333333333vw;
    padding-right: 2.6666666667vw;
    text-align: left;
    margin-right: 6.6666666667vw;
  }
}
.index-news__title:before {
  content: "";
  position: absolute;
  top: -14px;
  right: 0;
  display: block;
  width: 1px;
  height: calc(100% + 38px);
  background-color: #004DB0;
  z-index: 1;
}
.index-news__contents {
  width: calc(100% - 90px);
}
@media screen and (max-width: 1040px) {
  .index-news__contents {
    width: 100%;
  }
}
.index-news__contents-outer {
  display: flex;
  width: calc(100% - 45px - 40px);
}
@media screen and (max-width: 1040px) {
  .index-news__contents-outer {
    display: block;
  }
}
@media screen and (max-width: 640px) {
  .index-news__contents-outer {
    width: calc(100% - 9.06667vw - 6.66667vw - 2.66667vw);
  }
}
.index-news__list-item:nth-child(n + 2) {
  margin-top: 27px;
}
@media screen and (max-width: 640px) {
  .index-news__list-item:nth-child(n + 2) {
    margin-top: 9.3333333333vw;
  }
}
.index-news__list-inner {
  display: flex;
  align-items: center;
}
@media screen and (max-width: 640px) {
  .index-news__list-inner {
    display: block;
  }
}
.index-news__list-break {
  display: flex;
}
@media screen and (max-width: 640px) {
  .index-news__list-break {
    margin-bottom: 1.3333333333vw;
  }
}
.index-news__list-data {
  width: 107px;
  font-family: 'Roboto Condensed', sans-serif;
  font-weight: 400;
  font-size: 1.1538461538rem;
}
@media screen and (max-width: 640px) {
  .index-news__list-data {
    width: 22vw;
    font-size: 4vw;
  }
}
.index-news__list-title {
  width: 116px;
  font-weight: bold;
  padding-top: 2px;
}
@media screen and (max-width: 640px) {
  .index-news__list-title {
    width: calc(100% - 22vw);
    padding-top: 0.5333333333vw;
  }
}
.index-news__list-text {
  width: calc(100% - 107px - 116px);
}
@media screen and (max-width: 640px) {
  .index-news__list-text {
    width: 100%;
  }
}
.index-news__more {
  width: 90px;
  text-align: right;
  padding-bottom: 4px;
  margin-top: auto;
  text-decoration: underline;
}
@media screen and (max-width: 1040px) {
  .index-news__more {
    width: auto;
    margin-top: 30px;
    display: inline-block;
    margin-bottom: 0;
  }
}
@media screen and (max-width: 640px) {
  .index-news__more {
    margin-top: 10.6666666667vw;
  }
}
.index-news__more:hover {
  text-decoration: none;
}

/*  index-news-inner
--------------------------------------------- */
.index-news-inner {
  display: flex;
  width: 74.5833333333%;
  padding: 19px 0;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (max-width: 640px) {
  .index-news-inner {
    align-items: inherit;
    width: 100%;
    box-sizing: border-box;
    padding-top: 5.3333333333vw;
    padding-right: 0;
    padding-bottom: 5.3333333333vw;
    padding-left: 0;
  }
}

/* ---------------------------------------------
*   recruit-contents
--------------------------------------------- */
.recruit-contents {
  margin-bottom: 50px;
}
@media screen and (max-width: 640px) {
  .recruit-contents {
    margin-bottom: 20vw;
  }
}
.recruit-contents__list {
  display: flex;
  flex-wrap: wrap;
}
.recruit-contents__list-item,
.recruit-contents__list-item1 {
  width: 100%;
}
.recruit-contents__list-item:nth-of-type(even) .recruit-contents-cassette {
  flex-direction: row-reverse;
  background-color: #004DB0;
}
.recruit-contents__list-item1 .recruit-contents-cassette {
  /*flex-direction: row-reverse;*/
  background-color: #004DB0;
}
.recruit-contents__list-item:nth-of-type(even) .recruit-contents-cassette__menu {
  padding-right: 5.4166666667%;
  padding-left: 12.5%;
}
.recruit-contents__list-item1 .recruit-contents-cassette__menu {
  padding-left: 5.4166666667%;
  padding-right: 12.5%;
}
@media screen and (max-width: 1040px) {
  .recruit-contents__list-item:nth-of-type(even) .recruit-contents-cassette__menu,
  .recruit-contents__list-item1 .recruit-contents-cassette__menu {
    padding-right: 0;
    padding-left: 0;
  }
}
@media screen and (max-width: 640px) {
  .recruit-contents__list-item:nth-of-type(even) .recruit-contents-cassette__menu,
  .recruit-contents__list-item1 .recruit-contents-cassette__menu {
    padding-right: 5.3333333333%;
    padding-left: 5.3333333333%;
  }
}
.recruit-contents__list-item:nth-of-type(even) .recruit-contents-cassette__menu-head,
.recruit-contents__list-item1 .recruit-contents-cassette__menu-head {
  color: #fff;
}
.recruit-contents__list-item:nth-of-type(even) .recruit-contents-cassette__menu-head:before,
.recruit-contents__list-item1 .recruit-contents-cassette__menu-head:before {
  left: auto;
  right: -8.75vw;
  background-color: #fff;
}
.recruit-contents__list-item1 .recruit-contents-cassette__menu-head:before {
  right: auto;
  left: -8.75vw;
  background-color: #fff;
}
@media screen and (max-width: 1040px) {
  .recruit-contents__list-item:nth-of-type(even) .recruit-contents-cassette__menu-head:before,
  .recruit-contents__list-item1: .recruit-contents-cassette__menu-head:before {
    right: 0;
    left: 0;
  }
}
.recruit-contents__list-item:nth-of-type(even) .recruit-contents-cassette__menu-body,
.recruit-contents__list-item1 .recruit-contents-cassette__menu-body {
  color: #fff;
}
.recruit-contents__list-item:nth-of-type(even) .blue-link {
  background-color: #8ACDE8;
}
.recruit-contents__list-item:nth-of-type(even) .blue-link:after {
  background-color: #8ACDE8;
}
.recruit-contents__list-item:nth-of-type(n + 2) {
  margin-top: 5px;
}
@media screen and (max-width: 640px) {
  .recruit-contents__list-item:nth-of-type(n + 2) {
    margin-top: 0;
  }
}
@media screen and (max-width: 640px) {
  .recruit-contents__list-item:nth-of-type(2n) {
    margin-bottom: 20vw;
  }
}
.recruit-contents__list-item:last-child {
  margin-bottom: 0;
}
.recruit-contents__list-item--1 .recruit-contents-cassette__image {
  background-image: url("/recruit/box/img/img_content1n.jpg");
}
@media screen and (max-width: 640px) {
  .recruit-contents__list-item--1 .recruit-contents-cassette__menu-head:before {
    display: none;
  }
}
.recruit-contents__list-item--2 .recruit-contents-cassette__image {
  background-image: url(/recruit/box/img/img_content2.jpg);
}
.recruit-contents__list-item--3 .recruit-contents-cassette__image {
  background-image: url(/recruit/box/img/img_content3.jpg);
}
.recruit-contents__list-item--4 .recruit-contents-cassette__image {
  background-image: url(/recruit/box/img/img_content4.jpg);
}
.recruit-contents__list-item--10 .recruit-contents-cassette__image {
  background-image: url(/recruit/box/img/img_menu4.jpg);
}
.recruit-contents__list-item--10 .professional-contents-cassette__image {
  background-image: url(/recruit/box/img/img_menu5.jpg);
}
.recruit-contents__list-item--11 .recruit-contents-cassette__image {
  background-image: url(/recruit/box/img/img_content2.jpg);
}
.recruit-contents__list-item--12 .recruit-contents-cassette__image {
  background-image: url(/recruit/box/img/img_content4.jpg);
}
.recruit-contents__list-item--13 .recruit-contents-cassette__image {
  background-image: url(/recruit/box/img/img_content3.jpg);
}
.recruit-contents__list-item--14 .recruit-contents-cassette__image {
  background-image: url(/recruit/box/img/img_content1n.jpg);
}
.recruit-contents__list-item--15 .recruit-contents-cassette__image {
  background-image: url(/recruit/box/img/img_menu1.jpg);
}
.recruit-contents__list-item--16 .recruit-contents-cassette__image {
  background-image: url(/recruit/box/img/img_menu2.jpg);
}

/*  recruit-contents-cassette
--------------------------------------------- */
.recruit-contents-cassette {
  display: flex;
  align-items: center;
  min-height: 370px;
}
@media screen and (max-width: 1040px) {
  .recruit-contents-cassette {
    padding-top: 20px;
    padding-bottom: 20px;
    display: block;
  }
}
@media screen and (max-width: 640px) {
  .recruit-contents-cassette {
    min-height: 0;
    height: 100%;
    padding-top: 0;
    padding-bottom: 0;
  }
}
.recruit-contents-cassette__image {
  background-size: cover;
  background-position: 50% 50%;
  width: 50%;
  height: 30.8333333333vw;
}
.professional-contents-cassette__image {
  background-size: cover;
  background-position: 50% 50%;
  width: 50%;
  height: 30.8333333333vw;
}
@media screen and (max-width: 1040px) {
  .recruit-contents-cassette__image {
    width: 600px;
    height: 370px;
    margin-right: auto;
    margin-left: auto;
  }
}
@media screen and (max-width: 640px) {
  .recruit-contents-cassette__image {
    width: 100%;
    height: 61.6vw;
  }
}
.recruit-contents-cassette__image img {
  width: 100%;
}
.recruit-contents-cassette__menu {
  width: 50%;
  padding-top: 20px;
  padding-right: 12.5%;
  padding-bottom: 20px;
  padding-left: 5.4166666667%;
  box-sizing: border-box;
}
@media screen and (max-width: 1040px) {
  .recruit-contents-cassette__menu {
    width: 600px;
    padding-right: 0;
    padding-left: 0;
    margin-right: auto;
    margin-left: auto;
  }
}
@media screen and (max-width: 640px) {
  .recruit-contents-cassette__menu {
    width: 100%;
    padding-top: 5.3333333333vw;
    padding-right: 5.3333333333%;
    padding-bottom: 18.6666666667vw;
    padding-left: 5.3333333333%;
  }
}
.recruit-contents-cassette__menu-head {
  position: relative;
  padding-bottom: 13px;
  color: #004DB0;
}
@media screen and (max-width: 640px) {
  .recruit-contents-cassette__menu-head {
    padding-bottom: 3.4666666667vw;
  }
}
.recruit-contents-cassette__menu-head:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: -8.75vw;
  display: block;
  width: 40.8333333333vw;
  height: 1px;
  background-color: #004DB0;
  z-index: 1;
}
@media screen and (max-width: 1040px) {
  .recruit-contents-cassette__menu-head:before {
    left: 0;
    right: 0;
    width: 100%;
  }
}
.recruit-contents-cassette__menu-head-title {
  display: block;
  font-family: 'Roboto Condensed', sans-serif;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: .06em;
  font-size: 2.4615384615rem;
  margin-bottom: 5px;
}
@media screen and (max-width: 640px) {
  .recruit-contents-cassette__menu-head-title {
    line-height: 1;
    margin-bottom: 2.6666666667vw;
  }
}
.recruit-contents-cassette__menu-head-caption {
  display: block;
  line-height: 1.2;
  font-size: 1.0769230769rem;
}
.recruit-contents-cassette__menu-body .blue-link-area {
  justify-content: flex-end;
  margin-top: 35px;
  margin-right: 28px;
}
@media screen and (max-width: 640px) {
  .recruit-contents-cassette__menu-body .blue-link-area {
    margin-top: 4vw;
    margin-right: 7.7333333333vw;
  }
}
.recruit-contents-cassette__menu-body-title {
  letter-spacing: .06em;
  font-weight: bold;
  font-size: 1.3846153846rem;
  margin-top: 15px;
  margin-bottom: 15px;
}
@media screen and (max-width: 640px) {
  .recruit-contents-cassette__menu-body-title {
    margin-top: 3.7333333333vw;
    margin-bottom: 4vw;
  }
}
.recruit-contents-cassette__menu-body-text {
  line-height: 1.7;
}

/* ---------------------------------------------
*   recruit-detail
--------------------------------------------- */
.recruit-detail {
  margin-bottom: 130px;
}
@media screen and (max-width: 640px) {
  .recruit-detail {
    margin-bottom: 18.6666666667vw;
  }
}
.recruit-detail__list {
  display: flex;
  flex-wrap: wrap;
}
@media screen and (max-width: 1040px) {
  .recruit-detail__list {
    display: block;
  }
}
.recruit-detail__list-item {
  width: 50%;
  box-sizing: border-box;
  padding-right: 2.5%;
}
@media screen and (max-width: 1040px) {
  .recruit-detail__list-item {
    width: 100%;
    padding-right: 4.1666666667%;
    padding-left: 4.1666666667%;
  }
}
@media screen and (max-width: 640px) {
  .recruit-detail__list-item {
    padding-right: 0;
    padding-left: 0;
  }
}
.recruit-detail__list-item:nth-of-type(even) {
  padding-right: 0;
  padding-left: 2.5%;
}
@media screen and (max-width: 1040px) {
  .recruit-detail__list-item:nth-of-type(even) {
    padding-right: 4.1666666667%;
    padding-left: 4.1666666667%;
  }
}
@media screen and (max-width: 640px) {
  .recruit-detail__list-item:nth-of-type(even) {
    padding-right: 0;
    padding-left: 0;
  }
}
.recruit-detail__list-item:nth-of-type(even) .recruit-detail-cassette__image {
  margin-left: 0;
  margin-right: auto;
}
.recruit-detail__list-item:nth-of-type(even) .recruit-detail-cassette__contents {
  margin-left: 0;
  margin-right: auto;
}
.recruit-detail__list-item:nth-of-type(even) .recruit-detail-cassette__title {
  padding-right: 0;
  padding-left: 25px;
  margin-left: 20px;
  margin-right: 0;
}
@media screen and (max-width: 640px) {
  .recruit-detail__list-item:nth-of-type(even) .recruit-detail-cassette__title {
    margin-left: 0;
  }
}
.recruit-detail__list-item:nth-of-type(even) .recruit-detail-cassette__title:before {
  right: auto;
  left: 0;
}
.recruit-detail__list-item:nth-of-type(even) .recruit-detail-cassette__title-inner {
  margin-right: auto;
  margin-left: 0;
}
.recruit-detail__list-item:nth-of-type(even) .recruit-detail-cassette .blue-link-area {
  margin-right: auto;
  margin-left: 0;
}
@media screen and (max-width: 1040px) {
  .recruit-detail__list-item:nth-of-type(even) .recruit-detail-cassette .blue-link-area {
    margin-right: 0;
    margin-left: auto;
  }
}
@media screen and (max-width: 1040px) {
  .recruit-detail__list-item:nth-of-type(n + 2) {
    margin-top: 100px;
  }
}
@media screen and (max-width: 640px) {
  .recruit-detail__list-item:nth-of-type(n + 2) {
    margin-top: 20vw;
  }
}
.recruit-detail__list-item:nth-of-type(n + 3) {
  margin-top: 100px;
}
@media screen and (max-width: 640px) {
  .recruit-detail__list-item:nth-of-type(n + 3) {
    margin-top: 20vw;
  }
}
@media screen and (max-width: 640px) {
  .recruit-detail__list-item:nth-of-type(n + 2) {
    margin-top: 20vw;
  }
}

/*  recruit-detail-cassette
--------------------------------------------- */
.recruit-detail-cassette__title {
  position: relative;
  padding-top: 12px;
  padding-bottom: 62px;
  padding-right: 25px;
  z-index: -1;
  background-color: #004DB0;
  margin-right: 20px;
  margin-left: 0;
}
@media screen and (max-width: 640px) {
  .recruit-detail-cassette__title {
    margin-right: 0;
    padding-top: 5.3333333333vw;
    padding-right: 5.3333333333%;
    padding-bottom: 9.3333333333vw;
    padding-left: 5.3333333333%;
  }
}
.recruit-detail-cassette__title:before {
  content: "";
  position: absolute;
  right: 0;
  bottom: -10px;
  display: block;
  width: calc(100% - 30px);
  height: 10px;
  background-color: #8ACDE8;
  z-index: 1;
}
@media screen and (max-width: 640px) {
  .recruit-detail-cassette__title:before {
    width: 100%;
    height: 5.6vw;
    bottom: -5.6vw;
  }
}
.recruit-detail-cassette__title-inner {
  width: 71.4035087719%;
  margin-left: auto;
}
@media screen and (max-width: 640px) {
  .recruit-detail-cassette__title-inner {
    width: 100%;
  }
}
.recruit-detail-cassette__title-item {
  display: block;
  line-height: 1.2;
  letter-spacing: .06em;
  font-family: 'Roboto Condensed', sans-serif;
  font-weight: 700;
  color: #fff;
  font-size: 2.3076923077rem;
  margin-bottom: 3px;
}
@media screen and (max-width: 640px) {
  .recruit-detail-cassette__title-item {
    letter-spacing: .04em;
    line-height: 1;
    font-size: 8vw;
    margin-bottom: 2.6666666667vw;
  }
}
.recruit-detail-cassette__title-caption {
  display: block;
  color: #fff;
  line-height: 1.2;
  font-size: 1.0769230769rem;
}
.recruit-detail-cassette__image {
  width: 73.6842105263%;
  margin-top: -50px;
  margin-left: auto;
}
@media screen and (max-width: 1040px) {
  .recruit-detail-cassette__image {
    width: 100%;
    max-width: 420px;
    box-sizing: border-box;
  }
}
@media screen and (max-width: 640px) {
  .recruit-detail-cassette__image {
    max-width: none;
    padding-right: 5.3333333333%;
    padding-left: 5.3333333333%;
    margin-top: -5.3333333333vw;
  }
}
.recruit-detail-cassette__image img {
  width: 100%;
}
.recruit-detail-cassette__contents {
  width: 85%;
  margin-bottom: 15px;
  margin-left: auto;
}
@media screen and (max-width: 1040px) {
  .recruit-detail-cassette__contents {
    width: 100%;
    box-sizing: border-box;
  }
}
@media screen and (max-width: 640px) {
  .recruit-detail-cassette__contents {
    padding-right: 5.3333333333%;
    padding-left: 5.3333333333%;
  }
}
.recruit-detail-cassette__contents-title {
  letter-spacing: .06em;
  color: #323232;
  font-weight: bold;
  font-size: 1.3846153846rem;
  margin-top: 15px;
  margin-bottom: 15px;
}
.recruit-detail-cassette__contents-text {
  line-height: 1.6;
}
.recruit-detail-cassette .blue-link-area {
  width: 73.6842105263%;
  box-sizing: border-box;
  padding-right: 4.7619047619%;
  margin-right: 0;
  margin-left: auto;
}
@media screen and (max-width: 640px) {
  .recruit-detail-cassette .blue-link-area {
    width: 100%;
    box-sizing: border-box;
    padding-right: 5.3333333333%;
    padding-left: 5.3333333333%;
  }
}
.recruit-detail-cassette .blue-link {
  margin-left: auto;
}
@media screen and (max-width: 640px) {
  .recruit-detail-cassette .blue-link {
    margin-left: 0;
  }
}

/* ---------------------------------------------
*   environment-contents
--------------------------------------------- */
.environment-contents {
  margin-bottom: 50px;
}
@media screen and (max-width: 640px) {
  .environment-contents {
    margin-bottom: 80px;
  }
}
@media screen and (max-width: 640px) {
  .environment-contents {
    margin-top: 18.6666666667vw;
  }
}
.environment-contents__list-item:nth-of-type(n + 2) {
  margin-top: 125px;
}
@media screen and (max-width: 640px) {
  .environment-contents__list-item:nth-of-type(n + 2) {
    margin-top: 20vw;
  }
}

/*  environment-contents-cassette
--------------------------------------------- */
.environment-contents-cassette__title {
  position: relative;
  display: inline-block;
  padding: 15px 12.5%;
  letter-spacing: .04em;
  background-color: #004DB0;
  color: #fff;
  font-weight: bold;
  font-size: 2rem;
  z-index: 1;
  letter-spacing: .56em;
  text-align: left;
}
@media screen and (max-width: 1040px) {
  .environment-contents-cassette__title {
    display: block;
  }
}
@media screen and (max-width: 640px) {
  .environment-contents-cassette__title {
    padding-top: 3.7333333333vw;
    padding-right: 4.5333333333%;
    padding-bottom: 3.7333333333vw;
    padding-left: 4.5333333333%;
    font-size: 5.8666666667vw;
  }
}
.environment-contents-cassette__title:before {
  content: "";
  position: absolute;
  bottom: -10px;
  left: 0;
  display: block;
  width: 83.5%;
  height: 10px;
  background-color: #8ACDE8;
  z-index: 1;
}
@media screen and (max-width: 1040px) {
  .environment-contents-cassette__title:before {
    width: 93%;
  }
}
@media screen and (max-width: 640px) {
  .environment-contents-cassette__title:before {
    bottom: -2.6666666667vw;
    height: 2.6666666667vw;
    width: 94.5%;
  }
}
.environment-contents-cassette__interview {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.environment-contents-cassette__interview li {
  width: 46.6666666667%;
  margin-bottom: 50px;
}
@media screen and (max-width: 880px) {
  .environment-contents-cassette__interview li {
    width: 100%;
  }
}
.environment-contents-cassette__interview li a {
  display: block;
  position: relative;
}
.environment-contents-cassette__interview li .photo {
  position: relative;
  margin-bottom: 10px;
}
.environment-contents-cassette__interview li .photo:after {
  content: "";
  position: absolute;
  top: -5px;
  right: -5px;
  display: block;
  width: 100%;
  height: 22.9166666667vw;
  background-color: #8ACDE8;
  z-index: -1;
}
@media screen and (max-width: 880px) {
  .environment-contents-cassette__interview li .photo:after {
    height: 48.6666666667vw;
  }
}
@media screen and (max-width: 640px) {
  .environment-contents-cassette__interview li .photo:after {
    height: 56.6666666667vw;
  }
}
.environment-contents-cassette__interview li .copy {
  position: absolute;
  padding: 5px 10px 5px 20px;
  bottom: 50px;
  left: 0px;
  background-color: #004DB0;
  opacity: .95;
  color: #fff;
  font-size: 1.0769230769rem;
  font-family: 'Roboto Condensed', sans-serif;
  font-weight: 700;
}
@media screen and (max-width: 640px) {
  .environment-contents-cassette__interview li .copy {
    font-size: 0.9230769231rem;
  }
}

/* -- environment-contents-cassette-inner -- */
.environment-contents-cassette-inner {
  margin-top: 50px;
  display: block;
  width: 75%;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (max-width: 1040px) {
  .environment-contents-cassette-inner {
    display: block;
  }
}
@media screen and (max-width: 640px) {
  .environment-contents-cassette-inner {
    width: 100%;
    box-sizing: border-box;
    padding-right: 5.3333333333%;
    padding-left: 5.3333333333%;
  }
}

/* ---------------------------------------------
*   interview-contents
--------------------------------------------- */
.interview-contents {
  /*margin-bottom: 160px;*/
}
@media screen and (max-width: 640px) {
  .interview-contents {
    margin-bottom: 80px;
  }
}
@media screen and (max-width: 640px) {
  .interview-contents {
    margin-top: 18.6666666667vw;
  }
}

.interview-contents-cassette {
  width: 75%;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (max-width: 640px) {
  .interview-contents-cassette {
    width: 100%;
    box-sizing: border-box;
    padding-right: 5.3333333333%;
    padding-left: 5.3333333333%;
  }
}
.interview-contents-cassette .text {
  font-size: 18px;
  margin-bottom: 1em;
  line-height: 2;
}
@media screen and (max-width: 640px) {
  .interview-contents-cassette .text {
    font-size: 14px;
  }
}
.interview-contents-cassette .photo {
  position: relative;
  float: right;
  width: 45.8468176915%;
  margin-left: 5.3937432578%;
  margin-bottom: 5.3937432578%;
}
@media screen and (max-width: 640px) {
  .interview-contents-cassette .photo {
    width: 100%;
    float: none;
    margin-left: 0;
    margin-bottom: 1em;
  }
}
.interview-contents-cassette .photo:after {
  content: "";
  position: absolute;
  top: -5px;
  right: -5px;
  display: block;
  width: 100%;
  height: 22.5vw;
  background-color: #8ACDE8;
  z-index: -1;
}
@media screen and (max-width: 640px) {
  .interview-contents-cassette .photo:after {
    height: 56.6666666667vw;
  }
}

/* ---------------------------------------------
*   about-contents
--------------------------------------------- */
.about-contents {
  margin-bottom: 160px;
}
@media screen and (max-width: 640px) {
  .about-contents {
    margin-top: 18.6666666667vw;
  }
}
.about-contents__list-item--1 .about-contents-cassette__num {
  top: -50px;
  left: -98px;
}
@media screen and (max-width: 1200px) {
  .about-contents__list-item--1 .about-contents-cassette__num {
    top: -4.1666666667vw;
  }
}
@media screen and (max-width: 1040px) {
  .about-contents__list-item--1 .about-contents-cassette__num {
    top: -30px;
    right: 0;
    left: auto;
  }
}
@media screen and (max-width: 640px) {
  .about-contents__list-item--1 .about-contents-cassette__num {
    top: -3.0666666667vw;
    right: 5.3333333333%;
  }
}
.about-contents__list-item--1 .about-contents-cassette__title {
  letter-spacing: .05em;
}
.about-contents__list-item--1 img {
  width: 165px;
}
@media screen and (max-width: 1200px) {
  .about-contents__list-item--1 img {
    width: 13.75vw;
  }
}
@media screen and (max-width: 640px) {
  .about-contents__list-item--1 img {
    width: 27.8666666667vw;
  }
}
.about-contents__list-item--2 .about-contents-cassette__num {
  top: -60px;
  right: -93px;
}
@media screen and (max-width: 1200px) {
  .about-contents__list-item--2 .about-contents-cassette__num {
    top: -5vw;
  }
}
@media screen and (max-width: 1040px) {
  .about-contents__list-item--2 .about-contents-cassette__num {
    top: -40px;
    right: 0;
  }
}
@media screen and (max-width: 640px) {
  .about-contents__list-item--2 .about-contents-cassette__num {
    top: -3.7333333333vw;
    right: 5.3333333333%;
  }
}
.about-contents__list-item--2 .about-contents-cassette__title {
  width: 53.3333333333%;
  box-sizing: border-box;
  padding-left: 5%;
}
@media screen and (max-width: 640px) {
  .about-contents__list-item--2 .about-contents-cassette__title {
    width: 100%;
  }
}
.about-contents__list-item--2 img {
  width: 182px;
}
@media screen and (max-width: 1200px) {
  .about-contents__list-item--2 img {
    width: 15.1666666667vw;
  }
}
@media screen and (max-width: 640px) {
  .about-contents__list-item--2 img {
    width: 30.6666666667vw;
  }
}
.about-contents__list-item--3 .about-contents-cassette__num {
  top: -56px;
  left: -97px;
}
@media screen and (max-width: 1200px) {
  .about-contents__list-item--3 .about-contents-cassette__num {
    top: -4.6666666667vw;
  }
}
@media screen and (max-width: 1040px) {
  .about-contents__list-item--3 .about-contents-cassette__num {
    top: -30px;
    right: 0;
    left: auto;
  }
}
@media screen and (max-width: 640px) {
  .about-contents__list-item--3 .about-contents-cassette__num {
    top: -3.3333333333vw;
    right: 5.3333333333%;
  }
}
.about-contents__list-item--3 img {
  width: 180px;
}
@media screen and (max-width: 1200px) {
  .about-contents__list-item--3 img {
    width: 15vw;
  }
}
@media screen and (max-width: 640px) {
  .about-contents__list-item--3 img {
    width: 30.4vw;
  }
}
.about-contents__list-item--4 .about-contents-cassette__num {
  top: -60px;
  right: -87px;
}
@media screen and (max-width: 1200px) {
  .about-contents__list-item--4 .about-contents-cassette__num {
    top: -5vw;
  }
}
@media screen and (max-width: 1040px) {
  .about-contents__list-item--4 .about-contents-cassette__num {
    top: -40px;
    right: 0;
  }
}
@media screen and (max-width: 640px) {
  .about-contents__list-item--4 .about-contents-cassette__num {
    top: -3.3333333333vw;
    right: 5.3333333333%;
  }
}
.about-contents__list-item--4 .about-contents-cassette__title {
  width: 53.3333333333%;
  box-sizing: border-box;
  padding-left: 5%;
}
@media screen and (max-width: 640px) {
  .about-contents__list-item--4 .about-contents-cassette__title {
    width: 100%;
  }
}
.about-contents__list-item--4 img {
  width: 177px;
}
@media screen and (max-width: 1200px) {
  .about-contents__list-item--4 img {
    width: 14.75vw;
  }
}
@media screen and (max-width: 640px) {
  .about-contents__list-item--4 img {
    width: 29.8666666667vw;
  }
}
.about-contents__list-item:nth-of-type(even) .about-contents-cassette {
  text-align: right;
}
.about-contents__list-item:nth-of-type(odd) .about-contents-cassette-inner {
  flex-direction: row-reverse;
}
.about-contents__list-item:nth-of-type(odd) .about-contents-cassette__image:before {
  right: 0;
  left: auto;
}
.about-contents__list-item:nth-of-type(2n) .about-contents-cassette__menu {
  padding-right: 0;
  padding-left: 2.9166666667%;
}
@media screen and (max-width: 640px) {
  .about-contents__list-item:nth-of-type(2n) .about-contents-cassette__menu {
    padding-right: 5.3333333333%;
    padding-left: 5.3333333333%;
  }
}
.about-contents__list-item:nth-of-type(2n) .about-contents-cassette__title:before {
  left: auto;
  right: 0;
}
.about-contents__list-item:nth-of-type(n + 2) {
  margin-top: 160px;
}
@media screen and (max-width: 640px) {
  .about-contents__list-item:nth-of-type(n + 2) {
    margin-top: 20vw;
  }
}

/*  about-contents-cassette
--------------------------------------------- */
.about-contents-cassette__title {
  position: relative;
  display: inline-block;
  padding: 15px 12.5%;
  letter-spacing: .04em;
  background-color: #004DB0;
  color: #fff;
  font-weight: bold;
  font-size: 2rem;
  z-index: 1;
  letter-spacing: .56em;
  text-align: left;
}
@media screen and (max-width: 1040px) {
  .about-contents-cassette__title {
    display: block;
  }
}
@media screen and (max-width: 640px) {
  .about-contents-cassette__title {
    padding-top: 3.7333333333vw;
    padding-right: 4.5333333333%;
    padding-bottom: 3.7333333333vw;
    padding-left: 4.5333333333%;
    font-size: 5.8666666667vw;
  }
}
.about-contents-cassette__title:before {
  content: "";
  position: absolute;
  bottom: -10px;
  left: 0;
  display: block;
  width: 83.5%;
  height: 10px;
  background-color: #8ACDE8;
  z-index: 1;
}
@media screen and (max-width: 1040px) {
  .about-contents-cassette__title:before {
    width: 93%;
  }
}
@media screen and (max-width: 640px) {
  .about-contents-cassette__title:before {
    bottom: -2.6666666667vw;
    height: 2.6666666667vw;
    width: 94.5%;
  }
}
.about-contents-cassette__title1 {
  position: relative;
  display: inline-block;
  padding: 15px 12.5%;
  letter-spacing: .04em;
  background-color: #004DB0;
  color: #fff;
  font-weight: bold;
  font-size: 2rem;
  z-index: 1;
  letter-spacing: .56em;
  text-align: left;
}
@media screen and (max-width: 1040px) {
  .about-contents-cassette__title1 {
    display: block;
  }
}
@media screen and (max-width: 640px) {
  .about-contents-cassette__title1 {
    padding-top: 3.7333333333vw;
    padding-right: 4.5333333333%;
    padding-bottom: 3.7333333333vw;
    padding-left: 4.5333333333%;
    font-size: 5.8666666667vw;
  }
}
.about-contents-cassette__title1:before {
  content: "";
  position: absolute;
  bottom: -10px;
  left: 0;
  display: block;
  width: 83.5%;
  height: 10px;
  background-color: #92c25e;
  z-index: 1;
}
@media screen and (max-width: 1040px) {
  .about-contents-cassette__title1:before {
    width: 93%;
  }
}
@media screen and (max-width: 640px) {
  .about-contents-cassette__title1:before {
    bottom: -2.6666666667vw;
    height: 2.6666666667vw;
    width: 94.5%;
  }
}
.about-contents-cassette__title2 {
  position: relative;
  display: inline-block;
  padding: 15px 12.5%;
  letter-spacing: .04em;
  background-color: #004DB0;
  color: #fff;
  font-weight: bold;
  font-size: 2rem;
  z-index: 1;
  letter-spacing: .56em;
  text-align: left;
}
@media screen and (max-width: 1040px) {
  .about-contents-cassette__title2 {
    display: block;
  }
}
@media screen and (max-width: 640px) {
  .about-contents-cassette__title2 {
    padding-top: 3.7333333333vw;
    padding-right: 4.5333333333%;
    padding-bottom: 3.7333333333vw;
    padding-left: 4.5333333333%;
    font-size: 5.8666666667vw;
  }
}
.about-contents-cassette__title2:before {
  content: "";
  position: absolute;
  bottom: -10px;
  left: 0;
  display: block;
  width: 83.5%;
  height: 10px;
  background-color: #f28119;
  z-index: 1;
}
@media screen and (max-width: 1040px) {
  .about-contents-cassette__title2:before {
    width: 93%;
  }
}
@media screen and (max-width: 640px) {
  .about-contents-cassette__title2:before {
    bottom: -2.6666666667vw;
    height: 2.6666666667vw;
    width: 94.5%;
  }
}
.about-contents-cassette__image {
  position: relative;
  width: 66.6666666667%;
}
@media screen and (max-width: 1040px) {
  .about-contents-cassette__image {
    margin-right: auto;
    margin-left: auto;
  }
}
@media screen and (max-width: 640px) {
  .about-contents-cassette__image {
    width: 100%;
  }
}
.about-contents-cassette__image img {
  width: 100%;
}
.about-contents-cassette__image:before {
  content: "";
  position: absolute;
  right: 0;
  bottom: -10px;
  left: 0;
  display: block;
  width: 93.75%;
  height: 10px;
  background-color: #8ACDE8;
  z-index: 1;
}
@media screen and (max-width: 1040px) {
  .about-contents-cassette__image:before {
    display: none;
  }
}
.about-contents-cassette__image1 {
  position: relative;
  width: 66.6666666667%;
}
@media screen and (max-width: 1040px) {
  .about-contents-cassette__image1 {
    margin-right: auto;
    margin-left: auto;
  }
}
@media screen and (max-width: 640px) {
  .about-contents-cassette__image1 {
    width: 100%;
  }
}
.about-contents-cassette__image1 img {
  width: 100%;
}
.about-contents-cassette__image1:before {
  content: "";
  position: absolute;
  right: 0;
  bottom: -10px;
  /*left: 0;*/
  display: block;
  width: 93.75%;
  height: 10px;
  background-color: #92c25e;
  z-index: 1;
}
@media screen and (max-width: 1040px) {
  .about-contents-cassette__image1:before {
    display: none;
  }
}
.about-contents-cassette__image2 {
  position: relative;
  width: 66.6666666667%;
}
@media screen and (max-width: 1040px) {
  .about-contents-cassette__image2 {
    margin-right: auto;
    margin-left: auto;
  }
}
@media screen and (max-width: 640px) {
  .about-contents-cassette__image2 {
    width: 100%;
  }
}
.about-contents-cassette__image2 img {
  width: 100%;
}
.about-contents-cassette__image2:before {
  content: "";
  position: absolute;
  right: 0;
  bottom: -10px;
  /*left: 0;*/
  display: block;
  width: 93.75%;
  height: 10px;
 background-color: #f28119;
  z-index: 1;
}
@media screen and (max-width: 1040px) {
  .about-contents-cassette__image2:before {
    display: none;
  }
}
.about-contents-cassette__menu {
  position: relative;
  width: 20.8333333333%;
  padding-right: 2.9166666667%;
  box-sizing: border-box;
  margin-top: 93px;
  margin-bottom: 1.6666666667vw;
}
@media screen and (max-width: 1125px) {
  .about-contents-cassette__menu {
    width: 235px;
  }
}
@media screen and (max-width: 1040px) {
  .about-contents-cassette__menu {
    width: 80%;
    margin-right: auto;
    margin-left: auto;
  }
}
@media screen and (max-width: 640px) {
  .about-contents-cassette__menu {
    width: 100%;
    box-sizing: border-box;
    padding-right: 5.3333333333%;
    padding-left: 5.3333333333%;
    margin-top: 6.4vw;
    margin-bottom: 0;
  }
}
.about-contents-cassette__num {
  position: absolute;
}
.about-contents-cassette__menu-head {
  text-align: left;
  margin-bottom: 18px;
}
@media screen and (max-width: 640px) {
  .about-contents-cassette__menu-head {
    margin-bottom: 7.2vw;
  }
}
.about-contents-cassette__menu-head-title {
  line-height: 1.7;
  font-weight: bold;
  font-size: 1.3846153846rem;
  margin-bottom: 18px;
}
@media screen and (max-width: 640px) {
  .about-contents-cassette__menu-head-title {
    margin-bottom: 6.6666666667vw;
  }
}
.about-contents-cassette__menu-head-caption {
  text-align: justify;
  font-weight: bold;
  line-height: 1.7;
}

/* -- about-contents-cassette-inner -- */
.about-contents-cassette-inner {
  display: flex;
  align-items: flex-end;
  margin-top: -30px;
}
@media screen and (max-width: 1040px) {
  .about-contents-cassette-inner {
    display: block;
    margin-top: 0;
  }
}

/* ---------------------------------------------
*   product-menu
--------------------------------------------- */
.product-menu {
  margin-bottom: 75px;
}
@media screen and (min-width: 641px) {
  .product-menu__trigger {
    display: none !important;
  }
}
@media screen and (max-width: 640px) {
  .product-menu__trigger {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 13.3333333333vw;
    padding-left: 5.3333333333vw;
    background-color: #004DB0;
    color: #fff;
    font-weight: bold;
    font-size: 5.3333333333vw;
    line-height: 1.3;
    border-bottom: 1.3333333333vw solid #8ACDE8;
    cursor: pointer;
  }
}
.product-menu__list {
  display: flex;
  flex-wrap: wrap;
  border-bottom: 10px solid #8ACDE8;
}
@media screen and (max-width: 640px) {
  .product-menu__list {
    border-width: 1.3333333333vw;
  }
}
.product-menu__list-item {
  display: flex;
  flex-direction: column;
  width: calc(100% / 4);
  box-sizing: border-box;
  border-right: 1px solid #fff;
}
@media screen and (max-width: 1040px) {
  .product-menu__list-item {
    width: calc(100% / 2);
  }
}
@media screen and (max-width: 640px) {
  .product-menu__list-item {
    width: 100%;
    border-right: none;
  }
}
@media screen and (max-width: 640px) {
  .product-menu__list-item:nth-of-type(n + 2) {
    border-top: 1px solid #fff;
  }
}
@media screen and (max-width: 1040px) {
  .product-menu__list-item:nth-of-type(n + 3) {
    border-top: 1px solid #fff;
  }
}
@media screen and (max-width: 1040px) {
  .product-menu__list-item:nth-of-type(2n) {
    border-right: none;
  }
}
.product-menu__list-item:nth-of-type(4n) {
  border-right: none;
}
.product-menu__list-item:nth-of-type(n + 5) {
  border-top: 1px solid #fff;
}
.product-menu__list-item--icon1 .product-menu__list-link:before {
  left: 25px;
  width: 26px;
  height: 26px;
  background-image: url(/common/ver.1/img/icon2_content1.png);
  background-size: 100% auto;
}
@media screen and (max-width: 640px) {
  .product-menu__list-item--icon1 .product-menu__list-link:before {
    left: 4vw;
    width: 7vw;
    height: 7vw;
  }
}
.product-menu__list-item--icon2 .product-menu__list-link:before {
  left: 25px;
  width: 26px;
  height: 26px;
  background-image: url(/common/ver.1/img/icon2_content2.png);
  background-size: 100% auto;
}
@media screen and (max-width: 640px) {
  .product-menu__list-item--icon2 .product-menu__list-link:before {
    left: 4vw;
    width: 7vw;
    height: 7vw;
  }
}
.product-menu__list-item--icon3 .product-menu__list-link:before {
  left: 25px;
  width: 26px;
  height: 26px;
  background-image: url(/common/ver.1/img/icon2_content3.png);
  background-size: 100% auto;
}
@media screen and (max-width: 640px) {
  .product-menu__list-item--icon3 .product-menu__list-link:before {
    left: 4vw;
    width: 7vw;
    height: 7vw;
  }
}
.product-menu__list-item--icon4 .product-menu__list-link:before {
  left: 25px;
  width: 26px;
  height: 26px;
  background-image: url(/common/ver.1/img/icon2_content4.png);
  background-size: 100% auto;
}
@media screen and (max-width: 640px) {
  .product-menu__list-item--icon4 .product-menu__list-link:before {
    left: 4vw;
    width: 7vw;
    height: 7vw;
  }
}
.product-menu__list-item--icon5 .product-menu__list-link:before {
  left: 25px;
  width: 26px;
  height: 26px;
  background-image: url(/common/ver.1/img/icon2_content5.png);
  background-size: 100% auto;
}
@media screen and (max-width: 640px) {
  .product-menu__list-item--icon5 .product-menu__list-link:before {
    left: 4vw;
    width: 7vw;
    height: 7vw;
  }
}
.product-menu__list-item--icon6 .product-menu__list-link:before {
  left: 25px;
  width: 26px;
  height: 26px;
  background-image: url(/common/ver.1/img/icon2_content6.png);
  background-size: 100% auto;
}
@media screen and (max-width: 640px) {
  .product-menu__list-item--icon6 .product-menu__list-link:before {
    left: 4vw;
    width: 7vw;
    height: 7vw;
  }
}
.product-menu__list-item--icon7 .product-menu__list-link:before {
  left: 25px;
  width: 26px;
  height: 26px;
  background-image: url(/common/ver.1/img/icon2_content7.png);
  background-size: 100% auto;
}
@media screen and (max-width: 640px) {
  .product-menu__list-item--icon7 .product-menu__list-link:before {
    left: 4vw;
    width: 7vw;
    height: 7vw;
  }
}
.product-menu__list-item--icon8 .product-menu__list-link:before {
  left: 25px;
  width: 26px;
  height: 26px;
  background-image: url(/common/ver.1/img/icon2_content8.png);
  background-size: 100% auto;
}
@media screen and (max-width: 640px) {
  .product-menu__list-item--icon8 .product-menu__list-link:before {
    left: 4vw;
    width: 7vw;
    height: 7vw;
  }
}
.product-menu__list-link {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 60px;
  padding-left: 58px;
  background-color: #004DB0;
  color: #fff;
  font-weight: bold;
  font-size: 1.0769230769rem;
}
@media screen and (max-width: 640px) {
  .product-menu__list-link {
    height: 13.3333333333vw;
    padding-left: 13.3333333333vw;
    font-size: 4vw;
    line-height: 1.3;
  }
}
.product-menu__list-link:before {
  content: "";
  position: absolute;
  top: 50%;
  display: block;
  background-position: 0 0;
  background-repeat: no-repeat;
  z-index: 1;
  transform: translateY(-50%);
}
.product-menu__list-link:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 30px;
  display: block;
  width: 9px;
  height: 24px;
  background: url(/common/ver.1/img/icon_bottom_arrow_white.png) 0 0 no-repeat;
  background-size: 100% auto;
  z-index: 1;
  transform: translateY(-50%);
}
@media screen and (max-width: 640px) {
  .product-menu__list-link:after {
    right: 4vw;
    width: 2.4vw;
    height: 6.4vw;
  }
}
.product-menu__list-link-small {
  font-size: 0.8461538462rem;
}
@media screen and (max-width: 640px) {
  .product-menu__list-link-small {
    font-size: 3.4666666667vw;
  }
}

/* ---------------------------------------------
*   product-contents
--------------------------------------------- */
.product-contents__list {
  margin-bottom: 150px;
}
@media screen and (max-width: 640px) {
  .product-contents__list {
    margin-bottom: 20vw;
  }
}
.product-contents__list-item--icon1 .product-contents__cassettes-title-inner:before {
  width: 60px;
  height: 60px;
  background-image: url(/common/ver.1/img/icon2_content1.png);
  background-repeat: no-repeat;
  background-size: 100% auto;
}
@media screen and (max-width: 640px) {
  .product-contents__list-item--icon1 .product-contents__cassettes-title-inner:before {
    width: 9vw;
    height: 9vw;
  }
}
.product-contents__list-item--icon2 .product-contents__cassettes-title-inner:before {
  width: 60px;
  height: 60px;
  background-image: url(/common/ver.1/img/icon2_content2.png);
  background-repeat: no-repeat;
  background-size: 100% auto;
}
@media screen and (max-width: 640px) {
  .product-contents__list-item--icon2 .product-contents__cassettes-title-inner:before {
    width: 9vw;
    height: 9vw;
  }
}
.product-contents__list-item--icon3 .product-contents__cassettes-title-inner:before {
  width: 60px;
  height: 60px;
  background-image: url(/common/ver.1/img/icon2_content3.png);
  background-repeat: no-repeat;
  background-size: 100% auto;
}
@media screen and (max-width: 640px) {
  .product-contents__list-item--icon3 .product-contents__cassettes-title-inner:before {
    width: 9vw;
    height: 9vw;
  }
}
.product-contents__list-item--icon4 .product-contents__cassettes-title-inner:before {
  width: 60px;
  height: 60px;
  background-image: url(/common/ver.1/img/icon2_content4.png);
  background-repeat: no-repeat;
  background-size: 100% auto;
}
@media screen and (max-width: 640px) {
  .product-contents__list-item--icon4 .product-contents__cassettes-title-inner:before {
    width: 9vw;
    height: 9vw;
  }
}
.product-contents__list-item--icon5 .product-contents__cassettes-title-inner:before {
  width: 60px;
  height: 60px;
  background-image: url(/common/ver.1/img/icon2_content5.png);
  background-repeat: no-repeat;
  background-size: 100% auto;
}
@media screen and (max-width: 640px) {
  .product-contents__list-item--icon5 .product-contents__cassettes-title-inner:before {
    width: 9vw;
    height: 9vw;
  }
}
.product-contents__list-item--icon6 .product-contents__cassettes-title-inner:before {
  width: 60px;
  height: 60px;
  background-image: url(/common/ver.1/img/icon2_content6.png);
  background-repeat: no-repeat;
  background-size: 100% auto;
}
@media screen and (max-width: 640px) {
  .product-contents__list-item--icon6 .product-contents__cassettes-title-inner:before {
    width: 9vw;
    height: 9vw;
  }
}
.product-contents__list-item--icon7 .product-contents__cassettes-title-inner:before {
  width: 60px;
  height: 60px;
  background-image: url(/common/ver.1/img/icon2_content7.png);
  background-repeat: no-repeat;
  background-size: 100% auto;
}
@media screen and (max-width: 640px) {
  .product-contents__list-item--icon7 .product-contents__cassettes-title-inner:before {
    width: 9vw;
    height: 9vw;
  }
}
.product-contents__list-item--icon8 .product-contents__cassettes-title-inner:before {
  width: 60px;
  height: 60px;
  background-image: url(/common/ver.1/img/icon2_content8.png);
  background-repeat: no-repeat;
  background-size: 100% auto;
}
@media screen and (max-width: 640px) {
  .product-contents__list-item--icon8 .product-contents__cassettes-title-inner:before {
    width: 9vw;
    height: 9vw;
  }
}
.product-contents__list-item:nth-of-type(n + 2) {
  margin-top: 125px;
}
@media screen and (max-width: 640px) {
  .product-contents__list-item:nth-of-type(n + 2) {
    margin-top: 20vw;
  }
}
.product-contents__cassettes {
  position: relative;
}
.product-contents__cassettes-inner {
  display: flex;
  align-items: center;
  flex-direction: row-reverse;
  width: 75%;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (max-width: 1040px) {
  .product-contents__cassettes-inner {
    display: block;
  }
}
@media screen and (max-width: 640px) {
  .product-contents__cassettes-inner {
    width: 100%;
    box-sizing: border-box;
    padding-right: 5.3333333333%;
    padding-left: 5.3333333333%;
  }
}
.product-contents__cassettes-inner .blue-link-area {
  margin-top: 32px;
  margin-right: 4.1666666667vw;
}
@media screen and (max-width: 640px) {
  .product-contents__cassettes-inner .blue-link-area {
    margin-top: 4vw;
  }
}
.product-contents__cassettes-inner .blue-link {
  margin-left: auto;
}
@media screen and (max-width: 640px) {
  .product-contents__cassettes-inner .blue-link {
    margin-left: 0;
  }
}
.product-contents__cassettes-title {
  position: absolute;
  left: 0;
  top: 0;
  display: inline-block;
  padding-top: 18px;
  padding-right: 4%;
  padding-bottom: 18px;
  padding-left: 16%;
  letter-spacing: .05em;
  background-color: #004DB0;
  color: #fff;
  font-weight: bold;
  font-size: 1.6923076923rem;
}
@media screen and (max-width: 1040px) {
  .product-contents__cassettes-title {
    position: relative;
  }
}
@media screen and (max-width: 640px) {
  .product-contents__cassettes-title {
    display: block;
    line-height: 1.4;
    padding-top: 4.2666666667vw;
    padding-bottom: 4.2666666667vw;
    padding-left: 16%;
  }
}
.product-contents__cassettes-title:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -10px;
  display: block;
  width: 85%;
  height: 10px;
  background-color: #8ACDE8;
  z-index: 1;
}
@media screen and (max-width: 640px) {
  .product-contents__cassettes-title:after {
    bottom: -2.1333333333vw;
    width: 94.4%;
    height: 2.1333333333vw;
  }
}
.product-contents__cassettes-title-inner {
  position: relative;
}
.product-contents__cassettes-title-inner:before {
  content: "";
  position: absolute;
  top: 50%;
  left: -70px;
  display: block;
  z-index: 1;
  transform: translateY(-50%);
}
@media screen and (max-width: 640px) {
  .product-contents__cassettes-title-inner:before {
    left: -12vw;
  }
}
@media screen and (max-width: 640px) {
  .product-contents__cassettes-title-inner {
    font-size: 5.8666666667vw;
  }
}
.product-contents__cassettes-title-inner-small {
  font-size: 1.2307692308rem;
}
.product-contents__cassettes-image {
  width: 47.7777777778%;
  text-align: center;
  margin-top: -25px;
}
.product-contents__cassettes-image-height {
  height: 325px;
}
@media screen and (max-width: 1040px) {
  .product-contents__cassettes-image {
    margin-top: 50px;
    margin-right: auto;
    margin-left: auto;
  }
  .product-contents__cassettes-image-height {
    height: 0;
  }
}
@media screen and (max-width: 640px) {
  .product-contents__cassettes-image {
    width: 78%;
    margin-top: 6.6666666667vw;
  }
  .product-contents__cassettes-image-height {
    height: 0;
  }
}
.product-contents__cassettes-texts {
  width: 52.2222222222%;
  box-sizing: border-box;
  padding-top: 55px;
  padding-right: 1.6666666667%;
}
@media screen and (max-width: 1040px) {
  .product-contents__cassettes-texts {
    width: 100%;
    padding-right: 0;
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 640px) {
  .product-contents__cassettes-texts {
    padding-top: 0.6666666667vw;
    margin-bottom: 5.3333333333vw;
  }
}
.product-contents__cassettes-texts-title {
  font-weight: bold;
  font-size: 1.3846153846rem;
  margin-bottom: 13px;
}
@media screen and (max-width: 640px) {
  .product-contents__cassettes-texts-title {
    margin-bottom: 3.4666666667vw;
  }
}
.product-contents__cassettes-texts-text {
  line-height: 1.7;
  font-weight: bold;
}
.product-contents__detail {
  width: 75%;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (max-width: 640px) {
  .product-contents__detail {
    width: 100%;
    box-sizing: border-box;
    padding-right: 5.3333333333%;
    padding-left: 5.3333333333%;
  }
}
.product-contents__detail-title {
  letter-spacing: .03em;
  color: #004DB0;
  font-weight: bold;
  font-size: 1.3846153846rem;
  margin-bottom: 7px;
}
.product-contents__detail-list-outer {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 1040px) {
  .product-contents__detail-list-outer {
    display: block;
  }
}
.product-contents__detail-list {
  width: 47.7777777778%;
}
@media screen and (max-width: 1040px) {
  .product-contents__detail-list {
    width: 100%;
  }
}
@media screen and (max-width: 1040px) {
  .product-contents__detail-list:nth-of-type(n + 2) {
    margin-top: 10px;
  }
}
@media screen and (max-width: 640px) {
  .product-contents__detail-list:nth-of-type(n + 2) {
    margin-top: 2.6666666667vw;
  }
}
.product-contents__detail-list-item {
  display: flex;
}
.product-contents__detail-list-item:nth-of-type(n + 2) {
  margin-top: 10px;
}
@media screen and (max-width: 640px) {
  .product-contents__detail-list-item:nth-of-type(n + 2) {
    margin-top: 2.6666666667vw;
  }
}
.product-contents__detail-list-link {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  height: 48px;
  padding-left: 15px;
  padding-right: 50px;
  padding-top: 8px;
  padding-bottom: 8px;
  box-sizing: border-box;
  letter-spacing: .01em;
  color: #fff;
  font-size: 1.13rem;
  font-weight: bold;
  background-color: #8ACDE8;
}
@media screen and (max-width: 1040px) {
  .product-contents__detail-list-link {
    height: 46px;
  }
}
@media screen and (max-width: 640px) {
  .product-contents__detail-list-link {
    height: 13.3333333333vw;
    padding-left: 4vw;
  }
}
.product-contents__detail-list-link:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 15px;
  display: block;
  width: 26px;
  height: 8px;
  background: url(/common/ver.1/img/icon_right_arrow_white.png) 0 0 no-repeat;
  background-size: 100% auto;
  z-index: 1;
  transform: translateY(-50%);
}
@media screen and (max-width: 640px) {
  .product-contents__detail-list-link:after {
    right: 4vw;
    width: 6.9333333333vw;
    height: 2.1333333333vw;
  }
}
.product-contents__download {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 150px;
}
@media screen and (max-width: 1040px) {
  .product-contents__download {
    display: block;
  }
}
@media screen and (max-width: 640px) {
  .product-contents__download {
    margin-bottom: 20vw;
  }
}
.product-contents__download .product-contents__cassettes-title {
  position: relative;
  display: block;
  padding-left: 25%;
  margin-bottom: 35px;
}
  .product-contents__download .product-contents__cassettes-title {
    display: inline-block;
  }
@media screen and (max-width: 1040px) {
}
@media screen and (max-width: 640px) {
  .product-contents__download .product-contents__cassettes-title {
    display: block;
    padding-left: 5.3333333333%;
    margin-bottom: 7.3333333333vw;
  }
}
.product-contents__download-item {
  width: calc(100% / 2);
  box-sizing: border-box;
  padding-right: 2.5%;
}
@media screen and (max-width: 1040px) {
  .product-contents__download-item {
    width: 100%;
    padding-right: 0;
  }
}
.product-contents__download-item:nth-of-type(2n) {
  padding-right: 0;
  padding-left: 2.5%;
}
@media screen and (max-width: 1040px) {
  .product-contents__download-item:nth-of-type(2n) {
    padding-left: 0;
  }
}
@media screen and (max-width: 1040px) {
  .product-contents__download-item:nth-of-type(2n) .product-contents__cassettes {
    text-align: right;
  }
}
@media screen and (max-width: 640px) {
  .product-contents__download-item:nth-of-type(2n) .product-contents__cassettes {
    text-align: left;
  }
}
.product-contents__download-item:nth-of-type(2n) .product-contents__cassettes-title {
  padding-left: 4%;
  padding-right: 25%;
}
.product-contents__download-item:nth-of-type(2n) .product-contents__cassettes-title:after {
  left: auto;
  right: 0;
}
.product-contents__download-item:nth-of-type(2n) .product-contents__download-item-inner {
  margin-right: auto;
  margin-left: 0;
}
@media screen and (max-width: 1040px) {
  .product-contents__download-item:nth-of-type(2n) .product-contents__download-item-inner {
    margin-left: auto;
  }
}
@media screen and (max-width: 1040px) {
  .product-contents__download-item:nth-of-type(n + 2) {
    margin-top: 70px;
  }
}
@media screen and (max-width: 640px) {
  .product-contents__download-item:nth-of-type(n + 2) {
    margin-top: 20vw;
  }
}
.product-contents__download-item-inner {
  width: 75.4385964912%;
  margin-left: auto;
}
@media screen and (max-width: 1040px) {
  .product-contents__download-item-inner {
    width: 75%;
    margin-right: auto;
    margin-left: auto;
  }
}
@media screen and (max-width: 640px) {
  .product-contents__download-item-inner {
    width: 100%;
    box-sizing: border-box;
    padding-right: 5.3333333333%;
    padding-left: 5.3333333333%;
  }
}
@media screen and (max-width: 1040px) {
  .product-contents__download-item-inner .download-link {
    width: 100%;
    padding-left: 15px;
  }
}
@media screen and (max-width: 640px) {
  .product-contents__download-item-inner .download-link {
    padding-left: 2.6666666667vw;
  }
}

.ie .product-contents__detail-list-link {
  padding-top: 2px;
}

/* ---------------------------------------------
*   modal-window
--------------------------------------------- */

.modal_contents .modal_image{
 text-align: center; 
 margin-bottom: 20px;
}

.modal_contents h1{
 font-size: 1.3em;
 font-weight: bold;
}

.modal_contents table{
 border-collapse: collapse;
}

.modal_contents table th,
.modal_contents table td{
 border: 1px solid #aaa;
 padding: 10px;
}

.modal_contents table th{
 background: #eee;
 white-space: nowrap;
}

@media screen and (max-width: 640px) {
  .modal_contents table th{
   white-space: normal;
   width: 50%;
  }
}

/* ==========================================================
*
*   utility
*
========================================================== */
/* ---------------------------------------------
*   margin-top
--------------------------------------------- */
.mgt-pc--0 {
  margin-top: 0 !important;
}

.mgt-pc--5 {
  margin-top: 5px !important;
}

.mgt-pc--10 {
  margin-top: 10px !important;
}

.mgt-pc--15 {
  margin-top: 15px !important;
}

.mgt-pc--20 {
  margin-top: 20px !important;
}

.mgt-pc--25 {
  margin-top: 25px !important;
}

.mgt-pc--30 {
  margin-top: 30px !important;
}

.mgt-pc--35 {
  margin-top: 35px !important;
}

.mgt-pc--40 {
  margin-top: 40px !important;
}

.mgt-pc--45 {
  margin-top: 45px !important;
}

.mgt-pc--50 {
  margin-top: 50px !important;
}

.mgt-pc--55 {
  margin-top: 55px !important;
}

.mgt-pc--60 {
  margin-top: 60px !important;
}

.mgt-pc--65 {
  margin-top: 65px !important;
}

.mgt-pc--70 {
  margin-top: 70px !important;
}

.mgt-pc--75 {
  margin-top: 75px !important;
}

.mgt-pc--80 {
  margin-top: 80px !important;
}

.mgt-pc--85 {
  margin-top: 85px !important;
}

.mgt-pc--90 {
  margin-top: 90px !important;
}

.mgt-pc--95 {
  margin-top: 95px !important;
}

.mgt-pc--100 {
  margin-top: 100px !important;
}

.mgt-pc--105 {
  margin-top: 105px !important;
}

.mgt-pc--110 {
  margin-top: 110px !important;
}

.mgt-pc--115 {
  margin-top: 115px !important;
}

.mgt-pc--120 {
  margin-top: 120px !important;
}

.mgt-pc--125 {
  margin-top: 125px !important;
}

.mgt-pc--130 {
  margin-top: 130px !important;
}

.mgt-pc--135 {
  margin-top: 135px !important;
}

.mgt-pc--140 {
  margin-top: 140px !important;
}

.mgt-pc--145 {
  margin-top: 145px !important;
}

.mgt-pc--150 {
  margin-top: 150px !important;
}

.mgt-pc--155 {
  margin-top: 155px !important;
}

.mgt-pc--160 {
  margin-top: 160px !important;
}

.mgt-pc--165 {
  margin-top: 165px !important;
}

.mgt-pc--170 {
  margin-top: 170px !important;
}

.mgt-pc--175 {
  margin-top: 175px !important;
}

.mgt-pc--180 {
  margin-top: 180px !important;
}

.mgt-pc--185 {
  margin-top: 185px !important;
}

.mgt-pc--190 {
  margin-top: 190px !important;
}

.mgt-pc--195 {
  margin-top: 195px !important;
}

.mgt-pc--200 {
  margin-top: 200px !important;
}

.mgt-pc--205 {
  margin-top: 205px !important;
}

.mgt-pc--210 {
  margin-top: 210px !important;
}

.mgt-pc--215 {
  margin-top: 215px !important;
}

.mgt-pc--220 {
  margin-top: 220px !important;
}

.mgt-pc--225 {
  margin-top: 225px !important;
}

.mgt-pc--230 {
  margin-top: 230px !important;
}

.mgt-pc--235 {
  margin-top: 235px !important;
}

.mgt-pc--240 {
  margin-top: 240px !important;
}

.mgt-pc--245 {
  margin-top: 245px !important;
}

.mgt-pc--250 {
  margin-top: 250px !important;
}

@media screen and (max-width: 640px) {
  .mgt-sp--0 {
    margin-top: 0 !important;
  }

  .mgt-sp--5 {
    margin-top: 0.6666666667vw !important;
  }

  .mgt-sp--10 {
    margin-top: 1.3333333333vw !important;
  }

  .mgt-sp--15 {
    margin-top: 2vw !important;
  }

  .mgt-sp--20 {
    margin-top: 2.6666666667vw !important;
  }

  .mgt-sp--25 {
    margin-top: 3.3333333333vw !important;
  }

  .mgt-sp--30 {
    margin-top: 4vw !important;
  }

  .mgt-sp--35 {
    margin-top: 4.6666666667vw !important;
  }

  .mgt-sp--40 {
    margin-top: 5.3333333333vw !important;
  }

  .mgt-sp--45 {
    margin-top: 6vw !important;
  }

  .mgt-sp--50 {
    margin-top: 6.6666666667vw !important;
  }

  .mgt-sp--55 {
    margin-top: 7.3333333333vw !important;
  }

  .mgt-sp--60 {
    margin-top: 8vw !important;
  }

  .mgt-sp--65 {
    margin-top: 8.6666666667vw !important;
  }

  .mgt-sp--70 {
    margin-top: 9.3333333333vw !important;
  }

  .mgt-sp--75 {
    margin-top: 10vw !important;
  }

  .mgt-sp--80 {
    margin-top: 10.6666666667vw !important;
  }

  .mgt-sp--85 {
    margin-top: 11.3333333333vw !important;
  }

  .mgt-sp--90 {
    margin-top: 12vw !important;
  }

  .mgt-sp--95 {
    margin-top: 12.6666666667vw !important;
  }

  .mgt-sp--100 {
    margin-top: 13.3333333333vw !important;
  }

  .mgt-sp--105 {
    margin-top: 14vw !important;
  }

  .mgt-sp--110 {
    margin-top: 14.6666666667vw !important;
  }

  .mgt-sp--115 {
    margin-top: 15.3333333333vw !important;
  }

  .mgt-sp--120 {
    margin-top: 16vw !important;
  }

  .mgt-sp--125 {
    margin-top: 16.6666666667vw !important;
  }

  .mgt-sp--130 {
    margin-top: 17.3333333333vw !important;
  }

  .mgt-sp--135 {
    margin-top: 18vw !important;
  }

  .mgt-sp--140 {
    margin-top: 18.6666666667vw !important;
  }

  .mgt-sp--145 {
    margin-top: 19.3333333333vw !important;
  }

  .mgt-sp--150 {
    margin-top: 20vw !important;
  }

  .mgt-sp--155 {
    margin-top: 20.6666666667vw !important;
  }

  .mgt-sp--160 {
    margin-top: 21.3333333333vw !important;
  }

  .mgt-sp--165 {
    margin-top: 22vw !important;
  }

  .mgt-sp--170 {
    margin-top: 22.6666666667vw !important;
  }

  .mgt-sp--175 {
    margin-top: 23.3333333333vw !important;
  }

  .mgt-sp--180 {
    margin-top: 24vw !important;
  }

  .mgt-sp--185 {
    margin-top: 24.6666666667vw !important;
  }

  .mgt-sp--190 {
    margin-top: 25.3333333333vw !important;
  }

  .mgt-sp--195 {
    margin-top: 26vw !important;
  }

  .mgt-sp--200 {
    margin-top: 26.6666666667vw !important;
  }

  .mgt-sp--205 {
    margin-top: 27.3333333333vw !important;
  }

  .mgt-sp--210 {
    margin-top: 28vw !important;
  }

  .mgt-sp--215 {
    margin-top: 28.6666666667vw !important;
  }

  .mgt-sp--220 {
    margin-top: 29.3333333333vw !important;
  }

  .mgt-sp--225 {
    margin-top: 30vw !important;
  }

  .mgt-sp--230 {
    margin-top: 30.6666666667vw !important;
  }

  .mgt-sp--235 {
    margin-top: 31.3333333333vw !important;
  }

  .mgt-sp--240 {
    margin-top: 32vw !important;
  }

  .mgt-sp--245 {
    margin-top: 32.6666666667vw !important;
  }

  .mgt-sp--250 {
    margin-top: 33.3333333333vw !important;
  }
}
/* ---------------------------------------------
*   margin-bottom
--------------------------------------------- */
.mgb-pc--0 {
  margin-bottom: 0 !important;
}

.mgb-pc--5 {
  margin-bottom: 5px !important;
}

.mgb-pc--10 {
  margin-bottom: 10px !important;
}

.mgb-pc--15 {
  margin-bottom: 15px !important;
}

.mgb-pc--20 {
  margin-bottom: 20px !important;
}

.mgb-pc--25 {
  margin-bottom: 25px !important;
}

.mgb-pc--30 {
  margin-bottom: 30px !important;
}

.mgb-pc--35 {
  margin-bottom: 35px !important;
}

.mgb-pc--40 {
  margin-bottom: 40px !important;
}

.mgb-pc--45 {
  margin-bottom: 45px !important;
}

.mgb-pc--50 {
  margin-bottom: 50px !important;
}

.mgb-pc--55 {
  margin-bottom: 55px !important;
}

.mgb-pc--60 {
  margin-bottom: 60px !important;
}

.mgb-pc--65 {
  margin-bottom: 65px !important;
}

.mgb-pc--70 {
  margin-bottom: 70px !important;
}

.mgb-pc--75 {
  margin-bottom: 75px !important;
}

.mgb-pc--80 {
  margin-bottom: 80px !important;
}

.mgb-pc--85 {
  margin-bottom: 85px !important;
}

.mgb-pc--90 {
  margin-bottom: 90px !important;
}

.mgb-pc--95 {
  margin-bottom: 95px !important;
}

.mgb-pc--100 {
  margin-bottom: 100px !important;
}

.mgb-pc--105 {
  margin-bottom: 105px !important;
}

.mgb-pc--110 {
  margin-bottom: 110px !important;
}

.mgb-pc--115 {
  margin-bottom: 115px !important;
}

.mgb-pc--120 {
  margin-bottom: 120px !important;
}

.mgb-pc--125 {
  margin-bottom: 125px !important;
}

.mgb-pc--130 {
  margin-bottom: 130px !important;
}

.mgb-pc--135 {
  margin-bottom: 135px !important;
}

.mgb-pc--140 {
  margin-bottom: 140px !important;
}

.mgb-pc--145 {
  margin-bottom: 145px !important;
}

.mgb-pc--150 {
  margin-bottom: 150px !important;
}

.mgb-pc--155 {
  margin-bottom: 155px !important;
}

.mgb-pc--160 {
  margin-bottom: 160px !important;
}

.mgb-pc--165 {
  margin-bottom: 165px !important;
}

.mgb-pc--170 {
  margin-bottom: 170px !important;
}

.mgb-pc--175 {
  margin-bottom: 175px !important;
}

.mgb-pc--180 {
  margin-bottom: 180px !important;
}

.mgb-pc--185 {
  margin-bottom: 185px !important;
}

.mgb-pc--190 {
  margin-bottom: 190px !important;
}

.mgb-pc--195 {
  margin-bottom: 195px !important;
}

.mgb-pc--200 {
  margin-bottom: 200px !important;
}

.mgb-pc--205 {
  margin-bottom: 205px !important;
}

.mgb-pc--210 {
  margin-bottom: 210px !important;
}

.mgb-pc--215 {
  margin-bottom: 215px !important;
}

.mgb-pc--220 {
  margin-bottom: 220px !important;
}

.mgb-pc--225 {
  margin-bottom: 225px !important;
}

.mgb-pc--230 {
  margin-bottom: 230px !important;
}

.mgb-pc--235 {
  margin-bottom: 235px !important;
}

.mgb-pc--240 {
  margin-bottom: 240px !important;
}

.mgb-pc--245 {
  margin-bottom: 245px !important;
}

.mgb-pc--250 {
  margin-bottom: 250px !important;
}

@media screen and (max-width: 640px) {
  .mgb-sp--0 {
    margin-bottom: 0 !important;
  }

  .mgb-sp--5 {
    margin-bottom: 0.6666666667vw !important;
  }

  .mgb-sp--10 {
    margin-bottom: 1.3333333333vw !important;
  }

  .mgb-sp--15 {
    margin-bottom: 2vw !important;
  }

  .mgb-sp--20 {
    margin-bottom: 2.6666666667vw !important;
  }

  .mgb-sp--25 {
    margin-bottom: 3.3333333333vw !important;
  }

  .mgb-sp--30 {
    margin-bottom: 4vw !important;
  }

  .mgb-sp--35 {
    margin-bottom: 4.6666666667vw !important;
  }

  .mgb-sp--40 {
    margin-bottom: 5.3333333333vw !important;
  }

  .mgb-sp--45 {
    margin-bottom: 6vw !important;
  }

  .mgb-sp--50 {
    margin-bottom: 6.6666666667vw !important;
  }

  .mgb-sp--55 {
    margin-bottom: 7.3333333333vw !important;
  }

  .mgb-sp--60 {
    margin-bottom: 8vw !important;
  }

  .mgb-sp--65 {
    margin-bottom: 8.6666666667vw !important;
  }

  .mgb-sp--70 {
    margin-bottom: 9.3333333333vw !important;
  }

  .mgb-sp--75 {
    margin-bottom: 10vw !important;
  }

  .mgb-sp--80 {
    margin-bottom: 10.6666666667vw !important;
  }

  .mgb-sp--85 {
    margin-bottom: 11.3333333333vw !important;
  }

  .mgb-sp--90 {
    margin-bottom: 12vw !important;
  }

  .mgb-sp--95 {
    margin-bottom: 12.6666666667vw !important;
  }

  .mgb-sp--100 {
    margin-bottom: 13.3333333333vw !important;
  }

  .mgb-sp--105 {
    margin-bottom: 14vw !important;
  }

  .mgb-sp--110 {
    margin-bottom: 14.6666666667vw !important;
  }

  .mgb-sp--115 {
    margin-bottom: 15.3333333333vw !important;
  }

  .mgb-sp--120 {
    margin-bottom: 16vw !important;
  }

  .mgb-sp--125 {
    margin-bottom: 16.6666666667vw !important;
  }

  .mgb-sp--130 {
    margin-bottom: 17.3333333333vw !important;
  }

  .mgb-sp--135 {
    margin-bottom: 18vw !important;
  }

  .mgb-sp--140 {
    margin-bottom: 18.6666666667vw !important;
  }

  .mgb-sp--145 {
    margin-bottom: 19.3333333333vw !important;
  }

  .mgb-sp--150 {
    margin-bottom: 20vw !important;
  }

  .mgb-sp--155 {
    margin-bottom: 20.6666666667vw !important;
  }

  .mgb-sp--160 {
    margin-bottom: 21.3333333333vw !important;
  }

  .mgb-sp--165 {
    margin-bottom: 22vw !important;
  }

  .mgb-sp--170 {
    margin-bottom: 22.6666666667vw !important;
  }

  .mgb-sp--175 {
    margin-bottom: 23.3333333333vw !important;
  }

  .mgb-sp--180 {
    margin-bottom: 24vw !important;
  }

  .mgb-sp--185 {
    margin-bottom: 24.6666666667vw !important;
  }

  .mgb-sp--190 {
    margin-bottom: 25.3333333333vw !important;
  }

  .mgb-sp--195 {
    margin-bottom: 26vw !important;
  }

  .mgb-sp--200 {
    margin-bottom: 26.6666666667vw !important;
  }

  .mgb-sp--205 {
    margin-bottom: 27.3333333333vw !important;
  }

  .mgb-sp--210 {
    margin-bottom: 28vw !important;
  }

  .mgb-sp--215 {
    margin-bottom: 28.6666666667vw !important;
  }

  .mgb-sp--220 {
    margin-bottom: 29.3333333333vw !important;
  }

  .mgb-sp--225 {
    margin-bottom: 30vw !important;
  }

  .mgb-sp--230 {
    margin-bottom: 30.6666666667vw !important;
  }

  .mgb-sp--235 {
    margin-bottom: 31.3333333333vw !important;
  }

  .mgb-sp--240 {
    margin-bottom: 32vw !important;
  }

  .mgb-sp--245 {
    margin-bottom: 32.6666666667vw !important;
  }

  .mgb-sp--250 {
    margin-bottom: 33.3333333333vw !important;
  }
}
@media screen and (min-width: 641px) {
  .pc-hide {
    display: none !important;
  }
}
@media screen and (max-width: 640px) {
  .sp-hide {
    display: none !important;
  }
}


/* ---------------------------------------------
  /*  人・技術
  --------------------------------------------- */
.menu-keyvisual__contents-title-text_r {
  line-height: 1.7;
  text-align: justify;
  color: #fff;
  margin-top: 10px;
}

.menu-keyvisual_r {
  position: relative;
  margin-bottom: 100px;
}


@media screen and (max-width: 640px) {
    .menu-keyvisual__contents_r {
    position: relative;
  }
  
}

.menu-keyvisual__contents-title_r {
  position: absolute;
  top: 4.5833333333vw;
  right: 0;
  background-color: #004DB0;
  box-sizing: border-box;
  padding-top: 1.9166666667%;
  padding-left: 2.5%;
  padding-bottom: 1.9166666667%;
  padding-right: 12.3333333333%;
}

.menu-keyvisual__contents-title_r:before {
  content: "";
  position: absolute;
  right: 0;
  bottom: -10px;
  left: 0;
  display: block;
  width: 100%;
  height: 10px;
  background-color: #8ACDE8;
  z-index: 1;
}

@media screen and (max-width: 640px) {
    .menu-keyvisual__contents-title:before_r {
    display: none;
  }
}

.menu-keyvisual__contents-title_r--about {
  width: 37.5%;
}

@media screen and (max-width: 1040px) {
  .menu-keyvisual__contents-title_r--about {
    width: 100%;
    padding-bottom: 25px;
  }
}

@media screen and (max-width: 640px) {
  .menu-keyvisual__contents-title_r--about {
    padding-bottom: 10.4vw;
  }
}

@media screen and (max-width: 1040px) {
  .menu-keyvisual__contents-title_r {
    position: static;
    width: 100%;
    padding-right: 2.5%;
    padding-bottom: 5px;
    padding-left: 2.5%;
  }
}
@media screen and (max-width: 640px) {
  .menu-keyvisual__contents-title_r {
    padding-top: 5.3333333333vw;
    padding-right: 5.0666666667%;
    padding-bottom: 10.4vw;
    padding-left: 5.0666666667%;
    margin-top: 0;
    margin-top: 0;
    transform: none;
  }
}
/* ---------------------------------------------
  /*  人・技術
  --------------------------------------------- */
  
  
  
/* ---------------------------------------------
  /*  画像 カラー
  --------------------------------------------- */  
.about-contents-cassette__image_gr:before {
  content: "";
  position: absolute;
  right: 0;
  bottom: -10px;
  left: 0;
  display: block;
  width: 93.75%;
  height: 10px;
  background-color: #9ae88a;
  z-index: 1;
}  

.about-contents__list-item:nth-of-type(odd) .about-contents-cassette__image_gr:before {
  right: 0;
  left: auto;
}

.about-contents-cassette__image_gr {
  position: relative;
  width: 66.6666666667%;
}

@media screen and (max-width: 1040px) {
  .about-contents-cassette__image_gr {
    margin-right: auto;
    margin-left: auto;
  }
}

.about-contents-cassette__image_gr img {
  width: 100%;
}

.about-contents-cassette__image_gr img {
  width: 100%;
}

@media screen and (max-width: 1040px) {
  .about-contents-cassette__image_gr:before {
    display: none;
  }
}



/*TOP 緑*/
.contents-cassette--1 .contents-cassette__image_gr:after {
  bottom: -15px;
  left: -15px;
}

@media screen and (max-width: 640px) {
  .contents-cassette--1 .contents-cassette__image_gr:after {
    bottom: -2.2666666667vw;
    left: -2.2666666667vw;
  }
}

@media screen and (max-width: 640px) {
  .contents-cassette--1 .contents-cassette__image_gr {
    padding-left: 2.2666666667vw;
    margin-bottom: 8.6666666667vw;
  }
}

.contents-cassette--2 .contents-cassette__image_gr:after {
  top: -15px;
  right: -15px;
}

@media screen and (max-width: 640px) {
  .contents-cassette--2 .contents-cassette__image_gr:after {
    top: -2.2666666667vw;
    right: -2.2666666667vw;
  }
}

@media screen and (max-width: 640px) {
  .contents-cassette--2 .contents-cassette__image_gr {
    padding-right: 2.2666666667vw;
    margin-bottom: 6.6666666667vw;
  }
}

.contents-cassette__image_gr {
  position: relative;
  z-index: 1;
  width: 58.1196581197%;
}

@media screen and (max-width: 640px) {
  .contents-cassette__image_gr {
    width: 100%;
    box-sizing: border-box;
  }
}

.contents-cassette__image_gr:after {
  content: "";
  position: absolute;
  z-index: -1;
  width: 97.5%;
  height: 36.4166666667vw;
  display: block;
  background-color: #92c25e;
}

@media screen and (max-width: 640px) {
  .contents-cassette__image_gr:after {
    width: 95.3333333333vw;
    height: 62.6666666667vw;
  }
}

.contents-cassette__image_gr img {
  width: 100%;
}
/*//TOP 緑*/



/*TOP オレンジ*/
.contents-cassette--1 .contents-cassette__image_or:after {
  bottom: -15px;
  left: -15px;
}

@media screen and (max-width: 640px) {
  .contents-cassette--1 .contents-cassette__image_or:after {
    bottom: -2.2666666667vw;
    left: -2.2666666667vw;
  }
}

@media screen and (max-width: 640px) {
  .contents-cassette--1 .contents-cassette__image_or {
    padding-left: 2.2666666667vw;
    margin-bottom: 8.6666666667vw;
  }
}

.contents-cassette--2 .contents-cassette__image_or:after {
  top: -15px;
  right: -15px;
}

@media screen and (max-width: 640px) {
  .contents-cassette--2 .contents-cassette__image_or:after {
    top: -2.2666666667vw;
    right: -2.2666666667vw;
  }
}

@media screen and (max-width: 640px) {
  .contents-cassette--2 .contents-cassette__image_or {
    padding-right: 2.2666666667vw;
    margin-bottom: 6.6666666667vw;
  }
}

.contents-cassette__image_or {
  position: relative;
  z-index: 1;
  width: 58.1196581197%;
}

@media screen and (max-width: 640px) {
  .contents-cassette__image_or {
    width: 100%;
    box-sizing: border-box;
  }
}

.contents-cassette__image_or:after {
  content: "";
  position: absolute;
  z-index: -1;
  width: 97.5%;
  height: 36.4166666667vw;
  display: block;
  background-color: #f28119;
}


@media screen and (max-width: 640px) {
  .contents-cassette__image_or:after {
    width: 95.3333333333vw;
    height: 62.6666666667vw;
  }
}

.contents-cassette__image_or img {
  width: 100%;
}
/*//TOP オレンジ*/

/*MAP*/
.comp__h2_mapL {
  margin-bottom: 2em;
  margin-right:15px;
  padding-bottom: .5em;
  border-bottom: solid 2px #004DB0;
  font-size: 1.5384615385rem;
  font-weight: bold;
  width:40%;
  float:left;
  position:relative;
  left:240px;
}
@media screen and (max-width: 640px) {
  .comp__h2_mapL {
    font-size: 1.3846153846rem;
	float:none;
	width:100%;
	left:0;
  }
}

.comp__h2_mapR {
  margin-bottom: 2em;
  padding-bottom: .5em;
  border-bottom: solid 2px #004DB0;
  font-size: 1.5384615385rem;
  font-weight: bold;
  width:40%;
  float:right;
}
@media screen and (max-width: 640px) {
  .comp__h2_mapR {
    font-size: 1.3846153846rem;
	float:none;
	width:100%
  }
}

.comp__section_map {
	width:75%;
  margin: 0 auto;
  font-size: 1.2307692308rem;
  margin-left:400px;
  
}

@media screen and (max-width: 1040px) {
.comp__section_map {
    margin-right: auto;
    margin-left: auto;
}
  .comp__h2_mapL {
    font-size: 1.3846153846rem;
	float:none;
	width:100%;
	left:0;
  }
    .comp__h2_mapR {
    font-size: 1.3846153846rem;
	float:none;
	width:100%;
	left:0;
  }

}

@media screen and (max-width: 640px) {
  .comp__section_map {
    width: 100%;
  }
}


.comp__h3_mapL {
	clear:both;
  margin-bottom: 2em;
  padding: 0.25em 0.5em;
  border-left: solid 5px #004DB0;
  font-size: 1.3846153846rem;
  font-weight: bold;

  float:left;
}
@media screen and (max-width: 640px) {
  .comp__h3 {
    font-size: 1.2307692308rem;
  }
}

.comp__h4_map {
    font-size: 1.2307692308rem;
    font-weight: bold;
	margin-top:10px;
}

/*/MAP*/
