/*! Writen  by SCSS */
.inner_main .main_img {
  background-image: url("../img/access/main.jpg"); }
  @media screen and (max-width: 480px) {
    .inner_main .main_img {
      background-image: url("../img/access/main_sp.jpg"); } }

.bg1 {
  background: #004525; }

.sec01 {
  padding-top: clamp(40px, 4.167vw, 50px);
  padding-bottom: clamp(40px, 7.5vw, 90px); }
  .sec01 .sec_txt_box {
    color: #fff;
    margin-bottom: clamp(40px, 7.5vw, 90px); }
    @media screen and (max-width: 480px) {
      .sec01 .sec_txt_box {
        text-align: left !important;
        padding-left: calc(90%/3.35); } }
    .sec01 .sec_txt_box .cap_l.ta_c {
      text-align: center; }
      @media screen and (max-width: 480px) {
        .sec01 .sec_txt_box .cap_l.ta_c {
          text-align: left; } }
  .sec01 .item01 {
    position: relative;
    padding-bottom: calc(600%/16); }
    @media screen and (max-width: 480px) {
      .sec01 .item01 {
        padding-bottom: 0; } }
    .sec01 .item01 .img_cnt {
      width: 100%;
      max-width: 1280px;
      position: absolute;
      inset: 0;
      margin: auto; }
      @media screen and (max-width: 1600px) {
        .sec01 .item01 .img_cnt {
          max-width: 100%;
          position: relative; } }
      .sec01 .item01 .img_cnt .img101 {
        width: calc(1303vw / 16);
        position: absolute;
        right: calc(130%/12);
        top: 0; }
        @media screen and (max-width: 1600px) {
          .sec01 .item01 .img_cnt .img101 {
            right: auto;
            left: 0; } }
        @media screen and (max-width: 480px) {
          .sec01 .item01 .img_cnt .img101 {
            position: relative;
            width: 100%;
            inset: 0;
            margin-bottom: 25px; } }
        .sec01 .item01 .img_cnt .img101 .cap {
          bottom: -1.5em; }
    .sec01 .item01 .txt_img01 {
      width: calc(219vw/16);
      position: absolute;
      right: 0;
      top: 0; }
      @media screen and (max-width: 480px) {
        .sec01 .item01 .txt_img01 {
          width: calc(86%/3.75);
          top: calc(-80%/1.75	);
          left: calc(14%/3.75);
          right: auto; } }
    .sec01 .item01 .txt_cnt {
      position: absolute;
      inset: 0;
      margin: auto;
      max-width: 1280px; }
      @media screen and (max-width: 480px) {
        .sec01 .item01 .txt_cnt {
          position: relative; } }
      .sec01 .item01 .txt_cnt .read_copy {
        position: absolute;
        right: 0;
        bottom: 0;
        text-shadow: 0px 0px 0px rgba(0, 0, 0, 0.8), 0px 0px 1px rgba(0, 0, 0, 0.8), 0px 0px 2px rgba(0, 0, 0, 0.8), 0px 0px 3px rgba(0, 0, 0, 0.8), 0px 0px 4px rgba(0, 0, 0, 0.8), 0px 0px 5px rgba(0, 0, 0, 0.8), 0px 0px 6px rgba(0, 0, 0, 0.8), 0px 0px 7px rgba(0, 0, 0, 0.8), 0px 0px 8px rgba(0, 0, 0, 0.8), 0px 0px 9px rgba(0, 0, 0, 0.8), 0px 0px 10px rgba(0, 0, 0, 0.8), 0px 0px 11px rgba(0, 0, 0, 0.8), 0px 0px 12px rgba(0, 0, 0, 0.8), 0px 0px 13px rgba(0, 0, 0, 0.8), 0px 0px 14px rgba(0, 0, 0, 0.8), 0px 0px 15px rgba(0, 0, 0, 0.8);
        color: #fff; }
        @media screen and (max-width: 480px) {
          .sec01 .item01 .txt_cnt .read_copy {
            position: static;
            padding-left: calc(90%/3.35);
            text-shadow: none; } }

.sec02 {
  padding-top: clamp(40px, 7.5vw, 90px);
  padding-bottom: clamp(40px, 7.5vw, 90px); }
  @media screen and (max-width: 768px) {
    .sec02 {
      padding-top: clamp(10px, 3.334vw, 40px);
      padding-bottom: 0; } }
  .sec02 .flex_item {
    display: flex;
    align-items: center; }
    @media screen and (max-width: 768px) {
      .sec02 .flex_item {
        flex-direction: column;
        justify-content: center;
        gap: 40px 0; } }
    .sec02 .flex_item .l_cnt {
      width: calc(722%/12.8); }
      @media screen and (max-width: 768px) {
        .sec02 .flex_item .l_cnt {
          width: 100%;
          width: fit-content; } }
      @media screen and (max-width: 480px) {
        .sec02 .flex_item .l_cnt {
          max-width: 280px;
          margin: 0 auto; } }
      .sec02 .flex_item .l_cnt .img_box {
        display: flex;
        justify-content: space-between;
        margin-bottom: 20px; }
        .sec02 .flex_item .l_cnt .img_box figure {
          width: calc(350%/7.22); }
      .sec02 .flex_item .l_cnt .txt1 {
        border-top: 1px solid #333;
        border-bottom: 1px solid #333;
        text-align: center;
        font-size: clamp(16px, 2.334vw, 28px);
        letter-spacing: 0.1em;
        margin-bottom: clamp(15px, 1.667vw, 20px); }
        @media screen and (max-width: 480px) {
          .sec02 .flex_item .l_cnt .txt1 {
            font-size: calc(21vw / 3.75); } }
      .sec02 .flex_item .l_cnt .txt2 {
        font-size: clamp(36px, 4.75vw, 57px);
        margin-bottom: clamp(15px, 1.667vw, 20px);
        line-height: 1; }
        @media screen and (max-width: 480px) {
          .sec02 .flex_item .l_cnt .txt2 {
            font-size: calc(28.8vw / 3.75); } }
        .sec02 .flex_item .l_cnt .txt2 .min {
          font-size: clamp(16px, 3vw, 36px); }
          @media screen and (max-width: 480px) {
            .sec02 .flex_item .l_cnt .txt2 .min {
              font-size: calc(18vw / 3.75); } }
      .sec02 .flex_item .l_cnt .txt3 {
        font-size: clamp(26px, 3.584vw, 43px);
        line-height: 1;
        margin-bottom: clamp(15px, 1.667vw, 20px); }
        @media screen and (max-width: 480px) {
          .sec02 .flex_item .l_cnt .txt3 {
            font-size: calc(21.6vw / 3.75); } }
        .sec02 .flex_item .l_cnt .txt3 .min {
          font-size: clamp(12px, 1.167vw, 14px); }
          @media screen and (max-width: 480px) {
            .sec02 .flex_item .l_cnt .txt3 .min {
              font-size: calc(10vw / 3.75); } }
          .sec02 .flex_item .l_cnt .txt3 .min.ex {
            margin-top: 10px;
            display: block; }
      .sec02 .flex_item .l_cnt .txt4 {
        font-size: clamp(18px, 2.667vw, 32px); }
        @media screen and (max-width: 480px) {
          .sec02 .flex_item .l_cnt .txt4 {
            font-size: calc(16.2vw / 3.75); } }
        .sec02 .flex_item .l_cnt .txt4 .min {
          font-size: clamp(12px, 1.167vw, 14px); }
          @media screen and (max-width: 480px) {
            .sec02 .flex_item .l_cnt .txt4 .min {
              font-size: calc(10vw / 3.75); } }
    .sec02 .flex_item .r_cnt {
      width: calc(521%/12.8);
      width: calc(520%/12.8); }
      @media screen and (max-width: 768px) {
        .sec02 .flex_item .r_cnt {
          width: 100%;
          max-width: 300px;
          margin: 0 auto; } }
      @media screen and (max-width: 480px) {
        .sec02 .flex_item .r_cnt {
          max-width: 100%;
          width: calc(252%/3.35);
          margin-bottom: 10px; } }
  .sec02 .txt5 {
    font-size: clamp(26px, 3.584vw, 43px); }
    @media screen and (max-width: 480px) {
      .sec02 .txt5 {
        font-size: calc(21vw / 3.55); } }

.sec03 {
  position: relative;
  padding-bottom: clamp(30px, 5vw, 60px); }
  .sec03::before {
    content: "";
    position: absolute;
    inset: 0;
    top: calc(77%/16);
    background: #004525;
    z-index: -1; }
  .sec03 .flex_cnt {
    position: relative; }
    @media screen and (max-width: 480px) {
      .sec03 .flex_cnt {
        display: flex;
        flex-direction: column-reverse; } }
    .sec03 .flex_cnt .txts {
      max-width: 1280px;
      position: absolute;
      inset: 0;
      top: auto;
      margin: auto;
      color: #fff; }
      @media screen and (max-width: 480px) {
        .sec03 .flex_cnt .txts {
          position: relative;
          width: calc(100% - 40px);
          margin: 0 auto 10px; } }
    .sec03 .flex_cnt .imgs {
      width: calc(894%/16);
      margin-left: auto; }
      @media screen and (max-width: 480px) {
        .sec03 .flex_cnt .imgs {
          width: 100%;
          position: relative; } }
      @media screen and (max-width: 480px) {
        .sec03 .flex_cnt .imgs .img301 {
          width: calc(360%/3.75);
          position: relative;
          z-index: 2; } }
      .sec03 .flex_cnt .imgs .img301 .cap_r {
        color: #fff; }
        @media screen and (max-width: 480px) {
          .sec03 .flex_cnt .imgs .img301 .cap_r {
            margin-top: 5px;
            text-align: right;
            padding-right: calc(55%/3.6); } }
      @media screen and (max-width: 480px) {
        .sec03 .flex_cnt .imgs .ttl_en {
          position: absolute;
          top: 1em;
          left: 0.2em;
          font-size: calc(44vw/3.75);
          opacity: 0.5;
          line-height: 1;
          color: #fff; } }
  .sec03 .img301_cap {
    color: #fff;
    margin-bottom: clamp(30px, 5.834vw, 70px); }
  .sec03 .ttl_en {
    font-size: clamp(40px, 7.5vw, 90px);
    opacity: 0.5;
    line-height: 1; }
  .sec03 .txt2 {
    margin-bottom: clamp(25px, 3.75vw, 45px); }
    .sec03 .txt2 .txt2_1 {
      font-size: clamp(14px, 1.667vw, 20px); }
      @media screen and (max-width: 480px) {
        .sec03 .txt2 .txt2_1 {
          font-size: calc(10vw/3.75);
          letter-spacing: 0.1em; } }
      .sec03 .txt2 .txt2_1.boder {
        line-height: 1;
        display: flex;
        align-items: baseline;
        margin-bottom: 1em; }
        @media screen and (max-width: 480px) {
          .sec03 .txt2 .txt2_1.boder::after {
            content: "";
            width: calc(66%/3.75);
            height: 1px;
            background: #fff; } }
    .sec03 .txt2 .txt2_2 {
      font-size: clamp(40px, 6.167vw, 74px);
      letter-spacing: 0.1em;
      font-feature-settings: "palt";
      display: flex;
      align-items: baseline;
      line-height: 1;
      margin-bottom: 0.1em; }
      @media screen and (max-width: 480px) {
        .sec03 .txt2 .txt2_2 {
          font-size: calc(32vw/3.75); } }
      .sec03 .txt2 .txt2_2 .min1 {
        font-size: clamp(28px, 5.167vw, 62px); }
        @media screen and (max-width: 480px) {
          .sec03 .txt2 .txt2_2 .min1 {
            font-size: calc(33vw/3.75); } }
      .sec03 .txt2 .txt2_2 .min2 {
        font-size: clamp(20px, 3.584vw, 43px); }
        @media screen and (max-width: 480px) {
          .sec03 .txt2 .txt2_2 .min2 {
            font-size: calc(22vw/3.75); } }
  .sec03 .read {
    margin-bottom: clamp(25px, 3.75vw, 45px); }
  .sec03 .img_list {
    display: flex;
    justify-content: space-between; }
    .sec03 .img_list figure {
      width: calc(400%/12.8); }
      @media screen and (max-width: 480px) {
        .sec03 .img_list figure {
          width: calc(91%/3.75); } }
      @media screen and (max-width: 480px) {
        .sec03 .img_list figure:nth-child(2) {
          width: calc(184%/3.75); } }
      .sec03 .img_list figure .cap_r {
        margin-top: 5px;
        color: #fff; }

.sec04 {
  padding-top: clamp(40px, 7.5vw, 90px);
  padding-bottom: clamp(40px, 7.5vw, 90px); }
  .sec04 .box {
    display: flex;
    margin-bottom: clamp(50px, 8.334vw, 100px); }
    @media screen and (max-width: 768px) {
      .sec04 .box {
        flex-direction: column;
        gap: 20px 0; } }
    @media screen and (max-width: 480px) {
      .sec04 .box {
        margin-bottom: 20px; } }
    .sec04 .box .txts {
      width: calc(530%/12.8); }
      @media screen and (max-width: 768px) {
        .sec04 .box .txts {
          width: 100%;
          text-align: center; } }
      .sec04 .box .txts .read {
        font-weight: 500;
        letter-spacing: 0.05em;
        line-height: 1.5625; }
        @media screen and (max-width: 768px) {
          .sec04 .box .txts .read {
            text-align: left !important; } }
    .sec04 .box .imgs {
      width: calc(750%/12.8); }
      @media screen and (max-width: 768px) {
        .sec04 .box .imgs {
          width: 100%; } }
      .sec04 .box .imgs .img_em_wrap {
        position: relative; }
        .sec04 .box .imgs .img_em_wrap .img_em {
          position: absolute;
          top: calc(30%/2.68);
          left: 0;
          right: 0;
          margin: auto;
          text-align: center;
          line-height: 1;
          color: #fff;
          font-size: clamp(25px, 3.334vw, 40px); }
          @media screen and (max-width: 480px) {
            .sec04 .box .imgs .img_em_wrap .img_em {
              top: calc(40%/2.68);
              font-size: calc(32vw/3.75); } }
          .sec04 .box .imgs .img_em_wrap .img_em.shadow {
            text-shadow: 0px 0px 0px rgba(51, 51, 51, 0.4), 0px 0px 1px rgba(51, 51, 51, 0.4), 0px 0px 2px rgba(51, 51, 51, 0.4), 0px 0px 3px rgba(51, 51, 51, 0.4), 0px 0px 4px rgba(51, 51, 51, 0.4), 0px 0px 5px rgba(51, 51, 51, 0.4); }
        .sec04 .box .imgs .img_em_wrap .cap {
          bottom: auto;
          top: 100%;
          color: #000;
          display: block;
          line-height: 1.4;
          text-align: right; }
      .sec04 .box .imgs .txt_box {
        margin-top: 10px;
        line-height: 1; }
        .sec04 .box .imgs .txt_box .txt1 {
          font-size: clamp(12px, 1.167vw, 14px);
          margin-bottom: clamp(3px, 0.75vw, 9px); }
          @media screen and (max-width: 480px) {
            .sec04 .box .imgs .txt_box .txt1 {
              font-size: calc(10vw/3.75);
              letter-spacing: 0.1em;
              display: flex;
              align-items: baseline;
              margin-bottom: 1em; }
              .sec04 .box .imgs .txt_box .txt1::after {
                content: "";
                width: calc(66% / 3.75);
                height: 1px;
                background: #333; } }
        .sec04 .box .imgs .txt_box .txt2 {
          font-size: clamp(18px, 2.334vw, 28px);
          margin-bottom: clamp(3px, 0.75vw, 9px); }
          @media screen and (max-width: 480px) {
            .sec04 .box .imgs .txt_box .txt2 {
              font-size: calc(28vw/3.75);
              margin-bottom: 0.15em; } }
          .sec04 .box .imgs .txt_box .txt2 .min {
            font-size: clamp(14px, 1.667vw, 20px); }
            @media screen and (max-width: 480px) {
              .sec04 .box .imgs .txt_box .txt2 .min {
                font-size: calc(20vw/3.75); } }
        .sec04 .box .imgs .txt_box .cap_l {
          font-size: 10px;
          line-height: 1.4;
          text-indent: -1em;
          padding-left: 1em; }
    .sec04 .box.box1 {
      align-items: center; }
      .sec04 .box.box1 .imgs {
        display: flex;
        justify-content: space-between; }
        @media screen and (max-width: 480px) {
          .sec04 .box.box1 .imgs {
            flex-direction: column;
            gap: 20px 0; } }
        .sec04 .box.box1 .imgs .item {
          width: calc(355%/7.5); }
          @media screen and (max-width: 480px) {
            .sec04 .box.box1 .imgs .item {
              width: 100%; } }
    .sec04 .box.box2 {
      align-items: center;
      flex-direction: row-reverse; }
      @media screen and (max-width: 768px) {
        .sec04 .box.box2 {
          flex-direction: column; } }
      .sec04 .box.box2 .txts .read {
        text-align: right; }
        @media screen and (max-width: 768px) {
          .sec04 .box.box2 .txts .read {
            text-align: center; } }
    .sec04 .box.box3 {
      align-items: center;
      margin-bottom: 0; }
      @media screen and (max-width: 768px) {
        .sec04 .box.box3 {
          gap: 0 0; } }

/*# sourceMappingURL=access.css.map */
