/* 全体のリセット */
*, *::before, *::after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

/* 基本のHTMLタグリセット */
html {
  line-height: 1.5;
  width: 100%; 
}

/* リストのリセット */
ol, ul{list-style:none;}

/* テーブルのリセット */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

a{
  text-decoration: none;
  color: inherit;
}

a:focus, a:active {
  outline: none;
}

/* フォーム全般 */
input, textarea, select, button {
  appearance: none; /* ベンダープレフィックスを統一 */
  -webkit-appearance: none; /* iOS Safari特有の外観リセット */
  -moz-appearance: none; /* Firefox特有 */
  border: none;
  margin: 0;
  padding: 0;
  background: transparent;
  font: inherit; /* フォントスタイルの継承 */
  color: inherit; /* 親の色を引き継ぐ */
  outline: none;
}

/* テキストエリア */
textarea {
  resize: vertical;
}

img{
  vertical-align: top;
}


body {
  min-height: 100vh;
  font-family: var(--NotoSans);
  /* font-family: var(--NotoSerif); */
  position: relative;
  overflow-x: hidden;
}

img {
  width: 100%;
  object-fit: cover;
  height: 100%;
}


.pc_only {
  display: block;
}

.sp_only {
  display: none;
}

/*fade表示関連*/

.fade_in {
  opacity: 0;
  transition: opacity 1.5s cubic-bezier(0, 0.42, 0.58, 1);
}

.fade_up {
  transform: translateY(2vw);
  opacity: 0;
  transition: all 1.2s cubic-bezier(0, 0.42, 0.58, 1);
}

.fade_in.show {
  opacity: 1;
}

.fade_up.show {
  opacity: 1 !important;
  transform: translateY(0) !important;
}

html {
  /* font-size: min(calc(10 / 1512 * 100vw), 10px); */
  font-size: calc(10 / 1512 * 100vw);
  /* 画面幅1512pxで10px*/
  
}
img {
  width: 100%;
  object-fit: cover;
  height: 100%;
}

.pc_only {
  display: block;
}

.sp_only {
  display: none;
}

.first_fv_container {
  width: 151.2rem;
  margin-bottom: 11.26645rem;
}

.fv_relative {
  position: relative;
  margin: 6rem 0 6.11289rem 0;
}

.fv_image {
  width: 100%;
  height: 92.2065rem;
  padding-left: 16.23244rem;
}

.fv_title_image_en {
  width: 41.1187rem;
  height: 23.8660rem;
  position: absolute;
  top: 7.34354rem;
  left: 6.13664rem;
}

.fv_title_image_ja {
  width: 23.8389rem;
  height: 18.5366rem;
  position: absolute;
  top: 17.91194rem;
  left: 30.98423rem;
}

.fv_subtitle {
  position: absolute;
  top: 41.8707rem;
  left: 22.57824rem;
  font-weight: 500;
  line-height: 3.043rem;
  font-size: 1.71525rem;
  color: #FFFFFF;
  letter-spacing: 0.1em;
}

.fv_subtitle_en {
  position: absolute;
  top: 61.9874rem;
  left: 22.57824rem;
  font-weight: 500;
  line-height: 2.608rem;
  font-size: 1.55932rem;
  color: #FFFFFF;
  letter-spacing: 0.04em;
}

.approach_content {
  display: flex;
  row-gap: 5.77793rem;
  margin: 0 0 17.79707rem 22.2716rem;
  flex-direction: column;
}

.approach_text {
  font-size: 2.2rem;
  font-weight: 400;
  line-height: 4.781rem;
}

.approach_text_en {
  font-size: 2rem;
  font-weight: 400;
  line-height: 3.781rem;
}

.introduction_image {
  width: 100%;
  height: 80.4rem;
  margin-bottom: 6.05879rem;
}

.text_content {
  width: 117.16318rem;
  display: flex;
  row-gap: 10.1793rem;
  margin: 0 auto 12.80643rem;
  flex-direction: column;
}

.text_content_other {
  row-gap: 0.17814rem;
}

.introduction_text {
  width: max-content;
  font-size: 2.2rem;
  line-height: 4.781rem;
  font-weight: 400;
  margin-bottom: 4.45205rem;
}

.introduction_text_en {
  width: max-content;
  font-size: 2.0rem;
  line-height: 3.781rem;
  font-weight: 400;
}

.text_left {
  margin-left: auto;
  text-align: right;
}

.end_approach {
  background-color: #eff6fa;
  width: 100%;
  height: 48.1159rem;
  text-align: center;
  padding-top: 10.57782rem;
}

