@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c:wght@400;700&display=swap");
*,
*::before,
*::after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html {
  -webkit-text-size-adjust: 100%;
}

img,
video {
  max-width: 100%;
  height: auto;
  display: block;
  vertical-align: bottom;
}

button,
input,
select,
textarea {
  font: inherit;
  border: none;
  background: none;
  color: inherit;
}

ul,
ol {
  list-style: none;
}

:root {
  --color-area1: #ec694e;
  --color-area1-bg: #fdf5f2;
  --color-area1-contentsbg: #f9d5cf;
  --color-area2: #c7da41;
  --color-area2-bg: #f9f7dc;
  --color-area2-contentsbg: #e7ecc3;
  --color-area3: #1fb8d8;
  --color-area3-bg: #eefafc;
  --color-area3-contentsbg: #a5e9ef;
  --color-white: #fff;
  --color-black: #000;
  --color-text: #333;
  --font-rounded: "M PLUS Rounded 1c", sans-serif;
}

html {
  scroll-behavior: auto;
  font-family: "Noto Sans JP", sans-serif;
  color: var(--color-text);
}

body.fixed {
  overflow: hidden;
}

@media (769px <= width) {
  .dp_sp {
    display: none;
  }
}

@media (width <= 768px) {
  .dp_pc {
    display: none;
  }
}

.js-scroll.js-hometitle {
  overflow: hidden;
}
.js-scroll.js-hometitle span {
  display: inline-block;
  opacity: 0;
  transform: translateX(-90px) translateY(0);
  transition: 0.5s cubic-bezier(0.5, 1.18, 0.65, 1.12);
}
.js-scroll.js-hometitle.scrollin.active span {
  opacity: 1;
  transform: translateX(0);
}
.js-scroll.js-slideup {
  transition: 0.8s ease-out;
  transform: translateY(20px);
  opacity: 0;
}
.js-scroll.js-slideup.scrollin {
  transform: translateY(0);
  opacity: 1;
}

.section_frame ul li.js-slideup:nth-child(odd) {
  transform: translateY(0) translateX(-20px);
}
.section_frame ul li.js-slideup:nth-child(odd).scrollin {
  transform: translateY(0) translateX(0);
}
.section_frame ul li.js-slideup:nth-child(even) {
  transform: translateY(0) translateX(20px);
}
.section_frame ul li.js-slideup:nth-child(even).scrollin {
  transform: translateY(0) translateX(0);
}

.js-modal {
  background: none;
  border: none;
}

