@media only screen and (min-width: 768px) {
  .header {
    background-color: #ea4645;
  }
}

.page-heading {
  padding-bottom: 50px;
}
@media only screen and (min-width: 768px) {
  .page-heading__inner {
    min-height: min(500px, 439vw);
  }
}

.contents {
  padding-bottom: 25.641vw;
  background: #FFFDEA;
  position: relative;
}
@media only screen and (min-width: 768px) {
  .contents {
    padding-bottom: 160px;
  }
}
.contents::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: url(../images/noise.png);
  background-blend-mode: overlay;
  mix-blend-mode: overlay;
}
.contents__inner {
  position: relative;
  z-index: 1;
}

.lead {
  margin-bottom: 64px;
}
.lead p {
  text-align: center;
  font-size: min(4.103vw, 18px);
  line-height: 1.8;
}
.lead p + p {
  margin-top: 1em;
}

.container_date {
  text-align: center;
  color: #EA4645;
  font-weight: 600;
  font-size: 20px;
  margin-top: 30px;
}
.container_date span {
  background-color: #EA4645;
  color: #fff;
  font-size: 18px;
  padding: 2px 12px 5px;
  border-radius: 5px;
  margin-right: 10px;
}

.sec__wrap > .other {
  text-align: center;
  margin-top: 48px;
}
.sec__wrap > .other .txt {
  font-weight: 700;
  margin-bottom: 0.5em;
  font-size: 18px;
}
.sec__wrap > .other .btn__wrap {
  max-width: 354px;
  margin: auto;
}
.sec__wrap:not(:last-of-type) {
  padding-bottom: 20.513vw;
}
@media only screen and (min-width: 768px) {
  .sec__wrap:not(:last-of-type) {
    padding-bottom: 120px;
  }
}
.sec__heading {
  padding: 28px 0 26px;
  color: #fff;
  position: relative;
  background: #FF6A69;
}
@media only screen and (min-width: 768px) {
  .sec__heading {
    padding: 28px 0 26px;
  }
}
.sec__heading::after {
  content: "";
  position: absolute;
  display: inline-block;
  background: url(/assets/images/experience/ttl_deco01.svg) no-repeat center left;
  background-size: 100% auto;
  bottom: 0;
  right: 0;
  width: 40%;
  height: 100%;
  opacity: 0.4;
}
@media only screen and (min-width: 768px) {
  .sec__heading::after {
    bottom: auto;
    top: 0;
    width: 148px;
    height: 100%;
    opacity: 1;
  }
}
.sec__heading .ttl {
  font-size: 32px;
  line-height: 1;
  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-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-family: "Zen Old Mincho", serif;
  padding-right: 40px;
}
@media only screen and (min-width: 768px) {
  .sec__heading .ttl {
    font-size: 32px;
  }
}
.sec__heading .ttl--sub {
  font-size: 0.625em;
  display: block;
  font-weight: 500;
  margin-bottom: 0.6em;
}
.sec__heading .ttl--main {
  display: block;
  letter-spacing: 0.08em;
  line-height: 1.3;
}
.sec__heading .txt {
  border-top: 1px solid rgba(255, 255, 255, 0.5);
  font-weight: 400;
  line-height: 1.4;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  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-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding-top: 1em;
  margin-top: 1.5em;
}
@media only screen and (min-width: 768px) {
  .sec__heading .txt {
    padding-top: 0;
    margin-top: 0;
    padding-right: 198px;
    border-top: none;
    border-left: 1px solid rgba(255, 255, 255, 0.5);
    padding-left: 40px;
  }
}
.sec__heading .txt dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 0.4em;
}
.sec__heading .txt dl dt {
  background: #940003;
  border-radius: 3px;
  width: 3em;
  text-align: center;
  padding: 0.1em 0 0.2em;
  margin-right: 0.5em;
  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;
}
.sec__heading .txt dl dd {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.sec__text {
  line-height: 2;
}
@media only screen and (min-width: 768px) {
  .sec__text {
    font-size: 18px;
  }
}
.sec__text span {
  font-family: "Yu Gothic", "Meiryo", sans-serif;
  font-weight: 700;
}
.sec__group {
  margin-top: 10.256vw;
  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: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 5.128vw;
}
@media only screen and (min-width: 768px) {
  .sec__group {
    gap: 50px;
    margin-top: 80px;
  }
}
.sec__btn {
  height: 44px;
}
@media only screen and (min-width: 768px) {
  .sec__btn {
    height: 58px;
  }
}
.sec__btn a {
  padding: 0 50px 0 30px;
  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: #FFFFFF;
  background-color: #EA4645;
  background-image: url(../../assets/images/experience/ico_site.svg);
  background-repeat: no-repeat;
  background-position: right 20px center;
  border-radius: 9999px;
}

.subTtl {
  padding: 2px;
  width: 100%;
  color: #EA4645;
  font-family: "Zen Old Mincho", serif;
  font-size: 20px;
  text-align: center;
  border: 2px solid #EA4645;
}
@media only screen and (min-width: 768px) {
  .subTtl {
    padding: 4px;
    font-size: 28px;
    border: 4px solid #EA4645;
  }
}
.subTtl__inner {
  padding: 10px 40px;
  border: 1px solid #EA4645;
  position: relative;
  --kiraPos: 10px;
}
@media only screen and (min-width: 768px) {
  .subTtl__inner {
    padding: 15px 70px;
    --kiraPos: 30px;
  }
}
.subTtl__inner::before, .subTtl__inner::after {
  content: "";
  margin-top: -10px;
  position: absolute;
  top: 50%;
  display: block;
  width: 20px;
  aspect-ratio: 27/24;
  background-image: url(../../assets/images/subttl_kira.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
@media only screen and (min-width: 768px) {
  .subTtl__inner::before, .subTtl__inner::after {
    margin-top: -13px;
    width: 27px;
  }
}
.subTtl__inner::before {
  left: var(--kiraPos);
}
.subTtl__inner::after {
  right: var(--kiraPos);
}

.imageBlock {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 5vw;
}
@media only screen and (min-width: 768px) {
  .imageBlock {
    gap: 40px;
  }
}
.imageBlock__column {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 5.128vw;
}
@media only screen and (min-width: 768px) {
  .imageBlock__column {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 30px;
  }
}

.mediaBlock {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 5.128vw;
}
@media only screen and (min-width: 768px) {
  .mediaBlock {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 50px;
  }
}
@media only screen and (min-width: 768px) {
  .mediaBlock__photo {
    width: 66%;
  }
}
@media only screen and (min-width: 768px) {
  .mediaBlock__content {
    padding-top: 40px;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}

.infoTable {
  padding: 5vw 3vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 3vw;
  border-bottom: 1px dotted #EA4645;
  border-top: 1px dotted #EA4645;
}
@media only screen and (min-width: 768px) {
  .infoTable {
    padding: 40px 20px;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    gap: 20px;
  }
}
.infoTable__row {
  display: grid;
  grid-template-columns: auto 1fr;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: 400;
}
.infoTable__heading {
  padding-right: 3vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #EA4645;
  font-weight: 500;
  border-right: 1px solid #EA4645;
  height: 100%;
}
@media only screen and (min-width: 768px) {
  .infoTable__heading {
    padding-right: 20px;
  }
}
.infoTable__value {
  padding-left: 3vw;
}
@media only screen and (min-width: 768px) {
  .infoTable__value {
    padding-left: 20px;
  }
}
.infoTable p span {
  font-family: "Yu Gothic", "Meiryo", sans-serif;
  font-weight: 500;
}

.contentBottom {
  margin-top: 25.641vw;
}
@media only screen and (min-width: 768px) {
  .contentBottom {
    margin-top: 140px;
  }
}

.backBtn {
  margin: 0 auto;
  width: 200px;
  height: 50px;
}
@media only screen and (min-width: 768px) {
  .backBtn {
    width: 300px;
    height: 75px;
  }
}
.backBtn a {
  padding: 0 30px;
  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: #FFFFFF;
  background-image: url(../../assets/images/ico_arrow02.svg);
  background-color: #EA4645;
  background-repeat: no-repeat;
  background-position: right 20px center;
  border-radius: 9999px;
}

html[lang=en] .experience .contents {
  font-family: "Open Sans", sans-serif;
}
html[lang=en] .experience .contents .lead,
html[lang=en] .experience .contents .sec-block__benefit dl dt,
html[lang=en] .experience .contents a,
html[lang=en] .experience .contents .sec-block__tline {
  font-family: "EB Garamond", serif;
}
html[lang=en] .experience .contents .sec-block__btn.flex .col2 {
  padding: 1em 2em 1em 0.65em;
}
html[lang=en] .experience .contents .sec-block__benefit .title {
  font-family: "Open Sans", sans-serif;
  font-size: min(3.077vw, 14px);
}
html[lang=en] .experience .contents .sec-block__benefit dl dt::before {
  margin-bottom: 0;
}
html[lang=en] .experience .contents .sec__wrap > .other .txt {
  font-size: 3.333vw;
}
@media only screen and (min-width: 768px) {
  html[lang=en] .experience .contents .sec__wrap > .other .txt {
    font-size: 18px;
  }
}

video {
  display: block;
  background-color: #000;
  width: 100%;
  height: auto;
  margin: 20px auto;
}
@media only screen and (min-width: 768px) {
  video {
    max-width: 1120px;
    margin: 0 auto;
  }
}/*# sourceMappingURL=template.css.map */