@charset "UTF-8";
/* 初期設定
================================================== */
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap");
html, body {
  height: 100%;
  margin: 0;
  padding: 0;
}

html {
  scrollbar-gutter: stable;
  font-size: 62.5%;
  -webkit-text-size-adjust: 100%;
  min-width: 320px;
}

/* モーダル等開いた時に後ろが動いてしまうのを防ぐ設定 */
html.is-hidden {
  overflow: hidden;
  position: fixed;
  width: 100%;
}

body {
  background-color: #fff;
  color: #000;
  font-family: "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.5;
}

a {
  color: #000;
  text-decoration: none;
}

img {
  border: 0;
  vertical-align: bottom;
  width: 100%;
}

:where(table) {
  border-collapse: collapse;
  width: 100%;
}

:where(.wrapper) {
  background-color: #fff;
  margin: 0 auto;
}

/* レスポンシブ消去
-------------------------------------------------- */
.pcB {
  display: none;
}

@media screen and (min-width: 769px) {
  .pcB {
    display: block;
  }
}
.spB {
  display: block;
}

@media screen and (min-width: 769px) {
  .spB {
    display: none;
  }
}
.pcI {
  display: none;
}

@media screen and (min-width: 769px) {
  .pcI {
    display: inline;
  }
}
.spI {
  display: inline;
}

@media screen and (min-width: 769px) {
  .spI {
    display: none;
  }
}
@media screen and (min-width: 1920px) {
  .bp {
    display: none;
  }
}
/* hederとfooterの設定
================================================== */
/* header
-------------------------------------------------- */
.header {
  background-color: #fff;
  border-top: 0.26042vw solid #009DA6;
  position: relative;
  z-index: 100;
}
@media screen and (max-width: 768px) {
  .header {
    border-top: 2.13334vw solid #009DA6;
  }
}

.header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.88542vw 3.28125vw 0.9375vw 0;
  margin: 0 auto;
  width: 83.33334vw;
}
@media screen and (max-width: 768px) {
  .header__inner {
    padding: 5.86667vw 4vw 7.46667vw 5.33334vw;
    width: auto;
  }
}

.header__logoWrap {
  display: flex;
  align-items: center;
  gap: 0 2.29167vw;
}
@media screen and (max-width: 768px) {
  .header__logoWrap {
    gap: 0 4.26667vw;
  }
}

.header__logo {
  position: relative;
  width: 9.84375vw;
}
@media screen and (max-width: 768px) {
  .header__logo {
    width: 32.46134vw;
  }
}
.header__logo::after {
  content: "";
  border-right: 0.05209vw solid #C7C7C7;
  height: 2.08334vw;
  position: absolute;
  right: -1.14583vw;
  top: 50%;
  transform: translateY(-50%);
}
@media screen and (max-width: 768px) {
  .header__logo::after {
    border-right: 0.26667vw solid #C7C7C7;
    height: 7.46667vw;
    right: -2.13333vw;
  }
}
.header__logo a {
  display: block;
}

.header__pageName {
  color: #000;
  font-size: 0.78125vw;
  font-weight: 700;
  line-height: 1.4;
}
@media screen and (max-width: 768px) {
  .header__pageName {
    font-size: 3.2vw;
    font-weight: 600;
    line-height: 1.5;
  }
}

/* クボタグループリンク */
.header__group {
  width: 6.51042vw;
}
@media screen and (max-width: 768px) {
  .header__group {
    display: none;
  }
}
.header__group a {
  display: flex;
  align-items: center;
  height: 100%;
}
@media screen and (min-width: 769px) {
  .header__group:hover {
    opacity: 0.5;
  }
}

/* 共通設定
================================================== */
/* 
-------------------------------------------------- */
.cmn_ttl {
  color: #008486;
  font-size: 8.53334vw;
  line-height: 1;
  text-align: center;
}

.main__inner {
  background-image: url("../img/bg_main_sp.png");
  background-position: top left;
  background-repeat: no-repeat;
  background-size: contain;
}
@media screen and (min-width: 769px) {
  .main__inner {
    background-image: url("../img/bg_main_pc.png");
  }
}

/* 各セクション設定
================================================== */
/* kv
-------------------------------------------------- */
.kv__inner {
  position: relative;
  height: 113.06667vw;
}
@media screen and (min-width: 769px) {
  .kv__inner {
    height: 41.875vw;
  }
}