.modal {
  display: none;
  height: 100vh;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 8;
}
.modal__bg {
  background: rgba(51, 51, 51, 0.9);
  height: 100vh;
  position: absolute;
  width: 100%;
}
.modal__content {
  background: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  max-width: 1000px;
  width: 90%;
  line-height: 1.75;
  font-size: 24px;
  padding: 0 16px;
  border: 8px solid #cecece;
  border-radius: 32px;
  box-sizing: border-box;
  overflow: hidden;
  height: auto;
  max-height: 90vh;
}
.modal__content__inner {
  overflow-y: auto;
  max-height: 90vh;
  padding: 80px 32px;
}
.modal__content__inner strong {
  background: #ececec;
  display: block;
  font-size: 24px;
  border-radius: 16px;
  padding: 4px 16px;
}
.modal__content__inner p {
  font-size: 16px;
  padding-top: 24px;
}
.modal__content__inner p.large {
  font-size: 24px;
  padding-top: 40px;
}
.modal__content__inner p + strong {
  margin-top: 48px;
}
.modal__content .js-modal-close {
  position: absolute;
  top: 20px;
  right: 46px;
  width: 40px;
  height: 26px;
  cursor: pointer;
}
.modal__content_workshop {
  background: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  max-width: 1000px;
  width: 90%;
  line-height: 1.75;
  max-height: calc(100vh - 64px);
  padding: 0 16px;
  border: 8px solid var(--color-area3);
  border-radius: 32px;
  box-sizing: border-box;
  overflow: hidden;
  height: 100%;
}
.modal__content_workshop__inner {
  overflow-y: scroll;
  height: 100%;
  padding: 80px 32px;
}
.modal__content_workshop__inner__head {
  margin-bottom: 32px;
}
.modal__content_workshop__inner__head img {
  max-width: 100%;
  width: auto;
}
.modal__content_workshop__inner__block {
  margin-bottom: 48px;
}
.modal__content_workshop__inner__block__title {
  font-size: 24px;
  font-weight: bold;
  background: #bfd3bc;
  padding: 8px 16px;
  border-radius: 16px;
  line-height: 1.3;
  margin-bottom: 32px;
}
.modal__content_workshop__inner__block__title span {
  color: #ff6400;
}
.modal__content_workshop__inner__block__title.color_01 {
  background-color: #c8e6e1;
}
.modal__content_workshop__inner__block__title.color_02 {
  background-color: #cdeafc;
}
.modal__content_workshop__inner__block__title.color_02 span {
  color: #ff5757;
}
.modal__content_workshop__inner__block__title.color_03 {
  background-color: #d0dae3;
}
.modal__content_workshop__inner__block__title.color_04 {
  background-color: #dae5f3;
}
.modal__content_workshop__inner__block__sub {
  border-left: 6px solid #29741d;
  font-size: 24px;
  color: #29741d;
  font-weight: bold;
  padding-left: 8px;
  margin-bottom: 32px;
  line-height: 1.3;
}
.modal__content_workshop__inner__block__sub.color_02 {
  border-color: #004aad;
  color: #004aad;
  margin-bottom: 24px;
}
.modal__content_workshop__inner__block p,
.modal__content_workshop__inner__block ul {
  font-size: 16px;
  line-height: 1.75;
}
.modal__content_workshop__inner__block ul li {
  list-style-type: disc;
  margin-left: 20px;
}
.modal__content_workshop__inner__block ul + .modal__content_workshop__inner__block__sub {
  margin-top: 32px;
}
.modal__content_workshop__inner__block__list01 {
  margin-top: 32px;
}
.modal__content_workshop__inner__block__list01__wrap {
  overflow: hidden;
  margin-bottom: 24px;
  padding-bottom: 24px;
  border-bottom: 4px solid #ececec;
}
.modal__content_workshop__inner__block__list01__wrap.single {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}
.modal__content_workshop__inner__block__list01__wrap img {
  float: left;
  margin: 0 32px 16px;
}
.modal__content_workshop__inner__block__list01__wrap .title {
  font-size: 24px;
  color: #763180;
  font-weight: bold;
  margin-bottom: 8px;
  padding-left: 36px;
  display: flex;
  align-items: center;
  background: url("../img/workshop/popup_icn_cursor.png") left 1px/auto no-repeat;
  line-height: 1.3;
  margin-bottom: 16px;
}
.modal__content_workshop__inner__block__list01__wrap .title.color_01 {
  color: #29741d;
  background: url("../img/workshop/popup_icn_note.png") left 2px/28px 32px no-repeat;
  padding-bottom: 3px;
}
.modal__content_workshop__inner__block__list01__wrap .title.color_02 {
  color: #036;
  background: none;
  padding-bottom: 3px;
  padding-left: 0;
}
.modal__content_workshop__inner__block__list01__wrap .title.color_03 {
  color: #ff00b8;
  background: none;
  padding-bottom: 3px;
  padding-left: 0;
}
.modal__content_workshop__inner__block__list01__wrap .title.color_04 {
  color: #ff751f;
  background: url("../img/workshop/popup_icn_cursor_02.png") left 4px/25px auto no-repeat;
  padding-bottom: 3px;
  padding-left: 32px;
  flex-wrap: wrap;
}
.modal__content_workshop__inner__block__list01__wrap .title.color_04 .large {
  font-size: 24px;
  color: #333;
  display: block;
  width: 100%;
  margin-left: -32px;
  margin-top: 20px;
}
.modal__content_workshop__inner__block__list01__wrap .title.color_04 .large::first-letter {
  font-feature-settings: "palt";
}
.modal__content_workshop__inner__block__list01__wrap .title.color_05 {
  color: #004aad;
  background: none;
  padding-bottom: 3px;
  padding-left: 0;
}
.modal__content_workshop__inner__block__list01__wrap .title.color_06 {
  color: #004aad;
  background: none;
  padding-left: 0;
  margin-top: 4px;
  margin-bottom: 8px;
  align-items: flex-start;
}
.modal__content_workshop__inner__block__list01__wrap .title.color_06::before {
  content: "●";
  display: inline-block;
  margin-right: 4px;
}
.modal__content_workshop__inner__block__list01__wrap p + p {
  margin-top: 16px;
}
.modal__content_workshop__inner__block__list01__wrap p.large {
  font-size: 24px;
  font-weight: bold;
  line-height: 1.5;
}
.modal__content_workshop__inner__block__list01__wrap p.large::first-letter {
  font-feature-settings: "palt";
}
.modal__content_workshop__inner__block__list01__wrap p.sub_01 {
  color: #004aad;
  font-weight: bold;
  padding-top: 0 !important;
  margin-top: 0 !important;
}
.modal__content_workshop__inner__block__list01__wrap .pc_margin {
  margin-left: 30px;
}
.modal__content_workshop__inner__block__list01 + .modal__content_workshop__inner__block__list02 {
  margin-top: 48px;
}
.modal__content_workshop__inner__block__list02 dl {
  margin-left: 32px;
}
.modal__content_workshop__inner__block__list02 dl dt {
  font-size: 24px;
  padding: 0 0 0 36px;
  color: #763180;
  font-weight: bold;
  margin-bottom: 8px;
  background: url("../img/workshop/popup_icn_cursor.png") left center/auto no-repeat;
}
.modal__content_workshop__inner__block__list02 dl dd {
  font-size: 16px;
}
.modal__content_workshop__inner__block__list02 dl dd + dt {
  margin-top: 16px;
}
.modal__content_workshop__inner__block__list03 li {
  font-weight: bold;
  margin-bottom: 8px;
  padding-left: 36px;
  display: flex;
  align-items: center;
  background: url("../img/workshop/popup_icn_check_01.png") 4px 1px/24px 21px no-repeat;
  line-height: 1.5;
  margin-bottom: 16px;
}
.modal__content_workshop__inner__block__list03 li.st {
  background: url("../img/workshop/popup_icn_check_02.png") 4px 1px/24px 21px no-repeat !important;
  color: #ff6400 !important;
}
.modal__content_workshop__inner__block__list03.color_02 li {
  background-image: url("../img/workshop/popup_icn_check_03.png");
}
.modal__content_workshop__inner__block__list03.color_02 li.st {
  background: url("../img/workshop/popup_icn_check_04.png") 4px 1px/24px 21px no-repeat !important;
  color: #ff5757 !important;
}
.modal__content_workshop__inner__block__list04 {
  margin-top: 32px;
  display: flex;
  align-items: flex-start;
}
.modal__content_workshop__inner__block__list04 img {
  float: left;
  margin: 0 32px;
}
.modal__content_workshop__inner__block__list04 dl dt {
  color: #003366;
  font-weight: bold;
  font-size: 24px;
  display: flex;
}
.modal__content_workshop__inner__block__list04 dl dt span {
  align-items: flex-start;
  width: 24px;
  height: 24px;
  border-radius: 24px;
  background: #036;
  color: #fff;
  line-height: 1;
  font-size: 14px;
  margin-top: 10px;
  margin-right: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.modal__content_workshop__inner__block__list04 dl dd {
  font-size: 16px;
  padding-left: 32px;
}
.modal__content_workshop__inner__block__list04 dl dd::first-letter {
  font-feature-settings: "palt";
}
.modal__content_workshop__inner__block__list04 dl dd + dt {
  margin-top: 16px;
}
.modal__content_workshop__inner__block__list05 {
  margin-top: 32px;
  overflow: hidden;
  position: relative;
  display: flex;
  align-items: center;
}
.modal__content_workshop__inner__block__list05 img {
  margin: 0 32px;
}
.modal__content_workshop__inner__block__list05 .title {
  font-size: 24px;
  color: #ff00b8;
  font-weight: bold;
  margin-bottom: 8px;
  padding-bottom: 3px;
  line-height: 1.3;
}
.modal__content_workshop__inner__block__list06 {
  margin-top: 32px;
  overflow: hidden;
}
.modal__content_workshop__inner__block__list06 .title {
  font-size: 24px;
  color: #ff751f;
  font-weight: bold;
  margin-bottom: 8px;
  padding-left: 32px;
  display: flex;
  align-items: center;
  background: url("../img/workshop/popup_icn_cursor_02.png") left 4px/25px auto no-repeat;
  line-height: 1.3;
  margin-bottom: 32px;
}
.modal__content_workshop__inner__block__list06__wrap {
  display: flex;
}
.modal__content_workshop__inner__block__list06__wrap__img {
  width: 180px;
  margin: 0 32px;
}
.modal__content_workshop__inner__block__list06__wrap__txt {
  width: calc(100% - 180px);
}
.modal__content_workshop__inner__block__list06__wrap__txt .sub {
  border-left: 6px solid #ff751f;
  font-size: 24px;
  color: #ff751f;
  font-weight: bold;
  padding-left: 8px;
  margin-bottom: 16px;
  margin-top: 8px;
  line-height: 1.3;
}
.modal__content_workshop__inner__block__list06__wrap__txt p + .sub {
  margin-top: 32px;
}
.modal__content_workshop__inner__block__list06__wrap__txt ul li {
  margin-top: 4px;
  list-style-type: disc;
  margin-left: 20px;
}
.modal__content_workshop__inner__block__list06__wrap__txt img {
  margin-top: 24px;
}
.modal__content_workshop__inner__btn {
  background: #bfd3bc;
  padding: 24px 40px;
  text-align: center;
}
.modal__content_workshop__inner__btn img {
  display: block;
  max-width: 100%;
  width: auto;
}
.modal__content_workshop__inner__btn a {
  background: #29741d;
  display: flex;
  color: #fff;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  font-size: 32px;
  font-weight: bold;
  height: 80px;
  margin-top: 24px;
  border-radius: 32px;
  transition: 0.3s;
}
.modal__content_workshop__inner__btn a:hover {
  opacity: 0.8;
}
.modal__content_workshop__inner__btn.color_01 {
  background: #c8e6e1;
}
.modal__content_workshop__inner__btn.color_01 a {
  background: #416f69;
}
.modal__content_workshop__inner__btn.color_02 {
  background: #cdeafc;
}
.modal__content_workshop__inner__btn.color_02 a {
  background: #004aad;
}
.modal__content_workshop__inner__btn.color_03 {
  background: #d0dae3;
}
.modal__content_workshop__inner__btn.color_03 a {
  background: #003366;
}
.modal__content_workshop__inner__btn.color_04 {
  background: #cde9fe;
}
.modal__content_workshop__inner__btn.color_04 a {
  background: #003366;
}
.modal__content_workshop__inner__btn .note {
  font-size: 16px;
  line-height: 1.75;
  font-weight: bold;
  color: #c00;
  padding-top: 8px;
  display: block;
}
.modal__content_workshop .js-modal-close {
  position: absolute;
  top: 20px;
  right: 46px;
  width: 40px;
  height: 26px;
  cursor: pointer;
}

@media (width <= 768px) {
  .modal__content {
    width: 83.334%;
    font-size: min(32px, 4.1666666667vw);
    padding: 0;
    border: min(8px, 1.0416666667vw) solid #cecece;
    border-radius: min(32px, 4.1666666667vw);
    height: 100%;
    max-height: auto;
    height: auto;
  }
  .modal__content__inner {
    padding: min(80px, 10.4166666667vw) min(40px, 5.2083333333vw);
    max-height: 80vh;
  }
  .modal__content__inner strong {
    font-size: min(32px, 4.1666666667vw);
    border-radius: min(16px, 2.0833333333vw);
    padding: min(4px, 0.5208333333vw) min(16px, 2.0833333333vw);
  }
  .modal__content__inner p {
    font-size: min(32px, 4.1666666667vw);
    padding-top: min(24px, 3.125vw);
  }
  .modal__content__inner p.large {
    font-size: min(32px, 4.1666666667vw);
    padding-top: min(40px, 5.2083333333vw);
  }
  .modal__content__inner p + strong {
    margin-top: min(48px, 6.25vw);
  }
  .modal__content .js-modal-close {
    position: absolute;
    top: min(20px, 2.6041666667vw);
    right: min(20px, 2.6041666667vw);
    width: min(60px, 7.8125vw);
    height: min(39px, 5.078125vw);
    cursor: pointer;
  }
  .modal__content_workshop {
    padding: 0;
    border-radius: min(32px, 4.1666666667vw);
    border: min(8px, 1.0416666667vw) solid var(--color-area3);
    height: 100%;
  }
  .modal__content_workshop__inner {
    padding: min(80px, 10.4166666667vw) min(40px, 5.2083333333vw);
    height: 100%;
  }
  .modal__content_workshop__inner__head {
    margin-bottom: min(48px, 6.25vw);
  }
  .modal__content_workshop__inner__block {
    margin-bottom: min(48px, 6.25vw);
  }
  .modal__content_workshop__inner__block__title {
    font-size: min(32px, 4.1666666667vw);
    padding: min(8px, 1.0416666667vw) min(16px, 2.0833333333vw);
    border-radius: min(16px, 2.0833333333vw);
    margin-bottom: min(32px, 4.1666666667vw);
  }
  .modal__content_workshop__inner__block__sub {
    border-left: min(6px, 0.78125vw) solid #29741d;
    font-size: min(32px, 4.1666666667vw);
    padding-left: min(8px, 1.0416666667vw);
    margin-bottom: min(32px, 4.1666666667vw);
  }
  .modal__content_workshop__inner__block p {
    font-size: min(32px, 4.1666666667vw);
    line-height: 1.75;
  }
  .modal__content_workshop__inner__block__list01 {
    margin-top: min(48px, 6.25vw);
  }
  .modal__content_workshop__inner__block__list01__wrap {
    margin-bottom: min(32px, 4.1666666667vw);
    padding-bottom: min(32px, 4.1666666667vw);
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .modal__content_workshop__inner__block__list01__wrap img {
    float: none;
    margin: 0 0 min(16px, 2.0833333333vw);
    width: 25%;
  }
  .modal__content_workshop__inner__block__list01__wrap .title {
    width: 68%;
    font-size: min(32px, 4.1666666667vw);
    line-height: 1.5;
    margin-bottom: 0;
    padding-left: 4.8vw;
    display: flex;
    align-items: center;
    background: url("../img/workshop/popup_icn_cursor.png") left 1vw/4vw auto no-repeat;
  }
  .modal__content_workshop__inner__block__list01__wrap .title.color_01 {
    color: #29741d;
    background: url("../img/workshop/popup_icn_note.png") left 1vw/4vw auto no-repeat;
  }
  .modal__content_workshop__inner__block__list01__wrap .title.color_04 {
    background: url("../img/workshop/popup_icn_cursor_02.png") left 1.4vw/4vw auto no-repeat;
    padding-left: 4.8vw;
  }
  .modal__content_workshop__inner__block__list01__wrap .title.color_04 .large {
    font-size: min(32px, 4.1666666667vw);
    margin-left: -4.8vw;
    margin-top: 1vw;
  }
  .modal__content_workshop__inner__block__list01__wrap .title.color_05 {
    padding-bottom: 0;
  }
  .modal__content_workshop__inner__block__list01__wrap .title.color_06 {
    margin-top: 0;
    margin-bottom: 0;
  }
  .modal__content_workshop__inner__block__list01__wrap p + p {
    margin-top: min(32px, 4.1666666667vw);
  }
  .modal__content_workshop__inner__block__list01__wrap p.large {
    font-size: min(32px, 4.1666666667vw);
  }
  .modal__content_workshop__inner__block__list01 + .modal__content_workshop__inner__block__list02 {
    margin-top: min(48px, 6.25vw);
  }
  .modal__content_workshop__inner__block__list01 .pc_margin {
    margin-left: 0;
    width: 100%;
  }
  .modal__content_workshop__inner__block__list02 dl {
    margin-left: 0;
  }
  .modal__content_workshop__inner__block__list02 dl dt {
    font-size: min(32px, 4.1666666667vw);
    padding: 0 0 0 4.8vw;
    margin-bottom: min(16px, 2.0833333333vw);
    background: url("../img/workshop/popup_icn_cursor.png") left 1.5vw/4vw auto no-repeat;
  }
  .modal__content_workshop__inner__block__list02 dl dd {
    font-size: min(32px, 4.1666666667vw);
  }
  .modal__content_workshop__inner__block__list02 dl dd + dt {
    margin-top: min(32px, 4.1666666667vw);
  }
  .modal__content_workshop__inner__block__list03 li {
    font-weight: bold;
    margin-bottom: 8px;
    padding-left: 36px;
    display: flex;
    align-items: center;
    background: url("../img/workshop/popup_icn_check_01.png") 4px 1px/24px 21px no-repeat;
    line-height: 1.5;
    margin-bottom: 16px;
  }
  .modal__content_workshop__inner__block__list03 li.st {
    background: url("../img/workshop/popup_icn_check_02.png") 4px 1px/24px 21px no-repeat !important;
    color: #ff6400 !important;
  }
  .modal__content_workshop__inner__block__list03.color_02 li {
    background-image: url("../img/workshop/popup_icn_check_03.png");
  }
  .modal__content_workshop__inner__block__list04 {
    margin-top: min(48px, 6.25vw);
    display: block;
  }
  .modal__content_workshop__inner__block__list04 img {
    display: none;
  }
  .modal__content_workshop__inner__block__list04 dl dt {
    font-size: min(32px, 4.1666666667vw);
  }
  .modal__content_workshop__inner__block__list04 dl dt span {
    width: min(32px, 4.1666666667vw);
    height: min(32px, 4.1666666667vw);
    border-radius: min(32px, 4.1666666667vw);
    font-size: min(24px, 3.125vw);
    margin-top: min(12px, 1.5625vw);
    margin-right: min(8px, 1.0416666667vw);
  }
  .modal__content_workshop__inner__block__list04 dl dd {
    font-size: min(32px, 4.1666666667vw);
    padding-left: min(40px, 5.2083333333vw);
  }
  .modal__content_workshop__inner__block__list04 dl dd + dt {
    margin-top: min(24px, 3.125vw);
  }
  .modal__content_workshop__inner__block__list05 {
    margin-top: min(48px, 6.25vw);
    flex-wrap: wrap;
  }
  .modal__content_workshop__inner__block__list05 img {
    margin: 0 0 min(16px, 2.0833333333vw);
    width: 25%;
  }
  .modal__content_workshop__inner__block__list05__wrap .title {
    width: 100%;
    font-size: min(32px, 4.1666666667vw);
    line-height: 1.5;
    padding-left: 4.8vw;
  }
  .modal__content_workshop__inner__block__list05__wrap p {
    display: none;
  }
  .modal__content_workshop__inner__block__list06 {
    margin-top: 0;
  }
  .modal__content_workshop__inner__block__list06 .title {
    font-size: min(32px, 4.1666666667vw);
    line-height: 1.5;
    margin-bottom: min(32px, 4.1666666667vw);
    padding-left: 4.8vw;
    display: flex;
    align-items: center;
    background: url("../img/workshop/popup_icn_cursor_02.png") left 1.4vw/4vw auto no-repeat;
    padding-left: 4.8vw;
  }
  .modal__content_workshop__inner__block__list06__wrap {
    display: block;
  }
  .modal__content_workshop__inner__block__list06__wrap__img {
    width: 100%;
    margin: 0 0 min(48px, 6.25vw);
  }
  .modal__content_workshop__inner__block__list06__wrap__txt {
    width: 100%;
  }
  .modal__content_workshop__inner__block__list06__wrap__txt .sub {
    border-left: min(6px, 0.78125vw) solid #ff751f;
    font-size: min(32px, 4.1666666667vw);
    padding-left: min(8px, 1.0416666667vw);
    margin-bottom: min(32px, 4.1666666667vw);
  }
  .modal__content_workshop__inner__block__list06__wrap__txt p + .sub {
    margin-top: min(32px, 4.1666666667vw);
  }
  .modal__content_workshop__inner__block__list06__wrap__txt ul li {
    font-size: min(32px, 4.1666666667vw);
    margin-left: min(32px, 4.1666666667vw);
  }
  .modal__content_workshop__inner__block__list06__wrap__txt img {
    margin-top: min(32px, 4.1666666667vw);
  }
  .modal__content_workshop__inner__btn {
    background: #bfd3bc;
    padding: min(16px, 2.0833333333vw) min(24px, 3.125vw);
  }
  .modal__content_workshop__inner__btn a {
    font-size: min(48px, 6.25vw);
    height: min(96px, 12.5vw);
    margin-top: min(16px, 2.0833333333vw);
    border-radius: min(32px, 4.1666666667vw);
  }
  .modal__content_workshop__inner__btn a:hover {
    opacity: 1;
  }
  .modal__content_workshop__inner__btn .note {
    font-size: min(24px, 3.125vw);
    padding-top: min(16px, 2.0833333333vw);
  }
  .modal__content_workshop__inner__btn .note br {
    display: none;
  }
  .modal__content_workshop .js-modal-close {
    position: absolute;
    top: min(20px, 2.6041666667vw);
    right: min(20px, 2.6041666667vw);
    width: min(60px, 7.8125vw);
    height: min(39px, 5.078125vw);
    cursor: pointer;
  }
}
.header {
  position: fixed;
  top: 0;
  left: 0;
  height: 120px;
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-inline: auto;
  padding: 0 2%;
  box-sizing: border-box;
  z-index: 2;
  transition: 0.6s;
  background: var(--color-white);
}
.header__logo {
  width: 178px;
  height: auto;
  z-index: 1;
}
.header__nav {
  width: calc(100% - 178px);
}
.header__nav__main {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 4px 12px;
}
.header__nav__main a {
  color: var(--color-text);
  text-decoration: none;
  position: relative;
  line-height: 1;
  font-weight: 500;
  padding: 8px 8px 8px 12px;
  font-size: 16px;
}
.header__nav__main a::before {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  content: "";
  width: 8px;
  height: 6px;
  background: url("../img/cursor.svg");
  display: block;
  transition: 0.3s;
}
@media (769px <= width) {
  .header__nav__main a:hover::before {
    transform: translateY(calc(-50% + 4px));
  }
}
@media (width <= 1200px) {
  .header__nav__main {
    max-width: 640px;
    width: 100%;
    margin-inline-start: auto;
  }
}
.header__nav__toggle {
  display: none;
}

@media (width <= 768px) {
  .header {
    height: min(120px, 15.625vw);
    padding: 0 4%;
  }
  .header__logo {
    width: min(180px, 23.4375vw);
  }
  .header__nav__main {
    position: absolute;
    left: 0;
    top: -120vh;
    width: 100%;
    height: 100vh;
    max-width: none;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    gap: 4px 12px;
    background: rgba(51, 51, 51, 0.9);
    z-index: 1;
    transition: 0.4s;
  }
  .header__nav__main strong {
    font-size: min(48px, 6.25vw);
    margin-bottom: min(32px, 4.1666666667vw);
    margin-top: min(24px, 3.125vw);
    color: var(--color-white);
  }
  .header__nav__main a {
    color: var(--color-white);
    font-size: min(32px, 4.1666666667vw);
    border-bottom: 2px solid #fff;
    width: 75%;
    font-weight: 400;
    padding: min(32px, 4.1666666667vw) 0 min(32px, 4.1666666667vw) min(32px, 4.1666666667vw);
    display: block;
  }
  .header__nav__main a::before {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-45%);
    content: "";
    width: min(20px, 2.6041666667vw);
    height: min(15px, 1.953125vw);
    background: url("../img/cursor_wh.svg") left center/auto no-repeat;
  }
  .header__nav__main.open {
    top: 0;
  }
  .header__nav__toggle {
    display: block;
    width: min(80px, 10.4166666667vw);
    height: min(51px, 6.640625vw);
    position: absolute;
    cursor: pointer;
    right: min(33px, 4.296875vw);
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
  }
  .header__nav__toggle span {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    height: min(5px, 0.6510416667vw);
    width: 100%;
    background: var(--color-black);
    display: block;
    transition: 0.3s;
    transform-origin: center;
  }
  .header__nav__toggle span:nth-child(1) {
    top: 0%;
  }
  .header__nav__toggle span:nth-child(2) {
    top: 50%;
  }
  .header__nav__toggle span:nth-child(3) {
    top: 100%;
  }
  .header__nav__toggle.open span {
    background: var(--color-white);
  }
  .header__nav__toggle.open span:nth-child(1) {
    top: 46%;
    transform: rotate(30deg);
    left: 0%;
  }
  .header__nav__toggle.open span:nth-child(2) {
    width: 0;
  }
  .header__nav__toggle.open span:nth-child(3) {
    top: 46%;
    transform: rotate(-30deg);
    left: 0%;
  }
}
#main {
  padding-top: 120px;
}
@media (width <= 768px) {
  #main {
    padding-top: min(120px, 15.625vw);
  }
}

