@charset "UTF-8";
/*! Writen  by SCSS */
/*下層ページ最初のセクション上部余白を統一する際は使用してみて下さい*/
.section_cont {
  padding: 45px 0; }
  @media screen and (max-width: 480px) {
    .section_cont {
      padding: 25px 0; } }
  .section_cont.first_sec {
    padding-top: 100px; }
    @media screen and (max-width: 480px) {
      .section_cont.first_sec {
        padding-top: 40px; } }
  .section_cont.last_sec {
    padding-bottom: 0; }
    @media screen and (max-width: 480px) {
      .section_cont.last_sec {
        padding-bttom: 0; } }

.breadlist {
  display: none; }

.contents_wrap {
  background: url("../images/top/bg.jpg") top center/100% auto; }

.inner_main {
  position: relative; }
  @media screen and (max-width: 480px) {
    .inner_main {
      height: calc(100svh - 60px); }
      .inner_main .img {
        width: 100%;
        height: 100%;
        object-fit: cover; } }
  .inner_main .cap {
    bottom: 10px;
    right: 10px; }

.inner_ent {
  margin-bottom: 80px; }
  @media screen and (max-width: 480px) {
    .inner_ent {
      margin-bottom: 50px; } }
  .inner_ent > .inner {
    max-width: 1080px;
    width: calc(100% - 40px); }

.inner.w1020 {
  width: calc(100% - 40px);
  max-width: 1020px; }
.inner.w1080 {
  width: calc(100% - 40px);
  max-width: 1080px; }
.inner.inner2 {
  width: calc(100% - 15vw); }
  @media screen and (max-width: 1500px) {
    .inner.inner2 {
      width: calc(100% - 12vw); } }
  @media screen and (max-width: 480px) {
    .inner.inner2 {
      width: calc(100% - 40px); } }

.contaner {
  padding: 60px 0 100px; }
  @media screen and (max-width: 480px) {
    .contaner {
      padding: 40px 0 50px; } }

.sec.bg {
  margin-inline: auto;
  position: relative;
  z-index: 2;
  padding: 60px 0;
  width: calc(100% - 20vw); }
  @media screen and (max-width: 1500px) {
    .sec.bg {
      width: calc(100% - 15vw); } }
  @media screen and (max-width: 480px) {
    .sec.bg {
      width: 100%;
      padding: 30px 0 20px; } }
  .sec.bg::before {
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    width: 100%;
    height: 640px;
    max-height: 50%;
    background: linear-gradient(0deg, rgba(63, 61, 61, 0), #3f3d3d); }
    @media screen and (max-width: 1080px) {
      .sec.bg::before {
        height: calc(640vw / 10.8); } }
    @media screen and (max-width: 480px) {
      .sec.bg::before {
        height: 400px; } }
  .sec.bg::after {
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 640px;
    max-height: 50%;
    background: linear-gradient(0deg, #3f3d3d, rgba(63, 61, 61, 0)); }
    @media screen and (max-width: 1080px) {
      .sec.bg::after {
        height: calc(640vw / 10.8); } }
    @media screen and (max-width: 480px) {
      .sec.bg::after {
        height: 400px; } }
  .sec.bg .bg_wh {
    background: #fff;
    padding: 40px 30px; }
    @media screen and (max-width: 480px) {
      .sec.bg .bg_wh {
        padding: 20px 10px; } }
.sec .sec_ttl_en {
  font-size: clamp(18px, calc(48vw / 10.8), 48px);
  line-height: 1;
  letter-spacing: 0.04em;
  margin-bottom: 0.3em;
  font-weight: 400;
  color: #d4c234;
  text-shadow: 0 0 8px rgba(0, 0, 0, 0.8); }
  @media screen and (max-width: 480px) {
    .sec .sec_ttl_en {
      font-size: calc(29vw / 3.9);
      font-size: calc(27vw / 3.9);
      margin-bottom: 0.5em; } }
.sec .sec_ttl_ja {
  font-size: clamp(14px, calc(26vw / 10.8), 26px);
  font-size: clamp(14px, calc(24vw / 10.8), 24px);
  line-height: 1.6;
  letter-spacing: 0.1em;
  margin-bottom: 1.2em;
  font-weight: 600;
  color: #d4c234;
  text-shadow: 0 0 8px rgba(0, 0, 0, 0.8); }
  @media screen and (max-width: 480px) {
    .sec .sec_ttl_ja {
      font-size: calc(16vw / 3.9); } }
.sec .sec_ttl_ja2 {
  font-size: clamp(14px, calc(25vw / 10.8), 25px);
  line-height: 1.6;
  letter-spacing: 0.1em;
  margin-bottom: 1em;
  font-weight: 600; }
  @media screen and (max-width: 480px) {
    .sec .sec_ttl_ja2 {
      font-size: calc(16vw / 3.9); } }

.cap_wrap {
  padding-top: 60px; }
  @media screen and (max-width: 480px) {
    .cap_wrap {
      padding-top: 30px; } }

.sec_ttl_wrap {
  display: flex;
  flex-direction: column;
  row-gap: 30px; }

.sec_ttl_en {
  font-size: clamp(12px, calc(20vw / 10.8), 20px);
  line-height: 1;
  letter-spacing: 0.1em;
  text-align: center;
  margin-bottom: 2.2em; }
  @media screen and (max-width: 480px) {
    .sec_ttl_en {
      font-size: calc(14vw / 3.9);
      font-size: calc(16vw / 3.9); } }

.sec_ttl {
  font-size: clamp(12px, calc(22vw / 10.8), 22px);
  line-height: 1;
  letter-spacing: 0.1em;
  padding: 0.8em 10px;
  background: #4f3623;
  text-align: center;
  color: #fff;
  margin-bottom: 1.5em; }
  @media screen and (max-width: 480px) {
    .sec_ttl {
      font-size: calc(16vw / 3.9);
      padding: 0.8em 5px;
      margin-bottom: 1em; } }

.sec_main {
  font-size: clamp(18px, calc(32vw / 10.8), 32px);
  line-height: 1.9;
  letter-spacing: 0.1em;
  font-weight: 600;
  margin-bottom: 1em; }
  @media screen and (max-width: 480px) {
    .sec_main {
      font-size: calc(18vw / 3.9); } }

.lead {
  font-size: clamp(16px, 2.41vw, 27px);
  line-height: 1.63;
  font-weight: 600; }
  @media screen and (max-width: 480px) {
    .lead {
      font-size: calc(19vw / 3.9); } }
  .lead.ls_min {
    letter-spacing: -0.05em; }

.sec_read {
  font-size: clamp(12px, calc(18vw / 10.8), 18px);
  line-height: 2.2;
  letter-spacing: 0.1em;
  margin-bottom: 2.4em; }
  @media screen and (max-width: 480px) {
    .sec_read {
      font-size: calc(13vw / 3.9); } }

.read {
  font-size: clamp(12px, calc(15vw / 10.8), 15px);
  line-height: 1.8;
  letter-spacing: 0.1em; }
  @media screen and (max-width: 480px) {
    .read {
      font-size: calc(12vw / 3.9); } }

.cap_wrap p:not(:last-child) {
  margin-bottom: 8px; }

/*# sourceMappingURL=inner.css.map */
