@charset "UTF-8";

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  font-size: 62.5%;
  scroll-behavior: smooth;
}

body {
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 18px;
  color: #333;
  background-color: #fff;
  line-height: 1.7;
  text-align: justify;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

@media screen and (max-width:640px) {
  body {
    font-size: 16px;
  }
}

p {
  font-feature-settings: "palt";
  padding-bottom: 1.5em;
}

img {
  max-width: 100%;
  height: auto;
  display: block;
  margin: 0 auto;
}

a:hover img,
input[type="image"]:hover {
  opacity: 0.8;
  filter: alpha(opacity=80);
  -ms-filter: "alpha( opacity=80 )";
}

.pc_only {
  display: block !important;
}

.sp_only {
  display: none !important;
}

@media screen and (max-width: 768px) {
  .pc_only {
    display: none !important;
  }

  .sp_only {
    display: block !important;
  }
}

/* * {
  margin: 0;
  padding: 0;
} */

/* fv ---------------------------------------- */
header {
  padding-bottom: min(8vw, 60px);
  background-image: url(../images/fv-bg-pc.jpg);
  background-size: cover;
  background-position: center top;
  background-repeat: no-repeat;
}

h1 {
  margin-bottom: 3em;
}

@media screen and (max-width: 640px) {
  header {
    background-image: url(../images/fv-bg-sp.jpg);
  }

  h1 {
    margin-bottom: 2em;
  }
}

/* content共通 ---------------------------------------- */
@media screen and (max-width: 640px) {
  .btn {
    width: 94%;
    margin: auto;
  }
}

.cta {
  margin: 0 auto 1em;
}

@media screen and (max-width: 960px) {
  .cta {
    width: 96%;
  }
}

.container {
  width: min(92%, 780px);
  margin: auto;
}

.container--w {
  width: min(92%, 1020px);
  margin: auto;
}

/* section.intro ---------------------------------------- */
.intro {
  padding: min(9.2vw, 70px) 0 55px;
}

.intro__h2 {
  color: #e27b0d;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
  margin-bottom: 3em;
}

.intro__h2-c1 {
  font-size: min(5.1vw, 32px);
  letter-spacing: 0.04em;
}

.intro__h2-c2 {
  font-size: min(5.8vw, 40px);
  letter-spacing: 0.02em;
}

.intro__voice {
  margin: 0 auto 3em;
}

.intro__img1 {
  margin-bottom: 3em;
}

.intro__text {
  margin-bottom: 1em;
}

.intro__text-c2 {
  font-size: min(4.8vw, 22px);
  font-weight: 700;
}

.intro__text-c2 span {
  background: linear-gradient(transparent 10%, #ebe661 10%);
}

.intro__text-c3 {
  margin-bottom: 2em;
}

.intro__text-c4 {
  color: #e27b0d;
  font-size: min(5.6vw, 36px);
  font-weight: 700;
  font-feature-settings: normal;
  text-align: center;
}

.intro__text-list {
  position: relative;
  margin-bottom: 4em;
}

.intro__text-list ul {
  font-size: min(4.8vw, 22px);
  font-weight: 700;
  position: relative;
}

.intro__text-list ul li {
  font-feature-settings: "palt";
  background-image: url(../images/check1.png);
  background-size: 1em;
  background-position: left 0.3em;
  background-repeat: no-repeat;
  padding-left: 1.5em;
  margin-bottom: 1em;
}

.intro__text-list-img {
  position: absolute;
  right: 0;
  bottom: -50%;
}

.intro__text-c5 span {
  color: #e27b0d;
  font-weight: 700;
}

@media screen and (max-width: 960px) {
  .intro__voice {
    width: 96%;
  }
}

@media screen and (max-width: 640px) {
  .intro {
    padding-bottom: 0;
  }

  .intro__h2 {
    margin-bottom: 1.5em;
  }

  .intro__voice {
    margin-bottom: 1.5em;
  }

  .intro__img1 {
    margin-bottom: 2em;
  }

  .intro__text-list {
    margin-bottom: 3em;
  }

  .intro__text-list-img {
    width: 33%;
    bottom: -5%;
  }
}

/* section.greeting ---------------------------------------- */
.greeting {
  padding: min(11.7vw, 20px) 0 min(16.3vw, 70px);
  background-color: #fffbed;
}

.greeting__h2 {
  font-size: min(4.8vw, 28px);
  font-weight: 700;
  text-align: center;
  margin-bottom: 1em;
}

.greeting__img {
  margin-bottom: 2em;
}

.greeting__text p {
  padding-bottom: 0;
}

@media screen and (max-width: 640px) {
  .greeting__img {
    width: 51%;
    margin: 0 auto 1.5em;
  }
}

/* section.kaiketsu ---------------------------------------- */
.kaiketsu {
  padding: min(15.2vw, 70px) 0 min(13.3vw, 20px);
}

.kaiketsu__h2 {
  font-weight: 700;
  text-align: center;
  margin-bottom: 3em;
}

.kaiketsu__h2-c1 {
  font-size: min(5.1vw, 28px);
  margin-bottom: 0.3em;
}

.kaiketsu__h2-c2 {
  font-size: min(6.7vw, 42px);
  background: linear-gradient(transparent 60%, #ebe661 60%);
}

.kaiketsu__text {
  margin-bottom: 1.5em;
}

.kaiketsu__text-c1 span {
  color: #e27b0d;
  font-weight: 700;
}

.kaiketsu-img1,
.kaiketsu-img2 {
  margin: 0 auto 3em;
}

.kaiketsu__text-c2 {
  font-size: min(5.1vw, 22px);
}

@media screen and (max-width: 640px) {
  .kaiketsu__text {
    margin-bottom: 0;
  }

  .kaiketsu-img1 {
    width: 68%;
  }

  .kaiketsu-img1,
  .kaiketsu-img2 {
    margin-bottom: 1.5em;
  }
}

/* section.voice ---------------------------------------- */
.voice {
  padding: min(11.6vw, 76px) 0 min(5.2vw, 58px);
  background-color: #fffbed;
}

.voice__h2 {
  color: #e27b0d;
  font-size: min(8vw, 42px);
  font-weight: 700;
  text-align: center;
  margin-bottom: 1em;
}

.voice__box {
  background-color: #fff;
  border-radius: 34px;
  padding: 4% 6%;
  margin-bottom: 3em;
  position: relative;
}

.voice__box-img {
  width: min(28.5vw, 150px);
  position: absolute;
  right: 10%;
}

.voice__box-c1 {
  color: #f77987;
  font-weight: 700;
  font-size: min(5.1vw, 30px);
  padding-bottom: 1em;
}

.voice__box-c2,
.voice__box-c3 {
  font-weight: 500;
}

.voice__box-c2 {
  line-height: 2.2;
  margin-bottom: 1em;
}

.voice__box-c2 span {
  border-bottom: 3px solid #debc44;
  padding-bottom: 0.4em;
}

.voice__box-c3 span {
  font-weight: 700;
  background: linear-gradient(transparent 10%, #ebe661 10%);
}

@media screen and (max-width: 640px) {
  .voice__box {
    padding: 7% 6% 4%;
    ;
    margin-bottom: 1.5em;
  }

  .voice__box-img {
    right: 4%;
  }

  .voice__box-c2 {
    font-size: 14px;
    padding-bottom: 1em;
  }

  .voice__box-c2 span {
    padding-bottom: 0.2em;
  }

  .voice__box-c3 {
    font-size: 15px;
  }
}

/* section.anshin ---------------------------------------- */
.anshin {
  padding: min(10.8vw, 20px) 0 63px;
}

.anshin__h2 {
  color: #e27b0d;
  font-size: min(6.4vw, 42px);
  font-weight: 700;
  line-height: 1.6;
  text-align: center;
  margin-bottom: 1em;
}

.anshin__text-c1 {
  margin-bottom: 1em;
}

.anshin__text-c1 span {
  color: #e27b0d;
  font-weight: 700;
}

.anshin__text-c1--large {
  font-size: min(5vw, 22px);
}

.anshin__text-list {
  margin-bottom: 2.5em;
}

.anshin__text-list ul {
  font-size: min(4.5vw, 20px);
  font-weight: 700;
}

.anshin__text-list ul li {
  font-feature-settings: "palt";
  background-image: url(../images/check2.png);
  background-size: 1em;
  background-position: left 0.4em;
  background-repeat: no-repeat;
  padding-left: 1.5em;
  margin-bottom: 1em;
}

.anshin__text-c2 {
  font-size: min(4.5vw, 32px);
  font-weight: 700;
  text-align: center;
}

.anshin__text-arrow {
  width: min(16.1vw, 121px);
  margin: 0 auto 1.5em;
}

.anshin__text-c3 {
  color: #e27b0d;
  font-size: min(6.4vw, 41px);
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
}

.anshin__text-c3--marker {
  background: linear-gradient(transparent 60%, #ebe661 60%);
}

.anshin__text-c3--large {
  font-size: min(7.6vw, 51px);
}

.anshin__img1 {
  margin: 0 auto 2em;
}

.anshin__img2 {
  margin: 0 auto 3em;
}

@media screen and (min-width: 641px) {
  .anshin__text-list {
    display: flex;
    justify-content: center;
    gap: 2.5em
  }
}

@media screen and (max-width: 640px) {
  .anshin {
    padding-bottom: 0;
  }

  .anshin__text-c3 {
    line-height: 1.6;
  }

  .anshin__img1 {
    width: 52%;
  }

  .anshin__img2 {
    margin-bottom: 1.5em;
  }
}

/* section.honmono ---------------------------------------- */
.honmono {
  padding-bottom: min(9.2vw, 72px);
  background-color: #fffbed;
}

.honmono__h2 {
  background-color: #debc44;
  font-size: min(6.9vw, 42px);
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
  height: min(26.7vw, 120px);
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 1.5em;
}

.honmono__text-c1 {
  margin-bottom: 1em;
}

.honmono__text-c1 span {
  color: #e27b0d;
  font-weight: 700;
}

.honmono__text-c1--large {
  font-size: min(5.1vw, 22px);
}

.honmono__img1,
.honmono__img2,
.honmono__img3 {
  margin: 0 auto 2.5em;
}

.honmono__text-c2 {
  font-size: min(6.3vw, 42px);
  font-weight: 700;
  text-align: center;
  padding-bottom: 0;
}

.honmono__text-c2 span {
  background: linear-gradient(transparent 60%, #ebe661 60%);
}

@media screen and (max-width: 640px) {
  .honmono__img1 {
    width: 75%;
  }

  .honmono__img2 {
    width: 60%;
  }

  .honmono__img3 {
    width: 57%;
  }
}

/* section.parent ---------------------------------------- */
.parent {
  padding-bottom: 55px;
}

.parent__h2 {
  background-color: #debc44;
  font-size: min(6.4vw, 32px);
  font-weight: 700;
  letter-spacing: 0.02em;
  line-height: 1.5;
  height: min(38.1vw, 180px);
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 1.5em;
}

.parent__h2-inner {
  text-align: center;
}

.parent__h2 span {
  font-size: min(8vw, 42px);
}

.parent__text-c1 {
  margin-bottom: 1em;
}

.parent__text-c1 span {
  color: #e27b0d;
  font-weight: 700;
}

.parent__text-c1--large {
  font-size: min(5.1vw, 18px);
}

.parent__text-c2 {
  font-size: min(5.6vw, 42px);
  font-weight: 700;
  text-align: center;
  padding-bottom: 0.5em;
}

.parent__text-arrow {
  width: min(12vw, 51px);
  margin: 0 auto 1em;
}

.parent__text-c3 {
  font-weight: 700;
}

.parent__text-c3 span {
  background: linear-gradient(transparent 10%, #ebe661 10%);
}

@media screen and (max-width: 640px) {
  .parent {
    padding-bottom: 0;
  }
}

/* section.tokuchou ---------------------------------------- */
.tokucho {
  padding-bottom: min(6.4vw, 42px);
}

.tokucho__h2 {
  background-color: #debc44;
  font-weight: 700;
  letter-spacing: 0.02em;
  line-height: 1.5;
  font-feature-settings: "palt";
  height: min(35.2vw, 200px);
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 1.5em;
}

.tokucho__h2-inner {
  text-align: center;
}

.tokucho__h2-c1 {
  font-size: min(5.3vw, 32px);
}

.tokucho__h2-c2 {
  font-size: min(7.5vw, 42px);
}

.tokucho__text {
  margin-bottom: 1.5em;
}

.tokucho__text-c1 {
  font-size: min(4.3vw, 24px);
  font-weight: 700;
  letter-spacing: 0.02em;
  margin-bottom: 1em;
}

.tokucho__text-c2-wrap {
  margin-bottom: 2em;
}

.tokucho__text-c2 span {
  color: #e27b0d;
  font-weight: 700;
}

.tokucho__text-c3 {
  color: #e27b0d;
  font-size: min(5.3vw, 42px);
  font-weight: 700;
  letter-spacing: 0.04em;
  text-align: center;
  padding-bottom: 0;
  margin-bottom: 0.5em;
}

.tokucho__text-c4 {
  font-size: min(4.3vw, 24px);
  font-weight: 700;
  letter-spacing: 0.02em;
}

@media screen and (min-width: 961px) {
  .tokucho__text-c1 {
    text-align: center;
  }

  .tokucho__text-c1 span {
    font-size: min(4.3vw, 32px);
  }

  .tokucho__text-c2-wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 3em;
  }

  .tokucho__text-c2 {
    flex-basis: 55%;
    padding-bottom: 0;
  }

  .tokucho__img {
    flex-basis: 44%;
  }

  .tokucho__text-c4 {
    text-align: center;
  }

  .tokucho__img-sp {
    display: none;
  }
}

@media screen and (max-width: 960px) {
  .tokucho__text {
    margin-bottom: 2em;
  }

  .tokucho__img {
    width: 100vw;
    margin: 0 calc(50% - 50vw);
  }

  .tokucho__img-pc {
    display: none;
  }
}

/* section.henka ---------------------------------------- */
.henka {
  padding: min(6.4vw, 20px) 0 min(13.3vw, 55px);
}

.henka__h2 {
  color: #e27b0d;
  font-size: min(6.3vw, 42px);
  font-weight: 700;
  text-align: center;
  margin-bottom: 0.5em;
}

.henka__text-list {
  margin-bottom: 3em;
}

.henka__text-list ul {
  font-size: min(4.8vw, 22px);
  font-weight: 500;
}

.henka__text-list ul li {
  padding: 0.8em 0 0.8em 3.2em;
  border-bottom: 2px solid #ebe661;
  font-feature-settings: "palt";
  background-image: url(../images/check3.png);
  background-size: 1em;
  background-position: 1.2em 1.2em;
  background-repeat: no-repeat;
}

.henka__text-list ul li span {
  color: #ed4457;
}

.henka__text-c1 {
  margin-bottom: 1em;
}

.henka__text-c1 span {
  color: #e27b0d;
  font-weight: 700;
}

.henka__img {
  margin-bottom: 3em;
}

@media screen and (max-width: 640px) {
  .henka__text-list ul li {
    padding: 0.8em 0 0.8em 1.5em;
    background-position: left 1.2em;
  }
}

/* section.seminar ---------------------------------------- */
.seminar {
  padding-bottom: 75px;
}

.seminar__h2 {
  background-color: #debc44;
  font-size: min(7.1vw, 42px);
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
  height: min(29.1vw, 120px);
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 1.5em;
}

.seminar__text-c1 span {
  color: #e27b0d;
  font-weight: 700;
}

.seminar__text-list {
  margin-bottom: 3em;
}

.seminar__text-list ul {
  font-size: min(4.8vw, 22px);
  font-weight: 500;
}

.seminar__text-list ul li {
  padding: 0.8em 0 0.8em 3.2em;
  border-bottom: 2px solid #ebe661;
  font-feature-settings: "palt";
  background-image: url(../images/check3.png);
  background-size: 1em;
  background-position: 1.2em 1.2em;
  background-repeat: no-repeat;
}

.seminar__text-list ul li span {
  color: #e27b0d;
}

.seminar__text-c2 {
  color: #e27b0d;
  font-size: min(4.3vw, 22px);
  font-weight: 700;
}

.seminar__img1 {
  margin: 0 auto 2.5em;
}

.seminar__img2 {
  margin: 3em auto 4em;
}

.seminar__text-c3 {
  font-size: min(4.9vw, 36px);
  font-weight: 700;
  text-align: center;
  padding-bottom: 1em;
}

.seminar__text-c3 span {
  font-size: min(6.3vw, 42px);
  background: linear-gradient(transparent 40%, #ebe661 40%);
}

@media screen and (max-width: 640px) {
  .seminar {
    padding-bottom: 0;
  }

  .seminar__text-list ul li {
    padding: 0.8em 0 0.8em 1.5em;
    background-position: left 1.2em;
  }

  .seminar__img1 {
    width: 85%;
    margin-bottom: 1.5em;
  }

  .seminar__img2 {
    margin: 0 auto 2em;
  }
}

/* section.gaiyo ---------------------------------------- */
.gaiyo {
  padding-bottom: min(18.1vw, 78px);
}

.gaiyo__h2 {
  background-color: #debc44;
  font-size: min(6.5vw, 42px);
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
  height: min(26.7vw, 120px);
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 1.5em;
}

.gaiyo__table {
  max-width: 690px;
  margin: auto;
  border: 2px solid #333;
  margin-bottom: 3em;
  box-sizing: border-box;
}

.gaiyo__table table {
  width: 100%;
  border-collapse: collapse;
}

.gaiyo__table tr {
  border-bottom: 2px solid #333;
}

.gaiyo__table tr:last-child {
  border-bottom: none;
}

.gaiyo__table th {
  background-color: #efefec;
  border: none;
  font-weight: 400;
  text-align: center;
  white-space: nowrap;
  padding: 0 2em;
}

.gaiyo__table td {
  border: none;
  padding: 1em;
}

.gaiyo__table td ul li {
  margin-bottom: 0.5em;
}

.gaiyo__table-note {
  font-size: 16px;
  padding-bottom: 0;
  margin-top: 1em;
}

.gaiyo__table-capacity {
  font-size: 1.8em;
  font-weight: 700;
}

.gaiyo__table-price {
  font-size: 1.2em;
}

.gaiyo__h3 {
  background-color: #e27b0d;
  color: #fff;
  font-weight: 600;
  font-size: min(5.6vw, 22px);
  text-align: center;
  max-width: 720px;
  padding: 0.8em 0;
  margin: 0 auto 1.5em;
}

.gaiyo__form-note {
  background-color: #f8f2f3;
  max-width: 670px;
  padding: 2em;
  margin: auto;
}

.gaiyo__form-note-c1 {
  font-size: min(5.2vw, 22px);
  font-weight: 600;
  letter-spacing: 0.06em;
  text-align: center;
}

@media screen and (max-width: 640px) {
  .gaiyo__table-note {
    font-size: 14px;
  }

  .gaiyo__table th {
    padding: 0 0.8em;
    border-right: 2px solid #333;
  }

  .gaiyo__table td {
    padding: 0.8em;
  }

  .gaiyo__h3 {
    padding: 0.3em 0;
  }
}

/* フォーム部分 */
.gaiyo__form {
  .content_form {
    max-width: 480px;
    margin: 0 auto 2.5em;
  }

  .input_unit {
    margin-bottom: 1.5em;
  }

  input[type="text"],
  input[type="image"] {
    width: 100%;
  }

  input#Usermail,
  input#Username1,
  input#Userkana {
    height: 3em;
    border-radius: 15px;
    border: 2px solid #9f9f9f;
    padding-left: 0.5em;
  }

  .label_frame {
    margin-bottom: 0.3em;
  }

  .radiobutton_frame {
    display: flex;
    gap: 0.3em;
    padding: 0.25em 0 0.25em 0.5em;
  }

  .radiobutton_input input {
    accent-color: #333;
  }

  .required-mark {
    background-color: #e0e0e0;
    color: #e20d49;
    font-size: 0.9em;
    padding: 0 0.2em;
    margin-left: 0.5em;
  }
}

/* section.pattern ---------------------------------------- */
.pattern {
  padding-bottom: min(16.5vw, 20px);
}

.pattern__h2 {
  background-color: #debc44;
  font-size: min(6.4vw, 32px);
  font-weight: 700;
  letter-spacing: 0.02em;
  line-height: 1.5;
  height: min(38.1vw, 180px);
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 1.5em;
}

.pattern__h2-inner {
  text-align: center;
}

.pattern__h2-c1 {
  background-color: #debc44;
  font-size: min(5.3vw, 40px);
  letter-spacing: 0.04em;
  border-radius: 100px;
  padding: 0em 1.2em;
  display: inline-block;
  margin-bottom: 0.5em;
}

.pattern__h2-c2 {
  font-size: min(6.1vw, 46px);
  line-height: 1.1;
}

.pattern__h2-c3 {
  font-size: min(7.1vw, 53px);
  line-height: 1.1;
}

.pattern__h2-c3--large {
  font-size: min(8.8vw, 66px);
}

.pattern__box-wrap {
  margin-bottom: 4em;
}

.pattern__box {
  position: relative;
  margin-bottom: 3em;
}

.pattern__box-list {
  background-color: #fffbed;
  padding: 4% 6%;
}

.pattern__box-h3 {
  background-color: #debc44;
  color: #fff;
  font-size: min(5.3vw, 36px);
  padding-left: 4em;
  position: relative;
}

.pattern__box:nth-child(n+1) .pattern__box-h3::after {
  content: '';
  width: 2.3em;
  height: 2.3em;
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  left: 5%;
  top: -0.3em;
}

.pattern__box:nth-child(1) .pattern__box-h3::after {
  background-image: url(../images/pattern-1-num.png);
}

.pattern__box:nth-child(2) .pattern__box-h3::after {
  background-image: url(../images/pattern-2-num.png);
}

.pattern__box:nth-child(3) .pattern__box-h3::after {
  background-image: url(../images/pattern-3-num.png);
}

.pattern__box:nth-child(4) .pattern__box-h3::after {
  background-image: url(../images/pattern-4-num.png);
}

.pattern__box:nth-child(5) .pattern__box-h3::after {
  background-image: url(../images/pattern-5-num.png);
}

.pattern__box:nth-child(6) .pattern__box-h3::after {
  background-image: url(../images/pattern-6-num.png);
}

.pattern__box:nth-child(7) .pattern__box-h3::after {
  background-image: url(../images/pattern-7-num.png);
}

.pattern__box:nth-child(8) .pattern__box-h3::after {
  background-image: url(../images/pattern-8-num.png);
}

.pattern__box:nth-child(9) .pattern__box-h3::after {
  background-image: url(../images/pattern-9-num.png);
}

.pattern__box:nth-child(10) .pattern__box-h3::after {
  background-image: url(../images/pattern-10-num.png);
}

.pattern__box-img {
  position: absolute;
}

.pattern__box-img-1 {
  width: min(25.7vw, 139px);
  right: 3%;
  top: -10%;
}

.pattern__box-img-2 {
  width: min(37.6vw, 272px);
  right: 3%;
  top: 29%;
}

.pattern__box-img-3 {
  width: min(22.9vw, 148px);
  right: 4%;
  top: 29%;
}

.pattern__box-img-4 {
  width: min(27.2vw, 172px);
  right: 3%;
  top: 29%;
}

.pattern__box-img-5 {
  width: min(21.6vw, 142px);
  right: 8%;
  top: 21%;
}

.pattern__box-img-6 {
  width: min(26.1vw, 157px);
  right: 3%;
  top: 6%;
}

.pattern__box-img-7 {
  width: min(38.4vw, 231px);
  right: 5%;
  top: 10%;
}

.pattern__box-img-8 {
  width: min(32.9vw, 185px);
  right: 6%;
  top: 29%;
}

.pattern__box-img-9 {
  width: min(23.2vw, 131px);
  right: 8%;
  top: 34%;
}

.pattern__box-img-10 {
  width: min(21.2vw, 112px);
  right: 10%;
  top: 7%;
}

.pattern__box-list ul {
  font-size: min(4vw, 20px);
  flex-basis: 50%;
}

.pattern__box-list ul li {
  font-feature-settings: "palt";
  background-image: url(../images/check1.png);
  background-size: 1em;
  background-position: left 0.4em;
  background-repeat: no-repeat;
  padding-left: 1.5em;
  margin-bottom: 0.5em;
}

.pattern__box-list ul li span {
  color: #e27b0d;
}

.pattern__text-c1 {
  font-size: min(5.6vw, 42px);
  font-weight: 700;
  text-align: center;
  padding-bottom: 1em;
}

.pattern__text-c1 span {
  background: linear-gradient(transparent 60%, #ebe661 60%);
}

.pattern__text-c2 {
  margin-bottom: 1em;
}

.pattern__text-c2 span {
  color: #e27b0d;
  font-weight: 700;
}

.pattern__text-text {
  margin: 0 auto 2em;
}

@media screen and (min-width: 961px) {
  .pattern__box-list.flex {
    display: flex;
    gap: 1em;
  }
}

@media screen and (max-width: 960px) {
  .pattern__box-img-1 {
    right: 0;
    top: 5%;
  }

  .pattern__box-img-2 {
    right: 1%;
    top: 33%;
  }

  .pattern__box-img-3 {
    right: 3%;
    top: 6%;
  }

  .pattern__box-img-4 {
    right: 2%;
    top: 4%;
  }

  .pattern__box-img-5 {
    right: 4%;
    top: 33%;
  }

  .pattern__box-img-6 {
    right: 3%;
    top: 9%;
  }

  .pattern__box-img-7 {
    right: 0;
    top: 13%;
  }

  .pattern__box-img-8 {
    right: 1%;
    top: 31%;
  }

  .pattern__box-img-9 {
    right: 5%;
    top: 50%;
  }

  .pattern__box-img-10 {
    right: 8%;
    top: -16%;
  }
}

@media screen and (max-width: 640px) {
  .pattern__h2 {
    margin-bottom: 2em;
  }

  .pattern__box-wrap {
    margin-bottom: 2em;
  }

  .pattern__box {
    margin-bottom: 2.5em;
  }

  .pattern__box-h3 {
    padding-left: 3.2em;
  }

  .pattern__box:nth-child(n+1) .pattern__box-h3::after {
    left: 3%;
  }

  .pattern__box-list {
    padding: 6% 4%;
  }

  .pattern__text-text {
    width: 86%;
  }
}

/* section.osusume ---------------------------------------- */
.osusume {
  padding-bottom: min(8.9vw, 75px);
}

.osusume__h2 {
  background-color: #debc44;
  font-size: min(6.4vw, 42px);
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
  height: min(38.7vw, 200px);
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 1.5em;
}

.osusume__text-c1 {
  margin-bottom: 1em;
}

.osusume__text-c1 span {
  color: #e27b0d;
  font-weight: 700;
}

.osusume__img {
  margin-bottom: 3em;
}

@media screen and (max-width: 640px) {
  .osusume__text-c1 {
    margin-bottom: 0;
  }

  .osusume__img {
    margin-bottom: 2em;
  }
}

/* section.message ---------------------------------------- */
.message {
  padding-bottom: min(7.6vw, 68px);
}

.message__h2 {
  background-color: #debc44;
  font-size: min(6.3vw, 42px);
  font-weight: 700;
  text-align: center;
  height: min(18.7vw, 120px);
  display: flex;
  justify-content: center;
  align-items: center;
}

.message__bg-wrap {
  background-color: #fffbed;
  padding-top: 2.5em;
  margin-bottom: 2.5em;
}

.message__text {
  margin-bottom: 2.5em;
}

.message__text-c1 {
  margin-bottom: 0.5em;
}

.message__text-sign img {
  margin: 0 0 0 auto;
}

@media screen and (max-width: 640px) {

  .message__bg-wrap,
  .message__text {
    margin-bottom: 2em;
  }

  .message__text-sign {
    width: 37%;
    margin: 0 0 0 auto;
  }
}

footer {
  background-color: #debc44;
  font-size: 16px;
  letter-spacing: 0.02em;
  text-align: center;
  padding: 2.5em 0;
}

.footer__link {
  display: flex;
  justify-content: center;
}

.footer__link a {
  color: #333;
  text-decoration: none;
}

.footer__link a:hover {
  text-decoration: underline;
}

.footer__link a::after {
  content: '|';
  margin: 0 1em;
}

.footer__link a:last-child::after {
  content: none;
}

.footer__copyright {
  padding-bottom: 0;
}

@media screen and (max-width: 640px) {
  footer {
    font-size: 13px;
    padding: 1.5em 0;
  }
}

/*追従ボタン*/
.btn-btm {
  position: fixed;
  right: 5px;
  bottom: 5px;
  z-index: 9999;
  display: none;
}

.is-fixed {
  transition: 0.6s;
  visibility: hidden;
  opacity: 0;
}

@media screen and (max-width: 640px) {
  .btn-btm {
    left: 0;
    right: 0;
  }
}