.end_approach_text {
  font-size: 2.2rem;
  font-weight: 400;
  line-height: 4.781rem;
  margin-bottom: 4.25029rem;
  letter-spacing: 0.13em;
}

.end_approach_text_en {
  font-size: 2.0rem;
  font-weight: 400;
  line-height: 3.781rem;
  letter-spacing: 0.08em;
}

/* ここからアートボード4 */
.sec_appeal_spot {
  padding-top: 13.28389rem;
  background-image: url(../img/back_image_color.png);
  background-repeat: no-repeat;
  background-size: cover;
  padding-left: 27.01834rem;
  padding-right: 28.95977rem;
}

.sec_appeal_title_wrap {
    width: fit-content;
    margin: 0 auto 40rem;
    text-align: center;
  }

.appeal_title {
    font-size: 6rem;
    font-weight: 400;
    margin-bottom: 3rem;
    letter-spacing: 0.11em;
}

.appeal_title_en {
  font-size: 4rem;
  font-weight: 400;
  letter-spacing: 0.11em;
}

/* 大三島 */
.sightseeing_list_one {
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  row-gap: 8rem;
  flex-wrap: wrap;
}


.sightseeing_wrap {
  width: 41.9672rem;
  height: 27.0013rem;
  /* border: 0.1rem solid #000000; */
  display: flex;
  background-color: #FFFFFF;
}

/* 奇数番号だけずらす */
.sightseeing_wrap:nth-child(odd) {
  transform: translateY(5.4rem);
}

.sightseeing_image {
  width: 100%;
  height: auto;
  position: relative;
}

.sightseeing_title {
  position: absolute;
  top: 0;
  left: 0;
  background-color: #FFFFFF;
  font-size: 2.2rem;
  padding: 1rem 5rem 1rem 0;
  color: #1f345c;
  font-weight: 500;
  line-height: 3.316rem;
}

.sightseeing_text {
  font-size: 1.35rem;
  font-weight: 500;
  padding: 1.62967rem;
  writing-mode: vertical-rl;
  color: #1f345c;
}


/* 伯方島 */
.sightseeing_list_two {
  margin: 0 auto;
  margin-top: 28rem;
}

.sightseeing_two_wrap {
  width: 41.9672rem;
  height: 27.0013rem;
  /* border: 0.1rem solid #000000; */
  display: flex;
  margin-bottom: 8rem;
  background-color: #FFFFFF;
}

/* 村上海賊ミュージアム */
.sightseeing_list_three {
  margin: 0 auto;
  margin-top: 17.3rem;
  position: relative;
}

.sightseeing_three_wrap {
  width: 41.9672rem;
  height: 27.0013rem;
  /* border: 0.1rem solid #000000; */
  display: flex;
  background-color: #FFFFFF;
  position: absolute;
  top: -33rem;
  right: 0;
}

/* 大島1 */
.sightseeing_list_four {
  margin: 0 auto;
  margin-top: 50rem;
}

.sightseeing_four_wrap {
  width: 41.9672rem;
  height: 27.0013rem;
  /* border: 0.1rem solid #000000; */
  display: flex;
  margin-bottom: 8rem;
  background-color: #FFFFFF;
}

/* 大島2 */
.sightseeing_list_five {
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  margin-bottom: 41.25rem;
}

.sightseeing_five_wrap {
  width: 41.9672rem;
  height: 27.0013rem;
  /* border: 0.1rem solid #000000; */
  display: flex;
  background-color: #FFFFFF;
}

/* 今治市1 */
.sightseeing_list_six {
  padding-left: 19.56421rem;
}

.sightseeing_six_wrap {
  width: 41.9672rem;
  height: 27.0013rem;
  /* border: 0.1rem solid #000000; */
  display: flex;
  background-color: #FFFFFF;
}

/* 今治市2 */
.sightseeing_list_seven {
  margin: 0 auto;
  margin-top: 8rem;
  display: flex;
  justify-content: space-between;
  padding-bottom: 30.55008rem;
}

.sightseeing_seven_wrap {
  width: 41.9672rem;
  height: 27.0013rem;
  /* border: 0.1rem solid #000000; */
  display: flex;
  background-color: #FFFFFF;
}

/* ここからアートボード3 */
.sec_experience_container {
  margin: 18.02285rem 0 29.19658rem 0;
}

