@charset "UTF-8";
/*! Writen  by SCSS */
.sec .box {
  margin-inline: auto;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: calc(80% / 16); }
  @media screen and (max-width: 767px) {
    .sec .box {
      flex-direction: column;
      gap: 15px; } }
  .sec .box.end {
    align-items: flex-end; }
  .sec .box .img {
    width: calc(800% / 16);
    /*figure {
    	width: 100%;
    	height: 100%;
    }*/ }
    @media screen and (max-width: 767px) {
      .sec .box .img {
        width: 100%; } }
    .sec .box .img img {
      width: 100%;
      height: 100%;
      object-fit: cover; }
  .sec .box .txt {
    padding-left: 20px; }
    @media screen and (max-width: 767px) {
      .sec .box .txt {
        padding-inline: 20px;
        width: 100%;
        text-align: center; } }
    .sec .box .txt .sha {
      text-shadow: 0px 0px 0px white, 0px 0px 1px white, 0px 0px 2px white, 0px 0px 3px white, 0px 0px 4px white, 0px 0px 5px white, 0px 0px 6px white, 0px 0px 7px white, 0px 0px 8px white, 0px 0px 9px white; }
    .sec .box .txt .txt01 {
      margin-bottom: 1em;
      font-size: clamp(14px, calc(23vw / 16), 23px);
      font-size: clamp(14px, calc(25vw / 16), 25px);
      line-height: 2; }
      @media screen and (max-width: 480px) {
        .sec .box .txt .txt01 {
          font-size: calc(17vw / 3.9);
          line-height: 1.8; } }
    .sec .box .txt .txt02 {
      font-size: clamp(12px, calc(17vw / 16), 17px);
      font-size: clamp(12px, calc(19vw / 12), 19px);
      line-height: 2.3; }
      @media screen and (max-width: 480px) {
        .sec .box .txt .txt02 {
          font-size: calc(13vw / 3.9);
          font-size: calc(14vw / 3.9);
          margin-inline: -10px;
          line-height: 2.1; } }
      .sec .box .txt .txt02.mb {
        margin-bottom: 2em; }
  .sec .box.rv {
    flex-direction: row-reverse; }
    @media screen and (max-width: 767px) {
      .sec .box.rv {
        flex-direction: column; } }
    .sec .box.rv .txt {
      padding-left: 0;
      padding-right: 20px; }
      @media screen and (max-width: 767px) {
        .sec .box.rv .txt {
          padding-inline: 20px; } }

.sec01 {
  background: url("../img/access/sec01_bg.jpg?v=1787203948") top right no-repeat;
  background-color: #dddfde;
  padding: 80px 0 0;
  background-size: 64%; }
  @media screen and (max-width: 1600px) {
    .sec01 {
      background-size: calc(731% / 16) auto;
      background-size: calc(1600% / 16) auto; } }
  @media screen and (max-width: 480px) {
    .sec01 {
      padding: 40px 0 0;
      background-position: 200% -2.5%;
      background-position: 30% -2.5%;
      background-size: 120% auto; } }
  .sec01 .img102 {
    width: calc(370% / 4.18); }
    @media screen and (max-width: 1600px) {
      .sec01 .img102 {
        width: calc(370vw / 16); } }
    @media screen and (max-width: 767px) {
      .sec01 .img102 {
        margin-inline: auto;
        width: calc(370% / 10.5); } }
    @media screen and (max-width: 480px) {
      .sec01 .img102 {
        margin-inline: auto;
        width: calc(370% / 6.5); } }
  .sec01 .img104 {
    width: calc(359% / 5.98); }
    @media screen and (max-width: 1600px) {
      .sec01 .img104 {
        width: calc(359vw / 16); } }
    @media screen and (max-width: 767px) {
      .sec01 .img104 {
        margin-inline: auto;
        width: calc(359% / 10.5); } }
    @media screen and (max-width: 480px) {
      .sec01 .img104 {
        margin-inline: auto;
        width: calc(359% / 6.5); } }
  .sec01 .cap01 {
    font-size: 12px;
    margin-top: 5px;
    text-align: center; }

.top_slide_wrap {
  width: 100%;
  height: 360px;
  overflow: hidden;
  line-height: 0;
  position: relative; }

.top_slide_wrap img {
  max-width: 100%;
  height: auto; }

.top_slide {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  display: flex; }