.section_frame {
  width: 100%;
  margin-inline: auto;
}

.head {
  max-width: 1200px;
  width: 91.667%;
  margin-inline: auto;
  margin-top: 56px;
}
.head h1 img {
  display: block;
  margin: 0 auto;
  transition: 0.6s;
  transform: translateY(20px);
  opacity: 0;
}
.head__block {
  max-width: 1000px;
  width: 100%;
  margin-inline: auto;
  border-top: 4px solid #ececec;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 64px;
  margin-bottom: 64px;
  padding-top: 64px;
}
.head__block h2 {
  width: 100%;
  font-size: 32px;
  font-family: var(--font-rounded);
}
.head__block p {
  width: 47%;
  font-size: 16px;
  line-height: 1.75;
  margin-top: 8px;
}
.head__shuttlebus {
  max-width: 1000px;
  width: 100%;
  margin-inline: auto;
  display: flex;
  gap: 16px;
  justify-content: space-between;
  margin-top: 64px;
  margin-bottom: 64px;
  padding: 16px;
  border-radius: 16px;
  background: var(--color-area1-bg);
  align-items: center;
}
.head__shuttlebus a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 240px;
  height: 72px;
  border-radius: 18px;
  font-size: 16px;
  line-height: 1;
  text-decoration: none;
  font-weight: 600;
  transition: 0.4s;
  border: 2px solid var(--color-area1);
  color: var(--color-white);
  background: var(--color-area1);
  text-align: center;
}
.head__shuttlebus a:hover {
  color: var(--color-area1);
  background: var(--color-white);
}
.head__shuttlebus h3 {
  width: 100%;
  font-size: 18px;
  font-family: var(--font-rounded);
  color: var(--color-area1);
}
.head__shuttlebus p {
  width: 100%;
  font-size: 16px;
  line-height: 1.75;
  margin-top: 0px;
}
.head.loaded h1 img {
  transform: translateY(0);
  opacity: 1;
}