.sec_experience_title_wrap {
  text-align: center;
  font-weight: 400;
  text-align: center;
  margin-bottom: 11.89448rem;
}

  .sec_title {
    font-size: 6rem;
    font-weight: 400;
    margin-bottom: 3rem;
    letter-spacing: 0.11em;
  }

  .sec_title_en {
    font-size: 4rem;
    font-weight: 400;
    letter-spacing: 0.11em;
  }

.sec_experience_flex {
  display: flex;
  justify-content: space-between;
  padding: 0 12.94978rem 0 0;
}

.experience_image {
  width: 86.0461rem;
  height: 61.7246rem;
}

.experience_image_item {
  height: 100%;
  object-position: 50% 75%;
}

.experience_detail {
  writing-mode: vertical-rl;
}

.experience_title_en {
  font-size: 1.8rem;
  margin-left: 2rem;
}

.experience_title_ja {
  font-size: 5rem;
  font-weight: 700;
  margin-left: 4rem;
  letter-spacing: 0.11em;
}

.experience_text {
  font-size: 2rem;
  line-height: 3.7rem;
  letter-spacing: 0.06em;
}

.shodo_content {
  padding-left: 23.80656rem;
  margin-top: 6.22895rem;
  margin-bottom: 5.51443rem;
}

.shodo_title {
  font-size: 2.20385rem;
  font-weight: 700;
  margin-bottom: 2rem;
  letter-spacing: 0.06em;
}

.shodo_text {
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 3.381rem;
}

.experience_item_container {
  display: flex;
  width: fit-content;
  margin: 0 auto 25.31831rem;
  background-color: #ecf3f7;
}

.experience_item_ja {
  position: relative;
  margin: 2rem 0;
}

.experience_item_en {
  border-left: 0.1rem solid #000000;
  margin: 2rem 0;
}

/* .key_image,
.key_image_left,
.key_image_en,
.key_image_en_right {
  width: 2.21696rem;
  height: auto;
}


.key_image_left {
  transform: scale(1, -1);
}

.key_left_wrap {
  position: absolute;
  bottom: 0;
}

.key_image_en {
  transform: scale(-1, 1);
}

.key_en_wrap,
.key_en_right_wrap {
  width: 100%;
  text-align: right;
}

.key_image_en_right {
  transform: scale(-1, -1);
} */

.experience_item_wrap {
  display: flex;
  gap: 8.67012rem;
  padding: 2.15738rem 3.82891rem 0.84123rem 3.82891rem;
}

.experience_item_title {
  font-size: 1.4rem;
  position: relative;
  width: 9.88916rem;
  text-align: justify;
  text-align-last: justify;
  font-weight: 400;
}

.experience_item_title::after {
  content: '';
  position: absolute;
  bottom: 50%;
  transform: translateY(50%);
  left: 12.8rem;
  width: 3.63477rem;
  height: 0.1rem;
  background-color: #000000;
}

.other_item_title::after {
  content: '';
  position: absolute;
  top: 1rem;
  left: 12.8rem;
  width: 3.63477rem;
  height: 0.1rem;
  background-color: #000000;
}

.experience_item_content {
  font-size: 1.4rem;
  font-weight: 400;
}

.experience_item_content span {
  font-size: 1.2rem;
}

.content_note::after {
  content: '(月曜休館日)';
  margin-left: 0.75674rem;
  font-size: 1.2rem;
}

.content_en_note::after {
  content: '(Closed on Mondays)';
  margin-left: 1.50801rem;
  font-size: 1.2rem;
}

.experience_en_title {
  font-size: 1.4rem;
  position: relative;
  min-width: 12.9925rem;
  text-align: left;
  text-align-last: left;
  font-weight: 400;
}

.experience_en_title::after {
  content: '';
  position: absolute;
  bottom: 50%;
  transform: translateY(50%);
  left: 14.8rem;
  width: 3.63477rem;
  height: 0.1rem;
  background-color: #000000;
}

/* 三巡の祈り */
.sec_experience_flex_two {
  padding-right: 10.91004rem;
}

.experience_title_two {
  margin-left: 5.54043rem;
  letter-spacing: 0.037em;
}

.experience_text_two {
  margin-left: 3rem;
}

/* 大山英語テキスト */
.ooyama_text_content {
  padding-left: 7.55227rem;
}

.ooyama_title {
  font-size: 2.7rem;
  font-weight: 700;
  margin-bottom: 2rem;
  line-height: 4.136rem;
  letter-spacing: 0.06em;
}

.ooyama_text {
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 3.381rem;
  margin-bottom: 2rem;
}

.ooyama_text:last-child {
  margin-bottom: 0;
}


