@charset "UTF-8";
.main {
  margin-top: 9.6vh
}
@media (min-width:751px) and (max-width:1024px) {
  .main {
    margin-top: 12vh
  }
}
@media (min-width:1025px) {
  .main {
    margin-top: 90px
  }
}
body.is-landscape .main {
  margin-top: 15vh
}
.common-heading--h1 {
  color: #222427;
  font-size: 34px;
  font-weight: 700;
  text-align: center;
  line-height: 1;
  letter-spacing: .5px
}
.common-heading--h1 span {
  width: 10%;
  display: block;
  margin: 16px auto 0;
  height: 4px;
  background-color: #222427
}
@media (min-width:1025px) {
  .common-heading--h1 span {
    width: 2.5%
  }
}
@media (min-width:751px) and (max-width:1024px) {
  .common-heading--h1 span {
    width: 3%
  }
}
@media (min-width:1025px) {
  .common-heading--h1 {
    font-size: 36px
  }
}
.common-heading--h2 {
  color: #222427;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.3
}
@media (min-width:1025px) {
  .common-heading--h2 {
    font-size: 28px
  }
}
.common-heading--h3 {
  color: #222427;
  font-size: 22px;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: .5px
}
.common-heading--h3__underLine {
  margin-top: 10px;
  width: 20px;
  height: 2px;
  background-color: #222427
}
@media (min-width:1025px) {
  .common-heading--h3 {
    font-size: 24px
  }
}
.common-heading--h4 {
  color: #000;
  font-size: 22px;
  font-weight: 400;
  line-height: 1;
  border-left: 4px solid #222427;
  padding-left: 6px;
  letter-spacing: .5px
}
.common-arrow__backBtn {
  cursor: pointer;
  border-bottom: solid 2px #222427;
  border-left: solid 2px #222427;
  width: 8px;
  height: 8px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg)
}
.common-arrow__nextBtn {
  cursor: pointer;
  border-top: solid 2px #222427;
  border-right: solid 2px #222427;
  width: 8px;
  height: 8px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg)
}
.common-breadCrumbWrapper {
  background-color: #eee;
  padding: 10px 20px
}
@media (min-width:1025px) {
  .common-breadCrumbWrapper {
    padding: 10px 40px
  }
}
.common-breadCrumb {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  line-height: 1
}
.common-breadCrumb > li {
  margin-right: 8px
}
.common-breadCrumb > li a {
  color: #222427;
  line-height: 1;
  font-size: 12px;
  text-decoration: none
}
.common-breadCrumb > li a:hover {
  text-decoration: underline
}
.common-breadCrumb > li a:visited {
  color: inherit
}
.common-mainVisual {
  position: relative;
  overflow: hidden
}
.common-mainVisual > img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  max-height: 500px;
  aspect-ratio: 1/1
}
.common-mainVisual h1 {
  position: absolute;
  width: 100%;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%,-50%);
          transform: translate(-50%,-50%);
  color: #fff
}
.common-mainVisual h1 span {
  background-color: #fff
}
.common-mainVisual__professional {
  position: absolute;
  width: 100%;
  top: 50%;
  left: 0;
  background: rgba(255,255,255,.8);
  padding: 5px 0
}
.common-mainVisual__professional h1 {
  font-size: 48px;
  font-weight: 700;
  text-align: center;
  color: #000!important;
  position: static!important;
  width: auto!important;
  top: 0!important;
  left: 0!important;
  line-height: 1.2;
  -webkit-transform: translate(0,0)!important;
          transform: translate(0,0)!important
}
@media (max-width:750px) {
  .common-mainVisual__professional h1 {
    font-size: 24px
  }
}
.common-mainVisual__professional span {
  color: #d28903;
  background-color: transparent!important
}
.common-mainVisual__professional--read {
  font-size: 18px;
  font-weight: 700;
  text-align: center
}
@media (max-width:750px) {
  .common-mainVisual__professional--read {
    font-size: 14px
  }
}
@media (max-width:750px) {
  .common-mainVisual--pc {
    display: none
  }
}
.common-mainVisual--sp {
  display: none
}
@media (max-width:750px) {
  .common-mainVisual--sp {
    display: block
  }
}
@media (max-width:750px) {
  .common-mainVisual--aboutUs img {
    -o-object-position: 100% 100%;
       object-position: 100% 100%
  }
}
@media (max-width:750px) {
  .common-mainVisual--group img {
    -webkit-transform: scale(1.05) translate(-10px,10px);
            transform: scale(1.05) translate(-10px,10px)
  }
}
@media (max-width:750px) {
  .common-mainVisual--policy img {
    -o-object-position: 100% 100%;
       object-position: 100% 100%;
    -webkit-transform: scale(1.5);
            transform: scale(1.5)
  }
}
.common-mainVisual--myNumber img {
  -o-object-position: 93% 62%;
     object-position: 93% 62%
}
@media (max-width:750px) {
  .common-mainVisual--myNumber img {
    -o-object-position: 87% 100%;
       object-position: 87% 100%;
    -webkit-transform: scale(1.1);
            transform: scale(1.1)
  }
}
@media (max-width:750px) {
  .common-mainVisual--privacy img {
    -o-object-position: 83% 100%;
       object-position: 83% 100%
  }
}
.common-introduction {
  margin-top: 80px;
  padding: 0 20px 60px
}
@media (min-width:1025px) {
  .common-introduction {
    width: 980px;
    padding: 0 0 60px;
    margin: 80px auto 0
  }
}
.common-introduction h2 {
  margin-bottom: 40px
}
@media (min-width:1025px) {
  .common-introduction h2 {
    width: 980px
  }
}
@media (min-width:1025px) {
  .common-introduction__btnArea {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    width: 980px
  }
}
@media (min-width:1025px) {
  .common-introduction__btnArea .common-button--black {
    width: 310px
  }
}
.common-introduction__btnWrap {
  margin-bottom: 10px
}
.common-introduction__plus {
  text-align: center;
  margin-bottom: 10px
}
.common-introduction__plus > img {
  width: 30px;
  height: 30px
}
.common-introduction__complement {
  margin-bottom: 40px
}
@media (min-width:1025px) {
  .common-introduction__complement {
    width: 980px
  }
  .common-introduction__complement .common-button--black {
    width: 100%;
    text-align: center
  }
}
.common-introduction__text {
  color: #222427;
  font-size: 14px;
  line-height: 1.8
}
@media (min-width:1025px) {
  .common-introduction__text {
    font-size: 16px;
    padding: 0 90px
  }
}
button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: 0;
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none
}
.common-button--black {
  position: relative;
  width: 100%;
  display: block;
  font-size: 18px;
  font-weight: 700;
  color: #fff;
  background-color: #222427;
  text-decoration: none;
  cursor: pointer;
  padding: 32px 20px;
  line-height: 1
}
.common-button--black:hover {
  opacity: .9
}
.common-button--black .common-button__bottomArrow {
  position: absolute;
  top: 50%;
  right: 20px;
  -webkit-transform: translate(0,-30%);
          transform: translate(0,-30%)
}
.common-button--black .common-button__bottomArrow .arrow > img {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg)
}
.common-button--black.multiLine {
  padding: 20px
}
.common-button__detailText {
  font-size: 14px;
  line-height: 1;
  font-weight: 400;
  display: block;
  margin-top: 10px;
  font-family: "游ゴシック体",YuGothic,"游ゴシック Medium","Yu Gothic Medium","游ゴシック","Yu Gothic",sans-serif
}
.common-button__detailText.multiLine {
  line-height: 1.2;
  margin-top: 20px
}
@media (min-width:1025px) {
  .common-button__detailText.multiLine br.pc-none {
    display: none
  }
}
.common-button--grayArrowBtn {
  position: relative;
  max-width: 335px;
  margin: 0 auto
}
.common-button--grayArrowBtn > a {
  width: 100%;
  display: block;
  background-color: #f5f6f7;
  color: #222427;
  font-size: 16px;
  font-weight: 700;
  padding: 5px 20px;
  min-height: 60px;
  padding-right: 40px;
  line-height: 1.3;
  text-decoration: none;
  border: 1px solid #222427;
  -webkit-transition: .3s;
  transition: .3s;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center
}
.common-button--grayArrowBtn > a:hover {
  color: #d28903;
  border-color: #d28903
}
.common-button--grayArrowBtn > a:hover .arrow--grayBtn .arrow {
  background-color: #d28903
}
.common-button--grayArrowBtn > a:hover .arrow--grayBtn .arrow:after,
.common-button--grayArrowBtn > a:hover .arrow--grayBtn .arrow:before {
  background-color: #d28903
}
.common-button--grayArrowBtn .arrow--grayBtn {
  position: absolute;
  right: 18px;
  top: 50%;
  -webkit-transform: translate(0,-50%);
          transform: translate(0,-50%)
}
.common-button--grayArrowBtn .arrow--grayBtn .arrow {
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 2px;
  background-color: #222427;
  position: relative;
  -webkit-transition: .3s;
  transition: .3s
}
.common-button--grayArrowBtn .arrow--grayBtn .arrow:after,
.common-button--grayArrowBtn .arrow--grayBtn .arrow:before {
  content: "";
  display: block;
  width: 8px;
  height: 2px;
  background-color: #222427;
  position: absolute;
  right: 0;
  -webkit-transition: .3s;
  transition: .3s
}
.common-button--grayArrowBtn .arrow--grayBtn .arrow:before {
  top: -3px
}
.common-button--grayArrowBtn .arrow--grayBtn .arrow:after {
  bottom: -3px
}
.common-button--grayArrowBtn .arrow--grayBtn .arrow:before {
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg)
}
.common-button--grayArrowBtn .arrow--grayBtn .arrow:after {
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg)
}
.common-button--whiteArrowBtn {
  position: relative;
  max-width: 335px;
  margin: 0 auto
}
.common-button--whiteArrowBtn > a {
  width: 100%;
  display: block;
  background-color: #fff;
  color: #222427;
  font-size: 16px;
  font-weight: 700;
  padding: 0 20px;
  height: 60px;
  line-height: 60px;
  text-decoration: none;
  border: 1px solid #222427;
  -webkit-transition: .3s;
  transition: .3s;
  position: relative
}
.common-button--whiteArrowBtn > a:hover {
  color: #d28903;
  border-color: #d28903
}
.common-button--whiteArrowBtn > a:hover .arrow--grayBtn .arrow {
  background-color: #d28903
}
.common-button--whiteArrowBtn > a:hover .arrow--grayBtn .arrow:after,
.common-button--whiteArrowBtn > a:hover .arrow--grayBtn .arrow:before {
  background-color: #d28903
}
.common-button--whiteArrowBtn .arrow--grayBtn {
  position: absolute;
  right: 18px;
  bottom: 0
}
.common-button--whiteArrowBtn .arrow--grayBtn .arrow {
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 2px;
  background-color: #222427;
  position: relative;
  -webkit-transition: .3s;
  transition: .3s
}
.common-button--whiteArrowBtn .arrow--grayBtn .arrow:after,
.common-button--whiteArrowBtn .arrow--grayBtn .arrow:before {
  content: "";
  display: block;
  width: 8px;
  height: 2px;
  background-color: #222427;
  position: absolute;
  right: 0;
  -webkit-transition: .3s;
  transition: .3s
}
.common-button--whiteArrowBtn .arrow--grayBtn .arrow:before {
  top: -3px
}
.common-button--whiteArrowBtn .arrow--grayBtn .arrow:after {
  bottom: -3px
}
.common-button--whiteArrowBtn .arrow--grayBtn .arrow:before {
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg)
}
.common-button--whiteArrowBtn .arrow--grayBtn .arrow:after {
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg)
}
@media (min-width:1025px) {
  .common-secondVisual {
    width: 980px;
    margin: auto
  }
}
.common-secondVisual .common-secondHeading {
  padding: 0 20px
}
@media (min-width:1025px) {
  .common-secondVisual .common-secondHeading {
    padding: 0
  }
}
@media (min-width:1025px) {
  .common-secondVisual .common-heading--h3 br.pc-none {
    display: none
  }
}
.common-secondVisual__list {
  margin-top: 20px;
  padding: 0 20px
}
@media (min-width:1025px) {
  .common-secondVisual__list {
    padding: 0
  }
}
.common-secondVisual__list > li {
  font-size: 18px
}
@media (min-width:1025px) {
  .common-secondVisual__list > li {
    font-size: 20px
  }
}
.common-secondVisual__list > li > span {
  margin-right: 10px
}
@media (min-width:1025px) {
  .common-secondVisual__list > li > span {
    margin-right: 15px;
    margin-left: 5px
  }
}
.common-secondVisual__img {
  margin-top: 20px
}
.common-secondVisual__img > img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover
}
@media (min-width:1025px) {
  .common-secondVisual__img > img {
    max-height: 400px
  }
}
body.is-landscape .common-secondVisual__img > img {
  max-height: 400px
}
.common-textBlock {
  padding: 0 20px;
  margin-top: 100px
}
@media (min-width:1025px) {
  .common-textBlock {
    width: 980px;
    margin: 100px auto 0;
    padding: 0
  }
}
.common-textBlock__textTop {
  font-size: 25px;
  line-height: 1.5;
  font-weight: 700;
  letter-spacing: .5px
}
.common-textBlock__textDetail {
  font-size: 16px;
  line-height: 1.6;
  margin-top: 20px
}
@media (min-width:1025px) {
  .common-textBlock__textDetail {
    font-size: 16px
  }
}
.common-textBlock__imgWrap {
  margin-top: 40px
}
.common-textBlock__imgWrap > img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover
}
@media (min-width:1025px) {
  .common-textBlock__imgWrap > img {
    max-height: 400px
  }
}
@media (min-width:1025px) {
  .common-textBlock__imgWrap {
    width: 335px
  }
}
.common-textBlock__textWrap {
  margin-top: 40px
}
.common-textBlock__textWrap > p {
  font-size: 16px
}
.common-textBlock__textWrap > p:nth-of-type(1) {
  font-weight: 700;
  font-size: 18px
}
.common-textBlock__textWrap > p:nth-of-type(2) {
  margin-top: 20px;
  line-height: 1.8
}
@media (min-width:1025px) {
  .common-textBlock__textWrap {
    width: 605px
  }
}
@media (min-width:1025px) {
  .common-textBlock__contentWrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between
  }
}
body.is-landscape .common-textBlock__textDetail {
  font-size: 18px
}
body.is-landscape .common-textBlock__imgWrap {
  width: 335px
}
body.is-landscape .common-textBlock__imgWrap > img {
  max-height: 400px
}
body.is-landscape .common-textBlock__textWrap {
  width: 605px
}
body.is-landscape .common-textBlock__textWrap > p {
  font-size: 16px
}
body.is-landscape .common-textBlock__contentWrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between
}
.common-carouselArea {
  margin-top: 60px;
  padding: 0 20px
}
@media (min-width:1025px) {
  .common-carouselArea {
    width: 980px;
    margin: 60px auto 0;
    padding: 0
  }
}
.common-carouselArea__arrowWrap {
  width: 56px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-top: 4px
}
.common-carouselArea__topWrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between
}
.common-carousel {
  margin-top: 20px;
  padding-bottom: 60px;
  overflow: hidden
}
.common-carouselWrap {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  z-index: 5;
  -webkit-transition-property: height,-webkit-transform;
  transition-property: height,-webkit-transform;
  transition-property: transform,height;
  transition-property: transform,height,-webkit-transform
}
.common-carouselWrap > li {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 100%;
  height: auto;
  position: relative;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform
}
.common-carouselWrap > li > img {
  width: 100%;
  aspect-ratio: 30/17;
  -o-object-fit: contain;
     object-fit: contain;
  border-radius: 8px
}
.common-carouselTextArea {
  margin-top: 10px
}
.common-carouselTitle {
  font-size: 16px;
  color: #707070
}
.common-carouselText {
  font-size: 14px;
  color: #707070;
  margin-top: 10px
}
.common-mainBottom {
  background-color: #f5f6f7;
  padding: 60px 20px;
  margin-top: 100px
}
@media (min-width:1025px) {
  .common-mainBottom {
    padding: 60px 0
  }
}
.common-mainBottom__btnWrap .common-button--whiteArrowBtn {
  margin-bottom: 10px
}
@media (min-width:1025px) {
  .common-mainBottom__btnWrap .common-button--whiteArrowBtn {
    width: 300px;
    margin: 0;
    margin-bottom: 20px
  }
  .common-mainBottom__btnWrap .common-button--whiteArrowBtn:nth-last-child(1) {
    margin: 0
  }
  .common-mainBottom__btnWrap .common-button--whiteArrowBtn:nth-last-child(2) {
    margin: 0
  }
  .common-mainBottom__btnWrap .common-button--whiteArrowBtn:nth-last-child(3) {
    margin: 0
  }
}
@media (min-width:1025px) {
  .common-mainBottom__btnWrap {
    width: 980px;
    margin: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap
  }
}
.common-tableWrap {
  margin-top: 40px
}
@media (max-width:750px) {
  .common-tableWrap {
    overflow-x: hidden;
    margin-top: 10px;
    padding: 20px
  }
}
@media (min-width:751px) and (max-width:1024px) {
  .common-tableWrap {
    margin-top: 10px;
    padding-left: 20px
  }
}
.common-tableArea {
  margin-top: 100px
}
.common-tableArea__text {
  padding: 0 20px
}
@media (min-width:1025px) {
  .common-tableArea__text {
    padding: 0
  }
}
.common-tableArea__text > p {
  font-size: 16px;
  padding-bottom: 10px
}
.common-tableArea__rank {
  margin-top: 40px
}
@media (min-width:1025px) {
  .common-tableArea__rank {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
  }
}
.common-tableArea__rank > p {
  padding-bottom: 10px
}
@media (min-width:1025px) {
  .common-tableArea__rank > p {
    padding-bottom: 0;
    margin-right: 30px
  }
}
@media (min-width:1025px) {
  .common-tableArea {
    width: 980px;
    margin: 100px auto 0
  }
}
.common-table {
  margin-top: 10px
}
@media (min-width:751px) and (max-width:1024px) {
  .common-table {
    width: 576px;
    margin: 10px auto 0
  }
}
@media (max-width:750px) {
  .common-table {
    position: relative;
    overflow-x: auto
  }
}
.common-table__heading {
  font-size: 16px;
  background-color: #222427;
  color: #fff;
  text-align: center;
  height: 40px;
  line-height: 40px
}
@media (max-width:750px) {
  .common-table__heading {
    text-align: left;
    padding-left: 20px;
    position: sticky;
    margin: 0;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 10
  }
}
@media (min-width:751px) and (max-width:1024px) {
  .common-table__heading {
    text-align: left;
    padding-left: 20px;
    width: 576px
  }
}
.common-table__list {
  width: 980px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  text-align: center;
  margin-top: 4px
}
.common-table__list > dt {
  -ms-flex-preferred-size: 303px;
      flex-basis: 303px;
  background: #d5d5d5;
  font-size: 15px;
  line-height: 1;
  padding: 17.5px 10px;
  position: relative;
  z-index: 2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center
}
@media (max-width:750px) {
  .common-table__list > dt {
    -ms-flex-preferred-size: 140px;
        flex-basis: 140px;
    position: sticky;
    left: 0
  }
}
@media (min-width:751px) and (max-width:1024px) {
  .common-table__list > dt {
    -ms-flex-preferred-size: 140px;
        flex-basis: 140px
  }
}
@media (max-width:750px) {
  .common-table__list > dt.newLine {
    padding: 10px 5px
  }
}
@media (min-width:751px) and (max-width:1024px) {
  .common-table__list > dt.newLine {
    padding: 10px 5px
  }
}
.common-table__list > dt br {
  display: none
}
@media (max-width:750px) {
  .common-table__list > dt br {
    display: block
  }
}
@media (min-width:751px) and (max-width:1024px) {
  .common-table__list > dt br {
    display: block
  }
}
.common-table__list > dd {
  -ms-flex-preferred-size: 672px;
      flex-basis: 672px;
  height: 50px;
  line-height: 50px;
  position: relative;
  z-index: 1
}
@media (max-width:750px) {
  .common-table__list > dd {
    -ms-flex-preferred-size: 432px;
        flex-basis: 432px
  }
}
@media (min-width:751px) and (max-width:1024px) {
  .common-table__list > dd {
    -ms-flex-preferred-size: 432px;
        flex-basis: 432px
  }
}
@media (max-width:750px) {
  .common-table__list {
    width: 576px
  }
}
@media (min-width:751px) and (max-width:1024px) {
  .common-table__list {
    width: 576px
  }
}
.common-table__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between
}
.common-table__inner > div:nth-of-type(even) {
  background: #d5d5d5
}
.common-table__item {
  font-size: 13px;
  line-height: 50px;
  text-align: center;
  -ms-flex-preferred-size: 165px;
      flex-basis: 165px;
  background-color: #eee
}
.common-table__item.doubleLine {
  line-height: 1.25;
  padding: 8px
}
.common-table__item.multiItem {
  background-color: #fff;
  -ms-flex-preferred-size: 334px;
      flex-basis: 334px
}
@media (max-width:750px) {
  .common-table__item.multiItem {
    -ms-flex-preferred-size: 214px;
        flex-basis: 214px
  }
}
@media (min-width:751px) and (max-width:1024px) {
  .common-table__item.multiItem {
    -ms-flex-preferred-size: 214px;
        flex-basis: 214px
  }
}
.common-table__item.threeItem {
  -ms-flex-preferred-size: 221px;
      flex-basis: 221px
}
@media (max-width:750px) {
  .common-table__item.threeItem {
    -ms-flex-preferred-size: 142px;
        flex-basis: 142px
  }
}
.common-table__item > a {
  width: 100%;
  display: block;
  color: #007699;
  font-size: 18px;
  text-decoration: none
}
.common-table__item > a:hover {
  opacity: .7
}
.common-table__item > a:visited {
  color: inherit
}
.common-table__item > span {
  font-size: 18px;
  display: block
}
@media (max-width:750px) {
  .common-table__item {
    -ms-flex-preferred-size: 105px;
        flex-basis: 105px
  }
}
@media (min-width:751px) and (max-width:1024px) {
  .common-table__item {
    -ms-flex-preferred-size: 105px;
        flex-basis: 105px
  }
}
.common-table__headTop {
  height: 24px;
  line-height: 24px;
  background: #eee
}
.common-table__headBottom {
  height: 24px;
  line-height: 24px;
  margin-top: 2px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between
}
.common-table__headBottom > div {
  width: 165px;
  display: inline-block
}
@media (max-width:750px) {
  .common-table__headBottom > div {
    width: 105px
  }
}
@media (min-width:751px) and (max-width:1024px) {
  .common-table__headBottom > div {
    width: 105px
  }
}
.common-table__bottomLeft {
  background: #eee
}
.common-table__bottomRight {
  background: #d5d5d5
}
.common-pdf {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center
}
@media (max-width:750px) {
  .common-pdf {
    width: 100%;
    height: 60px;
    padding: 0 20px;
    background: #1f2224;
    margin-bottom: 10px
  }
}
.common-pdf a {
  color: #1f2224
}
@media (max-width:750px) {
  .common-pdf a {
    font-size: 16px;
    text-decoration: none;
    color: #fff
  }
}
.common-pdf img {
  margin-right: 10px;
  width: 16px
}
@media (max-width:750px) {
  .common-pdf img {
    -webkit-filter: brightness(0) invert(1);
            filter: brightness(0) invert(1)
  }
}
.common-adobe {
  display: inline-block;
  margin-right: 20px
}
.common-adobe img {
  width: 160px;
  aspect-ratio: 4/1
}
.common-adobe__wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center
}
.common-adobe__wrapper--left {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  padding-left: 50px
}
@media (max-width:750px) {
  .common-adobe__wrapper--left {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding-left: 0
  }
}
.common-adobe__link {
  color: #222427;
  text-decoration: underline;
  font-size: 14px
}
.boxAdobe {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 20px 40px;
  background: #eee;
  margin-bottom: 40px
}
@media (max-width:750px) {
  .boxAdobe {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding: 20px
  }
}
.boxAdobe__img {
  -ms-flex-preferred-size: 180px;
      flex-basis: 180px;
  padding-right: 20px
}
@media (max-width:750px) {
  .boxAdobe__img {
    padding-right: 0;
    padding-bottom: 20px;
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center
  }
}
.boxAdobe__img img {
  width: 100%
}
@media (max-width:750px) {
  .boxAdobe__img img {
    width: 200px
  }
}
.boxAdobe__text {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1
}
.common-link {
  padding-left: 10px;
  position: relative;
  text-decoration: none;
  border-bottom: 1px solid #000;
  color: #000
}
.common-link::before {
  content: "";
  width: 7px;
  height: 7px;
  border-right: 1px solid #000;
  border-top: 1px solid #000;
  position: absolute;
  top: 7px;
  left: 0;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg)
}
.common-link__space {
  padding-left: 20px
}
.page__container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  max-width: 980px;
  padding-top: 80px;
  margin: auto
}
@media (min-width:751px) and (max-width:1024px) {
  .page__container {
    padding-left: 20px;
    padding-right: 20px
  }
}
@media (max-width:750px) {
  .page__container {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column
  }
}
.page__container--mtThin {
  padding-top: 40px
}
.page__inner {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  padding-right: 20px
}
@media (max-width:750px) {
  .page__inner {
    padding-right: 0
  }
}
.anchor-container {
  margin-top: 60px
}
@media (min-width:1025px) {
  .anchor-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between
  }
}
.anchor-container a {
  text-decoration: none;
  font-size: medium;
  color: #222427;
  margin-bottom: 5px
}
.anchor-list {
  margin-top: 40px
}
@media (min-width:1025px) {
  .anchor-list {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 47.5%;
            flex: 0 0 47.5%;
    width: 47.5%
  }
}
.anchor-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column
}
.anchor-link.top-link {
  font-size: 22px;
  font-weight: 700
}
.anchor-link {
  padding: 15px 15px 15px 0;
  border-bottom: 1px solid #ddd;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-transition: .3s;
  transition: .3s;
  -webkit-transition-delay: .1s;
          transition-delay: .1s
}
.anchor-link .-arrow {
  display: inline-block;
  vertical-align: middle;
  color: #333;
  line-height: 1;
  position: relative;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 10px;
          flex: 0 0 10px;
  height: 10px;
  -webkit-transform: translateY(-25%) translateX(-25%) rotate(135deg);
          transform: translateY(-25%) translateX(-25%) rotate(135deg);
  margin-left: 20px;
  -webkit-transition: .3s;
  transition: .3s
}
.anchor-link .-arrow::after,
.anchor-link .-arrow::before {
  content: "";
  position: absolute;
  background: currentColor;
  border-radius: .1em
}
.anchor-link .-arrow::before {
  top: 0;
  left: 0;
  right: 0;
  height: 2px
}
.anchor-link .-arrow::after {
  top: 0;
  right: 0;
  bottom: 0;
  width: 2px
}
.anchor-link:hover {
  border-color: #d28903;
  color: #d28903
}
.anchor-link:hover .-arrow {
  color: #d28903
}
.anchor-item--no-arrow {
  padding-left: 1.25rem
}
.corporate__mainImg {
  width: 60%;
  margin: 40px auto 0
}
@media (max-width:750px) {
  .corporate__mainImg {
    width: 100%;
    margin: 20px auto 0
  }
}
.corporate__mainImg > img {
  width: 100%
}
.corporate__list {
  margin-top: 20px
}
.corporate__list > h4 {
  font-size: 16px
}
.corporate__list > p {
  margin-top: 8px;
  line-height: 1.8
}
.corporate__list > p a {
  color: inherit
}
.corporate__list > p a:visited {
  color: inherit
}
.corporate__list > p a:hover {
  opacity: .7
}
.corporate__linkWrap {
  margin-top: 20px
}
.corporate__linkWrap > a {
  color: inherit
}
.corporate__linkWrap > a:visited {
  color: inherit
}
.corporate__linkWrap > a:hover {
  opacity: .7
}
.corporate__linkWrap.contentBottom {
  margin-top: 60px;
  padding-bottom: 100px
}
.corporate__icon-pdf {
  width: 20px;
  display: inline-block;
  margin-right: 12px
}
.corporate__icon-pdf > img {
  width: 100%
}
@media (max-width:750px) {
  .corporate__icon-pdf {
    width: 16px;
    margin-right: 8px
  }
}
.corporate__adobe {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 20px 40px;
  background: #eee;
  margin-bottom: 80px
}
@media (max-width:750px) {
  .corporate__adobe {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding: 20px
  }
}
.corporate__adobeImg {
  -ms-flex-preferred-size: 180px;
      flex-basis: 180px;
  padding-right: 20px
}
@media (max-width:750px) {
  .corporate__adobeImg {
    padding-right: 0;
    padding-bottom: 20px;
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center
  }
}
.corporate__adobeImg img {
  width: 100%
}
@media (max-width:750px) {
  .corporate__adobeImg img {
    width: 200px
  }
}
.corporate__adobeText {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1
}
.corporate__adobeText > p {
  margin-bottom: 20px
}
.corporate__pdfLinkWrap {
  background-color: #1f2224;
  display: inline-block;
  margin-top: 20px
}
@media (max-width:750px) {
  .corporate__pdfLinkWrap {
    width: 100%
  }
}
.corporate__pdfLinkWrap > a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fff;
  text-decoration: none;
  padding: 20px
}
.corporate__pdfLinkWrap > a:visited {
  color: #fff
}
.corporate__pdfLinkWrap > a span {
  line-height: 1
}
.corporate__pdfLinkWrap > a:hover {
  opacity: .7
}
@media (max-width:750px) {
  .corporate__pdfLinkWrap > a {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between
  }
}
.corporate__pdfText {
  font-size: 16px;
  margin-right: 20px
}
@media (max-width:750px) {
  .corporate__pdfText {
    font-size: 14px;
    margin-right: 0
  }
}
.corporate__pdfIcon {
  width: 16px;
  display: inline-block
}
.corporate__pdfIcon > img {
  width: 100%;
  vertical-align: middle
}
.corporate__headingWrap {
  margin-top: 32px
}
/*! normalize.css v4.1.1 | MIT License | github.com/necolas/normalize.css */
html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%
}
body {
  margin: 0;
  font-family: "游ゴシック体","ヒラギノ角ゴシック"
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
  display: block
}
audio,
canvas,
progress,
video {
  display: inline-block
}
audio:not([controls]) {
  display: none;
  height: 0
}
progress {
  vertical-align: baseline
}
[hidden],
template {
  display: none
}
a {
  background-color: transparent;
  -webkit-text-decoration-skip: objects
}
a:active,
a:hover {
  outline-width: 0
}
abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted
}
b,
strong {
  font-weight: inherit
}
b,
strong {
  font-weight: bolder
}
dfn {
  font-style: italic
}
mark {
  background-color: #ff0;
  color: #000
}
small {
  font-size: 80%
}
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline
}
sub {
  bottom: -.25em
}
sup {
  top: -.5em
}
img {
  border-style: none
}
svg:not(:root) {
  overflow: hidden
}
code,
kbd,
pre,
samp {
  font-family: monospace,sans-serif;
  font-size: 1em
}
hr {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  height: 0;
  overflow: visible
}
button,
input,
select,
textarea {
  font: inherit;
  margin: 0
}
optgroup {
  font-weight: 700
}
button,
input {
  overflow: visible
}
button,
select {
  text-transform: none
}
[type=reset],
[type=submit],
button,
html [type=button] {
  -webkit-appearance: button
}
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner,
button::-moz-focus-inner {
  border-style: none;
  padding: 0
}
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring,
button:-moz-focusring {
  outline: 1px dotted ButtonText
}
legend {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal
}
textarea {
  overflow: auto
}
[type=checkbox],
[type=radio] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0
}
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto
}
[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px
}
[type=search]::-webkit-search-cancel-button,
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none
}
::-webkit-input-placeholder {
  color: inherit;
  opacity: .54
}
::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit
}
*,
:after,
:before {
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box
}
blockquote,
code,
dd,
div,
dl,
dt,
fieldset,
figure,
form,
h1,
h2,
h3,
h4,
h5,
h6,
legend,
li,
ol,
p,
pre,
ul {
  margin: 0;
  padding: 0
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 12px
}
li {
  list-style: none
}
pre {
  white-space: pre-wrap;
  word-wrap: break-word
}
q {
  quotes: none
}
img {
  vertical-align: top;
  line-height: 1
}
caption {
  padding: 0
}
td,
th {
  padding: 0
}
fieldset {
  border: 0
}
body,
html {
  height: 100%
}
html {
  background: #fff
}
body {
  font-size: 1.6;
  font-size: 16px;
  background: #fff;
  color: #222427;
  font-family: "游ゴシック体","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic ProN","メイリオ",Meiryo,sans-serif;
  line-height: 1.6;
  position: relative;
  width: 100%;
  min-height: 100%
}
@media (max-width:750px) {
  body {
    font-size: 1.6;
    font-size: 16px
  }
}
@media (max-width:750px) {
  body {
    overflow-x: hidden
  }
  .screen {
    overflow-x: hidden
  }
  .wrapper {
    overflow-x: hidden
  }
}
.is-hide {
  display: none!important
}
.is-visible {
  visibility: visible!important
}
.is-hidden {
  visibility: hidden!important
}
.is-fixed {
  position: fixed!important
}
.is-absolute {
  position: absolute!important
}
.is-overflow-hidden {
  overflow: hidden!important
}
.is-disable a {
  opacity: .4;
  cursor: default
}
.alignLeft {
  text-align: left
}
.alignRight {
  text-align: right
}
.alignCenter {
  text-align: center
}
.left {
  float: left
}
.right {
  float: right
}
.clear {
  clear: both
}
.inline {
  display: inline!important
}
.inlineBlock {
  display: inline-block!important
}
@media (min-width:1025px) {
  .is-sp {
    display: none
  }
}
@media (max-width:750px) {
  .is-pc {
    display: none
  }
}
.grayArrowBtn {
  position: relative;
  max-width: 335px;
  margin: 0 auto
}
.grayArrowBtn > a {
  width: 100%;
  display: block;
  background-color: #f5f6f7;
  color: #222427;
  font-size: 16px;
  font-weight: 700;
  padding: 0 20px;
  height: 60px;
  line-height: 60px;
  text-decoration: none;
  border: 1px solid #222427;
  -webkit-transition: color .3s,border-color .3s;
  transition: color .3s,border-color .3s
}
.grayArrowBtn > a:hover {
  color: #d28903;
  border-color: #d28903
}
.grayArrowBtn > a:hover .arrow--grayBtn .arrow {
  background-color: #d28903
}
.grayArrowBtn > a:hover .arrow--grayBtn .arrow:after,
.grayArrowBtn > a:hover .arrow--grayBtn .arrow:before {
  background-color: #d28903
}
.grayArrowBtn .arrow--grayBtn {
  position: absolute;
  right: 18px;
  bottom: 0
}
.grayArrowBtn .arrow--grayBtn .arrow {
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 2px;
  background-color: #222427;
  position: relative;
  -webkit-transition: .3s;
  transition: .3s
}
.grayArrowBtn .arrow--grayBtn .arrow:after,
.grayArrowBtn .arrow--grayBtn .arrow:before {
  content: "";
  display: block;
  width: 8px;
  height: 2px;
  background-color: #222427;
  position: absolute;
  right: 0;
  -webkit-transition: .3s;
  transition: .3s
}
.grayArrowBtn .arrow--grayBtn .arrow:before {
  top: -3px
}
.grayArrowBtn .arrow--grayBtn .arrow:after {
  bottom: -3px
}
.grayArrowBtn .arrow--grayBtn .arrow:before {
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg)
}
.grayArrowBtn .arrow--grayBtn .arrow:after {
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg)
}
@-webkit-keyframes load3 {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0)
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg)
  }
}
@keyframes load3 {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0)
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg)
  }
}
.loadingWrap {
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 100
}
.loadingWrap__inner {
  width: 100vw;
  height: 100vh;
  position: relative;
  z-index: 100;
  background-color: #fff;
  -webkit-transition: height .5s;
  transition: height .5s;
  overflow: hidden
}
.loadingWrap__inner > picture {
  position: absolute;
  top: 42vh;
  left: 50vw;
  -webkit-transform: translate(-50%,-50%);
          transform: translate(-50%,-50%);
  width: 147px
}
@media (min-width:751px) and (max-width:1024px) {
  .loadingWrap__inner > picture {
    width: 236px
  }
}
@media (min-width:1025px) {
  .loadingWrap__inner > picture {
    top: 45vh;
    width: 294px
  }
}
.loadingWrap__inner > picture > img {
  width: 100%
}
.loadingWrap__loader {
  top: 60vh;
  left: calc(50vw - 15px);
  opacity: .8;
  display: none;
  -webkit-transform: translate(-50%,-50%,0);
          transform: translate(-50%,-50%,0);
  position: absolute;
  font-size: 10px;
  text-indent: -9999em;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: #d28904;
  background: -webkit-gradient(linear,left top, right top,color-stop(10%, #d28904),color-stop(42%, rgba(255,255,255,0)));
  background: linear-gradient(to right,#d28904 10%,rgba(255,255,255,0) 42%);
  -webkit-animation: load3 1.4s infinite linear;
          animation: load3 1.4s infinite linear
}
.loadingWrap__loader::before {
  width: 50%;
  height: 50%;
  background: #d28904;
  border-radius: 100% 0 0 0;
  position: absolute;
  top: 0;
  left: 0;
  content: ""
}
.loadingWrap__loader::after {
  background: #fff;
  width: 75%;
  height: 75%;
  border-radius: 50%;
  content: "";
  margin: auto;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0
}
.loadingWrap__loader.is-show {
  display: block
}
.loadingWrap.is-loading .loadingWrap__inner {
  height: 0
}
@-webkit-keyframes circlemove {
  0% {
    bottom: 45px
  }
  100% {
    bottom: -5px
  }
}
@keyframes circlemove {
  0% {
    bottom: 45px
  }
  100% {
    bottom: -5px
  }
}
@-webkit-keyframes cirlemovehide {
  0% {
    opacity: 0
  }
  50% {
    opacity: 1
  }
  80% {
    opacity: .9
  }
  100% {
    opacity: 0
  }
}
@keyframes cirlemovehide {
  0% {
    opacity: 0
  }
  50% {
    opacity: 1
  }
  80% {
    opacity: .9
  }
  100% {
    opacity: 0
  }
}
.firstMv {
  position: fixed;
  top: 0;
  z-index: 3;
  pointer-events: none
}
.firstMv.is-cmModalOn {
  pointer-events: auto
}
.firstMv__cmModal {
  display: none
}
.firstMv__cmModal.is-cmModalOn {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100vh;
  background: rgba(0,0,0,.8);
  z-index: 30
}
.firstMv__cmModalInner {
  position: relative;
  width: 100%;
  height: 100vh;
  text-align: center
}
.firstMv__cmMovie {
  width: 60%;
  position: absolute;
  top: 48%;
  left: 50%;
  -webkit-transform: translate(-50%,-50%);
          transform: translate(-50%,-50%)
}
.firstMv__cmMovie > iframe {
  width: 100%;
  height: 32vw
}
@media (min-width:751px) and (max-width:1024px) {
  .firstMv__cmMovie {
    width: 75%
  }
}
@media (max-width:750px) {
  .firstMv__cmMovie {
    top: 44.5%;
    width: 100%
  }
  .firstMv__cmMovie > iframe {
    width: 100%;
    height: 62.5vw
  }
}
.firstMv__cmBanner {
  margin: 20px auto 0
}
@media (max-width:750px) {
  .firstMv__cmBanner {
    margin-top: 24px;
    width: 70%
  }
}
.firstMv__cmBanner > a {
  width: 65%;
  display: block;
  margin: auto;
  -webkit-transition: opacity .3s;
  transition: opacity .3s
}
.firstMv__cmBanner > a:hover {
  opacity: .7
}
.firstMv__cmBanner > a img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover
}
@media (min-width:751px) and (max-width:1024px) {
  .firstMv__cmBanner > a {
    width: 80%
  }
}
@media (max-width:750px) {
  .firstMv__cmBanner > a {
    width: 80%
  }
}
.firstMv__cmCloseBtnWrap {
  position: absolute;
  top: -10px;
  right: -40px
}
.firstMv__cmCloseBtnWrap > a {
  color: #fff;
  font-size: 36px;
  font-weight: 700;
  display: inline-block;
  text-decoration: none;
  -webkit-transition: opacity .3s;
  transition: opacity .3s;
  line-height: 1;
  margin-right: -6px
}
.firstMv__cmCloseBtnWrap > a:hover {
  opacity: .7
}
@media (max-width:750px) {
  .firstMv__cmCloseBtnWrap {
    position: static;
    text-align: right;
    padding-right: 10px;
    padding-bottom: 4px
  }
}
.firstMv__inner {
  position: relative
}
.firstMv__img {
  width: 100vw;
  height: 100vh;
  position: relative;
  overflow: hidden
}
.firstMv__img__item {
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%) translateY(0) scale(1.05);
          transform: translateX(-50%) translateY(0) scale(1.05);
  -webkit-transform-origin: top;
          transform-origin: top;
  -webkit-transition: -webkit-transform 6s linear;
  transition: -webkit-transform 6s linear;
  transition: transform 6s linear;
  transition: transform 6s linear, -webkit-transform 6s linear;
  width: 100vw;
  height: 100vh;
  display: none
}
.firstMv__img__item > img {
  width: 100%;
  height: 100vh;
  -o-object-fit: cover;
     object-fit: cover
}
.firstMv__img__item.is-slide {
  -webkit-transform: translateX(-50%) translateY(-5%) scale(1.05);
          transform: translateX(-50%) translateY(-5%) scale(1.05)
}
.firstMv__img__item.is-current {
  display: block
}
.firstMv__cover {
  width: 100vw;
  height: 100vh;
  position: absolute;
  top: 0;
  left: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition: -webkit-transform .8s cubic-bezier(.23,1,.32,1);
  transition: -webkit-transform .8s cubic-bezier(.23,1,.32,1);
  transition: transform .8s cubic-bezier(.23,1,.32,1);
  transition: transform .8s cubic-bezier(.23,1,.32,1), -webkit-transform .8s cubic-bezier(.23,1,.32,1);
  z-index: 10
}
.firstMv__cover.is-slide {
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%)
}
.firstMv__cover__item {
  width: 50%;
  height: 25%;
  position: relative;
  overflow: hidden
}
.firstMv__cover__item > div {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
  -webkit-transform: translateY(101%);
          transform: translateY(101%);
  -webkit-transition: -webkit-transform .4s cubic-bezier(.23,1,.32,1);
  transition: -webkit-transform .4s cubic-bezier(.23,1,.32,1);
  transition: transform .4s cubic-bezier(.23,1,.32,1);
  transition: transform .4s cubic-bezier(.23,1,.32,1), -webkit-transform .4s cubic-bezier(.23,1,.32,1)
}
.firstMv__cover__item.is-slide > div {
  -webkit-transform: translateY(0);
          transform: translateY(0)
}
@media (min-width:1025px) {
  .firstMv__cover__item {
    width: 25%;
    height: 50%
  }
}
.firstMv__logo {
  position: absolute;
  width: 19.2vw;
  top: 4.8vh;
  left: 5.4vw
}
.firstMv__logo > img {
  width: 100%
}
@media (min-width:1025px) {
  .firstMv__logo {
    width: 7vw;
    top: 14vh;
    left: 3.6vw
  }
}
@media (min-width:751px) and (max-width:1024px) {
  .firstMv__logo {
    width: 16vw
  }
}
.firstMv__heading {
  font-family: Barlow,sans-serif;
  position: absolute;
  top: 17.4vh;
  left: 5.4vw;
  font-size: 13.9vw;
  line-height: 1;
  color: #fff;
  width: 90.2vw
}
@media (min-width:1025px) {
  .firstMv__heading {
    font-size: 6.08vw;
    top: 12vh;
    left: 15vw
  }
}
@media (min-width:751px) and (max-width:1024px) {
  .firstMv__heading {
    font-size: 11vw
  }
}
.firstMv__bottom {
  position: fixed;
  bottom: 0;
  width: 100vw;
  background-color: rgba(31,34,36,.4);
  color: #fff;
  padding: 2.5vh 5.22vw;
  -webkit-transform: translateY(100%);
          transform: translateY(100%)
}
.firstMv__bottom.is-slideup {
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition: -webkit-transform .5s;
  transition: -webkit-transform .5s;
  transition: transform .5s;
  transition: transform .5s, -webkit-transform .5s;
  -webkit-transition-delay: 0s;
          transition-delay: 0s
}
.firstMv__bottom p {
  line-height: 1
}
@media (min-width:1025px) {
  .firstMv__bottom {
    display: grid;
    -webkit-box-pack: right;
        -ms-flex-pack: right;
            justify-content: right;
    padding-right: 13vw
  }
}
@media (min-width:1025px) {
  .firstMv__bottomInner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end
  }
}
.firstMv__genre {
  font-family: Barlow,sans-serif;
  font-size: 7.46vw;
  line-height: 1
}
@media (min-width:1025px) {
  .firstMv__genre {
    font-size: 2.65vw;
    margin-right: 20px;
    line-height: 1.5
  }
}
@media (min-width:751px) and (max-width:1024px) {
  .firstMv__genre {
    font-size: 7vw
  }
}
.firstMv__total {
  font-family: din-condensed,sans-serif;
  font-size: 18.5vw;
  margin-right: 2.67vw
}
@media (min-width:1025px) {
  .firstMv__total {
    font-size: 5.9vw;
    margin-right: 15px
  }
}
@media (min-width:751px) and (max-width:1024px) {
  .firstMv__total {
    font-size: 16vw
  }
}
.firstMv__text {
  font-family: Barlow,sans-serif;
  font-size: 5.86vw
}
@media (min-width:1025px) {
  .firstMv__text {
    font-size: 1.78vw
  }
}
.firstMv__addText {
  font-size: 3.46vw;
  line-height: 1.1
}
@media (min-width:1025px) {
  .firstMv__addText {
    font-size: 14px
  }
}
@media (min-width:751px) and (max-width:1024px) {
  .firstMv__addText {
    font-size: 3vw
  }
}
.firstMv__scrolldown {
  position: absolute;
  bottom: 20vh;
  right: 5vw
}
@media (max-width:750px) {
  .firstMv__scrolldown {
    bottom: 25vh;
    right: 11vw
  }
}
@media (min-width:751px) and (max-width:1024px) {
  .firstMv__scrolldown {
    bottom: 24vh;
    right: 6vw
  }
}
.firstMv__scrolldown > span {
  position: absolute;
  left: 10px;
  bottom: 10px;
  color: #fff;
  font-size: .7rem;
  letter-spacing: .05em;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl
}
.firstMv__scrolldown::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: -3px;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #fff;
  -webkit-animation: circlemove 1.6s ease-in-out infinite,cirlemovehide 1.6s ease-out infinite;
          animation: circlemove 1.6s ease-in-out infinite,cirlemovehide 1.6s ease-out infinite
}
.firstMv__scrolldown::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 1px;
  height: 50px;
  background: #fff
}
@media (max-width:750px) {
  .pc--banner {
    display: none
  }
}
@media (min-width:1025px) {
  .sp--banner {
    display: none
  }
}
@media (min-width:751px) and (max-width:1024px) {
  .sp--banner {
    display: none
  }
}
@media (max-width:750px) {
  .pc--iframe {
    display: none
  }
}
@media (min-width:1025px) {
  .sp--iframe {
    display: none
  }
}
@media (min-width:751px) and (max-width:1024px) {
  .sp--iframe {
    display: none
  }
}
body.is-cmModalOn {
  overflow: hidden
}
body.is-landscape .firstMv__logo {
  width: 7vw;
  top: 17vh;
  left: 3.6vw
}
body.is-landscape .firstMv__heading {
  width: 36vw;
  font-size: 6.08vw;
  top: 15vh;
  left: 15vw
}
body.is-landscape .firstMv__bottom {
  display: grid;
  -webkit-box-pack: right;
      -ms-flex-pack: right;
          justify-content: right;
  padding-right: 13vw
}
body.is-landscape .firstMv__bottomInner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end
}
body.is-landscape .firstMv__genre {
  font-size: 2.65vw;
  margin-right: 20px;
  line-height: 1.5
}
body.is-landscape .firstMv__total {
  font-size: 5.9vw;
  margin-right: 15px
}
body.is-landscape .firstMv__text {
  font-size: 1.8vw
}
body.is-landscape .firstMv__addText {
  font-size: 14px
}
.secondMv {
  background-color: #f8f9fa;
  width: 100vw
}
.secondMv__inner {
  position: relative;
  overflow: hidden;
  padding-bottom: 80px
}
.secondMv__heading {
  font-family: Barlow,sans-serif;
  position: absolute;
  width: 90.2vw;
  top: 17.4vh;
  left: 5.4vw;
  font-size: 13.9vw;
  line-height: 1
}
@media (min-width:1025px) {
  .secondMv__heading {
    width: 36vw;
    font-size: 6.08vw;
    top: 12vh;
    left: 15vw
  }
}
@media (min-width:751px) and (max-width:1024px) {
  .secondMv__heading {
    font-size: 11vw
  }
}
.secondMv__heading span {
  color: #d28903
}
.secondMv__heading .grayArrowBtn {
  width: 44vw;
  text-align: center;
  position: absolute;
  bottom: 4px;
  right: 0;
  -webkit-transition: opacity .3s;
  transition: opacity .3s;
  opacity: 0
}
.secondMv__heading .grayArrowBtn.is-showButton {
  opacity: 1
}
@media (min-width:1025px) {
  .secondMv__heading .grayArrowBtn {
    width: 13.5vw;
    bottom: 2.2%
  }
}
.secondMv__heading .grayArrowBtn a {
  position: relative;
  height: 7.5vh;
  line-height: 7.5vh;
  font-size: 4.26vw;
  padding: 0 5.33vw
}
@media (min-width:1025px) {
  .secondMv__heading .grayArrowBtn a {
    font-size: 16px;
    line-height: 60px;
    height: 60px;
    padding: 0
  }
}
.secondMv__detail {
  margin-top: 63vh;
  padding: 0 5.4vw;
  color: #000
}
.secondMv__detail h3 {
  font-family: Barlow,sans-serif;
  font-size: 8.53vw
}
@media (min-width:1025px) {
  .secondMv__detail {
    margin-top: 100vh
  }
}
@media (min-width:751px) and (max-width:1024px) {
  .secondMv__detail {
    margin-top: 80vh
  }
}
.secondMv__detailList {
  margin-top: 20px
}
.secondMv__detailList dt {
  font-family: Barlow,sans-serif;
  font-size: 6.93vw;
  font-weight: 700;
  line-height: 1
}
.secondMv__detailList dd {
  line-height: 1;
  margin-top: 20px
}
.secondMv__detailList dd > span {
  line-height: 1;
  display: inline-block;
  font-weight: 700
}
.secondMv__detailNumber {
  font-family: din-condensed, sans-serif;
  font-size: 26.5vw
}
@media (min-width:1025px) {
  .secondMv__detailNumber {
    font-size: 120px
  }
}
.secondMv__detailText {
  font-size: 6.4vw
}
@media (min-width:1025px) {
  .secondMv__detailText {
    font-size: 35px
  }
}
.secondMv h4 {
  font-size: 6.4vw;
  margin-top: 60px
}
.secondMv__goalText {
  font-size: 4.8vw;
  margin-top: 30px
}
@media (min-width:1025px) {
  .secondMv.is-sticky .secondMv__inner {
    overflow: visible;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    padding-bottom: 20vh
  }
  .secondMv.is-sticky .secondMv__mainText {
    width: 60vw
  }
  .secondMv.is-sticky .secondMv__heading {
    position: sticky
  }
  .secondMv.is-sticky .secondMv__detail {
    margin-top: 100vh;
    padding: 0;
    width: 40vw
  }
  .secondMv.is-sticky .secondMv__detail h3 {
    font-size: 2.4vw
  }
  .secondMv.is-sticky .secondMv__detail h4 {
    font-size: 1.8vw
  }
  .secondMv.is-sticky .secondMv__detailList dt {
    font-size: 1.95vw
  }
  .secondMv.is-sticky .secondMv__goalText {
    font-size: 1.35vw
  }
}
@media (min-width:1025px) {
  .secondMv__cmBanner--sp {
    display: none
  }
}
@media (min-width:751px) and (max-width:1024px) {
  .secondMv__cmBanner--sp {
    display: none
  }
}
@media (max-width:750px) {
  .secondMv__cmBanner--sp {
    margin-top: 80px
  }
  .secondMv__cmBanner--sp > a {
    display: block
  }
  .secondMv__cmBanner--sp > a img {
    width: 100%
  }
}
.secondMv__cmBanner--pc {
  text-align: center;
  padding-bottom: 10vh
}
.secondMv__cmBanner--pc a {
  width: 50%;
  display: inline-block;
  -webkit-transition: opacity .3s;
  transition: opacity .3s
}
.secondMv__cmBanner--pc a:hover {
  opacity: .7
}
@media (min-width:751px) and (max-width:1024px) {
  .secondMv__cmBanner--pc a {
    width: 80%
  }
}
.secondMv__cmBanner--pc a > img {
  width: 100%
}
@media (max-width:750px) {
  .secondMv__cmBanner--pc {
    display: none
  }
}
@media (min-width:751px) and (max-width:1024px) {
  body.is-landscape .secondMv__heading {
    width: 36vw;
    font-size: 6.08vw;
    top: 15vh;
    left: 15vw
  }
  body.is-landscape .secondMv .grayArrowBtn {
    width: 13.5vw;
    bottom: 2.2%
  }
  body.is-landscape .secondMv .grayArrowBtn a {
    font-size: 16px;
    line-height: 60px;
    height: 60px;
    padding: 0
  }
  body.is-landscape .secondMv .secondMv__detailList dt {
    font-size: 1.95vw
  }
  body.is-landscape .secondMv .secondMv__detailList dd span.secondMv__detailNumber {
    font-size: 120px
  }
  body.is-landscape .secondMv .secondMv__detailList dd span.secondMv__detailText {
    font-size: 35px
  }
  body.is-landscape .secondMv .secondMv__detail h3 {
    font-size: 2.4vw
  }
  body.is-landscape .secondMv .secondMv__detail h4 {
    font-size: 1.8vw
  }
  body.is-landscape .secondMv .secondMv__detail {
    margin-top: 100vh;
    padding: 0;
    width: 40vw
  }
  body.is-landscape .secondMv.is-sticky .secondMv__inner {
    overflow: visible;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    padding-bottom: 20vh
  }
  body.is-landscape .secondMv.is-sticky .secondMv__mainText {
    width: 60vw
  }
  body.is-landscape .secondMv.is-sticky .secondMv__heading {
    position: sticky
  }
  body.is-landscape .secondMv.is-sticky .secondMv__goalText {
    font-size: 1.35vw
  }
}
.main {
  -webkit-transition: left .5s;
  transition: left .5s
}
body[data-page=top] {
  overflow-x: hidden
}
body[data-page=top] .main {
  margin-top: 0
}
body[data-page=top] .main__inner {
  position: relative;
  z-index: 5;
  background-color: #fff;
  margin-top: 100vh
}
.container.is-open .main {
  position: fixed;
  left: 0;
  width: 100%
}
.container.is-open.is-slide .main {
  left: -82.85%
}
.news {
  padding: 80px 5.3%
}
@media (min-width:1025px) {
  .news {
    padding: 80px 15.5%
  }
}
.news__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between
}
@media (min-width:1025px) {
  .news__title {
    max-width: 980px;
    margin: 0 auto
  }
}
.news__heading {
  font-family: Barlow,sans-serif;
  font-size: 48px;
  color: #222427;
  line-height: 1
}
.news__heading span {
  font-size: 16px;
  margin-left: 12px
}
.news__arrow {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-bottom: 10px;
  width: 56px
}
.news__backBtn {
  cursor: pointer;
  border-bottom: solid 2px #222427;
  border-left: solid 2px #222427;
  width: 8px;
  height: 8px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg)
}
.news__nextBtn {
  cursor: pointer;
  border-top: solid 2px #222427;
  border-right: solid 2px #222427;
  width: 8px;
  height: 8px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg)
}
.news__detail {
  margin-top: 30px
}
@media (min-width:1025px) {
  .news__detail {
    max-width: 980px;
    margin: 30px auto 0
  }
}
.news__label {
  font-size: 12px
}
.news__icon {
  background-color: #42434e;
  color: #fff;
  font-size: 13px;
  width: 90px;
  display: inline-block;
  text-align: center;
  border-radius: 2px;
  line-height: 1.5;
  margin-right: 20px
}
.news__page {
  text-align: right;
  font-weight: 700
}
@media (min-width:1025px) {
  .news__page {
    font-size: 16px
  }
}
.news__control {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end
}
.news__listLink {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  margin: 30px 0
}
@media (min-width:1025px) {
  .pageList {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 0 10px;
    max-width: 2000px;
    margin: auto
  }
}
.pageList__item {
  position: relative;
  width: 100%;
  height: 580px;
  margin-top: 4px;
  color: #fff
}
@media (min-width:1025px) {
  .pageList__item {
    width: 32.6894%;
    max-width: 440px;
    height: 500px;
    margin-right: .8915%;
    margin-top: 0
  }
  .pageList__item:last-child {
    margin-right: 0
  }
}
.pageList__item > img {
  width: 100%;
  height: 580px;
  position: absolute;
  top: 0;
  -o-object-fit: cover;
     object-fit: cover
}
@media (min-width:1025px) {
  .pageList__item > img {
    height: 500px
  }
}
.pageList__textWrap {
  width: 100%;
  padding: 40px 5.3% 0;
  height: 580px;
  position: absolute;
  top: 0;
  background-color: rgba(0,0,0,.5)
}
@media (min-width:1025px) {
  .pageList__textWrap {
    height: 500px
  }
}
.pageList__heading {
  font-size: 48px;
  line-height: 1;
  font-family: Barlow,sans-serif
}
.pageList__heading > a {
  color: #fff;
  text-decoration: none;
  -webkit-transition: opacity .3s;
  transition: opacity .3s
}
.pageList__heading > a:hover {
  opacity: .5
}
.pageList__headingLinkTop {
  display: inline-block;
  color: #fff;
  text-decoration: none;
  -webkit-transition: opacity .3s;
  transition: opacity .3s
}
.pageList__headingLinkTop:hover {
  opacity: .5
}
.pageList__category {
  font-size: 16px;
  font-weight: 700;
  margin-top: 32px
}
.pageList__category span {
  border-bottom: 2px solid #fff;
  padding-bottom: 8px
}
.pageList__link {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  background: rgba(0,0,0,.7);
  height: 54px;
  line-height: 54px;
  padding-left: 5.3%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box
}
.pageList__link a {
  display: block;
  text-decoration: none;
  font-size: 16px;
  color: #fff;
  -webkit-transition: opacity .2s;
  transition: opacity .2s
}
.pageList__link a:hover {
  opacity: .5
}
.pageList__linkInner {
  position: relative
}
.pageList__hr {
  width: 40px;
  border: 2px solid #fff;
  margin-top: 20px;
  margin-bottom: 20px
}
@media (min-width:1025px) {
  .pageList.pageList--twoClm .pageList__item {
    width: 50%;
    max-width: 440px
  }
}
.arrow--pageList {
  position: absolute;
  right: 5.3%;
  bottom: 0
}
.arrow--pageList .arrow {
  display: inline-block;
  vertical-align: middle;
  width: 12px;
  height: 2px;
  background-color: #fff;
  position: relative
}
.arrow--pageList .arrow:after,
.arrow--pageList .arrow:before {
  content: "";
  display: block;
  width: 8px;
  height: 2px;
  background-color: #fff;
  position: absolute;
  right: -2px
}
.arrow--pageList .arrow:before {
  top: -2px
}
.arrow--pageList .arrow:after {
  bottom: -2px
}
.arrow--pageList .arrow:before {
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg)
}
.arrow--pageList .arrow:after {
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg)
}
.toProfessional {
  padding: 80px 5.3% 0
}
@media (min-width:1025px) {
  .toProfessional {
    padding: 40px 10px 0;
    max-width: 2000px;
    margin: auto
  }
}
.toProfessional__topImg {
  position: relative;
  width: 100%;
  margin: 0 auto
}
@media (min-width:1025px) {
  .toProfessional__topImg {
    max-width: 1346px
  }
}
.toProfessional__topImg > a {
  color: #222427;
  text-decoration: none;
  display: block
}
.toProfessional__topImg > a:hover {
  opacity: .7
}
.toProfessional__topImg img {
  width: 100%
}
@media (min-width:1025px) {
  .toProfessional__topImg img {
    height: 340px;
    -o-object-fit: cover;
       object-fit: cover
  }
}
.toProfessional__topImg p {
  position: absolute;
  bottom: 11.3%;
  width: 100%;
  text-align: center;
  font-size: 5.33vw;
  font-weight: 700;
  background: rgba(255,255,255,.7)
}
@media (min-width:1025px) {
  .toProfessional__topImg p {
    font-size: 24px;
    height: 50px;
    line-height: 50px
  }
}
.toProfessional__contents {
  margin-top: 80px
}
@media (min-width:1025px) {
  .toProfessional__contents {
    padding: 0 15.5%
  }
}
@media (min-width:1025px) {
  .toProfessional__headWrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    max-width: 980px;
    margin: 0 auto
  }
}
.toProfessional__heading {
  font-size: 48px;
  line-height: 1;
  font-family: Barlow,sans-serif
}
.toProfessional__genre {
  font-size: 16px;
  font-weight: 700;
  line-height: 1;
  margin-top: 20px
}
@media (min-width:1025px) {
  .toProfessional__genre {
    margin-left: 20px
  }
}
.toProfessional__category {
  margin-top: 40px
}
.toProfessional__category.bottom {
  margin-top: 60px
}
@media (min-width:1025px) {
  .toProfessional__category {
    max-width: 980px;
    margin: 40px auto 0
  }
  .toProfessional__category.bottom {
    margin: 60px auto 0
  }
}
.toProfessional__categoryHeading {
  font-size: 26px;
  font-weight: 700;
  line-height: 1;
  font-family: Barlow,sans-serif
}
.toProfessional__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: 20px
}
.toProfessional__list > li {
  width: 47.5%;
  margin-right: 5%;
  margin-bottom: 30px
}
.toProfessional__list > li:nth-child(2n) {
  margin-right: 0
}
@media (min-width:1025px) {
  .toProfessional__list > li {
    width: 23.4%;
    margin-right: 2.13333%
  }
  .toProfessional__list > li:nth-child(2n) {
    margin-right: 2.13333%
  }
  .toProfessional__list > li:nth-child(4n) {
    margin-right: 0
  }
}
.toProfessional__list > li:last-child {
  margin-bottom: 40px
}
.toProfessional__list > li img {
  width: 100%;
  border-radius: 6px;
  -webkit-box-shadow: 2px 2px 6px #e8e9ea;
          box-shadow: 2px 2px 6px #e8e9ea
}
.toProfessional__list > li > p {
  line-height: 1;
  margin-top: 10px;
  color: #707070
}
.toProfessional__tumb {
  width: 100%;
  border-radius: 6px;
  aspect-ratio: 3/2;
  position: relative;
  overflow: hidden
}
.toProfessional__tumb > img {
  -o-object-fit: contain;
     object-fit: contain;
  height: 100%
}
.categoryLabel {
  font-size: 0;
  margin-top: 10px
}
.categoryLabel li {
  display: inline-block;
  font-size: 12px;
  line-height: 1;
  background-color: #e0e0e0;
  padding: 2px;
  margin-right: 4px
}
.newsBottom {
  padding: 80px 5.3% 0
}
@media (min-width:1025px) {
  .newsBottom {
    padding: 80px 15.5% 0
  }
}
.newsBottom__miniText {
  font-size: 16px;
  font-weight: 700;
  line-height: 1;
  margin-top: 20px
}
@media (min-width:1025px) {
  .newsBottom__miniText {
    margin-left: 20px
  }
}
.newsBottom__list {
  margin-top: 40px
}
@media (min-width:1025px) {
  .newsBottom__list {
    max-width: 980px;
    margin: 40px auto 0
  }
}
.newsBottom__list > li {
  margin-bottom: 25px
}
.newsBottom__list > li:last-child {
  margin-bottom: 40px
}
@media (min-width:1025px) {
  .newsBottom__list > li {
    width: 100%;
    display: table
  }
}
@media (min-width:1025px) {
  .newsBottom__list > li p {
    display: table-cell
  }
}
.newsBottom__head {
  margin-bottom: 10px
}
.newsBottom__head span {
  display: inline-block
}
.newsBottom__head span:nth-child(2) {
  margin-left: 20px;
  font-size: 12px
}
@media (min-width:1025px) {
  .newsBottom__head {
    display: table-cell;
    width: 240px
  }
}
@media (min-width:1025px) {
  .newsBottom__headingWrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    max-width: 980px;
    margin: 0 auto
  }
}
.newsLabel {
  width: 90px;
  font-size: 12px;
  text-align: center;
  background-color: #960;
  border-radius: 2px;
  color: #fff
}
.newsLabel--pressRelease {
  background-color: #299900
}
.newsLabel--seminar {
  background-color: #007699
}
.multiField {
  padding: 80px 5.3% 120px;
  position: relative
}
.multiField > a {
  position: relative;
  color: #222427;
  text-decoration: none;
  display: block;
  width: 100%;
  margin: 0 auto
}
@media (min-width:1025px) {
  .multiField > a {
    max-width: 1346px
  }
}
.multiField > a:hover {
  opacity: .7
}
.multiField img {
  -webkit-box-shadow: 3px 3px 6px #e8e9ea;
          box-shadow: 3px 3px 6px #e8e9ea;
  width: 100%
}
@media (min-width:1025px) {
  .multiField img {
    height: 340px;
    -o-object-fit: cover;
       object-fit: cover
  }
}
.multiField p {
  font-size: 8.53vw;
  font-weight: 700;
  color: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%)
}
@media (min-width:751px) and (max-width:1024px) {
  .multiField p {
    font-size: 6.2vw
  }
}
@media (min-width:1025px) {
  .multiField p {
    font-size: 32px
  }
}
@media (min-width:1025px) {
  .multiField {
    padding: 100px 10px;
    margin: 0 auto;
    max-width: 2000px
  }
}
.scrollTop {
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index: 5;
  width: 20px;
  opacity: 0;
  -webkit-transition: opacity .5s;
  transition: opacity .5s
}
.scrollTop a {
  display: block;
  cursor: pointer;
  width: 100%
}
.scrollTop a img {
  width: 100%
}
.scrollTop.is-show {
  opacity: 1
}
.archiveList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 95px
}
.archiveList__number {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  margin-bottom: 35px
}
@media (max-width:750px) {
  .archiveList__number {
    display: block;
    padding: 0 20px;
    margin-bottom: 20px
  }
}
.archiveList__number__parts {
  font-size: 12px
}
@media (max-width:750px) {
  .archiveList__number__parts {
    text-align: right
  }
}
.archiveList__button {
  width: 30px;
  height: 30px;
  font-size: 13px;
  font-weight: 700;
  border: 2px solid #1f2224;
  margin: 0 8px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  cursor: pointer
}
.archiveList__button:hover {
  opacity: .6
}
.archiveList__button a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  height: 100%;
  color: #1f2224;
  padding-top: 2px
}
.archiveList__button--prev {
  position: relative
}
.archiveList__button--prev::before {
  content: "";
  width: 8px;
  height: 8px;
  border-top: 2px solid #1f2224;
  border-right: 2px solid #1f2224;
  -webkit-transform-origin: top left;
          transform-origin: top left;
  -webkit-transform: rotate(225deg) translate(-75%,-25%);
          transform: rotate(225deg) translate(-75%,-25%);
  position: absolute;
  top: 50%;
  left: 50%
}
.archiveList__button--next {
  position: relative
}
.archiveList__button--next::before {
  content: "";
  width: 8px;
  height: 8px;
  border-top: 2px solid #1f2224;
  border-right: 2px solid #1f2224;
  -webkit-transform-origin: top left;
          transform-origin: top left;
  -webkit-transform: rotate(45deg) translate(-50%,-50%);
          transform: rotate(45deg) translate(-50%,-50%);
  position: absolute;
  top: 50%;
  left: 50%
}
.archiveList__button--active {
  background: #1f2224;
  color: #fff;
  border: none;
  padding-top: 2px;
  cursor: default
}
.archiveList__button--active:hover {
  opacity: 1
}
.archiveList__button--invalid {
  opacity: .4;
  cursor: default
}
.archiveList__button--invalid:hover {
  opacity: .4
}
.archiveList__threePoint {
  width: 24px;
  height: 30px;
  font-size: 13px;
  font-weight: 700;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center
}
.categoryMenu {
  margin-bottom: 50px;
  display: grid;
  grid-template-columns: repeat(7,1fr)
}
@media (max-width:750px) {
  .categoryMenu {
    margin: 20px 0;
    width: 100vw;
    overflow-y: auto
  }
}
.categoryMenu__button {
  font-size: 16px;
  height: 40px;
  padding: 0 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: #f5f6f7;
  white-space: nowrap;
  border: none;
  position: relative
}
.categoryMenu__button a {
  text-decoration: underline
}
.categoryMenu__button--01 a {
  color: #299900
}
.categoryMenu__button--01.categoryMenu__button--active {
  background: #299900;
  color: #fff
}
.categoryMenu__button--02 a {
  color: #83807a
}
.categoryMenu__button--02.categoryMenu__button--active {
  background: #83807a;
  color: #fff
}
.categoryMenu__button--03 a {
  color: #007699
}
.categoryMenu__button--03.categoryMenu__button--active {
  background: #007699;
  color: #fff
}
.categoryMenu__button--04 a {
  color: #990070
}
.categoryMenu__button--04.categoryMenu__button--active {
  background: #990070;
  color: #fff
}
.categoryMenu__button--05 a {
  color: #991c00
}
.categoryMenu__button--05.categoryMenu__button--active {
  background: #991c00;
  color: #fff
}
.categoryMenu__button--06 a {
  color: #960
}
.categoryMenu__button--06.categoryMenu__button--active {
  background: #960;
  color: #fff
}
.categoryMenu__button--07 a {
  color: #000
}
.categoryMenu__button--07.categoryMenu__button--active {
  background: #000;
  color: #fff
}
@media (max-width:750px) {
  .newsDetail__topWrapper {
    padding: 0 20px
  }
}
.newsDetail__wrapper {
  padding-bottom: 120px
}
@media (max-width:750px) {
  .newsDetail__wrapper {
    padding: 0 10px 80px 10px
  }
}
.newsDetail__wrapper--noPadding {
  padding-bottom: 0
}
.newsDetail__heading {
  font-size: 24px;
  margin-bottom: 25px
}
.newsDetail__heading__sub {
  font-size: 80%;
  display: block;
  margin-top: 14px
}
.newsDetail__subHeading {
  font-size: 16px;
  margin-bottom: 30px
}
.newsDetail__text {
  font-size: 16px;
  margin-bottom: 30px
}
.newsDetail__note {
  font-size: 14px;
  margin-bottom: 10px;
  text-align: center
}
.newsDetail__note--pcLeft {
  text-align: left
}
@media (max-width:750px) {
  .newsDetail__note--pcLeft {
    text-align: center
  }
}
.newsDetail__lamp {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center
}
.newsDetail__date {
  font-size: 16px
}
.newsDetail__sns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center
}
@media (max-width:750px) {
  .newsDetail__sns {
    display: none
  }
}
.newsDetail__sns__icon {
  margin-right: 20px
}
.newsDetail__sns__icon:last-child {
  margin-right: 0
}
.newsDetail__sns__icon img {
  width: 30px
}
.newsDetail__company {
  font-size: 20px;
  margin-bottom: 25px;
  position: relative
}
.newsDetail__company::before {
  content: "";
  width: 20px;
  height: 2px;
  background: #222427;
  position: absolute;
  bottom: 0;
  left: 0
}
.newsDetail__labelArea {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: 50px
}
.newsDetail__labelArea .newsLabel {
  margin-right: 5px
}
.newsDetail__labelArea .newsLabel:last-child {
  margin-right: 0
}
.newsDetail__image {
  margin-bottom: 45px
}
.newsDetail__image img {
  width: 100%
}
.newsDetail__image--thin {
  max-width: 500px;
  margin: auto;
  margin-bottom: 45px
}
.newsDetail__table {
  width: 70%;
  margin-bottom: 30px
}
@media (max-width:750px) {
  .newsDetail__table {
    width: 100%
  }
}
.newsDetail__table th {
  font-size: 14px;
  text-align: left
}
.newsDetail__table td {
  font-size: 14px;
  text-align: right
}
.newsDetail__prev {
  font-size: 16px;
  color: #1f2224;
  text-decoration: none;
  display: inline-block;
  height: 40px;
  background: #f5f6f7;
  border: 1px solid #000;
  min-width: 140px;
  padding: 0 40px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative
}
@media (max-width:750px) {
  .newsDetail__prev--spNone {
    display: none
  }
}
.newsDetail__prev:hover {
  opacity: .6
}
.newsDetail__prev span {
  position: absolute;
  top: 50%;
  left: 20px;
  -webkit-transform: translate(0,-50%);
          transform: translate(0,-50%)
}
.newsDetail__prev span::before {
  content: "";
  width: 10px;
  height: 10px;
  border-left: 2px solid #000;
  border-bottom: 2px solid #000;
  position: absolute;
  top: -10px;
  left: 0;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  -webkit-transform-origin: left bottom;
          transform-origin: left bottom
}
.newsDetail__prev span::after {
  content: "";
  width: 15px;
  height: 2px;
  background: #000;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translate(0,-50%);
          transform: translate(0,-50%)
}
.newsDetail__list {
  margin: 0;
  padding: 0;
  list-style: none;
  margin-bottom: 80px
}
@media (max-width:750px) {
  .newsDetail__list {
    margin-bottom: 55px
  }
}
.newsDetail__list__li {
  padding-bottom: 5px
}
@media (max-width:750px) {
  .newsDetail__list__li {
    padding-bottom: 20px
  }
}
.newsDetail__list__li:last-child {
  padding-bottom: 0
}
.newsDetail__list__li a {
  color: #000
}
.newsDetail__sp__grayBox {
  background: #f5f6f7
}
.newsDetail__sp__grayBox__inner {
  padding: 60px 0;
  max-width: 980px;
  margin: auto
}
@media (max-width:750px) {
  .newsDetail__sp__grayBox__inner {
    padding: 40px 20px
  }
}
.newsDetail__sp__heading {
  font-size: 28px;
  margin-bottom: 5px
}
@media (max-width:750px) {
  .newsDetail__sp__heading {
    font-size: 26px;
    margin-bottom: 30px
  }
}
.newsDetail__sp__sns {
  padding: 25px 0;
  display: none
}
@media (max-width:750px) {
  .newsDetail__sp__sns {
    display: block
  }
}
.newsDetail__sp__sns__wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center
}
.newsDetail__sp__sns__icon {
  margin: 0 10px
}
.newsDetail__sp__sns__icon img {
  width: 30px
}
.newsDetail__sp__buttons {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-column-gap: 20px;
  margin-bottom: 60px
}
@media (max-width:750px) {
  .newsDetail__sp__buttons {
    grid-template-columns: 1fr;
    grid-row-gap: 10px;
    margin-bottom: 30px
  }
}
@media (max-width:750px) {
  .newsDetail__sp__connection {
    background: #f5f6f7
  }
}
.newsDetail__sp__connection__inner {
  padding: 100px 0 0 0;
  max-width: 980px;
  margin: auto
}
@media (max-width:750px) {
  .newsDetail__sp__connection__inner {
    padding: 40px 20px 80px 20px
  }
}
.newsDetail__sp__flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}
.newsDetail__sp__buttonCol .sustain__pdfLinkWrap {
  width: 100%;
  margin-top: 0
}
.newsDetail__sp__buttonCol .common-button--whiteArrowBtn {
  max-width: none
}
.newsDetail__margin {
  margin-bottom: 20px
}
.newsDetail__pc__none {
  display: none
}
@media (max-width:750px) {
  .newsDetail__pc__none {
    display: block
  }
}
.newsDetail__mainHeading {
  font-size: 38px;
  font-weight: 700;
  position: relative;
  padding-bottom: 18px;
  margin: 80px 0 60px 0;
  text-align: center
}
.newsDetail__mainHeading::before {
  content: "";
  width: 60px;
  height: 5px;
  background: #000;
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translate(-50%,0);
          transform: translate(-50%,0)
}
@media (max-width:750px) {
  .newsDetail__mainHeading::before {
    width: 50px
  }
}
.newsDetail__topLink {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  margin: 30px 0
}
#st-1 .st-btn > img {
  width: 30px!important;
  height: 30px!important;
  top: 2px!important
}
.st-btn {
  padding: 0!important
}
#st-1 .st-btn[data-network=facebook] {
  border-radius: 50%!important
}
#st-2 {
  text-align: center!important
}
#st-2 .st-btn > img {
  width: 30px!important;
  height: 30px!important;
  top: 2px!important
}
.st-last {
  display: inline-block!important
}
.newsRelease__wrapper .newsRelease__item:nth-child(odd) {
  background: #f6f6f6
}
.newsRelease__wrapper .newsRelease__item:nth-child(even) {
  background: #e9e9e9
}
.newsRelease__wrapper.top .newsRelease__item {
  background: #e9e9e9
}
.newsRelease__wrapper.top .newsRelease__item img {
  max-width: 240px;
  width: 100%;
  aspect-ratio: 4/3;
  -o-object-fit: cover;
     object-fit: cover
}
@media (max-width:750px) {
  .newsRelease__wrapper.top .newsRelease__item img {
    width: 180px
  }
}
.newsRelease__item {
  padding: 25px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  position: relative;
  text-decoration: none;
  color: #1f2224
}
.newsRelease__item:hover {
  opacity: .8
}
.newsRelease__item img {
  max-width: 160px;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 4/3
}
@media (max-width:750px) {
  .newsRelease__item img {
    width: 120px
  }
}
@media (max-width:750px) {
  .newsRelease__item {
    padding: 15px 60px 15px 30px
  }
}
.newsRelease__content {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  padding-left: 10px
}
@media (max-width:750px) {
  .newsRelease__content {
    position: relative
  }
  .newsRelease__content::before {
    content: "";
    width: 9px;
    height: 9px;
    border-top: 1px solid #222427;
    border-right: 1px solid #222427;
    -webkit-transform: rotate(45deg) translate(0,-50%);
            transform: rotate(45deg) translate(0,-50%);
    position: absolute;
    top: 50%;
    right: -25px
  }
}
.newsRelease__date {
  font-size: 12px;
  margin-bottom: 5px
}
@media (max-width:750px) {
  .newsRelease__date {
    display: inline-block;
    font-size: 16px;
    margin-right: 5px
  }
}
.newsRelease__labelArea {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: 8px
}
.newsRelease__labelArea .newsLabel {
  margin-right: 5px;
  margin-bottom: 5px
}
.newsRelease__labelArea .newsLabel:last-child {
  margin-right: 0
}
@media (max-width:750px) {
  .newsRelease__labelArea {
    margin-bottom: 0
  }
}
.newsRelease__tag {
  font-size: 12px;
  margin-bottom: 12px
}
.newsRelease__title {
  font-size: 16px;
  font-weight: 700
}
.newsRelease__pc {
  display: block
}
@media (max-width:750px) {
  .newsRelease__pc {
    display: none
  }
}
.newsRelease__sp {
  display: none;
  width: 100%;
  margin-bottom: 15px
}
@media (max-width:750px) {
  .newsRelease__sp {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
  }
}
.newsRelease__search {
  display: none;
  padding: 25px 20px;
  background: #e9e9e9;
  margin-bottom: 20px
}
@media (max-width:750px) {
  .newsRelease__search {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
  }
}
.newsRelease__search__icon {
  width: 50px;
  height: 60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center
}
.newsRelease__search__icon img {
  width: 14px;
  height: 14px
}
.newsRelease__search__wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1
}
.newsRelease__search__button {
  width: calc(33.3333% - 10px);
  height: 60px;
  border: 2px solid #1f2224;
  font-size: 18px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center
}
.newsRelease__search__button--active {
  background: #1f2224;
  color: #fff
}
.sidebar {
  width: 230px;
  background: #f5f6f7;
  padding: 40px 20px
}
@media (max-width:750px) {
  .sidebar {
    -webkit-transition: all .2s cubic-bezier(.16,.23,0,.98);
    transition: all .2s cubic-bezier(.16,.23,0,.98);
    -webkit-transform: translate(100%,0);
            transform: translate(100%,0);
    position: fixed;
    top: 0;
    right: 0;
    width: 80%;
    height: 100%;
    z-index: 999;
    background: #eaeaea;
    overflow-y: auto;
    padding: 40px 15px
  }
}
.sidebar.is-open {
  -webkit-transform: translate(0,0);
          transform: translate(0,0)
}
.sidebar__resetButton {
  font-size: 16px;
  width: 100%;
  height: 40px;
  background: #1f2224;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 20px
}
.sidebar__resetButton:hover {
  opacity: .8
}
.sidebar__heading {
  font-size: 24px;
  margin: 40px 0 30px 0
}
@media (max-width:750px) {
  .sidebar__heading {
    text-align: center
  }
}
.sidebar__heading--top {
  margin-top: 0
}
.sidebar__subHeading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-bottom: 1px solid #000;
  margin: 30px -20px 25px 0;
  padding-right: 20px
}
@media (max-width:750px) {
  .sidebar__subHeading {
    height: 55px;
    background: #d9d9d9;
    padding: 0 20px;
    margin: 0;
    border-bottom: none
  }
}
.sidebar__subHeading:last-child {
  margin-bottom: 0
}
.sidebar__subHeading__text {
  font-size: 15px
}
.sidebar__subHeading__link {
  font-size: 15px;
  color: #000;
  text-decoration: none;
  position: relative;
  padding-left: 20px;
  white-space: nowrap
}
@media (max-width:750px) {
  .sidebar__subHeading__link {
    display: none
  }
}
.sidebar__subHeading__link::before {
  content: "";
  width: 8px;
  height: 8px;
  border-top: 1px solid #000;
  border-right: 1px solid #000;
  -webkit-transform: rotate(45deg) translate(0,-50%);
          transform: rotate(45deg) translate(0,-50%);
  position: absolute;
  top: 42%;
  left: 0
}
.sidebar__link {
  font-size: 15px;
  text-decoration: underline;
  margin-bottom: 20px;
  color: #000;
  line-height: 1
}
@media (max-width:750px) {
  .sidebar__link {
    text-decoration: none;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    position: relative;
    padding: 0 20px
  }
  .sidebar__link::before {
    content: "";
    width: 12px;
    height: 12px;
    border-top: 2px solid #222427;
    border-right: 2px solid #222427;
    -webkit-transform: rotate(45deg) translate(0,-50%);
            transform: rotate(45deg) translate(0,-50%);
    position: absolute;
    top: 50%;
    right: 30px
  }
}
.sidebar__list {
  padding: 0;
  margin: 0;
  list-style: none;
  padding-left: 20px
}
.sidebar__list__li {
  padding-bottom: 5px;
  position: relative
}
@media (max-width:750px) {
  .sidebar__list__li {
    padding-bottom: 0;
    height: 45px;
    border-top: 1px solid #fff
  }
}
.sidebar__list__li:last-child {
  padding-bottom: 0
}
@media (max-width:750px) {
  .sidebar__list__li:last-child {
    border-bottom: 1px solid #fff
  }
}
.sidebar__list__li.active::before {
  content: "";
  width: 0;
  height: 0;
  border-top: 4px solid transparent;
  border-bottom: 4px solid transparent;
  border-left: 6px solid #1f2224;
  position: absolute;
  top: 50%;
  left: -10px;
  -webkit-transform: translate(0,-110%);
          transform: translate(0,-110%)
}
@media (max-width:750px) {
  .sidebar__list__li.active::before {
    content: none
  }
}
.sidebar__text {
  font-size: 14px;
  margin-bottom: 40px
}
.sidebar__note {
  font-size: 12px;
  margin-bottom: 10px;
  margin-top: 40px
}
.sidebar__button {
  width: 80px;
  height: 80px;
  background: rgba(31,34,36,.8);
  display: none;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 50px;
  position: fixed;
  bottom: 20px;
  left: 20px;
  z-index: 9999
}
@media (max-width:750px) {
  .sidebar__button {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
  }
}
.sidebar__button img {
  width: 40px;
  height: 35px;
  -webkit-filter: brightness(0) invert(1);
          filter: brightness(0) invert(1)
}
.sidebar__button__item--close {
  display: none
}
.sidebar__button__close {
  width: 40px;
  height: 35px;
  position: relative
}
.sidebar__button__close__span {
  width: 100%;
  height: 4px;
  background: #1f2224;
  border-radius: 2px
}
.sidebar__button__close__span--top {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%,-50%) rotate(45deg);
          transform: translate(-50%,-50%) rotate(45deg)
}
.sidebar__button__close__span--bottom {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%,-50%) rotate(-45deg);
          transform: translate(-50%,-50%) rotate(-45deg)
}
.sidebar__button__text {
  font-size: 12px;
  color: #fff
}
.sidebar__button.is-open {
  background: #fff;
  border: 2px solid #1f2224
}
.sidebar__button.is-open .sidebar__button__item--open {
  display: none
}
.sidebar__button.is-open .sidebar__button__item--close {
  display: block
}
.sidebar__button.is-open .sidebar__button__text {
  color: #1f2224
}
.mt-10 {
  margin-top: 10px!important
}
.u-fm-din {
  font-family: din-condensed, sans-serif;
  font-style: normal
}
.header {
  position: fixed;
  z-index: 20;
  width: 100%;
  left: 0;
  background-color: rgba(255,255,255,.9);
  height: 9.6vh;
  padding: 0 5.33%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-transition: top .5s,left .5s;
  transition: top .5s,left .5s;
  top: 0
}
.header.is-slideUp {
  top: -9.6vh
}
@media (min-width:751px) and (max-width:1024px) {
  .header.is-slideUp {
    top: -12vh
  }
}
@media (min-width:1025px) {
  .header.is-slideUp {
    top: -90px
  }
}
.header__inner {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between
}
@media (min-width:751px) and (max-width:1024px) {
  .header {
    height: 12vh
  }
}
@media (min-width:1025px) {
  .header {
    height: 90px;
    padding: 15px 40px 0
  }
}
.header__logo {
  width: 15.47vw
}
.header__logo img {
  width: 100%
}
@media (min-width:1025px) {
  .header__logo {
    width: 90px
  }
}
.header__menuButton {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  cursor: pointer;
  width: 20vw
}
@media (min-width:751px) and (max-width:1024px) {
  .header__menuButton {
    width: 14vw
  }
}
@media (min-width:1025px) {
  .header__menuButton {
    display: none
  }
}
.header__menuText {
  font-family: Barlow,sans-serif;
  font-size: 4.2vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}
.header__menuText span {
  display: inline-block;
  vertical-align: middle
}
@media (min-width:751px) and (max-width:1024px) {
  .header__menuText {
    font-size: 28px
  }
}
.header__menuTrigger {
  position: relative;
  width: 24px;
  height: 10px;
  cursor: pointer
}
.header__menuTrigger span {
  display: inline-block;
  position: absolute;
  right: 0;
  height: 2px;
  background-color: #222427;
  -webkit-transition: top .4s,width .4s;
  transition: top .4s,width .4s
}
.header__menuTrigger span:nth-of-type(1) {
  top: 0;
  width: 100%
}
.header__menuTrigger span:nth-of-type(2) {
  top: 8px;
  width: 100%
}
@media (min-width:751px) and (max-width:1024px) {
  .header__menuTrigger {
    width: 32px
  }
}
.header__menuTop {
  height: 9.6vh;
  display: none;
  background-color: #222427
}
@media (min-width:751px) and (max-width:1024px) {
  .header__menuTop {
    height: 12vh
  }
}
@media (min-width:1025px) {
  .header__menuTop {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    background-color: inherit;
    position: relative;
    height: auto;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    margin-bottom: 20px;
    border: none
  }
}
.header__iconWrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 35%
}
.header__iconWrap li:nth-of-type(1) {
  width: 50%;
  border-right: 1px solid #707070;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center
}
.header__iconWrap li:nth-of-type(1) a {
  width: 65%
}
@media (min-width:1025px) {
  .header__iconWrap li:nth-of-type(1) {
    width: auto;
    border: none
  }
}
.header__iconWrap li:nth-of-type(2) {
  width: 50%;
  border-right: 1px solid #707070;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center
}
.header__iconWrap li:nth-of-type(2) a {
  width: 42%
}
@media (min-width:1025px) {
  .header__iconWrap li:nth-of-type(2) {
    width: auto;
    border: none
  }
}
.header__iconWrap li:nth-of-type(3) {
  display: none
}
@media (min-width:1025px) {
  .header__iconWrap li:nth-of-type(3) {
    display: block
  }
}
.header__iconWrap li:nth-of-type(4) {
  display: none
}
@media (min-width:1025px) {
  .header__iconWrap li:nth-of-type(4) {
    display: block
  }
}
.header__iconWrap li a {
  display: inline-block
}
.header__iconWrap li a img {
  width: 100%;
  vertical-align: middle
}
.header__iconWrap li a img:first-child {
  display: none
}
@media (min-width:1025px) {
  .header__iconWrap {
    width: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: 1.4;
    font-size: 14px
  }
  .header__iconWrap li:last-child {
    display: block
  }
  .header__iconWrap a {
    width: 20px;
    margin-right: 20px;
    -webkit-transition: opacity .5s;
    transition: opacity .5s
  }
  .header__iconWrap a img {
    width: 100%;
    vertical-align: middle
  }
  .header__iconWrap a:hover {
    opacity: .5
  }
  .header__iconWrap li a img:first-child {
    display: inline-block
  }
  .header__iconWrap li a img:nth-child(2) {
    display: none
  }
}
.header__langWrap {
  width: 65%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center
}
.header__langWrap li {
  color: #fff;
  font-size: 4.8vw;
  font-weight: 700
}
.header__langWrap li a {
  color: #fff;
  text-decoration: none;
  display: inline-block;
  font-weight: 400
}
.header__langWrap li a img {
  width: 100%;
  vertical-align: middle
}
.header__langWrap li span {
  color: #fff;
  margin-left: 2vw;
  margin-right: 2vw
}
.header__langWrap li:first-child {
  width: 10%;
  margin-left: 20%;
  margin-right: 8%
}
.header__langWrap li:first-child a {
  width: 100%
}
@media (min-width:1025px) {
  .header__langWrap {
    width: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    line-height: 1
  }
  .header__langWrap li {
    line-height: 1;
    font-size: 14px;
    font-weight: 700;
    width: auto;
    color: #222427
  }
  .header__langWrap li:first-child {
    display: none
  }
  .header__langWrap li a {
    font-weight: 400;
    color: #222427
  }
  .header__langWrap li a:visited {
    color: inherit
  }
  .header__langWrap li a:hover {
    opacity: .5
  }
  .header__langWrap li span {
    color: #222427;
    margin-left: 8px;
    margin-right: 8px;
    font-weight: 400
  }
}
.header__list {
  display: none;
  border-top: 1px solid #fff;
  background-color: #222427;
  height: 90.4vh;
  height: -webkit-fill-available;
  overflow-y: auto
}
.header__list::-webkit-scrollbar {
  display: none
}
@media (min-width:751px) and (max-width:1024px) {
  .header__list {
    height: 88vh
  }
}
@media (min-width:1025px) {
  .header__list {
    height: auto
  }
}
.header__list > li {
  height: 9.2vh;
  border-bottom: 1px solid #fff;
  color: #fff;
  padding-left: 5.5%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 4.8vw
}
.header__list > li:last-child {
  display: block;
  background: #fff;
  height: auto;
  padding: 5.5% 0;
  height: -webkit-fill-available
}
.header__list > li > a {
  text-decoration: none;
  color: #fff
}
.header__list > li > span:nth-of-type(1) {
  width: 90%
}
.header__list > li > span:nth-of-type(1) a {
  color: inherit;
  text-decoration: none
}
.header__list > li > span:nth-of-type(2) {
  width: 2.13vw
}
.header__list > li > span:nth-of-type(2) img {
  vertical-align: middle;
  width: 100%
}
@media (min-width:1025px) {
  .header__list {
    border: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 63vw;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    line-height: 1;
    background-color: inherit
  }
  .header__list > li {
    color: #222427;
    line-height: 1;
    height: auto;
    font-size: 15px;
    border-bottom: 6px solid transparent;
    padding-bottom: 12px;
    padding-left: 0;
    padding-top: 4px
  }
  .header__list > li:last-child {
    display: none
  }
  .header__list > li:hover {
    border-bottom: 6px solid #d28903
  }
  .header__list > li > a {
    text-decoration: none;
    color: #222427
  }
  .header__list > li > a:visited {
    color: inherit
  }
  .header__list > li > span:nth-of-type(1) {
    width: 100%
  }
  .header__list > li > span:nth-of-type(2) {
    display: none
  }
}
.header__listItemSp {
  padding: 0 5.5%
}
.header__listItemSp > li a {
  color: #222427;
  text-decoration: none;
  display: block
}
.header__listItemSp > li a:visited {
  color: #222427
}
.header__listItemSp--banner {
  padding: 0 2.5%
}
.header__listItemSp--banner > li {
  margin-top: 11%
}
.header__listItemSp--banner > li a {
  color: #222427;
  text-decoration: none;
  display: block
}
.header__listItemSp--banner > li a:visited {
  color: #222427
}
.header__listItemSp--banner img {
  width: 100%
}
.header__linksSp {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}
.header__linksSp li a {
  font-size: 4.26vw;
  font-weight: 700;
  color: #222427;
  text-decoration: underline
}
.header__linksSp li a:nth-of-type(1) {
  margin-right: 8vw
}
.header__toProfessionalImg a {
  position: relative
}
.header__toProfessionalImg a img {
  width: 100%;
  text-align: center;
  -o-object-fit: cover;
     object-fit: cover
}
.header__toProfessionalImg a span {
  position: absolute;
  bottom: 10%;
  width: 100%;
  text-align: center;
  font-size: 3.73vw;
  font-weight: 700;
  background: rgba(255,255,255,.7);
  display: block;
  height: 5vh;
  line-height: 5vh
}
.header__recruitImg a {
  position: relative
}
.header__recruitImg a img {
  width: 100%;
  text-align: center;
  -o-object-fit: cover;
     object-fit: cover
}
.header__recruitImg a span {
  font-size: 6.25vw;
  font-weight: 700;
  color: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%,-50%);
          transform: translate(-50%,-50%)
}
.header__menu {
  position: fixed;
  left: 100%;
  -webkit-transition: left .5s;
  transition: left .5s;
  overflow-y: hidden
}
@media (min-width:1025px) {
  .header__menu {
    position: relative;
    left: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -ms-flex-pack: distribute;
        justify-content: space-around
  }
}
.header__backBtn {
  margin-top: 40px;
  padding-left: 5.33%
}
.header__backBtn a {
  display: block;
  text-decoration: none;
  color: #222427
}
.header__backBtn a:visited {
  color: #222427
}
.header__backBtn a img {
  vertical-align: middle;
  width: 2.13vw;
  margin-right: 2.66vw
}
.header__backBtn a span {
  vertical-align: middle;
  font-size: 3.73vw
}
@media (min-width:1025px) {
  .header__backBtn {
    display: none
  }
}
.header__itemSecond {
  position: fixed;
  top: 9.6vh;
  height: 90.4vh;
  width: 80%;
  right: -100%;
  background: #eceef0;
  z-index: 20;
  -webkit-transition: right .5s;
  transition: right .5s;
  overflow-x: hidden;
  padding: 40px 0 120px
}
@media (min-width:751px) and (max-width:1024px) {
  .header__itemSecond {
    top: 12vh;
    height: 88vh
  }
}
@media (min-width:1025px) {
  .header__itemSecond {
    height: 0;
    width: 100%;
    top: 90px;
    left: 0;
    padding: 0 0 0 15vw;
    background-color: #222427;
    color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    overflow-y: hidden;
    -webkit-transition: height .5s;
    transition: height .5s
  }
}
.header__itemHeading p {
  font-weight: 700;
  font-size: 5.86vw;
  text-align: center;
  line-height: 1;
  color: #222427
}
.header__itemHeading p span {
  font-size: 3.73vw;
  font-family: Barlow,sans-serif
}
.header__itemHeading > a {
  display: block;
  font-size: 4.26vw;
  padding-left: 5.33%;
  margin-top: 32px;
  color: #222427;
  text-decoration: none
}
@media (min-width:1025px) {
  .header__itemHeading {
    width: 19vw;
    background-color: #707070;
    height: 100%;
    padding: 50px 1.47vw
  }
  .header__itemHeading p {
    font-size: 18px;
    text-align: center;
    color: #fff
  }
  .header__itemHeading p span {
    margin-top: 10px;
    font-size: 14px;
    display: inline-block
  }
  .header__itemHeading > a {
    text-decoration: none;
    display: block;
    width: 100%;
    border-top: 1px solid #fff;
    margin-top: 50px;
    padding-top: 20px;
    padding-left: 0;
    text-align: center;
    color: #fff;
    font-size: 15px
  }
  .header__itemHeading > a:visited {
    color: inherit
  }
  .header__itemHeading > a:hover {
    text-decoration: underline
  }
}
.header__itemList {
  color: #222427;
  padding-left: 5.33%;
  font-size: 4.26vw
}
@media (min-width:1025px) {
  .header__itemList {
    color: #fff;
    padding-top: 48px;
    width: 66vw;
    padding-left: 3.6vw;
    font-size: 15px
  }
}
.header__linkWrap li a {
  text-decoration: none;
  color: #222427
}
@media (min-width:1025px) {
  .header__linkWrap li a {
    color: #fff
  }
}
.header__linkWrap li a:visited {
  color: inherit
}
.header__linkWrap li a:hover {
  text-decoration: underline
}
.header__linkWrap li.header__thirdTrigger > span {
  font-size: 4.26vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 90%;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  cursor: pointer
}
.header__linkWrap li.header__thirdTrigger > span img {
  vertical-align: middle;
  width: 2.13vw
}
@media (min-width:1025px) {
  .header__linkWrap li.header__thirdTrigger > span {
    font-size: 13px
  }
  .header__linkWrap li.header__thirdTrigger > span > img {
    display: none
  }
}
.header__linkWrap > li {
  margin-top: 32px
}
.header__linkWrap > li.mt-adjust {
  margin-top: 50px
}
@media (min-width:1025px) {
  .header__linkWrap > li.mt-adjust {
    margin-top: 0
  }
}
.header__linkWrap > li > span {
  font-size: 3.73vw;
  color: #222427
}
@media (min-width:1025px) {
  .header__linkWrap > li {
    margin-top: 0
  }
}
@media (min-width:1025px) {
  .header__linkWrap {
    margin-top: 40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
  }
  .header__linkWrap.mt-0 {
    margin-top: 0
  }
  .header__linkWrap > li {
    margin-right: 40px
  }
  .header__linkWrap > li a {
    font-size: 15px
  }
  .header__linkWrap > li > span {
    font-size: 13px;
    color: #fff
  }
}
.header__linkWrap.banner {
  display: none
}
@media (min-width:1025px) {
  .header__linkWrap.banner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 45px
  }
  .header__linkWrap.banner > li {
    margin-right: 30px
  }
  .header__linkWrap.banner > li.header__pcBanner--recruit {
    width: 260px
  }
  .header__linkWrap.banner > li.header__pcBanner--recruit a {
    text-decoration: none;
    display: block;
    position: relative
  }
  .header__linkWrap.banner > li.header__pcBanner--recruit a:hover {
    opacity: .7
  }
  .header__linkWrap.banner > li.header__pcBanner--recruit a > span {
    font-size: 18px;
    font-weight: 700;
    color: #fff;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%,-50%);
            transform: translate(-50%,-50%)
  }
  .header__linkWrap.banner > li.header__pcBanner--recruit img {
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover
  }
  .header__linkWrap.banner > li.header__pcBanner--pro {
    width: 260px
  }
  .header__linkWrap.banner > li.header__pcBanner--pro a {
    color: #222427;
    width: 100%;
    text-decoration: none;
    display: block;
    position: relative
  }
  .header__linkWrap.banner > li.header__pcBanner--pro a:hover {
    opacity: .7
  }
  .header__linkWrap.banner > li.header__pcBanner--pro a > span {
    position: absolute;
    bottom: 10%;
    width: 100%;
    text-align: center;
    font-weight: 700;
    font-size: 14px;
    background: rgba(255,255,255,.7);
    display: block;
    height: 30px;
    line-height: 30px
  }
  .header__linkWrap.banner > li.header__pcBanner--pro img {
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover
  }
}
.header__borderPoint {
  border-top: 1px solid #707070;
  width: 72%;
  margin-top: 12px;
  padding-top: 20px
}
@media (min-width:1025px) {
  .header__borderPoint {
    border-top: 1px solid #fff;
    margin-top: 10px;
    padding-top: 0;
    width: auto
  }
}
.header__borderPoint.header__itemThird {
  position: fixed;
  top: 9.6vh;
  height: 90.4vh;
  width: 81%;
  background-color: #fff;
  margin-top: 0;
  border-top: none;
  padding: 40px 0 120px;
  -webkit-transition: right .5s;
  transition: right .5s;
  overflow-y: auto;
  right: -81%
}
.header__borderPoint.header__itemThird .header__linkOuter {
  width: 93%
}
.header__borderPoint.header__itemThird .header__linkOuter > li {
  padding-left: 5.33%
}
.header__borderPoint.header__itemThird .header__linkOuter > li.header__itemThirdHeading {
  padding-left: 0
}
.header__borderPoint.header__itemThird .header__linkOuter > li:first-child {
  margin-top: 32px
}
@media (min-width:1025px) {
  .header__borderPoint.header__itemThird .header__linkOuter > li:first-child {
    margin-top: 0
  }
}
@media (min-width:1025px) {
  .header__borderPoint.header__itemThird .header__linkOuter {
    width: auto
  }
  .header__borderPoint.header__itemThird .header__linkOuter > li {
    padding-left: 0
  }
}
@media (min-width:751px) and (max-width:1024px) {
  .header__borderPoint.header__itemThird {
    top: 12vh;
    height: 88vh
  }
}
@media (min-width:1025px) {
  .header__borderPoint.header__itemThird {
    position: static;
    border-top: 1px solid #fff;
    margin-top: 10px;
    padding: 0;
    width: auto;
    height: auto;
    background-color: inherit;
    overflow-y: visible
  }
}
.header__linkOuter > li {
  line-height: 1;
  margin-top: 32px
}
.header__linkOuter > li:first-child {
  margin-top: 0
}
.header__linkOuter > li.header__itemThirdHeading p {
  font-weight: 700;
  font-size: 5.86vw;
  text-align: center;
  line-height: 1;
  color: #222427
}
.header__linkOuter > li.header__itemThirdHeading p span {
  font-size: 3.73vw;
  font-family: Barlow,sans-serif
}
@media (min-width:1025px) {
  .header__linkOuter > li.header__itemThirdHeading {
    display: none
  }
}
@media (min-width:1025px) {
  .header__linkOuter > li {
    margin-top: 0
  }
}
.header__linkOuter.mt-adjust > li:first-child {
  margin-top: 32px
}
@media (min-width:1025px) {
  .header__linkOuter.mt-adjust > li:first-child {
    margin-top: 0
  }
}
@media (min-width:1025px) {
  .header__linkOuter {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 15px
  }
  .header__linkOuter > li {
    margin-right: 40px
  }
  .header__linkOuter > li:last-child {
    margin-right: 0
  }
  .header__linkOuter.pc-verticalStack {
    display: block
  }
  .header__linkOuter.pc-verticalStack > li {
    margin-right: 0
  }
  .header__linkOuter.pc-verticalStack > li:first-child {
    margin-bottom: 15px
  }
}
@media (min-width:751px) and (max-width:1024px) {
  body.is-landscape .header {
    height: 15vh
  }
}
body.is-landscape .header.is-slideUp {
  top: -15vh
}
@media (min-width:751px) and (max-width:1024px) {
  body.is-landscape .header__logo {
    width: 10vw
  }
}
@media (min-width:751px) and (max-width:1024px) {
  body.is-landscape .header__menuButton {
    width: 11vw
  }
}
body.is-landscape .header__menuTop {
  height: 15vh
}
body.is-landscape .header__list {
  height: 85vh
}
body.is-landscape .header__list > li {
  height: 12vh;
  font-size: 3.5vw
}
body.is-landscape .header__list > li:last-child {
  background: #fff;
  height: auto
}
body.is-landscape .header__itemSecond {
  top: 15vh;
  height: 85vh
}
body.is-landscape .header__itemThird {
  top: 15vh;
  height: 85vh
}
.container.is-open .header.is-slideUp {
  top: 0
}
.container.is-open .header__menu {
  position: fixed;
  top: 0;
  width: 82.85%;
  height: 100vh
}
.container.is-open .header__list {
  display: block
}
.container.is-open .header__menuTop {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}
.container.is-slide .header {
  left: -82.85%
}
.container.is-slide .header__menu {
  left: 17%
}
.container.is-slide .header__menu::-webkit-scrollbar {
  display: none
}
.container.is-slide .header__menuText {
  opacity: 0
}
.container.is-slide .header__menuTrigger span {
  background-color: #960
}
.container.is-slide .header__menuTrigger span:nth-of-type(1) {
  -webkit-transform: translateY(6px) rotate(20deg);
          transform: translateY(6px) rotate(20deg)
}
.container.is-slide .header__menuTrigger span:nth-of-type(2) {
  -webkit-transform: translateY(-2px) rotate(-20deg);
          transform: translateY(-2px) rotate(-20deg)
}
.container.is-slide .header__linkWrap > li.is-slide .header__itemThird {
  right: -4%
}
.container.is-slide .header__list.is-secondOpen {
  overflow-y: hidden
}
.container.is-slide .header__list > li.is-slide .header__itemSecond {
  right: 0
}
.container.is-slide .header__list.is-thirdOpen .header__itemSecond {
  overflow-y: hidden
}
@media (min-width:1025px) {
  .container .header__list > li.is-hover .header__itemSecond.groupMenu {
    height: 410px
  }
  .container .header__list > li.is-hover .header__itemSecond.serviceMenu {
    height: 580px
  }
  .container .header__list > li.is-hover .header__itemSecond.irMenu {
    height: 456px
  }
  .container .header__list > li.is-hover .header__itemSecond.sustainableMenu {
    height: 230px
  }
  .container .header__list > li.is-hover .header__itemSecond.newsMenu {
    height: 230px
  }
}
.top-nav-link {
  cursor: pointer!important
}
html {
  height: -webkit-fill-available
}
body {
  -ms-overflow-style: none;
  min-height: 100vh;
  min-height: -webkit-fill-available
}
.footer {
  position: relative;
  z-index: 5;
  background-color: #ebebeb
}
.footer__content {
  padding: 80px 0
}
.footer__contentInner {
  width: 980px;
  margin: auto
}
@media (max-width:1024px) {
  .footer__contentInner {
    width: 335px
  }
}
.footer__nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%
}
@media (max-width:1024px) {
  .footer__nav {
    display: none
  }
}
.footer__linkArea.groupInfo {
  width: 205px;
  margin-right: 35px
}
.footer__linkArea.businessAndService {
  width: 240px
}
.footer__linkArea.strongAndFeature {
  width: 230px;
  margin-right: 35px
}
.footer__linkArea.irInformation {
  width: 245px
}
.footer__linkHeading {
  font-weight: 700;
  font-size: 16px;
  margin-bottom: 18px;
  line-height: 1
}
.footer__linkHeading > a {
  color: inherit;
  text-decoration: none;
  -webkit-transition: opacity .3s;
  transition: opacity .3s
}
.footer__linkHeading > a:hover {
  opacity: .7;
  text-decoration: underline
}
.footer__linkList > li {
  font-size: 13px;
  margin-bottom: 15px;
  line-height: 1
}
.footer__linkList > li > a {
  color: inherit;
  text-decoration: none
}
.footer__linkList > li > a:hover {
  opacity: .7;
  text-decoration: underline
}
.footer__linkList.groupInfo > li.itemAdjust {
  font-weight: 700;
  margin-top: 28px
}
.footer__linkList.groupInfo > li.itemAdjust svg {
  margin-left: 4px
}
.footer__linkList.businessAndService {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between
}
.footer__linkList.businessAndService > li {
  width: 50%
}
.footer__linkList.businessAndService > li.oneColumn {
  width: 100%
}
.footer__linkList.businessAndService > li.fontAdjust {
  font-weight: 700
}
.footer__linkList.strongAndFeature > li.lhAdjust {
  line-height: 1.5
}
.footer__linkList.irInformation {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between
}
.footer__linkList.irInformation > li {
  width: 50%
}
.footer__linkList.irInformation > li.oneColumn {
  width: 100%
}
.footer__linkList.irInformation > li.itemAdjust svg {
  margin-left: 4px
}
.footer__linkSubTitle {
  line-height: 1;
  font-weight: 400;
  margin-bottom: 10px
}
.footer__linkWrap--sustainability {
  margin-top: 40px
}
.footer__bottom {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 80px
}
@media (max-width:1024px) {
  .footer__bottom {
    margin-top: 0;
    display: block
  }
}
.footer__bottomMain {
  width: 740px
}
@media (max-width:1024px) {
  .footer__bottomMain {
    width: 100%
  }
}
.footer__bottomUpper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}
.footer__bottomUpper > li {
  font-size: 15px;
  font-weight: 700;
  margin-right: 30px
}
.footer__bottomUpper > li:last-child {
  margin-right: 0
}
.footer__bottomUpper > li > a {
  color: inherit;
  text-decoration: none
}
.footer__bottomUpper > li > a:hover {
  opacity: .7;
  text-decoration: underline
}
@media (max-width:1024px) {
  .footer__bottomUpper > li {
    line-height: 1;
    margin-bottom: 20px;
    margin-right: 0
  }
}
@media (max-width:1024px) {
  .footer__bottomUpper {
    display: block
  }
}
.footer__bottomLower {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 650px;
  margin-top: 20px
}
.footer__bottomLower > li {
  font-size: 13px;
  line-height: 1;
  margin-right: 20px;
  margin-bottom: 10px
}
.footer__bottomLower > li:nth-child(5) {
  margin-right: 0
}
@media (max-width:1024px) {
  .footer__bottomLower > li:nth-child(5) {
    margin-right: 20px
  }
}
.footer__bottomLower > li > a {
  color: inherit;
  text-decoration: none
}
.footer__bottomLower > li > a:hover {
  opacity: .7;
  text-decoration: underline
}
@media (max-width:1024px) {
  .footer__bottomLower {
    width: 100%
  }
}
.footer__bottomSns {
  width: 220px;
  margin: 80px auto 0
}
.footer__snsIcon {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between
}
.footer__snsIcon a {
  display: block;
  -webkit-transition: opacity .3s;
  transition: opacity .3s
}
.footer__snsIcon a:hover {
  opacity: .7
}
.footer__snsIcon img {
  width: 30px;
  height: 30px;
  vertical-align: middle
}
.footer__snsListLink {
  text-align: right;
  margin-top: 30px;
  line-height: 1
}
.footer__snsListLink > a {
  line-height: 1;
  font-size: 14px;
  color: #222427;
  font-weight: 700;
  -webkit-transition: opacity .3s;
  transition: opacity .3s
}
.footer__snsListLink > a:hover {
  opacity: .7
}
@media (max-width:1024px) {
  .footer__snsListLink {
    text-align: center
  }
}
.footer__copy {
  background-color: #383937;
  text-align: center;
  height: 40px;
  line-height: 40px
}
.footer__copy p {
  font-size: 10px;
  color: #fff
}
.common-section {
  margin-bottom: 120px
}
.common-section__grayBox {
  background: #e9e9e9;
  padding: 60px 20px
}
@media (max-width:750px) {
  .common-section__grayBox {
    padding: 60px 20px
  }
}
.common-section.thin {
  margin-bottom: 80px
}
.common-container {
  max-width: 1020px;
  width: 100%;
  margin: auto;
  padding: 0 20px
}
.common-container--sp {
  width: auto
}
.common-container--top {
  margin-top: 80px
}
.common-m-none {
  margin: 0
}
.common-mt-none {
  margin-top: 0!important
}
.common-mb {
  margin-bottom: 20px
}
.common-mb--subTitle {
  margin-bottom: 30px
}
.common-mb--title {
  margin-bottom: 40px
}
.common-mb--subTitle {
  margin-bottom: 30px
}
.common-mb--section {
  margin-bottom: 90px
}
.common-text--normal {
  font-size: 16px
}
.common-text--small {
  font-size: 12px
}
.common-text--right {
  text-align: right
}
.common-text--center {
  text-align: center
}
.common-text--bold {
  font-weight: 700
}
.common-heading--h4.common-mb {
  margin-top: 40px
}
.common-secondHeading.common-mb--subTitle {
  margin-top: 60px
}
.common-sitemap__grid {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}
@media (max-width:750px) {
  .common-sitemap__grid {
    padding-left: 10%;
    display: none
  }
}
.common-sitemap__grid__cnt {
  width: 50%
}
.common-sitemap__grid__cnt > div {
  padding-bottom: 80px
}
.common-sitemap__grid__sp {
  display: none
}
.common-sitemap__grid__sp > div {
  padding-bottom: 80px
}
@media (max-width:750px) {
  .common-sitemap__grid__sp {
    display: block
  }
}
.common-sitemap__title {
  color: #222427;
  font-size: 28px;
  font-weight: 700;
  padding-bottom: 40px;
  line-height: 1
}
@media (max-width:750px) {
  .common-sitemap__title {
    font-size: 26px
  }
}
.common-sitemap__title__link {
  color: #000;
  text-decoration: none;
  font-size: 20px;
  line-height: 1;
  display: inline-block;
  position: relative;
  margin-right: 50px
}
.common-sitemap__title__link::before {
  content: "";
  width: 14px;
  height: 14px;
  border-left: 2px solid #222427;
  border-bottom: 2px solid #222427;
  position: absolute;
  top: 40%;
  right: -20px;
  -webkit-transform-origin: top right;
          transform-origin: top right;
  -webkit-transform: rotate(-135deg);
          transform: rotate(-135deg)
}
.common-sitemap__title__link:hover {
  color: #d28903
}
.common-sitemap__title__link:hover::before {
  border-color: #d28903
}
.common-sitemap__ul {
  padding: 0;
  margin: 0;
  margin-top: 20px
}
.common-sitemap__li {
  padding-bottom: 10px
}
.common-sitemap__li:last-child {
  padding-bottom: 0
}
.common-sitemap__li a {
  font-size: 16px;
  color: #000
}
.common-sitemap__li a[target=_blank] {
  position: relative
}
.common-sitemap__li a[target=_blank]::after,
.common-sitemap__li a[target=_blank]::before {
  content: "";
  width: 9px;
  height: 8px;
  background: #fff;
  border: 1.5px solid #000;
  position: absolute;
  top: 50%;
  right: -15px
}
.common-sitemap__li a[target=_blank]::before {
  -webkit-transform: translate(0,-50%);
          transform: translate(0,-50%)
}
.common-sitemap__li a[target=_blank]::after {
  -webkit-transform: translate(35%,-84%);
          transform: translate(35%,-84%)
}
.common-sitemap__li a:hover {
  color: #d28903
}
.common-sitemap__li a:hover::after,
.common-sitemap__li a:hover::before {
  border-color: #d28903
}
.common-sitemap__heading {
  font-size: 36px;
  font-weight: 700;
  text-align: center;
  line-height: 1;
  letter-spacing: .5px;
  color: #000
}
@media (max-width:750px) {
  .common-sitemap__heading {
    font-size: 34px
  }
}
.common-sitemap__heading span {
  width: 2.5%;
  display: block;
  margin: 16px auto 0;
  height: 4px;
  background-color: #000
}
@media (max-width:750px) {
  .common-sitemap__heading span {
    width: 10%
  }
}
.common-sitemap__heading__wrap {
  padding-top: 90px;
  padding-bottom: 130px
}
.common-flex--center {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center
}
.privacy__list {
  padding: 0;
  margin: 0;
  margin-bottom: 20px
}
.privacy__list li {
  padding-left: 38px;
  position: relative
}
.privacy__list li:not(:last-child) {
  margin-bottom: 5px
}
.privacy__list__num {
  position: absolute;
  top: 0;
  left: 0
}
.aboutUs__grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(300px,1fr));
  grid-template-rows: auto;
  grid-gap: 120px 80px;
  margin-bottom: 100px
}
@media (min-width:751px) and (max-width:1024px) {
  .aboutUs__grid {
    grid-template-columns: 1fr
  }
}
@media (max-width:750px) {
  .aboutUs__grid {
    grid-template-columns: 1fr;
    margin-bottom: 40px
  }
}
.aboutUs__president {
  display: grid;
  grid-template-columns: 190px 1fr;
  margin-bottom: 120px
}
@media (max-width:750px) {
  .aboutUs__president {
    grid-template-columns: 100px 1fr
  }
}
.aboutUs__president img {
  -webkit-box-shadow: 0 0 0 1px #000;
          box-shadow: 0 0 0 1px #000;
  aspect-ratio: 1/1;
  border-radius: 50%;
  max-width: 100%;
  -o-object-fit: cover;
     object-fit: cover
}
.aboutUs__president__text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding-left: 20px
}
.aboutUs__president__text__lead {
  font-size: 32px;
  font-weight: 700
}
@media (max-width:750px) {
  .aboutUs__president__text__lead {
    font-size: 20px
  }
}
.aboutUs__president__text__name {
  font-size: 16px
}
.aboutUs__president__text::before {
  content: "";
  display: block;
  height: 25px;
  width: 100%
}
@media (max-width:750px) {
  .aboutUs__president__text::before {
    content: none
  }
}
.aboutUs__image {
  text-align: center;
  margin-bottom: 60px
}
.aboutUs__image img {
  width: 100%;
  max-width: 610px
}
.aboutUs__link {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 40px;
  padding: 60px 0;
  place-items: center
}
@media (max-width:750px) {
  .aboutUs__link {
    padding-top: 90px;
    padding-bottom: 100px;
    grid-template-columns: 1fr;
    grid-row-gap: 10px
  }
}
.aboutUs__link__item {
  position: relative;
  max-width: 450px;
  width: 100%
}
.aboutUs__link__item img {
  width: 100%;
  aspect-ratio: 3/1;
  -o-object-fit: cover;
     object-fit: cover
}
@media (max-width:750px) {
  .aboutUs__link__item img {
    width: 100%;
    height: 150px
  }
}
.aboutUs__link__item:hover {
  opacity: .6
}
.aboutUs__link__title {
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translate(0,-50%);
          transform: translate(0,-50%);
  font-size: 16px;
  color: #fff;
  width: 100%;
  padding: 0 25px
}
.aboutUs__link__title span {
  position: absolute;
  top: 50%;
  right: 25px
}
.aboutUs__link__title span::before {
  content: "";
  width: 15px;
  height: 2px;
  background: #fff;
  position: absolute;
  top: 0;
  right: 0;
  -webkit-transform: translate(0,-50%);
          transform: translate(0,-50%)
}
.aboutUs__link__title span::after {
  content: "";
  width: 8px;
  height: 8px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  position: absolute;
  top: -4px;
  left: -8px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg)
}
.aboutUs__heading {
  font-size: 24px;
  font-weight: 700;
  position: relative;
  padding-right: 30px;
  color: #000;
  text-decoration: none;
  margin-bottom: 20px;
  display: inline-block
}
@media (max-width:750px) {
  .aboutUs__heading {
    font-size: 22px
  }
}
.aboutUs__heading span {
  position: absolute;
  top: calc(50% - 2.5px);
  right: 0;
  -webkit-transform: translate(0,-50%);
          transform: translate(0,-50%)
}
.aboutUs__heading span::before {
  content: "";
  width: 15px;
  height: 2px;
  background: #000;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transform: translate(-100%,0);
          transform: translate(-100%,0)
}
.aboutUs__heading span::after {
  content: "";
  width: 7px;
  height: 7px;
  border-top: 2px solid #000;
  border-right: 2px solid #000;
  position: absolute;
  top: 1px;
  left: -6px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  -webkit-transform-origin: top right;
          transform-origin: top right
}
.aboutUs__heading:hover {
  color: #d28903
}
.aboutUs__heading:hover span::before {
  background: #d28903
}
.aboutUs__heading:hover span::after {
  border-color: #d28903
}
.aboutUs__img {
  position: relative;
  width: 100%;
  padding-top: 77.777%
}
.aboutUs__img > img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translateX(-50%) translateY(-50%);
          transform: translateX(-50%) translateY(-50%);
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain
}
.group__box {
  height: 100%;
  background: #e9e9e9;
  padding: 45px 25px;
  z-index: -1
}
.group__box img {
  width: 100%
}
.group__cat {
  font-size: 26px;
  font-weight: 700
}
.group__num {
  font-size: 24px;
  font-weight: 700;
  line-height: 1
}
.group__num span {
  font-size: 56px
}
.group__imageFrame {
  width: 100%;
  height: 120px;
  padding: 15px;
  border: 1px solid #83807a;
  background: #fff;
  margin-bottom: 10px
}
.group__imageFrame img {
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain
}
.group__accordion {
  width: 100%;
  position: relative;
  margin-bottom: 40px
}
.group__accordion__button {
  min-height: 60px;
  background: #000;
  padding: 5px 17px;
  padding-right: 35px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
  border: 1.5px solid #000;
  cursor: pointer
}
.group__accordion__button p {
  font-size: 18px;
  color: #fff
}
.group__accordion__icon {
  position: absolute;
  top: 50%;
  right: 16px;
  -webkit-transform: translate(0,-50%);
          transform: translate(0,-50%);
  width: 13px;
  height: 15px
}
@media (max-width:750px) {
  .group__accordion__icon {
    right: 20px;
    width: 15px
  }
}
.group__accordion__icon::after,
.group__accordion__icon::before {
  content: "";
  width: 100%;
  height: 2px;
  background: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%,-50%);
          transform: translate(-50%,-50%);
  opacity: 1;
  -webkit-transition: all .3s ease;
  transition: all .3s ease
}
.group__accordion__icon::after {
  -webkit-transform-origin: top left;
          transform-origin: top left;
  -webkit-transform: rotate(90deg) translate(-50%,-50%);
          transform: rotate(90deg) translate(-50%,-50%)
}
.group__accordion__wrap {
  width: 100%;
  max-height: 0;
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
  overflow: hidden
}
.group__accordion__item {
  border: 1.5px solid #000;
  border-top: none;
  padding: 0 20px 20px 20px
}
.group__accordion__item a {
  font-size: inherit
}
.group__accordion--active.group__accordion {
  background: #f5f6f7
}
.group__accordion--active .group__accordion__button {
  background: #f5f6f7;
  border: 1.5px solid #222427;
  border-bottom: none
}
.group__accordion--active .group__accordion__button p {
  color: #000
}
.group__accordion--active .group__accordion__icon::before {
  background: #222427
}
.group__accordion--active .group__accordion__icon::after {
  opacity: 0
}
.group__accordion--active .group__accordion__wrap {
  max-height: 1000px
}
.group__accordion__container {
  max-width: 470px;
  margin: auto;
  margin-bottom: 100px
}
.group__chronology {
  padding-right: 20px;
  border-right: 2px solid #ebebeb;
  margin-bottom: 10px;
  min-height: 125px
}
.group__chronology__num {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  margin-bottom: 20px
}
.group__chronology__num h3 {
  font-size: 40px;
  font-weight: 700;
  color: #83807a;
  margin-right: 50px;
  line-height: 1.3;
  min-width: 110px;
  min-height: 52px
}
.group__chronology__num p {
  font-weight: 700;
  font-size: 24px
}
.group__chronology__num p span {
  font-size: 14px
}
.group__chronology__text {
  font-size: 16px
}
.group__chronology__textOnly {
  min-height: auto
}
.group__link {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  grid-column-gap: 10px;
  margin-bottom: 35px
}
.group__link__item {
  display: inline-block;
  background: #000;
  min-height: 50px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 10px 10px 18px 10px;
  position: relative;
  color: #fff;
  font-size: 13px;
  text-decoration: none
}
.group__link__item::before {
  content: "";
  width: 10px;
  height: 10px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  position: absolute;
  bottom: 6px;
  left: 50%;
  -webkit-transform-origin: top left;
          transform-origin: top left;
  -webkit-transform: rotate(135deg) translate(-50%,-50%);
          transform: rotate(135deg) translate(-50%,-50%)
}
.group__info__item {
  display: grid;
  grid-template-columns: 1fr 1.5fr;
  grid-column-gap: 20px;
  margin-bottom: 100px
}
@media (min-width:751px) and (max-width:1024px) {
  .group__info__item {
    margin-bottom: 0;
    padding: 45px 20px
  }
}
@media (max-width:750px) {
  .group__info__item {
    grid-template-columns: 1fr;
    grid-row-gap: 10px;
    margin-bottom: 0;
    padding: 45px 20px
  }
  .group__info__item:nth-child(odd) {
    background: #e9e9e9
  }
}
.group__info__image {
  grid-column: 1/2;
  grid-row: 1/3
}
@media (max-width:750px) {
  .group__info__image {
    grid-column: 1/2;
    grid-row: 2/3
  }
}
.group__info__image img {
  width: 100%
}
@media (max-width:750px) {
  .group__info__heading {
    grid-row: 1/2
  }
}
@media (max-width:750px) {
  .group__info__text {
    grid-row: 3/4
  }
}
.group__container {
  max-width: 980px;
  width: 100%;
  margin: auto
}
.group__image {
  text-align: center;
  margin-bottom: 80px
}
.group__image img {
  max-width: 470px;
  width: 100%
}
.group__image--twocolumns {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 100px;
  margin-top: 30px
}
@media (max-width:750px) {
  .group__image--twocolumns {
    grid-template-columns: 1fr
  }
}
.group__image--twocolumns .newsDetail__margin {
  text-align: left;
  margin-bottom: 50px
}
.group__image--map {
  border: 1px solid #ddd
}
.professionals__banner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 55px
}
.professionals__banner img {
  max-width: 600px;
  height: 100px;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-box-shadow: 0 0 0 1px #000;
          box-shadow: 0 0 0 1px #000
}
@media (max-width:750px) {
  .professionals__banner img {
    height: auto
  }
}
@media (max-width:750px) {
  .professionals__banner--pc {
    display: none
  }
}
.professionals__banner--sp {
  display: none
}
@media (max-width:750px) {
  .professionals__banner--sp {
    display: block
  }
}
.professionals__point {
  margin-top: 120px
}
.professionals__point__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 40px
}
@media (max-width:750px) {
  .professionals__point__title {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column
  }
}
.professionals__point__title p {
  background: #d28903;
  font-size: 24px;
  font-weight: 700;
  color: #fff;
  margin-right: 30px;
  height: 40px;
  padding: 0 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  line-height: 1.2
}
@media (max-width:750px) {
  .professionals__point__title p {
    width: 100%;
    margin-bottom: 30px;
    margin-right: 0
  }
}
.professionals__point__title p span {
  font-size: 36px;
  line-height: 1
}
.professionals__point__title h2 {
  font-size: 24px;
  font-weight: 700;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1
}
@media (max-width:750px) {
  .professionals__point__title h2 {
    text-align: center
  }
}
.professionals__point__row {
  display: grid;
  grid-template-columns: 380px 1fr;
  grid-gap: 40px
}
@media (max-width:750px) {
  .professionals__point__row {
    grid-template-columns: 1fr
  }
}
.professionals__point__image img {
  width: 100%
}
.professionals__point__text {
  width: 100%;
  font-size: 16px
}
.professionals__point__buttons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  margin-top: 80px
}
@media (max-width:750px) {
  .professionals__point__buttons {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center
  }
}
.professionals__point__buttons > div {
  max-width: 420px;
  width: 100%
}
.professionals__recruit {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-column-gap: 40px;
  margin-top: 35px
}
@media (max-width:750px) {
  .professionals__recruit {
    grid-template-columns: 1fr
  }
}
.professionals__recruit .group__accordion {
  margin-bottom: 10px
}
.professionals__recruit__button {
  width: 100%;
  min-height: 40px;
  background: #222427;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 5px 20px;
  padding-right: 40px;
  position: relative;
  text-decoration: none
}
.professionals__recruit__button span {
  position: absolute;
  top: 50%;
  right: 20px;
  -webkit-transform: translate(0,-50%);
          transform: translate(0,-50%)
}
.professionals__recruit__button span::before {
  content: "";
  width: 15px;
  height: 2px;
  background: #fff;
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: tnralsate(0,-50%);
          transform: tnralsate(0,-50%)
}
.professionals__recruit__button span::after {
  content: "";
  width: 10px;
  height: 10px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  -webkit-transform: rotate(315deg) translate(-15%,-5%);
          transform: rotate(315deg) translate(-15%,-5%);
  -webkit-transform-origin: top left;
          transform-origin: top left;
  position: absolute;
  top: 0;
  right: 0
}
.professionals__grayGrid {
  display: grid;
  grid-template-columns: 1fr 1.2fr;
  grid-gap: 40px
}
@media (max-width:750px) {
  .professionals__grayGrid {
    grid-template-columns: 1fr
  }
}
.professionals__grayGrid__title {
  grid-column: 1/3
}
@media (max-width:750px) {
  .professionals__grayGrid__title {
    grid-column: 1/2
  }
}
@media (max-width:750px) {
  .professionals__grayGrid__image {
    grid-row: 1/2
  }
}
.professionals__grayGrid__image img {
  width: 100%
}
.professionals__grayGrid__text {
  font-size: 16px
}
.professionals__grayGrid__buttons {
  margin-top: 55px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column
}
.professionals__grayGrid__buttons .common-button--whiteArrowBtn {
  width: 100%
}
@media (max-width:750px) {
  .professionals__grayGrid__buttons .common-button--whiteArrowBtn {
    max-width: none
  }
}
.professionals__grayGrid__buttons .common-button--whiteArrowBtn:first-child {
  margin-bottom: 10px
}
.professionals__link__wrapper {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  grid-gap: 40px;
  margin-top: 40px;
  margin-bottom: 100px
}
@media (max-width:750px) {
  .professionals__link__wrapper {
    grid-template-columns: 1fr
  }
}
.professionals__link__hover {
  margin: auto;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transition: .3s cubic-bezier(.45,0,.55,1);
  transition: .3s cubic-bezier(.45,0,.55,1);
  opacity: 0;
  width: 100%;
  height: 100%;
  font-size: 13px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center;
  background: rgba(34,36,39,.8);
  color: #fff;
  padding: 10px 30px
}
.professionals__link__image {
  position: relative;
  margin-bottom: 5px;
  display: inline-block;
  width: 100%
}
.professionals__link__image img {
  width: 100%;
  aspect-ratio: 143/51;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-box-shadow: 0 0 0 1.5px #ddd;
          box-shadow: 0 0 0 1.5px #ddd
}
.professionals__link__image:hover .professionals__link__hover {
  opacity: 1
}
.professionals__link__icon {
  position: absolute;
  top: 10px;
  right: 25px
}
.professionals__link__icon::after,
.professionals__link__icon::before {
  content: "";
  width: 13px;
  height: 10px;
  border: 1.5px solid #000;
  background: #fff;
  position: absolute
}
.professionals__link__icon::before {
  top: 3px;
  left: 0
}
.professionals__link__icon::after {
  top: 0;
  left: 3px
}
.professionals__link__info {
  font-size: 16px;
  font-weight: 700
}
.professionals__link__tag p {
  background: #e0e0e0;
  font-size: 12px;
  border-radius: 2px;
  padding: 0 3px;
  margin-left: auto;
  margin-right: 8px;
  white-space: nowrap;
  display: inline-block
}
.professionals__common__title {
  font-size: 28px;
  line-height: 1.5;
  font-weight: 700;
  letter-spacing: .5px
}
@media (max-width:750px) {
  .professionals__common__title {
    font-size: 26px
  }
}
.professionals__top__title {
  font-size: 24px;
  line-height: 1.5;
  font-weight: 700;
  letter-spacing: .5px
}
.individual__main {
  display: grid;
  grid-template-columns: 400px 1fr;
  grid-column-gap: 40px;
  margin-top: 80px
}
@media (max-width:750px) {
  .individual__main {
    grid-template-columns: 1fr;
    grid-row-gap: 40px
  }
}
.individual__main__img img {
  width: 100%
}
.individual__title {
  font-size: 24px;
  font-weight: 700;
  margin-bottom: 30px
}
.individual__image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 40px
}
.individual__image img {
  width: auto!important;
  max-width: 100%!important
}
.individual__image__row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-column-gap: 20px;
  margin-bottom: 40px;
  place-items: center
}
.individual__image__row img {
  width: auto!important;
  max-width: 100%!important
}
@media (max-width:750px) {
  .individual__image__row {
    grid-template-columns: 1fr;
    grid-row-gap: 40px
  }
}
.individual__image__scroll {
  margin-bottom: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center
}
.individual__image__scroll img {
  width: auto!important;
  max-width: 100%!important
}
@media (max-width:750px) {
  .individual__image__scroll {
    overflow-x: auto
  }
  .individual__image__scroll img {
    height: 250px;
    width: auto!important;
    max-width: 100%!important
  }
}
.individual__image--fit img {
  width: 100%!important;
  max-width: 600px!important
}
.individual__image--top img {
  width: 100%!important;
  max-width: 800px!important
}
.individual__links {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-column-gap: 20px;
  grid-row-gap: 10px
}
@media (max-width:750px) {
  .individual__links {
    grid-template-columns: 1fr;
    grid-row-gap: 10px
  }
}
.individual__links__item {
  min-height: 100px;
  border: 1px solid #ddd;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-right: 20px;
  position: relative;
  -webkit-transition: .3s;
  transition: .3s
}
.individual__links__item img {
  height: 100%;
  width: 100px!important;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transform: scale(1.01);
          transform: scale(1.01);
  z-index: -1
}
.individual__links__item p {
  font-size: 16px;
  font-weight: 700;
  padding: 10px 20px
}
.individual__links__item span {
  position: absolute;
  top: 50%;
  right: 20px;
  -webkit-transform: translate(0,-50%);
          transform: translate(0,-50%)
}
.individual__links__item span::before {
  content: "";
  width: 15px;
  height: 2px;
  background: #222427;
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translate(0,-50%);
          transform: translate(0,-50%)
}
.individual__links__item span::after {
  content: "";
  width: 10px;
  height: 10px;
  border-right: 2px solid #222427;
  border-bottom: 2px solid #222427;
  position: absolute;
  top: 50%;
  right: -4px;
  -webkit-transform: rotate(315deg) translate(-50%,-50%);
          transform: rotate(315deg) translate(-50%,-50%);
  -webkit-transform-origin: top left;
          transform-origin: top left
}
.individual__links__item:hover {
  border: 1px solid #d28903
}
.individual__links__item:hover p {
  color: #d28903
}
.individual__links__item:hover span::before {
  background: #d28903
}
.individual__links__item:hover span::after {
  border-color: #d28903
}
#individual .common-button--grayArrowBtn > a {
  font-size: 16px
}
@media (max-width:750px) {
  .bsmodel__agencyImg--pc {
    display: none
  }
}
@media (min-width:751px) and (max-width:1024px) {
  .bsmodel__agencyImg--pc {
    display: none
  }
}
@media (min-width:1025px) {
  .bsmodel__agencyImg--sp {
    display: none
  }
}
.businessModel__contentWrap {
  margin-top: 32px
}
.businessModel__img {
  width: 60%;
  margin: 40px auto 0
}
.businessModel__img.agencyImg {
  width: 80%
}
@media (max-width:750px) {
  .businessModel__img.agencyImg {
    width: 100%
  }
}
.businessModel__img.solution {
  width: 80%
}
@media (max-width:750px) {
  .businessModel__img.solution {
    width: 100%
  }
}
.businessModel__img > img {
  width: 100%
}
@media (max-width:750px) {
  .businessModel__img {
    width: 100%;
    margin: 20px auto 0
  }
}
.businessField__image {
  text-align: center
}
.businessField__image img {
  max-width: 430px
}
.businessField__num {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: 90px
}
@media (max-width:750px) {
  .businessField__num {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column
  }
}
.businessField__num__item:not(:last-child) {
  margin-right: 100px
}
@media (max-width:750px) {
  .businessField__num__item:not(:last-child) {
    margin-right: 0;
    margin-bottom: 20px
  }
}
.businessField__num__heading {
  font-size: 26px;
  font-weight: 700;
  margin-bottom: 20px
}
.businessField__num__text {
  font-size: 100px;
  font-weight: 700;
  line-height: 1;
  font-family: din-condensed,sans-serif
}
@media (max-width:750px) {
  .businessField__num__text {
    font-size: 80px
  }
}
.businessField__num__unit {
  font-size: 32px
}
.businessField__block {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 90px
}
@media (max-width:750px) {
  .businessField__block {
    grid-template-columns: 1fr
  }
}
.businessField__block__title {
  padding-bottom: 20px;
  border-bottom: 1px solid #aaa;
  width: 100%;
  display: inline-block
}
.businessField__block__title__row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative
}
.businessField__block__title__text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center
}
.businessField__block__title__text img {
  width: 25px;
  height: 33px;
  width: auto!important;
  margin-right: 5px;
  padding-bottom: 3px
}
.businessField__block__title__text p {
  font-size: 24px;
  font-weight: 700
}
.businessField__block__title__arrow {
  position: absolute;
  top: 50%;
  right: 15px
}
.businessField__block__title__arrow::before {
  content: "";
  width: 12px;
  height: 2px;
  background: #1f2224;
  position: absolute;
  top: 0;
  right: 0
}
.businessField__block__title__arrow::after {
  content: "";
  width: 8px;
  height: 8px;
  border-right: 2px solid #1f2224;
  border-bottom: 2px solid #1f2224;
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: rotate(315deg) translate(2px,-2px);
          transform: rotate(315deg) translate(2px,-2px)
}
.businessField__block__item {
  padding-top: 50px
}
.businessField__block__list {
  padding: 0;
  margin: 0
}
.businessField__block__list li {
  margin-bottom: 25px;
  font-size: 14px
}
.businessField__block__list li:last-child {
  margin-bottom: 0
}
.businessField__block__list a {
  font-size: 14px!important;
  color: #1f2224!important;
  text-decoration: none!important;
  line-height: 1;
  padding-left: 11px;
  position: relative;
  border-bottom: 1px solid #1f2224
}
.businessField__block__list a::before {
  content: "";
  width: 7px;
  height: 7px;
  border-right: 1px solid #1f2224;
  border-top: 1px solid #1f2224;
  position: absolute;
  top: 6px;
  left: 0;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg)
}
.businessField__block__list a:hover {
  color: #d28903!important;
  border-color: #d28903!important
}
.businessField__block__list a:hover::before {
  border-color: #d28903
}
.businessField__block--creative .businessField__block__title {
  border-bottom: 1.5px solid #8b6678
}
.businessField__block--medical .businessField__block__title {
  border-bottom: 1.5px solid #5e753d
}
.businessField__block--construction .businessField__block__title {
  border-bottom: 1.5px solid #6a6a80
}
.businessField__block--cs .businessField__block__title {
  border-bottom: 1.5px solid #92734a
}
.businessField__block--lc .businessField__block__title {
  border-bottom: 1.5px solid #715338
}
.businessField__block--qol .businessField__block__title {
  border-bottom: 1.5px solid #2b5c7a
}
.businessField__block--ms .businessField__block__title {
  border-bottom: 1.5px solid #7b7d27
}
.businessField__GN__title {
  font-size: 40px;
  font-weight: 700;
  font-family: din-condensed,sans-serif;
  color: #fff;
  margin-bottom: 60px;
  text-align: center
}
.businessField__GN .businessField__num__heading,
.businessField__GN .businessField__num__text {
  color: #fff
}
.businessField--kv {
  position: relative
}
.businessField--kv::before {
  content: "";
  width: 100%;
  height: 100%;
  background: #000;
  opacity: .5;
  position: absolute;
  top: 0;
  left: 0
}
a.businessField__block__title:hover {
  border-bottom: 1.5px solid #d28903!important
}
a.businessField__block__title:hover .businessField__block__title__text p {
  color: #d28903
}
a.businessField__block__title:hover .businessField__block__title__arrow::before {
  background: #d28903
}
a.businessField__block__title:hover .businessField__block__title__arrow::after {
  border-color: #d28903
}
.common-section__GN {
  background: #384551;
  padding: 60px 0 80px 0
}
@media (max-width:750px) {
  .common-section--creative {
    margin-bottom: 100px
  }
}
.common-section--creative .common-heading--h3 {
  color: #8b6678
}
.common-section--creative .businessField__num__heading,
.common-section--creative .businessField__num__text {
  color: #8b6678
}
@media (max-width:750px) {
  .common-section--medical {
    margin-bottom: 100px
  }
}
.common-section--medical .common-heading--h3 {
  color: #5e753d
}
.common-section--medical .businessField__num__heading,
.common-section--medical .businessField__num__text {
  color: #5e753d
}
@media (max-width:750px) {
  .common-section--construction {
    margin-bottom: 100px
  }
}
.common-section--construction .common-heading--h3 {
  color: #6a6a80
}
.common-section--construction .businessField__num__heading,
.common-section--construction .businessField__num__text {
  color: #6a6a80
}
@media (max-width:750px) {
  .common-section--cs {
    margin-bottom: 100px
  }
}
.common-section--cs .common-heading--h3 {
  color: #92734a
}
.common-section--cs .businessField__num__heading,
.common-section--cs .businessField__num__text {
  color: #92734a
}
@media (max-width:750px) {
  .common-section--lc {
    margin-bottom: 100px
  }
}
.common-section--lc .common-heading--h3 {
  color: #715338
}
.common-section--lc .businessField__num__heading,
.common-section--lc .businessField__num__text {
  color: #715338
}
@media (max-width:750px) {
  .common-section--qol {
    margin-bottom: 100px
  }
}
.common-section--qol .common-heading--h3 {
  color: #2b5c7a
}
.common-section--qol .businessField__num__heading,
.common-section--qol .businessField__num__text {
  color: #2b5c7a
}
@media (max-width:750px) {
  .common-section--ms {
    margin-bottom: 100px
  }
}
.common-section--ms .common-heading--h3 {
  color: #7b7d27
}
.common-section--ms .businessField__num__heading,
.common-section--ms .businessField__num__text {
  color: #7b7d27
}
.errorPage {
  margin-top: 90px
}
@media (max-width:750px) {
  .errorPage {
    margin-top: 9.6vh
  }
}
@media (min-width:751px) and (max-width:1024px) {
  .errorPage {
    margin-top: 12vh
  }
}
.errorPage__heading {
  padding: 90px 0 60px
}
@media (max-width:750px) {
  .errorPage__heading {
    padding: 6vh 0
  }
}
.errorPage__text {
  margin-bottom: 120px;
  padding: 8%;
  background-color: #ebebeb
}
@media (max-width:750px) {
  .errorPage__text {
    padding: 5%;
    margin-bottom: 80px
  }
}
.errorPage__textInner {
  background-color: #fff;
  padding: 9%;
  border-radius: 10px;
  max-width: 1020px;
  margin: auto
}
.errorPage__textInner > p {
  font-size: 18px;
  line-height: 2.5;
  background-color: #fff
}
@media (max-width:750px) {
  .errorPage__textInner > p {
    font-size: 14px
  }
}
.errorPage__btnWrap {
  margin-top: 100px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}
@media (max-width:750px) {
  .errorPage__btnWrap {
    margin-top: 80px;
    display: block
  }
}
@media (max-width:750px) {
  .errorPage .common-heading--h1 {
    font-size: 20px
  }
}
.errorPage .grayArrowBtn {
  width: 335px
}
@media (min-width:751px) and (max-width:1024px) {
  .errorPage .grayArrowBtn {
    width: 250px
  }
}
@media (max-width:750px) {
  .errorPage .grayArrowBtn {
    width: 90%
  }
  .errorPage .grayArrowBtn > a {
    line-height: 50px;
    height: 50px;
    font-size: 14px
  }
}
.features__main {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-column-gap: 60px;
  margin-bottom: 85px
}
@media (max-width:750px) {
  .features__main {
    grid-template-columns: 1fr;
    grid-row-gap: 100px;
    margin-bottom: 60px
  }
}
@media (max-width:750px) {
  .features__main__col--underbar {
    position: relative
  }
  .features__main__col--underbar .features__main__underbar {
    position: absolute;
    bottom: 0;
    right: 0
  }
}
.features__main__heading {
  font-size: 69px;
  font-weight: 700;
  font-family: Barlow,sans-serif;
  line-height: 1;
  margin-bottom: 50px
}
@media (min-width:751px) and (max-width:1024px) {
  .features__main__heading {
    font-size: 60px
  }
}
@media (max-width:750px) {
  .features__main__heading {
    font-size: 45px;
    margin-bottom: 0
  }
}
.features__main__underbar {
  padding-bottom: 20px;
  position: relative;
  font-size: 24px;
  font-weight: 700
}
@media (max-width:750px) {
  .features__main__underbar {
    margin-bottom: 5px
  }
}
.features__main__underbar::before {
  content: "";
  width: 40px;
  height: 4px;
  background: #000;
  position: absolute;
  bottom: 0;
  left: 0
}
.features__main__label {
  font-size: 24px;
  color: #fff;
  background: #384551;
  text-align: center;
  width: 100%;
  margin-bottom: 30px;
  font-family: din-condensed,sans-serif
}
.features__main__cat {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-column-gap: 15px;
  grid-row-gap: 30px
}
@media (max-width:750px) {
  .features__main__cat {
    grid-template-columns: 1fr 1fr;
    grid-row-gap: 20px
  }
}
.features__main__cat__item img {
  max-width: 100%
}
.features__main--02 {
  margin-bottom: 40px
}
.features__main--02 .features__main__underbar {
  margin-bottom: 40px
}
.features__main__heading02 {
  font-size: 32px;
  font-weight: 700;
  margin-bottom: 60px
}
@media (max-width:750px) {
  .features__main__heading02 {
    font-size: 25px
  }
}
.features__main__image {
  width: 100%;
  margin-bottom: 40px
}
.features__achievement {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: 50px
}
.features__achievement__col {
  margin-right: 15px
}
@media (max-width:750px) {
  .features__achievement__col {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-right: 0
  }
  .features__achievement__col:not(:last-child) {
    margin-bottom: 10px
  }
}
.features__achievement__text {
  font-size: 20px;
  font-weight: 700;
  margin-bottom: 10px
}
.features__achievement__number {
  font-size: 58px;
  font-weight: 700;
  font-family: din-condensed,sans-serif;
  line-height: 1;
  margin-left: auto
}
.features__achievement__number span {
  font-size: 30px
}
@media (max-width:750px) {
  .features__achievement__number--blank {
    width: 30px;
    display: inline-block
  }
}
.features__achievement__images {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-column-gap: 20px
}
@media (max-width:750px) {
  .features__achievement__images p {
    grid-column: 1/3;
    margin-top: 10px
  }
}
.features__achievement__images img {
  width: 100%
}
.features__text {
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 30px
}
.features__text--center {
  text-align: center
}
@media (max-width:750px) {
  .features__text--center {
    text-align: left
  }
}
.features__text--maxWidth {
  max-width: 800px;
  margin: auto;
  margin-bottom: 30px
}
.features__blackBox {
  background: #222427;
  width: 100px;
  height: 60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fff;
  font-size: 20px;
  margin-right: 20px
}
@media (max-width:750px) {
  .features__blackBox {
    font-size: 18px;
    margin-right: 0;
    height: 50px
  }
}
.features__orange {
  color: #d28903
}
.features__anchors p {
  text-decoration: none
}
.features__anchors__item {
  width: 100%;
  min-height: 60px;
  background: #eee;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  position: relative;
  margin-bottom: 10px;
  text-decoration: none
}
@media (max-width:750px) {
  .features__anchors__item {
    height: auto;
    margin-bottom: 20
  }
  .features__anchors__item .features__blackBox {
    width: 100%;
    height: 40px
  }
}
.features__anchors__text {
  font-size: 15px;
  color: #000;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  padding-right: 35px
}
@media (max-width:750px) {
  .features__anchors__text {
    width: 100%;
    padding: 20px 10px;
    padding-right: 55px
  }
  .features__anchors__text span {
    display: block
  }
}
.features__anchors__arrow {
  position: absolute;
  top: 40%;
  right: 20px;
  width: 9px;
  height: 9px;
  border-right: 1.5px solid #222427;
  border-bottom: 1.5px solid #222427;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg)
}
@media (max-width:750px) {
  .features__anchors__arrow {
    top: calc(20px + 50%)
  }
}
.features__heading {
  display: grid;
  grid-template-columns: 100px 1fr;
  margin-bottom: 40px;
  grid-column-gap: 20px
}
@media (max-width:750px) {
  .features__heading {
    grid-template-columns: 1fr;
    grid-row-gap: 20px
  }
}
.features__heading__text {
  font-size: 20px;
  line-height: 1.4;
  font-weight: 700
}
@media (max-width:750px) {
  .features__heading__text {
    font-size: 16px
  }
}
.features__heading__text span {
  font-size: 26px
}
@media (max-width:750px) {
  .features__heading__text span {
    font-size: 22px
  }
}
.features__row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-column-gap: 30px
}
@media (max-width:750px) {
  .features__row {
    grid-template-columns: 1fr;
    grid-row-gap: 30px
  }
}
.features__col img {
  width: 100%
}
.features__col .grayArrowBtn {
  margin: 0
}
.features__items {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-column-gap: 40px
}
.features__items img {
  border-radius: 8px
}
.features__auto {
  margin: auto!important
}
.features__image {
  margin: auto;
  margin-bottom: 80px
}
@media (max-width:750px) {
  .features__image {
    margin-bottom: 40px
  }
}
.features__image img {
  max-width: 100%
}
.features__listLink {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  margin: 30px 0
}
.features--right {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end
}
.grayArrowBtn--features > a {
  height: auto;
  min-height: 60px;
  line-height: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center
}
.grayArrowBtn--features > a .arrow--grayBtn {
  position: absolute;
  right: 18px;
  top: 50%;
  -webkit-transform: translate(0,-9px);
          transform: translate(0,-9px)
}
.grayArrowBtn--features02 {
  margin: 0
}
@media (max-width:750px) {
  .grayArrowBtn--features02 {
    margin: auto
  }
}
main.subpage {
  overflow: hidden
}
.subpage .commonBanner {
  position: relative;
  display: block
}
.subpage .commonBanner:hover .commonBanner__onText {
  opacity: 1
}
.subpage .commonBanner__onText {
  margin: auto;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transition: .3s cubic-bezier(.45,0,.55,1);
  transition: .3s cubic-bezier(.45,0,.55,1);
  opacity: 0;
  width: 100%;
  height: 100%;
  font-size: 13px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center;
  background: rgba(34,36,39,.8);
  color: #fff;
  padding: 10px 20px
}
.subpage .commonBanner__name {
  font-size: 14px;
  font-weight: 700;
  background: unset;
  border-radius: unset;
  padding: 0;
  margin-top: 5px;
  margin-left: 0;
  margin-right: 8px
}
@media screen and (min-width:768px) {
  .subpage .commonBanner__name {
    font-size: 16px
  }
}
.subpage .commonBanner__tagWrap {
  margin-left: 0;
  margin-right: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap
}
.subpage .commonBanner__tag {
  margin-top: 2px;
  margin-right: 8px;
  background: #e0e0e0;
  font-size: 12px;
  border-radius: 2px;
  padding: 0 3px;
  margin-left: 0;
  font-weight: 500
}
.subpage .serviceList__offerLink + .commonBanner__tagWrap {
  margin-top: 4px
}
.subpage img {
  width: 100%
}
.subpage .pc {
  display: block
}
@media screen and (min-width:1025px) {
  .subpage .pc {
    display: none
  }
}
.subpage .sp {
  display: none
}
@media screen and (min-width:1025px) {
  .subpage .sp {
    display: block
  }
}
.subpage .breadcrumb {
  background-color: #eee;
  margin: 64px auto 0
}
.subpage .breadcrumb__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 100%;
  max-width: 1240px;
  margin: 0 auto;
  padding: 10px 20px
}
.subpage .breadcrumb__line {
  display: block;
  margin: 0 4px
}
.subpage .breadcrumb li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  line-height: 1
}
.subpage a {
  font-size: 12px;
  letter-spacing: 0;
  color: #222427;
  text-decoration: none
}
.subpage .contentWrap {
  margin: 0 auto;
  padding: 0 20px;
  width: 100%;
  max-width: 1020px
}
.subpage .contentWrap.md {
  max-width: 1020px
}
.subpage .kv {
  padding: 42px 0;
  background-color: #f8f9fa
}
@media screen and (min-width:1025px) {
  .subpage .kv {
    padding: 84px 0
  }
}
.subpage .kv__ttl {
  font-size: 32px;
  letter-spacing: 0;
  line-height: 1;
  text-align: center;
  font-weight: 700
}
.subpage .kv__line {
  display: block;
  margin: 20px auto 0;
  width: 40px;
  height: 4px;
  background-color: #222427
}
.subpage ::-ms-expand {
  display: none
}
.subpage .selectBoxBlc {
  position: relative;
  display: inline-block
}
.subpage .selectBoxBlc::after {
  cursor: pointer;
  bottom: 17px;
  right: 15px;
  position: absolute;
  content: "";
  width: 10px;
  height: 6px;
  background: url(../images/ir/news_arrow.svg) center center/contain no-repeat
}
.subpage .selectBox {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  margin-top: 80px;
  width: 140px;
  background: #000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 14px;
  height: 40px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 16px;
  color: #fff;
  position: relative;
  cursor: pointer
}
.subpage .selectBox__year {
  font-size: 16px;
  color: #fff
}
.subpage .commonTtl {
  font-size: 26px;
  line-height: 1;
  font-weight: 700
}
@media screen and (min-width:768px) {
  .subpage .commonTtl {
    font-size: 28px
  }
}
.subpage .commonSubttl {
  font-size: 20px;
  line-height: 1;
  font-weight: 700;
  position: relative
}
.subpage .-uLine {
  position: relative
}
.subpage .-uLine::after {
  content: "";
  width: 20px;
  height: 2px;
  background: #222427;
  display: block;
  margin-top: 10px
}
.subpage .-lLine {
  padding-left: 10px;
  position: relative
}
.subpage .-lLine::before {
  content: "";
  width: 5px;
  height: 20px;
  background: #222427;
  position: absolute;
  top: 3px;
  left: 0
}
.subpage .imgKv {
  width: 100%;
  height: 100vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  background-image: url(../images/ir/kv_img.jpg);
  max-height: 500px
}
@media screen and (min-width:768px) {
  .subpage .imgKv {
    background-image: url(../images/ir/kv_img_pc.jpg)
  }
}
@media screen and (min-width:768px) {
  .subpage .imgKv {
    width: 100%;
    height: 500px
  }
}
.subpage .imgKv__ttl {
  color: #fff;
  font-size: 34px;
  font-weight: 700;
  text-align: center;
  line-height: 1;
  letter-spacing: .5px
}
@media screen and (min-width:1025px) {
  .subpage .imgKv__ttl {
    font-size: 36px
  }
}
.subpage .imgKv__line {
  width: 10%;
  display: block;
  margin: 16px auto 0;
  height: 4px;
  background-color: #fff
}
@media screen and (min-width:1025px) {
  .subpage .imgKv__line {
    width: 2.5%
  }
}
.subpage .pdf__icon::after {
  content: "";
  display: inline-block;
  width: 14px;
  height: 14px;
  background: url(../images/common/icon_pdf.svg) center center/contain no-repeat
}
.subpage .movei__link::after {
  content: "";
  display: inline-block;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 16px;
  height: 16px;
  vertical-align: middle;
  background: url(../images/common/icon_movie.svg) center center/contain no-repeat
}
.subpage .dlBlk {
  margin: 40px auto 56px;
  padding: 16px 22.1px 16px 20px;
  background-color: #f5f6f7;
  width: 100%;
  max-width: 450px
}
.subpage .dlBlk__txt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 100%;
  font-size: 16px;
  letter-spacing: 0;
  line-height: 1.5
}
.subpage .dlBlk__txt::after {
  content: "";
  display: block;
  width: 12.6px;
  height: 11px;
  background: url(../images/common/icon_dl.svg) center center/contain no-repeat
}
.subpage .dlBlk .arrow__iconHover {
  border: 1px solid #222427
}
.subpage .linkBlk {
  margin-top: 40px
}
.subpage .linkBlk__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: 20px
}
.subpage .linkBlk__list li {
  width: 50%;
  line-height: 1;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: #f5f6f7;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-bottom: 1px solid #ddd;
  border-right: 1px solid #ddd;
  position: relative;
  box-sizing: border-box;
  -webkit-transition: color .3s;
  transition: color .3s
}
@media screen and (min-width:1025px) {
  .subpage .linkBlk__list li {
    width: calc(100% / 3)
  }
}
.subpage .linkBlk__list li:hover {
  color: #d28903!important;
  outline: 1px solid #d28903;
  position: relative;
  z-index: 3
}
.subpage .linkBlk__list li:hover .arrow-glay span {
  background-color: #d28903
}
.subpage .linkBlk__list li:hover .arrow-glay span::before,
.subpage .linkBlk__list li:hover .arrow-glay span:after {
  content: "";
  color: #d28903;
  border-color: #d28903;
  background: #d28903
}
.subpage .linkBlk__list li:hover a {
  color: #d28903!important
}
.subpage .linkBlk__list li:nth-of-type(odd) {
  border-left: 1px solid #ddd
}
@media screen and (min-width:1025px) {
  .subpage .linkBlk__list li:nth-of-type(odd) {
    border-left: none
  }
}
.subpage .linkBlk__list li:nth-of-type(1),
.subpage .linkBlk__list li:nth-of-type(2) {
  border-top: 1px solid #ddd
}
.subpage .linkBlk__list li:last-of-type {
  border-right: 1px solid #ddd
}
@media screen and (min-width:1025px) {
  .subpage .linkBlk__list li:nth-of-type(3n) {
    border-bottom: 1px solid #ddd
  }
  .subpage .linkBlk__list li:nth-of-type(3) {
    border-top: 1px solid #ddd
  }
  .subpage .linkBlk__list li:nth-of-type(3n+1) {
    border-left: 1px solid #ddd
  }
}
.subpage .linkBlk__list li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 100%;
  padding: 20px 30px 20px 20px;
  font-size: 16px;
  line-height: 1.333;
  font-weight: 700;
  color: #000
}
.subpage .linkBlk__ttl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 22px;
  letter-spacing: 0;
  line-height: 1;
  color: #000;
  font-weight: 500
}
.subpage .linkBlk__ttl::before {
  content: "";
  display: block;
  width: 5px;
  height: 22px;
  margin-right: 6px;
  background-color: #222427
}
@media screen and (min-width:768px) {
  .subpage .linkBlk__ttl::before {
    height: 22px
  }
}
.subpage .linkBlk.mt {
  margin-top: 80px
}
.subpage .linkBlk.-col .linkBlk__list {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  border: 1px solid #ddd
}
@media screen and (min-width:1025px) {
  .subpage .linkBlk.-col .linkBlk__list {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    border: none
  }
}
.subpage .linkBlk.-col .linkBlk__list li {
  width: 100%;
  border: none;
  border-right: 1px solid #ddd
}
@media screen and (min-width:1025px) {
  .subpage .linkBlk.-col .linkBlk__list li {
    width: calc(100% / 3)
  }
}
.subpage .linkBlk.-col .linkBlk__list li:not(:last-of-type) {
  border-bottom: 1px solid #ddd
}
@media screen and (min-width:1025px) {
  .subpage .linkBlk.-col .linkBlk__list li:last-of-type {
    border-bottom: 1px solid #ddd
  }
  .subpage .linkBlk.-col .linkBlk__list li:nth-of-type(3n+1) {
    border-left: 1px solid #ddd
  }
  .subpage .linkBlk.-col .linkBlk__list li:nth-of-type(-n+3) {
    border-top: 1px solid #ddd
  }
}
.subpage .bnrBlk {
  margin-top: 90px
}
.subpage .bnrBlk__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column
}
@media screen and (min-width:1025px) {
  .subpage .bnrBlk__list {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    max-width: 980px;
    margin: 0 auto 90px
  }
}
.subpage .bnrBlk__list li {
  position: relative;
  line-height: 1;
  height: 41.667vw
}
@media screen and (min-width:1025px) {
  .subpage .bnrBlk__list li {
    width: 46%;
    height: 14.648vw
  }
}
@media screen and (min-width:1025px) {
  .subpage .bnrBlk__list li {
    width: 46%;
    height: 150px
  }
}
.subpage .bnrBlk__list li:nth-of-type(1) {
  background: url(../images/common/ir_link01.jpg) top center/cover no-repeat
}
.subpage .bnrBlk__list li:nth-of-type(2) {
  margin-top: 10px;
  background: url(../images/common/ir_link02.jpg) top center/cover no-repeat
}
@media screen and (min-width:1025px) {
  .subpage .bnrBlk__list li:nth-of-type(2) {
    margin-top: 0
  }
}
.subpage .bnrBlk__list li::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,.5)
}
.subpage .bnrBlk__list li a {
  position: relative;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 0 24px;
  height: 100%;
  width: 100%
}
.subpage .bnrBlk__list li a::after {
  content: "";
  display: inline-block;
  width: 13px;
  height: 12px;
  background: url(../images/common/icon_arrow_w.svg)
}
.subpage .bnrBlk__list li a .bnrBlk__txt {
  font-size: 16px;
  letter-spacing: 0;
  color: #fff
}
.subpage .arrow__icon::after {
  content: "";
  display: inline-block;
  width: 11px;
  height: 10px;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 11px;
          flex: 0 0 11px;
  background: url(../images/common/icon_arrow.svg)
}
.subpage .arrow-glay {
  position: absolute;
  right: 18px;
  top: 50%;
  -webkit-transform: translate(0,-50%);
          transform: translate(0,-50%)
}
.subpage .arrow-glay .arrow {
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 2px;
  background-color: #222427;
  position: relative;
  -webkit-transition: .3s;
  transition: .3s
}
.subpage .arrow-glay .arrow::before,
.subpage .arrow-glay .arrow:after {
  content: "";
  display: block;
  width: 8px;
  height: 2px;
  background-color: #222427;
  position: absolute;
  right: 0;
  -webkit-transition: .3s;
  transition: .3s
}
.subpage .arrow-glay .arrow::before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  top: -3px
}
.subpage .arrow-glay .arrow:after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  bottom: -3px
}
.subpage .arrow-glay.-left {
  left: 18px;
  right: auto
}
.subpage .arrow-glay.-left .arrow::before,
.subpage .arrow-glay.-left .arrow:after {
  content: "";
  left: 0;
  right: auto
}
.subpage .arrow-glay.-left .arrow::before {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  top: -3px
}
.subpage .arrow-glay.-left .arrow:after {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  bottom: -3px
}
.subpage .arrow__iconHover {
  -webkit-transition: .3s;
  transition: .3s;
  position: relative
}
.subpage .arrow__iconHover input {
  -webkit-transition: .3s;
  transition: .3s
}
.subpage .arrow__iconHover:hover {
  color: #d28903!important;
  border: 1px solid #d28903!important
}
.subpage .arrow__iconHover:hover input {
  color: #d28903
}
.subpage .arrow__iconHover:hover .arrow-glay span {
  background-color: #d28903
}
.subpage .arrow__iconHover:hover .arrow-glay span::before,
.subpage .arrow__iconHover:hover .arrow-glay span:after {
  content: "";
  color: #d28903;
  border-color: #d28903;
  background: #d28903
}
.subpage .arrow__iconHover-underLine {
  -webkit-transition: .3s;
  transition: .3s;
  position: relative
}
.subpage .arrow__iconHover-underLine a,
.subpage .arrow__iconHover-underLine input {
  -webkit-transition: .3s;
  transition: .3s
}
.subpage .arrow__iconHover-underLine .arrow-glay {
  -webkit-transform: scale(.9) translate(0,-50%);
          transform: scale(.9) translate(0,-50%);
  right: 15px
}
.subpage .arrow__iconHover-underLine:hover {
  color: #d28903!important;
  border-color: #d28903!important
}
.subpage .arrow__iconHover-underLine:hover .arrow-glay span {
  background-color: #d28903
}
.subpage .arrow__iconHover-underLine:hover .arrow-glay span::before,
.subpage .arrow__iconHover-underLine:hover .arrow-glay span:after {
  content: "";
  color: #d28903;
  border-color: #d28903;
  background: #d28903
}
.subpage .arrow__iconHover-underLine:hover a {
  color: #d28903!important
}
.subpage .-borderLglay {
  border: 1px solid #ddd
}
.subpage .-borderGlay {
  border: 1px solid #222427
}
.subpage .txtBase {
  margin-top: 80px
}
.subpage .txtBase__ttl {
  font-size: 22px;
  line-height: 1.4;
  font-weight: 400
}
.subpage .txtBase__ttl::after {
  content: "";
  display: block;
  margin-top: 10px;
  width: 20px;
  height: 2px;
  background-color: #222427
}
.subpage .txtBase__ttl:not(:first-of-type) {
  margin-top: 60px
}
@media screen and (min-width:1025px) {
  .subpage .txtBase__ttl {
    font-size: 24px
  }
}
.subpage .txtBase__ttl--h4 {
  color: #000;
  font-size: 22px;
  font-weight: 400;
  line-height: 1;
  border-left: 4px solid #222427;
  padding-left: 6px;
  letter-spacing: .5px;
  margin-top: 40px
}
.subpage .txtBase__ttl--h4:not(:first-of-type) {
  margin-top: 40px
}
.subpage .txtBase__subTtl {
  margin-top: 22px;
  font-size: 22px
}
.subpage .txtBase__lead {
  margin-bottom: 40px;
  font-size: 16px;
  line-height: 1.5714
}
.subpage .txtBase__txt {
  font-size: 16px;
  line-height: 1.5714;
  margin-top: 30px
}
.subpage .txtBase__innerLink {
  text-decoration: underline;
  font: inherit;
  word-break: break-all
}
.subpage .txtBase__link {
  display: inline-block;
  margin-top: 10px;
  font: inherit;
  text-decoration: underline
}
.subpage .txtBase__txt-innerBold {
  font-weight: 700
}
.subpage .txtBase__txt-bold {
  display: block;
  font-weight: 700;
  font-size: 16px;
  margin-top: 8px;
  margin-bottom: 4px
}
.subpage .txtBase .bnrBlk__list li.-planLink {
  background: url(../images/ir/strategy_link_img.png) top center/cover no-repeat
}
@media screen and (min-width:1025px) {
  .subpage .txtBase .bnrBlk__list li.-planLink {
    margin-left: auto;
    margin-right: auto
  }
}
.subpage .txtBase__table {
  margin-top: 16px;
  border: unset;
  border-spacing: 0;
  border: 1px solid #ddd;
  width: 100%
}
.subpage .txtBase__table tr td,
.subpage .txtBase__table tr th {
  vertical-align: center;
  line-height: 2;
  padding: 3px 12px;
  border-spacing: 0;
  font-weight: 400
}
.subpage .txtBase__table tr td.bg,
.subpage .txtBase__table tr th.bg {
  background: #f8f9fa
}
.subpage .txtBase__table tr th {
  width: 40%;
  text-align: right;
  font-size: 15px
}
.subpage .txtBase__table tr td {
  text-align: left;
  font-size: 13px
}
.subpage .txtBase__table tr:not(:last-of-type) td,
.subpage .txtBase__table tr:not(:last-of-type) th {
  border-bottom: 1px solid #ddd;
  border-right: 1px solid #ddd
}
.subpage .txtBase__table tr:last-of-type td,
.subpage .txtBase__table tr:last-of-type th {
  border-right: 1px solid #ddd
}
.subpage .txtBase__table tr td:last-child,
.subpage .txtBase__table tr th:last-child {
  border-right: unset
}
@media screen and (min-width:1025px) {
  .subpage .txtBase__table.column2 {
    max-width: 450px
  }
}
.subpage .txtBase__table.column2 th {
  width: 40%
}
.subpage .txtBase__table.column2 td {
  width: calc(100% - 40%)
}
.subpage .txtBase__table.column3 tr th:first-of-type {
  width: 45%;
  text-align: left
}
.subpage .txtBase__table.column3 tr th:not(:first-of-type) {
  width: calc(55% / 2);
  text-align: right
}
.subpage .txtBase__table.column3 tr td {
  width: calc(55% / 2);
  text-align: right
}
@media screen and (min-width:1025px) {
  .subpage .txtBase__table.columnAdd {
    max-width: 450px
  }
}
.subpage .txtBase__table.columnAdd tr th:first-of-type {
  width: 45%;
  text-align: left
}
.subpage .txtBase__table.columnAdd tr th:not(:first-of-type) {
  width: calc(55% / 2);
  text-align: left
}
.subpage .txtBase__table.columnAdd tr td {
  width: 55%;
  text-align: left
}
.subpage .txtBase__scrBlock {
  overflow: scroll
}
.subpage .txtBase__scrBlock .txtBase__table td,
.subpage .txtBase__scrBlock .txtBase__table th {
  width: auto
}
.subpage .txtBase__table.column6 tr td,
.subpage .txtBase__table.column6 tr th {
  white-space: nowrap
}
.subpage .txtBase__table.column6 tr td {
  text-align: right
}
.subpage .txtBase__table.column6 tr th:first-of-type {
  background: #f8f9fa
}
.subpage .txtBase__table.column6 tr:first-of-type th {
  text-align: center
}
.subpage .txtBase .colorBox {
  margin-top: 8px;
  background: #ddd;
  padding: 11px 10px
}
.subpage .txtBase .colorBox h4 {
  font-size: 18px;
  font-weight: 700
}
.subpage .txtBase .colorBox__txt {
  font-size: 16px;
  line-height: 2;
  padding-left: 20px
}
.subpage .business_design-ttl {
  margin-top: 90px
}
.subpage .business_design_banner {
  margin-top: 40px
}
.subpage .business_design_banner a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  height: 244px;
  font-size: 32px;
  line-height: 1;
  color: #fff;
  background: url(../images/common/business_design_banner.jpg) center center/cover no-repeat
}
@media screen and (min-width:768px) {
  .subpage .business_design_banner a {
    height: 494px;
    background-image: url(../images/common/business_design_banner-pc.jpg)
  }
}
.subpage .global__btn {
  cursor: pointer;
  width: 100%;
  margin: 0 auto;
  height: 60px;
  background: #050505;
  border: 1px solid #222427;
  padding: 0 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  font-weight: 700;
  font-size: 16px;
  z-index: 6;
  max-width: 385px
}
@media screen and (min-width:1025px) {
  .subpage .global__btn {
    max-width: 385px
  }
}
.subpage .global__btn.-glayBtn {
  background: #f5f6f7
}
.subpage .servicelinks {
  padding: 60px 0;
  background: #f5f6f7
}
@media screen and (min-width:1025px) {
  .subpage .servicelinks__list {
    max-width: 980px;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
  }
}
.subpage .servicelinks__list li {
  width: 100%;
  max-width: 300px;
  margin: 0 auto
}
.subpage .servicelinks__list li:not(:first-of-type) {
  margin-top: 10px
}
@media screen and (min-width:1025px) {
  .subpage .servicelinks__list li {
    margin: 0
  }
  .subpage .servicelinks__list li:not(:first-of-type) {
    margin-top: 0;
    margin-left: 40px
  }
}
.subpage .servicelinks__list li .global__btn {
  background: #fff
}
.subpage .commonBtn-plus {
  width: 100%;
  height: 58px;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  background: #222427;
  font-weight: 500;
  font-size: 18px;
  line-height: 1.555;
  color: #fff;
  padding: 0 20px;
  cursor: pointer
}
.subpage .commonBtn-plus::after,
.subpage .commonBtn-plus::before {
  content: "";
  display: block;
  background-color: #fff;
  position: absolute;
  top: 50%;
  width: 15px;
  height: 2px;
  right: 25px
}
.subpage .commonBtn-plus::after {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
  -webkit-transition-duration: .3s;
          transition-duration: .3s
}
.subpage .commonBtn-plus.is-active::before {
  opacity: 0
}
.subpage .commonBtn-plus.is-active::after {
  -webkit-transform: rotate(0);
          transform: rotate(0)
}
.subpage .commonBtnList {
  max-width: 980px;
  margin: 0 auto
}
@media screen and (min-width:1025px) {
  .subpage .commonBtnList {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between
  }
}
.subpage .commonBtnList li {
  width: 100%;
  max-width: 335px
}
@media screen and (min-width:1025px) {
  .subpage .commonBtnList li {
    width: 30%
  }
}
.subpage .commonBtn-arrow {
  width: 100%;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  position: relative;
  background: #222427;
  font-weight: 500;
  font-size: 18px;
  line-height: 1.555;
  color: #fff;
  padding: 15px 20px;
  cursor: pointer
}
.subpage .commonBtn-arrow:after {
  content: "";
  height: 14px;
  width: 7.78px;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
  margin-left: 5px;
  background: url(../images/about_us/overview_arrow_w.svg) no-repeat center center/cover
}
.subpage .js-txtWrap {
  height: 0;
  overflow: hidden;
  -webkit-transition-duration: .3s;
          transition-duration: .3s
}
.subpage .js-txtWrap.is-open {
  margin: 20px 0;
  height: auto
}
.subpage .-outboundLink {
  position: relative;
  max-width: 335px;
  height: 60px;
  font-size: 16px
}
.subpage .-outboundLink:after {
  content: "";
  width: 14px;
  height: 12px;
  position: absolute;
  top: 20px;
  right: 15px;
  background: url(../images/common/outbound_link_icon.svg) center center/contain no-repeat
}
.subpage .-outboundLinkFlex {
  position: relative;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  padding: 22px 45px 22px 20px;
  font-size: 16px;
  border: 1px solid #ddd;
  line-height: 1
}
.subpage .-outboundLinkFlex:after {
  content: "";
  width: 14px;
  height: 12px;
  position: absolute;
  top: 20px;
  right: 15px;
  background: url(../images/common/outbound_link_icon.svg) center center/contain no-repeat
}
.subpage .-outboundLinkFlex.-btnWidth {
  max-width: 335px;
  width: 100%
}
.subpage .-linkTxt--arrow {
  text-decoration: none!important;
  font: inherit;
  padding-left: 10px;
  position: relative;
  border-bottom: 1px solid #000
}
.subpage .-linkTxt--arrow::before {
  content: "";
  width: 7px;
  height: 7px;
  border-right: 1px solid #000;
  border-top: 1px solid #000;
  position: absolute;
  top: 7px;
  left: 0;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg)
}
.subpage .global__btn--gray {
  cursor: pointer;
  width: 100%;
  margin: 0 auto;
  height: 60px;
  background: #f5f6f7;
  border: 1px solid #38404d;
  padding: 0 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  font-weight: 700;
  font-size: 16px;
  z-index: 6;
  max-width: 385px
}
.subpage .global__btn--gray input {
  background-color: unset;
  border: none;
  outline: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0
}
.subpage .ankerLinks__blk-glay {
  margin: 80px auto 0;
  max-width: 335px
}
@media screen and (min-width:768px) {
  .subpage .ankerLinks__blk-glay {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    max-width: unset
  }
}
@media screen and (min-width:768px) {
  .subpage .ankerLinks__blk-glay li {
    width: 100%;
    max-width: 313px
  }
}
.subpage .ankerLinks__blk-glay li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 24px 15px 24px 0;
  font-size: 18px;
  border-bottom: 1px solid #ddd
}
@media screen and (min-width:768px) {
  .subpage .ankerLinks__blk-glay li a {
    width: 100%;
    max-width: 300px
  }
}
.subpage .ankerLinks__blk-glay li a::after {
  content: "";
  background: url(../images/about_us/under_arrow.svg) no-repeat center center/contain;
  width: 10px;
  height: 11.5px
}
.-cate-id01 {
  background: #960
}
.-cate-id02 {
  background: #007699
}
#creative .imgKv {
  background-image: url(../images/creative_studios_kv_img_sp.png)
}
@media screen and (min-width:1025px) {
  #creative .imgKv {
    background-image: url(../images/creative_studios_kv_img_pc.png)
  }
}
#creative .commonTtl {
  font-size: 24px;
  text-align: center;
  line-height: 1.4
}
@media (max-width:360px) {
  #creative .commonTtl {
    font-size: calc(24 * (100vw / 360))
  }
}
#creative .topSection {
  padding: 86px 0 75px
}
@media screen and (min-width:1025px) {
  #creative .topSection {
    padding: 120px 0 115px
  }
}
#creative .topSection__ttl {
  width: calc(360 * (100vw / 430));
  max-width: 360px;
  margin: 0 auto;
  font-weight: 700;
  line-height: 1;
  position: relative
}
@media (max-width:360px) {
  #creative .topSection__ttl {
    font-size: calc(24 * (100vw / 360))
  }
}
@media screen and (min-width:1025px) {
  #creative .topSection__ttl {
    max-width: 540px
  }
}
#creative .topSection__mainLead {
  margin-top: 45px;
  text-align: center;
  font-size: 24px;
  line-height: 1.4;
  font-weight: 700
}
#creative .topSection__mainLead .-col {
  color: #d28903
}
#creative .topSection__lead {
  margin-top: 40px;
  font-size: 16px;
  line-height: 1.625
}
#creative .movie {
  background: #e9e9e9;
  padding: 40px 0 35px;
  width: 100vw;
  margin: 0 calc(50% - 50vw)
}
@media screen and (min-width:1025px) {
  #creative .movie {
    padding: 80px 0 75px
  }
}
#creative .movie .movie__ttlBlk {
  text-align: center
}
#creative .movie .commonTtl {
  display: inline-block;
  position: relative
}
#creative .movie__youtubeBox {
  max-width: 800px;
  position: relative;
  margin: 25px auto 0;
  overflow: hidden
}
#creative .movie__youtubeBox::before {
  content: "";
  display: block;
  padding-top: 56.25%
}
@media screen and (min-width:1025px) {
  #creative .movie__youtubeBox {
    margin-top: 40px
  }
}
#creative .movie__youtubeBox iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1
}
#creative .movie__tumb {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  max-width: 800px;
  height: 100%;
  z-index: 2;
  cursor: pointer
}
#creative .movie__playBtn {
  display: block;
  width: 58px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  -ms-transform: translate(-50%,-50%);
  -webkit-transition: all .3s;
  transition: all .3s;
  z-index: 5
}
@media screen and (min-width:1025px) {
  #creative .movie__playBtn {
    width: 120px
  }
}
#creative .movie__playBtn::hover {
  opacity: .9
}
#creative .movie__lead {
  font-size: 14px;
  max-width: 570px;
  margin: 35px auto 0;
  padding: 0 20px;
  text-align: center
}
@media screen and (min-width:1025px) {
  #creative .movie__lead {
    padding: 0
  }
}
#creative .about {
  padding: 75px 0 100px
}
@media screen and (min-width:1025px) {
  #creative .about {
    padding: 115px 0 120px
  }
}
#creative .about__subTtl {
  margin-top: 45px;
  font-size: 18px;
  color: #0087b9;
  text-align: center
}
@media screen and (min-width:768px) {
  #creative .about__subTtl {
    font-size: 20px
  }
}
#creative .about__mainImg {
  display: block;
  padding: 0;
  width: 100vw;
  margin: 0 calc(50% - 50vw) 0
}
@media screen and (min-width:1025px) {
  #creative .about__mainImg {
    max-width: 980px;
    margin: 0 auto 0
  }
}
#creative .about__blk {
  margin-top: 60px
}
@media screen and (min-width:1025px) {
  #creative .about__blk {
    margin-top: 55px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between
  }
}
@media screen and (min-width:1025px) {
  #creative .about__img {
    width: 39.5%
  }
}
#creative .about__lead {
  font-size: 16px;
  line-height: 1.4;
  margin-top: 35px
}
@media screen and (min-width:1025px) {
  #creative .about__lead {
    width: 56.3%;
    margin-top: 0
  }
}
#creative .about__linkBlk {
  margin-top: 75px
}
@media screen and (min-width:1025px) {
  #creative .about__linkBlk {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    max-width: 100%;
    margin-top: 100px
  }
}
#creative .about__linkBlk .global__btn {
  font-size: 16px;
  font-weight: 400;
  height: 75px;
  line-height: 1.25;
  max-width: 385px;
  margin: 0 auto
}
@media (max-width:360px) {
  #creative .about__linkBlk .global__btn {
    font-size: calc(16 * (100vw / 360))
  }
}
@media screen and (min-width:1025px) {
  #creative .about__linkBlk .global__btn {
    width: 48%;
    max-width: unset
  }
}
#creative .about__linkBlk a:not(:first-of-type) {
  margin-top: 10px
}
@media screen and (min-width:1025px) {
  #creative .about__linkBlk a:not(:first-of-type) {
    margin-top: 0
  }
}
#creative .studioList {
  padding-bottom: 80px
}
@media (min-width:768px) {
  #creative .studioList {
    padding-bottom: 80px
  }
}
#creative .studioList img {
  aspect-ratio: unset
}
#creative .professionals__link__wrapper {
  margin-bottom: 0
}
#creative__serviceLink[href=""] {
  text-decoration: none
}
#creative .professionals__link a[href=""] {
  pointer-events: none
}
#creative .professionals__link a[href=""] .professionals__link__icon {
  display: none
}
#creative .caseList {
  padding-bottom: 80px
}
#creative .caseList .features__listLink a {
  font-size: 14px
}
#creative .caseList .common-carouselArea__topWrap {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end
}
#creative .global__btn {
  background: #f5f6f7
}
#creative .servicelinks .global__btn {
  background: #fff
}
#ir-arch .newsBlock {
  margin-top: 80px
}
#ir-arch .newsBlock__ttl {
  font-size: 26px;
  line-height: 1
}
@media screen and (min-width:768px) {
  #ir-arch .newsBlock__ttl {
    font-size: 28px
  }
}
#ir-arch .newsBlock__list {
  margin-top: 16px
}
#ir-arch .newsBlock__list li:first-of-type {
  border-top: 1px solid #ddd
}
#ir-arch .newsBlock__list li {
  padding: 16px 0;
  border-bottom: 1px solid #ddd
}
#ir-arch .newsBlock__txtBox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center
}
#ir-arch .newsBlock__day {
  font-weight: 700;
  font-size: 14px;
  line-height: 1
}
#ir-arch .newsBlock__cate {
  font-size: 12px;
  padding: 2px 3px;
  margin-left: 8px;
  color: #fff;
  border-radius: 2px
}
#ir-arch .newsBlock__txt {
  font-size: 16px;
  line-height: 1.5714;
  margin-top: 6px
}
#ir-arch .dlBlk.-w50 {
  width: 50%;
  margin: 16px 0 0 auto;
  padding: 0
}
@media screen and (min-width:1025px) {
  #ir-arch .dlBlk.-w50 {
    margin: 32px 0 0 auto
  }
}
#ir-arch .dlBlk.-w50 .arrow__iconHover {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 16px 22.1px 16px 20px;
  font-size: 16px
}
#ir-arch .dlBlk {
  margin-top: 16px
}
@media screen and (min-width:1025px) {
  #ir-arch .dlBlk {
    margin-top: 60px
  }
}
#ir-arch .manageInfo {
  margin: 90px 0 0;
  padding-bottom: 100px
}
#ir-arch .manageInfo__ttl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 20px;
  letter-spacing: 0;
  line-height: 1
}
@media screen and (min-width:768px) {
  #ir-arch .manageInfo__ttl {
    font-size: 22px
  }
}
#ir-arch .manageInfo__ttl::before {
  content: "";
  display: block;
  width: 5px;
  height: 20px;
  margin-right: 6px;
  background-color: #222427
}
#ir-arch .manageInfo__lead {
  margin-top: 11px;
  line-height: 1.7142
}
@media screen and (min-width:768px) {
  #ir-arch .manageInfo__lead {
    font-size: 16px
  }
}
#ir-arch .manageInfo__list {
  margin-top: 14px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap
}
#ir-arch .manageInfo__list li {
  width: 100%;
  height: 24vw;
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat
}
@media screen and (min-width:1025px) {
  #ir-arch .manageInfo__list li {
    width: calc((100% - 15px * 2)/ 3);
    padding-top: 8.7%;
    background-size: contain;
    height: auto
  }
}
#ir-arch .manageInfo__list li:not(:first-of-type) {
  margin-top: 10px
}
@media screen and (min-width:1025px) {
  #ir-arch .manageInfo__list li:not(:first-of-type) {
    margin-top: 0
  }
}
#ir-arch .manageInfo__list-info01 {
  background-image: url(../../../images/ir/manageInfo_img_01.jpg)
}
#ir-arch .manageInfo__list-info02 {
  background-image: url(../../../images/ir/manageInfo_img_02.jpg)
}
#ir-arch .manageInfo__list-info03 {
  background-image: url(../../../images/ir/manageInfo_img_03.jpg)
}
#ir-arch .libraryBlock,
#library .libraryBlock {
  margin-top: 80px
}
#ir-arch .libraryBlock__day,
#library .libraryBlock__day {
  font-size: 16px;
  margin-top: 20px;
  line-height: 1;
  font-weight: 700
}
#ir-arch .libraryBlock__list li,
#library .libraryBlock__list li {
  padding: 16px 0;
  border-bottom: 1px solid #ddd
}
#ir-arch .libraryBlock__txtBox,
#library .libraryBlock__txtBox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center
}
#ir-arch .libraryBlock__cate,
#library .libraryBlock__cate {
  font-size: 12px;
  padding: 2px 3px;
  background: #e0e0e0;
  margin-left: 8px
}
#ir-arch .libraryBlock__txt,
#library .libraryBlock__txt {
  font-size: 16px;
  line-height: 1.5714;
  margin-top: 6px
}
#ir-arch .libraryLinkBlk,
#library .libraryLinkBlk {
  margin: 66px 0 0 0
}
#ir-arch .libraryLinkBlk__list,
#library .libraryLinkBlk__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap
}
#ir-arch .libraryLinkBlk__list li,
#library .libraryLinkBlk__list li {
  width: 100%;
  border: unset;
  padding: 0
}
@media screen and (min-width:1025px) {
  #ir-arch .libraryLinkBlk__list li:nth-child(2n-1),
  #library .libraryLinkBlk__list li:nth-child(2n-1) {
    margin-right: 40px
  }
}
@media screen and (min-width:1025px) {
  #ir-arch .libraryLinkBlk__list li,
  #library .libraryLinkBlk__list li {
    width: calc(50% - 20px)
  }
}
#ir-arch .libraryLinkBlk__list li a,
#library .libraryLinkBlk__list li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 100%;
  padding: 0;
  font-size: 16px;
  font-weight: 400;
  padding: 24px 15px 24px 0;
  border-bottom: 1px solid #ddd;
  position: relative
}
#financial .yearBlk,
#news .yearBlk,
#settlement .yearBlk {
  margin-top: 80px
}
#financial .yearBlk__ttl,
#news .yearBlk__ttl,
#settlement .yearBlk__ttl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-bottom: 20px;
  font-size: 22px;
  letter-spacing: 0;
  line-height: 1;
  border-bottom: 1px solid #ddd;
  font-weight: 500
}
@media screen and (min-width:768px) {
  #financial .yearBlk__ttl,
  #news .yearBlk__ttl,
  #settlement .yearBlk__ttl {
    font-size: 22px
  }
}
#financial .yearBlk__ttl::before,
#news .yearBlk__ttl::before,
#settlement .yearBlk__ttl::before {
  content: "";
  display: block;
  width: 5px;
  height: 20px;
  margin-right: 6px;
  background-color: #222427
}
#financial .yearBlk__desc,
#news .yearBlk__desc,
#settlement .yearBlk__desc {
  margin-top: 16px;
  padding-bottom: 17px;
  font-size: 14px;
  letter-spacing: 0;
  line-height: 1.6;
  border-bottom: 1px solid #ddd
}
#financial .yearBlk__desc dt,
#news .yearBlk__desc dt,
#settlement .yearBlk__desc dt {
  font-weight: 600;
  margin-bottom: 10px
}
#financial .yearBlk__desc a,
#news .yearBlk__desc a,
#settlement .yearBlk__desc a {
  display: block;
  margin-top: -1px;
  font-size: 16px
}
#financial .yearBlk__desc p,
#news .yearBlk__desc p,
#settlement .yearBlk__desc p {
  display: block;
  margin-top: -1px;
  font-size: 16px
}
#financial .yearBlk__desc p a,
#news .yearBlk__desc p a,
#settlement .yearBlk__desc p a {
  text-decoration: underline;
  font: inherit
}
#financial .yearBlk__txt-links,
#news .yearBlk__txt-links,
#settlement .yearBlk__txt-links {
  margin-top: 40px;
  font-size: 16px;
  line-height: 1.5714
}
#financial .yearBlk__txt-links a,
#news .yearBlk__txt-links a,
#settlement .yearBlk__txt-links a {
  font: inherit;
  text-decoration: underline;
  display: inline
}
#news .yearBlk {
  margin-top: 40px
}
#news .yearBlk__desc dt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 10px
}
#news .yearBlk__desc dt .yearBlk__cate {
  padding: 2px 3px;
  font-size: 12px;
  color: #fff;
  border-radius: 2px;
  margin-left: 3px;
  font-weight: 400
}
#message .message {
  margin-top: 80px
}
@media screen and (min-width:1025px) {
  #message .message {
    display: block;
    margin-top: 80px;
    max-width: unset;
    margin-left: auto;
    margin-right: auto
  }
}
@media screen and (min-width:1025px) {
  #message .message__imgBlk {
    width: 100%;
    margin-bottom: 60px
  }
}
#message .message__imgBlk figure {
  width: 234px;
  margin: 0 auto
}
@media screen and (min-width:1025px) {
  #message .message__imgBlk figure {
    width: 100%
  }
}
#message .message__txtBlk {
  margin-top: 43px
}
@media screen and (min-width:1025px) {
  #message .message__txtBlk {
    margin-top: 0;
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
    padding: 0 0
  }
}
#message .message__txtBlk p {
  font-family: YuGothic;
  font-weight: 500;
  font-size: 16px;
  line-height: 1.7142
}
@media screen and (min-width:768px) {
  #message .message__txtBlk p {
    font-size: 16px
  }
}
#message .message__txtBlk p .-bold {
  font-weight: 700
}
#message .message__txtBlk h2 {
  font-size: 18px;
  text-align: right;
  font-weight: 400;
  line-height: 1;
  margin-top: 35px
}
@media screen and (min-width:768px) {
  #message .message__txtBlk h2 {
    font-size: 20px
  }
}
#message .message__txtBlk h2 span {
  display: block;
  margin-bottom: 8px;
  font-size: 14px;
  font-weight: 400;
  line-height: 1
}
@media screen and (min-width:768px) {
  #message .message__txtBlk h2 span {
    font-size: 16px
  }
}
#officers .officers {
  margin-top: 80px
}
#officers .officers .officersList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between
}
#officers .officers .officersList li {
  margin-bottom: 80px;
  width: 100%
}
@media screen and (min-width:1025px) {
  #officers .officers .officersList li {
    width: 47%;
    max-width: 450px
  }
}
#officers .officers .officersList__imgBox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}
#officers .officers .officersList__imgBox figure {
  width: 44.77%
}
#officers .officers .officersList__imgBox h2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  font-weight: 600;
  font-size: 24px;
  line-height: 1;
  font-weight: 700
}
@media screen and (min-width:768px) {
  #officers .officers .officersList__imgBox h2 {
    font-size: 26px
  }
}
#officers .officers .officersList__imgBox h2 span {
  display: block;
  margin-bottom: 5px;
  font-size: 14px;
  line-height: 1.57
}
#officers .officers .officersList__imgBox h2 .-detail {
  display: block;
  margin-bottom: 13px;
  font-size: 12px;
  color: #83807a;
  line-height: 1.5
}
#officers .officers .officersList__imgBox h2 .-en {
  display: block;
  margin: 2px 0 0;
  font-size: 14px;
  line-height: 1.57;
  font-weight: 400
}
#officers .officers .officersList__txtBox {
  margin-top: 32px
}
#officers .officers .officersList__txtBox h3 {
  font-size: 16px;
  font-weight: 700;
  padding-bottom: 12px;
  border-bottom: 1px solid #ddd
}
@media screen and (min-width:768px) {
  #officers .officers .officersList__txtBox h3 {
    font-size: 18px
  }
}
#officers .officers .officersList__txtBox dl {
  margin-top: 17px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 100%
}
#officers .officers .officersList__txtBox dl dd,
#officers .officers .officersList__txtBox dl dt {
  font-size: 14px;
  line-height: 1.42
}
#officers .officers .officersList__txtBox dl dt {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 25%;
          flex: 0 0 25%
}
#officers .officers .officersList__txtBox dl dd {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 75%;
          flex: 0 0 75%
}
#officers .officers .officersList__txtBox dl dd:not(:last-of-type) {
  margin-bottom: 10px
}
#officers .officers .officersNote {
  font-weight: 400;
  font-size: 14px;
  line-height: 1.511
}
#calendar .imgBlk {
  margin-top: 80px
}
#calendar .imgBlk__img {
  margin-top: 24px;
  display: block
}
#calendar .imgBlk__ttl {
  margin-top: 56px;
  font-weight: 400;
  font-size: 22px;
  line-height: 1.4;
  position: relative;
  padding-bottom: 10px
}
@media screen and (min-width:768px) {
  #calendar .imgBlk__ttl {
    font-size: 24px
  }
}
#calendar .imgBlk__ttl::after {
  content: "";
  width: 20px;
  height: 2px;
  background: #222427;
  position: absolute;
  left: 0;
  bottom: 0
}
#calendar .imgBlk__txtWrap {
  margin-top: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap
}
#calendar .imgBlk__txtWrap dt {
  width: 110px
}
#calendar .imgBlk__txtWrap dt:not(:first-of-type) {
  margin-top: 8px
}
#calendar .imgBlk__txtWrap dd {
  width: calc(100% - 110px)
}
#calendar .imgBlk__txtWrap dd:not(:first-of-type) {
  margin-top: 8px
}
#calendar .imgBlk__txtWrap dd,
#calendar .imgBlk__txtWrap dt {
  font-size: 16px
}
#calendar .history {
  margin-top: 56px
}
@media screen and (min-width:1025px) {
  #calendar .history__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start
  }
}
@media screen and (min-width:1025px) {
  #calendar .history__list li {
    width: 45%
  }
}
#calendar .history__box:first-of-type {
  margin-top: 20px
}
#calendar .history__box:not(:first-of-type) {
  margin-top: 10px
}
@media screen and (min-width:1025px) {
  #calendar .history__box:first-of-type {
    margin-top: 20px
  }
  #calendar .history__box:not(:first-of-type) {
    margin-top: 20px
  }
}
#calendar .history__ttl {
  font-weight: 400;
  font-size: 22px;
  line-height: 1.4;
  position: relative;
  padding-bottom: 10px
}
@media screen and (min-width:768px) {
  #calendar .history__ttl {
    font-size: 24px
  }
}
#calendar .history__ttl::after {
  content: "";
  width: 20px;
  height: 2px;
  background: #222427;
  position: absolute;
  left: 0;
  bottom: 0
}
#calendar .history__btn {
  width: 100%;
  height: 58px;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  background: #222427;
  font-weight: 500;
  font-size: 18px;
  line-height: 1.555;
  color: #fff;
  padding: 0 20px;
  cursor: pointer
}
#calendar .history__btn:hover {
  opacity: .9
}
#calendar .history__txtWrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap
}
#calendar .history__txtWrap dt {
  width: 110px
}
#calendar .history__txtWrap dt:not(:first-of-type) {
  margin-top: 8px
}
#calendar .history__txtWrap dd {
  width: calc(100% - 110px)
}
#calendar .history__txtWrap dd:not(:first-of-type) {
  margin-top: 8px
}
#calendar .history__txtWrap dd,
#calendar .history__txtWrap dt {
  font-size: 16px
}
#calendar .history__btn::after,
#calendar .history__btn::before {
  content: "";
  display: block;
  background-color: #fff;
  position: absolute;
  top: 50%;
  width: 15px;
  height: 2px;
  right: 25px
}
#calendar .history__btn::after {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
  -webkit-transition-duration: .3s;
          transition-duration: .3s
}
#calendar .history__btn.is-active::before {
  opacity: 0
}
#calendar .history__btn.is-active::after {
  -webkit-transform: rotate(0);
          transform: rotate(0)
}
#calendar .history__txtWrap {
  height: 0;
  overflow: hidden;
  -webkit-transition-duration: .3s;
          transition-duration: .3s
}
#calendar .history__txtWrap.is-open {
  margin: 20px 0;
  height: auto
}
#highlight .highlight {
  margin: auto;
  margin-top: 80px
}
@media screen and (min-width:1025px) {
  #highlight .highlight ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    max-width: 980px;
    margin: 0 auto
  }
}
#highlight .highlight ul li {
  width: 100%
}
#highlight .highlight ul li:not(:first-of-type) {
  margin-top: 80px
}
@media screen and (min-width:1025px) {
  #highlight .highlight ul li {
    width: 46%;
    max-width: 450px
  }
  #highlight .highlight ul li:not(:first-of-type) {
    margin-top: 0
  }
}
#highlight .highlight__img {
  margin-top: 40px
}
@media screen and (min-width:1025px) {
  #highlight .highlight__img {
    margin-top: 40px
  }
}
#highlight .highlight__table {
  width: 100%;
  margin-top: 40px
}
@media screen and (min-width:1025px) {
  #highlight .highlight__table {
    margin-top: 56px
  }
}
#highlight .highlight__table .bg {
  background: #eee
}
#highlight .highlight__table tr {
  width: 100%
}
#highlight .highlight__table tr td,
#highlight .highlight__table tr th {
  padding: 14px 0;
  text-align: center
}
#highlight .highlight__table tr th {
  width: calc((100% - 11%)/ 5)
}
#highlight .highlight__table tr th:nth-of-type(1) {
  width: 11%
}
#highlight .highlight__table tr td {
  width: calc((100% - 11%)/ 5)
}
#plan .planWrap__topTxt {
  text-align: left;
  margin-bottom: 100px;
  line-height: 1.7;
  font-size: 16px
}
@media screen and (min-width:768px) {
  #plan .planWrap__topTxt {
    font-size: 16px
  }
}
#plan .planWrap__mainTxt {
  max-width: 375px;
  margin: 0 auto
}
#plan .planWrap .businessField__num {
  margin-bottom: 0
}
#plan .planWrap__day {
  width: 100%;
  max-width: 120px;
  margin: -11.5px auto 0;
  padding: 5px 0;
  font-size: 13px;
  line-height: 1;
  letter-spacing: 0;
  color: #fff;
  text-align: center;
  background-color: #83807a
}
#plan .planWrap__themeBox-txt {
  line-height: 1;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1
}
@media (min-width:768px) {
  #plan .planWrap__themeBox-txt {
    font-size: 22px
  }
}
#plan .planWrap__themeBox-line {
  display: block;
  margin: 10px auto 0;
  width: 30px;
  height: 4px;
  background-color: #222427
}
#plan .planWrap__themeBox-lead {
  margin-top: 25px;
  font-size: 18px;
  line-height: 1.9;
  text-align: left
}
@media (min-width:768px) {
  #plan .planWrap__themeBox-lead {
    font-size: 22px
  }
}
#plan .planWrap__themeBox-img {
  width: 100%;
  margin-top: 100px;
  position: relative
}
#plan .planWrap__themeBox-img img {
  width: 100%
}
#plan .planWrap__themeBox-wrap {
  width: 100%;
  padding: 0
}
#plan .planWrap__listBox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-top: 20px;
  margin-bottom: 40px
}
@media screen and (min-width:768px) {
  #plan .planWrap__listBox {
    margin-top: 32px;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-bottom: 40px
  }
}
#plan .planWrap__listBox li {
  width: 100%;
  padding: 10px 0 17px;
  border: 1px solid #ddd
}
@media screen and (min-width:768px) {
  #plan .planWrap__listBox li {
    width: 49%
  }
}
#plan .planWrap__listBox li:not(:first-of-type) {
  margin-top: 10px
}
@media screen and (min-width:768px) {
  #plan .planWrap__listBox li:not(:first-of-type) {
    margin-top: 0
  }
}
#plan .planWrap__listBox li:nth-of-type(1) .planWrap__listBox-icon {
  max-width: 70px
}
#plan .planWrap__listBox li:nth-of-type(2) {
  padding-top: 20px
}
#plan .planWrap__listBox li:nth-of-type(2) .planWrap__listBox-icon {
  max-width: 59px
}
#plan .planWrap__listBox li:nth-of-type(2) .planWrap__listBox-lead {
  margin-top: 9px
}
#plan .planWrap__listBox-icon {
  display: block;
  width: 100%;
  margin: 0 auto
}
#plan .planWrap__listBox-icon img {
  width: 100%
}
#plan .planWrap__listBox-lead {
  margin-top: 5px;
  font-size: 16px;
  line-height: 1.5;
  text-align: center
}
#plan .planWrap .businessField__GN__title {
  font-size: 32px;
  margin-bottom: 20px
}
#plan .planWrap .common-section__GN {
  padding: 45px 0 45px 0;
  margin-bottom: 60px;
  margin: 40px calc(50% - 50vw) 60px;
  width: 100vw
}
@media screen and (min-width:768px) {
  #plan .planWrap .common-section__GN {
    width: 100%;
    margin: 40px auto 60px
  }
}
#plan .planWrap .businessField__num__item:not(:last-child) {
  margin-right: 0;
  margin-bottom: 20px
}
#plan .planWrap .businessField__num__heading {
  font-size: 16px;
  margin-bottom: 10px
}
#plan .planWrap .businessField__num__text {
  font-size: 60px
}
#plan .planWrap__strategyBox {
  margin-top: 80px
}
#plan .planWrap__strategyBox .features__anchors {
  margin-top: 24px
}
#plan .planWrap__strategyBox .features__anchors__text {
  font-size: 16px
}
@media (min-width:768px) {
  #plan .planWrap__strategyBox .features__anchors__text {
    font-size: 16px
  }
}
@media (max-width:750px) {
  #plan .planWrap__strategyBox .features__anchors__text {
    padding-right: 10px
  }
}
#plan .planWrap__strategyBox-ttl {
  font-size: 24px;
  line-height: 1.333;
  font-weight: 400
}
@media screen and (min-width:768px) {
  #plan .planWrap__strategyBox-ttl {
    font-size: 26px
  }
}
#plan .planWrap__strategyBox-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-top: 24px
}
@media screen and (min-width:768px) {
  #plan .planWrap__strategyBox-list {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    max-width: unset;
    margin: 24px auto 0
  }
}
#plan .planWrap__strategyBox-list li {
  padding: 0;
  border: unset
}
@media screen and (min-width:768px) {
  #plan .planWrap__strategyBox-list li {
    width: 43%
  }
}
#plan .planWrap__strategyBox-list li:not(:first-of-type) {
  margin-top: 20px
}
@media screen and (min-width:768px) {
  #plan .planWrap__strategyBox-list li:not(:first-of-type) {
    margin-top: 0
  }
}
@media screen and (min-width:768px) {
  #plan .planWrap__strategyBox-list li:nth-of-type(n+3) {
    margin-top: 40px
  }
}
#plan .planWrap__strategyBox-txt {
  font-size: 20px;
  line-height: 1.4;
  font-weight: 400;
  position: relative
}
#plan .planWrap__strategyBox-txt::before {
  content: ""
}
#plan .planWrap__strategyBox-lead {
  margin-top: 3px;
  font-size: 13px;
  line-height: 1.4
}
@media screen and (min-width:768px) {
  #plan .planWrap__strategyBox-lead {
    font-size: 15px
  }
}
#plan .planWrap__strategyBox-note {
  margin-top: 10px;
  font-size: 13px;
  line-height: 1.4
}
@media screen and (min-width:768px) {
  #plan .planWrap__strategyBox-note {
    text-align: center
  }
}
#plan .planWrap__strategyBox-img {
  margin-top: 20px
}
@media screen and (min-width:768px) {
  #plan .planWrap__strategyBox-img {
    max-width: 700px;
    margin: 20px auto 0
  }
}
#plan .planWrap__graphBox {
  margin-top: 80px
}
#plan .planWrap__graphBox-ttl {
  font-size: 24px;
  line-height: 1.333;
  font-weight: 400
}
@media screen and (min-width:768px) {
  #plan .planWrap__graphBox-ttl {
    text-align: center;
    font-size: 26px
  }
}
#plan .planWrap__graphBox-txt {
  font-size: 18px;
  line-height: 1.4;
  font-weight: 700
}
#plan .planWrap__graphBox-lead {
  margin-top: 3px;
  font-size: 13px;
  line-height: 1.4
}
#plan .planWrap__graphBox-note {
  margin-top: 10px;
  font-size: 13px;
  line-height: 1.4
}
@media screen and (min-width:768px) {
  #plan .planWrap__graphBox-note {
    text-align: center
  }
}
#plan .planWrap__graphBox-img {
  margin-top: 20px
}
@media screen and (min-width:768px) {
  #plan .planWrap__graphBox-img {
    max-width: 700px;
    margin: 20px auto 0
  }
}
#plan .planWrap__dlBox {
  margin-top: 80px
}
#plan .planWrap__dlBox-ttl {
  font-size: 24px;
  line-height: 1;
  font-weight: 400
}
@media screen and (min-width:768px) {
  #plan .planWrap__dlBox-ttl {
    font-size: 26px
  }
}
#plan .planWrap__dlBox-list {
  margin-top: 24px
}
@media screen and (min-width:768px) {
  #plan .planWrap__dlBox-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between
  }
}
#plan .planWrap__dlBox-pdf {
  margin: 0 auto
}
@media screen and (min-width:768px) {
  #plan .planWrap__dlBox-pdf {
    max-width: 49%;
    margin: 0
  }
}
#plan .planWrap__dlBox-pdf:not(:first-of-type) {
  margin-top: 16px
}
@media screen and (min-width:768px) {
  #plan .planWrap__dlBox-pdf:not(:first-of-type) {
    margin-top: 0;
    height: 74px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center
  }
}
#plan .planWrap__dlBox-pdf:not(:first-of-type) .dlBlk__txt {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between
}
#plan .planWrap__dlBox .dlBlk__txt {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start
}
#plan .planWrap__dlBox .dlBlk__txt::after {
  width: 14px;
  height: 14px;
  background-image: url(../../images/common/icon_pdf.svg)
}
#plan .planWrap__dlBox-txt {
  display: inline-block;
  font-size: 14px
}
#plan .planWrap__dlBox-day {
  display: block;
  margin-top: 3px;
  font-size: 13px;
  line-height: 1
}
@media screen and (min-width:1025px) {
  #plan .planWrap__flexBlk {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center
  }
}
@media screen and (min-width:1025px) {
  #plan .planWrap__blk {
    width: 40%;
    margin-left: 30px;
    margin-right: 30px
  }
}
#plan .planWrap__objectiveTxt {
  font-size: 35px;
  font-weight: 700;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  line-height: 1
}
#plan .planWrap__objectiveTxt span {
  font-size: 120px;
  line-height: 1
}
#plan .planWrap__objectiveTxt:first-of-type {
  margin-top: 60px
}
#plan .planWrap__objectiveTxt:not(:first-of-type) {
  margin-top: 40px
}
#plan .planWrap__objectiveTxt.-txt_01 {
  max-width: 157px;
  width: 41%
}
#plan .planWrap__objectiveTxt.-txt_02 {
  max-width: 331px;
  width: 76%
}
#plan .planWrap__objectiveTxt.-txt_03 {
  max-width: 270px;
  width: 62%
}
#plan .planWrap__objectiveCate {
  font-size: 20px;
  font-weight: 700;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}
#plan .planWrap__objectiveCate span {
  line-height: 1;
  font-size: 20px
}
#plan .planWrap__objectiveCate.-cate01 {
  margin-top: 9px;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end
}
#plan .planWrap__objectiveCate.-cate01::before {
  content: "";
  background: url(../../images/ir/plan_icon_01.svg) no-repeat center center/contain;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 35px;
          flex: 0 0 35px;
  height: 28px;
  margin-right: 8px
}
#plan .planWrap__objectiveCate.-cate01 span {
  margin-bottom: 2px
}
#plan .planWrap__objectiveCate.-cate02 {
  margin-top: 11px;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end
}
#plan .planWrap__objectiveCate.-cate02::before {
  content: "";
  background: url(../../images/ir/plan_icon_02.svg) no-repeat center center/contain;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 47px;
          flex: 0 0 47px;
  height: 24px;
  margin-right: 5px
}
#plan .planWrap__objectiveCate.-cate03 {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 13px
}
#plan .planWrap__objectiveCate.-cate03::before {
  content: "";
  background: url(../../images/ir/plan_icon_03.svg) no-repeat center center/contain;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 44px;
          flex: 0 0 44px;
  height: 27px;
  margin-right: 6px
}
#plan .planWrap__blk {
  margin-top: 60px
}
#plan .planWrap__objectiveBox {
  font-size: 18px;
  line-height: 1.5;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-weight: 700
}
@media screen and (min-width:1025px) {
  #plan .planWrap__objectiveBox {
    max-width: 335px
  }
}
#plan .planWrap__objectiveBox.-box1 {
  background: #f8f9fa;
  padding: 16.5px 0;
  position: relative;
  margin: 0 auto
}
#plan .planWrap__objectiveBox.-box1::after {
  content: "";
  background: url(../../images/ir/plan_arrow_b.svg) no-repeat center center/contain;
  width: 47px;
  height: 35px;
  position: absolute;
  bottom: -42px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%)
}
#plan .planWrap__objectiveBox.-box2 {
  background: #000;
  padding: 27.5px 0;
  margin: 50px auto 0;
  color: #fff
}
#plan .planWrap__objectiveLead {
  font-size: 20px;
  font-weight: 700;
  line-height: 1.5;
  margin-top: 16px;
  text-align: center
}
#plan .planWrap__counting {
  margin-top: 80px
}
#plan .planWrap__counting-ttl {
  font-size: 24px;
  line-height: 1;
  font-weight: 400
}
@media screen and (min-width:768px) {
  #plan .planWrap__counting-ttl {
    font-size: 26px
  }
}
@media screen and (min-width:1025px) {
  #plan .planWrap__counting-ttl {
    text-align: center
  }
}
#plan .planWrap__counting-table {
  margin-top: 20px;
  border: unset;
  border-spacing: 0;
  border: 1px solid #ddd;
  width: 100%
}
@media screen and (min-width:1025px) {
  #plan .planWrap__counting-table {
    max-width: 740px;
    margin: 40px auto 0
  }
}
#plan .planWrap__counting-table tr td,
#plan .planWrap__counting-table tr th {
  vertical-align: center;
  font-size: 14px;
  line-height: 1.3;
  padding: 10px 6px;
  border-spacing: 0;
  font-weight: 400
}
#plan .planWrap__counting-table tr td.bg,
#plan .planWrap__counting-table tr th.bg {
  background: #f8f9fa
}
#plan .planWrap__counting-table tr th {
  width: 32%;
  text-align: left
}
#plan .planWrap__counting-table tr th .-small {
  display: block;
  text-align: left;
  font-size: 13px;
  line-height: 1;
  margin-top: 6px
}
#plan .planWrap__counting-table tr td {
  line-height: 1.25
}
#plan .planWrap__counting-table tr td .-color {
  font-size: 15px;
  color: #007699;
  line-height: 1
}
#plan .planWrap__counting-table tr td .-big {
  font-size: 20px
}
#plan .planWrap__counting-table tr th:not(:first-of-type) {
  width: 25%;
  text-align: center
}
#plan .planWrap__counting-table tr td {
  width: 25%;
  text-align: right
}
#plan .planWrap__counting-table tr:not(:last-of-type) td,
#plan .planWrap__counting-table tr:not(:last-of-type) th {
  border-bottom: 1px solid #ddd;
  border-right: 1px solid #ddd
}
#plan .planWrap__counting-table tr:not(:last-of-type) td .-big,
#plan .planWrap__counting-table tr:not(:last-of-type) th .-big {
  font-size: 20px
}
#plan .planWrap__counting-table tr:last-of-type td,
#plan .planWrap__counting-table tr:last-of-type th {
  border-right: 1px solid #ddd
}
#plan .planWrap__counting-table tr td:last-child,
#plan .planWrap__counting-table tr th:last-child {
  border-right: unset
}
#plan .planWrap__counting-lead {
  font-size: 18px;
  text-align: left;
  margin-top: 25px;
  line-height: 1.9;
  text-align: left
}
@media screen and (min-width:768px) {
  #plan .planWrap__counting-lead {
    font-size: 22px
  }
}
#plan .planWrap__counting-txt {
  font-size: 14px;
  line-height: 1.7;
  margin-top: 28px
}
@media screen and (min-width:768px) {
  #plan .planWrap__counting-txt {
    font-size: 16px
  }
}
#plan .planWrap__counting-txt a {
  word-break: break-all;
  font: inherit
}
@media screen and (min-width:1025px) {
  #plan .planWrap__counting-txt {
    margin: 28px auto 0
  }
}
#plan .planWrap .c-ttl {
  font-weight: 700;
  font-size: 26px;
  line-height: 1.3333;
  text-align: left
}
@media (min-width:768px) {
  #plan .planWrap .c-ttl {
    font-size: 28px
  }
}
@media screen and (min-width:1025px) {
  #stock .txtBase {
    margin: 40px auto
  }
}
#stock .txtBase__ttl {
  margin-top: 40px
}
#stock .txtBase__subTtl {
  margin-top: 90px;
  font-size: 26px
}
@media screen and (min-width:768px) {
  #stock .txtBase__subTtl {
    font-size: 28px
  }
}
#stock .txtBase__ttl + .txtBase__txt {
  margin-top: 16px
}
#stock .txtBase .colorBox {
  margin-top: 16px
}
#stock .txtBase__table {
  border: unset;
  border-spacing: 0;
  border: 1px solid #ddd
}
#stock .txtBase__table__ttl:not(:last-of-type) {
  margin-top: 25px
}
#stock .dlBlk.-stockTransitionLink {
  margin: 25px auto 0 0
}
#stock .-graph01 {
  margin-top: 30px
}
@media screen and (min-width:1025px) {
  #stock .-graph01 {
    max-width: 500px;
    margin: 60px auto 0
  }
}
#stock .-graph02 {
  margin-top: 20px
}
@media screen and (min-width:1025px) {
  #stock .-graph02 {
    max-width: 700px;
    margin: 40px auto 0
  }
}
#individual .features__mainWrap {
  width: 100%
}
@media screen and (min-width:768px) {
  #individual .features__mainWrap {
    max-width: 460px;
    margin: 40px auto 0
  }
}
#individual .common-section__GN {
  margin-bottom: 60px;
  margin: 40px calc(50% - 50vw) 60px;
  width: 100vw
}
@media screen and (min-width:768px) {
  #individual .common-section__GN {
    width: 100%;
    margin: 40px auto 60px
  }
}
@media screen and (min-width:1025px) {
  #individual .businessField__num {
    -webkit-box-pack: right;
        -ms-flex-pack: right;
            justify-content: right
  }
}
@media screen and (max-width:1024px) {
  #individual .businessField__num {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between
  }
}
@media screen and (max-width:1024px) {
  #individual .businessField__num__item:not(:last-child) {
    margin-right: 0
  }
}
#individual .businessField__GN__title {
  font-size: 32px
}
#individual .businessField__num__heading {
  font-size: 24px
}
#individual .businessField__num__text {
  font-size: 60px
}
#individual .businessField__num {
  margin-bottom: 0
}
#individual .movie__youtubeBox {
  max-width: 800px;
  position: relative;
  margin: 0 auto 0;
  overflow: hidden
}
#individual .movie__youtubeBox::before {
  content: "";
  display: block;
  padding-top: 56.25%
}
#individual .movie__youtubeBox iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1
}
#individual .movie__tumb {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  max-width: 800px;
  height: 100%;
  z-index: 2;
  cursor: pointer
}
#individual .movie__playBtn {
  display: block;
  width: 58px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  -ms-transform: translate(-50%,-50%);
  -webkit-transition: all .3s;
  transition: all .3s;
  z-index: 5
}
@media screen and (min-width:1025px) {
  #individual .movie__playBtn {
    width: 120px
  }
}
#individual .movie__playBtn::hover {
  opacity: .9
}
#individual .individual__title {
  font-size: 26px
}
@media screen and (min-width:768px) {
  #individual .individual__title {
    font-size: 28px
  }
}
#individual .individual-common-text {
  font-size: 16px
}
#contact .imgKv {
  background-image: url(../../../images/contact/kv_img.jpg)
}
@media screen and (min-width:768px) {
  #contact .imgKv {
    background-image: url(../../../images/contact/kv_img_pc.jpg)
  }
}
#contact .-uLine {
  position: relative
}
#contact .-uLine::after {
  content: "";
  width: 20px;
  height: 2px;
  background: #222427;
  position: absolute;
  bottom: -10px;
  left: 0
}
#contact .-lLine {
  padding-left: 10px;
  position: relative
}
#contact .-lLine::before {
  content: "";
  width: 5px;
  height: 20px;
  background: #222427;
  position: absolute;
  top: 4px;
  left: 0
}
#contact .contact {
  padding-bottom: 60px
}
#contact .contact__lead {
  font-size: 22px;
  line-height: 1.6;
  margin-top: 40px
}
@media screen and (min-width:768px) {
  #contact .contact__lead {
    font-size: 24px
  }
}
#contact .contact__questionLink {
  font-weight: 500;
  text-decoration: underline;
  font-size: 14px;
  margin-top: 20px;
  display: inline-block
}
#contact .contact h3 {
  font-weight: 500
}
#contact .contact h4 {
  font-weight: 500;
  font-size: 22px;
  line-height: 1;
  margin-top: 40px;
  line-height: 1.3
}
#contact .contact .checkboxWrap {
  margin-top: 5px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column
}
@media screen and (min-width:768px) {
  #contact .contact .checkboxWrap {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start
  }
}
#contact .contact .checkbox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  cursor: pointer;
  margin-top: 20px;
  margin-right: 30px
}
#contact .contact .checkbox:not(:first-of-type) {
  margin-top: 20px
}
#contact .contact .checkbox__input {
  margin: 0;
  width: 0;
  opacity: 0
}
#contact .contact .checkbox__input:checked + .checkbox__dummyInput::before {
  content: "";
  display: block;
  position: absolute;
  top: 4px;
  left: 3.5px;
  width: 19px;
  height: 15.6px;
  background: url(../images/contact/contact_check_btn.svg) no-repeat center center/cover
}
#contact .contact .checkbox__dummyInput {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  width: 28px;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 28px;
          flex: 0 0 28px;
  height: 28px;
  border-radius: 2px;
  background: #fff;
  border: 1px solid #ddd
}
#contact .contact .checkbox__labelText {
  display: block;
  font-size: 16px;
  font-weight: 400;
  margin-left: 6px
}
#contact .contact .linkbox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start
}
#contact .contact .linkbox__txt {
  font-weight: 500;
  margin-top: 20px
}
#contact .contact .form__btn {
  cursor: pointer;
  width: 100%;
  margin: 0 auto;
  height: 60px;
  background: #f5f6f7;
  border: 1px solid #222427;
  padding: 0 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  font-weight: 700;
  font-size: 16px;
  z-index: 6;
  max-width: 385px
}
@media screen and (min-width:768px) {
  #contact .contact .form__btn {
    margin-top: 40px
  }
}
#contact .contact .form__btn input {
  background-color: unset;
  border: none;
  outline: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0
}
#contact .contact .form__btn.mt {
  margin-top: 35px
}
#contact .contact .form__backBtn.mt {
  margin-top: 35px
}
@media screen and (min-width:768px) {
  #contact .contact .form__btn.-left {
    margin-right: auto;
    margin-left: 0
  }
}
#contact .contact .form__backBtn {
  max-width: unset;
  width: auto;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  margin: 32px auto 0 0;
  height: auto;
  padding: 6px 25px 6px 51px
}
@media screen and (min-width:768px) {
  #contact .contact .form__backBtn {
    margin: 16px auto 0 0
  }
}
#contact .contact .form__backBtn::after {
  content: "";
  display: none
}
#contact .contact a.form__backBtn {
  max-width: 221px;
  margin-top: 35px
}
#contact .contact .stickyBtn {
  width: calc(100% - 40px);
  position: fixed;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  max-width: 385px
}
@media screen and (min-width:768px) {
  #contact .contact .stickyBtn {
    position: relative;
    bottom: auto;
    left: auto;
    margin: 0 auto;
    -webkit-transform: unset;
            transform: unset;
    margin-top: 40px
  }
}
#contact .contact .phaseBox {
  max-width: 236px;
  margin: 80px auto 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between
}
#contact .contact .phaseBox li {
  position: relative;
  z-index: 1
}
#contact .contact .phaseBox li span {
  width: 36px;
  height: 36px;
  border-radius: 60px;
  background: #ddd;
  font-weight: 700;
  font-size: 15px;
  line-height: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  z-index: 2
}
#contact .contact .phaseBox li p {
  font-size: 14px;
  margin-top: 9px;
  text-align: center
}
#contact .contact .phaseBox li:not(:first-of-type):after {
  content: "";
  background: #ddd;
  width: 105px;
  height: 1px;
  position: absolute;
  top: 12px;
  left: -74px;
  z-index: 1
}
#contact .contact .phaseBox li.-color {
  z-index: 2
}
#contact .contact .phaseBox li.-color span {
  color: #fff;
  background: #d28903
}
#contact .contact .phaseBox li.-color p {
  color: #d28903;
  font-weight: 700
}
#contact .contact .phaseBox li.-color:after {
  background: #d28903
}
#contact .contact .dateBring {
  margin-top: 35px;
  padding: 20px;
  border: 1px solid #ddd
}
#contact .contact .dateBring__ttl {
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
  margin: 0
}
@media screen and (min-width:768px) {
  #contact .contact .dateBring__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start
  }
}
#contact .contact .dateBring p {
  font-size: 16px;
  position: relative;
  margin-left: 20px;
  line-height: 1.6777
}
#contact .contact .dateBring p:first-of-type {
  margin-top: 9px;
  line-height: 1.6777
}
@media screen and (min-width:768px) {
  #contact .contact .dateBring p {
    margin-top: 9px;
    margin-right: 15px
  }
}
#contact .contact .dateBring p::after {
  content: "";
  width: 12px;
  height: 12px;
  background: #d28903;
  position: absolute;
  top: 6.5px;
  left: -20px
}
#contact .contact .noteBox {
  margin-top: 30px;
  font-size: 16px;
  line-height: 1.6777
}
#contact .contact .noteBox a {
  text-decoration: none;
  font: inherit;
  padding-left:3px;
  padding-right:3px;
  position: relative;
  border-bottom: 1px solid #000;
}
#contact .contact .noteBox a::before {
  content: none;
  width: 9px;
  height: 9px;
  border-right: 1px solid #000;
  border-top: 1px solid #000;
  position: absolute;
  top: 4px;
  left: 0;
  transform: rotate(45deg);
}
#contact .contact .inputBlk {
  margin-top: 90px
}
#contact .contact .inputBlk__wrap:not(:first-of-type) {
  margin-top: 20px
}
#contact .contact .inputBlk__th {
  font-size: 16px;
  font-weight: 700;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  line-height: 1;
  border: 1px solid #ddd;
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
  border-radius: 4px;
  padding: 6px 7px
}
#contact .contact .inputBlk__th span {
  border-radius: 2px;
  background: #d28903;
  font-size: 10px;
  font-weight: 700;
  line-height: 1;
  padding: 0 4px;
  line-height: 1.6;
  margin-left: 6px;
  color: #fff;
  display: block
}
#contact .contact .inputBlk__td input,
#contact .contact .inputBlk__td textarea {
  border: 1px solid #ddd;
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
  border-radius: 4px;
  margin-top: 6px;
  display: block;
  font-size: 15px
}
#contact .contact .inputBlk__td input {
  padding: 12px 10px;
  width: 100%
}
#contact .contact .inputBlk__td textarea {
  width: 100%;
  height: 153px;
  padding: 10px
}
#contact .contact .inputBlk__confirmTxt {
  font-size: 16px;
  line-height: 1.375;
  margin-top: 12px
}
#contact .form__submitBtn.-right {
  margin-left: auto;
  margin-right: 0
}
@media screen and (min-width:768px) {
  #contact .contact.phaseSelect {
    margin: 0 auto
  }
}
#contact .contact.phaseInput .form__backBtn {
  max-width: unset;
  width: auto;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  margin: 32px auto 0 0;
  padding: 6px 25px 6px 51px
}
@media screen and (min-width:768px) {
  #contact .contact.phaseInput .form__backBtn {
    margin: 35px auto 0 0
  }
}
#contact .contact.phaseInput .form__backBtn::after {
  content: "";
  display: none
}
@media screen and (min-width:768px) {
  #contact .contact.phaseConfirm,
  #contact .contact.phaseInput {
    margin: 0 auto
  }
}
#contact .contact.phaseConfirm .checkboxWrap,
#contact .contact.phaseInput .checkboxWrap {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start
}
#contact .contact.phaseConfirm .checkbox,
#contact .contact.phaseInput .checkbox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  cursor: pointer;
  margin-top: 20px;
  margin-right: 30px
}
@media screen and (min-width:768px) {
  #contact .contact.phaseConfirm .checkbox,
  #contact .contact.phaseInput .checkbox {
    width: auto;
    margin-right: 30px
  }
}
#contact .contact.phaseConfirm .checkbox:not(:first-of-type),
#contact .contact.phaseInput .checkbox:not(:first-of-type) {
  margin-top: 20px
}
#contact .contact.phaseConfirm .checkbox.-indent,
#contact .contact.phaseInput .checkbox.-indent {
  width: 100%;
  margin-top: 12px
}
#contact .contact.phaseConfirm .enQueteBlk__lead,
#contact .contact.phaseInput .enQueteBlk__lead {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.73333;
  margin-top: 14.6px
}
#contact .contact.phaseConfirm .enQueteBlk__wrap,
#contact .contact.phaseInput .enQueteBlk__wrap {
  margin-left: 34px;
  margin-top: 12px;
  width: 100%
}
#contact .contact.phaseConfirm .enQueteBlk__th,
#contact .contact.phaseInput .enQueteBlk__th {
  font-size: 16px;
  font-weight: 700
}
#contact .contact.phaseConfirm .enQueteBlk__td input,
#contact .contact.phaseConfirm .enQueteBlk__td textarea,
#contact .contact.phaseInput .enQueteBlk__td input,
#contact .contact.phaseInput .enQueteBlk__td textarea {
  border: 1px solid #ddd;
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
  border-radius: 4px;
  margin-top: 6px;
  display: block;
  font-size: 16px;
  padding: 12px 10px;
  width: 100%;
  font-size: 15px
}
#contact .contact.phaseConfirm .enQueteBlk__td.-noTxt input,
#contact .contact.phaseInput .enQueteBlk__td.-noTxt input {
  margin-top: 0
}
#contact .contact.phaseConfirm .enQueteBlk__bring,
#contact .contact.phaseInput .enQueteBlk__bring {
  font-size: 16px;
  line-height: 1.333;
  margin-top: 9px
}
#contact .contact.phaseConfirm .enQueteBlk__url,
#contact .contact.phaseInput .enQueteBlk__url {
  font-size: 16px;
  font-weight: 700;
  margin-top: 40px
}
#contact .contact.phaseConfirm .enQueteBlk__another,
#contact .contact.phaseInput .enQueteBlk__another {
  font-size: 16px;
  line-height: 1.333;
  margin-top: 40px
}
#contact .contact.phaseConfirm .confirm__note,
#contact .contact.phaseInput .confirm__note {
  font-size: 16px;
  line-height: 1.5714;
  margin-top: 40px;
  padding: 24px 0;
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #ddd
}
#contact .contact.phaseConfirm .privacyCheckBox,
#contact .contact.phaseInput .privacyCheckBox {
  margin-top: 28px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex
}
@media screen and (min-width:768px) {
  #contact .contact.phaseConfirm .privacyCheckBoxWrap,
  #contact .contact.phaseInput .privacyCheckBoxWrap {
    text-align: left
  }
}
#contact .contact.phaseConfirm .form__submitBtn,
#contact .contact.phaseInput .form__submitBtn {
  margin-top: 40px
}
@media screen and (min-width:768px) {
  #contact .contact.phaseConfirm .pcFlex,
  #contact .contact.phaseInput .pcFlex {
    margin-top: 40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse
  }
  #contact .contact.phaseConfirm .pcFlex .form__backBtn,
  #contact .contact.phaseConfirm .pcFlex .form__submitBtn,
  #contact .contact.phaseInput .pcFlex .form__backBtn,
  #contact .contact.phaseInput .pcFlex .form__submitBtn {
    margin-top: 0!important
  }
}
#contact .contact.phaseConfirm .form__backBtn,
#contact .contact.phaseConfirm .form__submitBtn,
#contact .contact.phaseInput .form__backBtn,
#contact .contact.phaseInput .form__submitBtn {
  cursor: pointer
}
#contact .contact.phaseConfirm .form__backBtn input,
#contact .contact.phaseConfirm .form__submitBtn input,
#contact .contact.phaseInput .form__backBtn input,
#contact .contact.phaseInput .form__submitBtn input {
  cursor: pointer
}
#contact .contact.phaseConfirm .inputBlk__th {
  border: none;
  padding: 0
}
#contact .contact.phaseConfirm .inputBlk__wrap:not(:first-of-type) {
  margin-top: 40px
}
#contact .contact.phaseConfirm .enQueteBlk__lead {
  margin-top: 40px
}
#contact .contact.phaseConfirm .privacyCheckBox {
  margin-top: 28px
}
@media screen and (min-width:768px) {
  #contact .contact.complate {
    margin: 0 auto
  }
}
#contact .contact.complate .complate__txt {
  margin-top: 35px;
  font-size: 16px;
  line-height: 1.625
}
#contact .privacy__boxTtl {
  font-size: 18px;
  font-weight: 700;
  margin-top: 60px
}
#contact .privacy__boxNote {
  margin-top: 20px;
  font-size: 16px
}
#contact .privacy__box {
  margin-top: 20px;
  padding: 25px;
  background-color: #f5f6f7;
  overflow-y: visible;
}
@media screen and (min-width:768px) {
  #contact .privacy__box {
    padding: 35px
  }
}
#contact .privacy__boxSubTtl {
  font-size: 18px;
  font-weight: 700
}
#contact .privacy__boxTxt {
  font-size: 16px;
  margin-top: 20px
}
#contact .privacy__boxTxt a {
  text-decoration: underline;
  font-size: 16px
}
#contact .privacy__boxTxt + h5 {
  margin-top: 40px
}
#recruit h2 {
  line-height: 1.4
}
#recruit .imgKv {
  background-image: url(../../../images/recruit/kv_img.jpg)
}
@media screen and (min-width:768px) {
  #recruit .imgKv {
    background-image: url(../../../images/recruit/kv_img_pc.jpg)
  }
}
#recruit .recruit {
  margin-top: 80px;
  padding-bottom: 100px
}
#recruit .recruit__mainLogo {
  margin-top: 34px
}
@media screen and (min-width:1025px) {
  #recruit .recruit__mainLogo {
    max-width: 540px
  }
}
#recruit .recruit__linkWrap {
  margin-top: 40px
}
#recruit .recruit__linkWrap ul {
  margin-top: 10px
}
@media screen and (min-width:1025px) {
  #recruit .recruit__linkWrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between
  }
}
#recruit .recruit__linkWrap > li:not(:first-of-type) {
  margin-top: 40px
}
@media screen and (min-width:1025px) {
  #recruit .recruit__linkWrap > li:not(:first-of-type) {
    margin-top: 0
  }
}
@media screen and (min-width:1025px) {
  #recruit .recruit__linkWrap > li {
    max-width: 450px;
    width: 45%
  }
}
#recruit .recruit__section {
  padding-top: 90px
}
#recruit .recruit__group ul {
  margin-top: 6px
}
@media screen and (min-width:1025px) {
  #recruit .recruit__group ul {
    margin-top: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap
  }
}
#recruit .recruit__group ul li {
  margin-top: 40px
}
#recruit .recruit__group ul li:not(:first-of-type) {
  margin-top: 60px
}
@media screen and (min-width:1025px) {
  #recruit .recruit__group ul li {
    margin-top: 60px;
    max-width: 430px;
    width: 45.74%
  }
}
#recruit .recruit__group ul li a {
  display: block;
  width: 100%;
  position: relative
}
#recruit .recruit__group ul li a::after {
  content: "";
  width: 14px;
  height: 12px;
  position: absolute;
  top: 20px;
  right: 15px;
  background: url(../images/common/outbound_link_icon.svg) center center/contain no-repeat
}
#recruit .recruit__group ul li a img {
  -webkit-box-shadow: 0 0 0 1.5px #ddd;
  box-shadow: 0 0 0 1.5px #ddd
}
#recruit .recruit__group ul li p {
  font-size: 12px;
  font-weight: 700;
  margin-top: 2px
}
#recruit .recruit__group ul li p span {
  padding: 2px 0;
  display: block
}
#recruit .recruit__group ul li p span:first-of-type {
  font-size: 16px
}
#recruit .recruit__group ul li p .-cate {
  background: #e0e0e0;
  padding: 0 3px;
  border-radius: 2px;
  display: inline-block;
  font-weight: 500
}
@media screen and (min-width:1025px) {
  #recruit .recruit__group ul li p.pcCol {
    width: 100%;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap
  }
}
#recruit .recruitLinkBlk {
  margin: 40px 0 0 0
}
@media screen and (min-width:1025px) {
  #recruit .recruitLinkBlk {
    margin: 40px 0 0 0
  }
}
#recruit .recruitLinkBlk__list {
  width: 100%
}
@media screen and (min-width:1025px) {
  #recruit .recruitLinkBlk__list {
    margin-top: 18px
  }
}
#recruit .recruitLinkBlk__list li {
  width: 100%;
  border-bottom: unset;
  padding: 0
}
@media screen and (min-width:1025px) {
  #recruit .recruitLinkBlk__list li {
    width: 100%
  }
}
#recruit .recruitLinkBlk__list li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 100%;
  padding: 24px 15px 24px 0;
  font-size: 16px;
  font-weight: 400;
  border-bottom: 1px solid #ddd
}
#recruit .recruitLinkBlk__list li .arrow__icon::after {
  content: "";
  display: inline-block;
  width: 11px;
  height: 10px;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 11px;
          flex: 0 0 11px;
  background: url(../../images/common/icon_arrow.svg)
}
#recruit .know {
  margin-top: 90px
}
#recruit .know section:not(:first-of-type) {
  margin-top: 60px
}
#recruit .know section figure {
  margin-top: 20px
}
@media screen and (min-width:1025px) {
  #recruit .know section figure {
    max-width: 566px;
    width: 57%
  }
}
@media screen and (min-width:1025px) {
  #recruit .know section .sectionWrap {
    max-width: 354px;
    width: 100%;
    margin-top: 37px
  }
}
@media screen and (min-width:1025px) {
  #recruit .know section.flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between
  }
}
@media screen and (min-width:1025px) {
  #recruit .know section.fdrr {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between
  }
}
#recruit .know section.movieLink {
  margin-top: 100px;
  text-align: center
}
#recruit .know section.movieLink figure {
  max-width: 520px;
  margin: 40px auto 0
}
#recruit .know section.movieLink .global__btn,
#recruit .know section.movieLink .global__btn--gray {
  margin-top: 32px
}
.commonBtnList li {
  margin: 0 auto
}
.commonBtnList li:not(:first-of-type) {
  margin-top: 10px
}
@media screen and (min-width:768px) {
  .commonBtnList li:not(:first-of-type) {
    margin-top: 0
  }
}
.ankerLinks {
  display: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 5px 4px;
  max-width: 980px;
  margin: 0 auto;
  width: 100%;
  background: #fff
}
.ankerLinks li {
  width: 32%;
  height: 50px
}
.ankerLinks li a {
  display: block;
  width: 100%;
  height: 100%;
  background: #222427;
  font-size: 13px;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  text-decoration: none
}
.ankerLinks li a::after {
  content: "";
  margin-top: -2px;
  background: url(../images/about_us/overview_arrow_w.svg) no-repeat center center/contain;
  height: 14px;
  width: 7.78px;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg)
}
.ankerLinks li a:hover {
  opacity: .9
}
.ankerFixed {
  position: fixed;
  bottom: 0;
  z-index: 10;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%)
}
#overview .subttl {
  font-size: 20px;
  font-weight: 700
}
#overview .access,
#overview .company {
  padding-top: 90px
}
@media screen and (min-width:768px) {
  #overview .access__list,
  #overview .company__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between
  }
}
#overview .access__list li,
#overview .company__list li {
  position: relative
}
@media screen and (min-width:768px) {
  #overview .access__list li,
  #overview .company__list li {
    width: 45%
  }
}
#overview .access__list li .global__btn:not(:first-of-type),
#overview .company__list li .global__btn:not(:first-of-type) {
  margin-top: 0
}
#overview .access__list li .global__btn.mt30,
#overview .company__list li .global__btn.mt30 {
  margin: 30px auto 0 0;
  background: unset
}
#overview .access__subttl,
#overview .company__subttl {
  font-size: 22px;
  letter-spacing: .1em;
  padding-top: 25px;
  font-weight: 500;
  line-height: 1.4
}
@media screen and (min-width:768px) {
  #overview .access__subttl,
  #overview .company__subttl {
    padding-top: 60px;
    font-size: 24px
  }
}
@media screen and (max-width:767px) {
  #overview .access .bgcBlc,
  #overview .company .bgcBlc {
    padding-bottom: 25px;
    width: 100vw;
    padding-left: 20px;
    padding-right: 20px;
    margin: 0 calc(50% - 50vw)
  }
  #overview .access .bgcBlc.-gray,
  #overview .company .bgcBlc.-gray {
    background: #f6f6f6
  }
}
#overview .access__txt,
#overview .company__txt {
  margin-top: 20px;
  font-size: 15px;
  line-height: 1.333
}
@media screen and (min-width:768px) {
  #overview .access__txt,
  #overview .company__txt {
    font-size: 16px
  }
}
#overview .access__txt.mt,
#overview .company__txt.mt {
  margin-top: 30px
}
#overview .access__serviceLink,
#overview .company__serviceLink {
  font-size: 16px;
  text-decoration: underline;
  display: inline-block;
  line-height: 2
}
#overview .access__serviceLink[href=""],
#overview .company__serviceLink[href=""] {
  text-decoration: none
}
#overview .access__line,
#overview .company__line {
  display: block;
  width: 100%;
  height: 1px;
  background: #000;
  margin: 7.5px 0
}
@media screen and (min-width:768px) {
  #overview .access__line,
  #overview .company__line {
    width: 50%
  }
}
#overview .access__dt,
#overview .company__dt {
  font-size: 22px;
  letter-spacing: .1em;
  font-weight: 500;
  margin-top: 25px
}
#overview .access__dt::before,
#overview .company__dt::before {
  top: 6px
}
@media screen and (min-width:768px) {
  #overview .access__dt,
  #overview .company__dt {
    font-size: 22px
  }
  #overview .access__dt::before,
  #overview .company__dt::before {
    top: 8px
  }
}
#overview .access__qrLink,
#overview .company__qrLink {
  display: block;
  position: absolute;
  width: 25%;
  top: 45px;
  right: 0;
  max-width: 100px
}
#overview .access__accessLinks,
#overview .company__accessLinks {
  font-size: 13px;
  margin-top: 60px
}
@media screen and (min-width:768px) {
  #overview .access__accessLinks,
  #overview .company__accessLinks {
    max-width: 385px;
    margin: 60px 0 0 0;
    font-size: 14px
  }
}
#overview .access__accessLinks::hover,
#overview .company__accessLinks::hover {
  opacity: .9
}
#overview .access__ankerLinks,
#overview .company__ankerLinks {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  max-width: unset;
  margin-top: 40px
}
#overview .access__ankerLinks li,
#overview .company__ankerLinks li {
  max-width: 400px;
  margin: 0 auto
}
#overview .access__ankerLinks li a,
#overview .company__ankerLinks li a {
  max-width: 400px
}
#overview .access__ankerLinks li a:after,
#overview .company__ankerLinks li a:after {
  margin-left: 10px;
  display: inline-block
}
#overview .access__serviceLink,
#overview .company__serviceLink {
  font-size: 16px;
  text-decoration: underline;
  display: inline-block;
  line-height: 2
}
#overview .access .-outboundLinkFlex,
#overview .company .-outboundLinkFlex {
  margin-top: 30px
}
#overview .access .-outboundLinkFlex,
#overview .company .-outboundLinkFlex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}
@media screen and (min-width:768px) {
  #overview .access .-outboundLinkFlex,
  #overview .company .-outboundLinkFlex {
    margin: 30px 0 0 auto
  }
}
#overview .access__privacy,
#overview .company__privacy {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 10px
}
#overview .access__privacy figure,
#overview .company__privacy figure {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 67px;
          flex: 0 0 67px;
  margin-right: 12px
}
#overview .access__privacy p,
#overview .company__privacy p {
  font-size: 15px;
  line-height: 1.333
}
@media screen and (min-width:768px) {
  #overview .access__privacy p,
  #overview .company__privacy p {
    font-size: 16px
  }
}
@media screen and (min-width:768px) {
  #overview .company .commonTtl,
  #overview .company .company__accessLinks,
  #overview .company__subttl,
  #overview .company__txt {
    width: 100%;
    margin-left: auto;
    margin-right: auto
  }
}
@media screen and (min-width:768px) {
  #overview .company__list {
    display: block;
    margin: 0 auto
  }
  #overview .company__list li {
    width: 100%;
    margin-left: 0;
    margin-right: auto
  }
}
@media screen and (min-width:768px) {
  #overview .access__dt {
    margin-top: 60px
  }
}
#overview .origin {
  padding-top: 90px
}
#overview .origin__txtBtnWrap {
  text-align: right;
  display: block;
  margin-top: 30px
}
#overview .origin__txtBtn {
  display: inline-block;
  line-height: 1.714;
  font-size: 14px;
  text-align: right;
  border-bottom: 1px solid #222427;
  position: relative;
  padding-right: 25px;
  line-height: 1;
  cursor: pointer
}
#overview .origin__txtBtn:after {
  content: "";
  background: url(../images/about_us/overview_arrow_b.svg) no-repeat center center/contain;
  height: 9.7px;
  width: 16px;
  display: inline-block;
  position: absolute;
  right: 0;
  bottom: 2px
}
#overview .origin figure {
  margin-top: 20px
}
@media screen and (min-width:768px) {
  #overview .origin figure {
    margin: 40px auto 0
  }
}
#overview .origin__txt {
  margin-top: 35px;
  line-height: 1.714;
  font-size: 14px
}
@media screen and (min-width:768px) {
  #overview .origin__txt {
    max-width: 800px;
    margin: 35px auto 0;
    font-size: 16px
  }
}
#overview .origin__txt span {
  font: inherit
}
#overview .origin__txt #addElm {
  display: none
}
#overview .origin .commonBtn-plus {
  margin-top: 15px
}
@media screen and (min-width:768px) {
  #overview .origin .commonBtn-plus {
    max-width: 385px;
    margin: 30px auto 0
  }
}
#overview .origin .commonBtn-plus.active::after {
  -webkit-transform: rotate(0);
          transform: rotate(0)
}
#overview .access {
  padding-bottom: 100px
}
@media screen and (max-width:767px) {
  #overview .access .bgcBlc {
    padding-top: 25px
  }
  #overview .access .access__dt {
    margin-top: 0
  }
}
#overview .access__list {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap
}
#overview .access__list .access__dt.mt {
  margin-top: 20px
}
@media screen and (min-width:768px) {
  #overview .access__list .access__dt.mt {
    margin-top: 40px
  }
}
#overview .access__txt {
  line-height: 1.716
}
#overview .access__txt .-bold {
  font-weight: 700
}
#overview .access__txt.mt0 {
  margin-top: 0
}
#overview .access__qrLink {
  width: 30%;
  max-width: 100px
}
#overview .access__gmap {
  height: 0;
  overflow: hidden;
  padding-bottom: 74.6%;
  position: relative;
  margin-top: 20px
}
#overview .access__gmap iframe {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%
}
@media screen and (min-width:768px) {
  #philosophy .contentWrap {
    margin: 0 auto
  }
}
#philosophy section {
  padding-top: 90px
}
#philosophy section:not(:first-of-type) {
  padding-top: 90px
}
#philosophy .management__leadBlk {
  margin-top: 58px;
  text-align: center
}
#philosophy .management__leadBlk p {
  font-size: 18px;
  line-height: 1.666
}
#philosophy .management__leadBlk p:not(:first-of-type) {
  margin-top: 20px
}
#philosophy .mission {
  margin-top: 40px
}
#philosophy .mission__blk {
  max-width: 500px;
  margin: 40px auto 0
}
#philosophy .mission__list {
  margin-top: 58px
}
#philosophy .mission__list li:not(:first-of-type) {
  margin-top: 60px
}
@media screen and (min-width:768px) {
  #philosophy .mission__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between
  }
  #philosophy .mission__list li:not(:first-of-type) {
    margin-top: 0
  }
}
@media screen and (min-width:768px) and (min-width:768px) {
  #philosophy .mission__list li {
    width: 45%
  }
}
#philosophy .mission__subttl {
  font-size: 22px;
  font-weight: 500
}
@media screen and (min-width:768px) {
  #philosophy .mission__subttl {
    font-size: 24px
  }
}
#philosophy .mission__lead {
  font-size: 16px;
  line-height: 1.714
}
@media screen and (min-width:768px) {
  #philosophy .mission__lead {
    font-size: 16px
  }
}
#philosophy .mission__disc {
  font-size: 18px;
  line-height: 1
}
#philosophy .mission__disc:not(:first-of-type) {
  margin-top: 10px;
  margin-bottom: 15px
}
@media screen and (min-width:768px) {
  #philosophy .mission__disc {
    font-size: 20px
  }
}
#philosophy .mission .mt {
  margin-top: 30px
}
#philosophy .logo {
  padding-bottom: 90px
}
#philosophy .logo figure {
  margin-top: 20px
}
@media screen and (min-width:768px) {
  #philosophy .logo figure {
    max-width: 600px;
    margin: 20px auto 0
  }
}
#philosophy .logo__lead {
  font-size: 16px;
  line-height: 1.714
}
@media screen and (min-width:768px) {
  #philosophy .logo__lead {
    font-size: 16px;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto
  }
}
#philosophy .logo .-en {
  margin-top: 55px
}
#philosophy .logo .-jp {
  margin-top: 30px
}
#message .message.aboutUs {
  padding-bottom: 100px
}
#culture .contentWrap section:first-of-type {
  margin-top: 60px
}
#culture .contentWrap section:not(:first-of-type) {
  margin-top: 80px
}
#culture .section__mainimg {
  width: 100vw;
  margin: 0 calc(50% - 50vw);
  position: relative
}
@media screen and (min-width:768px) {
  #culture .section__wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between
  }
}
@media screen and (min-width:768px) {
  #culture .section__wrapper .section__blk {
    width: 46.5%
  }
}
#culture .section__ttl {
  font-size: 26px;
  color: #fff;
  position: absolute;
  bottom: 10px;
  left: 20px
}
@media screen and (min-width:768px) {
  #culture .section__ttl {
    font-size: 28px;
    top: auto;
    bottom: 30px;
    max-width: 940px;
    width: 100%;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%)
  }
}
#culture .section__lead {
  font-size: 14px;
  line-height: 1.875;
  margin-top: 33px
}
@media screen and (min-width:768px) {
  #culture .section__lead {
    font-size: 16px
  }
}
#culture .section__imgBlk {
  margin-top: 60px
}
@media screen and (min-width:768px) {
  #culture .section__imgBlk {
    margin-top: 100px
  }
}
#culture .section h3 {
  margin-top: 35px
}
@media screen and (min-width:768px) {
  #culture .section h3 {
    margin-top: 25px
  }
}
#culture .section__txt {
  margin-top: 20px;
  font-size: 14px;
  line-height: 1.714
}
@media screen and (min-width:768px) {
  #culture .section__txt {
    font-size: 16px
  }
}
#culture .recruitLink {
  display: block;
  margin-top: 80px;
  margin-bottom: 100px;
  position: relative
}
@media screen and (min-width:768px) {
  #culture .recruitLink {
    width: 100%;
    margin: 100px auto 100px;
    max-width: 450px;
    position: relativee
  }
  #culture .recruitLink:hover {
    opacity: .6
  }
  #culture .recruitLink::after {
    content: "";
    position: absolute;
    display: inline-block;
    width: 13px;
    height: 12px;
    background: url(../images/common/icon_arrow_w.svg);
    top: 50%;
    right: 25px;
    -webkit-transform: translate(-50%,-50%);
            transform: translate(-50%,-50%)
  }
}
#culture .recruitLink span {
  position: absolute;
  font-size: 16px;
  font-weight: 400;
  display: block;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%,-50%);
          transform: translate(-50%,-50%);
  color: #fff;
  white-space: nowrap
}
@media screen and (min-width:768px) {
  #culture .recruitLink span {
    top: 50%;
    left: 24px;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    color: #fff
  }
}
@media screen and (min-width:768px) {
  #culture .ankerLinks__blk-glay li {
    width: 29.787%;
    max-width: 280px
  }
  #culture .ankerLinks__blk-glay li a {
    padding: 15px 15px 15px 0
  }
}
#culture .ankerLinks__blk-glay li a::after {
  content: "";
  background: url(../images/faq/arrow_short_b.svg) no-repeat center center/contain;
  width: 14px;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 14px;
          flex: 0 0 14px;
  height: 8px
}
#clients .newsDetail__mainHeading {
  font-size: 34px
}
@media screen and (min-width:1025px) {
  #clients .newsDetail__mainHeading {
    font-size: 36px
  }
}
#clients .newsDetail__mainHeading::before {
  content: "";
  width: 10%;
  height: 4px;
  background: #000;
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translate(-50%,0);
  transform: translate(-50%,0)
}
@media screen and (min-width:1025px) {
  #clients .newsDetail__mainHeading::before {
    width: 2.5%
  }
}
#clients .clients {
  padding: 100px 0
}
#clients .clients__list {
  margin-top: 40px
}
@media (min-width:768px) {
  #clients .clients__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap
  }
}
#clients .clients__list li {
  font-size: 16px;
  line-height: 1.777;
  padding-right: 2%
}
@media (min-width:768px) {
  #clients .clients__list li {
    width: 50%
  }
}
#clients .clients__blk:not(:first-of-type) {
  margin-top: 100px
}
#clients .clients__bottomTxt {
  font-size: 14px;
  margin-top: 40px;
  text-align: right
}
.ankerLinks__blk-hover li a {
  -webkit-transition: .3s;
  transition: .3s
}
.ankerLinks__blk-hover li a::after {
  content: "";
  display: none!important
}
.ankerLinks__blk-hover li a .arrow {
  display: inline-block;
  vertical-align: middle;
  color: #333;
  line-height: 1;
  position: relative;
  width: 10px;
  height: 10px;
  -webkit-transition: .3s;
  transition: .3s;
  -webkit-transform: translateY(-25%) rotate(135deg);
          transform: translateY(-25%) rotate(135deg)
}
.ankerLinks__blk-hover li a .arrow::after,
.ankerLinks__blk-hover li a .arrow::before {
  content: "";
  position: absolute;
  background: currentColor;
  border-radius: .1em
}
.ankerLinks__blk-hover li a .arrow::before {
  top: 0;
  left: 0;
  right: 0;
  height: 2px
}
.ankerLinks__blk-hover li a .arrow::after {
  top: 0;
  right: 0;
  bottom: 0;
  width: 2px
}
.ankerLinks__blk-hover li a:hover {
  color: #d28903;
  border-color: #d28903
}
.ankerLinks__blk-hover li a:hover .arrow {
  color: #d28903
}
#logoguide .logoguide-heading {
  padding-top: 90px;
  padding-bottom: 130px
}
#logoguide .logoguide-heading--h1 {
  font-size: 34px;
  font-weight: 700;
  text-align: center;
  letter-spacing: .5px;
  color: #000
}
@media screen and (min-width:768px) {
  #logoguide .logoguide-heading--h1 {
    font-size: 36px
  }
}
#logoguide .logoguide-heading--h1 span {
  width: 10%;
  display: block;
  margin: 10px auto 0;
  height: 4px;
  background-color: #000
}
@media screen and (min-width:768px) {
  #logoguide .logoguide-heading--h1 span {
    width: 2.5%
  }
}
#logoguide .contentSec {
  padding-bottom: 80px
}
#logoguide .commonTtl {
  line-height: 1.6
}
#logoguide .contentTtl {
  color: #222427;
  font-size: 26px;
  font-weight: 700;
  margin-bottom: 40px;
  line-height: 1
}
@media screen and (min-width:768px) {
  #logoguide .contentTtl {
    font-size: 28px
  }
}
#logoguide .blockTtl {
  margin-top: 40px;
  font-size: 22px;
  font-weight: 500;
  line-height: 1
}
@media screen and (min-width:768px) {
  #logoguide .blockTtl {
    font-size: 24px;
    margin-top: 60px
  }
}
#logoguide .leadTxt {
  margin-top: 20px;
  font-size: 16px;
  line-height: 1.875
}
#logoguide .bodyTxt {
  margin-top: 20px;
  font-size: 16px;
  line-height: 1.875
}
#logoguide .typeTtl {
  margin-bottom: 20px;
  padding-left: 1.1em;
  font-size: 14px;
  text-indent: -1.1em
}
@media screen and (min-width:768px) {
  #logoguide .typeTtl {
    font-size: 16px
  }
}
#logoguide .typeTtl::before {
  content: "●";
  font-size: 1.1em
}
#logoguide .note {
  margin-top: 20px;
  font-size: 16px
}
#logoguide .colorLst li {
  margin-top: 20px
}
#logoguide .colorLst li::before {
  content: "";
  display: inline-block;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  vertical-align: middle
}
#logoguide .colorLst li .color_code {
  display: inline-block;
  margin-left: 20px;
  font-size: 16px;
  line-height: 1.4;
  vertical-align: middle
}
#logoguide .colorLst.flex {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between
}
#logoguide .colorLst.flex li {
  width: 46%
}
@media screen and (min-width:768px) {
  #logoguide .colorLst.flex li {
    width: 280px;
    margin-top: 40px;
    text-align: center
  }
  #logoguide .colorLst.flex li .color_code {
    margin: 10px 0 0
  }
}
#logoguide .colorLst .rgb_main::before {
  background: #d28903
}
#logoguide .colorLst .rgb_black::before {
  background: #000
}
#logoguide .colorLst .dic::before {
  background: #997b60
}
#logoguide .colorLst .cmyk_main::before {
  background: #b88625
}
#logoguide .colorLst .cmyk_black::before {
  background: #180a06
}
#logoguide .colorLst .cmyk_monoblack::before {
  background: #000
}
#logoguide .responsible {
  padding-bottom: 80px;
  font-size: 18px;
  font-weight: 700;
  text-align: center;
  line-height: 1
}
@media screen and (min-width:768px) {
  #logoguide .responsible {
    font-size: 24px
  }
}
#logoguide #origin .originBlk {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column
}
#logoguide #origin dl {
  margin-top: 40px
}
@media screen and (min-width:768px) {
  #logoguide #origin .origin__image {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
    width: 65%;
    margin: 40px auto 0
  }
}
#logoguide #pattern .em {
  color: #d28903;
  font-weight: 700
}
#logoguide #pattern .pattern__type {
  margin-top: 40px
}
@media screen and (max-width:767px) {
  #logoguide #pattern .pattern__other li {
    margin-top: 60px
  }
}
@media screen and (min-width:768px) {
  #logoguide #pattern .pattern__type {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between
  }
  #logoguide #pattern .pattern__basic {
    width: 450px
  }
  #logoguide #pattern .pattern__other {
    width: 450px
  }
  #logoguide #pattern .pattern__other li:first-child {
    width: 200px
  }
  #logoguide #pattern .pattern__other li:not(:first-child) {
    margin-top: 40px
  }
}
#logoguide #color .color__type {
  display: inline-block;
  vertical-align: top
}
#logoguide #color .color__type.type__rgb {
  margin-right: 40px
}
#logoguide #color .color__type.type__cmyk {
  display: block
}
@media screen and (min-width:768px) {
  #logoguide #color .color__type.type__cmyk .color_code {
    display: block
  }
}
@media screen and (min-width:768px) {
  #logoguide #color .color__type.type__rgb li {
    display: inline-block
  }
  #logoguide #color .color__type.type__rgb li:first-child {
    margin-right: 60px
  }
  #logoguide #color .color__type.type__dic {
    margin-left: 120px
  }
}
#logoguide #placement .color__type {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between
}
#logoguide #placement .color__type::after,
#logoguide #placement .color__type::before {
  content: "";
  width: 220px;
  height: 0
}
#logoguide #placement .color__type::before {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1
}
#logoguide #placement li {
  width: 46%;
  margin-top: 40px
}
@media screen and (min-width:768px) {
  #logoguide #placement li {
    width: 220px
  }
}
#logoguide #background .background__image {
  margin: 40px -20px 0 0;
  overflow: auto
}
@media screen and (min-width:768px) {
  #logoguide #background .background__image {
    margin: 40px 0 0
  }
}
@media screen and (max-width:767px) {
  #logoguide #background .background__image img {
    width: 940px
  }
}
#logoguide #isolation li {
  margin-top: 40px
}
@media screen and (min-width:768px) {
  #logoguide #isolation li {
    width: 500px
  }
  #logoguide #isolation li.isolation__basic {
    display: inline-block
  }
  #logoguide #isolation li:nth-child(2) {
    display: inline-block;
    width: 400px;
    margin-left: 35px
  }
  #logoguide #isolation li:nth-child(4) {
    display: inline-block;
    width: 510px
  }
  #logoguide #isolation li:nth-child(4) img {
    margin-left: -10px
  }
}
#logoguide #size .size__type.flex {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between
}
#logoguide #size .size__type.flex li {
  width: 46%;
  margin-top: 60px
}
@media screen and (min-width:768px) {
  #logoguide #size .size__type.flex li {
    width: 200px
  }
}
#logoguide #size .size__type .typeTtl {
  min-height: 48px
}
#logoguide #group .group__type.flex {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between
}
@media screen and (min-width:768px) {
  #logoguide #group .group__type.flex {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    width: 450px
  }
}
#logoguide #group .group__type.flex li {
  width: 46%;
  margin-top: 60px
}
#logoguide #group .group__type .colorLst li {
  display: inline-block
}
#logoguide #group .group__type .colorLst li:first-child {
  margin-right: 20px
}
@media screen and (min-width:768px) {
  #logoguide #group .group__type .colorLst li {
    display: block
  }
}
@media screen and (min-width:768px) {
  #logoguide #group .group__type.type__horizontal {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-left: 30px
  }
  #logoguide #group .group__type.type__horizontal li {
    width: 100%
  }
  #logoguide #group .group__type__wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
  }
  #logoguide #group .group__type__wrap .group__type:not(:first-child) {
    margin-left: 60px
  }
}
@media screen and (min-width:768px) {
  #logoguide #group .group__type.type__image {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between
  }
  #logoguide #group .group__type.type__image .group__isolation {
    width: 500px
  }
  #logoguide #group .group__type.type__image .group__size {
    display: inline-block;
    width: 420px
  }
}
#logoguide #group .group__isolation img {
  margin-top: 40px
}
#logoguide #group .group__size {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 40px
}
#logoguide #group .group__size img {
  width: 50%
}
@media screen and (min-width:768px) {
  #logoguide #group .group__size img {
    width: 200px
  }
}
#logoguide #text .text__type li {
  margin-top: 60px
}
#logoguide #text .text__rule {
  font-size: min(5.4vw,24px);
  font-weight: 700
}
@media screen and (min-width:768px) {
  #logoguide #text .text__rule {
    font-size: 40px
  }
}
#logoguide #text .text__rule .halfsize {
  position: relative;
  background: #90dafb
}
#logoguide #text .text__rule .halfsize::before {
  content: "半角";
  margin: 0 -12px;
  position: absolute;
  bottom: -24px;
  left: 0;
  font-size: 12px;
  font-weight: 400;
  -webkit-transform: translateX(6px);
          transform: translateX(6px)
}
@media screen and (min-width:768px) {
  #logoguide #text .text__rule .halfsize::before {
    font-size: 14px;
    -webkit-transform: translateX(7px);
            transform: translateX(7px)
  }
}
#logoguide #misuse .misuse__image {
  margin: 40px -20px 0 0;
  overflow: auto
}
#logoguide #misuse .misuse__image img {
  width: 940px
}
@media screen and (min-width:768px) {
  #logoguide #misuse .misuse__image {
    margin: 40px 0 0
  }
}
#logoguide .flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}
#logoguide .flex.justify-content-between {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between
}
#logoguide .mt_20 {
  margin-top: 20px
}
#logoguide .mt_40 {
  margin-top: 40px
}
#logoguide .mt_60 {
  margin-top: 60px
}
#logoguide .mt_80 {
  margin-top: 80px
}
#logoguide .bold {
  font-weight: 700
}
#sns {
  background-color: unset;
  padding-bottom: 100px
}
#sns .imgKv {
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  background-image: url(../images/sns/kv_img_sp.jpg)
}
@media screen and (min-width:768px) {
  #sns .imgKv {
    background-image: url(../images/sns/kv_img.jpg)
  }
}
#sns .imgKv__ttl {
  color: #fff;
  font-weight: 700
}
#sns .imgKv__line {
  background: #fff
}
#sns .tabListWrap {
  max-width: 360px;
  margin: 0 auto;
  border-bottom: 1px solid #222427
}
@media screen and (min-width:768px) {
  #sns .tabListWrap {
    max-width: 980px
  }
}
#sns .tabList {
  margin: 80px auto 0;
  max-width: 360px;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}
@media screen and (min-width:768px) {
  #sns .tabList {
    margin: 80px auto 0 0;
    max-width: unset
  }
}
#sns .tabList .tab {
  width: 50%;
  border: unset;
  font-size: 16px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 50px;
  cursor: pointer;
  font-weight: 700;
  background: #f5f6f7;
  color: #222427
}
#sns .tabList .tab.active {
  color: #fff;
  background: #222427
}
#sns .tabContents {
  display: none
}
#sns .tabContents__ttl {
  font-size: 22px;
  font-weight: 400;
  margin-top: 40px
}
@media screen and (min-width:768px) {
  #sns .tabContents__ttl:first-of-type {
    margin-top: 60px
  }
}
#sns .tabContents__ttl:not(:first-of-type) {
  margin-top: 80px
}
#sns .tabContents__wrapper {
  margin-top: 22px
}
@media screen and (min-width:768px) {
  #sns .tabContents__wrapper {
    margin-top: 40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between
  }
}
#sns .tabContents__blk {
  margin-top: 40px
}
#sns .tabContents__blk:nth-of-type(1) {
  margin-top: 0
}
#sns .tabContents__blk .tabContents__bnr img {
  -webkit-box-shadow: 0 0 0 1.5px #ddd;
  box-shadow: 0 0 0 1.5px #ddd
}
@media screen and (min-width:768px) {
  #sns .tabContents__blk {
    width: 47.5%;
    max-width: 430px;
    margin-top: 60px
  }
  #sns .tabContents__blk:nth-of-type(2) {
    margin-top: 0
  }
}
#sns .tabContents__bnr {
  display: block;
  position: relative
}
@media screen and (min-width:768px) {
  #sns .tabContents__bnr {
    width: 100%;
    max-width: 430px
  }
}
#sns .tabContents__bnr:hover .tabContents__hoverBox {
  opacity: 1
}
#sns .tabContents__hoverBox {
  margin: auto;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transition: .3s cubic-bezier(.45,0,.55,1);
  transition: .3s cubic-bezier(.45,0,.55,1);
  opacity: 0;
  width: 100%;
  height: 100%;
  font-size: 16px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center;
  background: rgba(34,36,39,.8);
  color: #fff;
  padding: 10px 20px
}
#sns .tabContents .icon-black:after,
#sns .tabContents .icon-white:after {
  content: "";
  width: 16px;
  height: 13px;
  position: absolute;
  top: 10px;
  right: 10px;
  background: url(../images/sns/outbound_link_icon.svg) center center/contain no-repeat
}
#sns .tabContents .professionals__link__info {
  width: 100%;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 5px
}
#sns .tabContents__tagWrap {
  margin-left: 0;
  margin-right: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: 2px
}
#sns .tabContents__tag {
  margin-right: 8px;
  background: #e0e0e0;
  font-size: 12px;
  border-radius: 2px;
  padding: 0 3px;
  margin-left: 0;
  font-weight: 500
}
#sns .tabContents__name {
  margin-top: 0;
  font-weight: 700;
  font-size: 14px;
  background: unset;
  border-radius: unset;
  padding: 0;
  margin-left: 0;
  margin-right: 8px
}
@media screen and (min-width:768px) {
  #sns .tabContents__name {
    font-size: 16px
  }
}
#sns .tabContents__link {
  font-size: 14px;
  margin-top: 8px;
  line-height: 1;
  word-break: break-all
}
@media screen and (min-width:768px) {
  #sns .tabContents__link {
    font-size: 16px
  }
}
#sns .tabContents__snsLinks {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap
}
#sns .tabContents__snsLinks a {
  margin-top: 14px;
  display: block;
  width: 30px
}
@media screen and (min-width:768px) {
  #sns .tabContents__snsLinks a {
    font-size: 18px
  }
}
#sns .tabContents__snsLinks a:not(:first-of-type) {
  margin-left: 15px
}
#sns .tabContents.show {
  display: block
}
#faq .imgKv {
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  background-image: url(../images/faq/kv_img_sp.jpg)
}
@media screen and (min-width:768px) {
  #faq .imgKv {
    background-image: url(../images/faq/kv_img.jpg)
  }
}
#faq .imgKv__ttl {
  color: #fff;
  font-weight: 700
}
#faq .imgKv__line {
  background: #fff
}
#faq .common-container {
  padding-bottom: 100px
}
#faq .anchor-item--no-arrow {
  font-size: 16px
}
#faq .common-container p {
  font-size: 16px
}
#faq .common-container p a {
  font-size: 16px
}
#faq .faq {
  padding-bottom: 100px
}
#faq .faq__ttl {
  font-size: 24px;
  font-weight: 700;
  padding-top: 60px
}
@media screen and (min-width:768px) {
  #faq .faq__ttl {
    padding-top: 80px
  }
}
#faq .faq__wrapper {
  margin-top: 20px
}
@media screen and (min-width:768px) {
  #faq .faq__wrapper {
    margin-top: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap
  }
}
#faq .faq__blk {
  margin-top: 10px
}
@media screen and (min-width:768px) {
  #faq .faq__blk {
    margin-top: 45px;
    width: 45%
  }
}
#faq .faq__questionBox {
  background: #f5f6f7;
  border: 1px solid #222427;
  padding: 15px 20px
}
#faq .faq__questionTxt {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.5556
}
#faq .faq__questionTtl {
  font-size: 16px;
  margin-bottom: 15px
}
#faq .faq__anserBox {
  padding: 15px 0 25px
}
#faq .faq__anserTxt {
  font-size: 14px;
  line-height: 1.714
}
#faq .faq__contactBtn {
  margin-top: 60px
}
#faq .common-link {
  font-size: 14px;
  padding-left: 0
}
#faq .common-link::before {
  content: none;
  display: none
}
#faq .common-heading--h4 {
  font-size: 18px;
  font-weight: 700
}
#faq p.common-mb {
  margin-bottom: 24px
}
@media screen and (min-width:768px) {
  #faq p.common-mb {
    margin-bottom: 60px
  }
}
#services-arch {
  padding-bottom: 0
}
#services-arch .imgKv {
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  background-image: url(../images/services/services_kv_img_sp.jpg)
}
@media screen and (min-width:768px) {
  #services-arch .imgKv {
    background-image: url(../images/services/services_kv_img.jpg)
  }
}
#services-arch .imgKv__ttl {
  color: #fff;
  font-weight: 700
}
#services-arch .imgKv__line {
  background: #fff
}
#services-arch .tabListWrap {
  max-width: 360px;
  margin: 0 auto;
  border-bottom: 1px solid #222427
}
@media screen and (min-width:768px) {
  #services-arch .tabListWrap {
    max-width: 980px
  }
}
#services-arch .tabList {
  margin: 40px auto 0;
  max-width: 360px;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}
@media screen and (min-width:768px) {
  #services-arch .tabList {
    margin: 80px auto 0 0;
    max-width: unset
  }
}
#services-arch .tabList .tab {
  width: 50%;
  border: unset;
  font-size: 16px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 50px;
  cursor: pointer;
  font-weight: 700;
  background: #f5f6f7;
  color: #222427
}
#services-arch .tabList .tab.active {
  background: unset;
  color: #fff;
  background: #222427
}
#services-arch .tabList.bottom {
  margin-top: 100px
}
#services-arch .tabList.bottom .tab {
  border-top: unset;
  border-bottom: unset
}
#services-arch .top__lead {
  font-size: 14px;
  line-height: 1.714;
  margin-top: 40px
}
@media screen and (min-width:768px) {
  #services-arch .top__lead {
    font-size: 16px;
    margin-top: 80px
  }
}
#services-arch .top__links {
  text-decoration: underline;
  display: block;
  margin-top: 15px;
  font-size: 16px
}
#services-arch .tabContents {
  display: none
}
#services-arch .tabContents__lead {
  font-size: 14px;
  margin-top: 35px;
  line-height: 1.7
}
@media screen and (min-width:768px) {
  #services-arch .tabContents__lead {
    font-size: 16px
  }
}
#services-arch .tabContents__mainImg {
  width: 100vw;
  margin: 35px calc(50% - 50vw) 0
}
@media screen and (min-width:768px) {
  #services-arch .tabContents__mainImg {
    max-width: 700px;
    margin: 35px auto 0
  }
}
#services-arch .tabContents__ttl {
  font-size: 26px;
  font-weight: 700;
  margin-top: 80px;
  line-height: 1.411
}
@media screen and (min-width:768px) {
  #services-arch .tabContents__ttl {
    font-size: 28px
  }
}
#services-arch .tabContents__ttl.mt {
  margin-top: 35px
}
@media screen and (min-width:768px) {
  #services-arch .tabContents__ttl.mt {
    margin-top: 75px
  }
}
#services-arch .tabContents .linkBlk__list {
  margin-top: 5px;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between
}
#services-arch .tabContents .linkBlk__list li {
  width: 48.65%;
  margin-top: 10px;
  border: unset!important;
  -webkit-transition: .3s;
  transition: .3s
}
@media screen and (min-width:768px) {
  #services-arch .tabContents .linkBlk__list li {
    width: 44%;
    margin-top: 20px
  }
}
#services-arch .tabContents .linkBlk__list li a {
  padding: 24px 15px 24px 0;
  -webkit-transition: .3s;
  transition: .3s
}
@media screen and (min-width:768px) {
  #services-arch .tabContents .linkBlk__list li a {
    height: 60px
  }
}
#services-arch .tabContents {
  margin-top: 56px
}
#services-arch .tabContents .libraryLinkBlk {
  margin: 66px 0 0 0
}
#services-arch .tabContents .libraryLinkBlk__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap
}
#services-arch .tabContents .libraryLinkBlk__list li {
  padding: 24px 15px 24px 0;
  border-bottom: 1px solid #ddd;
  width: 100%
}
@media screen and (min-width:1025px) {
  #services-arch .tabContents .libraryLinkBlk__list li:nth-child(2n-1) {
    margin-right: 40px
  }
}
@media screen and (min-width:1025px) {
  #services-arch .tabContents .libraryLinkBlk__list li {
    width: calc(50% - 20px)
  }
}
#services-arch .tabContents .libraryLinkBlk__list li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 100%;
  padding: 0;
  font-size: 14px;
  font-weight: 400
}
#services-arch .tabContents .btnLinks__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap
}
#services-arch .tabContents .btnLinks__list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%
}
#services-arch .tabContents .btnLinks__list li .btnLinks__listIcon {
  width: auto;
  display: inline-block;
  margin-right: 10px
}
@media screen and (min-width:1025px) {
  #services-arch .tabContents .btnLinks__list li:nth-child(2n-1) {
    margin-right: 40px
  }
}
@media screen and (min-width:1025px) {
  #services-arch .tabContents .btnLinks__list li {
    width: calc(50% - 20px)
  }
}
#services-arch .tabContents .btnLinks__list li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  padding: 0;
  font-size: 16px;
  font-weight: 400;
  position: relative;
  padding: 24px 15px 24px 0;
  border-bottom: 1px solid #ddd
}
#services-arch .tabContents__linkBlk a {
  position: relative;
  display: block
}
#services-arch .tabContents__linkBlk a::after {
  content: "";
  width: 14px;
  height: 12px;
  position: absolute;
  top: 20px;
  right: 15px;
  background: url(../images/common/outbound_link_icon.svg) center center/contain no-repeat
}
#services-arch .tabContents__linkBlk .-flxBox {
  margin-top: 8px
}
#services-arch .tabContents__ctgr {
  font-size: 14px;
  font-weight: 700;
  padding: 0 0;
  line-height: 1.6
}
#services-arch .tabContents__tagWrap {
  margin-top: 4px;
  width: 42%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap
}
#services-arch .tabContents__tagWrap span {
  display: inline-block;
  padding: 0 3px;
  background: #e0e0e0;
  border-radius: 2px;
  line-height: 1.6;
  margin-right: 6px;
  margin-bottom: 5px
}
@media screen and (min-width:1025px) {
  #services-arch .tabContents__list {
    display: block;
    margin: 0 auto
  }
}
#services-arch .tabContents__list li {
  max-width: 470px;
  margin: 0 auto;
  width: auto
}
#services-arch .tabContents__btn {
  width: 100%;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  background: #222427;
  font-weight: 500;
  font-size: 18px;
  line-height: 1.888;
  color: #fff;
  padding: 12px 48px 12px 20px;
  margin-top: 40px;
  cursor: pointer;
  border: 1px solid #222427
}
#services-arch .tabContents__btn:hover {
  opacity: .9
}
#services-arch .tabContents__btn:first-of-type {
  margin-top: 20px
}
@media screen and (min-width:768px) {
  #services-arch .tabContents__btn:first-of-type {
    margin-top: 20px
  }
}
#services-arch .tabContents__txtWrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap
}
#services-arch .tabContents__txtWrap .tabContents__linkBlk:not(:first-of-type) {
  margin-top: 20px
}
#services-arch .tabContents__btn.is-active {
  background: #f5f6f7;
  color: #222427
}
#services-arch .tabContents__btn::after,
#services-arch .tabContents__btn::before {
  content: "";
  display: block;
  background-color: #fff;
  position: absolute;
  top: 50%;
  width: 15px;
  height: 2px;
  right: 25px
}
#services-arch .tabContents__btn.is-active::after,
#services-arch .tabContents__btn.is-active::before {
  background-color: #222427
}
#services-arch .tabContents__btn::after {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
  -webkit-transition-duration: .3s;
          transition-duration: .3s
}
#services-arch .tabContents__btn.is-active::before {
  opacity: 0
}
#services-arch .tabContents__btn.is-active::after {
  -webkit-transform: rotate(0);
          transform: rotate(0)
}
#services-arch .tabContents__txtWrap {
  height: 0;
  overflow: hidden;
  -webkit-transition-duration: .3s;
          transition-duration: .3s
}
#services-arch .tabContents__txtWrap.is-open {
  margin: 20px 0;
  height: auto
}
#services-arch .tabContents.show {
  display: block
}
#services-arch .servicelinks {
  background: unset;
  margin-top: 40px
}
@media screen and (min-width:768px) {
  #services-arch .servicelinks .servicelinks__list {
    padding: 0 20px;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center
  }
}
@media screen and (min-width:768px) {
  #services-arch .servicelinks li {
    margin-left: 0
  }
  #services-arch .servicelinks li:not(:last-of-type) {
    margin-right: 60px
  }
}
#services-arch .global__btn {
  background: #f5f6f7
}
#services-arch .bannerLinks {
  margin-bottom: 60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center
}
#service {
  padding-bottom: 0
}
#service .firstMv__heading {
  font-size: 69px;
  font-weight: 700;
  font-family: Barlow,sans-serif;
  line-height: 1;
  margin-bottom: 50px;
  top: 10.4vh
}
@media screen and (max-width:767px) {
  #service .firstMv__heading {
    font-size: 45px
  }
}
#service .firstMv__bottom {
  background: unset
}
#service .serviceMv__img {
  overflow: hidden
}
@media screen and (min-width:1025px) {
  #service .serviceMv__img {
    height: 500px
  }
  #service .serviceMv__img img {
    -o-object-fit: cover;
       object-fit: cover;
    height: 100%
  }
}
#service .serviceMv__img-sp {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover
}
@media screen and (min-width:1025px) {
  #service .serviceMv__img-sp {
    display: none
  }
}
@media screen and (max-width:1024px) {
  #service .serviceMv__img-pc {
    display: none
  }
}
#service .serviceMv__img {
  position: relative;
  height: 80vh
}
@media screen and (min-width:768px) {
  #service .serviceMv__img {
    height: 100vh
  }
}
@media screen and (min-width:1025px) {
  #service .serviceMv__img {
    height: 500px
  }
}
#service .serviceMv .firstMv__bottom {
  position: absolute
}
#service .serviceTop__ttl {
  font-size: 32px;
  font-weight: 700;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  line-height: 1;
  margin-top: 80px
}
#service .serviceTop__ctgr {
  font-size: 16px;
  line-height: 1.4;
  padding: 0 4px;
  background: #83807a;
  color: #fff;
  margin-left: 16px;
  font-weight: 400
}
#service .serviceTop__lead {
  font-size: 16px;
  margin-top: 35px;
  line-height: 1.714
}
#service .serviceTop__hashTagListWrap {
  margin: 55px calc(50% - 50vw) 0;
  background: #f5f6f7
}
#service .serviceTop__hashTagList {
  width: 100vw;
  padding: 30px 20px 30px 20px
}
#service .serviceTop__hashTag {
  padding: 13px 16px;
  border-radius: 60px;
  display: inline-block;
  background: #fff;
  font-size: 14px;
  margin-top: 10px;
  margin-left: 10px;
  font-weight: 700;
  line-height: 1;
  border: 1px solid #222427
}
#service .network {
  padding-top: 60px
}
@media screen and (min-width:768px) {
  #service .network__txtbox {
    display: inline-block
  }
}
@media screen and (min-width:768px) {
  #service .network__txtbox + dl {
    margin-left: 60px
  }
}
#service .network__name {
  display: block;
  font-size: 16px;
  font-weight: 700;
  margin-top: 30px
}
#service .network__txt {
  font-size: calc(24 * (100vw / 375));
  line-height: 1;
  font-weight: 700
}
@media screen and (min-width:768px) {
  #service .network__txt {
    font-size: 24px
  }
}
#service .network__txt-large {
  font-size: calc(104 * (100vw / 375));
  font-weight: 700;
  font-family: din-condensed,sans-serif;
  line-height: 1
}
@media screen and (min-width:768px) {
  #service .network__txt-large {
    font-size: 104px
  }
}
#service .network__cap {
  font-size: 13px
}
#service .network__company {
  margin-top: 30px
}
#service .network__companyTtl {
  font-size: 16px;
  font-weight: 700
}
#service .network__companyName {
  font-size: 15px;
  margin-top: 16px;
  line-height: 1.5;
  display: inline-block;
  width: 100%
}
#service .network__companyName.-icon {
  text-decoration: underline;
  position: relative
}
#service .network__companyName.-icon::after {
  content: "";
  width: 14px;
  height: 12px;
  background: url(../images/common/outbound_link_icon.svg) center center/contain no-repeat;
  vertical-align: text-bottom;
  margin-left: 4.7px;
  display: inline-block
}
#service .serviceList {
  padding-top: 90px
}
#service .serviceList .common-heading--h3 {
  margin-top: 80px
}
#service .serviceList .service__commonTtl + h3 {
  margin-top: 30px
}
#service .serviceList__hashTagList {
  margin-top: 10px
}
@media screen and (min-width:768px) {
  #service .serviceList__hashTagList {
    margin-top: 20px
  }
}
#service .serviceList__hashTag {
  margin-top: 10px;
  padding: 13px 16px;
  border-radius: 60px;
  display: inline-block;
  background: f5f6f7;
  font-size: 14px;
  margin-top: 10px;
  margin-left: 10px;
  line-height: 1;
  font-weight: 700;
  border: 1px solid #222427
}
@media screen and (min-width:768px) {
  #service .serviceList__hashTag {
    margin-top: 20px
  }
}
#service .serviceList__txt {
  margin-top: 20px;
  font-size: 16px;
  line-height: 1.875
}
#service .serviceList__jobListWrap {
  background: #f5f6f7;
  width: 100vw;
  margin: 20px calc(50% - 50vw) 0
}
@media screen and (min-width:768px) {
  #service .serviceList__jobListWrap {
    margin: 30px calc(50% - 50vw) 0
  }
}
#service .serviceList__jobList {
  padding: 0 20px;
  background: unset
}
@media screen and (min-width:768px) {
  #service .serviceList__jobList {
    padding: 30px 20px
  }
}
#service .serviceList__jobTtl {
  font-size: 12px;
  display: inline-block;
  line-height: 1.4;
  padding: 0 4px;
  border-radius: 2px;
  background: #fff
}
#service .serviceList__jobTxt {
  font-size: 14px;
  font-weight: 700;
  line-height: 1.4285;
  margin-top: 7px
}
#service .serviceList__jobTxt a {
  text-decoration: underline;
  font: inherit
}
#service .serviceList__offerTtl {
  display: inline-block;
  padding: 0 4px;
  border-radius: 2px;
  font-size: 12px;
  background: #e0e0e0;
  margin-top: 30px
}
@media screen and (min-width:768px) {
  #service .serviceList__offerTtl {
    margin-top: 30px
  }
}
@media screen and (min-width:768px) {
  #service .serviceList__offerWrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap
  }
}
@media screen and (min-width:768px) {
  #service .serviceList__offerWrapper li {
    width: 45.75%;
    max-width: 430px
  }
}
#service .serviceList__offerLink {
  margin-top: 20px;
  display: block;
  position: relative;
  width: 100%
}
@media screen and (min-width:768px) {
  #service .serviceList__offerLink {
    margin-top: 40px
  }
}
#service .serviceList__offerLink img {
  -webkit-box-shadow: 0 0 0 1.5px #ddd;
  box-shadow: 0 0 0 1.5px #ddd
}
#service .serviceList .icon-black:after {
  content: "";
  width: 14px;
  height: 12px;
  position: absolute;
  top: 20px;
  right: 15px;
  background: url(../images/common/outbound_link_icon.svg) center center/contain no-repeat
}
#service .serviceList .icon-white:after {
  content: "";
  width: 14px;
  height: 12px;
  position: absolute;
  top: 20px;
  right: 15px;
  background: url(../images/common/outbound_link_icon_w.svg) center center/contain no-repeat
}
#service .serviceList .common-carouselArea {
  padding: 0;
  margin-top: 40px
}
#service .serviceList .common-carouselArea__topWrap {
  -webkit-box-pack: right;
      -ms-flex-pack: right;
          justify-content: right
}
#service .serviceList .common-carousel {
  padding-bottom: 0
}
#service .serviceList .common-button--grayArrowBtn a {
  font-size: 16px;
  font-weight: 700;
  -webkit-box-pack: left;
      -ms-flex-pack: left;
          justify-content: left
}
#service .serviceList .service__txtLink {
  text-align: right;
  margin-top: 10px
}
#service .serviceList .service__txtLink a {
  font-size: 12px;
  text-decoration: underline
}
#service .serviceList .btnWrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: left;
      -ms-flex-pack: left;
          justify-content: left;
  width: 100%;
  max-width: 335px;
  margin: 30px auto 30px 0
}
@media screen and (min-width:768px) {
  #service .serviceList .btnWrapper {
    max-width: unset;
    margin: 60px auto 30px 0
  }
}
#service .serviceList .common-button--grayArrowBtn.-back {
  padding: 0;
  width: 100%;
  max-width: 335px
}
@media screen and (min-width:768px) {
  #service .serviceList .common-button--grayArrowBtn.-back {
    margin: 0 0 auto 0
  }
}
#service .serviceList .common-button--grayArrowBtn.-back .arrow--grayBtn {
  position: absolute;
  right: auto;
  left: 18px;
  top: 50%;
  -webkit-transform: translate(0,-50%);
          transform: translate(0,-50%)
}
#service .serviceList .common-button--grayArrowBtn.-back .arrow--grayBtn .arrow::after,
#service .serviceList .common-button--grayArrowBtn.-back .arrow--grayBtn .arrow::before {
  right: auto;
  left: 0
}
#service .serviceList .common-button--grayArrowBtn.-back .arrow--grayBtn .arrow::before {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg)
}
#service .serviceList .common-button--grayArrowBtn.-back .arrow--grayBtn .arrow::after {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg)
}
#service .serviceList .common-button--grayArrowBtn.-back a {
  padding: 0 50px 0 0;
  min-height: 60px;
  -webkit-box-pack: right;
      -ms-flex-pack: right;
          justify-content: right
}
#service .service__commonTtl {
  font-size: 26px;
  font-weight: 700
}
@media screen and (min-width:768px) {
  #service .service__commonTtl {
    font-size: 28px
  }
}
#service .common-heading--h4.mt {
  margin-top: 90px
}
#service .common-button--whiteArrowBtn > a {
  font-size: 16px
}
@media screen and (min-width:1025px) {
  #service .common-mainBottom__btnWrap {
    max-width: 980px;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start
  }
  #service .common-mainBottom__btnWrap .common-button--whiteArrowBtn:not(:last-of-type) {
    margin-right: 40px
  }
}
#service .service__listLink {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  margin: 30px 0
}
#service .service__listLink a {
  padding-left: 10px;
  position: relative;
  text-decoration: none;
  border-bottom: 1px solid #000;
  color: #000;
  font-size: 14px
}
#case_studies_detail {
  padding-bottom: 100px
}
#case_studies_detail .detailTop {
  padding-top: 80px
}
#case_studies_detail .detailTop__ttl {
  font-size: 26px;
  line-height: 1.4166
}
@media screen and (min-width:768px) {
  #case_studies_detail .detailTop__ttl {
    font-size: 28px
  }
}
#case_studies_detail .detailTop__tags {
  margin-top: 10px
}
@media screen and (min-width:768px) {
  #case_studies_detail .detailTop__tags {
    margin-top: 0
  }
}
#case_studies_detail .detailTop__tag {
  margin-top: 10px;
  font-size: 12px;
  display: inline-block;
  line-height: 1.4;
  padding: 0 4px;
  border-radius: 2px;
  background: #e0e0e0;
  margin-right: 6px
}
#case_studies_detail .detailTop__link {
  font-size: 14px;
  line-height: 1;
  display: inline-block;
  margin-top: 0
}
#case_studies_detail .detailTop__lead {
  margin-top: 35px;
  font-size: 14px;
  line-height: 1.714
}
#case_studies_detail .detailTop__dl {
  margin-top: 0;
  display: inline-block;
  text-decoration: underline;
  font-size: 14px;
  line-height: 1.71
}
#case_studies_detail .detailTop__dl.-pdf::after {
  content: "";
  background: url(../images/case_studies/detail_dl_icon.svg) no-repeat center center/contain;
  width: 10px;
  height: 14px;
  vertical-align: text-top;
  display: inline-block;
  margin-left: 5px
}
#case_studies_detail .detailTop__overview {
  border: 1px solid #ddd;
  padding: 30px 20px;
  margin-top: 20px
}
@media screen and (min-width:768px) {
  #case_studies_detail .detailTop__overview {
    max-width: unset;
    margin-top: 50px
  }
}
#case_studies_detail .detailTop__overviewTtl {
  font-size: 16px;
  font-weight: 700;
  margin-bottom: 25px
}
@media screen and (min-width:768px) {
  #case_studies_detail .detailTop__overviewTtl {
    font-size: 20px
  }
}
#case_studies_detail .detailTop__overviewTxt {
  font-size: 14px;
  line-height: 1.716
}
@media screen and (min-width:768px) {
  #case_studies_detail .detailTop__overviewTxt {
    font-size: 16px
  }
}
#case_studies_detail .detailTop__overviewBlk.-topBlk {
  padding-bottom: 30px;
  border-bottom: 1px solid #ddd
}
#case_studies_detail .detailTop__overviewBlk.-bottomBlk {
  padding-top: 30px
}
#case_studies_detail .detailTop__skillTtl {
  margin-top: 40px
}
@media screen and (min-width:768px) {
  #case_studies_detail .detailTop__skillTtl {
    margin-top: 60px
  }
}
#case_studies_detail .detailTop__skillBlk {
  margin-top: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start
}
#case_studies_detail .detailTop__skillBlk dt {
  padding: 5px 9px;
  line-height: 1;
  margin-right: 8px;
  white-space: nowrap
}
#case_studies_detail .detailTop__skillBlk dt.-glay {
  background: #f5f6f7
}
#case_studies_detail .detailTop__skillBlk dt.-color {
  background: #d28903;
  color: #fff
}
#case_studies_detail .detailTop__skillBlk dd {
  font-size: 16px;
  line-height: 1.5
}
@media screen and (min-width:768px) {
  #case_studies_detail .detailTop__skillBlk dd {
    font-size: 16px
  }
}
#case_studies_detail .detailTop__skillBlk dd.-bold {
  font-weight: 700
}
#case_studies_detail .detailTop__skillBlk.-annualIncome {
  background: #f5f6f7;
  padding: 18px 12px;
  max-width: 400px
}
@media screen and (min-width:768px) {
  #case_studies_detail .detailTop__skillBlk.-annualIncome {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 12px 17px 12px 40px;
    width: 100%
  }
}
#case_studies_detail .detailTop__skillBlk.-annualIncome dt {
  background: #fff;
  margin-right: 40px;
  font-size: 16px
}
@media screen and (min-width:768px) {
  #case_studies_detail .detailTop__skillBlk.-annualIncome dt {
    font-size: 18px
  }
}
#case_studies_detail .detailTop__skillBlk.-annualIncome dd {
  font-size: 16px
}
@media screen and (min-width:768px) {
  #case_studies_detail .detailTop__skillBlk.-annualIncome dd {
    font-size: 18px
  }
}
#case_studies_detail .detailTop__skillBlk.-annualIncome dd span.-after {
  display: inline-block;
  margin-left: 0;
  font: inherit;
  color: #d28903;
  font-weight: 700;
  font-size: 18px
}
@media screen and (min-width:768px) {
  #case_studies_detail .detailTop__skillBlk.-annualIncome dd span.-after {
    font-size: 20px
  }
}
#case_studies_detail .detailTop__skillBlk.-annualIncome dd span.-arrow {
  margin: 0 30px
}
#case_studies_detail .detailTop__imgBlk {
  margin-top: 35px
}
@media screen and (min-width:768px) {
  #case_studies_detail .detailTop__imgBlk {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between
  }
}
#case_studies_detail .detailTop__imgBlk li {
  margin-top: 20px
}
@media screen and (min-width:768px) {
  #case_studies_detail .detailTop__imgBlk li {
    width: 47.5%
  }
}
#case_studies_detail .detailTop__flxBlk {
  margin-top: 20px
}
@media screen and (min-width:768px) {
  #case_studies_detail .detailTop__flxBlk {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-top: 30px
  }
}
#case_studies_detail .detailTop__flxLeftBox {
  margin-top: 0;
  max-width: unset
}
@media screen and (min-width:768px) {
  #case_studies_detail .detailTop__flxLeftBox {
    margin-top: 0;
    width: 49.5%;
    max-width: 465px
  }
}
#case_studies_detail .detailTop__flxLeftBox > img {
  width: auto;
  max-width: 100%
}
#case_studies_detail .detailTop__flxRightBox {
  margin-top: 40px;
  max-width: unset;
  -webkit-box-flex: unset;
      -ms-flex: unset;
          flex: unset
}
@media screen and (min-width:768px) {
  #case_studies_detail .detailTop__flxRightBox {
    margin-top: 0;
    width: 45%;
    max-width: 413px;
    -webkit-box-flex: unset;
        -ms-flex: unset;
            flex: unset
  }
}
#case_studies_detail .detailTop__heading {
  font-size: 16px;
  font-weight: 700;
  margin-top: 30px
}
@media screen and (min-width:768px) {
  #case_studies_detail .detailTop__heading {
    margin-top: 0
  }
  #case_studies_detail .detailTop__heading:not(:first-of-type) {
    margin-top: 30px
  }
}
#case_studies_detail .detailTop__dataDetail {
  margin-top: 9px
}
#case_studies_detail .detailTop__dataDetail.min-height {
  min-height: 145px
}
#case_studies_detail .detailTop__dataDetail p {
  font-size: 14px;
  line-height: 1.714
}
#case_studies_detail .detailTop__date::before {
  content: "";
  width: 14px;
  height: 14px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  display: inline-block;
  margin-right: 4px;
  vertical-align: text-top;
  background-image: url(../images/case_studies/case_studies_published.svg)
}
#case_studies_detail .detailTop__projectView {
  padding: 40px 0;
  background: #f5f6f7;
  width: 100vw;
  margin: 20px calc(50% - 50vw) 40px
}
#case_studies_detail .projectDetail {
  margin-top: 60px
}
#case_studies_detail .projectDetail .common-heading--h3__underLine {
  margin-bottom: 20px
}
@media screen and (min-width:768px) {
  #case_studies_detail .projectDetail {
    margin-top: 80px
  }
}
#case_studies_detail .projectDetail p {
  font-size: 16px;
  line-height: 1.875
}
#case_studies_detail .projectDetail p a {
  font-size: 14px
}
#case_studies_detail .projectDetail .singleColumnImg {
  margin-top: 40px
}
@media screen and (min-width:768px) {
  #case_studies_detail .projectDetail .singleColumnImg {
    margin-top: 50px
  }
}
#case_studies_detail .projectDetail .multipleColumnImg-wrap {
  margin-top: 20px
}
@media screen and (min-width:768px) {
  #case_studies_detail .projectDetail .multipleColumnImg-wrap {
    margin-top: 50px
  }
}
#case_studies_detail .story {
  padding-bottom: 55px
}
@media screen and (min-width:768px) {
  #case_studies_detail .story {
    padding-bottom: 100px
  }
}
#case_studies_detail .story__article h4 {
  margin-top: 60px
}
#case_studies_detail .story__article p {
  margin-top: 15px;
  font-size: 16px;
  line-height: 1.714
}
#case_studies_detail .interview {
  width: 100vw;
  margin: 0 calc(50% - 50vw);
  padding: 50px 0;
  background: #f5f6f7
}
#case_studies_detail .interview .multipleColumnImg-wrap,
#case_studies_detail .interview .singleColumnImg {
  margin-top: 20px
}
@media screen and (min-width:768px) {
  #case_studies_detail .interview {
    padding: 100px 0
  }
}
#case_studies_detail .interview h4 {
  margin-top: 55px
}
#case_studies_detail .interview .common-heading--h3__underLine + h4 {
  margin-top: 40px
}
#case_studies_detail .interview__peopleWrap {
  margin-top: 10px
}
#case_studies_detail .interview article p {
  margin-top: 15px;
  font-size: 16px;
  line-height: 1.714
}
#case_studies_detail .interview article span {
  margin-top: 3px;
  font-size: 16px;
  line-height: 1.714;
  display: block
}
#case_studies_detail .interview__belongs {
  margin-top: 3px;
  font-size: 14px;
  line-height: 1.714
}
#case_studies_detail .award {
  padding-top: 50px
}
@media screen and (min-width:768px) {
  #case_studies_detail .award {
    padding-top: 100px
  }
}
@media screen and (min-width:768px) {
  #case_studies_detail .award__wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap
  }
}
#case_studies_detail .award__blk {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  margin-top: 20px
}
@media screen and (min-width:768px) {
  #case_studies_detail .award__blk {
    margin-right: 0;
    width: 50%;
    padding-right: 20px
  }
}
#case_studies_detail .award__img {
  width: 50px;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 50px;
          flex: 0 0 50px;
  margin-right: 12px
}
#case_studies_detail .award dt {
  font-size: 16px;
  line-height: 1.625;
  font-weight: 700
}
#case_studies_detail .award dd {
  font-size: 14px;
  line-height: 1.714
}
#case_studies_detail .project {
  padding-top: 80px;
  padding-bottom: 40px
}
#case_studies_detail .project__outer {
  max-width: 500px
}
@media screen and (min-width:768px) {
  #case_studies_detail .project__outer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    max-width: unset
  }
}
@media screen and (min-width:768px) {
  #case_studies_detail .project__wrapper {
    width: 40.5%
  }
}
#case_studies_detail .project__position {
  margin-top: 20px
}
#case_studies_detail .project p {
  font-size: 14px;
  line-height: 1.714;
  font-weight: 700
}
#case_studies_detail .project dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap
}
#case_studies_detail .project dd,
#case_studies_detail .project dt {
  margin-top: 20px;
  font-size: 14px;
  line-height: 1.714
}
#case_studies_detail .project dt {
  font-weight: 700;
  width: 70%
}
#case_studies_detail .project dd {
  font-size: 14px;
  line-height: 1.714;
  width: 30%;
  text-align: right
}
#case_studies_detail .project dd span {
  font-size: 14px;
  line-height: 1.714;
  display: block
}
#case_studies_detail .project a {
  width: 130px;
  height: 40px;
  font-weight: 700;
  background: #f5f6f7;
  border: 1px solid #222427;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 16px;
  margin: 15px 0 0 auto;
  -webkit-transition: .3s;
  transition: .3s
}
#case_studies_detail .project a:hover {
  color: #d28903;
  border: 1px solid #d28903
}
#case_studies_detail .client {
  background: #f5f6f7;
  padding: 40px 0;
  width: 100vw;
  margin: 0 calc(50% - 50vw)
}
@media screen and (min-width:768px) {
  #case_studies_detail .client {
    margin: 40px calc(50% - 50vw) 0
  }
}
#case_studies_detail .client__name {
  font-size: 14px;
  font-weight: 700;
  margin-top: 20px
}
#case_studies_detail .client__txt {
  font-size: 14px;
  line-height: 1.714;
  margin-top: 15px;
  max-width: 600px
}
#case_studies_detail .client__Link {
  font-size: 14px;
  line-height: 1.714;
  margin-top: 15px
}
#case_studies_detail .bottomLinks {
  margin-top: 40px
}
@media screen and (min-width:768px) {
  #case_studies_detail .bottomLinks {
    display: block;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: 60px
  }
}
@media screen and (min-width:768px) {
  #case_studies_detail .bottomLinks a {
    width: 100%
  }
}
#case_studies_detail .common-button--grayArrowBtn.-mt {
  margin-top: 20px
}
@media screen and (min-width:768px) {
  #case_studies_detail .common-button--grayArrowBtn.-mt {
    margin-top: 20px
  }
}
#case_studies_detail .common-button--grayArrowBtn.-back {
  padding: 0
}
#case_studies_detail .common-button--grayArrowBtn.-back .arrow--grayBtn {
  position: absolute;
  right: auto;
  left: 18px;
  top: 50%;
  -webkit-transform: translate(0,-50%);
          transform: translate(0,-50%)
}
#case_studies_detail .common-button--grayArrowBtn.-back .arrow--grayBtn .arrow::after,
#case_studies_detail .common-button--grayArrowBtn.-back .arrow--grayBtn .arrow::before {
  right: auto;
  left: 0
}
#case_studies_detail .common-button--grayArrowBtn.-back .arrow--grayBtn .arrow::before {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg)
}
#case_studies_detail .common-button--grayArrowBtn.-back .arrow--grayBtn .arrow::after {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg)
}
#case_studies_detail .common-button--grayArrowBtn.-back a {
  padding: 0 0 0 50px;
  min-height: 60px;
  -webkit-box-pack: left;
      -ms-flex-pack: left;
          justify-content: left;
  max-width: 335px;
  font-size: 16px
}
@media screen and (min-width:768px) {
  #case_studies_detail .common-button--grayArrowBtn.-back {
    margin-left: 0;
    margin-right: auto
  }
}
#case_studies_detail h3 {
  color: #222427;
  font-size: 22px;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: .5px
}
@media screen and (min-width:768px) {
  #case_studies_detail h3 {
    font-size: 24px
  }
}
#case_studies_detail h4 {
  color: #000;
  font-size: 22px;
  font-weight: 400;
  line-height: 1;
  border-left: 4px solid #222427;
  padding-left: 6px;
  letter-spacing: .5px
}
#case_studies_detail .singleColumnMovie {
  margin-top: 20px;
  position: relative;
  width: 100%;
  padding-top: 56.25%
}
#case_studies_detail .singleColumnMovie iframe,
#case_studies_detail .singleColumnMovie video {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%
}
#case_studies_detail .singleColumnImg {
  margin-top: 20px
}
#case_studies_detail .multipleColumnImg-wrap .multipleColumnImg:not(:first-of-type) {
  margin-top: 20px
}
@media screen and (min-width:768px) {
  #case_studies_detail .multipleColumnImg-wrap .multipleColumnImg {
    margin-top: 0;
    width: 47.4%
  }
  #case_studies_detail .multipleColumnImg-wrap .multipleColumnImg:not(:first-of-type) {
    margin-top: 0
  }
}
@media screen and (min-width:768px) {
  #case_studies_detail .multipleColumnImg-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between
  }
}
#case_studies_detail .newsDetail__topLink {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  margin: 30px 0
}
#case_studies_detail .newsDetail__topLink a {
  padding-left: 10px;
  position: relative;
  text-decoration: none;
  border-bottom: 1px solid #000;
  color: #000;
  font-size: 14px
}
#case_studies_detail.case_studies_detail_p {
  padding-bottom: 100px
}
#case_studies .imgKv {
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  background-image: url(../images/case_studies/case_studies_kv_img_sp.jpg)
}
@media screen and (min-width:768px) {
  #case_studies .imgKv {
    background-image: url(../images/case_studies/case_studies_kv_img.jpg)
  }
}
#case_studies .imgKv__ttl {
  color: #fff;
  font-weight: 700
}
#case_studies .imgKv__line {
  background: #fff
}
#case_studies .backBtn {
  width: 20px;
  position: fixed;
  bottom: 20px;
  right: 20px;
  display: block;
  z-index: 30
}
#case_studies .contentwrapper {
  margin-top: 80px;
  padding-bottom: 100px
}
@media screen and (min-width:768px) {
  #case_studies .contentwrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start
  }
}
@media screen and (min-width:768px) {
  #case_studies .caseStudies {
    width: calc(100% - 250px)
  }
}
#case_studies .caseStudies__result {
  font-size: 20px
}
#case_studies .caseStudies__numbers {
  margin-top: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end
}
#case_studies .caseStudies__ttl {
  font-size: 26px;
  line-height: 1
}
@media (min-width:768px) {
  #case_studies .caseStudies__ttl {
    font-size: 28px
  }
}
#case_studies .caseStudies__number {
  font-size: 12px
}
#case_studies .caseStudies__tumb {
  aspect-ratio: 36/23;
  position: relative
}
#case_studies .caseStudies__tumb img {
  -o-object-fit: contain;
     object-fit: contain;
  height: 100%;
  font-family: "object-fit: contain;"
}
#case_studies .caseStudies__tumbTtl {
  margin-top: 22px
}
@media screen and (min-width:768px) {
  #case_studies .caseStudies__tumbTtl {
    font-size: 24px
  }
}
@media screen and (min-width:768px) {
  #case_studies .caseStudies__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap
  }
}
#case_studies .caseStudies__card {
  margin-top: 60px
}
#case_studies .caseStudies__card:first-of-type {
  margin-top: 40px
}
@media screen and (min-width:768px) {
  #case_studies .caseStudies__card {
    margin-top: 50px;
    width: 47%;
    max-width: 345px
  }
  #case_studies .caseStudies__card:first-of-type,
  #case_studies .caseStudies__card:nth-of-type(2) {
    margin-top: 20px
  }
}
#case_studies .caseStudies__categoryLabel {
  margin-top: 20px
}
#case_studies .caseStudies__categoryLabel li {
  display: inline-block;
  font-size: 12px;
  background-color: #e0e0e0;
  padding: 0 3px;
  margin-right: 6px;
  border-radius: 2px
}
#case_studies .caseStudies__entryDate {
  font-size: 14px;
  line-height: 1.7114;
  text-align: left;
  color: #707070;
  display: inline-block;
  margin-top: 8px
}
#case_studies .caseStudies__entryDate::before {
  content: "";
  width: 14px;
  height: 14px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  display: inline-block;
  margin-right: 4px;
  vertical-align: text-top
}
#case_studies .caseStudies__entryDate.-published {
  margin-right: 20px
}
#case_studies .caseStudies__entryDate.-published::before {
  background-image: url(../images/case_studies/case_studies_published.svg)
}
#case_studies .caseStudies__entryDate.-updated::before {
  background-image: url(../images/case_studies/case_studies_updated.svg)
}
#case_studies .caseStudies__pageList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  max-width: 324px;
  margin: 60px auto 0
}
@media screen and (min-width:768px) {
  #case_studies .caseStudies__pageList {
    margin: 80px auto 0
  }
}
#case_studies .caseStudies__pageList a {
  width: 50px;
  height: 50px;
  border: 1px solid #222427;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center
}
#case_studies .caseStudies__pageList li:not(:first-of-type) a {
  border-left: none
}
#case_studies .caseStudies__pageList li.caseStudies__btn-dots a {
  width: 28px;
  border: none;
  background: unset
}
#case_studies .caseStudies__pageList .caseStudies__btn-dots + li a {
  border-left: 1px solid #222427
}
#case_studies .caseStudies .archiveList {
  margin-top: 80px
}
#case_studies .caseStudies__btn-arrow .-arrow {
  width: 16px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center
}
#case_studies .searchBtn {
  width: 80px;
  position: fixed;
  bottom: 10px;
  left: 10px;
  z-index: 31;
  display: block;
  cursor: pointer
}
#case_studies .searchBtn .close {
  display: none
}
#case_studies .searchBtn.active .open {
  display: none
}
#case_studies .searchBtn.active .close {
  display: block
}
#case_studies .sidebar__serviceList {
  margin-top: 30px
}
#case_studies .sidebar__link {
  font-size: 15px;
  text-decoration: underline;
  margin-bottom: 20px;
  color: #000;
  line-height: 1
}
#case_studies .searchMenu .common-heading--h4 {
  margin-top: 40px
}
#case_studies .searchMenu__wrapper {
  margin-top: 30px
}
#case_studies .searchMenu__genre {
  margin-top: 20px;
  font-size: 15px;
  font-weight: 700;
  line-height: 1
}
#case_studies .searchMenu__detail {
  margin-top: 5px;
  line-height: 1.625;
  font-size: 16px;
  margin-left: 20px;
  display: inline-block
}
#case_studies .searchMenu .common-button--whiteArrowBtn {
  margin-top: 10px;
  width: 100%
}
#case_studies .searchMenu .common-button--whiteArrowBtn a {
  line-height: 1.3;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  font-size: 15px;
  padding-left: 15px
}
#case_studies .searchMenu .common-button--whiteArrowBtn .desc {
  display: block;
  font-size: 12px
}
#case_studies .searchMenu .common-button--whiteArrowBtn .arrow--grayBtn {
  bottom: 19px
}
#case_studies .searchMenu.is-open {
  right: 0
}
@media screen and (min-width:768px) {
  #case_studies .sidebar .sidebar__heading {
    font-size: 24px;
    margin: 40px 0 22px 0
  }
  #case_studies .sidebar .-borderLi {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-bottom: 1px solid #000;
    margin: 30px -20px 25px 0;
    padding-right: 20px
  }
  #case_studies .sidebar .-borderLi .sidebar__link {
    text-decoration: none;
    line-height: 1.466666;
    margin-bottom: 4px
  }
}
@media screen and (max-width:767px) {
  #case_studies .sidebar .sidebar__heading {
    padding: 0;
    margin: 40px 0;
    font-size: 30px
  }
  #case_studies .sidebar .sidebar__subHeading {
    padding-left: 20px;
    position: relative
  }
  #case_studies .sidebar .sidebar__subHeading::before {
    content: "";
    width: 12px;
    height: 12px;
    border-top: 2px solid #222427;
    border-right: 2px solid #222427;
    -webkit-transform: rotate(45deg) translate(0,-50%);
    transform: rotate(45deg) translate(0,-50%);
    position: absolute;
    top: 50%;
    right: 30px
  }
  #case_studies .sidebar .sidebar__list {
    padding-left: 0
  }
  #case_studies .sidebar .sidebar__heading + .sidebar__subHeading {
    border-top: 1px solid #fff
  }
  #case_studies .sidebar .sidebar__link {
    text-decoration: none;
    line-height: 1.466666;
    margin-bottom: 4px;
    font-size: 16px;
    font-weight: 700
  }
  #case_studies .sidebar .-borderLi {
    height: 65px
  }
  #case_studies .sidebar .-borderLi a {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start
  }
  #case_studies .sidebar .-borderLi span {
    font-size: 13px;
    display: block;
    font-weight: 400
  }
}
#sustainability {
  padding-bottom: 100px
}
#sustainability .common-textBlock {
  width: 100%
}
@media screen and (min-width:1025px) {
  #sustainability .common-textBlock {
    margin-top: 80px
  }
}
@media screen and (max-width:767px) {
  #sustainability .contentWrap.pc_only {
    padding: 0
  }
}
@media screen and (min-width:1025px) {
  #sustainability .common-textBlock__imgWrap {
    width: 315px
  }
}
@media screen and (min-width:1025px) {
  #sustainability .common-textBlock__textWrap {
    width: 585px
  }
}
#sustainability .sustain__president {
  font-size: 16px
}
@media screen and (min-width:1025px) {
  #sustainability .materialities .common-textBlock__imgWrap {
    width: 200px
  }
}
@media screen and (min-width:1025px) {
  #sustainability .materialities .common-textBlock__textWrap {
    width: 700px
  }
}
#sustainability .aboutUs {
  margin-top: 80px
}
#sustainability .aboutUs__grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(300px,1fr));
  grid-template-rows: auto;
  grid-gap: 120px 80px;
  margin-bottom: 100px
}
@media (min-width:751px) and (max-width:1024px) {
  #sustainability .aboutUs__grid {
    grid-template-columns: 1fr
  }
}
@media (max-width:750px) {
  #sustainability .aboutUs__grid {
    grid-template-columns: 1fr;
    margin-bottom: 40px
  }
}
#sustainability .aboutUs__col img {
  width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  aspect-ratio: 1/1
}
#sustainability .aboutUs__col:nth-child(1) img,
#sustainability .aboutUs__col:nth-child(2) img {
  aspect-ratio: 45/29
}
#sustainability .aboutUs__col:nth-child(3) img,
#sustainability .aboutUs__col:nth-child(4) img {
  aspect-ratio: 1/1
}
#sustainability .aboutUs__col:nth-child(5) img {
  aspect-ratio: 15/17
}
#sustainability .aboutUs__col:nth-child(6) img {
  aspect-ratio: 3/2
}
#sustainability .aboutUs__president {
  display: grid;
  grid-template-columns: 190px 1fr;
  margin-bottom: 120px
}
@media (max-width:750px) {
  #sustainability .aboutUs__president {
    grid-template-columns: 100px 1fr
  }
}
#sustainability .aboutUs__president img {
  -webkit-box-shadow: 0 0 0 1px #000;
          box-shadow: 0 0 0 1px #000;
  aspect-ratio: 1/1;
  border-radius: 50%;
  max-width: 100%;
  -o-object-fit: cover;
     object-fit: cover
}
#sustainability .aboutUs__president__text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding-left: 20px
}
#sustainability .aboutUs__president__text__lead {
  font-size: 32px;
  font-weight: 700
}
@media (max-width:750px) {
  #sustainability .aboutUs__president__text__lead {
    font-size: 20px
  }
}
#sustainability .aboutUs__president__text__name {
  font-size: 16px
}
#sustainability .aboutUs__president__text::before {
  content: "";
  display: block;
  height: 25px;
  width: 100%
}
@media (max-width:750px) {
  #sustainability .aboutUs__president__text::before {
    content: none
  }
}
#sustainability .aboutUs__image {
  text-align: center;
  margin-bottom: 60px
}
#sustainability .aboutUs__image img {
  width: 100%;
  max-width: 610px
}
#sustainability .aboutUs__link {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 40px;
  padding: 60px 0;
  place-items: center
}
@media (max-width:750px) {
  #sustainability .aboutUs__link {
    padding-top: 90px;
    padding-bottom: 100px;
    grid-template-columns: 1fr;
    grid-row-gap: 10px
  }
}
#sustainability .aboutUs__link__item {
  position: relative;
  max-width: 450px;
  width: 100%
}
#sustainability .aboutUs__link__item img {
  width: 100%;
  aspect-ratio: 3/1;
  -o-object-fit: cover;
     object-fit: cover
}
@media (max-width:750px) {
  #sustainability .aboutUs__link__item img {
    width: 100%;
    height: 150px
  }
}
#sustainability .aboutUs__link__item:hover {
  opacity: .6
}
#sustainability .aboutUs__link__title {
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translate(0,-50%);
          transform: translate(0,-50%);
  font-size: 16px;
  color: #fff;
  width: 100%;
  padding: 0 25px
}
#sustainability .aboutUs__link__title span {
  position: absolute;
  top: 50%;
  right: 25px
}
#sustainability .aboutUs__link__title span::before {
  content: "";
  width: 15px;
  height: 2px;
  background: #fff;
  position: absolute;
  top: 0;
  right: 0;
  -webkit-transform: translate(0,-50%);
          transform: translate(0,-50%)
}
#sustainability .aboutUs__link__title span::after {
  content: "";
  width: 8px;
  height: 8px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  position: absolute;
  top: -4px;
  left: -8px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg)
}
@media screen and (min-width:1025px) {
  #sustainability .aboutUs__heading.mb {
    margin-bottom: 68px
  }
}
#sustainability .aboutUs__heading {
  font-size: 22px;
  font-weight: 700;
  position: relative;
  padding-right: 30px;
  color: #000;
  text-decoration: none;
  margin-bottom: 30px;
  display: inline-block
}
@media screen and (min-width:768px) {
  #sustainability .aboutUs__heading {
    font-size: 24px
  }
}
#sustainability .aboutUs__heading span {
  position: absolute;
  top: 43%;
  right: 0;
  -webkit-transform: translate(0,-50%);
          transform: translate(0,-50%)
}
#sustainability .aboutUs__heading span::before {
  content: "";
  width: 15px;
  height: 2px;
  background: #000;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transform: translate(-100%,0);
          transform: translate(-100%,0)
}
#sustainability .aboutUs__heading span::after {
  content: "";
  width: 7px;
  height: 7px;
  border-top: 2px solid #000;
  border-right: 2px solid #000;
  position: absolute;
  top: .5px;
  left: -6px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  -webkit-transform-origin: top right;
          transform-origin: top right
}
#sustainability .aboutUs__heading:hover {
  color: #d28903
}
#sustainability .aboutUs__heading:hover span::before {
  background: #d28903
}
#sustainability .aboutUs__heading:hover span::after {
  border-color: #d28903
}
#sustainability .recruitLinkBlk {
  margin: 40px 0 0 0
}
@media screen and (min-width:1025px) {
  #sustainability .recruitLinkBlk {
    margin: 40px 0 0 0
  }
}
#sustainability .recruitLinkBlk__list {
  width: 100%
}
@media screen and (min-width:1025px) {
  #sustainability .recruitLinkBlk__list {
    margin-top: 18px
  }
}
#sustainability .recruitLinkBlk__list li {
  width: 100%;
  border-bottom: unset;
  padding: 0
}
@media screen and (min-width:1025px) {
  #sustainability .recruitLinkBlk__list li {
    width: 100%
  }
}
#sustainability .recruitLinkBlk__list li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 100%;
  padding: 24px 15px 24px 0;
  font-size: 16px;
  font-weight: 400;
  border-bottom: 1px solid #ddd
}
#sustainability .recruitLinkBlk__list li .arrow__icon::after {
  content: "";
  display: inline-block;
  width: 11px;
  height: 10px;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 11px;
          flex: 0 0 11px;
  background: url(../../images/common/icon_arrow.svg)
}
#sustainability .know {
  margin-top: 90px
}
#sustainability .know section:not(:first-of-type) {
  margin-top: 60px
}
#sustainability .know section figure {
  margin-top: 20px
}
@media screen and (min-width:1025px) {
  #sustainability .know section figure {
    max-width: 566px;
    width: 57%
  }
}
@media screen and (min-width:1025px) {
  #sustainability .know section .sectionWrap {
    max-width: 354px;
    width: 100%;
    margin-top: 37px
  }
}
@media screen and (min-width:1025px) {
  #sustainability .know section.flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between
  }
}
@media screen and (min-width:1025px) {
  #sustainability .know section.fdrr {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between
  }
}
#sustainability .know section.movieLink {
  margin-top: 100px;
  text-align: center
}
#sustainability .know section.movieLink figure {
  max-width: 520px;
  margin: 40px auto 0
}
#sustainability .know section.movieLink .global__btn,
#sustainability .know section.movieLink .global__btn--gray {
  margin-top: 32px
}
#sustainability .servicelinks {
  background: unset;
  margin-top: 40px
}
@media screen and (min-width:768px) {
  #sustainability .servicelinks .servicelinks__list {
    -webkit-box-pack: left;
        -ms-flex-pack: left;
            justify-content: left
  }
}
@media screen and (min-width:768px) {
  #sustainability .servicelinks li {
    margin-left: 0;
    margin-right: 60px
  }
}
#sustainability .esg .ankerLinks__blk-glay {
  margin-top: 40px
}
@media screen and (min-width:768px) {
  #sustainability .esg .ankerLinks__blk-glay li {
    width: 47%;
    max-width: unset
  }
}
#sustainability .esg .ankerLinks__blk-glay li a {
  -webkit-transition: .3s;
  transition: .3s;
  position: relative
}
#sustainability .esg .ankerLinks__blk-glay li a::after {
  display: none
}
@media screen and (min-width:768px) {
  #sustainability .esg .ankerLinks__blk-glay li a {
    max-width: unset
  }
}
#sustainability .esg .ankerLinks__blk-glay li a .arrow--grayBtn {
  position: absolute;
  right: 18px;
  bottom: 26px
}
#sustainability .esg .ankerLinks__blk-glay li a .arrow--grayBtn .arrow {
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 2px;
  background-color: #222427;
  position: relative;
  -webkit-transition: .3s;
  transition: .3s
}
#sustainability .esg .ankerLinks__blk-glay li a .arrow--grayBtn .arrow::after,
#sustainability .esg .ankerLinks__blk-glay li a .arrow--grayBtn .arrow::before {
  content: "";
  display: block;
  width: 8px;
  height: 2px;
  background-color: #222427;
  position: absolute;
  right: 0;
  -webkit-transition: .3s;
  transition: .3s
}
#sustainability .esg .ankerLinks__blk-glay li a .arrow--grayBtn .arrow::before {
  top: -3px;
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg)
}
#sustainability .esg .ankerLinks__blk-glay li a .arrow--grayBtn .arrow::after {
  bottom: -3px;
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg)
}
#sustainability .esg .ankerLinks__blk-glay li a:after {
  -webkit-transform: rotate(-90deg);
          transform: rotate(-90deg)
}
#sustainability .esg .ankerLinks__blk-glay li a:hover {
  border-color: #d28903;
  color: #d28903
}
#sustainability .esg .ankerLinks__blk-glay li a:hover .arrow {
  background: #d28903
}
#sustainability .esg .ankerLinks__blk-glay li a:hover .arrow::after,
#sustainability .esg .ankerLinks__blk-glay li a:hover .arrow::before {
  background: #d28903
}
#sustainability .esgData {
  margin-bottom: 0
}
#sustainability .commonSustainability.sectionTop__mt {
  margin-top: 80px
}
#sustainability .commonSustainability .tac {
  text-align: center
}
#sustainability .commonSustainability__ttl {
  margin-top: 80px;
  font-size: 26px
}
@media screen and (min-width:768px) {
  #sustainability .commonSustainability__ttl {
    font-size: 28px
  }
}
#sustainability .commonSustainability__txt {
  font-size: 16px;
  margin-top: 30px
}
#sustainability .commonSustainability__note {
  font-size: 14px;
  margin-top: 30px
}
#sustainability .commonSustainability__txt + .sustain__list {
  margin-top: 40px
}
#sustainability .commonSustainability .sustain__list p {
  font-size: 16px
}
#sustainability .commonSustainability .sustain__list .sustain-table__cap {
  font-size: 14px
}
#sustainability .commonSustainability .sustain__list__commonTxt {
  font-size: 16px
}
#sustainability .commonSustainability .sustain__list > h4 {
  font-size: 18px
}
#sustainability .commonSustainability__img {
  margin: 0 auto;
  margin-top: 40px
}
@media screen and (min-width:768px) {
  #sustainability .commonSustainability__img {
    margin-top: 40px;
    max-width: 700px
  }
}
#sustainability .commonSustainability__img .mg {
  margin: 30px 0;
  display: block
}
#sustainability .commonSustainability__img.mb {
  margin-bottom: 40px
}
#sustainability .commonSustainability__cap {
  font-size: 12px;
  text-align: left;
  margin-top: 0
}
#sustainability .commonSustainability__cap.mt {
  margin-top: 20px
}
#sustainability .commonSustainability .common-heading--h3 {
  margin-top: 60px
}
#sustainability .commonSustainability h2 + .common-heading--h3 {
  margin-top: 40px
}
#sustainability .commonSustainability .sustain__pdfLinkWrap > a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fff;
  text-decoration: none;
  padding: 20px
}
#sustainability .ankerLinks__blk-glay {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap
}
@media screen and (min-width:768px) {
  #sustainability .ankerLinks__blk-glay li {
    width: 29.787%;
    max-width: 280px
  }
}
#sustainability .common-button--grayArrowBtn {
  margin-top: 40px
}
#sustainability .common-button--grayArrowBtn a {
  font-size: 16px
}
#sustainability table th.bold {
  width: 80px;
  font-weight: 700;
  font-size: 16px;
  border-bottom: unset
}
#sustainability .txtBase__scrBlock {
  margin-top: 40px;
  overflow: auto
}
#sustainability .materialities .step__table {
  margin-top: 40px
}
#sustainability .materialities .step__table th {
  width: 15%;
  text-align: center
}
#sustainability .materialities .step__table td {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  text-align: left;
  padding: 15px 25px
}
#sustainability .materialities .step__table td .step__ttl {
  font-weight: 700;
  font-size: 18px
}
#sustainability .materialities .step__table td .step__txt {
  word-break: break-all;
  white-space: pre-wrap;
  font-size: 16px
}
#sustainability .materialities .materiality__table {
  table-layout: fixed;
  width: 750px;
  margin-top: 40px
}
@media screen and (min-width:768px) {
  #sustainability .materialities .materiality__table {
    table-layout: fixed;
    width: 100%
  }
}
#sustainability .materialities .materiality__table .-line2 {
  width: 25%
}
#sustainability .materialities .materiality__table tr {
  width: 100%
}
#sustainability .materialities .materiality__table tr th {
  padding: 15px;
  vertical-align: middle
}
#sustainability .materialities .materiality__table tr th:nth-of-type(1) {
  width: 40px;
  padding: 5px;
  text-align: center
}
#sustainability .materialities .materiality__table tr td {
  padding: 15px;
  text-align: left;
  vertical-align: middle
}
#sustainability .materialities .materiality__table tr .materiality__tableTtl {
  font-weight: 700;
  white-space: pre-wrap
}
#sustainability .materialities .materiality__table tr .materiality__tableTxt {
  white-space: pre-wrap
}
#sustainability .materialities .materiality__table tr .img {
  text-align: center;
  width: 300px
}
@media screen and (min-width:768px) {
  #sustainability .materialities .materiality__table tr .img {
    width: auto
  }
}
#sustainability .materialities .materiality__table tr .img .-imgWrap {
  display: inline-block;
  width: 70px
}
#sustainability .materialities .materiality__table tr .img .-imgWrap:not(:first-of-type) {
  margin-left: 15px
}
@media screen and (min-width:768px) {
  #sustainability .materialities .materiality__table tr .img .-imgWrap {
    width: 29%
  }
}
#sustainability .materialities .common-textBlock.mt.top {
  margin-top: 40px
}
#sustainability .materialities .common-textBlock.mt {
  margin-top: 60px
}
#sustainability .materialities .common-textBlock.mt a {
  cursor: pointer;
  text-decoration: underline;
  font-size: 16px
}
#sustainability .environment__logo {
  max-width: 300px;
  margin-top: 40px
}
@media screen and (min-width:768px) {
  #sustainability .environment__logo {
    max-width: 450px
  }
}
#sustainability .common-textBlock__textDetail {
  margin-top: 20px
}
#sustainability .common-heading--h4 {
  margin-top: 40px;
  font-size: 22px
}
#sustainability .txtBase__scrBlock.mt {
  margin-top: 0
}
#sustainability .sustain__pdfLinkWrap.mt {
  margin-top: 40px
}
#sustainability .materiality__img {
  margin: 60px auto;
  max-width: 800px
}
#sustainability .contentWrap.-bg {
  padding: 20px;
  margin-top: 40px;
  background: #f9f8fa
}
@media screen and (min-width:768px) {
  #sustainability .contentWrap.-bg {
    padding: 20px 40px
  }
}
#sustainability .-bg .common-heading--h3:first-of-type {
  margin-top: 0
}
#sustainability .-bg .common-heading--h3:first-of-type.-mt {
  margin-top: 40px
}
#sustainability .-border {
  margin-top: 20px;
  padding: 20px;
  border: 1px solid #222427
}
#sustainability .-border .sustain__list:first-of-type {
  margin-top: 0
}
#sustainability .linkBlk {
  margin-top: 80px!important
}
#sustainability .ankerLinks__blk-glay.commonSustainabilityLinks {
  margin: 80px auto 0
}
@media screen and (min-width:768px) {
  #sustainability .ankerLinks__blk-glay.commonSustainabilityLinks {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start
  }
}
@media screen and (min-width:768px) {
  #sustainability .ankerLinks__blk-glay.commonSustainabilityLinks li {
    width: 29.787%;
    max-width: 280px
  }
  #sustainability .ankerLinks__blk-glay.commonSustainabilityLinks li:not(:nth-child(3n)) {
    margin-right: 5.3%
  }
}
#sustainability .ankerLinks__blk-glay.commonSustainabilityLinks li a {
  -webkit-transition: .3s;
  transition: .3s;
  position: relative
}
#sustainability .ankerLinks__blk-glay.commonSustainabilityLinks li a::after {
  display: none
}
@media screen and (min-width:768px) {
  #sustainability .ankerLinks__blk-glay.commonSustainabilityLinks li a {
    max-width: unset
  }
}
#sustainability .ankerLinks__blk-glay.commonSustainabilityLinks li a .arrow--grayBtn {
  position: absolute;
  right: 10px;
  top: 50%;
  left: auto;
  transform: translateY(-50%) rotate(90deg);
  -webkit-transform: translateY(-50%) rotate(90deg);
  -ms-transform: translateY(-50%) rotate(90deg);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  height: 23px;
  width: 10px
}
#sustainability .ankerLinks__blk-glay.commonSustainabilityLinks li a .arrow--grayBtn .arrow {
  display: inline-block;
  vertical-align: middle;
  height: 0;
  width: 0;
  background-color: #222427;
  position: relative;
  -webkit-transition: .3s;
  transition: .3s
}
#sustainability .ankerLinks__blk-glay.commonSustainabilityLinks li a .arrow--grayBtn .arrow::after,
#sustainability .ankerLinks__blk-glay.commonSustainabilityLinks li a .arrow--grayBtn .arrow::before {
  content: "";
  display: block;
  width: 10px;
  height: 1.5px;
  background-color: #222427;
  position: absolute;
  right: 0;
  -webkit-transition: .3s;
  transition: .3s;
  border-radius: 60px
}
#sustainability .ankerLinks__blk-glay.commonSustainabilityLinks li a .arrow--grayBtn .arrow::before {
  top: -4px;
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg)
}
#sustainability .ankerLinks__blk-glay.commonSustainabilityLinks li a .arrow--grayBtn .arrow::after {
  bottom: -4px;
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg)
}
#sustainability .ankerLinks__blk-glay.commonSustainabilityLinks li a:after {
  -webkit-transform: rotate(-90deg);
          transform: rotate(-90deg)
}
#sustainability .ankerLinks__blk-glay.commonSustainabilityLinks li a:hover {
  border-color: #d28903;
  color: #d28903
}
#sustainability .ankerLinks__blk-glay.commonSustainabilityLinks li a:hover .arrow {
  background: #d28903
}
#sustainability .ankerLinks__blk-glay.commonSustainabilityLinks li a:hover .arrow::after,
#sustainability .ankerLinks__blk-glay.commonSustainabilityLinks li a:hover .arrow::before {
  background: #d28903
}
#sustainability .pdfLink {
  font-size: 16px;
  margin-top: 20px;
  display: inline-block
}
#sustainability .pdfLink + .txtBase__scrBlock,
#sustainability .spSwipe + .txtBase__scrBlock {
  margin-top: 0
}
#sustainability .spSwipe {
  margin-top: 6px
}
@media screen and (min-width:768px) {
  #sustainability .spSwipe {
    display: none
  }
}
#sustainability .txtBase__table {
  margin-top: 6px
}
#sustainability .txtBase__table tr.bg td,
#sustainability .txtBase__table tr.bg th {
  background: #f8f9fa
}
#sustainability .txtBase__table tr:not(.bg) td,
#sustainability .txtBase__table tr:not(.bg) th {
  background: #fff
}
#sustainability .txtBase__table tr .bg {
  background: #ebebeb!important
}
#sustainability .txtBase__table tr th {
  font-size: 15px
}
#sustainability .txtBase__table tr td {
  font-size: 13px
}
#sustainability .sustain-table .sustain-table__list:first-of-type dd,
#sustainability .sustain-table .sustain-table__list:first-of-type dt {
  background: #ebebeb;
  font-size: 15px
}
#sustainability .sustain-table__list dt {
  background: #ebebeb;
  font-size: 15px
}
#sustainability .sustain-table__list dd {
  font-size: 13px
}
#sustainability .sustain-table__list.bg dd {
  background: #f8f9fa
}
#sustainability .sustain-table__list:not(.bg) dd {
  background: #fff
}
#sustainability .common-button--grayArrowBtn:hover .arrow--grayBtn .arrow {
  background: #d28903
}
#sustainability .common-button--grayArrowBtn:hover .arrow--grayBtn .arrow::after,
#sustainability .common-button--grayArrowBtn:hover .arrow--grayBtn .arrow::before {
  background: #d28903
}
#sustainability .ankerLinks__blk-glay li a {
  font-size: 16px
}
* + #sustainability .commonSustainability__ttl {
  margin-top: 120px
}
@media screen and (max-width:768px) {
  .subpage .txtBase__scrBlock .txtBase__table tr .nowrap,
  .subpage .txtBase__scrBlock .txtBase__table tr th {
    white-space: nowrap
  }
  .subpage .txtBase__scrBlock .txtBase__table tr .preWrap {
    white-space: pre-wrap
  }
}
.sustain__president {
  margin-top: 12px;
  line-height: 2
}
.sustain__mainImg > img {
  width: 100%
}
.sustain__mainImg.graphWrap {
  margin-top: 28px
}
.sustain__message > p:nth-of-type(1) {
  font-weight: 400;
  font-size: 16px
}
.sustain__list {
  margin-top: 20px
}
.sustain__list > h4 {
  font-size: 16px
}
.sustain__list > p {
  margin-top: 8px;
  line-height: 1.8
}
.sustain__list > p a {
  color: inherit
}
.sustain__list > p a:visited {
  color: inherit
}
.sustain__list > p a:hover {
  opacity: .7
}
.sustain__example {
  margin-bottom: 20px
}
.sustain__example > h4 {
  font-size: 16px
}
.sustain__exampleLink > p {
  margin-top: 20px;
  line-height: 1.8
}
.sustain__exampleLink > p a {
  word-wrap: break-word;
  color: inherit
}
.sustain__exampleLink > p a:visited {
  color: inherit
}
.sustain__exampleLink > p a:hover {
  opacity: .7
}
.sustain__genreWrap {
  margin-top: 40px
}
.sustain__linkWrap {
  margin-top: 20px
}
.sustain__linkWrap > a {
  color: inherit
}
.sustain__linkWrap > a:visited {
  color: inherit
}
.sustain__linkWrap > a:hover {
  opacity: .7
}
.sustain__linkWrap.contentBottom {
  margin-top: 60px;
  padding-bottom: 100px
}
.sustain__icon-pdf {
  width: 20px;
  display: inline-block;
  margin-right: 12px
}
.sustain__icon-pdf > img {
  width: 100%
}
.sustain-table {
  margin-top: 20px
}
.sustain-table__list {
  display: table;
  width: 100%;
  border-bottom: 1px solid #aaa;
  border-left: 1px solid #aaa
}
.sustain-table__list > dt {
  display: table-cell;
  border-right: 1px solid #aaa;
  font-size: 15px;
  padding: 17.5px 0 17.5px 8px;
  line-height: 1;
  width: 25%
}
@media (max-width:750px) {
  .sustain-table__list > dt {
    padding: 8px 4px;
    font-size: 13px;
    vertical-align: middle
  }
}
.sustain-table__list > dd {
  display: table-cell;
  border-right: 1px solid #aaa;
  text-align: center;
  font-size: 15px;
  padding: 17.5px 0;
  line-height: 1;
  vertical-align: middle;
  width: 25%
}
@media (max-width:750px) {
  .sustain-table__list > dd {
    padding: 8px 4px;
    font-size: 13px
  }
}
.sustain-table__list.itemHead {
  background-color: #eee;
  border-top: 1px solid #aaa
}
.sustain-table__cap {
  text-align: right;
  margin-top: 10px
}
@media (max-width:750px) {
  .sustain-table__cap {
    font-size: 13px;
    margin-top: 4px
  }
}
.sustain__pdfLinkWrap {
  background-color: #1f2224;
  display: inline-block;
  margin-top: 20px
}
@media (max-width:750px) {
  .sustain__pdfLinkWrap {
    width: 100%
  }
}
.sustain__pdfLinkWrap > a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fff;
  text-decoration: none;
  padding: 20px
}
.sustain__pdfLinkWrap > a:visited {
  color: #fff
}
.sustain__pdfLinkWrap > a span {
  line-height: 1
}
.sustain__pdfLinkWrap > a:hover {
  opacity: .7
}
@media (max-width:750px) {
  .sustain__pdfLinkWrap > a {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between
  }
}
.sustain__pdfText {
  font-size: 16px;
  margin-right: 20px
}
@media (max-width:750px) {
  .sustain__pdfText {
    font-size: 14px;
    margin-right: 0
  }
}
.sustain__pdfIcon {
  width: 16px;
  display: inline-block
}
.sustain__pdfIcon > img {
  width: 100%;
  vertical-align: middle
}
/*# sourceMappingURL=style.css.map */
