@charset "UTF-8";
/*
* multilingual.css
*
*/
@font-face {
  font-family: "Noto Sans Japanese";
  font-weight: 300;
  font-style: normal;

  src: url("/files/font/NotoSansCJKjp-DemiLight.woff") format("woff"), url("/files/font/NotoSansCJKjp-DemiLight.ttf") format("truetype");
}

@font-face {
  font-family: "Noto Sans Japanese";
  font-weight: 400;
  font-style: normal;

  src: url("/files/font/NotoSansCJKjp-Regular.woff") format("woff"), url("/files/font/NotoSansCJKjp-Regular.ttf") format("truetype");
}

@font-face {
  font-family: "Noto Sans Japanese";
  font-weight: 500;
  font-style: normal;

  src: url("/files/font/NotoSansCJKjp-Medium.woff") format("woff"), url("/files/font/NotoSansCJKjp-Medium.ttf") format("truetype");
}

@font-face {
  font-family: "Noto Sans Japanese";
  font-weight: 700;
  font-style: normal;

  src: url("/files/font/NotoSansCJKjp-Bold.woff") format("woff"), url("/files/font/NotoSansCJKjp-Bold.ttf") format("truetype");
}

body {
  min-width: auto;
}
body.chn {
  font-family: "Noto Sans SC", sans-serif;
}
body.eng {
  font-family: "ヒラギノ角ゴ ProN W3", "Lucida Grande", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Verdana, "ＭＳ Ｐゴシック", sans-serif;
}
body.esp {
  font-family: "ヒラギノ角ゴ ProN W3", "Lucida Grande", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Verdana, "ＭＳ Ｐゴシック", sans-serif;
}
@media screen and (max-width: 768px) {
  body {
    padding-top: 14.66667vw;
  }
}

.header {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  margin: auto;
  padding: 0 60px;
  max-width: 1400px;
  height: 80px;
}
@media screen and (max-width: 768px) {
  .header {
    padding: 0 5.33333vw; 
    height: 14.66667vw;
  }
}

.header_inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 100%; 

  -webkit-box-pack: justify; 

      -ms-flex-pack: justify; 

          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.header_logo {
  width: 193px;
  height: 45px;
}
@media screen and (max-width: 768px) {
  .header_logo {
    width: 32vw;
    height: 7.46667vw;
  }
}

.header_close {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-transition: opacity 0.15s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: opacity 0.15s cubic-bezier(0.25, 0.1, 0.25, 1); 

  -webkit-box-align: center; 

      -ms-flex-align: center; 

          align-items: center;
}
.header_close svg {
  fill: #525252;
}
@media screen and (max-width: 768px) {
  .header_close svg {
    width: 4.26667vw;
    height: 4.26667vw;
  }
}
.header_close p {
  margin-left: 5px;
  letter-spacing: 0.08em; 
  color: #525252;
  font-size: 12px;
}
@media screen and (max-width: 768px) {
  .header_close p {
    margin-left: 1.33333vw;
    font-size: 3.2vw;
  }
}
.no-touchevents .header_close:hover {
  opacity: 0.7;
}

.footer {
  text-align: center;
}
@media screen and (max-width: 768px) {
  .footer {
    padding: 12.26667vw 0 2.66667vw;
    min-height: auto;
  }
}

.footer_logo {
  margin: auto;
  width: 235px;
}
@media screen and (max-width: 768px) {
  .footer_logo {
    width: 39.2vw;
  }
}

.footer_address,
.footer_contact {
  font-size: 14px;
  line-height: 1.42857;
}
.footer_address address,
.footer_contact address {
  font-style: normal;
}
@media screen and (max-width: 768px) {
  .footer_address,
  .footer_contact {
    font-size: 3.2vw;
    line-height: 1.16667;
  }
}

.footer_address {
  margin-top: 36px;
}
@media screen and (max-width: 768px) {
  .footer_address {
    margin-top: 4.8vw;
  }
}

.footer_contact {
  margin-top: 20px;
}
@media screen and (max-width: 768px) {
  .footer_contact {
    margin-top: 2.66667vw;
  }
  .footer_contact li + li {
    margin-top: 1.33333vw;
  }
}

.footer_copyright {
  margin-top: 100px;
}
@media screen and (max-width: 768px) {
  .footer_copyright {
    margin-top: 13.33333vw;
  }
}
.footer_copyright small {
  letter-spacing: 0.02em; 
  font-size: 11px;
}
@media screen and (max-width: 768px) {
  .footer_copyright small {
    font-size: 2.66667vw;
  }
}