.top_slide li {
  width: 400px;
  height: 100%;
  margin: 0;
  position: relative; }
  .top_slide li::after {
    content: "";
    position: absolute;
    inset: 10px;
    border: solid 1px #fff; }
  .top_slide li .cap {
    z-index: 5; }

@media screen and (max-width: 767px) {
  .top_slide_wrap {
    height: 180px;
    height: 240px; }

  .top_slide li {
    width: 200px; }
    .top_slide li img {
      width: 100%;
      height: 100%;
      object-fit: cover; }
    .top_slide li::after {
      inset: 6px; } }
.sup_wrap sub {
  font-size: 12px;
  transform: translateY(-0.3em);
  display: inline-block; }

.sec02 {
  background-color: #dddfde;
  padding: 80px 0 100px; }
  @media screen and (max-width: 480px) {
    .sec02 {
      padding: 40px 0 40px;
      padding-top: 60px;
      padding-bottom: 80px; } }
  @media screen and (max-width: 480px) {
    .sec02 .img201 {
      overflow: hidden; } }
  .sec02 .img2 {
    width: 640px;
    display: flex; }
    @media screen and (max-width: 1600px) {
      .sec02 .img2 {
        width: calc(640vw / 16); } }
    @media screen and (max-width: 767px) {
      .sec02 .img2 {
        width: 100%;
        max-width: 640px;
        margin-inline: auto; } }
    @media screen and (max-width: 480px) {
      .sec02 .img2 {
        width: 100%;
        gap: 4%;
        flex-direction: column; } }
  .sec02 .a_cap {
    position: absolute;
    bottom: -2.1em;
    bottom: 0;
    color: #fff;
    background: #333;
    padding: 5px 0;
    padding: 5px;
    right: 0;
    text-align: center;
    font-size: clamp(10px, calc(16vw / 16), 16px);
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1.2;
    font-feature-settings: "palt"; }
    @media screen and (max-width: 480px) {
      .sec02 .a_cap {
        font-size: calc(12vw / 3.9);
        bottom: -3.6em;
        bottom: 0;
        background: rgba(0, 0, 0, 0.8);
        width: fit-content;
        padding: 3px 5px;
        left: auto;
        right: 0;
        width: 100%; } }
    .sec02 .a_cap .l {
      font-size: 150%; }
      @media screen and (max-width: 480px) {
        .sec02 .a_cap .l {
          line-height: 1; } }
    @media screen and (max-width: 480px) {
      .sec02 .a_cap .big_sp {
        font-size: calc(15vw / 3.9); } }
    .sec02 .a_cap .s {
      font-size: 75%; }
  .sec02 .box20 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap; }
    @media screen and (max-width: 767px) {
      .sec02 .box20 {
        flex-direction: column;
        gap: 40px; } }
    .sec02 .box20 .l {
      width: calc(882% / 14.3); }
      @media screen and (max-width: 767px) {
        .sec02 .box20 .l {
          width: 100%;
          max-width: 882px;
          margin-inline: auto;
          order: 1; } }
    .sec02 .box20 .r {
      width: calc(460% / 14.3); }
      @media screen and (max-width: 767px) {
        .sec02 .box20 .r {
          width: 100%;
          max-width: 490px;
          margin-inline: auto;
          order: 3; } }
      .sec02 .box20 .r .txt011, .sec02 .box20 .r .txt03 {
        font-weight: bold; }

@media screen and (max-width: 480px) {
  .swipe2 img {
    width: 600px;
    max-width: 600px; } }

/*ルート検索*/
.search_box {
  width: 100%;
  max-width: 445px;
  margin-left: auto;
  margin-right: auto; }

.search_box .txt01 {
  text-align: center;
  margin-bottom: 20px; }

@media screen and (max-width: 644px) {
  .search_box .txt01 {
    font-size: 12px;
    margin-bottom: 10px; } }
.search_box .root_s {
  margin-bottom: 40px; }

@media screen and (max-width: 644px) {
  .search_box .root_s {
    font-size: 14px;
    margin-bottom: 30px;
    margin-inline: auto;
    width: 80%; } }
.search_box .root_s li input[type="text"] {
  box-shadow: 0 0 6px rgba(0, 0, 0, 0.4);
  padding: 0;
  margin-top: 8px;
  border: none;
  border-radius: 30px;
  outline: none;
  background: #fff;
  width: 100%;
  padding: 20px 30px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  color: #162E44;
  display: block;
  font-size: 15px;
  font-size: 14px;
  line-height: 1;
  font-family: "Noto Serif JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif !important; }

@media screen and (max-width: 644px) {
  .search_box .root_s li input[type="text"] {
    font-size: 14px;
    -webkit-appearance: none;
    appearance: none;
    padding: 10px 15px; } }
.search_box .root_s li input[type="text"]::-webkit-input-placeholder {
  color: rgba(37, 47, 72, 0.3); }

.search_box .root_s li input[type="text"]:-ms-input-placeholder {
  color: rgba(37, 47, 72, 0.3); }

.search_box .root_s li input[type="text"]::-ms-input-placeholder {
  color: rgba(37, 47, 72, 0.3); }

.search_box .root_s li input[type="text"]::placeholder {
  color: rgba(37, 47, 72, 0.3); }

.search_box .root_s li.start {
  position: relative;
  margin-bottom: 25px; }

@media screen and (max-width: 644px) {
  .search_box .root_s li.start {
    margin-bottom: 20px; } }
.search_box .button {
  font-size: 16px;
  font-size: 14px;
  line-height: 1;
  color: #fff;
  background: linear-gradient(120deg, #466449, #5e7c60);
  padding: 25px 5px;
  padding: 20px 5px;
  position: relative;
  width: 100%;
  max-width: 320px;
  margin-left: auto;
  margin-right: auto;
  text-align: center; }

@media screen and (max-width: 644px) {
  .search_box .button {
    font-size: 14px;
    padding: 15px 5px;
    width: 65%; } }
.search_box .button b {
  display: block;
  position: absolute;
  width: 100%;
  max-width: 18px;
  right: 20px;
  top: 50%;
  transform: translateY(-50%); }

@media screen and (max-width: 644px) {
  .search_box .button b {
    right: 10px;
    max-width: 14px; } }
.img_cap .cap .min {
  font-size: 9px; }

.img_cap .cap.left.cap201 {
  padding: 0;
  bottom: calc(32% / 5);
  left: calc(782% / 8);
  left: calc(776% / 8); }
  @media screen and (max-width: 480px) {
    .img_cap .cap.left.cap201 {
      bottom: calc(40% / 4.5);
      left: calc(757% / 8);
      left: calc(750% / 8); } }

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