@media (width <= 768px) {
  .head {
    width: 83.334%;
    margin-top: min(96px, 12.5vw);
  }
  .head__block {
    margin-top: min(80px, 10.4166666667vw);
    margin-bottom: min(80px, 10.4166666667vw);
    padding-top: min(80px, 10.4166666667vw);
  }
  .head__block h2 {
    font-size: min(48px, 6.25vw);
    margin-bottom: min(40px, 5.2083333333vw);
  }
  .head__block p {
    width: 100%;
    font-size: min(32px, 4.1666666667vw);
    margin-top: min(16px, 2.0833333333vw);
  }
  .head__shuttlebus {
    display: block;
    margin-top: min(64px, 8.3333333333vw);
    margin-bottom: min(64px, 8.3333333333vw);
    padding: min(32px, 4.1666666667vw);
    border-radius: min(32px, 4.1666666667vw);
  }
  .head__shuttlebus a {
    width: 100%;
    height: min(100px, 13.0208333333vw);
    border-radius: min(32px, 4.1666666667vw);
    font-size: min(32px, 4.1666666667vw);
    margin-top: min(20px, 2.6041666667vw);
  }
  .head__shuttlebus h3 {
    font-size: min(30px, 3.90625vw);
  }
  .head__shuttlebus p {
    margin-top: min(10px, 1.3020833333vw);
    font-size: min(26px, 3.3854166667vw);
  }
}
.workshop {
  background: var(--color-area2-bg) url("../img/bg_img.png") center 20px/min(1200px, 100vw) auto no-repeat;
}
.workshop__frame {
  max-width: 1000px;
  width: 90%;
  margin-inline: auto;
  padding: 64px 0;
}
.workshop__frame h2 {
  font-family: var(--font-rounded);
  font-size: 70px;
  margin-bottom: 64px;
}
.workshop__frame__block li {
  border: 8px solid var(--color-area3);
  background: var(--color-white);
  border-radius: 40px;
  padding: 24px;
  display: flex;
  align-items: center;
  gap: 2.564%;
}
.workshop__frame__block li .thumbnail {
  width: 42.735%;
}
.workshop__frame__block li .thumbnail img {
  border-radius: 40px;
}
.workshop__frame__block li .txt {
  width: 54.701%;
}
.workshop__frame__block li .txt small {
  font-size: 20px;
  display: block;
  font-weight: bold;
}
.workshop__frame__block li .txt h3 {
  font-size: 24px;
  padding-top: 8px;
}
.workshop__frame__block li .txt p {
  font-size: 16px;
  padding-top: 16px;
  line-height: 1.75;
}
.workshop__frame__block li .txt p .small {
  display: block;
  font-size: 14px;
  margin-top: 4px;
}
.workshop__frame__block li .txt .schedule {
  display: inline-block;
  background: var(--color-area3-contentsbg);
  border-radius: 16px;
  margin-top: 24px;
  padding: 8px 12px;
  font-weight: bold;
  font-size: 24px;
}
.workshop__frame__block li .txt .cursor {
  display: block;
  color: var(--color-area3);
  font-weight: bold;
  font-size: 16px;
  margin-top: 16px;
  background: url("../img/workshop/cursor.png") left center/22px no-repeat;
  padding-left: 24px;
  cursor: pointer;
  transition: 0.3s;
}
.workshop__frame__block li .txt .cursor:hover {
  opacity: 0.8;
}
.workshop__frame__block li + li {
  margin-top: 48px;
}
.workshop__frame__regist {
  margin-top: 48px;
  text-align: center;
}
.workshop__frame__regist p {
  font-size: 16px;
  line-height: 1.75;
}
.workshop__frame__regist a {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 72px;
  width: 100%;
  border-radius: 32px;
  font-size: 32px;
  line-height: 1;
  text-decoration: none;
  font-weight: 600;
  margin-top: 8px;
  transition: 0.4s;
  border: 2px solid var(--color-area3);
  color: var(--color-white);
  background: var(--color-area3);
  text-align: center;
}
.workshop__frame__regist a:hover {
  color: var(--color-area3);
  background: var(--color-white);
}
.workshop__frame__regist .note {
  font-size: 16px;
  line-height: 1.75;
  font-weight: bold;
  color: #c00;
  padding-top: 8px;
  display: block;
}