.kv__ttl {
  width: 65.06667vw;
  position: absolute;
  top: 35.2vw;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (min-width: 769px) {
  .kv__ttl {
    width: 38.54167vw;
    top: 2.39584vw;
  }
}

.kv__ttl--emd {
  width: 33.86667vw;
  position: absolute;
  top: 5.86667vw;
  left: 7.2vw;
}
@media screen and (min-width: 769px) {
  .kv__ttl--emd {
    width: 19.16667vw;
    top: 2.70834vw;
    left: 2.70834vw;
  }
}

.kv__img {
  width: 60.26667vw;
  position: absolute;
  top: 0;
  right: 0;
}
@media screen and (min-width: 769px) {
  .kv__img {
    width: 34.11459vw;
    top: 2.44792vw;
    right: 1.77084vw;
  }
}

/* about
-------------------------------------------------- */
/* インナー */
.about__inner {
  margin: 0 auto;
  width: 78.66667vw;
}
@media screen and (min-width: 769px) {
  .about__inner {
    width: 57.29167vw;
  }
}

/* タイトル */
.about__ttl {
  color: #008486;
  font-size: 8.53334vw;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
  margin-bottom: 16.26667vw;
}
@media screen and (min-width: 769px) {
  .about__ttl {
    font-size: 2.34375vw;
    line-height: 1.1556;
    margin-bottom: 3.38542vw;
  }
}
.about__ttl > span {
  display: inline-block;
  margin-top: 12.8vw;
}
@media screen and (min-width: 769px) {
  .about__ttl > span {
    display: inline;
    margin-top: initial;
  }
}

/* テキスト */
.about__txt {
  color: #323232;
  font-size: 4.8vw;
  font-weight: 600;
  line-height: 1.7778;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .about__txt {
    font-size: 1.25vw;
    line-height: 2;
  }
}
.about__txt + .about__txt {
  margin-top: 8.53334vw;
}
@media screen and (min-width: 769px) {
  .about__txt + .about__txt {
    margin-top: 2.5vw;
  }
}

.about__txt--green {
  color: #008486;
}
@media screen and (min-width: 769px) {
  .about__txt--green {
    font-weight: 700;
    line-height: 2.4167;
  }
}

.about__txt + .about__txt--green {
  margin-top: 6.4vw;
}
@media screen and (min-width: 769px) {
  .about__txt + .about__txt--green {
    margin-top: 4.27084vw;
  }
}

/* ONE DISH, ONE WORLD
-------------------------------------------------- */
.oneDishWorld {
  margin-top: 10.13334vw;
}
@media screen and (min-width: 769px) {
  .oneDishWorld {
    margin-top: 5.83334vw;
  }
}

.oneDishWorld__ttl {
  margin: 0 auto 9.06667vw;
  width: 52.35467vw;
}
@media screen and (min-width: 769px) {
  .oneDishWorld__ttl {
    margin: 0 auto 5.05209vw;
    width: 36.01511vw;
  }
}

/* ----- アンカーナビ ----- */
.oneDishWorld__nav {
  background-color: #FAF0E6;
  margin: 0 auto;
  padding: 4vw 3.2vw 5.6vw;
  width: 83.2vw;
  position: relative;
}
@media screen and (min-width: 769px) {
  .oneDishWorld__nav {
    padding: 3.22917vw 2.70834vw 3.48959vw;
    width: 57.29167vw;
  }
}
.oneDishWorld__nav::before, .oneDishWorld__nav::after {
  content: "";
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  height: 18.66667vw;
  width: 18.66667vw;
}
@media screen and (min-width: 769px) {
  .oneDishWorld__nav::before, .oneDishWorld__nav::after {
    height: 7.91667vw;
    width: 7.76042vw;
  }
}
.oneDishWorld__nav::before {
  background-image: url("../img/icon_oneDishWorldNav_02.svg");
  top: -5.6vw;
  right: -6.93333vw;
}
@media screen and (min-width: 769px) {
  .oneDishWorld__nav::before {
    height: 8.69792vw;
    width: 8.69792vw;
    top: -2.91666vw;
    right: -3.38541vw;
  }
}
.oneDishWorld__nav::after {
  background-image: url("../img/icon_oneDishWorldNav_03.svg");
  bottom: -6.93333vw;
  left: -7.46666vw;
}
@media screen and (min-width: 769px) {
  .oneDishWorld__nav::after {
    bottom: -3.33333vw;
    left: -3.33333vw;
  }
}
.oneDishWorld__nav ul {
  display: flex;
  flex-direction: column;
  gap: 4vw 0;
}
@media screen and (min-width: 769px) {
  .oneDishWorld__nav ul {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 0.52084vw 0;
  }
}
@media screen and (min-width: 769px) {
  .oneDishWorld__nav ul li {
    width: 50%;
  }
}
@media screen and (min-width: 769px) {
  .oneDishWorld__nav ul li:nth-child(1) {
    order: 1;
    padding-left: 0;
  }
  .oneDishWorld__nav ul li:nth-child(2) {
    order: 3;
    padding-left: 0;
  }
  .oneDishWorld__nav ul li:nth-child(3) {
    order: 5;
    padding-left: 0;
  }
  .oneDishWorld__nav ul li:nth-child(4) {
    order: 2;
    padding-left: 1.77084vw;
  }
  .oneDishWorld__nav ul li:nth-child(5) {
    order: 4;
    padding-left: 1.77084vw;
  }
  .oneDishWorld__nav ul li:nth-child(6) {
    order: 6;
    padding-left: 1.77084vw;
  }
}
.oneDishWorld__nav ul a {
  display: flex;
  gap: 0 1.22667vw;
}
@media screen and (min-width: 769px) {
  .oneDishWorld__nav ul a {
    align-items: center;
    gap: 0 0.67709vw;
    transition: 0.3s;
  }
}
.oneDishWorld__nav ul p {
  font-size: 4.26667vw;
  font-weight: 500;
  line-height: 1.5;
}
@media screen and (min-width: 769px) {
  .oneDishWorld__nav ul p {
    font-size: 1.25vw;
    line-height: 1.4584;
    position: relative;
    padding: 0.46875vw 0;
  }
}
@media screen and (min-width: 769px) {
  .oneDishWorld__nav ul p::after {
    content: "";
    background-color: #FFB432;
    position: absolute;
    bottom: 0;
    left: 0;
    height: 0.52084vw;
    width: 100%;
    transform: scale(0, 1);
    transform-origin: left bottom;
    transition: transform 0.3s;
  }
}
.oneDishWorld__nav ul p .f_small {
  font-size: 3.46667vw;
  font-weight: 500;
  line-height: 1.4616;
}
@media screen and (min-width: 769px) {
  .oneDishWorld__nav ul p .f_small {
    font-size: 0.9375vw;
    line-height: 1.9445;
  }
}
@media screen and (min-width: 769px) {
  .oneDishWorld__nav ul li:hover a {
    color: #00A8A9;
  }
}
@media screen and (min-width: 769px) {
  .oneDishWorld__nav ul li:hover p::after {
    transform: scale(1, 1);
  }
}
.oneDishWorld__nav .icon {
  background-image: url("../img/icon_oneDishWorldNav_01.svg");
  background-position: left center;
  background-repeat: no-repeat;
  background-size: contain;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  font-size: 4.26667vw;
  font-weight: 700;
  line-height: 1;
  padding-bottom: 0.53334vw;
  height: 7.02934vw;
  width: 7.02934vw;
}
@media screen and (min-width: 769px) {
  .oneDishWorld__nav .icon {
    font-size: 1.30209vw;
    padding-bottom: 0.10417vw;
    height: 2.59688vw;
    width: 2.59688vw;
  }
}

/* ----- ゲスト紹介 ----- */
.guest {
  margin-top: 13.86667vw;
}
@media screen and (min-width: 769px) {
  .guest {
    margin-top: 3.59375vw;
    position: relative;
    z-index: 10;
  }
}

.guest__inner {
  margin: 0 auto;
  width: 89.33334vw;
}
@media screen and (min-width: 769px) {
  .guest__inner {
    width: 57.29167vw;
  }
}

.guest__ttl {
  margin: 0 auto 2.66667vw;
  width: 54.73334vw;
}
@media screen and (min-width: 769px) {
  .guest__ttl {
    margin: 0 auto 1.82292vw;
    width: 14.83073vw;
  }
}

.guest__lead {
  font-size: 4.8vw;
  font-weight: 600;
  line-height: 1.7778;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .guest__lead {
    font-size: 1.25vw;
    line-height: 1.9445;
  }
}

.guest__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 4.4vw;
  margin-top: 5.6vw;
}
@media screen and (min-width: 769px) {
  .guest__list {
    gap: 1.30209vw;
    margin-top: 1.19792vw;
    justify-content: flex-start;
  }
}
.guest__list li {
  width: 34.66667vw;
}
@media screen and (min-width: 769px) {
  .guest__list li {
    width: 10.41667vw;
  }
}
.guest__list li figcaption {
  background-color: #F78E01;
  border-radius: 3.73334vw;
  color: #fff;
  font-size: 2.93334vw;
  font-weight: 700;
  line-height: 1.4546;
  text-align: center;
  margin: -2.13333vw auto 0;
  min-width: 100px;
  padding: 1.33334vw 2.66667vw 1.86667vw;
  white-space: nowrap;
  width: fit-content;
  position: relative;
  z-index: 10;
}
@media screen and (min-width: 769px) {
  .guest__list li figcaption {
    border-radius: 1.09375vw;
    font-size: 0.9375vw;
    line-height: 1.4445;
    margin: -0.625vw auto 0;
    min-width: 7.91667vw;
    padding: 0.36459vw 0.57292vw 0.46875vw;
  }
}
@media screen and (min-width: 769px) {
  .guest__list li:nth-child(3) figcaption {
    min-width: 10vw;
  }
}