.title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  width: 100%;
  background: url(/files/img/multilingual/common/kv_bg_lg.jpg) center/1400px auto no-repeat; 

  -webkit-box-align: center; 

      -ms-flex-align: center; 

          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (min-width: 769px) {
  .title {
    height: 299px;
  }
  .title:before,
  .title:after {
    content: "";
    position: absolute;
    top: 0;
    width: calc( (100% - 1400px) / 2);
    height: 100%;
  }
  .title:before {
    left: 0;
    background: url(/files/img/multilingual/common/kv_bg_left.jpg) center/auto 100% repeat-x;
  }
  .title:after {
    right: 0;
    background: url(/files/img/multilingual/common/kv_bg_right.jpg) center/auto 100% repeat-x;
  }
}
@media screen and (max-width: 768px) {
  .title {
    background: url(/files/img/multilingual/common/kv_bg_sm.jpg) center/100% auto no-repeat;
  }
}

.lead {
  padding: 0 60px;
  letter-spacing: 0.05em;
  font-size: 16px;
  line-height: 1.875;

  line-break: strict;
}
@media screen and (max-width: 1040px) {
  .lead {
    text-align: justify;
  }
  .lead br {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .lead {
    padding: 0 5.33333vw;
    font-size: 3.2vw;
    line-height: 2;
  }
}

.inner {
  position: relative;
  margin: 0 auto;
  padding-top: 80px; 
  width: 100%;
  max-width: 1160px;
}
@media screen and (max-width: 768px) {
  .inner {
    padding-top: 8vw;
  }
}

.pdfLink {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  top: 48px;
  right: 60px;
  -webkit-transition: opacity 0.2s cubic-bezier(0.25, 0.25, 0.75, 0.75);
  transition: opacity 0.2s cubic-bezier(0.25, 0.25, 0.75, 0.75); 
  font-size: 0;
}
.pdfLink:hover {
  opacity: 0.6;
}
@media screen and (max-width: 768px) {
  .pdfLink {
    display: none;
  }
}

.pdfLink_icon {
  margin-right: 8px;
  width: 18px;
  height: 22px;
  font-size: 0;
}

.pdfLink_txt {
  border-bottom: 1px solid #525252;
}
.pdfLink_txt span {
  vertical-align: text-top;
  font-size: 14px;
  line-height: 1;
}

.section {
  margin-top: 150px;
}
@media screen and (max-width: 768px) {
  .section {
    margin-top: 22.66667vw;
  }
}

.section_inner01 {
  opacity: 0;
  margin: auto;
  padding: 0 79px;
  max-width: 1058px;
  -webkit-transition: opacity 0.8s, -webkit-transform 1.4s cubic-bezier(0.23, 1, 0.32, 1);
  transition: opacity 0.8s, -webkit-transform 1.4s cubic-bezier(0.23, 1, 0.32, 1);
  transition: opacity 0.8s, transform 1.4s cubic-bezier(0.23, 1, 0.32, 1);
  transition: opacity 0.8s, transform 1.4s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 1.4s cubic-bezier(0.23, 1, 0.32, 1);
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
  -webkit-transform: translateY(60px);
      -ms-transform: translateY(60px);
          transform: translateY(60px);
}
.section_inner01.is-active {
  opacity: 1;
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
}
@media screen and (max-width: 768px) {
  .section_inner01 {
    padding: 0;
    width: 89.33333vw;
  }
}

.section_inner02 {
  opacity: 0;
  margin: auto;
  padding: 0 80px;
  max-width: 1060px;
  -webkit-transition: opacity 0.8s, -webkit-transform 1.4s cubic-bezier(0.23, 1, 0.32, 1);
  transition: opacity 0.8s, -webkit-transform 1.4s cubic-bezier(0.23, 1, 0.32, 1);
  transition: opacity 0.8s, transform 1.4s cubic-bezier(0.23, 1, 0.32, 1);
  transition: opacity 0.8s, transform 1.4s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 1.4s cubic-bezier(0.23, 1, 0.32, 1);
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
  -webkit-transform: translateY(60px);
      -ms-transform: translateY(60px);
          transform: translateY(60px);
}
.section_inner02.is-active {
  opacity: 1;
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
}
@media screen and (max-width: 768px) {
  .section_inner02 {
    padding: 0;
    width: 89.33333vw;
  }
}

.section_inner03 {
  opacity: 0;
  margin: auto;
  padding: 0 60px;
  max-width: 1048px;
  -webkit-transition: opacity 0.8s, -webkit-transform 1.4s cubic-bezier(0.23, 1, 0.32, 1);
  transition: opacity 0.8s, -webkit-transform 1.4s cubic-bezier(0.23, 1, 0.32, 1);
  transition: opacity 0.8s, transform 1.4s cubic-bezier(0.23, 1, 0.32, 1);
  transition: opacity 0.8s, transform 1.4s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 1.4s cubic-bezier(0.23, 1, 0.32, 1);
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
  -webkit-transform: translateY(60px);
      -ms-transform: translateY(60px);
          transform: translateY(60px);
}
.section_inner03.is-active {
  opacity: 1;
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
}
@media screen and (max-width: 768px) {
  .section_inner03 {
    padding: 0;
    width: 100vw;
  }
}

.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 (max-width: 768px) {
  .section_flex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.section_title {
  opacity: 0;
  margin-top: 50px;
  padding: 0 60px;
  -webkit-transition: opacity 0.8s, -webkit-transform 1.4s cubic-bezier(0.23, 1, 0.32, 1);
  transition: opacity 0.8s, -webkit-transform 1.4s cubic-bezier(0.23, 1, 0.32, 1);
  transition: opacity 0.8s, transform 1.4s cubic-bezier(0.23, 1, 0.32, 1);
  transition: opacity 0.8s, transform 1.4s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 1.4s cubic-bezier(0.23, 1, 0.32, 1);
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
  -webkit-transform: translateY(60px);
      -ms-transform: translateY(60px);
          transform: translateY(60px); 
  text-align: center;
}
.section_title.is-active {
  opacity: 1;
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
}
@media screen and (max-width: 768px) {
  .section_title {
    margin-top: 6.66667vw;
    padding: 0;
  }
  .section_title img {
    width: 100%;
  }
}

.section_img {
  opacity: 0;
  margin: 57px auto 0;
  padding: 0 67px;
  max-width: 1060px;
  -webkit-transition: opacity 0.8s, -webkit-transform 1.4s cubic-bezier(0.23, 1, 0.32, 1);
  transition: opacity 0.8s, -webkit-transform 1.4s cubic-bezier(0.23, 1, 0.32, 1);
  transition: opacity 0.8s, transform 1.4s cubic-bezier(0.23, 1, 0.32, 1);
  transition: opacity 0.8s, transform 1.4s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 1.4s cubic-bezier(0.23, 1, 0.32, 1);
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
  -webkit-transform: translateY(60px);
      -ms-transform: translateY(60px);
          transform: translateY(60px); 
  text-align: center;
}
.section_img.is-active {
  opacity: 1;
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
}
@media screen and (max-width: 768px) {
  .section_img {
    margin-top: 4.4vw;
    padding: 0;
  }
}

.section_txt {
  margin-top: 43px;
  letter-spacing: 0.08em;
  font-size: 16px;
  line-height: 1.5;

  line-break: strict;
}
.section_txt.section_txt-margin02 {
  margin-top: 15px;
}
@media screen and (max-width: 768px) {
  .section_txt.section_txt-margin02 {
    margin-top: 1.86667vw;
  }
}
@media screen and (max-width: 768px) {
  .section_txt {
    margin-top: 2.66667vw;
    letter-spacing: 0.04em; 
    font-size: 3.2vw;
    line-height: 1.41667;
  }
  .section_txt.-kerning {
    letter-spacing: 0.02em;
  }
  .section_txt.section_txt-margin03 {
    margin-top: 12.26667vw;
  }
}

.division.division-margin01 {
  margin-top: 100px;
}
@media screen and (max-width: 768px) {
  .division.division-margin01 {
    margin-top: 10.66667vw;
  }
}

.division.division-margin02 {
  margin-top: 80px;
}
@media screen and (max-width: 768px) {
  .division.division-margin02 {
    margin-top: 6.66667vw;
  }
}

.division.division-margin03 {
  margin-top: 50px;
}
@media screen and (max-width: 768px) {
  .division.division-margin03 {
    margin-top: 6.66667vw;
  }
}

.division_title {
  letter-spacing: 0.02em; 
  font-size: 26px;
  font-weight: bold;
  line-height: 1;
}
.eng .division_title,
.esp .division_title {
  font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
}
.division_title span {
  letter-spacing: 0; 
  font-size: 20px;
}
@media screen and (max-width: 768px) {
  .division_title {
    letter-spacing: 0.04em; 
    font-size: 4vw;
    line-height: 1.13333;
  }
  .division_title span {
    font-size: 3.2vw;
    line-height: 1.25;
  }
  .division_title.division_title-kerning {
    letter-spacing: 0.02em;
  }
}

.division_desc {
  margin-top: 27px;
  text-align: justify; 
  letter-spacing: 0.08em;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.22222;

  line-break: strict;
}
.eng .division_desc,
.esp .division_desc {
  font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
}
@media screen and (max-width: 768px) {
  .division_desc {
    margin-top: 3.2vw;
    font-size: 3.2vw;
    line-height: 1.41667;
  }
}

.division_content {
  width: 45.55%;
}
@media screen and (max-width: 768px) {
  .division_content {
    width: 100%;
  }
}

.division_img {
  text-align: center;
}
.division_img.division_img-margin01 {
  margin-top: 20px;
}
@media screen and (max-width: 768px) {
  .division_img.division_img-margin01 {
    margin-top: 2.66667vw;
  }
}
@media screen and (max-width: 768px) {
  .division_img.division_img-margin02 {
    margin-top: 4vw;
  }
}