@media (width <= 768px) {
  .workshop__frame {
    width: 83.334%;
    padding: min(80px, 10.4166666667vw) 0;
  }
  .workshop__frame h2 {
    font-size: min(64px, 8.3333333333vw);
    margin-bottom: min(80px, 10.4166666667vw);
  }
  .workshop__frame__block li {
    border: min(8px, 1.0416666667vw) solid var(--color-area3);
    border-radius: min(48px, 6.25vw);
    padding: min(40px, 5.2083333333vw);
    display: block;
  }
  .workshop__frame__block li .thumbnail {
    width: 100%;
  }
  .workshop__frame__block li .thumbnail img {
    border-radius: min(40px, 5.2083333333vw);
  }
  .workshop__frame__block li .txt {
    width: 100%;
  }
  .workshop__frame__block li .txt small {
    font-size: min(32px, 4.1666666667vw);
    margin-top: min(32px, 4.1666666667vw);
  }
  .workshop__frame__block li .txt h3 {
    font-size: min(32px, 4.1666666667vw);
    padding-top: min(16px, 2.0833333333vw);
  }
  .workshop__frame__block li .txt p {
    font-size: min(32px, 4.1666666667vw);
    padding-top: min(32px, 4.1666666667vw);
    line-height: 1.75;
  }
  .workshop__frame__block li .txt p .small {
    font-size: min(24px, 3.125vw);
  }
  .workshop__frame__block li .txt .schedule {
    display: block;
    border-radius: min(16px, 2.0833333333vw);
    margin-top: min(24px, 3.125vw);
    padding: min(8px, 1.0416666667vw) min(12px, 1.5625vw);
    font-size: min(32px, 4.1666666667vw);
  }
  .workshop__frame__block li .txt .cursor {
    font-size: min(32px, 4.1666666667vw);
    margin-top: min(16px, 2.0833333333vw);
    background: url("../img/workshop/cursor.png") left center/min(32px, 4.1666666667vw) no-repeat;
    padding-left: min(36px, 4.6875vw);
  }
  .workshop__frame__block li .txt .cursor:hover {
    opacity: 1;
  }
  .workshop__frame__block li + li {
    margin-top: min(40px, 5.2083333333vw);
  }
  .workshop__frame__regist {
    margin-top: min(40px, 5.2083333333vw);
    text-align: left;
  }
  .workshop__frame__regist p {
    font-size: min(32px, 4.1666666667vw);
  }
  .workshop__frame__regist a {
    height: auto;
    border-radius: min(32px, 4.1666666667vw);
    font-size: min(48px, 6.25vw);
    margin-top: min(48px, 6.25vw);
    padding: min(16px, 2.0833333333vw);
    line-height: 1.3;
  }
  .workshop__frame__regist .note {
    font-size: min(32px, 4.1666666667vw);
    padding-top: min(16px, 2.0833333333vw);
  }
  .workshop__frame__regist .note br {
    display: none;
  }
}
.experience {
  background: url("../img/bg_img.png") center 20px/min(1200px, 100vw) auto no-repeat;
}
.experience__frame {
  max-width: 1000px;
  width: 90%;
  margin-inline: auto;
  padding: 64px 0;
}
.experience__frame h2 {
  font-family: var(--font-rounded);
  font-size: 70px;
  margin-bottom: 64px;
}
.experience__frame__block {
  display: flex;
  flex-wrap: wrap;
  gap: 48px 7%;
}
.experience__frame__block li {
  width: 46.5%;
  border: 8px solid var(--color-area1);
  background: var(--color-white);
  border-radius: 32px;
  padding: 24px;
}
.experience__frame__block li .thumbnail img {
  border-radius: 32px;
}
.experience__frame__block li .txt small {
  font-size: 20px;
  padding-top: 16px;
  display: block;
  font-weight: bold;
}
.experience__frame__block li .txt h3 {
  font-size: 24px;
  padding-top: 8px;
}
.experience__frame__block li .txt p {
  font-size: 16px;
  padding-top: 16px;
  line-height: 1.75;
}
.experience__frame__block li .txt p.info {
  font-size: 16px;
  padding: 8px 16px;
  background: #ececec;
  margin-top: 16px;
  font-weight: bold;
  border-radius: 16px;
}
.experience__frame__block li .txt .schedule {
  display: block;
  background: var(--color-area1-contentsbg);
  border-radius: 16px;
  margin-top: 24px;
  padding: 8px 12px;
  font-weight: bold;
  font-size: 24px;
}
.experience__frame__block li .txt .schedule .indent {
  font-size: 18px;
  display: block;
  margin-left: 1rem;
  margin-bottom: 4px;
}
.experience__frame__regist {
  margin-top: 48px;
  text-align: center;
}
.experience__frame__regist p {
  font-size: 16px;
  line-height: 1.75;
}
.experience__frame__regist a {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 72px;
  width: 100%;
  border-radius: 32px;
  font-size: 32px;
  line-height: 1;
  text-decoration: none;
  font-weight: 600;
  margin-top: 8px;
  transition: 0.4s;
  border: 2px solid var(--color-area1);
  color: var(--color-white);
  background: var(--color-area1);
  text-align: center;
}
.experience__frame__regist a:hover {
  color: var(--color-area1);
  background: var(--color-white);
}
.experience__frame__regist .note {
  font-size: 16px;
  line-height: 1.75;
  font-weight: bold;
  color: #c00;
  padding-top: 8px;
  display: block;
}