/* ととのうしまなみ ガイド */
.sec_guide_container {
  margin-bottom: 17.25731rem;
}

.guide_title_content {
  margin-bottom: 4rem;
  text-align: center;
}

.sec_guide_title {
  font-size: 6rem;
  /* line-height: 2.581rem; */
  font-weight: 400;
  margin-bottom: 3rem;
  letter-spacing: 0.11em;
}

.guide_image_wrap {
  text-align: center;
}

.guide_image_one {
  width: 107.272rem;
}

/* ととのうしまなみサイクル共通割引チケット */
.sec_pass_container {
  padding-top: 17.25731rem;
  padding-bottom: 15.98939rem;
  background-color: #ecf3f7;
}

.pass_title_content {
  text-align: center;
  margin-bottom: 8.2186rem;
}

.sec_pass_title {
  font-size: 6rem;
  /* line-height: 2.581rem; */
  font-weight: 400;
  margin-bottom: 3rem;
  letter-spacing: 0.06em;
}

.pass_text,
.pass_text_en {
  font-size: 1.8rem;
  font-weight: 400;
  text-align: center;
  line-height: 2.724rem;
  letter-spacing: 0.08em;
}

.pass_text {
  margin: 5rem 0 3rem;
  line-height: 2.924rem;
}

.pass_image_flex {
  display: flex;
  gap: 9.0456rem;
  justify-content: center;
}

.pass_image_content {
  width: 47.1073rem;
}

.pass_detail_content_wrap {
  margin-top: 5rem;
}


.border_flex {
  display: flex;
  align-items: center;
  
}
.border_flex::after {
  content: '';
  flex-grow: 1;
  border-top: 0.1rem solid #1f345c;
  margin: 0;
}

.pass_detail_title {
  width: fit-content;
  font-size: 2.2rem;
  font-weight: 400;
  padding: 1rem 2rem;
  background-color: #1f345c;
  color: #f2f2f2;
  letter-spacing: 0.09em;
}

.pass_detail_title_note {
  font-size: 2.0rem;
  margin-left: 1rem;
  color: #FFFFFF;
}

.pass_detail_lists {
  padding: 5rem 0 6rem 1rem
}

.pass_list {
  font-size: 2.0rem;
  display: flex;
  align-items: center;
  margin-bottom: 3rem;
}

.pass_list::before {
  content: "〇";
  color: #000000;
  display: inline-block;
  width: 1.5rem;
  font-size: 1.5rem;
  margin-right: 1.34332rem;
}

.pass_detail_note {
  font-size: 1.6rem;
  font-weight: 400;
  margin-left: 2rem;
}

.pass_detail_price {
  font-size: 2.4rem;
  font-weight: 700;
  margin-left: 2rem;
}

.pass_annotation_list {
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 2.222rem;
  margin-left: 3rem;
  margin-bottom: 1.5rem;
}

.pass_annotation_list:last-child {
  margin-bottom: 0;
}

.pass_purchase_list {
  font-size: 2rem;
  font-weight: 400;
  line-height: 3.081rem;
  margin-bottom: 1.5rem;
}

.pass_purchase_list_en {
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 2.422rem;
}

.pass_other_list {
  margin-bottom: 1.5rem;
}

.pass_other_note {
  margin-bottom: 3rem;
  margin-left: 3rem;
}



.wrapper img {
  cursor: pointer;
}

/* modal */
.modal-wrapper {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  background: rgba(255, 255, 255, 0.8);
  pointer-events: none;
  opacity: 0;
  transition: 0.25s ease-out;
  z-index: 2;
  display: flex;
  justify-content: center;
  align-items: center;
}

.modal-wrapper.show {
  opacity: 1;
  pointer-events: all;
}

.modal_image_wrap {
  width: 57.9567rem;
  height: 50.4250rem;
  position: relative;
}

.modal_sightseeing_wrap {
  width: fit-content;
  height: auto;
}

.modal_sightseeing_text {
  min-width: 5.246rem;
  font-size: 2.5rem;
}

.modal-image {
  position: absolute;
  max-width: 80rem;
  max-height: 60rem;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  object-fit: cover;
  opacity: 0;
  transition: 0.5s ease-out;
}

.modal-image.show {
  opacity: 1;
}

.modal_sightseeing_title {
  font-size: 4rem;
  padding: 3rem 5rem 3rem 0;
}

.addition_content > div{
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
}

.modal_title {
  font-size: 2.5rem;
  font-weight: 400;
  /* line-height: 7.747rem; */
  padding: 1.62967rem 2.5rem 0;
  writing-mode: vertical-rl;
  color: #1f345c;
  /* min-height: 42rem; */
  max-height: 42rem;
  font-weight: 500;
}