/* ----- プロローグ ----- */
.prologue {
  margin-top: 8.53334vw;
  position: relative;
  overflow: hidden;
}
@media screen and (min-width: 769px) {
  .prologue {
    margin-top: -3.125vw;
  }
}
.prologue::before {
  content: "";
  background-color: #F9F1DA;
  border-radius: 50%;
  height: 441.87734vw;
  width: 462vw;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (min-width: 769px) {
  .prologue::before {
    height: 220vw;
    width: 220vw;
  }
}

.prologue__inner {
  padding: 6.4vw 0 10.13334vw;
  margin: 0 auto;
  width: 92vw;
  position: relative;
  z-index: 10;
}
@media screen and (min-width: 769px) {
  .prologue__inner {
    padding: 6.77084vw 0 5.78125vw;
    width: 57.29167vw;
  }
}

.prologue__ttl {
  margin: 0 auto 4.8vw;
}
@media screen and (min-width: 769px) {
  .prologue__ttl {
    margin: 0 auto 2.29167vw;
    width: 28.25261vw;
  }
}

.prologue__txt {
  font-size: 4.8vw;
  line-height: 1.7778;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .prologue__txt {
    font-size: 1.25vw;
    line-height: 2.0834;
  }
}

.prologue__movie {
  margin: 4.8vw auto 0;
  width: 78.66667vw;
  position: relative;
}
@media screen and (min-width: 769px) {
  .prologue__movie {
    width: 51.04167vw;
    margin-top: 3.22917vw;
  }
}
.prologue__movie__inner {
  padding-top: 56.25%;
}
.prologue__movie iframe {
  border: none;
  position: absolute;
  top: 0px;
  right: 0px;
  bottom: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
}

/* ----- オープニングパフォーマンス ----- */
.performance__inner {
  margin: 0 auto;
  padding: 8vw 0 6.13334vw;
  width: 92vw;
}
@media screen and (min-width: 769px) {
  .performance__inner {
    padding: 4.11459vw 0 0.52084vw;
    width: 57.29167vw;
  }
}

.performance__ttl {
  margin: 0 auto 4.26667vw;
}
@media screen and (min-width: 769px) {
  .performance__ttl {
    margin: 0 auto 2.5vw;
    width: 39.01303vw;
  }
}

@media screen and (min-width: 769px) {
  .performance__txtWrap {
    display: flex;
  }
}

.performance__img {
  margin: 0 auto;
  width: 66.26667vw;
}
@media screen and (min-width: 769px) {
  .performance__img {
    flex-shrink: 0;
    width: 50%;
  }
}

.performance__txt {
  font-size: 4.8vw;
  line-height: 1.7778;
  text-align: center;
  margin: -1.06666vw auto 0;
  width: 78.66667vw;
}
@media screen and (min-width: 769px) {
  .performance__txt {
    font-size: 1.25vw;
    line-height: 2.0834;
    text-align: left;
    margin: 0;
    padding: 2.29167vw 0 0 0.98959vw;
    width: 50%;
  }
}

/* ----- MYごはんトークセッション ----- */
.talkSession {
  background-color: #EAF4F3;
}

/* インナー */
.talkSession__inner {
  padding: 4.8vw 0 12.26667vw;
  margin: 0 auto;
  width: 89.33334vw;
}
@media screen and (min-width: 769px) {
  .talkSession__inner {
    padding: 4.42709vw 0 5.72917vw;
    width: 57.29167vw;
  }
}

/* タイトル */
.talkSession__ttl {
  margin: 0 auto 6.66667vw;
  width: 87.29334vw;
}
@media screen and (min-width: 769px) {
  .talkSession__ttl {
    margin: 0 auto 2.5vw;
    width: 37.43386vw;
  }
}

/* テキスト */
.talkSession__txt {
  font-size: 4.8vw;
  line-height: 1.7778;
  text-align: center;
  margin: 0 auto;
  width: 89.33334vw;
}
@media screen and (min-width: 769px) {
  .talkSession__txt {
    font-size: 1.25vw;
    line-height: 2.0834;
    width: auto;
  }
}

/* 画像リスト */
.talkSession__imgList {
  display: flex;
  flex-wrap: wrap;
  gap: 1.86667vw;
  margin: 5.33334vw auto 0;
  width: 78.66667vw;
}
@media screen and (min-width: 769px) {
  .talkSession__imgList {
    gap: 1.66667vw;
    margin: 3.22917vw auto 0;
    width: auto;
  }
}
.talkSession__imgList li {
  width: 38.4vw;
}
@media screen and (min-width: 769px) {
  .talkSession__imgList li {
    width: 27.8125vw;
  }
}

/* MYごはん ----- */
.myMeal {
  margin-top: 10.66667vw;
}
@media screen and (min-width: 769px) {
  .myMeal {
    margin-top: 4.63542vw;
  }
}

/* タイトル */
.myMeal__ttl {
  margin: 0 auto 9.33334vw;
  width: 78.66667vw;
}
@media screen and (min-width: 769px) {
  .myMeal__ttl {
    margin: 0 auto 4.89584vw;
    width: 50.3125vw;
  }
}

/* リスト */
.myMeal__list {
  display: flex;
  flex-direction: column;
  gap: 9.33334vw 0;
  margin: 0 auto;
  width: 78.66667vw;
}
@media screen and (min-width: 769px) {
  .myMeal__list {
    gap: 5.625vw 0;
    width: auto;
  }
}
@media screen and (min-width: 769px) {
  .myMeal__list > li {
    display: flex;
    gap: 1.77084vw;
  }
}
@media screen and (min-width: 769px) {
  .myMeal__list > li:nth-child(even) {
    flex-direction: row-reverse;
  }
}

@media screen and (min-width: 769px) {
  .myMeal__leftWrap {
    flex-shrink: 0;
    width: 24.27084vw;
  }
}

/* 名前 */
.myMeal__name {
  background-color: #F78E01;
  border-radius: 4.8vw;
  color: #fff;
  font-size: 3.73334vw;
  font-weight: 700;
  line-height: 1.4286;
  text-align: center;
  padding: 1.86667vw 3.2vw 2.13334vw;
  min-width: 131px;
  margin: 0 auto 3.2vw;
  width: fit-content;
}
@media screen and (min-width: 769px) {
  .myMeal__name {
    border-radius: 1.30209vw;
    font-size: 1.09375vw;
    line-height: 1.4286;
    padding: 0.41667vw 1.30209vw 0.625vw;
    min-width: 9.73959vw;
    margin: 0 auto 1.04167vw 0;
  }
}
@media screen and (min-width: 769px) {
  .myMeal__name.sp {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .myMeal__name.pc {
    display: none;
  }
}

/* 画像 */
.myMeal__img {
  margin: 0 auto;
  width: 40vw;
}
@media screen and (min-width: 769px) {
  .myMeal__img {
    width: auto;
  }
}

/* 世界の食卓画像 */
.myMeal__img--world {
  margin: 9.06667vw auto 0;
  width: 78.66667vw;
}
@media screen and (min-width: 769px) {
  .myMeal__img--world {
    margin: 4.375vw auto 0;
    width: 46.97917vw;
  }
}

/* テキスト */
.myMeal__txt {
  font-size: 3.73334vw;
  line-height: 2;
  margin-top: 2.13334vw;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .myMeal__txt {
    font-size: 1.25vw;
    line-height: 2.0834;
    text-align: left;
    margin-top: 0;
  }
}
.myMeal__txt.ls_40 {
  letter-spacing: -0.04em;
}
@media screen and (min-width: 769px) {
  .myMeal__txt.ls_40 {
    letter-spacing: initial;
  }
}

/*  */
@media screen and (min-width: 769px) {
  .myMeal__list > li:last-child {
    gap: 0 2.1875vw;
  }
}
@media screen and (min-width: 769px) {
  .myMeal__list > li:last-child .myMeal__leftWrap {
    width: 14.21875vw;
  }
}

/* ----- クイズで旅する世界のごはん ----- */
@media screen and (min-width: 769px) {
  .quiz {
    background-image: url("../img/bg_quiz_pc.png");
    background-position: left top;
    background-repeat: no-repeat;
    background-size: contain;
  }
}

.quiz__inner {
  padding: 9.6vw 0 10.13334vw;
  margin: 0 auto;
  width: 92vw;
}
@media screen and (min-width: 769px) {
  .quiz__inner {
    padding: 4.16667vw 0 5.625vw;
    width: 57.29167vw;
  }
}

.quiz__ttl {
  margin: 0 auto 4.53334vw;
}
@media screen and (min-width: 769px) {
  .quiz__ttl {
    margin: 0 auto 2.91667vw;
    width: 39.01303vw;
  }
}

.quiz__txt {
  font-size: 4.8vw;
  line-height: 1.7778;
  text-align: center;
  margin: 0 auto;
  width: 78.66667vw;
}
@media screen and (min-width: 769px) {
  .quiz__txt {
    font-size: 1.25vw;
    line-height: 2.0834;
    width: auto;
  }
}

.quiz__list {
  margin-top: 13.33334vw;
}
@media screen and (max-width: 768px) {
  .quiz__list {
    width: 100dvw;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
  }
}
@media screen and (min-width: 769px) {
  .quiz__list {
    display: flex;
    flex-direction: column;
    gap: 3.64584vw 0;
    margin-top: 3.85417vw;
  }
}
.quiz__list > li {
  background-color: #EAF4F3;
}
@media screen and (max-width: 768px) {
  .quiz__list > li:nth-child(2) {
    background-color: #F9F1DA;
  }
}
.quiz__list .quiz__list__inner {
  margin: 0 auto;
  padding: 8vw 0 10.66667vw;
  width: 78.66667vw;
}
@media screen and (min-width: 769px) {
  .quiz__list .quiz__list__inner {
    padding: 2.08334vw 2.8125vw 2.8125vw 2.96875vw;
    width: auto;
  }
}
.quiz__list .quiz__list__ttl {
  background-color: #F78C02;
  border-radius: 6.66667vw;
  color: #fff;
  font-size: 5.33334vw;
  font-weight: 700;
  line-height: 1.25;
  text-align: center;
  margin-bottom: 6.66667vw;
  padding: 2.93334vw 3.2vw 3.73334vw;
  width: 81.86667vw;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (min-width: 769px) {
  .quiz__list .quiz__list__ttl {
    border-radius: 1.30209vw;
    font-size: 1.25vw;
    line-height: 1.4584;
    padding: 0.3125vw 1.5625vw 0.46875vw;
    margin: 0 auto 1.5625vw;
    width: fit-content;
    left: 0;
    transform: initial;
  }
}
@media screen and (max-width: 768px) {
  .quiz__list .quiz__list__ttl:has(br) {
    border-radius: 9.6vw;
    padding: 2.66667vw 3.2vw 3.2vw;
  }
}
.quiz__list .quiz__list__ttl::after {
  content: "";
  border-style: solid;
  border-width: 4.8vw 2.93334vw 0 2.93334vw;
  border-color: #F78C02 transparent transparent transparent;
  height: 0;
  width: 0;
  position: absolute;
  left: 50%;
  bottom: -3.73333vw;
  transform: translateX(-50%);
}
@media screen and (min-width: 769px) {
  .quiz__list .quiz__list__ttl::after {
    border-width: 0.9375vw 0.57292vw 0 0.57292vw;
    border-color: #F78C02 transparent transparent transparent;
    bottom: -0.625vw;
  }
}
.quiz__list .quiz__list__q,
.quiz__list .quiz__list__a {
  color: #00A8A9;
  font-size: 4.26667vw;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
  margin-bottom: 2.13334vw;
}
@media screen and (min-width: 769px) {
  .quiz__list .quiz__list__q,
  .quiz__list .quiz__list__a {
    display: flex;
    align-items: center;
    gap: 0 0.9375vw;
    font-size: 1.77084vw;
    line-height: 1.4412;
    text-align: left;
    margin: 0 auto 2.60417vw;
    width: fit-content;
  }
}
.quiz__list .quiz__list__q .icon,
.quiz__list .quiz__list__a .icon {
  display: block;
  margin: 0 auto 1.6vw;
  height: 12.8vw;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .quiz__list .quiz__list__q .icon,
  .quiz__list .quiz__list__a .icon {
    flex-shrink: 0;
    margin: 0;
    height: auto;
    width: 4.42709vw;
  }
}
@media screen and (min-width: 769px) {
  .quiz__list .quiz__list__a {
    margin-left: 0;
    margin-bottom: 1.66667vw;
  }
}
.quiz__list .quiz__list__img {
  margin: 3.73334vw auto 0;
}
@media screen and (min-width: 769px) {
  .quiz__list .quiz__list__img {
    margin: 0;
  }
}
.quiz__list .quiz__list__txt {
  color: #2B2B2B;
  font-size: 4.26667vw;
  font-weight: 500;
  line-height: 2;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .quiz__list .quiz__list__txt {
    font-size: 1.25vw;
    line-height: 2.0834;
    text-align: left;
  }
}
@media screen and (min-width: 769px) {
  .quiz__list .wrap {
    display: flex;
  }
}
@media screen and (min-width: 769px) {
  .quiz__list .leftWrap {
    flex-shrink: 0;
    width: 50%;
    padding-right: 1.5625vw;
  }
}
.quiz__list .rightWrap {
  margin-top: 8vw;
}
@media screen and (min-width: 769px) {
  .quiz__list .rightWrap {
    margin: 0;
    padding-left: 0.52084vw;
    width: 50%;
  }
}
@media screen and (max-width: 768px) {
  .quiz__list li {
    background-repeat: no-repeat;
  }
}
@media screen and (max-width: 768px) {
  .quiz__list li:nth-child(1) {
    background-image: url("../img/icon_quiz_01.svg"), url("../img/icon_quiz_01.svg");
    background-position: left -11.73333vw top 140.26667vw, right -11.73333vw top 121.6vw;
    background-size: 36.728vw 36.728vw, 36.728vw 36.728vw;
  }
}
@media screen and (max-width: 768px) {
  .quiz__list li:nth-child(2) {
    background-image: url("../img/icon_quiz_01.svg"), url("../img/icon_quiz_01.svg");
    background-position: left -14.4vw top 16vw, right -12.8vw top 123.2vw;
    background-size: 36.728vw 36.728vw, 36.728vw 36.728vw;
  }
}
@media screen and (max-width: 768px) {
  .quiz__list li:nth-child(3) {
    background-image: url("../img/icon_quiz_01.svg");
    background-position: left -9.86666vw top 142.66667vw;
    background-size: 36.728vw 36.728vw;
  }
}

/* ボトム ----- */
/* インナー */
.quiz__bottom__inner {
  margin: 0 auto;
  padding: 13.06667vw 0 0;
  width: 78.66667vw;
}
@media screen and (min-width: 769px) {
  .quiz__bottom__inner {
    padding-top: 3.22917vw;
    width: 57.29167vw;
  }
}

/* テキスト */
.quiz__bottom__txt {
  font-size: 4.8vw;
  font-weight: 500;
  letter-spacing: -0.01em;
  line-height: 1.7778;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .quiz__bottom__txt {
    font-size: 1.25vw;
    line-height: 2.0834;
    text-align: left;
  }
}
.quiz__bottom__txt + .quiz__bottom__txt {
  margin-top: 8.53334vw;
}
@media screen and (min-width: 769px) {
  .quiz__bottom__txt + .quiz__bottom__txt {
    margin-top: 2.60417vw;
  }
}

/* 画像 */
.quiz__bottom__img {
  margin-top: 7.73334vw;
}
@media screen and (min-width: 769px) {
  .quiz__bottom__img {
    margin: 4.27084vw auto 0;
    width: 46.97917vw;
  }
}

/* ----- 食と農業の未来へ向けたメッセージ ----- */
/* ボタン */
.btn {
  display: table;
  border-top: 0.53334vw solid #05A8A9;
  border-bottom: 0.53334vw solid #05A8A9;
  margin: 8vw auto 0;
  min-width: 87.2vw;
}
@media screen and (min-width: 769px) {
  .btn {
    border-top: 0.20834vw solid #05A8A9;
    border-bottom: 0.20834vw solid #05A8A9;
    margin-top: 4.79167vw;
    min-width: 28.02084vw;
  }
}
.btn > a,
.btn .btn__inner {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0 6.93334vw;
  overflow: hidden;
  padding: 2.93334vw 2.4vw;
}
@media screen and (min-width: 769px) {
  .btn > a,
  .btn .btn__inner {
    gap: 0 1.875vw;
    padding: 0.72917vw 0.625vw;
  }
}
.btn .btn__txt {
  font-size: 3.73334vw;
  font-weight: 700;
  line-height: 1.4286;
  text-align: center;
  white-space: nowrap;
}
@media screen and (min-width: 769px) {
  .btn .btn__txt {
    font-size: 1.04167vw;
    line-height: 1.45;
  }
}
.btn .btn__icon {
  flex-shrink: 0;
  height: 5.33334vw;
  width: 5.33334vw;
  position: relative;
  z-index: 10;
}
@media screen and (min-width: 769px) {
  .btn .btn__icon {
    height: 1.40625vw;
    width: 1.40625vw;
  }
}
.btn .btn__icon::before {
  content: "";
  border: 0.26667vw solid #323232;
  border-radius: 50%;
  height: 5.33334vw;
  width: 5.33334vw;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translateX(-50%) translateY(-50%);
  z-index: 20;
}
@media screen and (min-width: 769px) {
  .btn .btn__icon::before {
    border: 0.05209vw solid #323232;
    height: 1.40625vw;
    width: 1.40625vw;
  }
}
@media screen and (min-width: 769px) {
  .btn .btn__icon::after {
    content: "";
    background-color: #05A8A9;
    border-radius: 50%;
    height: 0;
    width: 0;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translateX(-50%) translateY(-50%);
    transition: 0.6s;
  }
}
.btn .btn__icon > span::before {
  content: "";
  border-top: 0.26667vw solid #323232;
  border-radius: 0.13334vw;
  width: 8.53334vw;
  position: absolute;
  right: 50%;
  top: 50%;
  transform: translateY(-50%);
  z-index: 20;
}
@media screen and (min-width: 769px) {
  .btn .btn__icon > span::before {
    border-top: 0.05209vw solid #323232;
    border-radius: 0.02605vw;
    width: 2.23959vw;
  }
}
.btn .btn__icon > span::after {
  content: "";
  background-color: #323232;
  border-radius: 50%;
  display: inline-block;
  height: 1.33334vw;
  width: 1.33334vw;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translateX(-50%) translateY(-50%);
  z-index: 20;
}
@media screen and (min-width: 769px) {
  .btn .btn__icon > span::after {
    height: 0.36459vw;
    width: 0.36459vw;
  }
}
@media screen and (min-width: 769px) {
  .btn:hover .btn__icon::after {
    height: 2.34375vw;
    width: 2.34375vw;
  }
}

/*  */
.message {
  position: relative;
  overflow: hidden;
}
.message::before {
  content: "";
  background-color: #F9F1DA;
  border-radius: 50%;
  height: 129.33334vw;
  width: 220.26667vw;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (min-width: 769px) {
  .message::before {
    height: 124.375vw;
    width: 220vw;
  }
}
.message::after {
  content: "";
  background-color: #F9F1DA;
  height: 50%;
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
}

/*  */
.message__inner {
  background-color: #F9F1DA;
  margin: 8.53334vw auto 0;
  position: relative;
  z-index: 10;
}
@media screen and (max-width: 768px) {
  .message__inner {
    padding: 0 4vw 11.46667vw;
  }
}
@media screen and (min-width: 769px) {
  .message__inner {
    margin: 7.8125vw auto 0;
    padding-bottom: 5.98959vw;
    width: 57.29167vw;
  }
}

/*  */
.message__ttl {
  margin: 0 auto 4.8vw;
}
@media screen and (min-width: 769px) {
  .message__ttl {
    margin: 0 auto 1.14584vw;
    width: 46.46771vw;
    transform: translateY(-2.60416vw);
  }
}

.message__txt {
  font-size: 4.8vw;
  line-height: 1.7778;
  text-align: center;
  margin: 3.73334vw auto 0;
  width: 78.66667vw;
}
@media screen and (min-width: 769px) {
  .message__txt {
    font-size: 1.25vw;
    line-height: 2.0834;
    text-align: left;
    width: auto;
  }
}
.message__txt + .message__txt {
  margin-top: 8.53334vw;
}
@media screen and (min-width: 769px) {
  .message__txt + .message__txt {
    margin-top: 2.60417vw;
  }
}
.message__txt .f_bold {
  font-weight: 700;
}
.message__txt a {
  color: #008486;
  font-weight: 500;
  text-decoration: underline;
}

.message__img {
  margin: 5.33334vw auto 0 16vw;
  width: 67.86667vw;
}
@media screen and (min-width: 769px) {
  .message__img {
    flex-shrink: 0;
    margin: 0;
    width: 23.95834vw;
  }
}

@media screen and (min-width: 769px) {
  .message__txtWrap {
    display: flex;
    flex-direction: row-reverse;
    gap: 0 1.5625vw;
  }
}
@media screen and (min-width: 769px) {
  .message__txtWrap > .message__txt {
    margin-top: 0;
  }
}
.message__txtWrap + .message__txt {
  margin-top: 0;
}
@media screen and (min-width: 769px) {
  .message__txtWrap + .message__txt {
    margin-top: 0.625vw;
  }
}

/* メッセージリスト ----- */
.message__list {
  display: flex;
  flex-direction: column;
  gap: 9.06667vw 0;
  margin: 12.8vw auto 0;
  width: 73.06667vw;
}
@media screen and (min-width: 769px) {
  .message__list {
    flex-direction: row;
    gap: 3.125vw;
    margin-top: 2.86459vw;
    width: auto;
  }
}
@media screen and (min-width: 769px) {
  .message__list > li {
    width: 27.08334vw;
  }
}
.message__list a {
  display: block;
  background-color: #fff;
  margin-top: 3.2vw;
  padding: 4.26667vw 4vw 6.4vw;
  position: relative;
}
@media screen and (min-width: 769px) {
  .message__list a {
    margin-top: 1.14584vw;
    padding: 1.61459vw 1.30209vw 5.72917vw;
  }
}
.message__list a::before {
  content: "";
  display: block;
  background-image: url("../img/icon_messageList_01.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  height: 8.79467vw;
  width: 70.43734vw;
  position: absolute;
  top: -3.2vw;
  left: 0;
  z-index: -1;
}
@media screen and (min-width: 769px) {
  .message__list a::before {
    height: 3.27709vw;
    width: 26.24584vw;
    top: -1.14583vw;
  }
}
.message__list .btn {
  border: none;
  margin-top: 3.73334vw;
  min-width: initial;
  width: 100%;
}
@media screen and (min-width: 769px) {
  .message__list .btn {
    margin: 0;
    position: absolute;
    bottom: 0;
    right: 0;
  }
}
.message__list .btn .btn__inner {
  justify-content: flex-end;
  padding: 0;
}
@media screen and (min-width: 769px) {
  .message__list .btn .btn__inner {
    padding: 1.875vw 1.30209vw;
  }
}
@media screen and (min-width: 769px) {
  .message__list .btn .btn__txt {
    font-size: 1.30209vw;
    font-weight: 500;
    line-height: 1.44;
  }
}
@media screen and (min-width: 769px) {
  .message__list li:hover .btn__icon::after {
    height: 2.34375vw;
    width: 2.34375vw;
  }
}

/*  ----- */
.message__bottomWrap {
  margin-top: 14.13334vw;
}
@media screen and (min-width: 769px) {
  .message__bottomWrap {
    margin-top: 4.79167vw;
  }
}
.message__bottomWrap .message__txt {
  width: 92vw;
}
@media screen and (min-width: 769px) {
  .message__bottomWrap .message__txt {
    text-align: center;
    width: auto;
  }
}

/* ----- エンディング ----- */
.ending {
  position: relative;
}
@media screen and (min-width: 769px) {
  .ending {
    background-image: url("../img/icon_dot_02.png");
    background-position: top 74.47917vw left 8.85417vw;
    background-repeat: no-repeat;
    background-size: 7.63803vw;
  }
}
.ending::before {
  content: "";
  display: block;
  background-image: url("../img/icon_wave_sp.png");
  background-position: top left;
  background-repeat: repeat-x;
  background-size: 14.93334vw auto;
  width: 100%;
  height: 8vw;
}
@media screen and (min-width: 769px) {
  .ending::before {
    background-size: 6.40625vw auto;
    height: 5.98959vw;
  }
}

.ending__inner {
  margin: 0 auto;
  width: 78.66667vw;
}
@media screen and (min-width: 769px) {
  .ending__inner {
    width: 57.29167vw;
  }
}

.ending__ttl {
  margin: 0 auto 5.33334vw;
  width: 75.2vw;
}
@media screen and (min-width: 769px) {
  .ending__ttl {
    margin: 0 auto 3.02084vw;
    width: 25.90053vw;
  }
}

.ending__txt {
  font-size: 4.8vw;
  line-height: 1.7778;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .ending__txt {
    font-size: 1.25vw;
    line-height: 2.0834;
  }
}

.ending__imgList + .ending__txt {
  font-size: 4.26667vw;
  line-height: 1.875;
  margin-top: 9.86667vw;
}
@media screen and (min-width: 769px) {
  .ending__imgList + .ending__txt {
    font-size: 1.35417vw;
    line-height: 2.3125;
    margin-top: 3.125vw;
  }
}

.ending__list + .ending__txt {
  margin-top: 11.73334vw;
}
@media screen and (min-width: 769px) {
  .ending__list + .ending__txt {
    margin-top: 4.16667vw;
  }
}

/* エンディング画像リスト ----- */
.ending__imgList {
  display: flex;
  flex-wrap: wrap;
  gap: 1.86667vw;
  margin-top: 7.46667vw;
}
@media screen and (min-width: 769px) {
  .ending__imgList {
    gap: 1.5625vw;
    margin-top: 3.33334vw;
  }
}
.ending__imgList li {
  width: 38.4vw;
}
@media screen and (min-width: 769px) {
  .ending__imgList li {
    width: 27.76042vw;
  }
}

/* エンディングコメント ----- */
.ending__list {
  display: flex;
  flex-direction: column;
  gap: 7.46667vw 0;
  font-size: 3.73334vw;
  line-height: 1.7143;
  margin: 9.6vw auto 0;
}
@media screen and (min-width: 769px) {
  .ending__list {
    gap: 4.6875vw 0;
    font-size: 1.5625vw;
    line-height: 1.6667;
    margin-top: 4.89584vw;
  }
}
.ending__list .ending__list__img {
  float: left;
  margin: 0 3.46667vw 0 0;
  width: 34.66667vw;
}
@media screen and (min-width: 769px) {
  .ending__list .ending__list__img {
    margin: 0 2.08334vw 0 0;
    width: 14.47917vw;
  }
}
.ending__list .ending__list__name {
  display: block;
  border-bottom: 0.53334vw solid #00A8A9;
  font-size: 3.73334vw;
  font-weight: 600;
  line-height: 1.4286;
  padding-bottom: 2.93334vw;
  margin-bottom: 2.13334vw;
}
@media screen and (min-width: 769px) {
  .ending__list .ending__list__name {
    border-bottom: 0.10417vw solid #00A8A9;
    font-size: 1.5625vw;
    line-height: 1.4667;
    padding-bottom: 0.67709vw;
    margin-bottom: 0.67709vw;
  }
}
.ending__list > li:nth-child(even) .ending__list__img {
  float: right;
  margin: 0;
}
@media screen and (min-width: 769px) {
  .ending__list > li:nth-child(even) .ending__list__img {
    margin-left: 2.08334vw;
  }
}

/* EARTH TERRACE
-------------------------------------------------- */
.earthTerrace {
  background-image: url("../img/img_oneDishWorld_01_sp.jpg"), url("../img/img_oneDishWorld_02_sp.jpg"), url("../img/img_oneDishWorld_03_sp.jpg"), url("../img/img_oneDishWorld_04_sp.jpg"), url("../img/img_oneDishWorld_05_sp.jpg"), url("../img/img_oneDishWorld_06_sp.jpg");
  background-position: top 0 left 0, top 0 right 5.33334vw, top 25.6vw right 10.66667vw, bottom 43.73334vw left 5.33334vw, bottom 51.46667vw right 5.33334vw, bottom 10.66667vw right 10.66667vw;
  background-size: 44.74667vw 29.89067vw, 26.4vw 17.6vw, 35.17334vw 23.448vw, 31.57067vw 21.04801vw, 26.51467vw 17.81867vw, 47.17067vw 31.44801vw;
  background-repeat: no-repeat;
  margin-top: 18.4vw;
}
@media screen and (min-width: 769px) {
  .earthTerrace {
    background-image: url("../img/img_oneDishWorld_01_pc.jpg"), url("../img/img_oneDishWorld_02_pc.jpg"), url("../img/img_oneDishWorld_03_pc.jpg"), url("../img/img_oneDishWorld_04_pc.jpg"), url("../img/img_oneDishWorld_05_pc.jpg"), url("../img/img_oneDishWorld_06_pc.jpg");
    background-size: 13.33334vw 8.90625vw, 12.39584vw 8.28125vw, 13.59375vw 9.0625vw, 9.01042vw 6.04167vw, 9.6875vw 6.51042vw, 10.3125vw 6.875vw;
    background-position: top 11.19792vw right 6.92709vw, top 0 left 14.73959vw, top 11.19792vw left 7.76042vw, top 24.21875vw left 19.73959vw, top 0.88542vw right 11.61459vw, top 22.65625vw right 16.25vw;
    margin-top: 5.98959vw;
  }
}

.earthTerrace__inner {
  margin: 0 auto;
  padding: 58.66667vw 0 73.6vw;
  width: 66.66667vw;
}
@media screen and (min-width: 769px) {
  .earthTerrace__inner {
    padding: 3.64584vw 0 8.85417vw;
    width: 57.29167vw;
  }
}

.earthTerrace__ttl {
  margin: 0 auto 10.13334vw;
  width: 62.97334vw;
}
@media screen and (min-width: 769px) {
  .earthTerrace__ttl {
    margin: 0 auto 3.64584vw;
    width: 26.35626vw;
  }
}

.earthTerrace__txt {
  font-size: 4.8vw;
  font-weight: 500;
  line-height: 1.7778;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .earthTerrace__txt {
    font-size: 1.25vw;
    line-height: 2.0834;
  }
}
.earthTerrace__txt + .earthTerrace__txt {
  margin-top: 8.53334vw;
}
@media screen and (min-width: 769px) {
  .earthTerrace__txt + .earthTerrace__txt {
    margin-top: 2.60417vw;
  }
}

/* EARTH MART DAYとは
-------------------------------------------------- */
.what {
  background-color: #EAF4F3;
  background-image: url("../img/icon_dot_01.png"), url("../img/icon_dot_01.png"), url("../img/icon_dot_02.png");
  background-position: top 143.46667vw left, top 152vw right -4.53333vw, top 216.53334vw right 7.46667vw;
  background-repeat: no-repeat;
  background-size: 17.096vw, 17.096vw, 12.128vw;
}
@media screen and (min-width: 769px) {
  .what {
    background-image: url("../img/icon_dot_01.png"), url("../img/icon_dot_02.png"), url("../img/icon_dot_01.png"), url("../img/icon_dot_02.png");
    background-position: top 7.8125vw left 6.04167vw, top 13.54167vw right 3.75vw, top 35.57292vw left 9.16667vw, top 36.71875vw right 5.98959vw;
    background-size: 10.72917vw, 7.63803vw, 7.63803vw, 10.72917vw;
  }
}

.what__inner {
  margin: 0 auto;
  padding: 11.73334vw 0 12.8vw;
  width: 92vw;
}
@media screen and (min-width: 769px) {
  .what__inner {
    padding: 9.53125vw 0 9.89584vw;
    width: 57.29167vw;
  }
}

.what__ttl {
  margin: 0 auto 6.93334vw;
  width: 77.71467vw;
}
@media screen and (min-width: 769px) {
  .what__ttl {
    margin: 0 auto 1.40625vw;
    width: 33.73021vw;
  }
}

.what__txt {
  font-size: 4.8vw;
  font-weight: 500;
  line-height: 1.7778;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .what__txt {
    font-size: 1.25vw;
    line-height: 2.0834;
    text-align: left;
  }
}

.what__txt--whiteWrap {
  background-color: #fff;
  border-radius: 7.73334vw;
  padding: 6.13334vw 12.8vw 8vw;
}
@media screen and (max-width: 768px) {
  .what__txt--whiteWrap {
    font-size: 4.26667vw;
    line-height: 1.75;
  }
}
@media screen and (min-width: 769px) {
  .what__txt--whiteWrap {
    border-radius: 1.51042vw;
    padding: 1.875vw 2.91667vw 2.29167vw;
  }
}

.what__txt--whiteWrap + .what__txt {
  margin-top: 7.73334vw;
}
@media screen and (min-width: 769px) {
  .what__txt--whiteWrap + .what__txt {
    text-align: center;
    margin: 3.48959vw -0.10416vw 0;
  }
}

/*  ----- */
/*  ----- */
/*  ----- */
/* modal
-------------------------------------------------- */
.modal {
  background-color: #fff;
  display: none;
  height: 100dvh;
  width: 100dvw;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
}
.modal::before {
  content: "";
  background: linear-gradient(#fff 0%, #fff 30%, rgba(0, 168, 169, 0.7) 100%);
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
}
.modal.is-show {
  display: block;
}

.modal__inner {
  width: 92dvw;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  z-index: 10;
}
@media screen and (min-width: 769px) {
  .modal__inner {
    width: 78.125dvw;
  }
}

.modal__wrap {
  background-color: #fff;
  filter: drop-shadow(10px 10px 10px rgba(5, 168, 169, 0.3));
  width: 100%;
  padding: 3.73334vw 6.66667vw 8vw;
}
@media screen and (min-width: 769px) {
  .modal__wrap {
    padding: 9.51493dvh 14.32292vw 6.71642dvh;
  }
}
.modal__wrap > div {
  overflow: hidden;
  height: 100%;
  width: 100%;
}

.modal__ttl {
  text-align: center;
  margin-bottom: 5.86667vw;
  padding: 0 4vw;
}
@media screen and (min-width: 769px) {
  .modal__ttl {
    margin: 0 auto 4.6875vw;
    width: 26.5625vw;
    padding: 0 1.04167vw;
  }
}
.modal__ttl .modal__ttl__schoolYear {
  color: #00A8A9;
  display: inline-block;
  font-size: 4.26667vw;
  line-height: 1.5;
}
@media screen and (min-width: 769px) {
  .modal__ttl .modal__ttl__schoolYear {
    font-size: 1.5625vw;
    line-height: 1.4667;
  }
}
.modal__ttl .modal__ttl__txt {
  display: inline-block;
  font-size: 5.33334vw;
  line-height: 1.45;
}
@media screen and (min-width: 769px) {
  .modal__ttl .modal__ttl__txt {
    font-size: 2.1875vw;
    line-height: 1.4524;
  }
}

.modal__txt {
  padding-right: 5.33334vw;
  height: 65.81709dvh;
}
@media screen and (min-width: 769px) {
  .modal__txt {
    padding-right: 1.04167vw;
    height: 45.24254dvh;
  }
}
.modal__txt p {
  font-size: 4.26667vw;
  line-height: 2;
}
@media screen and (min-width: 769px) {
  .modal__txt p {
    font-size: 0.9375vw;
    line-height: 1.7778;
  }
}
.modal__txt p + p {
  margin-top: 8.53334vw;
}
@media screen and (min-width: 769px) {
  .modal__txt p + p {
    margin-top: 1.66667vw;
  }
}
.modal__txt p:last-of-type {
  margin-bottom: 2em;
}

.modal-closeWrap {
  display: flex;
  justify-content: center;
  margin-top: 2.99851dvh;
}
@media screen and (min-width: 769px) {
  .modal-closeWrap {
    margin-top: 0.74626dvh;
  }
}

.modal-close {
  background-color: initial;
  border: none;
  color: #fff;
  display: flex;
  align-items: baseline;
  gap: 0 3.2vw;
  font-size: 4vw;
  font-weight: 500;
  line-height: 1.4;
}
@media screen and (min-width: 769px) {
  .modal-close {
    gap: 0 0.9375vw;
    font-size: 1.25vw;
    line-height: 1.4584;
  }
}
.modal-close img {
  display: block;
  height: 2.66667vw;
  width: 2.66667vw;
}
@media screen and (min-width: 769px) {
  .modal-close img {
    height: 0.78125vw;
    width: 0.78125vw;
  }
}

/* swiper
-------------------------------------------------- */
.swiper {
  position: relative;
}

.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  top: 8vw;
  z-index: 10;
}
@media screen and (min-width: 769px) {
  .swiper-button-prev,
  .swiper-button-next {
    top: 3.125vw;
    width: 0.98959vw;
    height: 2.03125vw;
  }
}

.swiper-button-prev::after,
.swiper-button-next::after {
  content: none !important;
}

.swiper-button-prev {
  left: 0;
}
@media screen and (min-width: 769px) {
  .swiper-button-prev {
    left: 11.45834vw;
  }
}

.swiper-button-next {
  right: 0;
}
@media screen and (min-width: 769px) {
  .swiper-button-next {
    right: 11.45834vw;
  }
}

.swiper-notification {
  display: none !important;
}

/* シンプルバー
-------------------------------------------------- */
.simplebar-track {
  background: #EBEBEB;
}

.simplebar-track .simplebar-scrollbar.simplebar-visible::before {
  opacity: 1;
}

.simplebar-track .simplebar-scrollbar::before {
  background: #C8C8C8;
  width: 5px;
  left: 50%;
  transform: translateX(-50%);
}