@media (width <= 768px) {
  .experience__frame {
    width: 83.334%;
    padding: min(80px, 10.4166666667vw) 0;
  }
  .experience__frame h2 {
    font-size: min(64px, 8.3333333333vw);
    margin-bottom: min(80px, 10.4166666667vw);
  }
  .experience__frame__block {
    display: block;
  }
  .experience__frame__block li {
    width: 100%;
    border: min(8px, 1.0416666667vw) solid var(--color-area1);
    border-radius: min(48px, 6.25vw);
    padding: min(40px, 5.2083333333vw);
    display: block;
  }
  .experience__frame__block li .thumbnail {
    width: 100%;
  }
  .experience__frame__block li .thumbnail img {
    border-radius: min(40px, 5.2083333333vw);
  }
  .experience__frame__block li .txt {
    width: 100%;
  }
  .experience__frame__block li .txt small {
    font-size: min(32px, 4.1666666667vw);
    margin-top: min(32px, 4.1666666667vw);
    padding-top: 0;
  }
  .experience__frame__block li .txt h3 {
    font-size: min(32px, 4.1666666667vw);
    padding-top: min(16px, 2.0833333333vw);
  }
  .experience__frame__block li .txt p {
    font-size: min(32px, 4.1666666667vw);
    padding-top: min(32px, 4.1666666667vw);
    line-height: 1.75;
  }
  .experience__frame__block li .txt p.info {
    font-size: min(32px, 4.1666666667vw);
    padding: min(24px, 3.125vw);
    line-height: 1;
    margin-top: min(24px, 3.125vw);
    border-radius: min(24px, 3.125vw);
  }
  .experience__frame__block li .txt .schedule {
    display: block;
    border-radius: min(16px, 2.0833333333vw);
    margin-top: min(24px, 3.125vw);
    padding: min(8px, 1.0416666667vw) min(12px, 1.5625vw);
    font-size: min(32px, 4.1666666667vw);
  }
  .experience__frame__block li .txt .schedule .indent {
    font-size: min(24px, 3.125vw);
    margin-left: min(16px, 2.0833333333vw);
  }
  .experience__frame__block li + li {
    margin-top: min(40px, 5.2083333333vw);
  }
  .experience__frame__regist {
    margin-top: min(40px, 5.2083333333vw);
    text-align: left;
  }
  .experience__frame__regist p {
    font-size: min(32px, 4.1666666667vw);
  }
  .experience__frame__regist a {
    height: auto;
    border-radius: min(32px, 4.1666666667vw);
    font-size: min(48px, 6.25vw);
    margin-top: min(48px, 6.25vw);
    padding: min(16px, 2.0833333333vw);
    line-height: 1.3;
  }
  .experience__frame__regist .note {
    font-size: min(32px, 4.1666666667vw);
    padding-top: min(16px, 2.0833333333vw);
  }
  .experience__frame__regist .note br {
    display: none;
  }
}
.performance {
  background: var(--color-area1-bg) url("../img/bg_img.png") center 20px/min(1200px, 100vw) auto no-repeat;
}
.performance__frame {
  max-width: 1000px;
  width: 90%;
  margin-inline: auto;
  padding: 64px 0;
}
.performance__frame h2 {
  font-family: var(--font-rounded);
  font-size: 70px;
  margin-bottom: 64px;
}
.performance__frame__block li {
  border: 8px solid var(--color-area2);
  background: var(--color-white);
  border-radius: 40px;
  padding: 24px;
  display: flex;
  align-items: center;
  gap: 2.564%;
}
.performance__frame__block li .thumbnail {
  width: 42.735%;
}
.performance__frame__block li .thumbnail img {
  border-radius: 40px;
}
.performance__frame__block li .txt {
  width: 54.701%;
}
.performance__frame__block li .txt small {
  font-size: 20px;
  display: block;
  font-weight: bold;
}
.performance__frame__block li .txt h3 {
  font-size: 24px;
  padding-top: 8px;
}
.performance__frame__block li .txt .schedule {
  display: inline-block;
  background: var(--color-area2-contentsbg);
  border-radius: 16px;
  margin-top: 24px;
  padding: 8px 12px;
  font-weight: bold;
  font-size: 24px;
}
.performance__frame__block li .txt dl {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  font-weight: bold;
  margin-top: 16px;
}
.performance__frame__block li .txt dl dt {
  width: 120px;
  background: #ececec;
  border-radius: 8px;
  text-align: center;
  font-size: 16px;
  padding: 2px;
  box-sizing: border-box;
}
.performance__frame__block li .txt dl dd {
  width: calc(100% - 132px);
}
.performance__frame__block li .txt p {
  font-size: 16px;
  padding-top: 16px;
  line-height: 1.75;
}
.performance__frame__block li + li {
  margin-top: 48px;
}