.modal_title_en {
  font-size: 2rem;
  margin-right: 3rem;
  letter-spacing: 0.03em;
}

/* modal時に追加 */
.map_logo_wrap {
  text-align: center;
  padding-bottom: 1.6rem;
}

.google_map_logo {
  width: 6.07464rem;
  height: 6.07464rem;
}

.google_map_qr{
  width: 11rem;
  height: auto;
}

.access_map_text {
  font-size: 1.6rem;
  font-weight: 400;
}

/* ここからレスポンシブ対応 */
@media screen and (max-width: 699.98px) {
  html {
    font-size: calc(10 / 375 * 100vw);
    /* 画面幅375pxで10px*/
  }

  .pc_only {
    display: none;
  }

  .sp_only {
    display: block;
  }
  
  .first_fv_container {
    width: 37.5rem;
    margin-bottom: 8.38098rem;
  }

  .fv_relative {
    position: relative;
    margin-top: 0;
    margin-bottom: 7.9201rem;
    
  }

  .fv_image {
    width: 31.7rem;
    height: 45.7130rem;
    margin-left: 5.8rem;
    padding-left: 0;
    border-radius: 0 0 0 1rem;
  }

  .fv_title_image_en {
    width: 17.8304rem;
    height: 10.3491rem;
    position: absolute;
    top: 2.69746rem;
    left: 3.48464rem
  }

  .fv_title_image_ja {
    width: 10.3373rem;
    height: 8.03812rem;
    position: absolute;
    top: 7.42841rem;
    left: 13.6767rem;
  }

  .fv_subtitle {
    position: absolute;
    top: 16rem;
    left: 3.87841rem;
    font-weight: 500;
    line-height: 1.518rem;
    font-size: 0.9rem;
    color: #213a6a;
  }

  .fv_subtitle_en {
    position: absolute;
    top: 25.50435rem;
    left: 3.87841rem;
    font-weight: 500;
    line-height: 1.518rem;
    font-size: 0.9rem;
    color: #213a6a;
  }

  .approach_content {
    display: flex;
    row-gap: 3rem;
    margin: 0 2.87016rem 11.35099rem 2.87016rem;
    flex-direction: column;
  }

  .approach_text {
    font-size: 1.3rem;
    font-weight: 400;
    line-height: 2.581rem;
  }

  .approach_text_en {
    font-size: 1.3rem;
    font-weight: 400;
    line-height: 2.581rem;
  }

  .introduction_image {
    width: 100%;
    height: 35.9483rem;
    margin-bottom: 5.36526rem;
  }

  .text_content {
    width: 31.36028rem;
    display: flex;
    row-gap: 11.23779rem;
    margin: 0 auto;
    margin-bottom: 6.59505rem;
    flex-direction: column;
  }

  .text_content_other {
    row-gap: 6.50068rem;
  }

  .introduction_text {
    width: max-content;
    font-size: 1.3rem;
    line-height: 2.581rem;
    font-weight: 400;
    margin-bottom: 3rem;
  }

  .introduction_text_en {
    font-size: 1.3rem;
    line-height: 2.581rem;
    font-weight: 400;
  }

  .text_left {
    margin-left: auto;
    text-align: left;
  }

  .end_approach {
    height: 39.3512rem;
    padding-top: 6rem;
  }

  .end_approach_text {
    font-size: 1.3rem;
    font-weight: 400;
    line-height: 2.581rem;
    margin-bottom: 2.36934rem;
    letter-spacing: 0;
  }

  .end_approach_text_en {
    font-size: 1.3rem;
    font-weight: 400;
    line-height: 2.581rem;
    letter-spacing: 0.1em;
  }

  /* ここからアートボード4 */
  .sec_appeal_spot {
    width: 37.5rem;
    margin-top: 5.20345rem;
    padding-top: 0;
    background-image: url(../img/back_image_color_sp.png);
    background-size: cover;
    background-repeat: no-repeat;
    padding-left: 3rem;
    padding-right: 4rem;
  }

  .sec_appeal_title_wrap {
    width: fit-content;
    text-align: center;
    margin-bottom: 5rem;
  }

  .appeal_title {
    font-size: 2rem;
    font-weight: 400;
    margin-bottom: 1rem;
  }

  .appeal_title_en {
    font-size: 1.6rem;
    font-weight: 400;
  }

  /* 大三島 */
  .sightseeing_list_one {
    margin: 0 auto;
    display: flex;
    row-gap: 1.63467rem;
    flex-wrap: wrap;
  }


  .sightseeing_wrap {
    width: 14.3291rem;
    height: auto;
    /* border: 0.05rem solid #000000; */
    display: flex;
    background-color: #FFFFFF;
    justify-content: space-between;
  }

  /* 奇数番号だけずらす */
  .sightseeing_wrap:nth-child(odd) {
    transform: translateY(3.4547rem);
  }

  .sightseeing_image {
    position: relative;
    width: 13.87547rem;
    height: 10.3888rem;
  }

  .sightseeing_title {
    position: absolute;
    top: 0;
    left: 0;
    background-color: #FFFFFF;
    font-size: 0.9rem;
    padding: 0.5rem;
    padding-right: 1rem;
    padding-left: 0.2rem;
    font-weight: 400;
    line-height: 1.385rem;
  }

  .sightseeing_text {
    font-size: 0.6rem;
    font-weight: 400;
    padding: 0;
    padding-top: 0.2rem;
    padding-left: 0.2rem;
    padding-right: 0.2rem;
    writing-mode: vertical-rl;
  }

  /* 伯方島 */
  .sightseeing_list_two {
    margin: 0;
    margin-top: 5rem;
  }

  .sightseeing_two_wrap {
    width: 14.3291rem;
    height: auto;
    padding: 0;
    /* border: 0.1rem solid #000000; */
    display: flex;
    margin-bottom: 1.63467rem;
    background-color: #FFFFFF;
    justify-content: space-between;
  }

  /* 村上海賊ミュージアム */
  .sightseeing_list_three {
    margin: 0 auto;
  }

  .sightseeing_three_wrap {
    width: 14.3291rem;
    height: auto;
    padding: 0;
    /* border: 0.1rem solid #000000; */
    top: -17.4rem;
    display: flex;
    justify-content: space-between;
    background-color: #FFFFFF;
    right: 0;
  }

  /* 大島1 */
  .sightseeing_list_four {
    width: 100%;
    margin-top: 4rem;
  }

  .sightseeing_four_wrap {
    width: 14.3291rem;
    height: auto;
    padding: 0;
    /* border: 0.1rem solid #000000; */
    display: flex;
    justify-content: space-between;
    margin-bottom: 1.63467rem;
    background-color: #FFFFFF;
  }

  /* 大島2 */
  .sightseeing_list_five {
    margin: 0;
    display: flex;
    justify-content: space-between;
    margin-bottom: 3.27504rem;
    position: relative;
    top: -7.5rem;
  }

  .sightseeing_five_wrap {
    width: 14.3291rem;
    height: auto;
    padding: 0;
    /* border: 0.1rem solid #000000; */
    position: relative;
    display: flex;
    justify-content: space-between;
    background-color: #FFFFFF;
  }

  .sightseeing_five_wrap:nth-child(odd) {
    transform: translateY(7.4547rem);
  }

  /* 今治市1 */
  .sightseeing_list_six {
    margin: 0;
    margin-left: 5.19512rem;
    padding-left: 0;
  }

  .sightseeing_six_wrap {
    width: 14.3291rem;
    height: auto;
    padding: 0;
    /* border: 0.1rem solid #000000; */
    display: flex;
    justify-content: space-between;
    background-color: #FFFFFF;
  }

  /* 今治市2 */
  .sightseeing_list_seven {
    margin: 0;
    margin-top: 1.63467rem;
    display: flex;
    justify-content: space-between;
    padding-bottom: 3.16883rem;
  }

  

  .sightseeing_seven_wrap {
    width: 14.3291rem;
    height: auto;
    padding: 0;
    /* border: 0.1rem solid #000000; */
    display: flex;
    justify-content: space-between;
    background-color: #FFFFFF;
  }

  .sightseeing_seven_wrap:nth-child(odd) {
    transform: translateY(1.63467rem);
  }

  /* ここからアートボード3 */
  .sec_experience_container {
    margin: 5.02461rem 0 18.8972rem 0;
  }


  .sec_experience_title_wrap {
    margin-bottom: 6rem;
  }
  
  .sec_title {
    font-size: 2.2rem;
    font-weight: 400;
    text-align: center;
    margin-bottom: 1rem;
  }

  .sec_title_en {
    font-size: 1.6rem;
    font-weight: 400;
  }

  .sec_experience_flex {
    flex-direction: column;
    padding-right: 0;
    padding-bottom: 0;
    position: relative;
  }

  .experience_image {
    width: 100%;
    height: 29.4110rem;
    margin-bottom: 3.81908rem;
  }

  .experience_image_item {
    object-position: 50% 75%;
  }

  .experience_detail {
    writing-mode: vertical-rl;
    padding-right: 6.77446rem;
  }

  .experience_title_en {
    font-size: 1.4rem;
    margin-left: 1rem;
  }

  .experience_title_ja {
    font-size: 2.4rem;
    font-weight: 100;
    margin-left: 2.73481rem;
    letter-spacing: 0.13em;
  }

  .experience_text {
    font-size: 1.3rem;
    line-height: 2.5rem;
    letter-spacing: 0.12em;
  }

  .shodo_content {
    padding-left: 2.4rem;
    padding-right: 2.4rem;
    margin-top: 6.1499rem;
    margin-bottom: 10rem;
  }

  .shodo_title {
    font-size: 2.20385rem;
    font-weight: 700;
    margin-bottom: 2rem;
    letter-spacing: 0.1em;
  }

  .shodo_text {
    font-size: 1.3rem;
    font-weight: 400;
    line-height: 2.381rem;
    letter-spacing: 0.132rem;
  }

  .experience_item_container {
    flex-direction: column;
    width: 32.7rem;
    margin: 0 auto;
    margin-bottom: 7.84016rem;
  }

  .experience_item_ja {
    margin: 2rem 2rem 0 2rem;
  }

  .experience_item_en {
    margin: 2rem;
  }

  /* .key_image,
  .key_image_right {
    width: 2.21521rem;
  }

  .key_image {
    margin-bottom: 2rem;
  }

  .key_image_right {
    transform: scale(-1, -1);
  }

  .key_right_wrap {
    width: 100%;
    text-align: right;
  }

  .key_en_right_wrap {
    margin-top: 2rem;
  } */

  .experience_item_wrap {
    display: flex;
    gap: 3rem;
    padding: 0.74518rem 0 0.84123rem 1.5773rem;
    align-items: start;
  }

  .experience_item_title {
    font-size: 1.3rem;
    position: relative;
    width: 5.82402rem;
    text-align: justify;
    text-align-last: justify;
  }

  .experience_item_title::after {
    content: '';
    position: absolute;
    bottom: 50%;
    transform: translateY(50%);
    left: 6.5rem;
    width: 1.45179rem;
    height: 0.075rem;
    background-color: #000000;
  }

  .other_title_sp::after {
    content: '';
    position: absolute;
    top: 1rem;
    left: 6.5rem;
    width: 1.45179rem;
    height: 0.075rem;
    background-color: #000000;
  }

  .experience_item_content {
    font-size: 1.3rem;
  }

  .content_note::after {
    content: '(月曜休館日)';
    margin-left: 0;
    font-size: 1.0rem;
  }

  .experience_item_content span {
    font-size: 1.0rem;
  }

  /* 英語版 */
  .experience_item_en {
    border-left: none;
    border-top: 0.1rem solid #000000;
    margin-top: 5rem;
    padding-top: 5rem;
  }

  .experience_en_title {
    font-size: 1.3rem;
    position: relative;
    min-width: 7.5rem;
  }

  .experience_en_title::after {
    content: '';
    position: absolute;
    bottom: 50%;
    transform: translateY(50%);
    left: 8.2rem;
    width: 1.45179rem;
    height: 0.075rem;
    background-color: #000000;
  }

  .content_en_note::after {
    content: '(Closed on Mondays)';
    margin-left: 0;
    font-size: 1.0rem;
  }

  /* 三巡の祈り */
  .sec_experience_flex_two {
    padding: 0;
  }

  .experience_detail_two {
    writing-mode: vertical-rl;
    padding-right: 3.81573rem;
  }

  .experience_title_two {
    margin-left: 2.73481rem;
    letter-spacing: 0;
  }

  .experience_text_two {
    margin-left: 1rem;
  }
  /* 大山英語版 */
  .ooyama_text_content {
    margin-top: 7.92672rem;
    padding-left: 4.51073rem;
    padding-right: 4.51073rem;
  }

  .ooyama_title {
    font-size: 2.2rem;
    margin-bottom: 1.62175rem;
    line-height: 3.536rem;
  }

  .ooyama_text {
    font-size: 1.3rem;
    font-weight: 400;
    line-height: 2.181rem;
    letter-spacing: 0.03rem;
  }

  /* ととのうしまなみ ガイド */
  .sec_guide_container {
    margin-bottom: 8.666rem;
  }

  .sec_guide_title {
    font-size: 2.1rem;
    font-weight: 400;
    text-align: center;
    margin-bottom: 1rem;
  }

  .guide_image_one {
    width: 100%;
  }

  /* ととのうしまなみサイクル共通割引チケット */
  .sec_pass_container {
    margin-bottom: 0;
    padding-top: 8.666rem;
  }

  .sec_pass_title {
    font-size: 2.1rem;
    line-height: 3.181rem;
    margin-bottom: 2rem;
  }

  .pass_text,
  .pass_text_en {
    font-size: 1.3rem;
    font-weight: 400;
    text-align: center;
    line-height: 2.181rem;
  }

  .pass_text_en {
    letter-spacing: 0.09em;
  }

  .pass_text {
    line-height: 2.7rem;
  }

  .pass_image_flex {
    flex-direction: column;
    justify-content: center;
  }

  .pass_detail_content_wrap {
    margin: 0 2.4rem;
  }

  .border_flex {
    display: flex;
    align-items: center;
    
  }
  .border_flex::after {
    content: '';
    flex-grow: 1;
    border-top: 0.1rem solid #1f345c;
    margin: 0;
  }

  .pass_detail_title {
    width: fit-content;
    font-size: 1.3rem;
    font-weight: 500;
    padding: 1rem;
    background-color: #1f345c;
    color: #f2f2f2;
    letter-spacing: 0.06em;
  }

  .pass_detail_title_note {
    font-size: 1.3rem;
    font-weight: 400;
    margin-left: 1rem;
  }

  .pass_detail_lists {
    padding: 3.5rem 0 4.1rem 0.5rem;
  }

  .pass_list_wrap {
    display: flex;
    justify-content: space-between;
  }

  .pass_list {
    font-size: 1.4rem;
    display: block;
    margin-bottom: 3rem;
  }

  .pass_list::before {
    content: "〇";
    color: #000000;
    display: inline-block;
    width: 1rem;
    font-size: 1rem;
    margin-right: 0.5rem;
  }

  .pass_detail_note {
    font-size: 1.3rem;
    font-weight: 400;
    margin-left: 1.5rem;
  }

  .sp_ticket_folder {
    width: 6.01435rem;
    height: 4.02435rem;
  }

  .pass_detail_price {
    font-size: 2.4rem;
    font-weight: 700;
    margin-left: 1.5rem;
  }

  .pass_annotation_list {
    font-size: 1.2rem;
    font-weight: 400;
    line-height: 2.022rem;
    margin-bottom: 1.5rem;
    margin-left: 1.5rem;
    letter-spacing: 0.06em;
  }

  .pass_annotation_list:last-child {
    margin-bottom: 0;
  }

  .pass_purchase_list {
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 2.523rem;
    margin-bottom: 1.5rem;
  }

  .pass_purchase_list_en {
    font-size: 1.3rem;
    font-weight: 400;
    line-height: 2.181rem;
  }

  .pass_other_list {
    margin-bottom: 1rem;
    line-height: 2.123rem;
  }

  .pass_other_note {
    margin-bottom: 3rem;
    margin-left: 1.5rem;
    line-height: 1.981rem;
    letter-spacing: 0.09em;
  }
  /* modal */
  .modal_sightseeing_wrap {
    width: fit-content;
  }

  .modal_image_wrap {
    width: 26.2325rem;
    height: 22.5383rem;
    position: relative;
  }

  .modal_sightseeing_text {
    min-width: 2.5rem;
    font-size: 1.2rem;
    padding: 0.5rem 0.8rem 0 0.5rem;
  }

  .modal-image {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    object-fit: cover;
    opacity: 0;
    transition: 0.5s ease-out;
  }

  .modal_sightseeing_title {
    font-size: 1.8rem;
    padding: 1rem 2rem 1rem 0;
    line-height: 2.385rem;
  }

  .modal_title {
    font-size: 1.1rem;
    font-weight: 400;
    padding: 0.5rem 1rem 0;
    writing-mode: vertical-rl;
    color: #1f345c;
    min-height: 18.5rem;
    max-height: 18.5rem;
  }

  .modal_title_en {
    font-size: 1rem;
    margin-right: 0.5rem;
    letter-spacing: 0.01em;
  }

  /* modal時に追加 */
  .map_logo_wrap {
    text-align: center;
  }

  .google_map_logo {
    width: 3.00994rem;
    height: 3.00994rem;
  }

  .access_map_text {
    font-size: 0.8rem;
    font-weight: 400;
  }
}