@media (width <= 768px) {
  .performance__frame {
    width: 83.334%;
    padding: min(80px, 10.4166666667vw) 0;
  }
  .performance__frame h2 {
    font-size: min(64px, 8.3333333333vw);
    margin-bottom: min(80px, 10.4166666667vw);
  }
  .performance__frame__block li {
    border: min(8px, 1.0416666667vw) solid var(--color-area2);
    border-radius: min(48px, 6.25vw);
    padding: min(40px, 5.2083333333vw);
    display: block;
  }
  .performance__frame__block li .thumbnail {
    width: 100%;
  }
  .performance__frame__block li .thumbnail img {
    border-radius: min(40px, 5.2083333333vw);
  }
  .performance__frame__block li .txt {
    width: 100%;
  }
  .performance__frame__block li .txt small {
    font-size: min(32px, 4.1666666667vw);
    margin-top: min(32px, 4.1666666667vw);
  }
  .performance__frame__block li .txt h3 {
    font-size: min(32px, 4.1666666667vw);
    padding-top: min(16px, 2.0833333333vw);
  }
  .performance__frame__block li .txt .schedule {
    display: block;
    border-radius: min(16px, 2.0833333333vw);
    margin-top: min(24px, 3.125vw);
    padding: min(8px, 1.0416666667vw) min(12px, 1.5625vw);
    font-size: min(32px, 4.1666666667vw);
  }
  .performance__frame__block li .txt dl {
    margin-top: min(24px, 3.125vw);
    gap: min(12px, 1.5625vw);
  }
  .performance__frame__block li .txt dl dt {
    width: min(180px, 23.4375vw);
    border-radius: min(8px, 1.0416666667vw);
    font-size: min(32px, 4.1666666667vw);
    line-height: 1;
    padding: min(8px, 1.0416666667vw);
  }
  .performance__frame__block li .txt dl dd {
    width: calc(100% - min(192px, 25vw));
    font-size: min(32px, 4.1666666667vw);
  }
  .performance__frame__block li .txt p {
    font-size: min(32px, 4.1666666667vw);
    padding-top: min(32px, 4.1666666667vw);
    line-height: 1.75;
  }
  .performance__frame__block li .txt .schedule {
    display: block;
    border-radius: min(16px, 2.0833333333vw);
    margin-top: min(24px, 3.125vw);
    padding: min(8px, 1.0416666667vw) min(12px, 1.5625vw);
    font-size: min(32px, 4.1666666667vw);
  }
  .performance__frame__block li + li {
    margin-top: min(40px, 5.2083333333vw);
  }
}
.wellbeing {
  background: var(--color-area3-bg) url("../img/bg_img.png") center 20px/min(1200px, 100vw) auto no-repeat;
}
.wellbeing__frame {
  max-width: 1000px;
  width: 90%;
  margin-inline: auto;
  padding: 64px 0;
}
.wellbeing__frame h2 {
  font-family: var(--font-rounded);
  font-size: 70px;
  margin-bottom: 64px;
}
.wellbeing__frame__block {
  display: flex;
  flex-wrap: wrap;
  gap: 48px 7%;
}
.wellbeing__frame__block li {
  width: 46.5%;
  border: 8px solid var(--color-area3);
  background: var(--color-white);
  border-radius: 32px;
  padding: 24px;
}
.wellbeing__frame__block li .thumbnail img {
  border-radius: 32px;
}
.wellbeing__frame__block li .txt small {
  font-size: 20px;
  padding-top: 16px;
  display: block;
  font-weight: bold;
}
.wellbeing__frame__block li .txt h3 {
  font-size: 24px;
  padding-top: 8px;
}
.wellbeing__frame__block li .txt dl {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 12px;
  font-weight: bold;
  margin-top: 16px;
}
.wellbeing__frame__block li .txt dl dt {
  width: 120px;
  background: #ececec;
  border-radius: 8px;
  text-align: center;
  font-size: 16px;
  padding: 2px;
  box-sizing: border-box;
}
.wellbeing__frame__block li .txt dl dd {
  width: calc(100% - 132px);
}
.wellbeing__frame__block li .txt p {
  font-size: 16px;
  padding-top: 16px;
  line-height: 1.75;
}
.wellbeing__frame__block li .txt .schedule {
  display: block;
  background: var(--color-area3-contentsbg);
  border-radius: 16px;
  margin-top: 24px;
  padding: 8px 12px;
  font-weight: bold;
  font-size: 24px;
}
.wellbeing__frame__regist {
  margin-top: 48px;
  text-align: center;
}
.wellbeing__frame__regist p {
  font-size: 16px;
  line-height: 1.75;
}
.wellbeing__frame__regist a {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 72px;
  width: 100%;
  border-radius: 32px;
  font-size: 32px;
  line-height: 1;
  text-decoration: none;
  font-weight: 600;
  margin-top: 8px;
  transition: 0.4s;
  border: 2px solid var(--color-area3);
  color: var(--color-white);
  background: var(--color-area3);
  text-align: center;
}
.wellbeing__frame__regist a:hover {
  color: var(--color-area3);
  background: var(--color-white);
}
.wellbeing__frame__regist .note {
  font-size: 16px;
  line-height: 1.75;
  font-weight: bold;
  color: #c00;
  padding-top: 8px;
  display: block;
}

@media (width <= 768px) {
  .wellbeing {
    background: var(--color-area3-bg) url("../img/bg_img.png") center 20px/min(1200px, 100vw) auto no-repeat;
  }
  .wellbeing__frame {
    width: 83.334%;
    padding: min(80px, 10.4166666667vw) 0;
  }
  .wellbeing__frame h2 {
    font-size: min(64px, 8.3333333333vw);
    margin-bottom: min(80px, 10.4166666667vw);
    letter-spacing: -0.05em;
  }
  .wellbeing__frame__block {
    display: block;
  }
  .wellbeing__frame__block li {
    width: 100%;
    border: min(8px, 1.0416666667vw) solid var(--color-area3);
    border-radius: min(48px, 6.25vw);
    padding: min(40px, 5.2083333333vw);
    display: block;
  }
  .wellbeing__frame__block li .thumbnail {
    width: 100%;
  }
  .wellbeing__frame__block li .thumbnail img {
    border-radius: min(40px, 5.2083333333vw);
  }
  .wellbeing__frame__block li .txt {
    width: 100%;
  }
  .wellbeing__frame__block li .txt small {
    font-size: min(32px, 4.1666666667vw);
    margin-top: min(32px, 4.1666666667vw);
    padding-top: 0;
  }
  .wellbeing__frame__block li .txt h3 {
    font-size: min(32px, 4.1666666667vw);
    padding: 0;
    margin-top: min(12px, 3.125vw);
  }
  .wellbeing__frame__block li .txt dl {
    margin-top: min(24px, 3.125vw);
    gap: min(12px, 1.5625vw);
  }
  .wellbeing__frame__block li .txt dl dt {
    width: min(180px, 23.4375vw);
    border-radius: min(8px, 1.0416666667vw);
    font-size: min(32px, 4.1666666667vw);
    line-height: 1;
    padding: min(8px, 1.0416666667vw);
  }
  .wellbeing__frame__block li .txt dl dd {
    width: calc(100% - min(192px, 25vw));
    font-size: min(32px, 4.1666666667vw);
  }
  .wellbeing__frame__block li .txt p {
    font-size: min(32px, 4.1666666667vw);
    padding-top: min(32px, 4.1666666667vw);
    line-height: 1.75;
  }
  .wellbeing__frame__block li .txt .schedule {
    display: block;
    border-radius: min(16px, 2.0833333333vw);
    margin-top: min(24px, 3.125vw);
    padding: min(8px, 1.0416666667vw) min(12px, 1.5625vw);
    font-size: min(32px, 4.1666666667vw);
  }
  .wellbeing__frame__block li + li {
    margin-top: min(40px, 5.2083333333vw);
  }
  .wellbeing__frame__regist {
    margin-top: min(40px, 5.2083333333vw);
    text-align: left;
  }
  .wellbeing__frame__regist p {
    font-size: min(32px, 4.1666666667vw);
  }
  .wellbeing__frame__regist a {
    height: auto;
    border-radius: min(32px, 4.1666666667vw);
    font-size: min(48px, 6.25vw);
    margin-top: min(48px, 6.25vw);
    padding: min(16px, 2.0833333333vw);
    line-height: 1.3;
  }
  .wellbeing__frame__regist .note {
    font-size: min(32px, 4.1666666667vw);
    padding-top: min(16px, 2.0833333333vw);
  }
  .wellbeing__frame__regist .note br {
    display: none;
  }
}
.measure {
  background: var(--color-area2-bg) url("../img/bg_img.png") center 20px/min(1200px, 100vw) auto no-repeat;
}
.measure__frame {
  max-width: 1000px;
  width: 90%;
  margin-inline: auto;
  padding: 64px 0;
}
.measure__frame h2 {
  font-family: var(--font-rounded);
  font-size: 70px;
  margin-bottom: 64px;
}
.measure__frame__block li {
  border: 8px solid var(--color-area3);
  background: var(--color-white);
  border-radius: 40px;
  padding: 24px;
  display: flex;
  align-items: center;
  gap: 2.564%;
}
.measure__frame__block li .thumbnail {
  width: 42.735%;
}
.measure__frame__block li .thumbnail img {
  border-radius: 40px;
}
.measure__frame__block li .txt {
  width: 54.701%;
}
.measure__frame__block li .txt small {
  font-size: 20px;
  display: block;
  font-weight: bold;
}
.measure__frame__block li .txt h3 {
  font-size: 24px;
  padding-top: 8px;
}
.measure__frame__block li .txt p {
  font-size: 16px;
  padding-top: 16px;
  line-height: 1.75;
}
.measure__frame__block li + li {
  margin-top: 48px;
}

@media (width <= 768px) {
  .measure__frame {
    width: 83.334%;
    padding: min(80px, 10.4166666667vw) 0;
  }
  .measure__frame h2 {
    font-size: min(64px, 8.3333333333vw);
    margin-bottom: min(80px, 10.4166666667vw);
  }
  .measure__frame__block li {
    border: min(8px, 1.0416666667vw) solid var(--color-area3);
    border-radius: min(48px, 6.25vw);
    padding: min(40px, 5.2083333333vw);
    display: block;
  }
  .measure__frame__block li .thumbnail {
    width: 100%;
  }
  .measure__frame__block li .thumbnail img {
    border-radius: min(40px, 5.2083333333vw);
  }
  .measure__frame__block li .txt {
    width: 100%;
  }
  .measure__frame__block li .txt small {
    font-size: min(32px, 4.1666666667vw);
    margin-top: min(32px, 4.1666666667vw);
  }
  .measure__frame__block li .txt h3 {
    font-size: min(32px, 4.1666666667vw);
    padding-top: min(16px, 2.0833333333vw);
  }
  .measure__frame__block li .txt p {
    font-size: min(32px, 4.1666666667vw);
    padding-top: min(32px, 4.1666666667vw);
    line-height: 1.75;
  }
  .measure__frame__block li + li {
    margin-top: min(40px, 5.2083333333vw);
  }
}
.exhibition {
  background: url("../img/bg_img.png") center 20px/min(1200px, 100vw) auto no-repeat;
}
.exhibition__frame {
  max-width: 1000px;
  width: 90%;
  margin-inline: auto;
  padding: 64px 0;
}
.exhibition__frame h2 {
  font-family: var(--font-rounded);
  font-size: 70px;
  margin-bottom: 64px;
}
.exhibition__frame__block {
  display: flex;
  flex-wrap: wrap;
  gap: 32px 5%;
}
.exhibition__frame__block li {
  width: 47.5%;
  border: 8px solid #b2b2b2;
  background: var(--color-white);
  border-radius: 32px;
  min-height: 160px;
  transition: 0.4s;
}
.exhibition__frame__block li a {
  cursor: pointer;
}
.exhibition__frame__block li a,
.exhibition__frame__block li p {
  padding: 24px;
  height: 100%;
  display: flex;
  line-height: 1.75;
  text-decoration: none;
  color: var(--color-text);
  flex-direction: column;
  justify-content: center;
  text-align: left;
  font-size: 18px;
  font-weight: 600;
}
.exhibition__frame__block li a span,
.exhibition__frame__block li p span {
  display: block;
  font-weight: 400;
  font-size: 16px;
  position: relative;
  padding-left: 10px;
}
.exhibition__frame__block li a span::before,
.exhibition__frame__block li p span::before {
  content: "-";
  position: absolute;
  left: 0;
  top: 0;
}
.exhibition p.bottom {
  text-align: left;
  margin: -48px auto 64px;
  font-weight: bold;
  font-size: 21px;
  font-weight: 600;
}

@media (width <= 768px) {
  .exhibition__frame {
    width: 83.334%;
    padding: min(80px, 10.4166666667vw) 0;
  }
  .exhibition__frame h2 {
    font-size: min(64px, 8.3333333333vw);
    margin-bottom: min(80px, 10.4166666667vw);
  }
  .exhibition__frame__block {
    display: block;
  }
  .exhibition__frame__block li {
    width: 100%;
    border: min(8px, 1.0416666667vw) solid #b2b2b2;
    border-radius: min(48px, 6.25vw);
    padding: 0;
    display: block;
    position: relative;
    min-height: auto;
  }
  .exhibition__frame__block li a,
  .exhibition__frame__block li p {
    padding: min(40px, 5.2083333333vw);
    height: 100%;
    display: flex;
    align-items: center;
    line-height: 1.75;
    text-decoration: none;
    color: var(--color-text);
    min-height: min(200px, 26.0416666667vw);
    font-size: min(32px, 4.1666666667vw);
  }
  .exhibition__frame__block li + li {
    margin-top: min(40px, 5.2083333333vw);
  }
  .exhibition p.bottom {
    margin: -10vw auto min(40px, 5.2083333333vw);
    font-size: min(24px, 3.125vw);
  }
}
.footer {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  align-items: center;
  padding-top: 48px;
  text-align: center;
}
.footer img {
  width: 178px;
}
.footer small {
  display: block;
  padding: 24px;
  line-height: 1.8;
}
.footer small span {
  display: block;
}
.footer small a {
  color: var(--color-text);
}
.footer small a:hover {
  text-decoration: none;
}

@media (width <= 768px) {
  .footer {
    padding-top: min(48px, 6.25vw);
  }
  .footer img {
    width: min(298px, 38.8020833333vw);
  }
  .footer small {
    display: block;
    font-size: min(24px, 3.125vw);
    padding: min(80px, 10.4166666667vw) 0 min(32px, 4.1666666667vw);
    text-align: center;
  }
  .footer small span {
    margin-bottom: min(24px, 3.125vw);
  }
}
.notice {
  font-size: 16px;
  line-height: 1.75;
  text-align: center;
  margin: 48px auto 0;
  border: 4px solid #ececec;
  padding: 16px;
  max-width: 600px;
  width: 83.334%;
  border-radius: 16px;
  color: var(--color-text);
  line-height: 1.75;
  color: #e25638;
}
.notice::before {
  content: "";
  display: inline-block;
  width: 20px;
  height: 16px;
  background: url("../img/notice.png") left top/20px 16px no-repeat;
  vertical-align: -2px;
}

@media (width <= 768px) {
  .notice {
    padding: min(24px, 3.125vw);
    font-size: min(30px, 3.90625vw);
    margin: min(24px, 3.125vw) auto;
  }
}