@charset "UTF-8";
/* -----------------------------------------------
* Plugins エントリーポイント
-------------------------------------------------- */
/*------------------------------------------------------------------------------
  reset
------------------------------------------------------------------------------*/
html,
input,
textarea,
select,
button {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 500;
}

html {
  color: #5a4538;
  background: #fff;
  font-size: 16px;
  line-height: normal;
  overflow-wrap: break-word;
}

body {
  background: #fff;
  margin: 0;
}

*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

img {
  border: 0;
  margin: 0;
  vertical-align: top;
  max-width: 100%;
  height: auto;
}

figure {
  margin: 0;
}

p {
  margin: 0;
  padding: 0;
}

a {
  color: inherit;
  text-decoration: none;
}

input,
select,
textarea,
button {
  color: inherit;
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

select::-ms-expand {
  display: none;
}

textarea {
  resize: vertical;
}

::-webkit-input-placeholder {
  color: #ccc;
}

:-ms-input-placeholder {
  color: #ccc;
}

::-ms-input-placeholder {
  color: #ccc;
}

::-moz-placeholder {
  color: #ccc;
}

::placeholder {
  color: #ccc;
}

button {
  border: none;
  cursor: pointer;
}

label {
  cursor: pointer;
}

table {
  border-collapse: collapse;
}

ul,
ol {
  list-style: none;
  margin: 0;
  padding: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 14px;
  font-weight: 500;
  margin: 0;
  padding: 0;
}

main {
  display: block;
}

#wrapper {
  position: relative;
}

.inner-block {
  margin: 0 auto;
  position: relative;
}
.inner-block.wi-1000 {
  max-width: 1080px;
}
.inner-block.wi-900 {
  max-width: 980px;
}

dl, dt, dd {
  padding: 0;
  margin: 0;
}

.ib {
  display: inline-block;
}

.c-svg {
  display: inline-block;
  fill: currentColor;
  vertical-align: top;
}

.font-en {
  font-family: "Nunito", sans-serif;
}

main {
  padding-top: var(--header-height, 167px);
}

body {
  overflow-y: scroll;
}

@font-face {
  src: url(../font/ZenMaruGothic-Light.ttf) format("truetype");
  font-family: "Zen Maru Gothic";
  font-weight: 300;
  font-display: swap;
}
@font-face {
  src: url(../font/ZenMaruGothic-Regular.ttf) format("truetype");
  font-family: "Zen Maru Gothic";
  font-weight: 400;
  font-display: swap;
}
@font-face {
  src: url(../font/ZenMaruGothic-Medium.ttf) format("truetype");
  font-family: "Zen Maru Gothic";
  font-weight: 500;
  font-display: swap;
}
@font-face {
  src: url(../font/ZenMaruGothic-Bold.ttf) format("truetype");
  font-family: "Zen Maru Gothic";
  font-weight: 700;
  font-display: swap;
}
@font-face {
  src: url(../font/ZenMaruGothic-Black.ttf) format("truetype");
  font-family: "Zen Maru Gothic";
  font-weight: 900;
  font-display: swap;
}
@font-face {
  src: url(../font/Nunito-Bold.ttf) format("truetype");
  font-family: "Nunito";
  font-weight: 700;
  font-display: swap;
}
/* -----------------------------------------------
* Modules エントリーポイント
-------------------------------------------------- */
/* --------------------------------
c-header
----------------------------------- */
.c-header {
  background-color: #FFFFFF;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000;
  width: 100%;
}
.c-header > .inner-block {
  padding-inline: clamp(20px, 2.0833333333vw, 40px);
}
.c-header .top-area {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 16px;
}
.c-header .top-area .logo-area {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 5px 20px;
}
.c-header .top-area .logo-area .logo {
  width: clamp(240px, 18.125vw, 348px);
}
.c-header .top-area .logo-area .logo-lead {
  width: clamp(130px, 14.1145833333vw, 271px);
}
.c-header .top-area .info-area {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 8px;
}
.c-header .top-area .info-area .top-row {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 20px;
}
.c-header .top-area .info-area .top-row .underline-link-area {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
}
.c-header .top-area .info-area .top-row .underline-link-area .c-underline-link {
  width: auto;
  white-space: nowrap;
}
.c-header .top-area .info-area .top-row .c-btn {
  max-width: 140px;
  border-radius: 5px;
  font-size: 12px;
  padding-block: 3px;
  padding-inline: 5px 8px;
}
.c-header .top-area .info-area .top-row .c-btn .txt-free {
  font-size: 8px;
}
.c-header .top-area .info-area .top-row .c-btn .inn-txt {
  font-weight: 500;
  padding-right: 15px;
}
.c-header .top-area .info-area .top-row .c-btn .inn-txt::after {
  width: 9px;
}
.c-header .top-area .info-area .bottom-row {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 20px;
}
.c-header .top-area .info-area .bottom-row .box-txt-area {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
}
.c-header .top-area .info-area .bottom-row .box-txt-area .box-txt {
  font-size: 15px;
  line-height: 1.1;
  border: 1px solid #5a4538;
  border-radius: 5px;
  padding: 3px 5px;
  text-align: center;
}
.c-header .top-area .info-area .bottom-row .box-txt-area .box-txt > p {
  white-space: nowrap;
}
.c-header .top-area .info-area .bottom-row .c-freedial {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.c-header .top-area .info-area .bottom-row .c-freedial .icon {
  width: 38px;
}
.c-header .top-area .info-area .bottom-row .c-freedial .number {
  font-size: clamp(32px, 4.2105263158vw, 40px);
}
.c-header .top-area .menu-btn-area .menu-btn {
  border: 1px solid #ff8d3b;
  background: #ff8d3b;
  color: #FFFFFF;
  width: 100%;
  height: 100%;
  aspect-ratio: 1;
  min-width: 60px;
  -webkit-transition: background-color 0.3s ease-in-out, color 0.3s ease-in-out;
  transition: background-color 0.3s ease-in-out, color 0.3s ease-in-out;
}
.c-header .top-area .menu-btn-area .menu-btn:focus-visible {
  background-color: #FFFFFF;
  color: #ff8d3b;
}
.c-header .top-area .menu-btn-area .menu-btn .inn-txt {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 5px;
}
.c-header .top-area .menu-btn-area .menu-btn .inn-txt .lines {
  width: 20px;
  height: 20px;
  aspect-ratio: 1;
  position: relative;
}
.c-header .top-area .menu-btn-area .menu-btn .inn-txt .lines .line {
  display: block;
  width: 100%;
  height: 2px;
  background-color: currentColor;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  -webkit-transition: background-color 0.3s ease-in-out;
  transition: background-color 0.3s ease-in-out;
}
.c-header .top-area .menu-btn-area .menu-btn .inn-txt .lines .line:nth-child(1) {
  translate: 0 -6px;
  -webkit-transition: 0.3s 0.4s ease-out;
  transition: 0.3s 0.4s ease-out;
}
.c-header .top-area .menu-btn-area .menu-btn .inn-txt .lines .line:nth-child(2) {
  -webkit-transition: 0.3s 0.3s ease-out;
  transition: 0.3s 0.3s ease-out;
}
.c-header .top-area .menu-btn-area .menu-btn .inn-txt .lines .line:nth-child(3) {
  translate: 0 6px;
  -webkit-transition: 0.3s 0.4s ease-out;
  transition: 0.3s 0.4s ease-out;
}
.c-header .top-area .menu-btn-area .menu-btn .inn-txt .txt {
  font-size: 12px;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: -0.1em;
}
.c-header .bottom-area .nav-area {
  padding-block: 20px;
  padding-inline: 20px;
  position: absolute;
  top: 0;
  right: -120vw;
  z-index: 998;
  background-color: #FFFFFF;
  -webkit-transition: right 0.3s ease-in-out;
  transition: right 0.3s ease-in-out;
  width: 100%;
  max-height: calc(var(--vh, 1vh) * 100 - var(--header-height, 60px));
  overflow-y: auto;
}
.c-header .bottom-area .nav-area > .ttl {
  font-size: 18px;
  font-weight: 700;
  text-align: center;
}
.c-header .bottom-area .nav-area > .link-btn-area {
  margin-block: 20px 30px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
}
.c-header .bottom-area .nav-area > .link-btn-area .c-btn {
  font-size: 16px;
  padding-inline: clamp(8px, 5.3475935829vw, 20px);
  border-radius: 5px;
}
.c-header .bottom-area .nav-area > .link-btn-area .c-btn .small {
  font-size: 14px;
}
.c-header .bottom-area .nav-area > .link-btn-area .c-balloon-txt {
  margin-bottom: 5px;
}
.c-header .bottom-area .nav-area > .link-btn-area .note-txt {
  font-size: 12px;
  font-weight: 700;
  text-align: center;
  margin-top: 10px;
}
.c-header .bottom-area .nav-area > .link-list-area {
  border-top: 1px solid #999999;
}
.c-header.is-active .top-area {
  -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.2);
          box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.2);
}
.c-header.is-active .top-area .menu-btn-area .menu-btn {
  -ms-touch-action: manipulation;
      touch-action: manipulation;
}
.c-header.is-active .top-area .menu-btn-area .menu-btn .lines .line:nth-child(1) {
  rotate: 45deg;
  translate: 0 0;
}
.c-header.is-active .top-area .menu-btn-area .menu-btn .lines .line:nth-child(2) {
  translate: 80px 0;
}
.c-header.is-active .top-area .menu-btn-area .menu-btn .lines .line:nth-child(3) {
  rotate: -45deg;
  translate: 0 0;
}
.c-header.is-active .bottom-area .nav-area {
  right: 0;
}

.c-footer {
  padding-block: 100px;
  background: #F1F5F3;
}
.c-footer .contents-wrap {
  display: grid;
  grid-template-columns: min(40%, 348px) 1fr;
  grid-template-rows: 1fr auto;
  grid-template-areas: "logo link" "copyright link";
  gap: 30px clamp(40px, 5.1041666667vw, 98px);
}
.c-footer .contents-wrap .logo-area {
  grid-area: logo;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 20px;
}
.c-footer .contents-wrap .logo-area .txt {
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-align: center;
}
.c-footer .contents-wrap .link-list-area {
  grid-area: link;
  justify-self: center;
  width: 100%;
}
.c-footer .contents-wrap .copyright-area {
  grid-area: copyright;
}
.c-footer .contents-wrap .copyright-area .copyright {
  color: #999999;
  font-size: 14px;
  letter-spacing: 0.03em;
}

#pagetop {
  right: 20px;
  z-index: 10;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
#pagetop > a {
  position: relative;
  width: 50px;
  height: 50px;
  border-radius: 10px 10px 0 0;
  background-color: #5a4538;
  color: #FFFFFF;
  border: 2px solid #5a4538;
}
#pagetop > a:focus-visible {
  background-color: #FFFFFF;
  color: #5a4538;
}
#pagetop > a::after {
  position: absolute;
  content: "";
  -webkit-mask: url("../img/common/ico-arrow.svg") no-repeat center/contain;
          mask: url("../img/common/ico-arrow.svg") no-repeat center/contain;
  background-color: currentColor;
  width: 20px;
  height: auto;
  aspect-ratio: 1/1;
  max-height: 20px;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  -webkit-transition-property: background-color;
  transition-property: background-color;
  rotate: -90deg;
}

.c-ttl01 {
  margin-bottom: 40px;
  text-align: center;
  font-size: 50px;
  font-weight: 700;
  line-height: 1.2;
}
.c-ttl01.fs-s {
  font-size: 30px;
}
.c-ttl01 .small {
  font-size: 40px;
}
.c-ttl01.clr-white {
  color: #FFFFFF;
}

.c-ttl02 {
  border-bottom: 2px solid #5a4538;
  font-size: 30px;
  font-weight: bold;
  margin-bottom: 40px;
  padding-bottom: 10px;
  text-align: center;
}
.c-ttl02:not(:first-child) {
  margin-top: 50px;
}

.c-num-ttl {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 20px;
  font-size: 30px;
  font-weight: 700;
  line-height: 2;
  letter-spacing: -0.03em;
}
.c-num-ttl > .num {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 50%;
  background-color: #ff8d3b;
  aspect-ratio: 1/1;
  width: 1.5em;
  height: 1.5em;
  color: #FFFFFF;
  font-size: 40px;
  line-height: 1;
  letter-spacing: -0.03em;
}

.c-ttl03 {
  margin: 50px 0 40px;
  padding-bottom: 10px;
  font-size: 30px;
  line-height: 1.6666666667;
  border-bottom: 2px solid #5a4538;
  text-align: center;
  font-weight: bold;
}

.c-ttl04 {
  font-size: 30px;
  font-weight: bold;
  margin-bottom: 30px;
  text-align: center;
}

.list-ttl {
  margin-top: 50px;
  margin-bottom: 10px;
  position: relative;
  padding-left: 15px;
  font-size: 20px;
  font-weight: bold;
}
.list-ttl::after {
  position: absolute;
  content: "";
  background: #5a4538;
  top: 2px;
  left: 0;
  width: 4px;
  height: calc(100% - 2px);
}

.c-btn {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
  font-size: 18px;
  line-height: 100%;
  font-weight: 700;
  padding: 20px 20px;
  width: 100%;
  border-radius: 10px;
  background: #FFFFFF;
  border: 2px solid;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  -webkit-transition-property: color, background, border-color;
  transition-property: color, background, border-color;
}
.c-btn.no-icon .inn-txt {
  padding-left: 0;
}
.c-btn.no-icon .inn-txt::before {
  content: unset;
}
.c-btn.no-arrow .inn-txt {
  padding-right: 0;
}
.c-btn.no-arrow .inn-txt::after {
  content: unset;
}
.c-btn.arrow-back .inn-txt::after {
  -webkit-transform: scaleX(-1);
          transform: scaleX(-1);
  left: 0;
  right: unset;
}
.c-btn.no-border {
  border: 0;
}
.c-btn.no-borderradius {
  border-radius: 0;
}
.c-btn.bdr-full {
  border-radius: 100vw;
}
.c-btn.mw-420 {
  max-width: 420px;
}
.c-btn.clr-pink {
  color: #ee5353;
}
.c-btn.clr-pink:not(.has-shadow):focus-visible {
  color: #FFFFFF;
  background: #ee5353;
  border-color: #ee5353;
}
.c-btn.clr-pink .inn-txt::before, .c-btn.clr-pink .inn-txt::after {
  background-color: currentColor;
}
.c-btn.bg-pink {
  color: #FFFFFF;
  background: #ee5353;
  border-color: #ee5353;
}
.c-btn.bg-pink:not(.has-shadow):focus-visible {
  color: #ee5353;
  background: #FFFFFF;
}
.c-btn.bg-pink .inn-txt::before, .c-btn.bg-pink .inn-txt::after {
  background-color: currentColor;
}
.c-btn.clr-orange {
  color: #ff8d3b;
}
.c-btn.clr-orange:not(.has-shadow):focus-visible {
  color: #FFFFFF;
  background: #ff8d3b;
  border-color: #ff8d3b;
}
.c-btn.clr-orange .inn-txt::before, .c-btn.clr-orange .inn-txt::after {
  background-color: currentColor;
}
.c-btn.bg-orange {
  color: #FFFFFF;
  background: #ff8d3b;
  border-color: #ff8d3b;
}
.c-btn.bg-orange:not(.has-shadow):focus-visible {
  color: #ff8d3b;
  background: #FFFFFF;
}
.c-btn.bg-orange .inn-txt::before, .c-btn.bg-orange .inn-txt::after {
  background-color: currentColor;
}
.c-btn.clr-brown {
  color: #5a4538;
}
.c-btn.clr-brown:not(.has-shadow):focus-visible {
  color: #FFFFFF;
  background: #5a4538;
  border-color: #5a4538;
}
.c-btn.clr-brown .inn-txt::before, .c-btn.clr-brown .inn-txt::after {
  background-color: currentColor;
}
.c-btn.bg-brown {
  color: #FFFFFF;
  background: #5a4538;
  border-color: #5a4538;
}
.c-btn.bg-brown:not(.has-shadow):focus-visible {
  color: #5a4538;
  background: #FFFFFF;
}
.c-btn.bg-brown .inn-txt::before, .c-btn.bg-brown .inn-txt::after {
  background-color: currentColor;
}
.c-btn.clr-blue {
  color: #5c7795;
}
.c-btn.clr-blue:not(.has-shadow):focus-visible {
  color: #FFFFFF;
  background: #5c7795;
  border-color: #5c7795;
}
.c-btn.clr-blue .inn-txt::before, .c-btn.clr-blue .inn-txt::after {
  background-color: currentColor;
}
.c-btn.bg-blue {
  color: #FFFFFF;
  background: #5c7795;
  border-color: #5c7795;
}
.c-btn.bg-blue:not(.has-shadow):focus-visible {
  color: #5c7795;
  background: #FFFFFF;
}
.c-btn.bg-blue .inn-txt::before, .c-btn.bg-blue .inn-txt::after {
  background-color: currentColor;
}
.c-btn.line {
  border-color: #06c755;
  color: #06c755;
}
.c-btn.line .inn-txt::after {
  background: #06c755;
}
.c-btn.txt-center .inn-txt {
  text-align: center;
}
.c-btn.txt-center.no-icon:not(.no-arrow) .inn-txt {
  padding-left: 30px;
}
.c-btn.txt-center.no-arrow:not(.no-icon) .inn-txt {
  padding-right: 30px;
}
.c-btn.has-shadow {
  -webkit-box-shadow: 0 2px 0 0 #CE6F2A;
          box-shadow: 0 2px 0 0 #CE6F2A;
  -webkit-transition: translate 0.3s ease-in-out, -webkit-box-shadow 0.3s ease-in-out;
  transition: translate 0.3s ease-in-out, -webkit-box-shadow 0.3s ease-in-out;
  transition: translate 0.3s ease-in-out, box-shadow 0.3s ease-in-out;
  transition: translate 0.3s ease-in-out, box-shadow 0.3s ease-in-out, -webkit-box-shadow 0.3s ease-in-out;
}
.c-btn.has-shadow:focus-visible:hover {
  translate: 0 2px;
  -webkit-box-shadow: 0 0 0 0 #CE6F2A;
          box-shadow: 0 0 0 0 #CE6F2A;
}
.c-btn.header-btn {
  border-radius: 0;
  padding-block: 14px;
  font-size: 15px;
  font-weight: 500;
  width: auto;
  position: relative;
}
.c-btn.header-btn::after {
  position: absolute;
  content: "";
  background-color: #ff8d3b;
  width: 100%;
  height: 2px;
  bottom: -2px;
  left: 0;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out;
}
.c-btn.header-btn.is-current {
  color: #ff8d3b;
}
.c-btn.header-btn.is-current::after {
  opacity: 1;
}
.c-btn.header-btn:not(.ico-caution) {
  border: 0;
}
.c-btn.header-btn:not(.ico-caution):focus-visible {
  color: #ff8d3b;
}
.c-btn.header-btn:not(.ico-caution):focus-visible::after {
  opacity: 1;
}
.c-btn.header-btn.ico-caution .inn-txt::before {
  width: 24px;
  height: 22px;
}
.c-btn.header-btn .inn-txt {
  width: auto;
  padding-right: 0;
}
.c-btn.header-btn .inn-txt::after {
  content: unset;
}
.c-btn .inn-txt {
  position: relative;
  padding-left: 30px;
  padding-right: 30px;
  width: 100%;
}
.c-btn .inn-txt::before {
  position: absolute;
  content: "";
  -webkit-mask: url("../img/common/ico-pc.svg") no-repeat center/contain;
          mask: url("../img/common/ico-pc.svg") no-repeat center/contain;
  background-color: #ff8d3b;
  width: 20px;
  height: 20px;
  aspect-ratio: 1/1;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  -webkit-transition-property: background-color;
  transition-property: background-color;
}
.c-btn .inn-txt::after {
  position: absolute;
  content: "";
  -webkit-mask: url("../img/common/ico-arrow.svg") no-repeat center/contain;
          mask: url("../img/common/ico-arrow.svg") no-repeat center/contain;
  background-color: #ff8d3b;
  width: 20px;
  height: auto;
  aspect-ratio: 1/1;
  max-height: 20px;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  -webkit-transition-property: background-color;
  transition-property: background-color;
}
.c-btn .inn-txt > .small {
  display: inline-block;
  font-size: 12px;
}
.c-btn.ico-person .inn-txt::before {
  -webkit-mask-image: url("../img/common/ico-person.svg");
          mask-image: url("../img/common/ico-person.svg");
}
.c-btn.ico-mappin .inn-txt::before {
  -webkit-mask-image: url("../img/common/ico-mappin.svg");
          mask-image: url("../img/common/ico-mappin.svg");
}
.c-btn.ico-yen .inn-txt::before {
  -webkit-mask-image: url("../img/common/ico-yen.svg");
          mask-image: url("../img/common/ico-yen.svg");
}
.c-btn.ico-flower .inn-txt::before {
  -webkit-mask-image: url("../img/common/ico-flower.svg");
          mask-image: url("../img/common/ico-flower.svg");
}
.c-btn.ico-column .inn-txt::before {
  -webkit-mask-image: url("../img/common/ico-column.svg");
          mask-image: url("../img/common/ico-column.svg");
}
.c-btn.ico-caution .inn-txt::before {
  -webkit-mask-image: url("../img/common/ico-caution.svg");
          mask-image: url("../img/common/ico-caution.svg");
}
.c-btn.ico-note .inn-txt::before {
  -webkit-mask-image: url("../img/common/ico-note.svg");
          mask-image: url("../img/common/ico-note.svg");
}
.c-btn.ico-hall {
  font-size: 14px;
  padding: 21px 20px;
}
.c-btn.ico-hall .inn-txt::before {
  width: 25px;
  height: 17px;
  -webkit-mask-image: url("../img/common/ico-hall.svg");
          mask-image: url("../img/common/ico-hall.svg");
}
.c-btn.ico-mail {
  font-size: 14px;
  padding: 21px 20px;
}
.c-btn.ico-mail .inn-txt::before {
  width: 23px;
  height: 23px;
  -webkit-mask-image: url("../img/common/ico-mail.svg");
          mask-image: url("../img/common/ico-mail.svg");
}
.c-btn.ico-chat .inn-txt::before {
  -webkit-mask-image: url("../img/common/ico-chat.svg");
          mask-image: url("../img/common/ico-chat.svg");
}
.c-btn.ico-map .inn-txt::before {
  -webkit-mask-image: url("../img/common/ico-map.svg");
          mask-image: url("../img/common/ico-map.svg");
}
.c-btn.ico-portrait .inn-txt::before {
  -webkit-mask-image: url("../img/common/ico-portrait.svg");
          mask-image: url("../img/common/ico-portrait.svg");
}
.c-btn.ico-tel .inn-txt::before {
  -webkit-mask-image: url("../img/common/ico-tel.svg");
          mask-image: url("../img/common/ico-tel.svg");
}
.c-btn.ico-tel02 {
  font-size: 20px;
  padding: 18px 20px;
  font-family: "Nunito", sans-serif;
}
.c-btn.ico-tel02 .inn-txt::after {
  display: none;
}
.c-btn.ico-tel02 .inn-txt::before {
  background: #5a4538;
  -webkit-mask-image: url("../img/common/ico-tel.svg");
          mask-image: url("../img/common/ico-tel.svg");
}
.c-btn.ico-free.free-orange:not(.has-shadow):focus-visible .txt-free {
  background: #ff8d3b;
  color: #FFFFFF;
}
.c-btn.ico-free.free-orange .txt-free {
  color: #ff8d3b;
}
.c-btn.ico-free:not(.has-shadow):focus-visible .txt-free {
  background: #ee5353;
  color: #FFFFFF;
}
.c-btn.ico-free .txt-free {
  white-space: nowrap;
  font-size: 16px;
  font-weight: 700;
  color: #ee5353;
  background: #FFFFFF;
  border-radius: 50%;
  aspect-ratio: 1/1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding-inline: 4px;
  -webkit-transition: color 0.3s ease-in-out, background 0.3s ease-in-out;
  transition: color 0.3s ease-in-out, background 0.3s ease-in-out;
}
.c-btn.ico-free .inn-txt {
  padding-left: 0;
}
.c-btn.ico-free .inn-txt::before {
  content: unset;
}
.c-btn.no-ico {
  width: 260px;
}
.c-btn.no-ico .inn-txt {
  font-size: 14px;
  padding: 0;
}
.c-btn.no-ico .inn-txt::before, .c-btn.no-ico .inn-txt::after {
  display: none;
}
.c-btn.ico-request {
  padding: 10px 20px;
  max-width: 400px;
  width: 100%;
}
.c-btn.ico-request .inn-txt {
  font-size: 14px;
  line-height: 1.4285714286;
}
.c-btn.ico-request .inn-txt::before {
  width: 16px;
  height: 16px;
  background: url("../img/common/ico-check.svg");
  -webkit-mask-image: none;
          mask-image: none;
}
.c-btn.ico-request .inn-txt::after {
  background: #5a4538;
  width: 8px;
}

.c-underline-link {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
  font-size: 12px;
  font-weight: 400;
  width: 100%;
}
.c-underline-link.clr-blue {
  color: #5c7795;
}
.c-underline-link.underline-hover .inn-txt {
  -webkit-text-decoration-color: transparent;
          text-decoration-color: transparent;
}
.c-underline-link.underline-hover:focus-visible .inn-txt {
  -webkit-text-decoration-color: currentColor;
          text-decoration-color: currentColor;
}
.c-underline-link .inn-txt {
  position: relative;
  padding-left: 25px;
  width: 100%;
  -webkit-text-decoration: underline solid currentColor;
          text-decoration: underline solid currentColor;
  -webkit-transition: -webkit-text-decoration-color 0.3s ease-in-out;
  transition: -webkit-text-decoration-color 0.3s ease-in-out;
  transition: text-decoration-color 0.3s ease-in-out;
  transition: text-decoration-color 0.3s ease-in-out, -webkit-text-decoration-color 0.3s ease-in-out;
}
.c-underline-link .inn-txt::before {
  position: absolute;
  content: "";
  -webkit-mask: url("../img/common/ico-map.svg") no-repeat center/contain;
          mask: url("../img/common/ico-map.svg") no-repeat center/contain;
  background-color: currentColor;
  width: 20px;
  height: auto;
  aspect-ratio: 1/1;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}
.c-underline-link:focus-visible .inn-txt {
  -webkit-text-decoration-color: transparent;
          text-decoration-color: transparent;
}
.c-underline-link.ico-portrait .inn-txt::before {
  -webkit-mask-image: url("../img/common/ico-portrait.svg");
          mask-image: url("../img/common/ico-portrait.svg");
}

.c-img-btn {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  border-radius: 5px;
  background: #FFFFFF;
  border: 2px solid #5a4538;
  overflow: hidden;
  padding-right: 18px;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  -webkit-transition-property: background, color;
  transition-property: background, color;
}
.c-img-btn:focus-visible {
  background: #5a4538;
  color: #FFFFFF;
}
.c-img-btn > img {
  max-height: 90px;
  height: 100%;
  aspect-ratio: 1/1;
}
.c-img-btn .inn-txt {
  font-size: 24px;
  font-weight: 700;
  line-height: 1; /* 100% */
  letter-spacing: -0.03em;
  padding-left: 28px;
  padding-block: 32px;
  position: relative;
  width: 100%;
}
.c-img-btn .inn-txt::after {
  position: absolute;
  content: "";
  -webkit-mask: url("../img/common/ico-arrow.svg") no-repeat center/contain;
          mask: url("../img/common/ico-arrow.svg") no-repeat center/contain;
  background-color: currentColor;
  width: 20px;
  height: auto;
  aspect-ratio: 1/1;
  max-height: 20px;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
}
.c-img-btn.crl-fudousan {
  color: #ff8d3b;
  border-color: #ff8d3b;
}
.c-img-btn.crl-fudousan:focus-visible {
  background: #ff8d3b;
}
.c-img-btn.crl-ihin {
  color: #C87D63;
  border-color: #C87D63;
}
.c-img-btn.crl-ihin:focus-visible {
  background: #C87D63;
}
.c-img-btn.crl-kaiyou {
  color: #69AFCA;
  border-color: #69AFCA;
}
.c-img-btn.crl-kaiyou:focus-visible {
  background: #69AFCA;
}
.c-img-btn.crl-eidai {
  color: #C3A03E;
  border-color: #C3A03E;
}
.c-img-btn.crl-eidai:focus-visible {
  background: #C3A03E;
}
.c-img-btn.crl-isan {
  color: #C99C64;
  border-color: #C99C64;
}
.c-img-btn.crl-isan:focus-visible {
  background: #C99C64;
}
.c-img-btn.crl-kouden {
  color: #666EC6;
  border-color: #666EC6;
}
.c-img-btn.crl-kouden:focus-visible {
  background: #666EC6;
}

.c-section {
  padding-block: 80px;
}
.c-section.bg-gray {
  background-color: #F1F5F3;
}
.c-section.bg-yellow {
  background-color: #FFFAE9;
}
.c-section.img-flower {
  background: url("../img/common/points-bg.jpg.webp") no-repeat center/cover;
}
.c-section.outer {
  padding-bottom: 0;
}
.c-section.outer .c-ttl03 {
  margin-top: 0;
}

.c-plans-section + .services-section {
  padding-top: 0;
}

.c-mv-section .main-wrap > .inner-block {
  max-width: 1460px;
  background: url("../img/common/mv-section/mv-img-person.png.webp") no-repeat, url("../img/common/mv-section/mv-img-alter.png.webp") no-repeat;
  background-size: min(523px, 50%) auto, min(911px, 100%) auto;
  background-position: calc(100% - 20px) calc(100% + 71px), calc(100% - 28px) calc(100% + 50px);
}
.c-mv-section .contents-wrap {
  max-width: 1200px;
  margin-inline: auto;
  padding-block: 50px;
  display: grid;
  grid-template-columns: min(55%, 600px) 1fr;
  -webkit-column-gap: clamp(20px, 6.6666666667vw, 80px);
     -moz-column-gap: clamp(20px, 6.6666666667vw, 80px);
          column-gap: clamp(20px, 6.6666666667vw, 80px);
  grid-template-areas: "balloon price" "main .." "numones .." "note ..";
}
.c-mv-section .contents-wrap .balloon-area {
  grid-area: balloon;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}
.c-mv-section .contents-wrap .balloon-area > .note {
  display: inline-block;
  margin-left: auto;
  margin-top: -1em;
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  color: #ff8d3b;
}
.c-mv-section .contents-wrap .main-txt-area {
  grid-area: main;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
}
.c-mv-section .contents-wrap .main-txt-area .big-txt {
  font-size: 64px;
  font-weight: 700;
  line-height: 1.2;
  color: #ee5353;
  text-align: center;
}
.c-mv-section .contents-wrap .main-txt-area .big-txt > .cross {
  color: #5a4538;
}
.c-mv-section .contents-wrap .main-txt-area .small-txt {
  font-size: 32px;
  font-weight: 700;
  text-align: center;
}
.c-mv-section .contents-wrap .numberones-area {
  grid-area: numones;
  justify-self: center;
  margin-block: 40px 36px;
}
.c-mv-section .contents-wrap .numberones-area img {
  width: 100%;
  height: auto;
  max-width: 586px;
}
.c-mv-section .contents-wrap .c-note-block {
  grid-area: note;
  justify-self: center;
  padding-inline: 20px;
  width: 100%;
}
.c-mv-section .contents-wrap .price-area {
  grid-area: price;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.c-mv-section .contents-wrap .price-area .c-lines-txt::before, .c-mv-section .contents-wrap .price-area .c-lines-txt::after {
  width: 13px;
  border: 4px solid #FFFFFF;
}
.c-mv-section .contents-wrap .price-area .img {
  display: inline-block;
}
.c-mv-section .contents-wrap .price-area img {
  max-width: 360px;
  width: 100%;
}
.c-mv-section .note-text-wrap {
  padding-block: 10px;
}
.c-mv-section .note-text-wrap .txt + .txt {
  margin-top: 5px;
}
.c-mv-section .note-text-wrap .txt {
  color: #999999;
  font-size: 12px;
  line-height: 1.1666666667;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  gap: 5px;
}
.c-mv-section.c-cta02 .main-wrap > .inner-block {
  background: none;
}
.c-mv-section.c-cta02 .main-wrap .contents-wrap {
  padding: 80px 0 76px;
  max-width: 1300px;
  -webkit-column-gap: 30px;
     -moz-column-gap: 30px;
          column-gap: 30px;
  grid-template-areas: "balloon numones" "main numones";
}
.c-mv-section.c-cta02 .main-wrap .contents-wrap .numberones-area {
  margin: 0;
  width: 100%;
}
.c-mv-section.c-cta02 .main-wrap .contents-wrap .numberones-area img {
  max-width: none;
}

.c-note-block {
  border-radius: 5px;
  border: 3px solid #5a4538;
  background: #FFFFFF;
  padding: 20px 40px;
  margin-inline: auto;
  max-width: 600px;
}
.c-note-block.bg-orange {
  background-color: #ff8d3b;
  color: #FFFFFF;
  border: 0;
}
.c-note-block > .note-txt + .note-txt {
  margin-top: 10px;
}
.c-note-block > .note-txt {
  font-size: 20px;
  font-weight: 700;
  text-align: center;
}
.c-note-block > .note-txt.desc {
  font-size: 14px;
}

.c-calls-block.bg-pink {
  border-color: #ee5353;
}
.c-calls-block.bg-pink .ttl-area {
  background: #ee5353;
  border-color: #ee5353;
}
.c-calls-block.bg-pink .call-ttl {
  color: #ee5353;
}
.c-calls-block.bg-pink .c-freedial {
  color: #ee5353;
}
.c-calls-block {
  max-width: 900px;
  margin-inline: auto;
  border: 1px solid #5a4538;
  border-radius: 10px;
  overflow: hidden;
}
.c-calls-block.js--acc-wrap .ttl-area {
  position: relative;
}
.c-calls-block .ttl-area {
  background-color: #5a4538;
  padding: 10px 20px;
  border-bottom: 1px solid #5a4538;
  color: #FFFFFF;
  width: 100%;
  text-align: center;
}
.c-calls-block .ttl-area .ttl {
  font-size: 20px;
  font-weight: 700;
  line-height: 150%;
}
.c-calls-block .ttl-area .ttl .small {
  font-size: 18px;
}
.c-calls-block .content-area {
  background-color: #FFFFFF;
  padding: 30px clamp(20px, 3.5vw, 35px);
}
.c-calls-block .content-area .call-area {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 10px 50px;
  color: #5a4538;
}
.c-calls-block .content-area .call-area .call-ttl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.3333333333;
}
.c-calls-block .content-area .call-area .call-ttl .small {
  font-size: 14px;
  line-height: 1.4285714286;
}
.c-calls-block .content-area .call-area .c-freedial {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.c-calls-block .content-area .note-txt.sp {
  margin-top: 10px;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.6666666667;
  text-align: center;
}
.c-calls-block .content-area .c-btns-wrap {
  margin-top: 20px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  row-gap: 10px;
  -webkit-column-gap: clamp(8px, 2vw, 20px);
     -moz-column-gap: clamp(8px, 2vw, 20px);
          column-gap: clamp(8px, 2vw, 20px);
}
.c-calls-block .content-area .c-btns-wrap > li > .c-btn {
  font-size: 14px;
}
.c-calls-block .content-area .c-list01 {
  margin-top: 30px;
}

.c-cta-section {
  padding-block: 40px 50px;
  background: #FAF1C3;
}
.c-cta-section .ttl {
  font-size: 40px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.02em;
  margin-bottom: 35px;
}
.c-cta-section .ttl .c-accent-txt .big {
  font-size: 50px;
}
.c-cta-section .c-btns-wrap .c-btn {
  padding-block: 15px;
  min-height: 70px;
}
.c-cta-section .call-area {
  margin-top: 20px;
  padding-top: 18px;
  border-top: 2px dotted #5a4538;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 10px 27px;
}
.c-cta-section .call-area > .txt {
  background: #5a4538;
  width: 100%;
  padding: 8px;
  color: #FFFFFF;
  text-align: center;
  font-size: 18px;
  font-weight: 700;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-column-gap: 1em;
     -moz-column-gap: 1em;
          column-gap: 1em;
}
.c-rec-column-section .c-btns-wrap {
  margin-top: 40px;
}
.c-three-points-top-section .contents-wrap {
  max-width: 783px;
  margin-inline: auto;
  padding: 50px;
  background-color: #FFFFFF;
}
.c-three-points-top-section .contents-wrap > .ttl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.c-three-points-top-section .contents-wrap > .ttl .txt {
  font-size: 50px;
  font-weight: 700;
  line-height: 1.2;
  background-position-y: bottom;
}
.c-three-points-top-section .contents-wrap > .ttl .txt .big {
  font-size: 80px;
  line-height: 1;
}
.c-three-points-top-section .contents-wrap .desc {
  margin-top: 32px;
  font-size: 24px;
  line-height: 2.0833333333;
  text-align: center;
}

.c-plans-section {
  padding-top: 80px;
}

.c-movie-section .contents-wrap {
  display: grid;
  grid-template-columns: 1fr min(45%, 450px);
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 30px clamp(20px, 3.4722222222vw, 50px);
}
.c-movie-section .contents-wrap .txt {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.875;
}
.c-movie-section .contents-wrap .txt + .txt {
  margin-top: 2em;
}
.c-movie-section.interview-movie .contents-wrap {
  grid-template-columns: repeat(auto-fit, minmax(360px, 1fr));
  -webkit-column-gap: clamp(20px, 4.1666666667vw, 60px);
     -moz-column-gap: clamp(20px, 4.1666666667vw, 60px);
          column-gap: clamp(20px, 4.1666666667vw, 60px);
}
.c-movie-section.interview-movie .contents-wrap .interview-card {
  max-width: 500px;
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  height: 100%;
  width: 100%;
  margin-inline: auto;
}
.c-movie-section.interview-movie .contents-wrap .ttl-area {
  margin-block: 20px;
}
.c-movie-section.interview-movie .contents-wrap .ttl-area .ttl {
  font-size: 16px;
  line-height: 1.875;
}
.c-movie-section.interview-movie .contents-wrap .desc-area .txt {
  font-weight: 500;
}

.c-mv-plan-section {
  background: #BFAF86;
}
.c-mv-plan-section.tsukisoi {
  background: #77c1e5;
}
.c-mv-plan-section.ippanso {
  background: #56617D;
}
.c-mv-plan-section.jitakuso {
  background: #4a6779;
}
.c-mv-plan-section.shinzokuso {
  background: #83a49e;
}
.c-mv-plan-section.ichiniciso {
  background: #9acd82;
}
.c-mv-plan-section.kazokuso {
  background: #f08838;
}
.c-mv-plan-section.kazokuso .c-plan-tag {
  border: 1px solid #FFFFFF;
}
.c-mv-plan-section.eidai {
  background: #C3A03E;
}
.c-mv-plan-section.incence {
  background: #666EC6;
}
.c-mv-plan-section .contents-wrap {
  padding-block: 40px;
  padding-inline: clamp(0px, 0.7291666667vw, 14px);
  display: grid;
  grid-template-columns: min(55%, 440px) 1fr;
  grid-template-areas: "tag img" "ttl img" "price img";
  -webkit-column-gap: clamp(20px, 3.6111111111vw, 52px);
     -moz-column-gap: clamp(20px, 3.6111111111vw, 52px);
          column-gap: clamp(20px, 3.6111111111vw, 52px);
}
.c-mv-plan-section .contents-wrap .tag-area {
  grid-area: tag;
}
.c-mv-plan-section .contents-wrap .ttl-area {
  grid-area: ttl;
  margin-block: 20px 30px;
}
.c-mv-plan-section .contents-wrap .ttl-area > .ttl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 20px;
  color: #FFFFFF;
}
.c-mv-plan-section .contents-wrap .ttl-area > .ttl .big {
  font-size: 50px;
  font-weight: 700;
  line-height: 1;
}
.c-mv-plan-section .contents-wrap .ttl-area > .ttl .small {
  font-size: 18px;
  font-style: normal;
  font-weight: 700;
  line-height: 0.8888888889;
}
.c-mv-plan-section .contents-wrap .price-box-area {
  grid-area: price;
}
.c-mv-plan-section .contents-wrap .img-area {
  grid-area: img;
}
.c-mv-plan-section .contents-wrap .img-area img {
  aspect-ratio: 680/400;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  border-radius: 5px;
}
.c-mv-plan-section.col .contents-wrap {
  grid-template-columns: 100%;
  grid-template-areas: "tag" "ttl" "img";
  max-width: 500px;
  margin-inline: auto;
}

.calls-block-section {
  margin-top: 50px;
}
.c-plan-about-section > .img-area {
  margin-bottom: 35px;
  text-align: center;
}
.c-plan-about-section > .img-area img {
  max-height: 220px;
  width: auto;
}
.c-plan-about-section > .desc {
  margin-bottom: 50px;
  font-size: 24px;
  font-weight: 700;
  line-height: 2.0833333333;
  text-align: center;
}
.c-plan-about-section .choose-list-area {
  background: #FFFFFF;
  padding: 30px 16px;
  max-width: 800px;
  margin-inline: auto;
}
.c-plan-about-section .choose-list-area .choose-ttl {
  margin-bottom: 20px;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.6666666667;
  letter-spacing: 0.02em;
}
.c-plan-about-section .choose-list-area .c-choose-list {
  max-width: 600px;
  margin-inline: auto;
}
.c-plan-about-section .choose-list-area .c-choose-list + .top-desc-txt {
  margin-top: 10px;
}

.c-plan-detail-section .details-area {
  margin-top: 40px;
  border-radius: 20px;
  background: #FFFFFF;
  padding: 40px clamp(16px, 2.7777777778vw, 40px);
}
.c-plan-detail-section .detail-each:first-child .c-ttl03 {
  margin-top: 0;
}
.c-plan-detail-section .detail-each .c-ttl03 {
  margin-top: 30px;
  margin-bottom: 30px;
}
.c-plan-detail-section .detail-each .c-ttl03 .note {
  font-size: 12px;
  line-height: 2.5;
}
.c-plan-detail-section .detail-each .ttl {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.6666666667;
}
.c-plan-detail-section .detail-each .desc {
  font-size: 16px;
  font-weight: 500;
  line-height: 1.875;
}
.c-plan-detail-section ul.detail-area {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 30px clamp(20px, 2.7777777778vw, 40px);
}
.c-plan-detail-section .detail-card {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px clamp(16px, 2.0833333333vw, 30px);
  height: 100%;
}
.c-plan-detail-section .detail-card + .detail-card {
  margin-top: 30px;
}
.c-plan-detail-section .detail-card.row {
  display: grid;
  grid-template-columns: clamp(160px, 40%, 280px) 1fr;
}
.c-plan-detail-section .detail-card.row .txt-area .desc {
  margin-top: 5px;
}
.c-plan-detail-section .detail-card:not(.row) .desc {
  font-size: 14px;
  line-height: 2.1428571429;
}
.c-plan-detail-section .detail-card .img-area {
  position: relative;
}
.c-plan-detail-section .detail-card .img-area .modal-open-btn {
  position: absolute;
  top: 12px;
  right: 7px;
  width: 36px;
  height: 36px;
  aspect-ratio: 1;
  -webkit-transition: scale 0.3s ease-in-out;
  transition: scale 0.3s ease-in-out;
}
.c-plan-detail-section .detail-card .img-area .modal-open-btn > img {
  width: 100%;
}
.c-plan-detail-section .detail-card .img-area .modal-open-btn:focus-visible {
  scale: 1.1;
}
.c-plan-detail-section .detail-card .img-area > img {
  border-radius: 5px;
  aspect-ratio: 280/200;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.c-plan-detail-section .detail-card .detail-cont {
  background-color: #FFFFFF;
  border: 2px solid #5a4538;
  border-radius: 5px;
  -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.2);
          box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.2);
  width: 75vw;
  max-width: 375px;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  padding: 24px;
  position: fixed;
  inset: 0;
  margin: auto;
  z-index: 50;
  opacity: 0;
  pointer-events: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -ms-touch-action: none;
      touch-action: none;
  -webkit-transition: opacity 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out;
}
.c-plan-detail-section .detail-card .detail-cont.is-open {
  opacity: 1;
  pointer-events: initial;
  -webkit-user-select: initial;
     -moz-user-select: initial;
      -ms-user-select: initial;
          user-select: initial;
  -ms-touch-action: initial;
      touch-action: initial;
}
.c-plan-detail-section .detail-card .detail-cont .modal-desc {
  font-size: 16px;
  font-weight: 500;
  line-height: 1.875;
}
.c-plan-detail-section .detail-card .detail-cont .modal-close-btn {
  margin-top: 30px;
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 8px 16px;
  margin-inline: auto;
  border-radius: 5px;
  background-color: #5a4538;
  color: #FFFFFF;
  border: 1px solid #5a4538;
}
.c-plan-detail-section .detail-card .detail-cont .modal-close-btn:focus-visible {
  background: #FFFFFF;
  color: #5a4538;
}
.c-plan-detail-section .other-area {
  margin-top: 30px;
}
.c-plan-detail-section .detail-each.plan .detail-card + .detail-card {
  border-top: 2px solid #C3A03E;
  padding-top: 30px;
  margin-top: 30px;
}
.c-plan-detail-section .detail-each.plan .detail-card.row {
  grid-template-columns: clamp(200px, 45%, 450px) 1fr;
}
.c-plan-detail-section .detail-each.plan .detail-card .img-area {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
}
.c-plan-detail-section .detail-each.plan .detail-card .ttl {
  font-size: 24px;
  line-height: 1.2;
}
.c-plan-detail-section .detail-each.plan .detail-card .desc {
  margin-top: 8px;
}
.c-plan-detail-section .detail-each.plan .detail-card .c-plan-tag-list {
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  margin-top: 8px;
}
.c-plan-detail-section .detail-each.plan .detail-card .c-plan-tag-list .c-plan-tag {
  font-size: 14px;
}
.c-plan-detail-section .detail-each.plan .detail-card .c-price-txt {
  margin-top: 8px;
}
.c-plan-detail-section .detail-each.plan .detail-card .c-price-txt .price-txt-wrap .price-wrap {
  grid-template-columns: 1fr auto auto;
  grid-template-areas: "price yen tax";
  -webkit-box-align: baseline;
  -webkit-align-items: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
}
.c-plan-detail-section .detail-each.plan .detail-card .c-price-txt .price-txt-wrap .price-wrap .price {
  font-size: clamp(40px, 6vw, 60px);
}
.c-plan-detail-section .detail-each.plan .detail-card .c-price-txt .price-txt-wrap .price-wrap .tax {
  font-size: 30px;
  line-height: 1;
  -webkit-align-self: auto;
      -ms-flex-item-align: auto;
          align-self: auto;
}

.white-box {
  padding: 50px 40px;
  background: #fff;
  border-radius: 20px;
}
.white-box + .white-box {
  margin-top: 50px;
}
.white-box .long-txt {
  line-height: 2;
}
.white-box .long-txt + .long-txt {
  margin-top: 20px;
}
.c-plan-call-section .c-btn {
  max-width: 320px;
  margin-inline: auto;
}
.c-plan-call-section .call-area {
  text-align: center;
  margin-block: 20px;
}

.c-summary-txt {
  margin-bottom: 50px;
}

.c-tel-txt {
  color: #ff8d3b;
  margin: 0 2px;
}

.c-balloon-txt {
  color: #FFFFFF;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  padding-bottom: 22px;
  position: relative;
}
.c-balloon-txt::after {
  position: absolute;
  content: "";
  background: #ff8d3b;
  -webkit-clip-path: polygon(50% 100%, 0 0, 100% 0);
          clip-path: polygon(50% 100%, 0 0, 100% 0);
  width: auto;
  height: 22px;
  aspect-ratio: 26/22;
  bottom: 1px;
  left: 0;
  right: 0;
  margin: auto;
}
.c-balloon-txt .inn-txt {
  font-size: 30px;
  font-weight: 700;
  padding-block: 10px 13px;
  padding-inline: 20px;
  background-color: #ff8d3b;
  border-radius: 100vw;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  width: 100%;
}

.c-underline-dot {
  -webkit-text-decoration: underline dotted 2px currentColor;
          text-decoration: underline dotted 2px currentColor;
  text-underline-offset: 0.275em;
}

.c-lines-txt {
  padding-inline: 50px;
  margin-inline: auto;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  text-align: center;
  position: relative;
}
.c-lines-txt::before, .c-lines-txt::after {
  position: absolute;
  content: "";
  width: 4px;
  height: 100%;
  max-height: 80px;
  background-color: #ee5353;
  border-radius: 100vw;
  bottom: -5px;
}
.c-lines-txt::before {
  rotate: -25deg;
  left: 25px;
}
.c-lines-txt::after {
  rotate: 25deg;
  right: 25px;
}
.c-lines-txt.lines-brown::before, .c-lines-txt.lines-brown::after {
  background-color: #5a4538;
}

.c-bg-flower {
  background: -webkit-gradient(linear, left top, left bottom, from(#FFF5D3), to(#FFE89C));
  background: linear-gradient(180deg, #FFF5D3 0%, #FFE89C 100%);
  position: relative;
  z-index: 2;
}
.c-bg-flower::before, .c-bg-flower::after {
  position: absolute;
  content: "";
  z-index: -1;
  background-image: url("../img/common/bg-flower.png.webp");
  background-repeat: no-repeat;
  background-size: min(100% + 259px, 823px) auto;
  background-position: -259px calc(100% + 406px);
  background-blend-mode: multiply;
  mix-blend-mode: multiply;
  width: 100%;
  height: 100%;
  inset: 0;
  margin: auto;
}
.c-bg-flower::after {
  rotate: 180deg;
}

.c-freedial {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: baseline;
  -webkit-align-items: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  gap: 10px;
}
.c-freedial > .icon {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: 41px;
  height: 41px;
  aspect-ratio: 1;
}
.c-freedial > .icon > svg {
  width: 100%;
  height: auto;
}
.c-freedial > .number {
  display: inline-block;
  font-family: "Nunito", sans-serif;
  font-size: 60px;
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
}

.c-accent-txt {
  color: #ee5353;
}
.c-accent-txt-orange {
  color: #ff8d3b;
}

.c-marker-txt {
  -webkit-text-decoration-line: underline;
          text-decoration-line: underline;
  -webkit-text-decoration-color: #F7E67C;
          text-decoration-color: #F7E67C;
  -webkit-text-decoration-style: solid;
          text-decoration-style: solid;
  text-decoration-thickness: 0.5em;
  text-underline-offset: -0.3em;
  -webkit-text-decoration-skip-ink: none;
          text-decoration-skip-ink: none;
}
.c-marker-txt.marker-pink {
  -webkit-text-decoration-color: rgba(238, 83, 83, 0.2);
          text-decoration-color: rgba(238, 83, 83, 0.2);
}
.c-marker-txt.marker-pale_yellow {
  -webkit-text-decoration-color: #FFF4D1;
          text-decoration-color: #FFF4D1;
}
.c-marker-txt.marker-skyblue {
  -webkit-text-decoration-color: rgba(167, 216, 233, 0.5);
          text-decoration-color: rgba(167, 216, 233, 0.5);
}
.c-marker-txt.marker-purple {
  -webkit-text-decoration-color: rgba(102, 110, 198, 0.3);
          text-decoration-color: rgba(102, 110, 198, 0.3);
}
.c-marker-txt.marker-gold {
  -webkit-text-decoration-color: rgba(178, 148, 71, 0.3);
          text-decoration-color: rgba(178, 148, 71, 0.3);
}
.c-marker-txt.marker-navy {
  -webkit-text-decoration-color: rgba(86, 97, 125, 0.3);
          text-decoration-color: rgba(86, 97, 125, 0.3);
}

@supports not ((-webkit-text-decoration-skip-ink: none) or (text-decoration-skip-ink: none)) {
  .c-marker-txt {
    -webkit-text-decoration-skip: ink;
            text-decoration-skip: ink;
  }
}
.c-marker-txt02 {
  background: -webkit-gradient(linear, left top, left bottom, from(#F7E67C));
  background: linear-gradient(#F7E67C);
  background-repeat: no-repeat;
  background-size: 100% 16px;
  background-position: center calc(100% - 0.2em);
}

.c-btns-wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 20px;
}
.c-btns-wrap > li {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.c-btns-wrap > li > .note-txt {
  margin-top: 10px;
  text-align: center;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.6666666667;
}

.c-sup {
  vertical-align: 0.25em;
  font-size: 0.75em;
}

.c-link-txt {
  color: #ff8d3b;
  -webkit-text-decoration: underline solid currentColor;
          text-decoration: underline solid currentColor;
  -webkit-transition: -webkit-text-decoration-color 0.3s ease-in-out;
  transition: -webkit-text-decoration-color 0.3s ease-in-out;
  transition: text-decoration-color 0.3s ease-in-out;
  transition: text-decoration-color 0.3s ease-in-out, -webkit-text-decoration-color 0.3s ease-in-out;
}
.c-link-txt:focus-visible {
  -webkit-text-decoration-color: transparent;
          text-decoration-color: transparent;
}

.c-tag {
  padding: 10px 30px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 30px;
  border: 1px solid #5a4538;
  background: #FFFFFF;
  text-align: center;
  font-size: 16px;
  font-weight: 700;
}
.c-tag.mid {
  padding: 8px;
  font-size: 14px;
  line-height: 0.8571428571;
}
.c-tag.small {
  padding: 2px 10px;
  font-size: 12px;
  line-height: 1.6666666667;
}
.c-tag.bdr-s {
  border-radius: 5px;
}

a.c-tag {
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  -webkit-transition-property: background-color, color;
  transition-property: background-color, color;
}
a.c-tag:focus-visible {
  color: #FFFFFF;
  background-color: #ff8d3b;
}

.anchor-list .c-tag {
  padding-right: 52px;
  position: relative;
}
.anchor-list .c-tag.mid {
  padding-right: 30px;
}
.anchor-list .c-tag.mid::before {
  right: 12px;
}
.anchor-list .c-tag.small {
  padding-right: 25px;
}
.anchor-list .c-tag.small::before {
  right: 10px;
}
.anchor-list .c-tag::before {
  -webkit-mask: url(../img/common/ico-arrow.svg) no-repeat center center/contain;
          mask: url(../img/common/ico-arrow.svg) no-repeat center center/contain;
  background-color: currentColor;
  content: "";
  display: block;
  width: 8px;
  height: 14px;
  position: absolute;
  bottom: 0;
  top: 0;
  right: 28px;
  margin: auto;
  rotate: 90deg;
  -webkit-transition: none;
  transition: none;
}

.c-column-card {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
  height: 100%;
}
.c-column-card:focus-visible .img-area img {
  scale: 1.1;
}
.c-column-card:focus-visible .ttl {
  color: #ff8d3b;
}
.c-column-card .img-area {
  aspect-ratio: 280/180;
  border-radius: 10px;
  overflow: hidden;
  border: 1px solid #b6b6b6;
}
.c-column-card .img-area > img {
  width: 100%;
  height: 100%;
  border-radius: 10px;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: scale 0.3s ease-in-out;
  transition: scale 0.3s ease-in-out;
}
.c-column-card .meta-area {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
}
.c-column-card .meta-area > .date {
  font-size: 14px;
  line-height: 1.4285714286;
}
.c-column-card .ttl-area .ttl {
  font-size: 16px;
  line-height: 1.5;
  -webkit-transition: color 0.3s ease-in-out;
  transition: color 0.3s ease-in-out;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}

.c-lead-box .c-ttl01 {
  margin-bottom: 30px;
}
.c-lead-box .lead-txt {
  line-height: 1.875;
  margin-bottom: 30px;
}
.c-lead-box .c-tag-list .c-tag {
  padding: 10px 30px;
}
.c-lead-box .c-tag-list .c-tag::before {
  display: none;
}

.c-pagination {
  margin-top: 80px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.c-pagination > a, .c-pagination > span:not(.dots) {
  color: #ff8d3b;
  letter-spacing: 0.1em;
  border: 1px solid #ff8d3b;
  border-radius: 50%;
  line-height: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 14px;
  font-weight: bold;
  width: 40px;
  height: 40px;
}
.c-pagination > a.active, .c-pagination > a.current, .c-pagination > span:not(.dots).active, .c-pagination > span:not(.dots).current {
  background: #ff8d3b;
  color: #FFFFFF;
}
.c-pagination > a.prev, .c-pagination > a.next, .c-pagination > span:not(.dots).prev, .c-pagination > span:not(.dots).next {
  position: relative;
}
.c-pagination > a.prev::after, .c-pagination > a.prev::before, .c-pagination > a.next::after, .c-pagination > a.next::before, .c-pagination > span:not(.dots).prev::after, .c-pagination > span:not(.dots).prev::before, .c-pagination > span:not(.dots).next::after, .c-pagination > span:not(.dots).next::before {
  background: #ff8d3b;
  width: 8px;
  height: 2px;
  position: absolute;
  content: "";
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  top: 5px;
  bottom: 0;
  margin: auto;
  left: -1px;
  right: 0;
}
.c-pagination > a.prev::after, .c-pagination > a.next::after, .c-pagination > span:not(.dots).prev::after, .c-pagination > span:not(.dots).next::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  top: -5px;
}
.c-pagination > a.prev, .c-pagination > span:not(.dots).prev {
  margin-right: 20px;
}
.c-pagination > a.next, .c-pagination > span:not(.dots).next {
  margin-left: 20px;
}
.c-pagination > a.next::after, .c-pagination > a.next::before, .c-pagination > span:not(.dots).next::after, .c-pagination > span:not(.dots).next::before {
  left: 0;
  right: -1px;
}
.c-pagination > a.next::before, .c-pagination > span:not(.dots).next::before {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.c-pagination > a.next::after, .c-pagination > span:not(.dots).next::after {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.c-pagination .num {
  position: relative;
  top: -1px;
  right: -1px;
}
.c-pagination .dots {
  width: 22px;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  color: #999999;
  position: relative;
  top: -5px;
  font-size: 24px;
}

.c-points-card {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  padding-top: 40px;
  position: relative;
}
.c-points-card > .num-area {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  aspect-ratio: 1;
  border-radius: 50%;
  background-color: #94C16D;
  color: #FFFFFF;
  font-weight: 700;
  padding-inline: 20px;
}
.c-points-card > .num-area .point {
  font-size: 14px;
  line-height: 1.1428571429;
  text-transform: uppercase;
}
.c-points-card > .num-area .num {
  font-size: 32px;
  line-height: 0.9375;
}
.c-points-card > .contents-wrap {
  background-color: #FFFFFF;
  border-radius: 10px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
  padding: 30px;
  padding-top: 52px;
}
.c-points-card > .contents-wrap > .ttl {
  font-size: 20px;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.c-points-card > .contents-wrap > .img-area {
  max-height: 152px;
  text-align: center;
}
.c-points-card > .contents-wrap > .img-area img {
  height: 100%;
  width: auto;
}
.c-points-card > .contents-wrap > .desc {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.6;
}
.c-points-card > .contents-wrap > .btn-area {
  margin-top: auto;
}
.c-points-card > .contents-wrap > .btn-area .c-btn {
  font-size: 16px;
}
.c-points-card.row {
  background: #FFFFFF;
  padding-top: 0;
  border-radius: 10px;
  padding: 30px;
  padding-left: 20px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
}
.c-points-card.row > .num-area {
  position: relative;
  inset: auto;
}
.c-points-card.row > .contents-wrap {
  padding: 0;
}
.usp .c-points-card > .contents-wrap .notes {
  font-size: 14px;
}
.usp .c-points-card > .contents-wrap .notes > li {
  position: relative;
  padding-left: 20px;
}
.usp .c-points-card > .contents-wrap .notes > li::after {
  position: absolute;
  content: "※";
  left: 0;
  top: 0;
  width: 20px;
  height: 20px;
}
.usp .c-points-card > .contents-wrap .notes > li + li {
  margin-top: 5px;
}

.c-plans-card {
  width: 340px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  height: 100%;
  border-radius: 10px;
  background: #FFFFFF;
  -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.2);
          box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.2);
}
.c-plans-card .ttl-area {
  border-radius: 10px 10px 0 0;
  color: #FFFFFF;
  width: 100%;
  padding-block: 10px;
  padding-inline: 15px;
}
.c-plans-card .ttl-area .ttl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-weight: 700;
}
.c-plans-card .ttl-area .ttl .desc {
  font-size: 12px;
}
.c-plans-card .ttl-area .ttl .big {
  font-size: 24px;
  line-height: 1;
  margin-bottom: 10px;
}
.c-plans-card .ttl-area .ttl .small {
  font-size: 16px;
  line-height: 1;
}
.c-plans-card .ttl-area .img-area {
  -webkit-align-self: center;
      -ms-flex-item-align: center;
          align-self: center;
  aspect-ratio: 120/80;
  border-radius: 5px;
}
.c-plans-card .ttl-area .img-area img {
  border-radius: 5px;
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
  width: 100%;
}
.c-plans-card .contents-wrap {
  padding-block: 12px;
  padding-inline: 20px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  height: 100%;
  width: 100%;
}
.c-plans-card .contents-wrap .desc {
  text-align: center;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.5; /* 150% */
}
.c-plans-card .contents-wrap .img-area {
  aspect-ratio: 2/1;
  max-height: 135px;
  border-radius: 5px;
}
.c-plans-card .contents-wrap .img-area img {
  border-radius: 5px;
  -o-object-fit: contain;
     object-fit: contain;
  height: 100%;
  width: 100%;
}
.c-plans-card .contents-wrap .tag-list-area {
  max-width: 270px;
  margin-inline: auto;
}
.c-plans-card .contents-wrap .tag-list-area .c-tag-list {
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  row-gap: 5px;
}
.c-plans-card .contents-wrap .btn-area {
  margin-top: auto;
}
.c-plans-card .contents-wrap .btn-area .c-btn {
  color: #FFFFFF;
  padding-block: 12px;
}
.c-plans-card .contents-wrap .btn-area .c-btn:focus-visible {
  background-color: #FFFFFF;
}
.c-plans-card .contents-wrap .btn-area .c-btn .inn-txt {
  font-size: 14px;
}
.c-plans-card .contents-wrap .btn-area .c-btn .inn-txt::after {
  background: currentColor;
}
.c-plans-card.clr-kazokusou_1day .ttl-area {
  background: #7db462;
}
.c-plans-card.clr-kazokusou_1day .contents-wrap .c-tag {
  color: #7db462;
  border-color: #7db462;
}
.c-plans-card.clr-kazokusou_1day .contents-wrap .btn-area .c-btn {
  background: #7db462;
  border-color: #7db462;
}
.c-plans-card.clr-kazokusou_1day .contents-wrap .btn-area .c-btn:focus-visible {
  color: #7db462;
}
.c-plans-card.clr-kazokusou_2days .ttl-area {
  background: #ff8d3b;
}
.c-plans-card.clr-kazokusou_2days .contents-wrap .c-tag {
  color: #ff8d3b;
  border-color: #ff8d3b;
}
.c-plans-card.clr-kazokusou_2days .contents-wrap .btn-area .c-btn {
  background: #ff8d3b;
  border-color: #ff8d3b;
}
.c-plans-card.clr-kazokusou_2days .contents-wrap .btn-area .c-btn:focus-visible {
  color: #ff8d3b;
}
.c-plans-card.clr-shinzokusou .ttl-area {
  background: #567d71;
}
.c-plans-card.clr-shinzokusou .contents-wrap .c-tag {
  color: #567d71;
  border-color: #567d71;
}
.c-plans-card.clr-shinzokusou .contents-wrap .btn-area .c-btn {
  background: #567d71;
  border-color: #567d71;
}
.c-plans-card.clr-shinzokusou .contents-wrap .btn-area .c-btn:focus-visible {
  color: #567d71;
}
.c-plans-card.clr-ippansou .ttl-area {
  background: #56617D;
}
.c-plans-card.clr-ippansou .contents-wrap .c-tag {
  color: #56617D;
  border-color: #56617D;
}
.c-plans-card.clr-ippansou .contents-wrap .btn-area .c-btn {
  background: #56617D;
  border-color: #56617D;
}
.c-plans-card.clr-ippansou .contents-wrap .btn-area .c-btn:focus-visible {
  color: #56617D;
}
.c-plans-card.clr-kasoushiki .ttl-area {
  background: #B29447;
}
.c-plans-card.clr-kasoushiki .contents-wrap .c-tag {
  color: #B29447;
  border-color: #B29447;
}
.c-plans-card.clr-kasoushiki .contents-wrap .btn-area .c-btn {
  background: #B29447;
  border-color: #B29447;
}
.c-plans-card.clr-kasoushiki .contents-wrap .btn-area .c-btn:focus-visible {
  color: #B29447;
}
.c-plans-card.clr-jitakushiki .ttl-area {
  background: #4a6779;
}
.c-plans-card.clr-jitakushiki .contents-wrap .c-tag {
  color: #4a6779;
  border-color: #4a6779;
}
.c-plans-card.clr-jitakushiki .contents-wrap .btn-area .c-btn {
  background: #4a6779;
  border-color: #4a6779;
}
.c-plans-card.clr-jitakushiki .contents-wrap .btn-area .c-btn:focus-visible {
  color: #4a6779;
}
.c-plans-card.clr-tsukisoishiki .ttl-area {
  background: #77c1e5;
}
.c-plans-card.clr-tsukisoishiki .contents-wrap .c-tag {
  color: #77c1e5;
  border-color: #77c1e5;
}
.c-plans-card.clr-tsukisoishiki .contents-wrap .btn-area .c-btn {
  background: #77c1e5;
  border-color: #77c1e5;
}
.c-plans-card.clr-tsukisoishiki .contents-wrap .btn-area .c-btn:focus-visible {
  color: #77c1e5;
}

.c-discount-txt {
  background: #F7E67C;
  padding: 4px 10px 6px 10px;
  font-size: 16px;
  font-weight: 900;
  line-height: 1.25;
  text-align: center;
}
.c-discount-txt .big {
  font-size: 24px;
  line-height: 0.8333333333;
}
.c-discount-txt.c-balloon-txt {
  color: #5a4538;
  padding-inline: 0;
  padding-top: 0;
  background: transparent;
}
.c-discount-txt.c-balloon-txt .inn-txt {
  display: block;
  background: #F7E67C;
  padding: 4px 10px 6px 10px;
}
.c-discount-txt.c-balloon-txt::after {
  background: #F7E67C;
}

.js--acc-wrap.is-open .js--acc-btn .inn-txt::before {
  rotate: -90deg;
}
.js--acc-wrap .js--acc-btn .inn-txt::before {
  rotate: 90deg;
  -webkit-transition: rotate 0.3s ease-in-out;
  transition: rotate 0.3s ease-in-out;
}

.c-map-area {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.c-map-area > svg > a:focus-visible path:not([fill="#5A4538"]) {
  -webkit-filter: brightness(0.9);
          filter: brightness(0.9);
}
.c-map-area > svg path {
  -webkit-transition: -webkit-filter 0.3s ease-in-out;
  transition: -webkit-filter 0.3s ease-in-out;
  transition: filter 0.3s ease-in-out;
  transition: filter 0.3s ease-in-out, -webkit-filter 0.3s ease-in-out;
}

.c-breadcrumbs {
  background: #F1F5F3;
  padding: 3px 0;
  font-weight: 400;
}
.c-breadcrumbs .breadcrumbs-list {
  white-space: nowrap;
  overflow-x: auto;
}
.c-breadcrumbs .breadcrumbs-list::-webkit-scrollbar {
  width: 100%;
  height: 5px;
}
.c-breadcrumbs .breadcrumbs-list::-webkit-scrollbar-track {
  background: rgba(255, 255, 255, 0.2);
  border-radius: 10px;
}
.c-breadcrumbs .breadcrumbs-list::-webkit-scrollbar-thumb {
  background-color: #D9D9D9;
  border-radius: 10px;
}
.c-breadcrumbs .breadcrumbs-list li {
  font-size: 14px;
  display: inline;
  position: relative;
  vertical-align: text-top;
}
.c-breadcrumbs .breadcrumbs-list li + li {
  padding-left: 25px;
}
.c-breadcrumbs .breadcrumbs-list li + li::before, .c-breadcrumbs .breadcrumbs-list li + li::after {
  content: "";
  position: absolute;
  top: calc(50% - 0.5px);
  left: 7px;
  width: 6px;
  height: 1px;
  background-color: #5a4538;
  -webkit-transform-origin: calc(100% - 0.5px) 50%;
          transform-origin: calc(100% - 0.5px) 50%;
}
.c-breadcrumbs .breadcrumbs-list li + li::before {
  rotate: 45deg;
}
.c-breadcrumbs .breadcrumbs-list li + li::after {
  rotate: -45deg;
}
.c-breadcrumbs .breadcrumbs-list li:nth-child(1) {
  padding-left: 28px;
  position: relative;
  top: 1px;
}
.c-breadcrumbs .breadcrumbs-list li:nth-child(1)::before {
  position: absolute;
  content: "";
  background: url(../img/common/ico-home.svg) no-repeat center/contain;
  width: 18px;
  height: 16px;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}

.c-slider-parts.splide .splide__track {
  padding-block: 20px;
}
.c-slider-parts.splide .splide__arrow {
  border-radius: 0 20px 20px 0;
  background-color: #FFFFFF;
  -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.2);
          box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.2);
  padding: 16px;
  width: 100px;
  height: 200px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  position: absolute;
  z-index: 3;
  top: 0;
  bottom: 0;
  margin: auto;
  -webkit-transition: background 0.3s ease-in-out;
  transition: background 0.3s ease-in-out;
}
.c-slider-parts.splide .splide__arrow:focus-visible {
  background: #F1F5F3;
}
.c-slider-parts.splide .splide__arrow .icon {
  width: 14px;
  height: 24px;
  rotate: 180deg;
}
.c-slider-parts.splide .splide__arrow--prev {
  left: 0;
}
.c-slider-parts.splide .splide__arrow--next {
  right: 0;
  rotate: 180deg;
}

.c-movie-parts {
  aspect-ratio: 16/9;
  position: relative;
}
.c-movie-parts.has-movie::before {
  display: none;
}
.c-movie-parts.has-movie .movie {
  background: transparent;
}
.c-movie-parts::before {
  position: absolute;
  content: "";
  background: url("../img/common/ico-movie.svg") no-repeat center/contain;
  width: 65px;
  height: 100%;
  aspect-ratio: 65/41;
  inset: 0;
  margin: auto;
}
.c-movie-parts .movie {
  background: #999999;
  border-radius: 10px;
  border: 0;
  width: 100%;
  height: 100%;
}
.c-movie-parts .movie iframe {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
  width: 100%;
  border-radius: 10px;
}

.c-price-txt {
  font-weight: 700;
}
.c-price-txt .price-txt-wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 5px;
}
.c-price-txt .price-txt-wrap .price-before {
  color: #999999;
  font-size: 12px;
  line-height: 1.6666666667;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}
.c-price-txt .price-txt-wrap .price-before .price {
  font-size: 18px;
  line-height: 1.1111111111;
}
.c-price-txt .price-txt-wrap .price-before .price .yen {
  font-size: 14px;
  line-height: 1.4285714286;
}
.c-price-txt .price-txt-wrap .arrow {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.c-price-txt .price-txt-wrap .c-price-after .price-wrap {
  display: grid;
  grid-template-columns: 1fr auto;
  grid-template-areas: "price tax" "price yen";
}
.c-price-txt .price-txt-wrap .c-price-after .price-wrap .price {
  grid-area: price;
  font-size: 60px;
  line-height: 1.1666666667;
}
.c-price-txt .price-txt-wrap .c-price-after .price-wrap .price .small {
  font-size: 50px;
  line-height: 1.4;
}
.c-price-txt .price-txt-wrap .c-price-after .price-wrap .yen {
  grid-area: yen;
  font-size: 30px;
  line-height: 1;
}
.c-price-txt .price-txt-wrap .c-price-after .price-wrap .tax {
  grid-area: tax;
  align-self: end;
  font-size: 12px;
  line-height: 1.6666666667;
}
.c-price-txt .price-txt-wrap .c-price-after .total {
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-left: auto;
  color: #999999;
  font-size: 10px;
  font-weight: 700;
  line-height: 2;
}
.c-price-txt .price-txt-wrap .c-price-after .total .big {
  font-size: 12px;
  line-height: 1.6666666667;
}
.c-price-txt .note-txt-area {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-left: auto;
  font-size: 10px;
  font-weight: 400;
  line-height: 1.6;
}

.c-price-after .price-wrap {
  display: grid;
  grid-template-columns: 1fr auto;
  grid-template-areas: "price tax" "price yen";
}
.c-price-after .price-wrap .price {
  grid-area: price;
  font-size: 60px;
  line-height: 1.1666666667;
}
.c-price-after .price-wrap .price .small {
  font-size: 50px;
  line-height: 1.4;
}
.c-price-after .price-wrap .yen {
  grid-area: yen;
  font-size: 30px;
  line-height: 1;
}
.c-price-after .price-wrap .tax {
  grid-area: tax;
  align-self: end;
  font-size: 12px;
  line-height: 1.6666666667;
}
.c-price-after .total {
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-left: auto;
  color: #999999;
  font-size: 10px;
  font-weight: 700;
  line-height: 2;
}
.c-price-after .total .big {
  font-size: 12px;
  line-height: 1.6666666667;
}

.c-plan-tag {
  padding: 5px 15px;
  text-align: center;
  border-radius: 5px;
  background: #DEDEDE;
  display: inline-block;
  color: #999999;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
}
.c-plan-tag.is-matched {
  background: #ff8d3b;
  color: #FFFFFF;
}

.c-plan-price-box {
  padding-top: 17px;
  position: relative;
}
.c-plan-price-box > .ttl {
  border-radius: 100vw;
  border: 1px solid #5a4538;
  background: #FFFFFF;
  padding: 5px clamp(8px, 1.0416666667vw, 15px);
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
  max-width: calc(100% - clamp(2px, 1.0416666667vw, 20px) * 2);
  position: absolute;
  bottom: calc(100% - 37px);
  left: 0;
  right: 0;
  margin: auto;
}
.c-plan-price-box .price-box-wrap {
  background: #FFFFFF;
  border-radius: 10px;
  -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.2);
          box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.2);
  padding: 37px clamp(16px, 2.2222222222vw, 32px) 18px;
}
.c-plan-price-box .price-box-wrap .c-price-txt .discount-txt {
  font-size: 16px;
  font-weight: 900;
  line-height: 1.25;
  text-align: center;
}
.c-plan-price-box .price-box-wrap .c-price-txt .note-txt-area {
  margin-inline: auto;
}
.c-plan-price-box .price-box-wrap .c-price-txt .note-txt-area > li {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
}

.c-flow-chart {
  max-width: 750px;
  margin-inline: auto;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}
.c-flow-chart > li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 22px;
}
.c-flow-chart > li:not(:last-child) .ttl {
  position: relative;
}
.c-flow-chart > li:not(:last-child) .ttl::after {
  position: absolute;
  content: "";
  z-index: 2;
  width: 20px;
  height: 100%;
  -webkit-clip-path: polygon(100% 50%, 0 0, 0 100%);
          clip-path: polygon(100% 50%, 0 0, 0 100%);
  background-color: #5a4538;
  left: calc(100% - 1px);
  top: 0;
  bottom: 0;
  margin: auto;
}
.c-flow-chart > li:first-child .flow-steps {
  padding-left: 10px;
}
.c-flow-chart > li:last-child .flow-steps {
  padding-right: 10px;
}
.c-flow-chart > li:last-child .flow-steps > li:last-child::after {
  content: unset;
}
.c-flow-chart > li:nth-child(2) .ttl {
  background: #74C36A;
}
.c-flow-chart > li:nth-child(2) .ttl::after {
  background: #74C36A;
}
.c-flow-chart > li:nth-child(2) .flow-steps {
  -webkit-box-pack: space-evenly;
  -webkit-justify-content: space-evenly;
      -ms-flex-pack: space-evenly;
          justify-content: space-evenly;
  gap: 0;
}
.c-flow-chart > li:nth-child(2) .flow-steps > li {
  border-color: #74C36A;
  color: #74C36A;
}
.c-flow-chart > li:nth-child(3) .ttl {
  background: #34965D;
}
.c-flow-chart > li:nth-child(3) .ttl::after {
  background: #34965D;
}
.c-flow-chart > li:nth-child(3) .flow-steps > li {
  border-color: #34965D;
  color: #34965D;
}
.c-flow-chart > li .ttl {
  width: 100%;
  padding: 12px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  color: #FFFFFF;
  background: #5a4538;
}
.c-flow-chart > li .flow-steps {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 40px;
  height: 100%;
}
.c-flow-chart > li .flow-steps > li {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.125;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  padding: 20px 6px;
  border-radius: 100vw;
  border: 1px solid #5a4538;
  background: #FFFFFF;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  position: relative;
}
.c-flow-chart > li .flow-steps > li::after {
  position: absolute;
  content: "";
  -webkit-mask: url("../img/common/ico-triangle02.svg") no-repeat center center/contain;
          mask: url("../img/common/ico-triangle02.svg") no-repeat center center/contain;
  background: #5a4538;
  width: 8px;
  height: 10px;
  top: 0;
  bottom: 0;
  left: calc(100% + 30px);
  margin: auto;
}

.c-flow-chart02 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 30px;
  height: 100%;
}
.c-flow-chart02 > li {
  font-size: 16px;
  font-weight: 700;
  line-height: 1;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  padding: 14px 12px;
  border-radius: 10px;
  background: #999999;
  color: #FFFFFF;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.c-flow-chart02 > li:not(:last-child) {
  position: relative;
}
.c-flow-chart02 > li:not(:last-child)::after {
  position: absolute;
  content: "";
  -webkit-mask: url("../img/common/ico-triangle02.svg") no-repeat center center/contain;
          mask: url("../img/common/ico-triangle02.svg") no-repeat center center/contain;
  background: #5a4538;
  width: 8px;
  height: 10px;
  top: 0;
  bottom: 0;
  left: calc(100% + 12px);
  margin: auto;
}

.js--scrollable .scroll-hint-icon {
  z-index: 5;
}

.c-plan-cards-mini {
  gap: 10px 20px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-weight: bold;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.c-plan-cards-mini .clr-kasoushiki > a {
  border: 2px solid #B29447;
}
.c-plan-cards-mini .clr-kasoushiki > a::after, .c-plan-cards-mini .clr-kasoushiki > a::before {
  background: #B29447;
}
.c-plan-cards-mini .clr-kasoushiki .left .ttl {
  color: #B29447;
}
.c-plan-cards-mini .clr-jitakushiki > a {
  border: 2px solid #4a6779;
}
.c-plan-cards-mini .clr-jitakushiki > a::after, .c-plan-cards-mini .clr-jitakushiki > a::before {
  background: #4a6779;
}
.c-plan-cards-mini .clr-jitakushiki .left .ttl {
  color: #4a6779;
}
.c-plan-cards-mini .clr-tsukisoishiki > a {
  border: 2px solid #77c1e5;
}
.c-plan-cards-mini .clr-tsukisoishiki > a::after, .c-plan-cards-mini .clr-tsukisoishiki > a::before {
  background: #77c1e5;
}
.c-plan-cards-mini .clr-tsukisoishiki .left .ttl {
  color: #77c1e5;
}
.c-plan-cards-mini .clr-kazokusou_1day > a {
  border: 2px solid #7db462;
}
.c-plan-cards-mini .clr-kazokusou_1day > a::after, .c-plan-cards-mini .clr-kazokusou_1day > a::before {
  background: #7db462;
}
.c-plan-cards-mini .clr-kazokusou_1day .left .ttl {
  color: #7db462;
}
.c-plan-cards-mini .clr-kazokusou_2days > a {
  border: 2px solid #ff8d3b;
}
.c-plan-cards-mini .clr-kazokusou_2days > a::after, .c-plan-cards-mini .clr-kazokusou_2days > a::before {
  background: #ff8d3b;
}
.c-plan-cards-mini .clr-kazokusou_2days .left .ttl {
  color: #ff8d3b;
}
.c-plan-cards-mini .clr-shinzokusou > a {
  border: 2px solid #567d71;
}
.c-plan-cards-mini .clr-shinzokusou > a::after, .c-plan-cards-mini .clr-shinzokusou > a::before {
  background: #567d71;
}
.c-plan-cards-mini .clr-shinzokusou .left .ttl {
  color: #567d71;
}
.c-plan-cards-mini .clr-ippansou > a {
  border: 2px solid #56617D;
}
.c-plan-cards-mini .clr-ippansou > a::after, .c-plan-cards-mini .clr-ippansou > a::before {
  background: #56617D;
}
.c-plan-cards-mini .clr-ippansou .left .ttl {
  color: #56617D;
}
.c-plan-cards-mini .clr-kaiyou > a {
  border: 2px solid #69AFCA;
}
.c-plan-cards-mini .clr-kaiyou > a::after, .c-plan-cards-mini .clr-kaiyou > a::before {
  background: #69AFCA;
}
.c-plan-cards-mini .clr-kaiyou .left .ttl {
  color: #69AFCA;
}
.c-plan-cards-mini .clr-eidai > a {
  border: 2px solid #C3A03E;
}
.c-plan-cards-mini .clr-eidai > a::after, .c-plan-cards-mini .clr-eidai > a::before {
  background: #C3A03E;
}
.c-plan-cards-mini .clr-eidai .left .ttl {
  color: #C3A03E;
}
.c-plan-cards-mini > li {
  font-size: 10px;
}
.c-plan-cards-mini > li > a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  padding: 13px 39px 13px 15px;
  border-radius: 5px;
  position: relative;
}
.c-plan-cards-mini > li > a::after, .c-plan-cards-mini > li > a::before {
  position: absolute;
  content: "";
  height: 2px;
  width: 13px;
  border-radius: 2px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  top: -8px;
  bottom: 0;
  margin: auto;
  right: 10px;
}
.c-plan-cards-mini > li > a::before {
  top: 8px;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.c-plan-cards-mini > li .left {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
}
.c-plan-cards-mini > li .left .img {
  width: 70px;
  height: 70px;
  border-radius: 5px;
}
.c-plan-cards-mini > li .left .img img {
  border-radius: 5px;
}
.c-plan-cards-mini > li .left .tags {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 3px;
}
.c-plan-cards-mini > li .left .tags .tag {
  background: #DEDEDE;
  border-radius: 5px;
  color: #999999;
  line-height: 1;
  padding: 2px 5px;
}
.c-plan-cards-mini > li .left .tags .tag.active {
  background: #ff8d3b;
  color: #fff;
}
.c-plan-cards-mini > li .left .ttl {
  font-size: 24px;
  line-height: 1.25;
  margin: 5px 0;
  font-weight: bold;
}
.c-plan-cards-mini > li .left .note {
  line-height: 1.2;
}
.c-plan-cards-mini > li .right {
  width: 186px;
}
.c-plan-cards-mini > li .right .banner {
  background: #F7E67C;
  line-height: 1;
  padding: 2px 10px 4px;
  text-align: center;
}
.c-plan-cards-mini > li .right .banner .pink {
  color: #ee5353;
}
.c-plan-cards-mini > li .right .banner .large {
  font-size: 14px;
}
.c-plan-cards-mini > li .right .price {
  margin-top: 11px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 5px;
}
.c-plan-cards-mini > li .right .price > span {
  display: block;
  width: 43px;
}
.c-plan-cards-mini > li .right .price > span:nth-child(2) {
  width: 90px;
  position: relative;
  z-index: 1;
}
.c-plan-cards-mini > li .right .price > span:nth-child(2)::after {
  position: absolute;
  content: "";
  background: #F7E67C;
  bottom: 2px;
  left: 0;
  width: 100%;
  height: 11px;
  z-index: -1;
}
.c-plan-cards-mini > li .right .price > span.num {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  line-height: 1;
}
.c-plan-cards-mini > li .right .price > span.num span {
  display: block;
}
.c-plan-cards-mini > li .right .price > span.num .pink {
  font-size: 40px;
  color: #ee5353;
  letter-spacing: -0.03em;
  position: relative;
  top: -6px;
}
.c-plan-cards-mini > li .right .price > span.num .pink .small {
  display: inline;
  font-size: 25px;
}
.c-plan-cards-mini > li .right .price > span.num .unit {
  width: 40px;
  height: 24px;
  line-height: 1.2;
  position: absolute;
  right: -7px;
  top: 7px;
  text-align: center;
}

.c-detail-table {
  margin-top: 30px;
  border: 1px solid #999999;
}
.c-detail-table table {
  width: 100%;
}
.c-detail-table tr:not(:first-child) {
  border-top: 1px solid #999999;
}
.c-detail-table tr th {
  background: #F1F5F3;
  border-right: 1px solid #999999;
  width: 23.9130434783%;
  padding: 16px 20px;
}
.c-detail-table tr td {
  padding: 16px 20px;
  width: 76.0869565217%;
  line-height: 1.5;
}
.c-detail-table .tags {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.c-detail-table .tags > li {
  width: 65px;
}

.c-setplan-cards-mini {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(450px, 1fr));
  gap: 20px;
}
.c-setplan-cards-mini > li {
  border-radius: 5px;
  border: 2px solid #69AFCA;
  background: #FFFFFF;
}
.c-setplan-cards-mini > li > a {
  display: grid;
  grid-template-columns: min(30%, 80px) 1fr;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px 20px;
  padding: 20px;
  padding-right: 40px;
  position: relative;
}
.c-setplan-cards-mini > li > a:focus-visible:hover {
  -webkit-box-shadow: 0 0 15px rgba(0, 0, 0, 0.2);
          box-shadow: 0 0 15px rgba(0, 0, 0, 0.2);
}
.c-setplan-cards-mini > li > a::after {
  position: absolute;
  content: "";
  -webkit-mask: url("../img/common/ico-arrow.svg") no-repeat center/contain;
          mask: url("../img/common/ico-arrow.svg") no-repeat center/contain;
  background-color: #69AFCA;
  width: 14px;
  height: auto;
  aspect-ratio: 13/26;
  right: 20px;
  top: 0;
  bottom: 0;
  margin: auto;
}
.c-setplan-cards-mini > li > a > .right {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.c-setplan-cards-mini > li > a > .right > .ttl {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.3333333333;
  letter-spacing: -0.03em;
  text-align: center;
}
.c-setplan-cards-mini > li > a > .right .discount-txt {
  font-size: 12px;
  font-weight: 700;
  line-height: 2;
  letter-spacing: -0.03em;
  padding-inline: 30px;
}
.c-setplan-cards-mini > li > a > .right .discount-txt::before, .c-setplan-cards-mini > li > a > .right .discount-txt::after {
  width: 2px;
  bottom: 0;
  top: 0;
}
.c-setplan-cards-mini > li > a > .right .discount-txt::before {
  left: 15px;
}
.c-setplan-cards-mini > li > a > .right .discount-txt::after {
  right: 15px;
}
.c-setplan-cards-mini > li > a > .right .price {
  background: rgba(238, 83, 83, 0.2);
  padding: 6px 10px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
}
.c-setplan-cards-mini > li > a > .right .price .big {
  font-size: 30px;
  line-height: 0.8;
}
.c-setplan-cards-mini > li > a > .right .note-txt {
  font-size: 12px;
  font-weight: 700;
  line-height: 2;
  letter-spacing: -0.03em;
  text-align: center;
}
.c-setplan-cards-mini > li.clr-kasoushiki {
  border-color: #B29447;
}
.c-setplan-cards-mini > li.clr-kasoushiki > a::after {
  background: #B29447;
}
.c-setplan-cards-mini > li.clr-jitakushiki {
  border-color: #4a6779;
}
.c-setplan-cards-mini > li.clr-jitakushiki > a::after {
  background: #4a6779;
}
.c-setplan-cards-mini > li.clr-tsukisoishiki {
  border-color: #77c1e5;
}
.c-setplan-cards-mini > li.clr-tsukisoishiki > a::after {
  background: #77c1e5;
}
.c-setplan-cards-mini > li.clr-kazokusou_1day {
  border-color: #7db462;
}
.c-setplan-cards-mini > li.clr-kazokusou_1day > a::after {
  background: #7db462;
}
.c-setplan-cards-mini > li.clr-kazokusou_2days {
  border-color: #ff8d3b;
}
.c-setplan-cards-mini > li.clr-kazokusou_2days > a::after {
  background: #ff8d3b;
}
.c-setplan-cards-mini > li.clr-shinzokusou {
  border-color: #567d71;
}
.c-setplan-cards-mini > li.clr-shinzokusou > a::after {
  background: #567d71;
}
.c-setplan-cards-mini > li.clr-ippansou {
  border-color: #56617D;
}
.c-setplan-cards-mini > li.clr-ippansou > a::after {
  background: #56617D;
}
.c-setplan-cards-mini > li.clr-kaiyou {
  border-color: #69AFCA;
}
.c-setplan-cards-mini > li.clr-kaiyou > a::after {
  background: #69AFCA;
}
.c-setplan-cards-mini > li.clr-eidai {
  border-color: #C3A03E;
}
.c-setplan-cards-mini > li.clr-eidai > a::after {
  background: #C3A03E;
}

.top-note-txt {
  font-size: 12px;
  font-weight: 700;
  line-height: 1.1666666667;
  text-align: center;
}

.top-desc-txt {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.875;
  text-align: center;
}

.c-list01 > li {
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  padding-block: 8px;
}
.c-list01 > li:not(:last-child) {
  border-bottom: 2px dotted #D9D9D9;
}
.c-list01 > li:first-child {
  padding-top: 0;
}
.c-list01 > li:last-child {
  padding-bottom: 0;
}
.c-flow-list > li + li {
  padding-top: 20px;
  position: relative;
}
.c-flow-list > li + li::before {
  position: absolute;
  content: "";
  width: 2px;
  height: 20px;
  border-left: 2px dotted #5a4538;
  bottom: calc(100% - 20px);
  left: 0;
  right: 0;
  margin: auto;
}
.c-flow-list > li > .contents-wrap {
  background-color: #FFFAE9;
  border-radius: 20px;
  padding: 30px;
  display: grid;
  grid-template-columns: 1fr min(30%, 200px);
  grid-template-rows: auto 1fr;
  grid-template-areas: "ttl img" "desc img";
  gap: 20px 40px;
}
.c-flow-list > li > .contents-wrap > .c-num-ttl {
  grid-area: ttl;
  align-self: center;
}
.c-flow-list > li > .contents-wrap > .desc {
  grid-area: desc;
  font-size: 16px;
  line-height: 1.875;
}
.c-flow-list > li > .contents-wrap > .img-area {
  grid-area: img;
}

.c-tag-list {
  max-width: 900px;
  margin-inline: auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
}

.c-column-card-list {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(224px, 1fr));
  gap: 40px 27px;
}
.c-column-card-list > li {
  height: 100%;
}

.c-link-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  grid-auto-flow: dense;
  gap: 10px 32px;
}
.c-link-list.in-header {
  grid-template-columns: 100%;
  gap: 0;
}
.c-link-list.in-header .col > li:not(:last-child) {
  border-bottom: 1px solid #D9D9D9;
}
.c-link-list.in-header .col > li a + ul,
.c-link-list.in-header .col > li button + ul {
  border-top: 1px solid #D9D9D9;
}
.c-link-list.in-header .col > li ul {
  padding-left: 0;
  margin-bottom: 0;
}
.c-link-list.in-header .col > li ul li:last-child {
  border-bottom: none;
}
.c-link-list.in-header .col > li ul li a,
.c-link-list.in-header .col > li ul li button {
  padding-left: 45px;
  padding-block: 16px;
  position: relative;
}
.c-link-list.in-header .col > li ul li a::before,
.c-link-list.in-header .col > li ul li button::before {
  position: absolute;
  content: "";
  background: #999999;
  width: 15px;
  height: 1px;
  left: 20px;
  top: 0;
  bottom: 0;
  margin: auto;
}
.c-link-list.in-header li {
  border-bottom: 1px solid #D9D9D9;
}
.c-link-list.in-header li > a,
.c-link-list.in-header li > button {
  width: 100%;
  padding-block: 16px;
  padding-inline: 20px;
}
.c-link-list.in-header li > a > .inn-txt,
.c-link-list.in-header li > button > .inn-txt {
  padding-left: 0;
  padding-right: 20px;
  width: 100%;
  text-align: left;
}
.c-link-list.in-header li > a > .inn-txt::before,
.c-link-list.in-header li > button > .inn-txt::before {
  left: auto;
  right: 0;
}
.c-link-list .col > li ul {
  padding-left: 20px;
  margin-bottom: 10px;
}
.c-link-list .col > li ul a,
.c-link-list .col > li ul button {
  padding-block: 5px;
}
.c-link-list li > a,
.c-link-list li > button {
  font-size: 14px;
  padding-block: 10px;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  -webkit-transition-property: color, background, font-weight;
  transition-property: color, background, font-weight;
}
.c-link-list li > a:focus-visible,
.c-link-list li > button:focus-visible {
  color: #ff8d3b;
}
.c-link-list li > a > .inn-txt,
.c-link-list li > button > .inn-txt {
  padding-left: 20px;
  position: relative;
}
.c-link-list li > a > .inn-txt::before,
.c-link-list li > button > .inn-txt::before {
  position: absolute;
  content: "";
  -webkit-mask: url("../img/common/ico-arrow.svg") no-repeat center/contain;
          mask: url("../img/common/ico-arrow.svg") no-repeat center/contain;
  background: currentColor;
  width: 8px;
  height: 12px;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  -webkit-transition: background 0.3s ease-in-out;
  transition: background 0.3s ease-in-out;
}

.c-points-card-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px 33px;
}
.c-points-card-list > li {
  max-width: 500px;
  margin-inline: auto;
}
.c-points-card-list.two-columns {
  grid-template-columns: repeat(2, 1fr);
}
.c-points-card-list.two-columns > li {
  max-width: none;
}

.c-services-btn-list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 30px 40px;
}

.c-plan-tag-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
}

.c-choose-list > li:first-child {
  padding-top: 0;
}
.c-choose-list > li {
  border-bottom: 2px dotted #D9D9D9;
  padding-block: 10px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 12px;
  font-size: 16px;
  font-weight: 700;
}
.c-choose-list > li .num {
  background: #ee5353;
  border-radius: 50%;
  color: #FFFFFF;
  line-height: 1;
  width: 1.5em;
  height: 1.5em;
  aspect-ratio: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.c-simple-list > li {
  margin-top: 20px;
  padding-left: 10px;
  line-height: 2;
  position: relative;
}
.c-simple-list > li::after {
  position: absolute;
  content: "";
  top: 16px;
  left: 0;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: #5a4538;
}
.c-simple-list > li + li {
  margin-top: 8px;
}

.c-check-list {
  margin-bottom: 20px;
  padding: 30px;
  background-color: #F1F5F3;
}
.c-check-list > li {
  padding-left: 20px;
  line-height: 2;
  position: relative;
}
.c-check-list > li::after {
  position: absolute;
  content: "";
  top: 14px;
  left: 0;
  display: block;
  height: 5px;
  width: 10px;
  border-bottom: 2px solid #ff8d3b;
  border-left: 2px solid #ff8d3b;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.c-check-list > li + li {
  margin-top: 8px;
}

.c-compare-company-tbl {
  width: 100%;
  table-layout: fixed;
  font-size: 20px;
  font-weight: 700;
  line-height: 1;
}
.c-compare-company-tbl thead th:nth-child(2) {
  width: clamp(280px, 33.6vw, 336px);
  border-radius: 10px 10px 0 0;
}
.c-compare-company-tbl thead th:first-child {
  width: calc((100% - clamp(280px, 33.6vw, 336px)) / 2);
  border-radius: 10px 0 0 0;
}
.c-compare-company-tbl thead th:first-child.h-small > span {
  border-right: 0;
  border-radius: 10px 0 0 0;
}
.c-compare-company-tbl thead th:last-child {
  width: calc((100% - clamp(280px, 33.6vw, 336px)) / 2);
  border-radius: 0 10px 0 0;
}
.c-compare-company-tbl thead th:last-child.h-small > span {
  border-left: 0;
  border-radius: 0 10px 0 0;
}
.c-compare-company-tbl thead th.h-small {
  padding-top: 20px;
}
.c-compare-company-tbl thead th.h-small > span {
  border-radius: 10px 0 0 0;
  border: 1px solid #D9D9D9;
  background: #FAF1C3;
  padding: 4px 20px;
  height: 62px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.c-compare-company-tbl thead th:not(.h-small) {
  background: #ff8d3b;
  color: #FFFFFF;
  overflow: hidden;
}
.c-compare-company-tbl tbody tr.phase th {
  background: #F1F5F3;
  padding: 16px;
}
.c-compare-company-tbl tbody tr.phase + tr td:nth-child(2)::after {
  height: 250%;
  top: auto;
  bottom: 0;
  margin: auto;
}
.c-compare-company-tbl tbody tr:not(.phase) {
  background: #FFFFFF;
}
.c-compare-company-tbl tbody tr > *:last-child {
  border-right: 1px solid #D9D9D9;
}
.c-compare-company-tbl tbody tr:last-child td:nth-child(2)::after {
  border-bottom: 4px solid #ff8d3b;
  top: auto;
  bottom: 0;
  margin: auto;
}
.c-compare-company-tbl tbody tr th, .c-compare-company-tbl tbody tr td {
  border-bottom: 1px solid #D9D9D9;
  border-left: 1px solid #D9D9D9;
  padding: 8px 10px;
  text-align: center;
  position: relative;
  z-index: 2;
}
.c-compare-company-tbl tbody tr td:nth-child(2)::after {
  position: absolute;
  content: "";
  z-index: 3;
  isolation: isolate;
  width: calc(100% + 1px);
  height: 100%;
  border-left: 4px solid #ff8d3b;
  border-right: 4px solid #ff8d3b;
  inset: 0;
  margin: auto;
  pointer-events: none;
}
.c-compare-company-tbl tbody tr td.out .inn-txt {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
}

.c-compare-plan-tbl {
  table-layout: fixed;
  width: 100%;
}
.c-compare-plan-tbl.kasoushiki-sec tr > *:nth-child(2) .c-flow-chart02 .is-matched {
  background: #B29447;
}
.c-compare-plan-tbl.kasoushiki-sec tr > *:nth-child(2)::after {
  border-color: #B29447;
}
.c-compare-plan-tbl.kasoushiki-sec thead tr > *:nth-child(2) {
  background: #B29447;
}
.c-compare-plan-tbl.kasoushiki-sec tbody tr:last-child > *:nth-child(2)::after {
  border-color: #B29447;
}
.c-compare-plan-tbl.kasoushiki-thrd tr > *:nth-child(3) .c-flow-chart02 .is-matched {
  background: #B29447;
}
.c-compare-plan-tbl.kasoushiki-thrd thead th:nth-child(3):not(.h-small) {
  background: #B29447;
}
.c-compare-plan-tbl.kasoushiki-thrd thead th:nth-child(3).h-small > span {
  background: #B29447;
}
.c-compare-plan-tbl.jitakushiki-sec tr > *:nth-child(2) .c-flow-chart02 .is-matched {
  background: #4a6779;
}
.c-compare-plan-tbl.jitakushiki-sec tr > *:nth-child(2)::after {
  border-color: #4a6779;
}
.c-compare-plan-tbl.jitakushiki-sec thead tr > *:nth-child(2) {
  background: #4a6779;
}
.c-compare-plan-tbl.jitakushiki-sec tbody tr:last-child > *:nth-child(2)::after {
  border-color: #4a6779;
}
.c-compare-plan-tbl.jitakushiki-thrd tr > *:nth-child(3) .c-flow-chart02 .is-matched {
  background: #4a6779;
}
.c-compare-plan-tbl.jitakushiki-thrd thead th:nth-child(3):not(.h-small) {
  background: #4a6779;
}
.c-compare-plan-tbl.jitakushiki-thrd thead th:nth-child(3).h-small > span {
  background: #4a6779;
}
.c-compare-plan-tbl.tsukisoishiki-sec tr > *:nth-child(2) .c-flow-chart02 .is-matched {
  background: #77c1e5;
}
.c-compare-plan-tbl.tsukisoishiki-sec tr > *:nth-child(2)::after {
  border-color: #77c1e5;
}
.c-compare-plan-tbl.tsukisoishiki-sec thead tr > *:nth-child(2) {
  background: #77c1e5;
}
.c-compare-plan-tbl.tsukisoishiki-sec tbody tr:last-child > *:nth-child(2)::after {
  border-color: #77c1e5;
}
.c-compare-plan-tbl.tsukisoishiki-thrd tr > *:nth-child(3) .c-flow-chart02 .is-matched {
  background: #77c1e5;
}
.c-compare-plan-tbl.tsukisoishiki-thrd thead th:nth-child(3):not(.h-small) {
  background: #77c1e5;
}
.c-compare-plan-tbl.tsukisoishiki-thrd thead th:nth-child(3).h-small > span {
  background: #77c1e5;
}
.c-compare-plan-tbl.kazokusou_1day-sec tr > *:nth-child(2) .c-flow-chart02 .is-matched {
  background: #7db462;
}
.c-compare-plan-tbl.kazokusou_1day-sec tr > *:nth-child(2)::after {
  border-color: #7db462;
}
.c-compare-plan-tbl.kazokusou_1day-sec thead tr > *:nth-child(2) {
  background: #7db462;
}
.c-compare-plan-tbl.kazokusou_1day-sec tbody tr:last-child > *:nth-child(2)::after {
  border-color: #7db462;
}
.c-compare-plan-tbl.kazokusou_1day-thrd tr > *:nth-child(3) .c-flow-chart02 .is-matched {
  background: #7db462;
}
.c-compare-plan-tbl.kazokusou_1day-thrd thead th:nth-child(3):not(.h-small) {
  background: #7db462;
}
.c-compare-plan-tbl.kazokusou_1day-thrd thead th:nth-child(3).h-small > span {
  background: #7db462;
}
.c-compare-plan-tbl.kazokusou_2days-sec tr > *:nth-child(2) .c-flow-chart02 .is-matched {
  background: #ff8d3b;
}
.c-compare-plan-tbl.kazokusou_2days-sec tr > *:nth-child(2)::after {
  border-color: #ff8d3b;
}
.c-compare-plan-tbl.kazokusou_2days-sec thead tr > *:nth-child(2) {
  background: #ff8d3b;
}
.c-compare-plan-tbl.kazokusou_2days-sec tbody tr:last-child > *:nth-child(2)::after {
  border-color: #ff8d3b;
}
.c-compare-plan-tbl.kazokusou_2days-thrd tr > *:nth-child(3) .c-flow-chart02 .is-matched {
  background: #ff8d3b;
}
.c-compare-plan-tbl.kazokusou_2days-thrd thead th:nth-child(3):not(.h-small) {
  background: #ff8d3b;
}
.c-compare-plan-tbl.kazokusou_2days-thrd thead th:nth-child(3).h-small > span {
  background: #ff8d3b;
}
.c-compare-plan-tbl.shinzokusou-sec tr > *:nth-child(2) .c-flow-chart02 .is-matched {
  background: #567d71;
}
.c-compare-plan-tbl.shinzokusou-sec tr > *:nth-child(2)::after {
  border-color: #567d71;
}
.c-compare-plan-tbl.shinzokusou-sec thead tr > *:nth-child(2) {
  background: #567d71;
}
.c-compare-plan-tbl.shinzokusou-sec tbody tr:last-child > *:nth-child(2)::after {
  border-color: #567d71;
}
.c-compare-plan-tbl.shinzokusou-thrd tr > *:nth-child(3) .c-flow-chart02 .is-matched {
  background: #567d71;
}
.c-compare-plan-tbl.shinzokusou-thrd thead th:nth-child(3):not(.h-small) {
  background: #567d71;
}
.c-compare-plan-tbl.shinzokusou-thrd thead th:nth-child(3).h-small > span {
  background: #567d71;
}
.c-compare-plan-tbl.ippansou-sec tr > *:nth-child(2) .c-flow-chart02 .is-matched {
  background: #56617D;
}
.c-compare-plan-tbl.ippansou-sec tr > *:nth-child(2)::after {
  border-color: #56617D;
}
.c-compare-plan-tbl.ippansou-sec thead tr > *:nth-child(2) {
  background: #56617D;
}
.c-compare-plan-tbl.ippansou-sec tbody tr:last-child > *:nth-child(2)::after {
  border-color: #56617D;
}
.c-compare-plan-tbl.ippansou-thrd tr > *:nth-child(3) .c-flow-chart02 .is-matched {
  background: #56617D;
}
.c-compare-plan-tbl.ippansou-thrd thead th:nth-child(3):not(.h-small) {
  background: #56617D;
}
.c-compare-plan-tbl.ippansou-thrd thead th:nth-child(3).h-small > span {
  background: #56617D;
}
.c-compare-plan-tbl.kaiyou-sec tr > *:nth-child(2) .c-flow-chart02 .is-matched {
  background: #69AFCA;
}
.c-compare-plan-tbl.kaiyou-sec tr > *:nth-child(2)::after {
  border-color: #69AFCA;
}
.c-compare-plan-tbl.kaiyou-sec thead tr > *:nth-child(2) {
  background: #69AFCA;
}
.c-compare-plan-tbl.kaiyou-sec tbody tr:last-child > *:nth-child(2)::after {
  border-color: #69AFCA;
}
.c-compare-plan-tbl.kaiyou-thrd tr > *:nth-child(3) .c-flow-chart02 .is-matched {
  background: #69AFCA;
}
.c-compare-plan-tbl.kaiyou-thrd thead th:nth-child(3):not(.h-small) {
  background: #69AFCA;
}
.c-compare-plan-tbl.kaiyou-thrd thead th:nth-child(3).h-small > span {
  background: #69AFCA;
}
.c-compare-plan-tbl.eidai-sec tr > *:nth-child(2) .c-flow-chart02 .is-matched {
  background: #C3A03E;
}
.c-compare-plan-tbl.eidai-sec tr > *:nth-child(2)::after {
  border-color: #C3A03E;
}
.c-compare-plan-tbl.eidai-sec thead tr > *:nth-child(2) {
  background: #C3A03E;
}
.c-compare-plan-tbl.eidai-sec tbody tr:last-child > *:nth-child(2)::after {
  border-color: #C3A03E;
}
.c-compare-plan-tbl.eidai-thrd tr > *:nth-child(3) .c-flow-chart02 .is-matched {
  background: #C3A03E;
}
.c-compare-plan-tbl.eidai-thrd thead th:nth-child(3):not(.h-small) {
  background: #C3A03E;
}
.c-compare-plan-tbl.eidai-thrd thead th:nth-child(3).h-small > span {
  background: #C3A03E;
}
.c-compare-plan-tbl thead td {
  width: clamp(100px, 18vw, 180px);
}
.c-compare-plan-tbl thead th {
  width: calc((100% - clamp(100px, 18vw, 180px)) / 2);
  font-size: 32px;
  font-weight: 700;
  line-height: 0.625;
  color: #FFFFFF;
  padding: 20px;
  border-radius: 10px 10px 0 0;
}
.c-compare-plan-tbl thead th.h-small {
  padding: 0;
  padding-top: 20px;
}
.c-compare-plan-tbl thead th.h-small > span {
  border-radius: 0 10px 0 0;
  padding: 4px 20px;
  height: 62px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.c-compare-plan-tbl thead th.h-small > span .inn-txt {
  padding-inline: clamp(0px, 4.5138888889vw, 65px) 65px;
  width: 100%;
  position: relative;
}
.c-compare-plan-tbl thead th.h-small > span .link-txt {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.25;
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  padding-right: 24px;
  -webkit-transition: color 0.3s ease-in-out;
  transition: color 0.3s ease-in-out;
}
.c-compare-plan-tbl thead th.h-small > span .link-txt:focus-visible {
  color: #5a4538;
}
.c-compare-plan-tbl thead th.h-small > span .link-txt::after {
  position: absolute;
  content: "";
  -webkit-mask: url("../img/common/ico-arrow.svg") no-repeat center/contain;
          mask: url("../img/common/ico-arrow.svg") no-repeat center/contain;
  background: currentColor;
  width: auto;
  height: 1em;
  aspect-ratio: 8/17;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  -webkit-transition: background 0.3s ease-in-out;
  transition: background 0.3s ease-in-out;
}
.c-compare-plan-tbl tbody td, .c-compare-plan-tbl tbody th {
  background: #FFFFFF;
  border-bottom: 1px solid #D9D9D9;
  border-left: 1px solid #D9D9D9;
}
.c-compare-plan-tbl tbody th {
  font-size: 20px;
  font-weight: 700;
  line-height: 1;
  padding: 10px 8px;
}
.c-compare-plan-tbl tbody td {
  padding: 15px;
  text-align: center;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.25;
}
.c-compare-plan-tbl tbody td .c-price-txt {
  max-width: 315px;
  margin-inline: auto;
}
.c-compare-plan-tbl tbody td .c-price-txt .discount-txt {
  border: 1px solid #5a4538;
  max-width: 260px;
  margin-inline: auto;
  padding: 7px;
  margin-bottom: 2px;
}
.c-compare-plan-tbl tbody td .c-price-txt .c-price-after .price-wrap .price {
  font-size: clamp(60px, 7vw, 70px);
}
.c-compare-plan-tbl tbody td .c-price-txt .c-price-after .price-wrap .price .small {
  font-size: clamp(40px, 5vw, 50px);
}
.c-compare-plan-tbl tbody td .c-price-txt .note-txt-area {
  margin-top: 10px;
  margin-inline: 0 auto;
  font-size: 12px;
  text-align: left;
}
.c-compare-plan-tbl tbody td .img-txt-wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
}
.c-compare-plan-tbl tbody td .img-txt-wrap img {
  max-width: 200px;
}
.c-compare-plan-tbl tbody td .c-flow-chart02 {
  padding-block: 5px;
}
.c-compare-plan-tbl tbody tr:last-child > *:nth-child(2)::after {
  border-bottom: 4px solid;
  top: auto;
  bottom: 0;
  margin: auto;
}
.c-compare-plan-tbl tbody tr > *:last-child {
  border-right: 1px solid #D9D9D9;
}
.c-compare-plan-tbl tbody tr > *:nth-child(2) {
  position: relative;
}
.c-compare-plan-tbl tbody tr > *:nth-child(2)::after {
  position: absolute;
  content: "";
  z-index: 3;
  isolation: isolate;
  width: calc(100% + 1px);
  height: 100%;
  border-left: 4px solid;
  border-right: 4px solid;
  inset: 0;
  margin: auto;
  pointer-events: none;
}

.c-plan-discount-tbl {
  margin-inline: auto;
  width: 100%;
}
.c-plan-discount-tbl tr {
  border-bottom: 2px solid #5a4538;
}
.c-plan-discount-tbl tr > *:not(:first-child) {
  background: #FFFFFF;
}
.c-plan-discount-tbl tr > *:nth-child(3) {
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 141, 59, 0.2))), #FFFFFF;
  background: linear-gradient(rgba(255, 141, 59, 0.2)), #FFFFFF;
}
.c-plan-discount-tbl tr > *:nth-child(4) {
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(148, 193, 109, 0.2))), #FFFFFF;
  background: linear-gradient(rgba(148, 193, 109, 0.2)), #FFFFFF;
}
.c-plan-discount-tbl tr > *:nth-child(3), .c-plan-discount-tbl tr > *:nth-child(4) {
  padding-inline: clamp(10px, 1.25vw, 15px);
  background-repeat: no-repeat;
  background-size: calc(100% - clamp(10px, 1.25vw, 15px)) 100%;
  background-position: center;
}
.c-plan-discount-tbl td {
  padding-inline: clamp(5px, 1.25vw, 15px);
}
.c-plan-discount-tbl thead th {
  font-size: clamp(14px, 1.5vw, 18px);
  font-weight: 700;
  padding-block: 10px;
}
.c-plan-discount-tbl thead th:nth-child(3) {
  color: #ff8d3b;
}
.c-plan-discount-tbl thead th:nth-child(4) {
  color: #7db462;
}
.c-plan-discount-tbl tbody tr {
  border-left: 2px solid #5a4538;
  border-right: 2px solid #5a4538;
}
.c-plan-discount-tbl tbody tr.clr-kasoushiki > th {
  background: #B29447;
}
.c-plan-discount-tbl tbody tr.clr-jitakushiki > th {
  background: #4a6779;
}
.c-plan-discount-tbl tbody tr.clr-tsukisoishiki > th {
  background: #77c1e5;
}
.c-plan-discount-tbl tbody tr.clr-kazokusou_1day > th {
  background: #7db462;
}
.c-plan-discount-tbl tbody tr.clr-kazokusou_2days > th {
  background: #ff8d3b;
}
.c-plan-discount-tbl tbody tr.clr-shinzokusou > th {
  background: #567d71;
}
.c-plan-discount-tbl tbody tr.clr-ippansou > th {
  background: #56617D;
}
.c-plan-discount-tbl tbody tr.clr-kaiyou > th {
  background: #69AFCA;
}
.c-plan-discount-tbl tbody tr.clr-eidai > th {
  background: #C3A03E;
}
.c-plan-discount-tbl tbody th {
  font-size: clamp(18px, 2.3333333333vw, 28px);
  color: #FFFFFF;
  padding-inline: clamp(5px, 0.8333333333vw, 10px);
}
.c-plan-discount-tbl tbody td .c-price-after {
  font-size: 16px;
  margin-top: -0.25em;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
}
.c-plan-discount-tbl tbody td .c-price-after .price {
  font-size: clamp(30px, 4.1666666667vw, 50px);
  font-weight: 700;
}
.c-plan-discount-tbl tbody td .c-price-after .price .small {
  font-size: clamp(20px, 3.3333333333vw, 40px);
}
.c-plan-discount-tbl tbody td .c-price-after .yen {
  font-size: clamp(18px, 2.5vw, 30px);
}
.c-plan-discount-tbl tbody td .c-price-after .tax {
  font-size: clamp(8px, 1vw, 12px);
}
.c-plan-discount-tbl tbody td .c-price-after .total {
  margin-top: -0.5em;
  color: #5a4538;
  font-size: clamp(10px, 1.3333333333vw, 16px);
  line-height: 1;
}
.c-plan-discount-tbl tbody td .c-price-after .total .big {
  font-size: clamp(14px, 1.5vw, 18px);
  line-height: 1.4;
}
.c-plan-discount-tbl tbody td:first-child .price-wrap {
  color: #000000;
}

/* -----------------------------------------------
* Page エントリーポイント
-------------------------------------------------- */
/* -----------------------------------------------
* home Module
* homeページ用
-------------------------------------------------- */
.home .calls-block-section {
  margin-top: 0;
}
.home .note-block-section {
  margin-top: 20px;
}
.home > .calls-block-section {
  margin-top: 70px;
}
.home .search-section .inner-block > .c-btns-wrap {
  -webkit-column-gap: clamp(8px, 3vw, 30px);
     -moz-column-gap: clamp(8px, 3vw, 30px);
          column-gap: clamp(8px, 3vw, 30px);
}
.home .search-section .c-map-area {
  margin-block: 40px;
}
.home .info-section .c-rec-column-section {
  margin-top: 40px;
}
.home .c-mv-section .main-wrap .inner-block {
  height: 100%;
}

.hallcat .c-breadcrumbs + .c-ttl01 {
  margin-top: 50px;
}
.hallcat .c-ttl01 {
  padding: 0 20px;
  margin: 0 auto 52px;
  z-index: 1;
}
.hallcat .area-list-ttl {
  font-size: 34px;
  text-align: center;
  line-height: 1.7647058824;
  font-weight: bold;
}
.hallcat .area-list > li + li {
  margin-top: 50px;
}
.hallcat .area-inner-list {
  margin-top: 30px;
  border-radius: 20px;
  background: #fff;
  padding: 40px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 30px 26px;
}
.hallcat .area-inner-list > li {
  width: calc((100% - 78px) / 4);
}
.hallcat .area-inner-list > li > a {
  border-radius: 10px;
  border: 2px solid #5a4538;
  font-weight: bold;
  padding: 17px 0 18px;
  text-align: center;
  display: block;
  position: relative;
}
.hallcat .area-inner-list > li > a::after {
  position: absolute;
  content: "";
  right: 20px;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 9px;
  height: 9px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  border-radius: 2px;
  border-top: 2px solid #5a4538;
  border-right: 2px solid #5a4538;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.hallcat .lead-box {
  margin: 50px auto 80px;
  max-width: 1000px;
  background: #FFF5D3;
  padding: 40px 50px;
  border-radius: 10px;
  line-height: 1.875;
}
.hallcat .lead-box .c-btns-wrap {
  margin-top: 30px;
}
.hallcat .c-map-area {
  margin: 50px 0 80px;
}
.hallcat .c-map-area > svg {
  max-width: 700px;
}
.hallcat .map-wrap {
  margin-bottom: 80px;
}
.hallcat .map-wrap #map {
  width: 100%;
  aspect-ratio: 2;
}
.hallcat .map-wrap .refs {
  margin-top: 8px;
  font-size: 12px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
}
.hallcat .map-wrap .refs > li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.hallcat .map-wrap .refs .pin {
  width: 24px;
}
.hallcat.designated-city .calls-block-section, .hallcat.detail .calls-block-section {
  padding: 0 20px;
  margin-bottom: 80px;
}
.hallcat .area-label {
  position: relative;
  padding: 0 40px;
}
.hallcat .area-label::after {
  position: absolute;
  content: "";
  bottom: 0;
  left: 0;
  width: 100%;
  height: 10px;
  background: #ff8d3b;
}
.hallcat .area-label .inner-block {
  max-width: 1000px;
  background: #ff8d3b;
  color: #fff;
  padding: 20px 0;
  text-align: center;
  border-radius: 5px;
}
.hallcat .area-label .inner-block h2 {
  font-size: 50px;
  line-height: 1.2;
}
.hallcat .hall-list-section .inner-block {
  max-width: 1080px;
}
.hallcat .hall-list > li {
  background: #fff;
  border-radius: 20px;
  padding: 40px;
}
.hallcat .hall-list > li + li {
  margin-top: 50px;
}
.hallcat .hall-list .hall-card-ttl {
  font-size: 30px;
  line-height: 1.6666666667;
  font-weight: bold;
  padding-bottom: 20px;
  border-bottom: 2px solid #5a4538;
  margin-bottom: 30px;
}
.hallcat .hall-list .cont-wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 30px;
}
.hallcat .hall-list .cont-wrap .img-box {
  position: relative;
  width: 350px;
}
.hallcat .hall-list .cont-wrap .img-box .badge {
  width: 88px;
  height: 104px;
  position: absolute;
  content: "";
  top: 0;
  right: 0;
}
.hallcat .hall-list .cont-wrap .img-box .badge > img {
  height: 100%;
  width: 100%;
}
.hallcat .hall-list .cont-wrap .txt-wrap .txt {
  font-weight: bold;
}
.hallcat .hall-list .cont-wrap .txt-wrap {
  width: calc(100% - 380px);
}
.hallcat .hall-list .cont-wrap .txt-wrap .c-btns-wrap {
  margin-top: 30px;
}
.hallcat.detail .tmp-thumb {
  border: 1px solid #999999;
  max-width: 400px;
  text-align: center;
  margin: 30px auto;
  width: 100%;
}
.hallcat.detail .tmp-thumb > img {
  width: 100%;
}
.hallcat.detail .tmp-thumb.large {
  max-width: 960px;
  aspect-ratio: 3/2;
}
.hallcat.detail .tmp-thumb.large > img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.hallcat.detail .hall-ttl {
  margin: 50px auto 0;
  max-width: 1200px;
  background: #ff8d3b;
  color: #fff;
  font-weight: bold;
  font-size: 24px;
  text-align: center;
  line-height: 1.5;
  padding: 12px 0;
}
.hallcat.detail .white-box {
  padding: 54px 40px 60px;
}
.hallcat.detail .white-box .lead {
  line-height: 1.875;
}
.hallcat.detail .hall-thumbs {
  position: relative;
}
.hallcat.detail .hall-thumbs .badge {
  width: 110px;
  height: 130px;
  position: absolute;
  content: "";
  top: 30px;
  right: calc(50% - 470px);
  z-index: 999;
}
.hallcat.detail .hall-thumbs .badge > img {
  height: 100%;
  width: 100%;
}
.hallcat.detail .hall-thumbs.tmp-thub-wrap .badge {
  width: 77px;
  height: 91px;
  top: 0;
  right: calc(50% - 200px);
}
.hallcat.detail .hall-thumbs .splide .splide__track {
  padding: 30px 0;
}
.hallcat.detail .hall-thumbs .splide .splide__slide {
  width: 960px;
  max-width: 100%;
  aspect-ratio: 3/2;
}
.hallcat.detail .hall-thumbs .splide .splide__slide > img {
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.hallcat.detail .hall-thumbs .splide .splide__pagination {
  display: none;
}
.hallcat.detail .hall-thumbs .splide.thumb-slider.hide {
  display: none;
}
.hallcat.detail .hall-thumbs .splide.thumb-slider {
  max-width: 910px;
  margin: 0 auto;
}
.hallcat.detail .hall-thumbs .splide.thumb-slider .splide__track {
  padding-top: 0;
}
.hallcat.detail .hall-thumbs .splide.thumb-slider .splide__arrows {
  display: none;
}
.hallcat.detail .hall-thumbs .splide.thumb-slider .splide__slide {
  cursor: pointer;
  width: 135px;
}
.hallcat.detail .hall-thumbs .splide.thumb-slider .splide__slide:not(.is-active) {
  -webkit-transition: var(--transition);
  transition: var(--transition);
  opacity: 0.3;
}
.hallcat.detail .detail-map iframe {
  width: 100%;
  height: 244px;
}
.hallcat.detail .panflet .c-btns-wrap {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 30px;
  margin: 30px 0 50px;
}
.hallcat.detail .bot-cta {
  margin-top: 50px;
}
.hallcat.detail .bot-cta .top {
  padding-bottom: 30px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 37px;
}
.hallcat.detail .bot-cta .top .tel {
  width: 463px;
  margin-top: 10px;
}
.hallcat.detail .bot-cta .top .tel .txt {
  margin-bottom: 10px;
  background: #5a4538;
  color: #fff;
  font-weight: bold;
  padding: 9px 46px;
  font-size: clamp(16px, 2.2222222222vw, 24px);
  line-height: 1;
  text-align: center;
}
.hallcat.detail .bot-cta .top .tel .number {
  font-size: clamp(40px, 5.5555555556vw, 60px);
}
.hallcat.detail .bot-cta .top .doc {
  width: 380px;
}
.hallcat.detail .bot-cta .top .doc .c-lines-txt {
  padding: 0;
  line-height: 1;
  margin-bottom: 14px;
  font-size: 12px;
  font-weight: bold;
}
.hallcat.detail .bot-cta .top .doc .c-lines-txt::before {
  left: -20px;
  height: 110%;
}
.hallcat.detail .bot-cta .top .doc .c-lines-txt::after {
  right: -20px;
  height: 110%;
}
.hallcat.detail .bot-cta .top .doc .c-lines-txt .c-accent-txt {
  font-size: 16px;
  padding: 0 5px;
}
.hallcat.detail .bot-cta .top .doc .c-lines-txt .c-accent-txt .big {
  font-size: 24px;
}
.hallcat.detail .bot-cta .top .doc .c-lines-txt .c-accent-txt .c-sup {
  font-size: 8px;
}
.hallcat.detail .bot-cta .top .doc .c-btn {
  padding: 6px 10px;
}
.hallcat.detail .bot-cta .bot {
  border-top: 2px dotted #5a4538;
  padding-top: 30px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 20px;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.hallcat.detail .bot-cta .bot .txt {
  font-size: 14px;
  font-weight: bold;
}
.hallcat.detail .bot-cta .bot .c-btn {
  max-width: 260px;
}
.hallcat.detail .lead-box {
  margin-bottom: 50px;
}
.hallcat.detail .js--modal {
  position: fixed;
  max-width: calc(100% - 40px);
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  left: 20px;
  max-height: calc(100vh - 120px);
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  margin: auto;
  z-index: 2000;
  opacity: 0;
  pointer-events: none;
}
.hallcat.detail .js--modal .modal-outer {
  overflow-y: auto;
  max-height: calc(100vh - 120px);
}
.hallcat.detail .js--modal.open {
  opacity: 1;
  pointer-events: visible;
}
.hallcat.detail .js--modal .js--close {
  height: 40px;
  width: 40px;
  position: absolute;
  background: #fff;
  top: -40px;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  cursor: pointer;
  right: 0;
}
.hallcat.detail .js--modal .js--close::after, .hallcat.detail .js--modal .js--close::before {
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  width: 2px;
  height: 25px;
  background: #5a4538;
  border-radius: 2px;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  content: "";
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  position: absolute;
}
.hallcat.detail .js--modal .js--close::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.hallcat.detail .overlay {
  z-index: 1999;
  position: fixed;
  top: 0;
  left: 0;
  cursor: pointer;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.2);
  opacity: 0;
  pointer-events: none;
}
.hallcat.detail .overlay.open {
  opacity: 1;
  pointer-events: visible;
}
.hallcat .badge {
  display: inline-block;
  overflow: hidden;
  -webkit-mask-image: url(../img/hallcat/airis-only_badge.png.webp);
          mask-image: url(../img/hallcat/airis-only_badge.png.webp);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-position: center;
          mask-position: center;
}
.hallcat .badge::before {
  content: "";
  position: absolute;
  top: 0;
  left: -150%;
  width: 150%;
  height: 100%;
  background: linear-gradient(120deg, rgba(255, 255, 255, 0) 30%, rgba(255, 255, 255, 0.8) 50%, rgba(255, 255, 255, 0) 70%);
  -webkit-animation: shineEffect 3s infinite ease-in-out;
          animation: shineEffect 3s infinite ease-in-out;
}
@-webkit-keyframes shineEffect {
  0% {
    -webkit-transform: translateX(-250%) skewX(-25deg);
            transform: translateX(-250%) skewX(-25deg);
  }
  100% {
    -webkit-transform: translateX(250%) skewX(-25deg);
            transform: translateX(250%) skewX(-25deg);
  }
}
@keyframes shineEffect {
  0% {
    -webkit-transform: translateX(-250%) skewX(-25deg);
            transform: translateX(-250%) skewX(-25deg);
  }
  100% {
    -webkit-transform: translateX(250%) skewX(-25deg);
            transform: translateX(250%) skewX(-25deg);
  }
}

.column.column-detail .c-section {
  padding-top: 0;
}
.column.column-detail .c-tag-list {
  margin-top: 20px;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.column .ttl-wrap {
  background: #fbe0cc;
  padding-block: 40px;
  margin-bottom: 30px;
}
.column .ttl-wrap .main-ttl {
  font-size: 22px;
  font-weight: bold;
}
.column .article-thumbnail img {
  max-height: 400px;
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
  width: 100%;
}
.column .article-content {
  font-weight: 400;
  line-height: 1.875;
}
.column .article-content h2 {
  font-size: 24px;
  line-height: 1.25;
  font-weight: bold;
  margin-top: 50px;
  position: relative;
  padding-left: 10px;
}
.column .article-content h2::after {
  position: absolute;
  content: "";
  background: #ff8d3b;
  width: 2px;
  height: 100%;
  left: 0;
  top: 0;
}
.column .article-content h3 {
  font-size: 20px;
  font-weight: bold;
  line-height: 1.25;
  margin-top: 50px;
  position: relative;
  padding-left: 20px;
}
.column .article-content h3::after {
  position: absolute;
  content: "";
  background: #ff8d3b;
  width: 10px;
  height: 2px;
  left: 0;
  top: 13px;
}
.column .article-content ul, .column .article-content ol {
  font-weight: 500;
  margin-top: 30px;
}
.column .article-content ul li, .column .article-content ol li {
  padding-left: 22px;
  position: relative;
}
.column .article-content ul li::after, .column .article-content ol li::after {
  position: absolute;
  content: "";
}
.column .article-content ul li + li, .column .article-content ol li + li {
  margin-top: 20px;
}
.column .article-content ul > li::after {
  top: 11px;
  left: 6px;
  width: 8px;
  height: 8px;
  background: #ff8d3b;
  border-radius: 50%;
}
.column .article-content ol {
  counter-reset: listnum;
}
.column .article-content ol > li::after {
  counter-increment: listnum;
  content: counter(listnum) ".";
  font-weight: bold;
  left: 0;
  top: 0;
  color: #ff8d3b;
}
.column .article-content p {
  margin-top: 20px;
}
.column .article-content table {
  margin-top: 30px;
  width: 100%;
  border: 1px solid #999999;
  border-left: none;
}
.column .article-content table tr {
  border-left: 1px solid #999999;
}
.column .article-content table tr:not(:first-child) {
  border-top: 1px solid #999999;
}
.column .article-content table tr td {
  font-weight: 500;
  padding: 8px;
  border-left: 1px solid #999999;
}
.column .article-content a {
  text-decoration: underline;
}
.column .c-calls-block {
  margin-top: 60px;
}
.column .c-calls-block .content-area {
  padding: 20px;
}
.column .c-calls-block .content-area .article-links li {
  font-size: 14px;
  padding: 5px 0;
}
.column .c-calls-block .content-area .article-links li > a {
  text-decoration: underline;
}

/* -----------------------------------------------
* faq Module
* fapページ用
-------------------------------------------------- */
.faq-section .faq-list > li + li {
  margin-top: 30px;
}
.faq-section .faq-list .question {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 20px;
  padding-left: 50px;
  position: relative;
}
.faq-section .faq-list .question::before {
  color: #ff8d3b;
  content: "Q.";
  font-size: 30px;
  line-height: 1;
  position: absolute;
  top: -3px;
  left: 0;
}
.faq-section .faq-list .answer {
  line-height: 187%;
}
.faq-section .additional-box {
  background: #F1F5F3;
  border-radius: 10px;
  margin-top: 30px;
  padding: 30px;
}
.faq-section .additional-box .ttl {
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 10px;
}
.faq-section .additional-box .ttl:not(:first-child) {
  margin-top: 30px;
}
.faq-section .additional-box .txt {
  line-height: 187%;
}
.faq-section .additional-box .list {
  counter-reset: number 0;
  line-height: 187%;
}
.faq-section .additional-box .list li:before {
  counter-increment: number 1;
  content: counter(number) ". ";
}

/* -----------------------------------------------
* contact Module
* contact ページ用
-------------------------------------------------- */
.contact-section .c-contact-step {
  margin-top: 40px;
}
.contact-section .c-contact-step + .c-ttl01 {
  margin-top: 40px;
}
.contact-section .c-summary-txt {
  margin-bottom: 0;
}
.contact-section .c-summary-txt + .c-simple-list {
  margin-bottom: 40px;
}
.contact-section .contact-inner-wrap {
  margin-top: 30px;
}
.contact-section .c-contact-step {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 30px;
}
.contact-section .c-contact-step li {
  background: #FFFFFF;
  z-index: 1;
  padding: 15px 10px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center;
  font-size: 18px;
  font-weight: bold;
  border: 2px solid #D9D9D9;
  border-radius: 10px;
  width: calc((100% - 20px) / 3);
}
.contact-section .c-contact-step li.active {
  color: #FFFFFF;
  border-color: #5c7795;
  background: #5c7795;
}
.contact-section .q-wrap {
  padding-block: 20px;
  border-bottom: 1px solid #D9D9D9;
}
.contact-section .label-area {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  margin-bottom: 10px;
}
.contact-section .contact-label {
  font-size: 18px;
  font-weight: bold;
}
.contact-section .required-txt {
  padding: 1px 11px 3px;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  color: #FFFFFF;
  font-size: 14px;
  border-radius: 3px;
  background: #ee5353;
  font-weight: bold;
  margin-left: 15px;
}
.contact-section .error-txt {
  margin-top: 4px;
  color: #ee5353;
  font-size: 14px;
  font-weight: bold;
}
.contact-section input[type=text],
.contact-section input[type=tel],
.contact-section input[type=email],
.contact-section input[type=date],
.contact-section textarea,
.contact-section select {
  padding: 16px 18px;
  width: 100%;
  color: #5a4538;
  font-size: 16px !important;
  border: 1px solid #D9D9D9;
  border-radius: 5px;
  background: #F1F5F3;
  min-height: 60px;
}
.contact-section input[type=text].errored,
.contact-section input[type=tel].errored,
.contact-section input[type=email].errored,
.contact-section input[type=date].errored,
.contact-section textarea.errored,
.contact-section select.errored {
  border: 1px solid #ee5353;
}
.contact-section .radio-group, .contact-section .checkbox-group {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 25px 21px;
  height: 100%;
}
.contact-section .radio-group.sp-margin, .contact-section .checkbox-group.sp-margin {
  margin: 10px 0 25px;
}
.contact-section .radio-group .wpcf7-radio, .contact-section .radio-group .wpcf7-checkbox, .contact-section .checkbox-group .wpcf7-radio, .contact-section .checkbox-group .wpcf7-checkbox {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 20px 30px;
}
.contact-section .radio-group label, .contact-section .checkbox-group label {
  position: relative;
  padding-left: 30px;
  line-height: 1;
}
.contact-section .radio-group label::before, .contact-section .radio-group label::after, .contact-section .checkbox-group label::before, .contact-section .checkbox-group label::after {
  content: "";
  position: absolute;
}
.contact-section .radio-group label::before, .contact-section .checkbox-group label::before {
  top: 0px;
  left: 0;
  width: 24px;
  height: 24px;
  border: 1px solid #D9D9D9;
  border-radius: 15px;
  background: #D9D9D9;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.contact-section .radio-group label::after, .contact-section .checkbox-group label::after {
  top: 4px;
  left: 4px;
  width: 16px;
  height: 16px;
  border-radius: 15px;
  background: #ff8d3b;
  opacity: 0;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.contact-section .radio-group label:has(input:checked)::after, .contact-section .checkbox-group label:has(input:checked)::after {
  opacity: 1;
}
.contact-section .radio-group label:has(input:checked)::before, .contact-section .checkbox-group label:has(input:checked)::before {
  background: #FFFFFF;
}
.contact-section .radio-group + .error-txt, .contact-section .checkbox-group + .error-txt {
  margin-top: 8px;
}
.contact-section .checkbox-group label::before {
  border-radius: 0;
}
.contact-section .checkbox-group label::after {
  top: 3px;
  width: 8px;
  height: 14px;
  background: transparent;
  border-right: 2px solid #ff8d3b;
  border-bottom: 2px solid #ff8d3b;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  left: 8px;
  border-radius: 0;
}
.contact-section .column-wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
}
.contact-section .column-wrap .input-area {
  width: calc((100% - 20px) / 2);
}
.contact-section .note {
  font-size: 14px;
  margin-top: 10px;
}
.contact-section .note.mark {
  text-indent: -1em;
  padding-left: 1em;
}
.contact-section .note.center {
  text-align: center;
}
.contact-section .note.mb5 {
  margin-bottom: 5px;
}
.contact-section .select-wrap {
  position: relative;
}
.contact-section .select-wrap select {
  cursor: pointer;
}
.contact-section .select-wrap::before {
  z-index: 1;
  content: "";
  border: solid #ff8d3b;
  border-width: 0 3px 3px 0;
  display: inline-block;
  width: 12px;
  height: 12px;
  position: absolute;
  top: -3px;
  right: 20px;
  bottom: 0;
  margin: auto;
  -webkit-transform: rotate(45deg) translate3d(0, 0, 0);
          transform: rotate(45deg) translate3d(0, 0, 0);
  pointer-events: none;
}
.contact-section .wpcf7-response-output {
  display: none !important;
}
.contact-section .wpcf7-not-valid-tip {
  display: none !important;
}
.contact-section .btn-wrap {
  margin: 40px auto 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 40px;
}
.contact-section .contact-btn {
  display: block;
  text-align: center;
  background: #ee5353;
  color: #FFFFFF;
  font-weight: bold;
  padding: 10px 40px;
  border-radius: 100vw;
  border: 2px solid #ee5353;
  max-width: 420px;
  width: 100%;
  padding: 20px;
  font-size: 18px;
  line-height: 1;
}
.contact-section .contact-btn.back-btn {
  border: 2px solid #ff8d3b;
  background: #FFFFFF;
  color: #ff8d3b;
}
.contact-section .c-btns-wrap {
  margin-top: 30px;
}
.contact-section .policy-area {
  overflow-y: auto;
  min-height: 5em;
  width: 100%;
  padding: 16px 18px;
  font-size: 16px;
  border: solid 1px #D9D9D9;
  border-radius: 8px;
  max-height: 250px;
}
.contact-section .policy-area h3 {
  font-size: 16px;
  font-weight: bold;
}
.contact-section .policy-area h3:not(:first-child) {
  margin: 20px 0 10px;
}
.contact-section .policy-area p:not(:first-child) {
  margin-top: 5px;
}
.contact-section .policy-area p + p {
  margin-top: 5px;
}
.contact-section .policy-area .c-simple-list {
  margin-bottom: 20px;
}
.contact-section .policy-area .c-simple-list > li {
  margin-top: 0;
}
.contact-section .privacy-link {
  text-align: center;
  margin-top: 40px;
}
.contact-section .privacy-link a {
  color: #ff8d3b;
  text-decoration: underline;
}

.contact .secret-box {
  margin: 40px 0;
  border: 1px solid #e05959;
  padding: 30px 20px;
  color: #e05959;
}
.contact .secret-box .ttl {
  text-align: center;
  display: block;
  font-weight: bold;
  font-size: 30px;
  margin-bottom: 10px;
}
.contact .secret-box .small {
  display: block;
  margin-top: 10px;
  font-size: 14px;
}

/* -----------------------------------------------
* reserve Module
* reserve ページ用
-------------------------------------------------- */
.reserve-section .c-contact-step {
  margin-top: 0;
}
.reserve-section .thanks__txt {
  text-align: center;
  margin-bottom: 40px;
}
.reserve-section .c-btn.icon-back .inn-txt::before {
  -webkit-mask-image: url(../img/common/ico-arrow.svg);
          mask-image: url(../img/common/ico-arrow.svg);
  -webkit-transform: scaleX(-1);
          transform: scaleX(-1);
  width: 20px;
  height: auto;
}

/* -----------------------------------------------
* plan Module
* plan ページ用
-------------------------------------------------- */
.plan .c-tag-list {
  max-width: 100%;
}
.plan .plan-section {
  margin-top: 80px;
}
.plan .plan-section .anchor-list {
  max-width: 100%;
}
.plan .plan-section .plan-area {
  margin-bottom: 60px;
}
.plan .plan-section .plan-area:last-child {
  margin-bottom: 0;
}
.plan .plan-section .plan-list-area {
  margin-bottom: 60px;
}
.plan .plan-section .plan-list-area .plan-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 60px;
}
.plan .plan-section .plan-list-area:last-child {
  margin-bottom: 0;
}

/* -----------------------------------------------
* plan detail Module
* plan detailページ用
-------------------------------------------------- */
.plan-detail > .c-section > .inner-block > .c-section:last-child {
  padding-bottom: 0;
}
.plan-detail .top-note-txt img {
  width: 14px;
  height: 14px;
  aspect-ratio: 1;
  display: inline-block;
  margin-right: 5px;
}
.plan-detail .setplan-list {
  margin-top: 40px;
}
.plan-detail .flow-section .flow-chart-area .c-flow-chart {
  margin-top: 30px;
}
.plan-detail .flow-section .c-flow-days-list {
  margin-top: 50px;
}
.plan-detail .compare-plan-section .note-txt {
  margin-top: 20px;
}
.plan-detail .flow-section {
  max-width: 920px;
  margin-inline: auto;
}
.plan-detail .flow-section .c-flow-days-list .top-desc-txt {
  margin-bottom: 50px;
}
.plan-detail .flow-section .c-flow-days-list > li:not(:first-child) .c-ttl03 {
  margin-top: 30px;
  margin-bottom: 20px;
}
.plan-detail .flow-section .c-flow-days-list > li > .c-flow-list {
  max-width: 900px;
  margin-inline: auto;
}
.plan-detail .other-plan-section .c-plan-cards-mini {
  max-width: 1200px;
  margin-inline: auto;
}
.plan-detail .other-plan-section .note-txt-area {
  margin-top: 20px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.875;
}

.plan-detail-shinzokuso .flow-section .c-flow-chart,
.plan-detail-ichiniciso .flow-section .c-flow-chart,
.plan-detail-ippanso .flow-section .c-flow-chart,
.plan-detail-jitakuso .flow-section .c-flow-chart,
.plan-detail-kazokuso .flow-section .c-flow-chart {
  grid-template-columns: 27% 1fr 27%;
}
.plan-detail-shinzokuso .flow-section .c-flow-chart .flow-steps > li::after,
.plan-detail-ichiniciso .flow-section .c-flow-chart .flow-steps > li::after,
.plan-detail-ippanso .flow-section .c-flow-chart .flow-steps > li::after,
.plan-detail-jitakuso .flow-section .c-flow-chart .flow-steps > li::after,
.plan-detail-kazokuso .flow-section .c-flow-chart .flow-steps > li::after {
  left: calc(100% + 21px);
}

.plan-detail-kaiyou .c-section.bg-gray {
  background: rgba(167, 216, 233, 0.2);
}
.plan-detail-kaiyou .c-flow-list > li .contents-wrap {
  grid-template-areas: "ttl img" "desc desc";
  background: #FFFFFF;
}
.plan-detail-kaiyou .c-flow-list > li .contents-wrap .c-num-ttl .num {
  background: #4a6779;
}
.plan-detail-kaiyou.kaiyou-detail .mv-section .c-ttl01 {
  margin-bottom: 0;
}
.plan-detail-kaiyou.kaiyou-detail .mv-section .c-ttl01 + .anchor-list {
  margin-top: 40px;
}
.plan-detail-kaiyou.kaiyou-detail .contents-section .img-area {
  max-width: 600px;
  margin-inline: auto;
}
.plan-detail-kaiyou.kaiyou-detail .contents-section .c-simple-list {
  margin-top: 30px;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 300px), 1fr));
  gap: 8px 20px;
}
.plan-detail-kaiyou.kaiyou-detail .contents-section .c-simple-list > li {
  margin-top: 0;
  line-height: 1.4;
}
.plan-detail-kaiyou.kaiyou-detail .contents-section .c-simple-list > li::after {
  top: 0;
  height: 1.4em;
  width: 0.5em;
  background: radial-gradient(circle, #56617d 50%, rgba(87, 199, 133, 0) 50%);
  background-position: center;
  background-size: 7px 7px;
  background-repeat: no-repeat;
}
.plan-detail-kaiyou.kaiyou-detail .area-section .contents-wrap {
  display: grid;
  grid-template-columns: min(45%, 500px) 1fr;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 30px;
}
.plan-detail-kaiyou.kaiyou-detail .area-section .img-area {
  -webkit-align-self: center;
      -ms-flex-item-align: center;
          align-self: center;
  max-width: 500px;
  margin-inline: auto;
  text-align: center;
}
.plan-detail-kaiyou.kaiyou-detail .area-section .area-list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 380px), 1fr));
  gap: 30px;
  overflow-y: auto;
  max-height: 450px;
  padding: 10px;
}
.plan-detail-kaiyou.kaiyou-detail .area-section .area-list::-webkit-scrollbar {
  height: 10px;
  width: 10px;
}
.plan-detail-kaiyou.kaiyou-detail .area-section .area-list::-webkit-scrollbar-track {
  border-radius: 11px;
  background-color: #F1F5F3;
}
.plan-detail-kaiyou.kaiyou-detail .area-section .area-list::-webkit-scrollbar-track:hover {
  background-color: #DFE9EB;
}
.plan-detail-kaiyou.kaiyou-detail .area-section .area-list::-webkit-scrollbar-track:active {
  background-color: #DFE9EB;
}
.plan-detail-kaiyou.kaiyou-detail .area-section .area-list::-webkit-scrollbar-thumb {
  border-radius: 11px;
  background-color: #56617D;
}
.plan-detail-kaiyou.kaiyou-detail .area-section .area-list::-webkit-scrollbar-thumb:hover {
  background-color: #5c7795;
}
.plan-detail-kaiyou.kaiyou-detail .area-section .area-list::-webkit-scrollbar-thumb:active {
  background-color: #5c7795;
}
.plan-detail-kaiyou.kaiyou-detail .area-section .area-list > li .c-num-ttl {
  font-size: 24px;
  margin-bottom: 10px;
}
.plan-detail-kaiyou.kaiyou-detail .area-section .area-list > li .c-num-ttl .num {
  background: #77c1e5;
  aspect-ratio: auto;
  width: auto;
  height: auto;
  font-size: 24px;
  line-height: 1.6;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  padding: 6px 14px;
  border-radius: 100vw;
}
.plan-detail-kaiyou.kaiyou-detail .area-section .area-list > li .c-num-ttl .inn-txt {
  color: #56617D;
}
.plan-detail-kaiyou.kaiyou-detail .area-section .area-list > li .c-kaiyou-price-tbl {
  border: 1px solid #5c7795;
  border-left: 0;
  width: 100%;
}
.plan-detail-kaiyou.kaiyou-detail .area-section .area-list > li .c-kaiyou-price-tbl tbody tr {
  border-left: 1px solid #5c7795;
}
.plan-detail-kaiyou.kaiyou-detail .area-section .area-list > li .c-kaiyou-price-tbl tbody tr:first-child th {
  background: #5c7795;
  color: #FFFFFF;
  padding: 12px;
  font-size: 20px;
}
.plan-detail-kaiyou.kaiyou-detail .area-section .area-list > li .c-kaiyou-price-tbl tbody tr:not(.plan-detail-kaiyou.kaiyou-detail .area-section .area-list > li .c-kaiyou-price-tbl tbody tr:first-child) td {
  border-top: 1px solid #5c7795;
}
.plan-detail-kaiyou.kaiyou-detail .area-section .area-list > li .c-kaiyou-price-tbl tbody tr td {
  border-left: 1px solid #5c7795;
  font-size: 20px;
  padding: 12px;
}
.plan-detail-kaiyou.kaiyou-detail .area-section .area-list > li .c-kaiyou-price-tbl tbody tr td:last-child {
  text-align: right;
  min-width: 120px;
}
.plan-detail-kaiyou.kaiyou-detail .c-kaiyou-flow-section {
  padding-top: 0;
}
.plan-detail-kaiyou.kaiyou-detail .note-txt {
  margin-top: 16px;
  display: block;
}

.plan-detail-eidai .c-mv-plan-section {
  background: #FFFFFF;
}
.plan-detail-eidai .c-mv-plan-section .contents-wrap .img-area img {
  aspect-ratio: auto;
}
.plan-detail-eidai .cta-eidai {
  text-align: center;
  padding-bottom: 30px;
}
.plan-detail-eidai .cta-eidai .c-ttl01 {
  margin-bottom: 20px;
}
.plan-detail-eidai .c-section.bg-gray {
  background: rgba(195, 160, 62, 0.1);
}
.plan-detail-eidai .c-plan-about-section .desc {
  margin-top: 30px;
  line-height: 2;
}
.plan-detail-eidai .c-plan-about-section .desc .c-accent-txt {
  font-size: 50px;
  line-height: 1.2;
}
.plan-detail-eidai .c-map-area iframe {
  border: 0;
  width: 100%;
  min-height: 500px;
}
.plan-detail-eidai .c-plan-call-section .c-btns-wrap {
  margin-top: 30px;
}

.plan-detail-incence .mv-section .c-note-block {
  grid-area: note;
  margin-top: 30px;
  color: #666EC6;
  border-color: #666EC6;
}
.plan-detail-incence .mv-section .c-note-block .c-underline-dot {
  font-size: 30px;
}
.plan-detail-incence .mv-section .c-note-block .c-underline-dot .big {
  font-size: 50px;
  line-height: 0.4;
}
.plan-detail-incence .c-section.bg-gray {
  background: rgba(102, 110, 198, 0.2);
}
.plan-detail-incence .faq-section .faq-list .question::before {
  color: #666EC6;
}
.plan-detail-incence .gift-section .details-area {
  margin-top: 0;
}
.plan-detail-incence .gift-section .details-area .detail-card .img-area img {
  -o-object-fit: contain;
     object-fit: contain;
  aspect-ratio: unset;
}
.plan-detail-incence .c-flow-list > li .contents-wrap {
  grid-template-areas: "ttl img" "desc desc";
  background: #FFFFFF;
}
.plan-detail-incence .c-flow-list > li .contents-wrap .c-num-ttl .num {
  background: #666EC6;
}
.plan-detail-incence .product-section .c-plan-call-section {
  margin-top: 30px;
  background: rgba(102, 110, 198, 0.1);
  border-radius: 5px;
  padding: 16px;
}
.plan-detail-incence .product-section .c-plan-call-section .c-btns-wrap {
  margin-top: 20px;
}

.plan-detail-ihin .c-section.bg-gray {
  background: rgba(238, 83, 83, 0.1);
}
.plan-detail-ihin .mv-section .c-ttl01 {
  margin-bottom: 0;
}
.plan-detail-ihin .c-points-card-list > li {
  width: 100%;
}
.plan-detail-ihin .c-points-card-list > li .num-area {
  margin: 0;
  background: #ee5353;
}
.plan-detail-ihin .c-points-card-list > li .ttl {
  min-height: auto;
}
.plan-detail-ihin .c-points-card-list > li .contents-wrap {
  width: 100%;
  gap: 8px;
}
.plan-detail-ihin .c-points-card-list > li .desc {
  text-align: center;
}
.plan-detail-ihin .c-points-card-list {
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
}
.plan-detail-ihin .onestop-section .c-ttl02 .c-lines-txt {
  display: inline-block;
  line-height: 1.2;
  margin-bottom: 0;
}
.plan-detail-ihin .onestop-section .calc-area {
  display: grid;
  grid-template-columns: 1fr auto 1fr auto 1fr;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
}
.plan-detail-ihin .onestop-section .calc-area .circle {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  aspect-ratio: 1;
  border: 2px solid #ee5353;
  border-radius: 50%;
  background: #FFFFFF;
  text-align: center;
  padding: 16px;
}
.plan-detail-ihin .onestop-section .calc-area .circle.pink {
  background: #ee5353;
}
.plan-detail-ihin .onestop-section .calc-area .circle.pink .inn-txt {
  color: #FFFFFF;
}
.plan-detail-ihin .onestop-section .calc-area .circle .inn-txt {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
  font-size: 20px;
  font-weight: 700;
  color: #ee5353;
}
.plan-detail-ihin .onestop-section .calc-area .circle .inn-txt .small {
  color: #5a4538;
  font-size: 14px;
}
.plan-detail-ihin .onestop-section .calc-area .icon {
  font-size: clamp(40px, 5vw, 50px);
  line-height: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  aspect-ratio: 1;
  max-width: 50px;
  margin-inline: auto;
}
.plan-detail-ihin .buy-section .c-points-card-list {
  grid-template-columns: repeat(4, 1fr);
}
.plan-detail-ihin .buy-section .c-points-card {
  padding-top: 0;
}
.plan-detail-ihin .buy-section .c-points-card .contents-wrap {
  padding: 0;
}
.plan-detail-ihin .choose-section .choose-list-area {
  padding: 0;
}
.plan-detail-ihin .choose-section .c-plan-detail-section {
  margin-top: 50px;
}
.plan-detail-ihin .choose-section .details-area {
  margin-top: 0;
  padding-bottom: 0;
}
.plan-detail-ihin .choose-section .details-area .detail-card.row .img-area img {
  aspect-ratio: auto;
  -o-object-fit: contain;
     object-fit: contain;
}
.plan-detail-ihin .choose-section .details-area .detail-card.row .txt-area .ttl {
  margin-bottom: 0;
  text-align: left;
  font-size: 24px;
}
.plan-detail-ihin .choose-section .details-area .detail-card.row .txt-area .desc {
  font-size: 20px;
}

.plan-detail-sozoku .c-section.bg-gray {
  background: rgba(86, 97, 125, 0.2);
}
.plan-detail-sozoku .course-section-wrap .white-box .c-tag-list {
  max-width: none;
}
.plan-detail-sozoku .course-section-wrap .white-box .list-ttl {
  margin-top: 15px;
}
.plan-detail-sozoku .course-section-wrap .white-box .c-simple-list > li {
  margin-top: 10px;
  line-height: 1.6;
}
.plan-detail-sozoku .course-section-wrap .white-box .c-simple-list > li::after {
  top: 11px;
}
.plan-detail-sozoku .course-section-wrap .white-box .c-simple-list.ico-caution > li {
  font-size: 12px;
  padding-left: 1.2em;
}
.plan-detail-sozoku .course-section-wrap .white-box .c-simple-list.ico-caution > li + li {
  margin-top: 5px;
}
.plan-detail-sozoku .course-section-wrap .white-box .c-simple-list.ico-caution > li::after {
  content: "※";
  width: 1em;
  height: 1.6em;
  background: transparent;
  top: 0;
}
.plan-detail-sozoku .course-section-wrap .course-section {
  margin-top: 30px;
  margin-bottom: 60px;
}
.plan-detail-sozoku .course-section-wrap .support-section {
  margin-top: 30px;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 400px), 1fr));
  gap: 30px;
}
.plan-detail-sozoku .course-section-wrap .support-section .white-box + .white-box {
  margin-top: 0;
}
.plan-detail-sozoku .course-section-wrap .support-section .white-box .list-ttl + .long-txt {
  font-size: 20px;
}

/* -----------------------------------------------
* faq Module
* fapページ用
-------------------------------------------------- */
.far .c-mv-section {
  overflow: hidden;
  background: url(../img/pages/far/bg.jpg.webp);
  padding-top: 80px;
}
.far .c-mv-section .ttl-area {
  text-align: center;
}
.far .c-mv-section .ttl-area .balloon {
  font-size: 33px;
  font-weight: bold;
  display: inline-block;
  padding: 8px 24px;
  border: 2px solid #5c7795;
  border-radius: 10px;
  background: #fff;
  color: #5c7795;
  letter-spacing: 0.05em;
  position: relative;
}
.far .c-mv-section .ttl-area .balloon::after, .far .c-mv-section .ttl-area .balloon::before {
  background: #fff;
  position: absolute;
  content: "";
  top: calc(100% - 1px);
  left: 0;
  right: 0;
  margin: auto;
  width: 30px;
  height: 20px;
  -webkit-clip-path: polygon(0 0, 100% 0, 50% 100%);
          clip-path: polygon(0 0, 100% 0, 50% 100%);
}
.far .c-mv-section .ttl-area .balloon::before {
  width: 36px;
  height: 24px;
  top: 100%;
  background: #5c7795;
}
.far .c-mv-section .ttl-area .ttl {
  margin-top: 20px;
  font-size: 44px;
  font-weight: bold;
}
.far .c-mv-section .ttl-area .ttl .large {
  font-size: 54px;
  color: #ee5353;
}
.far .c-mv-section .ttl-area .ttl .large > span {
  position: relative;
}
.far .c-mv-section .ttl-area .ttl .large > span::after {
  position: absolute;
  content: "";
  background: #ee5353;
  border-radius: 50%;
  width: 8px;
  height: 8px;
  bottom: -4px;
  left: 0;
  right: 0;
  margin: auto;
}
.far .c-mv-section .recommend {
  margin-top: 40px;
}
.far .c-mv-section .recommend .txt {
  text-align: center;
  font-weight: bold;
  position: relative;
  font-size: 28px;
  margin: 0 auto;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.far .c-mv-section .recommend .txt .left, .far .c-mv-section .recommend .txt .right {
  position: absolute;
  content: "";
  width: 6px;
  height: 100%;
  left: -10px;
  top: 0;
}
.far .c-mv-section .recommend .txt .left::after, .far .c-mv-section .recommend .txt .left::before, .far .c-mv-section .recommend .txt .right::after, .far .c-mv-section .recommend .txt .right::before {
  -webkit-clip-path: polygon(0 0, 100% 0, 50% 100%);
          clip-path: polygon(0 0, 100% 0, 50% 100%);
  position: absolute;
  content: "";
  width: 6px;
  height: 100%;
  -webkit-transform: rotate(-25deg);
          transform: rotate(-25deg);
  left: -20px;
  bottom: 0;
  background: #5a4538;
}
.far .c-mv-section .recommend .txt .left::after, .far .c-mv-section .recommend .txt .right::after {
  left: -23px;
  height: 60%;
  -webkit-transform: rotate(-35deg);
          transform: rotate(-35deg);
}
.far .c-mv-section .recommend .txt .right {
  left: auto;
  right: -10px;
}
.far .c-mv-section .recommend .txt .right::after, .far .c-mv-section .recommend .txt .right::before {
  -webkit-transform: rotate(25deg);
          transform: rotate(25deg);
  right: -20px;
  left: auto;
}
.far .c-mv-section .recommend .txt .right::after {
  right: -23px;
  -webkit-transform: rotate(35deg);
          transform: rotate(35deg);
}
.far .c-mv-section .recommend .wrap {
  z-index: 1;
  position: relative;
  width: 560px;
  margin: 20px auto 0;
}
.far .c-mv-section .recommend .box {
  z-index: 1;
  position: relative;
  border-radius: 5px;
  border: 4px solid #5c7795;
  background: #fff;
  padding: 20px 40px;
  font-weight: bold;
  font-size: 22px;
  letter-spacing: 0.05em;
  color: #5c7795;
}
.far .c-mv-section .recommend .img {
  z-index: -1;
  position: absolute;
  left: calc(100% - 130px);
  bottom: 0;
  width: 285px;
}
.far .c-mv-section .recommend .box-list > li {
  padding-left: 30px;
  position: relative;
}
.far .c-mv-section .recommend .box-list > li::after {
  position: absolute;
  content: "";
  width: 20px;
  height: 10px;
  border-bottom: 3px solid #5c7795;
  border-left: 3px solid #5c7795;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  top: 11px;
  left: 0;
}
.far .c-mv-section .recommend .box-list > li + li {
  margin-top: 10px;
}

/* -----------------------------------------------
* faq Module
* fapページ用
-------------------------------------------------- */
.welfare .list {
  margin-top: 30px;
}
.welfare .list > li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.welfare .list > li .head {
  background: #5a4538;
  font-weight: bold;
  color: #fff;
  width: 140px;
  padding: 3px 10px 5px;
  text-align: center;
}
.welfare .list > li .txt {
  width: calc(100% - 150px);
}
.welfare .list > li + li {
  margin-top: 15px;
}
.welfare .lead {
  font-size: 22px;
  font-weight: bold;
  line-height: 1.6;
  margin-bottom: 40px;
}
.welfare .note {
  margin-top: 30px;
  font-size: 12px;
  line-height: 2;
}
.welfare .flows {
  z-index: 1;
  margin-top: 30px;
  position: relative;
}
.welfare .flows:after {
  width: 2px;
  height: 100%;
  left: 39px;
  top: 0;
  position: absolute;
  content: "";
  border-left: 2px dotted #ff8d3b;
  z-index: -1;
}
.welfare .flows .head {
  font-weight: bold;
  position: relative;
}
.welfare .flows .head > span {
  display: inline-block;
  text-align: center;
  color: #ff8d3b;
  width: 80px;
  border: 1px solid #ff8d3b;
  font-weight: bold;
  padding: 1px 15px 2px;
  background: #fff;
}
.welfare .flows .head::before {
  position: absolute;
  content: "";
  background: #ff8d3b;
  top: 100%;
  left: 30px;
  margin: auto;
  width: 20px;
  height: 14px;
  -webkit-clip-path: polygon(0 0, 100% 0, 50% 100%);
          clip-path: polygon(0 0, 100% 0, 50% 100%);
}
.welfare .flows .head::after {
  position: absolute;
  content: "";
  height: 1px;
  background: #ff8d3b;
  top: 0;
  bottom: 0;
  margin: auto;
  width: calc(100% - 80px);
  right: 0;
}
.welfare .flows > li {
  position: relative;
  z-index: 1;
  padding-bottom: 20px;
}
.welfare .item {
  padding-left: 80px;
}
.welfare .item .imgs {
  margin-top: 20px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
}
.welfare .item .imgs .img > img {
  width: 140px;
  height: 100px;
  -o-object-fit: cover;
     object-fit: cover;
}
.welfare .item .imgs .img span {
  display: block;
  text-align: center;
  font-size: 14px;
}
.welfare .flows-inner {
  margin-top: 20px;
}
.welfare .flows-inner > li {
  position: relative;
  padding-left: 10px;
  font-size: 14px;
}
.welfare .flows-inner > li::after {
  position: absolute;
  content: "";
  top: 10px;
  width: 4px;
  height: 4px;
  background: #5a4538;
  border-radius: 50%;
  left: 0;
}
.welfare .flows-inner > li + li {
  margin-top: 10px;
}
.welfare .summary {
  font-size: 30px;
  margin-top: 20px;
  text-align: center;
}
.welfare .summary .large {
  font-weight: bold;
  color: #ff8d3b;
}
.welfare .step-list {
  margin-top: 30px;
}
.welfare .step-list > li + li {
  margin-top: 10px;
}
.welfare .step-list > li > h3 {
  font-weight: bold;
  font-size: 24px;
}
.welfare .step-list > li > h3 .tag {
  position: relative;
  top: -2px;
  color: #fff;
  display: inline-block;
  background: #ff8d3b;
  padding: 2px 10px 4px;
  line-height: 1;
  font-size: 18px;
  margin-right: 10px;
}

/* -----------------------------------------------
* faq Module
* fapページ用
-------------------------------------------------- */
.hurry .lead {
  text-align: center;
  margin-bottom: 50px;
}
.hurry .lead {
  font-weight: bold;
  text-align: center;
  font-size: clamp(16px, 1.3888888889vw, 20px);
  margin-bottom: 20px;
  color: #DC603D;
  margin-top: 50px;
}
.hurry .how-to-call > li + li {
  margin-top: 60px;
  position: relative;
}
.hurry .how-to-call > li + li::before {
  content: "";
  position: absolute;
  top: -40px;
  right: 0;
  left: 0;
  margin: auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 10px solid transparent;
  border-left: 10px solid transparent;
  border-top: 15px solid #999999;
  border-bottom: 0;
}
.hurry .how-to-call .c-simple-list {
  background-color: #fff;
  border-radius: 10px;
  padding: clamp(15px, 2.0833333333vw, 30px);
  margin-top: 20px;
}
.hurry .how-to-call .c-simple-list > li {
  font-weight: bold;
  margin-top: 0;
}
.hurry .how-to-call .c-simple-list > li + li {
  margin-top: 8px;
}
.hurry .how-to-call .c-simple-list .desc {
  font-weight: 500;
}
.hurry .how-to-call .c-simple-list .reference {
  font-size: 12px;
  color: #DC603D;
}
.hurry .details-area .call-area, .hurry .flow-cont .call-area {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}
.hurry .details-area .call-area .txt, .hurry .flow-cont .call-area .txt {
  text-align: center;
  color: #DC603D;
}
.hurry .c-points-card-list .c-points-card {
  width: 100%;
}
.hurry .c-points-card-list .c-points-card .contents-wrap {
  width: 100%;
}
.hurry .flow-cont {
  padding: 40px clamp(16px, 2.7777777778vw, 40px);
  position: relative;
}
.hurry .flow-cont .bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.hurry .flow-cont .bg::before, .hurry .flow-cont .bg::after {
  content: "";
  position: absolute;
  top: 0;
  width: 50%;
  height: 100%;
  display: block;
  z-index: 0;
}
.hurry .flow-cont .bg::before {
  left: 0;
  background-color: #FAF1C3;
}
.hurry .flow-cont .bg::after {
  right: 0;
  background-color: #F1F5F3;
  z-index: 0;
}
.hurry .flow-cont .bg .line {
  position: relative;
  width: 100%;
  height: 100%;
}
.hurry .flow-cont .bg .line::before, .hurry .flow-cont .bg .line::after {
  content: "";
  position: absolute;
  top: clamp(120px, 11.1111111111vw, 120px);
  height: calc(100% - 16em);
  display: block;
  width: 3px;
  background-color: #ff8d3b;
  margin: auto;
  z-index: 1;
}
.hurry .flow-cont .bg .line::before {
  left: 25%;
}
.hurry .flow-cont .bg .line::after {
  right: 25%;
}
.hurry .flow-cont > div {
  position: relative;
  z-index: 1;
  display: block;
  text-align: center;
  font-size: clamp(16px, 1.3888888889vw, 20px);
}
.hurry .flow-cont > div:has(> div:nth-of-type(2)) {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.hurry .flow-cont > div > div {
  width: 100%;
}
.hurry .flow-cont > div + div {
  margin-top: 40px;
}
.hurry .flow-cont .red-cont {
  padding: clamp(10px, 1.3888888889vw, 20px);
  font-weight: bold;
  text-align: center;
  background-color: #fff;
  border: #ff8d3b 1px solid;
  position: relative;
}
.hurry .flow-cont .cont.right > div {
  width: 50%;
  margin-right: 0;
  margin-left: auto;
}
.hurry .flow-cont .cont.left > div {
  width: 50%;
  margin-left: 0;
  margin-right: auto;
}
.hurry .flow-cont .cont > div {
  background-color: #fff;
  padding: clamp(10px, 1.3888888889vw, 20px);
}
.hurry .flow-cont .cont > div .ttl {
  background-color: #ff8d3b;
  color: #fff;
  padding: clamp(10px, 1.3888888889vw, 20px);
  margin-bottom: 20px;
}
.hurry .flow-cont .cont > div .txt {
  text-align: left;
  font-size: clamp(12px, 3.743315508vw, 14px);
}
.hurry .flow-cont .cont > div .txt.center {
  text-align: center;
}
.hurry .flow-cont .cont > div .txt.mt {
  margin-top: 20px;
}
.hurry .flow-cont .call-area {
  margin-top: 20px;
}
.hurry .flow-cont .call-area .txt {
  text-align: center !important;
}
.hurry .flow-cont .btn-area {
  margin-top: 20px;
}
.hurry .flow-cont .btn-area a {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

.error-404 .contents-wrap {
  display: grid;
  grid-template-columns: auto 1fr;
  grid-template-areas: "ttl desc" "ttl btn";
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 30px clamp(30px, 8.1632653061vw, 80px);
  padding-block: 55px;
}
.error-404 .contents-wrap .ttl {
  grid-area: ttl;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 30px;
  text-align: center;
}
.error-404 .contents-wrap .ttl .big {
  font-size: clamp(150px, 20.4081632653vw, 200px);
  font-weight: 700;
  line-height: 80%;
  letter-spacing: 0.1em;
}
.error-404 .contents-wrap .ttl .small {
  font-size: clamp(50px, 6.1224489796vw, 60px);
  font-weight: 700;
  line-height: 0.6666666667;
}
.error-404 .contents-wrap .desc {
  grid-area: desc;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.875;
}
.error-404 .contents-wrap .btn-wrap {
  grid-area: btn;
  justify-self: center;
  width: 100%;
  max-width: 420px;
}

/* -----------------------------------------------
* reserve Module
* reserve ページ用
-------------------------------------------------- */
.sitemap a {
  text-decoration: underline;
}
.sitemap .sitemap-list, .sitemap .sitemap-inner-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 15px;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.sitemap .sitemap-list > li, .sitemap .sitemap-inner-list > li {
  width: calc((100% - 30px) / 3);
  padding-left: 13px;
  position: relative;
}
.sitemap .sitemap-list > li::after, .sitemap .sitemap-inner-list > li::after {
  position: absolute;
  content: "";
  background: #5a4538;
  height: 1px;
  width: 8px;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}
.sitemap .sitemap-list + .sitemap-list, .sitemap .sitemap-inner-list + .sitemap-list {
  margin-top: 40px;
}
.sitemap .sitemap-list.large > li, .sitemap .sitemap-inner-list.large > li {
  width: calc((100% - 30px) / 2);
}
.sitemap .sitemap-list.column > li, .sitemap .sitemap-inner-list.column > li {
  padding-left: 0;
  font-size: 12px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.sitemap .sitemap-list.column > li::after, .sitemap .sitemap-inner-list.column > li::after {
  display: none;
}
.sitemap .sitemap-inner-list {
  margin-top: 20px;
  padding-left: 30px;
  padding-right: 30px;
}
.sitemap .sitemap-inner-list > li {
  font-size: 14px;
}
.sitemap .pref-table {
  margin-top: 30px;
}
.sitemap .pref-table > li + li {
  margin-top: 50px;
}
.sitemap .pref-table .pref {
  font-weight: bold;
  font-size: 20px;
}
.sitemap .pref-table .city {
  margin-top: 20px;
  font-size: 16px;
  font-weight: bold;
}
.sitemap .pref-list {
  padding-left: 20px;
}
.sitemap .pref-inner-list {
  margin-top: 10px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding-left: 20px;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 10px 30px;
}
.sitemap .pref-inner-list > li {
  font-size: 12px;
  width: calc((100% - 60px) / 3);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* -----------------------------------------------
* reserve Module
* reserve ページ用
-------------------------------------------------- */
.support .inner-block {
  position: relative;
}
.support .c-mv-section {
  padding: 50px 0;
  background: #50a2d1;
}
.support .c-mv-section .mv-inner {
  padding: 30px 0;
  background: #fff;
}
.support .c-mv-section .ttl-area .ttl {
  line-height: 2;
  font-size: 32px;
  font-weight: bold;
  text-align: center;
}
.support .c-mv-section .ttl-area .ttl .large {
  font-size: 40px;
}
.support .c-mv-section .ttl-area .ttl .large > span {
  position: relative;
}
.support .c-mv-section .ttl-area .ttl .large > span::after {
  position: absolute;
  content: "";
  border-radius: 50%;
  width: 8px;
  height: 8px;
  top: -5px;
  left: 0;
  right: 0;
  margin: auto;
  background: #50a2d1;
}
.support .c-mv-section .txt {
  margin-top: 40px;
  text-align: center;
  line-height: 2;
}
.support .c-mv-section .img {
  position: absolute;
}
.support .c-mv-section .img > img {
  border-radius: 50%;
  width: 120px;
  height: 120px;
}
.support .c-mv-section .img > span {
  border-radius: 50%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #fff;
  background: rgba(80, 162, 209, 0.862745098);
  width: 60px;
  font-size: 13px;
  height: 60px;
  position: absolute;
}
.support .c-mv-section .img:nth-child(1) {
  top: 10px;
  left: 30px;
}
.support .c-mv-section .img:nth-child(1) > span {
  bottom: -10px;
  left: -20px;
}
.support .c-mv-section .img:nth-child(2) {
  bottom: 0;
  left: 70px;
}
.support .c-mv-section .img:nth-child(2) > span {
  top: -10px;
  right: -20px;
}
.support .c-mv-section .img:nth-child(3) {
  bottom: 0;
  right: 70px;
}
.support .c-mv-section .img:nth-child(3) > span {
  top: -10px;
  left: -20px;
}
.support .c-mv-section .img:nth-child(4) {
  top: 10px;
  right: 30px;
}
.support .c-mv-section .img:nth-child(4) > span {
  bottom: -10px;
  right: -20px;
}

.discount .mv-section {
  padding-block: 60px;
  background: url("../img/pages/far/bg.jpg.webp") no-repeat center/cover;
}
.discount .mv-section .top-desc-txt {
  text-align: center;
  font-size: 28px;
  margin-bottom: 40px;
}
.discount .mv-section .c-note-block .note-txt {
  font-size: 24px;
}
.discount .mv-section .c-note-block .note-txt .c-underline-dot {
  font-size: 28px;
}
.discount .mv-section .c-note-block .note-txt .c-underline-dot .big {
  font-size: 40px;
  line-height: 1;
}
.discount .discount-section .white-box {
  border: 1px solid #5a4538;
}
.discount .discount-section .white-box.green .c-ttl02 .c-lines-txt::before, .discount .discount-section .white-box.green .c-ttl02 .c-lines-txt::after {
  background: #22ad3a;
}
.discount .discount-section .white-box.green .c-btn {
  background: #22ad3a;
  border-color: #22ad3a;
  -webkit-box-shadow: 0 2px 0 0 #567d71;
          box-shadow: 0 2px 0 0 #567d71;
}
.discount .discount-section .white-box.green .c-btn:focus-visible {
  -webkit-box-shadow: none;
          box-shadow: none;
}
.discount .discount-section .white-box.green .c-btn .txt-free {
  color: #22ad3a;
}
.discount .discount-section .white-box .c-ttl02 .c-lines-txt::before, .discount .discount-section .white-box .c-ttl02 .c-lines-txt::after {
  background: #ff8d3b;
}
.discount .discount-section .white-box .top-desc-txt {
  font-size: 24px;
  text-align: center;
}
.discount .discount-section .white-box .top-desc-txt .big {
  font-size: 40px;
  line-height: 1.2;
}
.discount .discount-section .white-box .btn-area {
  margin-block: 30px;
  max-width: 400px;
  margin-inline: auto;
}
.discount .discount-section .white-box > .desc {
  font-size: 20px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
}
.discount .discount-section .white-box > .desc .c-accent-txt-orange {
  text-decoration: underline;
}
.discount .discount-section .white-box .step-section {
  margin-top: 60px;
}
.discount .discount-section .white-box .step-section .c-points-card-list {
  grid-template-columns: 100%;
  row-gap: 30px;
}
.discount .discount-section .white-box .step-section .c-points-card-list > li {
  max-width: 600px;
  -webkit-column-gap: 20px;
     -moz-column-gap: 20px;
          column-gap: 20px;
  padding: 0;
  width: 100%;
}
.discount .discount-section .white-box .step-section .c-points-card-list > li .ttl {
  text-align: left;
}
.discount .discount-section .white-box .step-section .c-points-card-list > li .num-area {
  margin: 0;
  margin-bottom: auto;
  background: #22ad3a;
}
.discount .call-section .calls-block-section {
  margin-top: 0;
}
.discount .other-info-section {
  padding-block: 0;
}

.payment .c-three-points-top-section {
  padding-block: 40px;
  background: url("../img/pages/payment/mv-img.webp") no-repeat center/cover;
}
.payment .c-three-points-top-section .contents-wrap {
  padding-block: 30px;
}
.payment .c-three-points-top-section .c-ttl01 {
  line-height: 1.4;
  margin-bottom: 20px;
}
.payment .c-three-points-top-section .desc {
  line-height: 1.4;
  margin-top: 0;
  font-size: 20px;
}
.payment .payment-section .anchor-list {
  margin-block: 30px 50px;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  justify-items: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.payment .payment-section .anchor-list .c-tag {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  border: 0;
  border-radius: 0;
  background: transparent;
  padding: 0;
  padding-bottom: 20px;
}
.payment .payment-section .anchor-list .c-tag:focus-visible {
  background: #09c;
}
.payment .payment-section .anchor-list .c-tag > span {
  color: #09c;
  white-space: nowrap;
}
.payment .payment-section .anchor-list .c-tag > img {
  width: 64px;
}
.payment .payment-section .anchor-list .c-tag::before {
  left: 0;
  right: 0;
  top: auto;
  bottom: 0;
  margin: auto;
  -webkit-transition: background 0.3s ease-in-out;
  transition: background 0.3s ease-in-out;
}
.payment .payment-section .payment-list .white-box > * {
  max-width: 700px;
  margin-inline: auto;
}
.payment .payment-section .payment-list .white-box > .c-tag {
  margin-bottom: 8px;
  color: #ee5353;
  border-color: #ee5353;
}
.payment .payment-section .payment-list .white-box .c-num-ttl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 8px;
  line-height: 1.4;
  margin-bottom: 10px;
}
.payment .payment-section .payment-list .white-box .c-num-ttl .num {
  background: #ee5353;
}
.payment .payment-section .payment-list .white-box .c-tag-list {
  margin-bottom: 30px;
}
.payment .payment-section .payment-list .white-box .c-tag-list .c-tag {
  color: #ff8d3b;
  border-color: #ff8d3b;
}
.payment .payment-section .payment-list .white-box .c-tag-list .c-tag.blue {
  color: #488fe0;
  border-color: #488fe0;
}
.payment .payment-section .payment-list .white-box .txt-img-area {
  display: grid;
  grid-template-columns: 1fr min(45%, 300px);
  gap: 30px;
}
.payment .payment-section .payment-list .white-box .txt-img-area img {
  border-radius: 10px;
}
.payment .payment-section .payment-list .white-box .notes {
  font-size: 12px;
  line-height: 1.2;
  margin-top: 10px;
}
.payment .payment-section .payment-list .white-box .notes > li {
  padding-left: 1.2em;
  position: relative;
}
.payment .payment-section .payment-list .white-box .notes > li + li {
  margin-top: 2px;
}
.payment .payment-section .payment-list .white-box .notes > li::before {
  position: absolute;
  content: "※";
  width: 1em;
  height: 1.2em;
  top: 0;
  left: 0;
}
.payment .payment-section .payment-list .white-box .ttl {
  font-size: 18px;
  font-weight: 600;
  text-align: center;
  margin-top: 30px;
  margin-bottom: 20px;
}
.payment .payment-section .payment-list .white-box .creditcard-area {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 10px;
}
.payment .payment-section .payment-list .white-box .creditcard-area .img-area {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 5px;
  border: 1px solid #ddd;
  border-radius: 5px;
  max-height: 80px;
}
.payment .payment-section .payment-list .white-box .creditcard-area .img-area img {
  height: 100%;
  width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.payment .payment-section .payment-list .white-box .choose-list-area {
  background: #FAF1C3;
  border-radius: 15px;
  padding: 25px 20px;
  margin-inline: auto;
  margin-top: 20px;
}
.payment .payment-section .payment-list .white-box .choose-list-area .choose-ttl {
  font-size: 18px;
  padding-inline: 2em;
  font-weight: 700;
  margin-bottom: 20px;
}
.payment .payment-section .payment-list .white-box .choose-list-area .choose-ttl::before, .payment .payment-section .payment-list .white-box .choose-list-area .choose-ttl::after {
  width: 2px;
  bottom: 0;
}
.payment .payment-section .payment-list .white-box .choose-list-area .choose-ttl::before {
  left: 1em;
}
.payment .payment-section .payment-list .white-box .choose-list-area .choose-ttl::after {
  right: 1em;
}
.payment .payment-section .payment-list .white-box .choose-list-area .c-choose-list {
  max-width: 500px;
  margin-inline: auto;
}
.payment .payment-section .payment-list .white-box .choose-list-area .c-choose-list > li {
  border-bottom: 0;
}
.payment .payment-section .payment-list .white-box.orico .txt-img-area {
  grid-template-columns: 1fr min(35%, 195px);
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.payment .example-section .example-list {
  margin-bottom: 10px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px 12px;
}
.payment .example-section .example-list > li.clr-kasoushiki > .plan-ttl {
  background: #B29447;
}
.payment .example-section .example-list > li.clr-jitakushiki > .plan-ttl {
  background: #4a6779;
}
.payment .example-section .example-list > li.clr-tsukisoishiki > .plan-ttl {
  background: #77c1e5;
}
.payment .example-section .example-list > li.clr-kazokusou_1day > .plan-ttl {
  background: #7db462;
}
.payment .example-section .example-list > li.clr-kazokusou_2days > .plan-ttl {
  background: #ff8d3b;
}
.payment .example-section .example-list > li.clr-shinzokusou > .plan-ttl {
  background: #567d71;
}
.payment .example-section .example-list > li.clr-ippansou > .plan-ttl {
  background: #56617D;
}
.payment .example-section .example-list > li.clr-kaiyou > .plan-ttl {
  background: #69AFCA;
}
.payment .example-section .example-list > li.clr-eidai > .plan-ttl {
  background: #C3A03E;
}
.payment .example-section .example-list > li .plan-ttl {
  text-align: center;
  color: #FFFFFF;
  padding: 5px 0;
  border-radius: 5px;
  font-size: 16px;
  font-weight: bold;
  background: #B29447;
}
.payment .example-section .example-list > li .price-before {
  margin-top: 10px;
  text-align: center;
  font-size: 22px;
  font-weight: bold;
  line-height: 1.2;
}
.payment .example-section .example-list > li .price-before .small {
  font-size: 16px;
}
.payment .example-section .example-list > li .price-before .withtax {
  font-size: 16px;
  font-weight: 400;
}
.payment .example-section .example-list > li .arrow-area {
  text-align: center;
  margin-block: 10px;
}
.payment .example-section .example-list > li .arrow-area img {
  width: 20px;
  rotate: 90deg;
}
.payment .example-section .example-list > li .price-after {
  font-weight: bold;
  text-align: center;
  font-size: 16px;
}
.payment .example-section .example-list > li .price-after .big {
  font-size: 34px;
  line-height: 1.2;
}
.payment .call-section .calls-block-section {
  margin-top: 0;
}
.payment .other-info-section {
  padding-block: 0;
}
@media only screen and (max-width: 767px) {
  html {
    font-size: 14px;
  }
  body {
    position: relative;
    -webkit-appearance: none;
    -webkit-text-size-adjust: 100%;
  }
  input,
  select,
  textarea {
    font-size: 16px !important;
  }
  #wrapper {
    min-width: 320px;
  }
  .inner-block {
    padding-left: 20px;
    padding-right: 20px;
  }
  .pc {
    display: none !important;
  }
  .c-header > .inner-block {
    padding-inline: 0;
  }
  .c-header .top-area {
    padding-left: 15px;
    position: relative;
    z-index: 999;
    -webkit-transition: -webkit-box-shadow 0.3s ease-in-out;
    transition: -webkit-box-shadow 0.3s ease-in-out;
    transition: box-shadow 0.3s ease-in-out;
    transition: box-shadow 0.3s ease-in-out, -webkit-box-shadow 0.3s ease-in-out;
  }
  .c-header .top-area .logo-area {
    padding-block: 13px;
  }
  .c-header .top-area .logo-area .logo {
    width: 202px;
  }
  .c-header .bottom-area {
    max-height: calc(var(--vh, 1vh) * 100);
    height: 100%;
  }
  .c-header .bottom-area .inner-block {
    height: 100%;
  }
  .c-footer {
    padding-block: 40px;
  }
  .c-footer .contents-wrap {
    gap: 0;
  }
  .c-footer .contents-wrap .logo-area {
    gap: 15px;
  }
  .c-footer .contents-wrap .logo-area .logo {
    max-width: 240px;
  }
  .c-footer .contents-wrap .logo-area .txt {
    font-size: 11px;
  }
  .c-footer .contents-wrap .link-list-area {
    display: none;
    width: 0;
    height: 0;
  }
  .c-footer .contents-wrap .copyright-area {
    margin-top: 30px;
    padding-top: 20px;
    border-top: 1px solid #999999;
  }
  .c-footer .contents-wrap .copyright-area .copyright {
    font-size: 10px;
  }
  #pagetop {
    right: 0;
  }
  #pagetop > a {
    width: 40px;
    height: 40px;
    border-radius: 10px 0 0 0;
  }
  #pagetop > a::after {
    width: 15px;
  }
  .c-ttl01 {
    margin-bottom: 30px;
    font-size: 30px;
    line-height: 1.3333333333;
  }
  .c-ttl01.fs-s {
    font-size: 20px;
    line-height: 2;
  }
  .c-ttl01 .small {
    font-size: 20px;
    line-height: 2;
  }
  .c-ttl02:not(:first-child) {
    margin-top: 40px;
  }
  .c-ttl02 {
    margin-bottom: 20px;
    font-size: 24px;
  }
  .c-num-ttl {
    font-size: clamp(16px, 4.8128342246vw, 18px);
    line-height: 1.3333333333;
    gap: 10px;
  }
  .c-num-ttl > .num {
    font-size: 20px;
    width: 2em;
    height: 2em;
  }
  .c-ttl03 {
    margin: 30px 0 20px;
    padding-bottom: 5px;
    font-size: 20px;
  }
  .c-ttl04 {
    margin-bottom: 20px;
    font-size: 24px;
  }
  .list-ttl {
    font-size: 18px;
  }
  .c-btn {
    padding-block: 22px;
  }
  .c-btn.txt-center.no-icon:not(.no-arrow) .inn-txt {
    padding-left: 16px;
  }
  .c-btn .inn-txt::after {
    width: 9px;
  }
  .c-img-btn {
    padding-right: 12px;
  }
  .c-img-btn > img {
    max-height: 75px;
  }
  .c-img-btn .inn-txt {
    padding-left: 24px;
    padding-block: 20px;
    font-size: clamp(20px, 6.4171122995vw, 24px);
  }
  .c-img-btn .inn-txt::after {
    width: 9px;
  }
  .c-section {
    padding-block: 50px;
  }
  .c-mv-section .main-wrap > .inner-block {
    background-size: clamp(214px, 50%, 300px) auto, clamp(502px, 91.1458333333vw, 700px) auto;
    background-position: calc(100% + 10px) calc(100% + 26px), calc(0px - 12.777053455vw) calc(100% + 53px);
  }
  .c-mv-section .contents-wrap {
    padding-block: 30px 20px;
    grid-template-columns: 100%;
    grid-template-areas: "balloon" "main" "numones" "price" "note";
  }
  .c-mv-section .contents-wrap .balloon-area > .note {
    font-size: 10px;
    padding-right: 10px;
  }
  .c-mv-section .contents-wrap .main-txt-area {
    margin-top: 10px;
    gap: 13px;
  }
  .c-mv-section .contents-wrap .main-txt-area .big-txt {
    font-size: clamp(24px, 10.1604278075vw, 38px);
  }
  .c-mv-section .contents-wrap .main-txt-area .big-txt > .cross {
    font-size: clamp(24px, 9.6256684492vw, 36px);
  }
  .c-mv-section .contents-wrap .main-txt-area .small-txt {
    font-size: 18px;
  }
  .c-mv-section .contents-wrap .numberones-area {
    margin-block: 20px 18px;
  }
  .c-mv-section .contents-wrap .numberones-area img {
    max-width: clamp(450px, 77.5384615385vw, 504px);
  }
  .c-mv-section .contents-wrap .c-note-block {
    margin-top: 140px;
    padding-block: 12px;
    padding-inline: 8px;
  }
  .c-mv-section .contents-wrap .price-area {
    justify-self: center;
  }
  .c-mv-section .contents-wrap .price-area img {
    max-width: 249px;
  }
  .c-mv-section .note-text-wrap .txt {
    font-size: 10px;
    line-height: 1.4;
  }
  .c-mv-section.c-cta02 .main-wrap .contents-wrap {
    padding: 40px 0;
    grid-template-areas: "balloon" "main" "numones";
  }
  .c-note-block {
    padding: 20px;
  }
  .c-note-block > .note-txt {
    font-size: 12px;
    line-height: 1.6666666667;
  }
  .c-note-block > .note-txt.ttl {
    font-size: 16px;
  }
  .c-note-block > .note-txt.desc {
    text-align: left;
    font-size: 12px;
  }
  .c-calls-block.js--acc-wrap.acc-on-sp.bg-pink .ttl-area {
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    -webkit-transition-property: color, background;
    transition-property: color, background;
  }
  .c-calls-block.js--acc-wrap.acc-on-sp.bg-pink .ttl-area:focus-visible {
    background: #FFFFFF;
    color: #ee5353;
  }
  .c-calls-block.js--acc-wrap .ttl-area {
    padding-right: 30px;
  }
  .c-calls-block.js--acc-wrap .ttl-area .ttl {
    text-align: left;
  }
  .c-calls-block.js--acc-wrap .ttl-area .ttl::before {
    position: absolute;
    content: "";
    -webkit-mask: url("../img/common/ico-arrow.svg") no-repeat center/contain;
            mask: url("../img/common/ico-arrow.svg") no-repeat center/contain;
    background-color: currentColor;
    width: 12px;
    height: auto;
    aspect-ratio: 1/1;
    max-height: 20px;
    top: 0;
    bottom: 0;
    right: 15px;
    margin: auto;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    -webkit-transition-property: background-color, rotate;
    transition-property: background-color, rotate;
  }
  .c-calls-block:not(.js--acc-wrap) .ttl-area {
    padding-inline: clamp(8px, 2.6737967914vw, 10px);
  }
  .c-calls-block:not(.js--acc-wrap) .ttl-area .ttl {
    line-height: 1.875;
  }
  .c-calls-block .ttl-area .ttl {
    font-size: clamp(12px, 4.2780748663vw, 16px);
    line-height: 1.375;
  }
  .c-calls-block .ttl-area .ttl .small {
    font-size: clamp(10px, 3.743315508vw, 14px);
  }
  .c-calls-block .content-area {
    padding-block: 20px 30px;
  }
  .c-calls-block .content-area .call-area .call-ttl {
    font-size: clamp(12px, 4.8128342246vw, 18px);
    gap: 4px;
  }
  .c-calls-block .content-area .call-area .call-ttl .small {
    font-size: clamp(10px, 3.743315508vw, 14px);
  }
  .c-calls-block .content-area .c-btns-wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .c-calls-block .content-area .c-btns-wrap > li > .c-btn .inn-txt::before {
    width: 24px;
    height: 24px;
  }
  .c-calls-block .content-area .c-list01 {
    margin-top: 20px;
  }
  .c-calls-block .content-area .c-list01 li {
    font-size: 12px;
  }
  .c-cta-section {
    padding-block: 50px 40px;
  }
  .c-cta-section .ttl {
    font-size: clamp(16px, 5.3475935829vw, 20px);
  }
  .c-cta-section .ttl .c-accent-txt {
    font-size: clamp(18px, 8.0213903743vw, 30px);
  }
  .c-cta-section .ttl .c-accent-txt .big {
    font-size: clamp(20px, 10.6951871658vw, 40px);
  }
  .c-cta-section .c-btns-wrap .c-btn.clr-brown {
    font-size: 14px;
    padding-inline: 10px 20px;
  }
  .c-cta-section .c-btns-wrap .c-btn.clr-brown .inn-txt {
    padding-left: 0px;
    padding-right: 20px;
  }
  .c-cta-section .call-area {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    padding-top: 20px;
  }
  .c-cta-section .call-area > .txt {
    padding-block: 3px;
    font-size: 16px;
  }
  .c-cta-section .call-area .c-freedial .number {
    font-size: clamp(20px, 10.6951871658vw, 40px);
  }
  .c-rec-column-section .c-column-card-list {
    padding-inline: clamp(16px, 7.2192513369vw, 27px);
  }
  .c-rec-column-section .c-btns-wrap {
    margin-top: 20px;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .c-three-points-top-section + .c-three-points-section {
    padding-top: 30px;
  }
  .c-three-points-top-section {
    padding-top: 50px;
    margin-bottom: 140px;
    height: clamp(150px, 40.1069518717vw, 380px);
    position: relative;
  }
  .c-three-points-top-section > .inner-block {
    position: absolute;
    bottom: -140px;
    left: 0;
    right: 0;
    margin: auto;
  }
  .c-three-points-top-section .contents-wrap {
    padding: 30px clamp(20px, 8.0213903743vw, 30px);
  }
  .c-three-points-top-section .contents-wrap > .ttl img {
    max-width: 200px;
  }
  .c-three-points-top-section .contents-wrap > .ttl .txt {
    font-size: 30px;
  }
  .c-three-points-top-section .contents-wrap > .ttl .txt .big {
    font-size: 50px;
  }
  .c-three-points-top-section .contents-wrap .desc {
    margin-top: 12px;
    font-size: clamp(12px, 3.2vw, 18px);
  }
  .c-plans-section {
    padding-top: 40px;
  }
  .c-plans-section .c-ttl01 {
    margin-bottom: 30px;
  }
  .c-movie-section .contents-wrap {
    grid-template-columns: 100%;
    max-width: 500px;
    margin-inline: auto;
  }
  .c-movie-section .contents-wrap .txt + .txt {
    margin-top: 1.5em;
  }
  .c-movie-section.interview-movie .contents-wrap {
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  }
  .c-movie-section.interview-movie .contents-wrap .ttl-area {
    margin-block: 16px;
  }
  .calls-block-section {
    margin-top: 30px;
  }
  .calls-block-section .inner-block {
    padding: 0;
  }
  .c-plan-about-section > .img-area {
    margin-bottom: 25px;
  }
  .c-plan-about-section > .img-area img {
    max-height: 180px;
  }
  .c-plan-about-section > .desc {
    margin-bottom: 30px;
    font-size: 18px;
    line-height: 1.3333333333;
  }
  .c-plan-about-section .choose-list-area {
    padding-block: 24px;
  }
  .c-plan-about-section .choose-list-area .choose-ttl {
    font-size: 18px;
  }
  .c-plan-detail-section .details-area {
    margin-top: 30px;
    padding-block: 30px;
  }
  .c-plan-detail-section .detail-each.plan .detail-card.row {
    grid-template-columns: 100%;
    max-width: 500px;
    margin-inline: auto;
  }
  .c-plan-detail-section .detail-each.plan .detail-card .desc {
    font-size: 14px;
  }
  .c-plan-detail-section .detail-each.plan .detail-card .c-plan-tag-list {
    grid-area: 5px;
  }
  .c-plan-detail-section .detail-each.plan .detail-card .c-plan-tag-list .c-plan-tag {
    font-size: 12px;
  }
  .c-plan-detail-section .detail-each.plan .detail-card .c-price-txt .price-txt-wrap .price-wrap .price {
    font-size: clamp(30px, 10.6951871658vw, 40px);
  }
  .c-plan-detail-section .detail-each.plan .detail-card .c-price-txt .price-txt-wrap .price-wrap .yen {
    font-size: clamp(16px, 5.3475935829vw, 20px);
  }
  .c-plan-detail-section .detail-each.plan .detail-card .c-price-txt .price-txt-wrap .price-wrap .tax {
    font-size: clamp(16px, 5.3475935829vw, 20px);
  }
  .white-box + .white-box {
    margin-top: 30px;
  }
  .c-plan-call-section .c-ttl01 {
    font-size: 24px;
  }
  .c-plan-call-section .call-area {
    font-size: clamp(12px, 3.7333333333vw, 14px);
  }
  .c-plan-call-section .c-note-block .note-txt.desc {
    text-align: center;
  }
  .c-summary-txt {
    margin-bottom: 30px;
  }
  .c-balloon-txt {
    padding-bottom: 13px;
  }
  .c-balloon-txt::after {
    height: 13px;
  }
  .c-balloon-txt .inn-txt {
    font-size: clamp(12px, 4.2780748663vw, 16px);
  }
  .c-bg-flower::before, .c-bg-flower::after {
    background-size: min(100% + 190px, 527px) auto;
    background-position: -190px calc(100% + 202px);
  }
  .c-freedial {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .c-freedial > .icon {
    height: clamp(20px, 10.9625668449vw, 41px);
    width: clamp(20px, 10.9625668449vw, 41px);
  }
  .c-freedial > .number {
    font-size: clamp(20px, 9.3582887701vw, 35px);
  }
  .c-btns-wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .c-btns-wrap.apply {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .c-tag {
    padding: 10px 12px;
    font-size: 12px;
  }
  .anchor-list .c-tag {
    padding-right: 30px;
  }
  .anchor-list .c-tag::before {
    width: 6px;
    height: 12px;
    right: 15px;
  }
  .c-lead-box .c-ttl01 {
    margin-bottom: 20px;
  }
  .c-lead-box .lead-txt {
    margin-bottom: 20px;
  }
  .c-lead-box .c-tag-list {
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .c-pagination {
    gap: 5px;
    margin-top: 50px;
  }
  .c-pagination > a.prev, .c-pagination > span:not(.dots).prev {
    margin-right: 10px;
  }
  .c-pagination > a.next, .c-pagination > span:not(.dots).next {
    margin-left: 10px;
  }
  .c-pagination .dots {
    width: 16px;
    top: -2px;
    left: -2px;
    font-size: 20px;
  }
  .c-points-card {
    padding-top: 35px;
  }
  .c-points-card > .num-area {
    padding-inline: 18px;
  }
  .c-points-card > .num-area .point {
    font-size: 12px;
  }
  .c-points-card > .num-area .num {
    font-size: 24px;
    line-height: 1.25;
  }
  .c-points-card > .contents-wrap {
    padding: 20px;
    padding-top: 55px;
  }
  .c-points-card > .contents-wrap > .ttl {
    font-size: 16px;
    line-height: 1.875;
  }
  .c-points-card > .contents-wrap > .img-area {
    max-height: 120px;
  }
  .c-points-card > .contents-wrap > .desc {
    font-size: 13px;
  }
  .c-points-card.row {
    padding: 16px 20px;
  }
  .usp .c-points-card > .contents-wrap > .img-area.no-limit {
    max-height: 300px;
  }
  .usp .c-points-card > .contents-wrap .notes {
    font-size: 10px;
  }
  .c-plans-card {
    width: 315px;
  }
  .c-plans-card .ttl-area {
    padding: 10px;
    display: grid;
    grid-template-columns: 1fr clamp(30%, 32.0855614973vw, 120px);
    gap: 8px;
  }
  .c-plans-card .ttl-area .ttl .big {
    margin-block: 5px;
    font-size: 24px;
    line-height: 1.25;
  }
  .c-plans-card .ttl-area .ttl .small {
    font-size: 12px;
    line-height: 1.3333333333;
  }
  .c-plans-card .contents-wrap {
    padding-inline: clamp(8px, 4.0106951872vw, 15px);
  }
  .c-plans-card .contents-wrap .desc {
    display: none;
  }
  .c-plans-card .contents-wrap .price-area {
    margin-bottom: 10px;
  }
  .c-plans-card .contents-wrap .price-area .price-txt-wrap {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .c-plans-card .contents-wrap .price-area .note-txt-area {
    display: none;
  }
  .c-plans-card .contents-wrap .img-area {
    display: none;
  }
  .c-plans-card .contents-wrap .tag-list-area {
    display: none;
  }
  .c-plans-card .contents-wrap .btn-area .c-btn {
    padding-block: 14px;
    padding-inline: 12px;
  }
  .c-plans-card .contents-wrap .btn-area .c-btn .inn-txt {
    font-size: 16px;
  }
  .c-discount-txt {
    font-size: clamp(12px, 4.2780748663vw, 16px);
    margin-bottom: 10px;
  }
  .c-discount-txt .big {
    font-size: clamp(18px, 6.4171122995vw, 24px);
  }
  .c-map-area > svg {
    max-height: 500px;
  }
  .c-slider-parts.splide .splide__track {
    padding-block: 10px;
  }
  .c-slider-parts.splide .splide__arrow {
    padding: 8px;
    border-radius: 0 10px 10px 0;
    width: clamp(20px, 10.6951871658vw, 40px);
    height: 60px;
  }
  .c-slider-parts.splide .splide__arrow .icon {
    width: 8px;
    height: 12px;
  }
  .c-price-txt .price-txt-wrap .price-before {
    font-size: 10px;
    line-height: 1.5;
  }
  .c-price-txt .price-txt-wrap .price-before .price {
    font-size: clamp(12px, 4.2780748663vw, 16px);
    line-height: 0.9375;
  }
  .c-price-txt .price-txt-wrap .price-before .price .yen {
    font-size: 12px;
    line-height: 1.25;
  }
  .c-price-txt .price-txt-wrap .c-price-after .price-wrap {
    margin-right: clamp(0px, 2.6737967914vw, 10px);
  }
  .c-price-txt .price-txt-wrap .c-price-after .price-wrap .price {
    font-size: clamp(30px, 13.3689839572vw, 50px);
  }
  .c-price-txt .price-txt-wrap .c-price-after .price-wrap .price .small {
    font-size: clamp(30px, 10.6951871658vw, 40px);
  }
  .c-price-txt .price-txt-wrap .c-price-after .price-wrap .yen {
    font-size: clamp(16px, 6.4171122995vw, 24px);
  }
  .c-price-txt .price-txt-wrap .c-price-after .price-wrap .tax {
    font-size: 10px;
  }
  .c-price-after .price-wrap {
    margin-right: clamp(0px, 2.6737967914vw, 10px);
  }
  .c-price-after .price-wrap .price {
    font-size: clamp(30px, 13.3689839572vw, 50px);
  }
  .c-price-after .price-wrap .price .small {
    font-size: clamp(30px, 10.6951871658vw, 40px);
  }
  .c-price-after .price-wrap .yen {
    font-size: clamp(16px, 6.4171122995vw, 24px);
  }
  .c-price-after .price-wrap .tax {
    font-size: 10px;
  }
  .c-plan-price-box > .ttl {
    font-size: clamp(12px, 3.7333333333vw, 14px);
  }
  .c-plan-price-box .price-box-wrap {
    padding-inline: clamp(8px, 4.2666666667vw, 16px);
  }
  .c-plan-price-box .price-box-wrap .c-price-txt .discount-txt {
    font-size: 14px;
  }
  .c-flow-chart {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
  .c-flow-chart > li .flow-steps > li::after {
    left: calc(100% + 20px);
  }
  .c-flow-chart02 {
    gap: 20px;
  }
  .c-flow-chart02 > li {
    font-size: 12px;
    padding-inline: 8px;
  }
  .c-flow-chart02 > li:not(:last-child)::after {
    left: calc(100% + 8px);
  }
  .js--scrollable > .c-compare-company-tbl {
    min-width: 620px;
  }
  .js--scrollable > .c-compare-plan-tbl {
    min-width: 720px;
  }
  .js--scrollable > .c-flow-chart {
    min-width: 590px;
  }
  .js--scrollable > .c-plan-discount-tbl {
    min-width: 727px;
  }
  .c-plan-cards-mini > li > a {
    padding: 10px 25px 10px 10px;
  }
  .c-plan-cards-mini > li > a::after, .c-plan-cards-mini > li > a::before {
    right: 7px;
    width: 10px;
    top: -6px;
  }
  .c-plan-cards-mini > li > a::before {
    top: 6px;
  }
  .c-plan-cards-mini > li .left .img {
    width: 60px;
    height: 60px;
  }
  .c-plan-cards-mini > li .left .ttl {
    font-size: 18px;
  }
  .c-plan-cards-mini > li .right {
    width: 174px;
  }
  .c-plan-cards-mini > li .right .price {
    margin-top: 8px;
  }
  .c-plan-cards-mini > li .right .price > span:nth-child(2) {
    width: 78px;
  }
  .c-plan-cards-mini > li .right .price > span.num .pink {
    font-size: 32px;
  }
  .c-setplan-cards-mini {
    grid-template-columns: 100%;
    margin-inline: auto;
    max-width: 500px;
  }
  .c-setplan-cards-mini > li > a {
    padding: 10px 8px;
    padding-right: 24px;
  }
  .c-setplan-cards-mini > li > a::after {
    width: 10px;
    right: 8px;
  }
  .c-setplan-cards-mini > li > a > .right > .ttl {
    font-size: clamp(14px, 4.2666666667vw, 16px);
  }
  .c-setplan-cards-mini > li > a > .right .price {
    font-size: 14px;
  }
  .c-setplan-cards-mini > li > a > .right .price .big {
    font-size: 24px;
  }
  .c-flow-list {
    max-width: 500px;
    margin-inline: auto;
  }
  .c-flow-list > li > .contents-wrap {
    grid-template-columns: 1fr min(35%, 100px);
    -webkit-column-gap: clamp(8px, 5.3475935829vw, 20px);
       -moz-column-gap: clamp(8px, 5.3475935829vw, 20px);
            column-gap: clamp(8px, 5.3475935829vw, 20px);
    padding: 20px;
  }
  .c-flow-list > li > .contents-wrap > .desc {
    font-size: 13px;
    line-height: 1.8;
  }
  .c-points-card-list {
    grid-template-columns: 100%;
  }
  .c-points-card-list.two-columns {
    grid-template-columns: 100%;
  }
  .c-services-btn-list {
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 20px 30px;
  }
  .c-simple-list > li::after {
    top: 13px;
  }
  .c-check-list > li::after {
    top: 13px;
  }
  .c-compare-company-tbl {
    font-size: 16px;
  }
  .c-compare-company-tbl thead th:nth-child(2) {
    width: 240px;
  }
  .c-compare-company-tbl thead th:first-child {
    width: calc((100% - 240px) / 2);
  }
  .c-compare-company-tbl thead th:last-child {
    width: calc((100% - 240px) / 2);
  }
  .c-compare-company-tbl thead th.h-small {
    padding-top: 10px;
  }
  .c-compare-company-tbl tbody tr td.out .inn-txt {
    gap: 5px;
  }
  .c-compare-company-tbl tbody tr td img {
    width: 20px;
    height: 20px;
  }
  .c-compare-plan-tbl thead td {
    width: 120px;
  }
  .c-compare-plan-tbl thead th {
    font-size: 24px;
    padding: 12px;
    width: calc((100% - 120px) / 2);
  }
  .c-compare-plan-tbl thead th.h-small {
    padding-top: 10px;
  }
  .c-compare-plan-tbl thead th.h-small > span .inn-txt {
    padding-inline: 50px;
  }
  .c-compare-plan-tbl thead th.h-small > span .link-txt {
    font-size: 14px;
    padding-right: 16px;
  }
  .c-compare-plan-tbl tbody th {
    font-size: 16px;
  }
  .c-compare-plan-tbl tbody td {
    font-size: 14px;
  }
  .c-compare-plan-tbl tbody td .img-txt-wrap img {
    max-width: 150px;
  }
  .c-plan-discount-tbl tbody td .c-price-after .price-wrap {
    margin-right: 0;
  }
  .home .calls-block-section {
    margin-top: 0;
  }
  .home .note-block-section {
    margin-top: 10px;
  }
  .home > .calls-block-section {
    margin-top: 30px;
  }
  .home .c-plans-section {
    padding-top: 40px;
    padding-bottom: 20px;
  }
  .home .search-section .inner-block > .c-btns-wrap {
    padding-inline: 20px;
  }
  .home .search-section .c-map-area {
    margin-block: 30px 48px;
  }
  .home .info-section .c-ttl01 {
    margin-bottom: 20px;
  }
  .home .info-section .c-tag {
    min-width: 70px;
  }
  .hallcat .c-breadcrumbs + .c-ttl01 {
    margin-top: 25px;
  }
  .hallcat .c-ttl01 {
    font-size: 28px;
    margin: 0 auto 25px;
  }
  .hallcat .area-list-ttl {
    font-size: 20px;
  }
  .hallcat .area-list > li + li {
    margin-top: 35px;
  }
  .hallcat .area-inner-list {
    border-radius: 10px;
    gap: 15px;
    padding: 20px;
    margin-top: 15px;
  }
  .hallcat .lead-box {
    padding: 30px 20px;
    margin: 30px auto 40px;
  }
  .hallcat .c-map-area {
    margin: 30px 0 40px;
    padding: 0 20px;
  }
  .hallcat .c-map-area > svg {
    max-width: 500px;
  }
  .hallcat .map-wrap {
    margin-bottom: 30px;
  }
  .hallcat .map-wrap .refs {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .hallcat.designated-city .calls-block-section, .hallcat.detail .calls-block-section {
    margin-bottom: 40px;
  }
  .hallcat .area-label {
    padding: 0 20px;
  }
  .hallcat .area-label::after {
    height: 5px;
  }
  .hallcat .area-label .inner-block {
    padding: 10px 0;
  }
  .hallcat .hall-list > li + li {
    margin-top: 30px;
  }
  .hallcat .hall-list .hall-card-ttl {
    font-size: 18px;
    margin-bottom: 20px;
    padding-bottom: 10px;
  }
  .hallcat.detail .hall-ttl {
    margin-top: 30px;
    font-size: 18px;
  }
  .hallcat.detail .hall-thumbs .splide .splide__track {
    padding: 20px 0;
  }
  .hallcat.detail .hall-thumbs .splide.thumb-slider .splide__slide {
    width: 100px;
  }
  .hallcat.detail .panflet .c-btns-wrap {
    gap: 20px;
    margin: 30px 0;
  }
  .hallcat.detail .bot-cta {
    margin-top: 30px;
  }
  .hallcat.detail .bot-cta .top {
    gap: 20px;
    padding-bottom: 20px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .hallcat.detail .bot-cta .top .tel {
    margin-top: 0;
    width: 100%;
  }
  .hallcat.detail .bot-cta .top .tel .txt {
    font-size: 16px;
    padding: 7px 8px;
  }
  .hallcat.detail .bot-cta .top .tel .call-num {
    text-align: center;
  }
  .hallcat.detail .bot-cta .top .tel .number {
    font-size: clamp(20px, 9.3582887701vw, 35px);
  }
  .hallcat.detail .bot-cta .top .doc {
    width: 100%;
  }
  .hallcat.detail .bot-cta .top .doc .c-lines-txt {
    padding: 0 12px;
  }
  .hallcat.detail .bot-cta .top .doc .c-lines-txt::before {
    left: -4px;
  }
  .hallcat.detail .bot-cta .top .doc .c-lines-txt::after {
    right: -4px;
  }
  .hallcat.detail .bot-cta .bot {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    padding-top: 20px;
  }
  .hallcat.detail .lead-box {
    margin-bottom: 30px;
  }
  .column .ttl-wrap {
    padding-block: 20px;
    margin-bottom: 20px;
  }
  .column .ttl-wrap .main-ttl {
    font-size: 18px;
  }
  .column .article-content h2 {
    margin-top: 35px;
    font-size: 20px;
  }
  .column .article-content h3 {
    margin-top: 35px;
    font-size: 18px;
  }
  .column .article-content h3::after {
    top: 12px;
  }
  .column .article-content ul, .column .article-content ol {
    margin-top: 20px;
  }
  .column .article-content ul li + li, .column .article-content ol li + li {
    margin-top: 10px;
  }
  .column .article-content table {
    margin-top: 20px;
  }
  .column .c-calls-block {
    margin-top: 40px;
  }
  .faq-section .faq-list .question {
    font-size: 17px;
    margin-bottom: 10px;
    padding-left: 35px;
  }
  .faq-section .faq-list .question::before {
    font-size: 26px;
    top: 0;
  }
  .faq-section .additional-box {
    margin-top: 15px;
    padding: 15px;
  }
  .faq-section .additional-box .ttl {
    font-size: 16px;
    margin-bottom: 5px;
  }
  .faq-section .additional-box .ttl:not(:first-child) {
    margin-top: 15px;
  }
  .faq-section .additional-box .txt {
    line-height: 160%;
  }
  .faq-section .additional-box .list {
    line-height: 160%;
  }
  .contact-section .c-contact-step {
    margin-top: 30px;
  }
  .contact-section .c-contact-step + .c-ttl01 {
    margin-top: 30px;
  }
  .contact-section .c-summary-txt + .c-simple-list {
    margin-bottom: 30px;
  }
  .contact-section .c-contact-step {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    width: 100%;
    gap: 10px;
    margin-top: 30px;
  }
  .contact-section .c-contact-step li {
    width: 100%;
    font-size: 16px;
    padding: 10px;
  }
  .contact-section .q-wrap {
    padding-block: 15px;
  }
  .contact-section .contact-label {
    font-size: 16px;
  }
  .contact-section .contact-label .small {
    font-size: 14px;
  }
  .contact-section input[type=text],
  .contact-section input[type=tel],
  .contact-section input[type=email],
  .contact-section input[type=date],
  .contact-section textarea,
  .contact-section select {
    padding: 16px 10px;
    min-height: 50px;
  }
  .contact-section .radio-group, .contact-section .checkbox-group {
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .contact-section .radio-group.sp-margin, .contact-section .checkbox-group.sp-margin {
    margin: 25px 0;
  }
  .contact-section .radio-group .wpcf7-radio, .contact-section .radio-group .wpcf7-checkbox, .contact-section .checkbox-group .wpcf7-radio, .contact-section .checkbox-group .wpcf7-checkbox {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    gap: 15px;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .contact-section .column-wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 10px;
  }
  .contact-section .column-wrap .input-area {
    width: 100%;
  }
  .contact-section .btn-wrap {
    gap: 20px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .contact-section .contact-btn {
    width: 100%;
  }
  .reserve-section .c-btn.icon-back .inn-txt::before {
    width: 9px;
    height: 9px;
  }
  .plan .plan-section .plan-list-area .plan-list {
    gap: 20px;
  }
  .plan-detail .setplan-list {
    margin-top: 30px;
  }
  .plan-detail .flow-section .c-flow-days-list .top-desc-txt {
    margin-bottom: 30px;
  }
  .plan-detail .other-plan-section .note-txt-area {
    font-size: 14px;
  }
  .plan-detail-shinzokuso .flow-section .c-flow-chart,
  .plan-detail-ichiniciso .flow-section .c-flow-chart,
  .plan-detail-ippanso .flow-section .c-flow-chart,
  .plan-detail-jitakuso .flow-section .c-flow-chart,
  .plan-detail-kazokuso .flow-section .c-flow-chart {
    min-width: 750px;
  }
  .plan-detail-kaiyou.kaiyou-detail .mv-section .c-ttl01 + .anchor-list {
    margin-top: 30px;
  }
  .plan-detail-kaiyou.kaiyou-detail .contents-section .c-simple-list {
    margin-top: 20px;
    row-gap: 5px;
  }
  .plan-detail-kaiyou.kaiyou-detail .area-section .area-list > li .c-kaiyou-price-tbl tbody tr td:last-child {
    min-width: 100px;
  }
  .plan-detail-eidai .cta-eidai {
    padding-bottom: 20px;
  }
  .plan-detail-eidai .cta-eidai .c-ttl01 {
    margin-bottom: 8px;
  }
  .plan-detail-eidai .c-plan-about-section .desc .c-accent-txt {
    font-size: 30px;
  }
  .plan-detail-eidai .c-map-area iframe {
    min-height: 250px;
  }
  .plan-detail-incence .mv-section .c-note-block .c-underline-dot {
    font-size: 20px;
  }
  .plan-detail-incence .mv-section .c-note-block .c-underline-dot .big {
    font-size: 30px;
  }
  .plan-detail-ihin .onestop-section .calc-area .circle .inn-txt {
    font-size: clamp(14px, 2.3468057366vw, 18px);
  }
  .plan-detail-ihin .onestop-section .calc-area .circle .inn-txt .small {
    font-size: clamp(10px, 1.8252933507vw, 14px);
  }
  .plan-detail-ihin .onestop-section .calc-area .icon {
    font-size: clamp(30px, 5.2151238592vw, 40px);
  }
  .plan-detail-ihin .buy-section .c-points-card-list {
    grid-template-columns: repeat(2, 1fr);
  }
  .plan-detail-ihin .choose-section .c-ttl01 {
    font-size: 24px;
  }
  .plan-detail-ihin .choose-section .c-plan-detail-section {
    margin-top: 30px;
  }
  .plan-detail-ihin .choose-section .details-area .detail-card.row .txt-area .ttl {
    font-size: 20px;
  }
  .plan-detail-ihin .choose-section .details-area .detail-card.row .txt-area .desc {
    font-size: 16px;
  }
  .far .c-mv-section {
    padding-top: 50px;
  }
  .far .c-mv-section .ttl-area .balloon {
    padding: 5px 10px;
    font-size: 24px;
  }
  .far .c-mv-section .ttl-area .balloon::after, .far .c-mv-section .ttl-area .balloon::before {
    width: 24px;
    height: 16px;
  }
  .far .c-mv-section .ttl-area .balloon::before {
    width: 30px;
    height: 19px;
  }
  .far .c-mv-section .ttl-area .ttl {
    line-height: 1.8;
    font-size: 32px;
    margin-top: 10px;
  }
  .far .c-mv-section .ttl-area .ttl .large {
    font-size: 40px;
  }
  .far .c-mv-section .recommend {
    margin-top: 20px;
  }
  .far .c-mv-section .recommend .txt {
    font-size: 22px;
  }
  .far .c-mv-section .recommend .wrap {
    width: calc(100% - 40px);
    margin-top: 40px;
    max-width: 360px;
    left: 20px;
    padding-right: 0;
  }
  .far .c-mv-section .recommend .box {
    padding: 20px 10px;
    font-size: 16px;
  }
  .far .c-mv-section .recommend .img {
    width: 240px;
    left: -116px;
    -webkit-transform: scale(-1, 1);
            transform: scale(-1, 1);
  }
  .far .c-mv-section .recommend .box-list > li {
    padding-left: 20px;
  }
  .far .c-mv-section .recommend .box-list > li::after {
    width: 15px;
    height: 7px;
    top: 9px;
  }
  .welfare .list {
    margin-top: 20px;
  }
  .welfare .list > li {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 5px;
  }
  .welfare .list > li .head {
    font-size: 12px;
    padding: 1px 10px 3px;
  }
  .welfare .list > li .txt {
    width: 100%;
  }
  .welfare .lead {
    font-size: 18px;
  }
  .welfare .flows {
    margin-left: -10px;
  }
  .welfare .flows:after {
    left: 29px;
  }
  .welfare .flows .head > span {
    padding: 1px 5px 2px;
    width: 60px;
  }
  .welfare .flows .head::before {
    left: 23px;
    width: 14px;
    height: 8px;
  }
  .welfare .flows .head::after {
    width: calc(100% - 60px);
  }
  .welfare .item {
    padding-left: 40px;
  }
  .welfare .item .imgs {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
  }
  .welfare .item .imgs .img > img {
    width: 100%;
    height: auto;
    aspect-ratio: 7/5;
  }
  .welfare .item .imgs .img span {
    font-size: 12px;
  }
  .welfare .flows-inner > li {
    margin-left: 5px;
  }
  .welfare .summary {
    font-size: min(22px, 5.8666666667vw);
  }
  .welfare .step-list > li > h3 {
    font-size: 20px;
  }
  .welfare .step-list > li > h3 .tag {
    font-size: 14px;
    top: -1px;
  }
  .hurry .lead {
    margin-top: 40px;
    font-size: clamp(16px, 4.8128342246vw, 18px);
  }
  .hurry .how-to-call > li + li {
    margin-top: 40px;
  }
  .hurry .how-to-call > li + li::before {
    top: -30px;
  }
  .hurry .how-to-call .c-simple-list {
    padding: clamp(10px, 5.3475935829vw, 20px);
  }
  .hurry .flow-cont {
    padding: clamp(5px, 2.6737967914vw, 10px);
  }
  .hurry .flow-cont .bg .line::before, .hurry .flow-cont .bg .line::after {
    top: 4em;
    height: calc(100% - 4em - 20px);
  }
  .hurry .flow-cont > div {
    font-size: clamp(14px, 4.2780748663vw, 16px);
  }
  .hurry .flow-cont > div:has(> div:nth-of-type(2)) div:nth-child(1n) {
    padding-right: 10px;
  }
  .hurry .flow-cont > div:has(> div:nth-of-type(2)) div:nth-child(2n) {
    padding-left: 10px;
  }
  .hurry .flow-cont > div + div {
    margin-top: 20px;
  }
  .hurry .flow-cont .cont > div .ttl {
    margin-bottom: clamp(5px, 2.6737967914vw, 10px);
    padding: clamp(2px, 1.3368983957vw, 5px) clamp(5px, 2.6737967914vw, 10px);
    font-size: clamp(14px, 4.2780748663vw, 16px);
  }
  .error-404 .contents-wrap {
    grid-template-columns: 100%;
    grid-template-areas: "ttl" "desc" "btn";
    justify-items: center;
    padding-block: 20px;
  }
  .error-404 .contents-wrap .ttl .small {
    font-size: clamp(40px, 13.3333333333vw, 50px);
  }
  .sitemap .sitemap-list, .sitemap .sitemap-inner-list {
    gap: 10px;
  }
  .sitemap .sitemap-list > li, .sitemap .sitemap-inner-list > li {
    width: calc(50% - 5px);
  }
  .sitemap .sitemap-list + .sitemap-list, .sitemap .sitemap-inner-list + .sitemap-list {
    margin-top: 30px;
  }
  .sitemap .sitemap-list.large > li, .sitemap .sitemap-inner-list.large > li {
    width: calc(50% - 5px);
  }
  .sitemap .sitemap-list.column > li, .sitemap .sitemap-inner-list.column > li {
    width: 100%;
    font-size: 10px;
  }
  .sitemap .sitemap-inner-list {
    margin-top: 10px;
    padding-left: 15px;
    padding-right: 15px;
  }
  .sitemap .pref-table > li + li {
    margin-top: 35px;
  }
  .sitemap .pref-table .pref {
    font-size: 16px;
  }
  .sitemap .pref-table .city {
    font-size: 14px;
  }
  .sitemap .pref-list {
    padding-left: 10px;
  }
  .sitemap .pref-inner-list {
    gap: 10px;
    padding-left: 10px;
  }
  .sitemap .pref-inner-list > li {
    width: calc(50% - 5px);
  }
  .support .c-mv-section .ttl-area .ttl {
    font-size: min(18px, 5.1428571429vw);
  }
  .support .c-mv-section .ttl-area .ttl .large {
    font-size: min(24px, 6.8571428571vw);
  }
  .support .c-mv-section .ttl-area .ttl .large > span::after {
    width: 4px;
    height: 4px;
    top: -2px;
  }
  .support .c-mv-section .txt {
    text-align: left;
  }
  .discount .mv-section .top-desc-txt {
    font-size: 20px;
  }
  .discount .mv-section .c-note-block .note-txt {
    font-size: 18px;
  }
  .discount .mv-section .c-note-block .note-txt .c-underline-dot {
    font-size: 24px;
  }
  .discount .mv-section .c-note-block .note-txt .c-underline-dot .big {
    font-size: 30px;
  }
  .discount .discount-section .white-box .top-desc-txt {
    font-size: 20px;
  }
  .discount .discount-section .white-box .top-desc-txt .big {
    font-size: 28px;
  }
  .discount .discount-section .white-box .btn-area {
    margin-block: 20px;
  }
  .discount .discount-section .white-box .btn-area .c-btn {
    padding-block: 16px;
  }
  .discount .discount-section .white-box > .desc {
    font-size: 16px;
  }
  .discount .discount-section .white-box .step-section {
    margin-top: 30px;
  }
  .discount .discount-section .white-box .step-section .c-points-card-list > li {
    -webkit-column-gap: 12px;
       -moz-column-gap: 12px;
            column-gap: 12px;
  }
  .discount .discount-section .white-box .step-section .c-points-card-list > li .num-area {
    padding-inline: clamp(8px, 4.8vw, 18px);
  }
  .discount .call-section .inner-block {
    padding-inline: 20px;
  }
  .payment .c-three-points-top-section .c-ttl01 {
    font-size: 24px;
  }
  .payment .payment-section .anchor-list {
    margin-top: 20px;
  }
  .payment .call-section .inner-block {
    padding-inline: 20px;
  }
}
@media only screen and (min-width: 768px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
  .inner-block {
    padding-left: 40px;
    padding-right: 40px;
    max-width: 1280px;
  }
  a,
  a::before,
  a::after,
  button,
  button::before,
  button::after {
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
  }
  .sp {
    display: none !important;
  }
  .c-header .top-area {
    padding-block: 10px 16px;
  }
  .c-header .bottom-area {
    border-top: 1px solid #D9D9D9;
    border-bottom: 1px solid #D9D9D9;
  }
  .c-header .bottom-area > .inner-block {
    padding-inline: 0;
  }
  .c-header .bottom-area .nav-list-area > .nav-list {
    max-width: 1240px;
    margin-inline: auto;
    padding-inline: clamp(0px, 1.0416666667vw, 20px);
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 2px;
  }
  .c-header .bottom-area .nav-list-area > .nav-list .c-btn {
    padding-inline: clamp(6px, 0.5208333333vw, 10px);
    font-size: clamp(10px, 1.25vw, 15px);
  }
  .c-header .bottom-area .nav-list-area > .nav-list .c-btn .inn-txt {
    padding-left: clamp(15px, 3.1578947368vw, 30px);
  }
  .c-header .bottom-area .nav-list-area > .nav-list .c-btn .inn-txt::before {
    width: clamp(10px, 2.1052631579vw, 20px);
  }
  .c-header .bottom-area .nav-list-area > .nav-list .has-list {
    position: relative;
    overflow: visible;
  }
  .c-header .bottom-area .nav-list-area > .nav-list .has-list:focus-within > .js--dropdown-cont {
    opacity: 1;
    pointer-events: initial;
    -webkit-user-select: initial;
       -moz-user-select: initial;
        -ms-user-select: initial;
            user-select: initial;
    -ms-touch-action: initial;
        touch-action: initial;
  }
  .c-header .bottom-area .nav-list-area > .nav-list .has-list.is-shown > ul {
    opacity: 1;
    pointer-events: initial;
    -webkit-user-select: initial;
       -moz-user-select: initial;
        -ms-user-select: initial;
            user-select: initial;
    -ms-touch-action: initial;
        touch-action: initial;
  }
  .c-header .bottom-area .nav-list-area > .nav-list .has-list > ul {
    position: absolute;
    z-index: 999;
    top: calc(100% + 3px);
    left: -150%;
    margin: auto;
    opacity: 0;
    pointer-events: none;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
    -ms-touch-action: none;
        touch-action: none;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(clamp(160px, 20vw, 208px), 1fr));
    max-width: 850px;
    width: 65vw;
    border-left: 1px solid #D9D9D9;
    -webkit-transition: opacity 0.3s ease-in-out;
    transition: opacity 0.3s ease-in-out;
  }
  .c-header .bottom-area .nav-list-area > .nav-list .has-list > ul.under-7 {
    max-width: 800px;
  }
  .c-header .bottom-area .nav-list-area > .nav-list .has-list > ul li {
    background: #FFFFFF;
    border-right: 1px solid #D9D9D9;
  }
  .c-header .bottom-area .nav-list-area > .nav-list .has-list > ul li a,
  .c-header .bottom-area .nav-list-area > .nav-list .has-list > ul li button {
    height: 100%;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: clamp(10px, 1.3333333333vw, 16px);
  }
  .c-header .bottom-area .nav-list-area > .nav-list .has-list > ul li a:focus-visible,
  .c-header .bottom-area .nav-list-area > .nav-list .has-list > ul li button:focus-visible {
    background: #F1F5F3;
    color: #5a4538;
    font-weight: 700;
  }
  .c-header .bottom-area .nav-list-area > .nav-list .has-list > ul li a:focus-visible .inn-txt::before,
  .c-header .bottom-area .nav-list-area > .nav-list .has-list > ul li button:focus-visible .inn-txt::before {
    background: #ff8d3b;
  }
  .c-ttl01.fs-m {
    font-size: 34px;
    line-height: 1.7647058824;
  }
  .c-calls-block .content-area .call-area .c-freedial .number {
    font-size: 50px;
  }
  .c-calls-block .content-area .c-btns-wrap > li > .c-btn {
    padding-inline: clamp(8px, 2vw, 20px);
  }
  .c-cta-section .c-btns-wrap {
    padding-inline: clamp(8px, 1.0416666667vw, 20px);
  }
  .c-cta-section .c-btns-wrap .note-txt {
    margin-top: 14px;
  }
  .c-cta-section .call-area {
    padding-inline: clamp(8px, 1.0416666667vw, 20px);
  }
  .c-three-points-top-section + .c-three-points-section {
    padding-top: 50px;
  }
  .c-plans-section .c-ttl01 {
    margin-bottom: 20px;
  }
  .c-mv-plan-section > .inner-block {
    padding-inline: clamp(16px, 2.7777777778vw, 40px);
  }
  .c-plan-about-section .c-ttl01 {
    margin-bottom: 35px;
  }
  .c-plan-detail-section .detail-each.plan .detail-card .c-price-txt .price-txt-wrap {
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .c-plan-detail-section .detail-each.plan .detail-card .c-price-txt .price-txt-wrap .price-wrap .price .small {
    font-size: clamp(40px, 5vw, 50px);
  }
  .c-btns-wrap > li > .c-btn {
    padding-inline: clamp(8px, 2vw, 20px);
  }
  .c-lead-box .lead-txt {
    text-align: center;
  }
  .c-points-card > .contents-wrap > .ttl {
    min-height: 3em;
  }
  .c-points-card > .contents-wrap > .btn-area {
    padding-inline: clamp(0px, 1.0416666667vw, 20px);
  }
  .usp .c-points-card > .contents-wrap > .img-area {
    max-height: 200px;
  }
  .usp .c-points-card > .contents-wrap > .img-area.no-limit {
    max-height: 300px;
  }
  .usp .c-points-card > .contents-wrap > .img-area.adjust {
    margin-top: 50px;
    margin-bottom: 50px;
  }
  .c-plans-card .ttl-area {
    text-align: center;
  }
  .c-plans-card .ttl-area .ttl {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .c-plans-card .ttl-area .ttl .desc {
    display: none;
  }
  .c-plans-card .ttl-area .img-area {
    display: none;
  }
  .c-plans-card .contents-wrap {
    gap: 8px;
  }
  .c-plans-card .contents-wrap .c-discount-txt {
    font-size: 14px;
  }
  .c-plans-card .contents-wrap .c-discount-txt .big {
    font-size: 20px;
  }
  .c-plans-card .contents-wrap .price-area .price-txt-wrap .price-before {
    font-size: 10px;
  }
  .c-plans-card .contents-wrap .price-area .price-txt-wrap .price-before .price {
    font-size: 16px;
  }
  .c-plans-card .contents-wrap .price-area .price-txt-wrap .price-before .price .yen {
    font-size: 12px;
  }
  .c-plans-card .contents-wrap .price-area .price-txt-wrap .c-price-after .price {
    font-size: 50px;
  }
  .c-plans-card .contents-wrap .price-area .price-txt-wrap .c-price-after .price .small {
    font-size: 40px;
  }
  .c-plans-card .contents-wrap .tag-list-area .c-tag-list .c-tag {
    padding-inline: 5px;
    font-size: 10px;
  }
  .c-discount-txt {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin-inline: auto;
  }
  .c-map-area > svg {
    max-width: 500px;
  }
  .c-plan-price-box .price-box-wrap .c-price-txt .price-txt-wrap {
    gap: 10px;
  }
  .c-plan-price-box .price-box-wrap .c-price-txt .price-txt-wrap .price-before {
    font-size: 14px;
  }
  .c-plan-price-box .price-box-wrap .c-price-txt .price-txt-wrap .price-before .price {
    font-size: 24px;
  }
  .c-plan-price-box .price-box-wrap .c-price-txt .price-txt-wrap .price-before .price .yen {
    font-size: 12px;
  }
  .c-plan-price-box .price-box-wrap .c-price-txt .price-txt-wrap .c-price-after .price {
    font-size: 70px;
  }
  .c-plan-price-box .price-box-wrap .c-price-txt .price-txt-wrap .c-price-after .price .small {
    font-size: 50px;
  }
  .c-plan-price-box .price-box-wrap .c-price-txt .price-txt-wrap .c-price-after .total {
    font-size: 12px;
  }
  .c-plan-price-box .price-box-wrap .c-price-txt .price-txt-wrap .c-price-after .total .big {
    font-size: 14px;
  }
  .c-plan-price-box .price-box-wrap .c-price-txt .note-txt-area {
    font-size: 12px;
  }
  .home .c-plans-section {
    padding-top: 50px;
  }
  .home .c-mv-section .main-wrap {
    height: 722.47px;
  }
  .hallcat .area-inner-list > li > a:hover {
    background: #5a4538;
    color: #fff;
  }
  .hallcat .area-inner-list > li > a:hover::after {
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
  }
  .contact-section .radio-group .wpcf7-radio, .contact-section .radio-group .wpcf7-checkbox, .contact-section .checkbox-group .wpcf7-radio, .contact-section .checkbox-group .wpcf7-checkbox {
    margin-top: 7px;
  }
  .plan-detail-eidai .c-mv-plan-section .contents-wrap {
    grid-template-columns: 1fr min(50%, 600px);
    grid-template-areas: "tag img" "ttl img";
    row-gap: 20px;
  }
  .plan-detail-eidai .c-mv-plan-section .contents-wrap .c-plan-tag-list {
    -webkit-align-self: end;
        -ms-flex-item-align: end;
            align-self: end;
  }
  .plan-detail-eidai .c-mv-plan-section .contents-wrap .c-ttl01 {
    margin-bottom: 0;
  }
  .plan-detail-ihin .choose-section .c-balloon-txt .inn-txt {
    font-size: 24px;
  }
  .error-404 .contents-wrap .desc {
    -webkit-align-self: end;
        -ms-flex-item-align: end;
            align-self: end;
  }
  .error-404 .contents-wrap .btn-wrap {
    -webkit-align-self: start;
        -ms-flex-item-align: start;
            align-self: start;
  }
  .discount .discount-section .white-box .btn-area .c-btn .inn-txt {
    font-size: 20px;
  }
  .payment .payment-section .payment-list .white-box .c-num-ttl .num {
    font-size: 25px;
  }
  .payment .payment-section .payment-list .white-box .long-txt {
    font-size: 18px;
  }
}
@media only screen and (max-width: 440px) {
  .br-440 {
    display: none;
  }
  .c-pagination > a, .c-pagination > span:not(.dots) {
    width: 34px;
    height: 34px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 950px) {
  .c-header .top-area .logo-area {
    max-width: 250px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
@media (any-hover: hover) {
  .c-header .top-area .menu-btn-area .menu-btn:hover {
    background-color: #FFFFFF;
    color: #ff8d3b;
  }
  #pagetop > a:hover {
    background-color: #FFFFFF;
    color: #5a4538;
  }
  .c-btn.clr-pink:not(.has-shadow):hover {
    color: #FFFFFF;
    background: #ee5353;
    border-color: #ee5353;
  }
  .c-btn.bg-pink:not(.has-shadow):hover {
    color: #ee5353;
    background: #FFFFFF;
  }
  .c-btn.clr-orange:not(.has-shadow):hover {
    color: #FFFFFF;
    background: #ff8d3b;
    border-color: #ff8d3b;
  }
  .c-btn.bg-orange:not(.has-shadow):hover {
    color: #ff8d3b;
    background: #FFFFFF;
  }
  .c-btn.clr-brown:not(.has-shadow):hover {
    color: #FFFFFF;
    background: #5a4538;
    border-color: #5a4538;
  }
  .c-btn.bg-brown:not(.has-shadow):hover {
    color: #5a4538;
    background: #FFFFFF;
  }
  .c-btn.clr-blue:not(.has-shadow):hover {
    color: #FFFFFF;
    background: #5c7795;
    border-color: #5c7795;
  }
  .c-btn.bg-blue:not(.has-shadow):hover {
    color: #5c7795;
    background: #FFFFFF;
  }
  .c-btn.line:hover {
    background: #06c755;
    color: #fff;
  }
  .c-btn.line:hover .inn-txt::after {
    background: #fff;
  }
  .c-btn.has-shadow:hover {
    translate: 0 2px;
    -webkit-box-shadow: 0 0 0 0 #CE6F2A;
            box-shadow: 0 0 0 0 #CE6F2A;
  }
  .c-btn.header-btn:not(.ico-caution):hover {
    color: #ff8d3b;
  }
  .c-btn.header-btn:not(.ico-caution):hover::after {
    opacity: 1;
  }
  .c-btn.ico-free.free-orange:not(.has-shadow):hover .txt-free {
    background: #ff8d3b;
    color: #FFFFFF;
  }
  .c-btn.ico-free:not(.has-shadow):hover .txt-free {
    background: #ee5353;
    color: #FFFFFF;
  }
  .c-btn.ico-request:hover {
    background: #5a4538;
    color: #fff;
  }
  .c-btn.ico-request:hover .inn-txt::after {
    background: #fff;
  }
  .c-underline-link.underline-hover:hover .inn-txt {
    -webkit-text-decoration-color: currentColor;
            text-decoration-color: currentColor;
  }
  .c-underline-link:hover .inn-txt {
    -webkit-text-decoration-color: transparent;
            text-decoration-color: transparent;
  }
  .c-img-btn:hover {
    background: #5a4538;
    color: #FFFFFF;
  }
  .c-img-btn.crl-fudousan:hover {
    background: #ff8d3b;
  }
  .c-img-btn.crl-ihin:hover {
    background: #C87D63;
  }
  .c-img-btn.crl-kaiyou:hover {
    background: #69AFCA;
  }
  .c-img-btn.crl-eidai:hover {
    background: #C3A03E;
  }
  .c-img-btn.crl-isan:hover {
    background: #C99C64;
  }
  .c-img-btn.crl-kouden:hover {
    background: #666EC6;
  }
  .c-plan-detail-section .detail-card .img-area .modal-open-btn:hover {
    scale: 1.1;
  }
  .c-plan-detail-section .detail-card .detail-cont .modal-close-btn:hover {
    background: #FFFFFF;
    color: #5a4538;
  }
  .c-link-txt:hover {
    -webkit-text-decoration-color: transparent;
            text-decoration-color: transparent;
  }
  a.c-tag:hover {
    color: #FFFFFF;
    background-color: #ff8d3b;
  }
  .c-column-card:hover .img-area img {
    scale: 1.1;
  }
  .c-column-card:hover .ttl {
    color: #ff8d3b;
  }
  .c-pagination a:hover {
    color: #FFFFFF;
    background-color: #ff8d3b;
  }
  .c-pagination a:hover::after, .c-pagination a:hover::before {
    background-color: #FFFFFF;
  }
  .c-plans-card .contents-wrap .btn-area .c-btn:hover {
    background-color: #FFFFFF;
  }
  .c-plans-card.clr-kazokusou_1day .contents-wrap .btn-area .c-btn:hover {
    color: #7db462;
  }
  .c-plans-card.clr-kazokusou_2days .contents-wrap .btn-area .c-btn:hover {
    color: #ff8d3b;
  }
  .c-plans-card.clr-shinzokusou .contents-wrap .btn-area .c-btn:hover {
    color: #567d71;
  }
  .c-plans-card.clr-ippansou .contents-wrap .btn-area .c-btn:hover {
    color: #56617D;
  }
  .c-plans-card.clr-kasoushiki .contents-wrap .btn-area .c-btn:hover {
    color: #B29447;
  }
  .c-plans-card.clr-jitakushiki .contents-wrap .btn-area .c-btn:hover {
    color: #4a6779;
  }
  .c-plans-card.clr-tsukisoishiki .contents-wrap .btn-area .c-btn:hover {
    color: #77c1e5;
  }
  .c-map-area > svg > a:hover path:not([fill="#5A4538"]) {
    -webkit-filter: brightness(0.9);
            filter: brightness(0.9);
  }
  .c-breadcrumbs a:hover {
    opacity: 0.7;
  }
  .c-slider-parts.splide .splide__arrow:hover {
    background: #F1F5F3;
  }
  .c-plan-cards-mini > li > a:hover {
    -webkit-box-shadow: 0 0 15px rgba(0, 0, 0, 0.2);
            box-shadow: 0 0 15px rgba(0, 0, 0, 0.2);
  }
  .c-setplan-cards-mini > li > a:hover {
    -webkit-box-shadow: 0 0 15px rgba(0, 0, 0, 0.2);
            box-shadow: 0 0 15px rgba(0, 0, 0, 0.2);
  }
  .c-link-list li > a:hover,
  .c-link-list li > button:hover {
    color: #ff8d3b;
  }
  .c-compare-plan-tbl thead th.h-small > span .link-txt:hover {
    color: #5a4538;
  }
  .hallcat.detail .js--modal .js--close:hover {
    background: #5a4538;
  }
  .hallcat.detail .js--modal .js--close:hover::after, .hallcat.detail .js--modal .js--close:hover::before {
    background: #fff;
  }
  .column .article-content a:hover {
    opacity: 0.7;
  }
  .column .c-calls-block .content-area .article-links li > a:hover {
    opacity: 0.7;
  }
  .contact-section .contact-btn:hover {
    background: #FFFFFF;
    color: #ee5353;
  }
  .contact-section .contact-btn.back-btn:hover {
    background: #DC603D;
    border-color: #DC603D;
    color: #FFFFFF;
  }
  .contact-section .privacy-link a:hover {
    text-decoration: none;
  }
  .sitemap a:hover {
    opacity: 0.7;
  }
  .discount .discount-section .white-box.green .c-btn:hover {
    -webkit-box-shadow: none;
            box-shadow: none;
  }
  .payment .payment-section .anchor-list .c-tag:hover::before {
    background: #09c;
  }
}
@media only screen and (min-width: 768px) and (any-hover: hover) {
  .c-header .bottom-area .nav-list-area > .nav-list .has-list:hover > .js--dropdown-cont {
    opacity: 1;
    pointer-events: initial;
    -webkit-user-select: initial;
       -moz-user-select: initial;
        -ms-user-select: initial;
            user-select: initial;
    -ms-touch-action: initial;
        touch-action: initial;
  }
  .c-header .bottom-area .nav-list-area > .nav-list .has-list > ul li a:hover,
  .c-header .bottom-area .nav-list-area > .nav-list .has-list > ul li button:hover {
    background: #F1F5F3;
    color: #5a4538;
    font-weight: 700;
  }
  .c-header .bottom-area .nav-list-area > .nav-list .has-list > ul li a:hover .inn-txt::before,
  .c-header .bottom-area .nav-list-area > .nav-list .has-list > ul li button:hover .inn-txt::before {
    background: #ff8d3b;
  }
}
@media only screen and (min-width: 768px) and (max-width: 960px) {
  .c-footer {
    padding-block: 80px;
  }
  .c-footer .contents-wrap .logo-area .logo {
    max-width: 500px;
  }
}
@media only screen and (max-width: 960px) {
  .c-footer .contents-wrap {
    grid-template-columns: 100%;
    grid-template-areas: "logo" "link" "copyright";
  }
  .c-footer .contents-wrap .link-list-area {
    padding-left: 20px;
  }
  .c-footer .contents-wrap .copyright-area {
    text-align: center;
  }
  .hallcat.detail .hall-thumbs .badge {
    right: 10px;
  }
}
@media only screen and (min-width: 401px) {
  .c-btn.wrap .br-400 {
    display: none !important;
  }
}
@media only screen and (max-width: 400px) {
  .c-btn.wrap {
    line-height: 1.4;
    padding: 12px 20px;
  }
  .c-btn.wrap .inn-txt {
    padding: 0 10px;
  }
  .c-btn.wrap .inn-txt::before {
    left: -10px;
  }
  .c-btn.wrap .inn-txt::after {
    right: -10px;
  }
  .hallcat.detail .hall-thumbs.tmp-thub-wrap .badge {
    right: 5px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1200px) {
  .c-mv-section .main-wrap > .inner-block {
    background-size: min(400px, 40%) auto, min(911px, 100%) auto;
    background-position: right calc(100% + 26px), center calc(100% + 50px);
  }
  .c-mv-section .contents-wrap {
    grid-template-columns: 1fr 1fr;
    grid-template-areas: "balloon balloon" "main main" "numones price" "note note";
  }
  .c-mv-section .contents-wrap .numberones-area {
    margin-block: 20px 0;
    -webkit-align-self: end;
        -ms-flex-item-align: end;
            align-self: end;
  }
  .c-mv-section .contents-wrap .c-note-block {
    margin-top: 250px;
  }
  .c-mv-section .contents-wrap .price-area {
    -webkit-align-self: end;
        -ms-flex-item-align: end;
            align-self: end;
  }
  .c-mv-section.c-cta02 .main-wrap .contents-wrap {
    grid-template-areas: "balloon balloon" "main main" "numones numones";
  }
  .c-points-card-list {
    grid-template-columns: repeat(2, 1fr);
  }
  .c-points-card-list > li:nth-child(3n) {
    grid-row: 2;
    grid-column: 1/3;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .c-points-card-list.two-columns > li:nth-child(3) {
    grid-column: 1;
  }
  .c-points-card-list.two-columns > li:nth-child(6) {
    grid-row: 3;
    grid-column: 2;
  }
  .home .c-mv-section .main-wrap {
    height: calc(14.6vw + 692.39px);
  }
  .plan-detail-ihin .c-points-card-list {
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  }
  .plan-detail-ihin .c-points-card-list > li:nth-child(3n) {
    grid-row: auto;
    grid-column: auto;
    -webkit-box-pack: auto;
    -webkit-justify-content: auto;
        -ms-flex-pack: auto;
            justify-content: auto;
  }
  .plan-detail-ihin .buy-section .c-points-card-list {
    grid-template-columns: repeat(4, 1fr);
  }
  .discount .discount-section .white-box .step-section .c-points-card-list {
    grid-template-columns: 100%;
  }
  .discount .discount-section .white-box .step-section .c-points-card-list > li:nth-child(3n) {
    grid-row: auto;
    grid-column: auto;
    -webkit-box-pack: auto;
    -webkit-justify-content: auto;
        -ms-flex-pack: auto;
            justify-content: auto;
  }
}
@media only screen and (max-width: 767px) and (max-width: 374px) {
  .c-mv-section .main-wrap > .inner-block {
    background-position: calc(100% + 10px) calc(100% + 26px), center calc(100% + 53px);
  }
  .c-plans-card {
    width: calc(100% - clamp(15px, 8.0213903743vw, 30px) * 2);
  }
}
@media only screen and (max-width: 1200px) {
  .c-mv-section .contents-wrap .c-note-block {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
  .c-mv-section.c-cta02 .main-wrap .contents-wrap .numberones-area {
    margin-top: 20px;
  }
}
@media only screen and (min-width: 1201px) {
  .c-mv-section .contents-wrap .price-area .c-lines-txt {
    margin-left: 0;
  }
}
@media only screen and (max-width: 767px) and (any-hover: hover) {
  .c-calls-block.js--acc-wrap.acc-on-sp.bg-pink .ttl-area:hover {
    background: #FFFFFF;
    color: #ee5353;
  }
}
@media only screen and (max-width: 900px) {
  .c-mv-plan-section .contents-wrap {
    padding-block: 30px;
    grid-template-columns: 100%;
    grid-template-areas: "tag" "ttl" "img" "price";
    max-width: 600px;
    margin-inline: auto;
  }
  .c-mv-plan-section .contents-wrap .img-area {
    margin-bottom: 30px;
    max-width: 500px;
    justify-self: center;
  }
  .plan-detail-kaiyou.kaiyou-detail .area-section .contents-wrap {
    grid-template-columns: 100%;
  }
  .plan-detail-kaiyou.kaiyou-detail .area-section .area-list {
    gap: 24px;
    max-height: clamp(200px, var(--vh, 1vh) * 60, 350px);
  }
  .plan-detail-kaiyou.kaiyou-detail .area-section .area-list > li .c-num-ttl {
    font-size: 20px;
  }
  .plan-detail-kaiyou.kaiyou-detail .area-section .area-list > li .c-num-ttl .num {
    font-size: 20px;
    padding: 3px 10px;
  }
  .plan-detail-kaiyou.kaiyou-detail .area-section .area-list > li .c-kaiyou-price-tbl tbody tr:first-child th {
    font-size: 18px;
  }
  .plan-detail-kaiyou.kaiyou-detail .area-section .area-list > li .c-kaiyou-price-tbl tbody tr td {
    font-size: 16px;
    padding: 8px;
  }
  .plan-detail-eidai .c-mv-plan-section .contents-wrap {
    max-width: none;
  }
  .plan-detail-eidai .c-mv-plan-section .contents-wrap .img-area {
    margin-bottom: 0;
  }
}
@media only screen and (max-width: 500px) {
  .c-plan-detail-section .detail-card.row {
    grid-template-columns: 100%;
  }
  .plan-detail-ihin .choose-section .details-area .detail-card.row .img-area img {
    max-height: 150px;
  }
  .payment .example-section .example-list {
    grid-template-columns: 100%;
  }
}
@media only screen and (max-width: 1080px) {
  .white-box {
    padding: 50px 20px;
  }
  .hallcat .area-label .inner-block h2 {
    font-size: 40px;
  }
  .hallcat .hall-list > li {
    padding: 30px;
  }
  .hallcat .hall-list .cont-wrap {
    gap: 20px;
  }
  .hallcat .hall-list .cont-wrap .img-box {
    width: 320px;
  }
  .hallcat .hall-list .cont-wrap .txt-wrap {
    width: calc(100% - 340px);
  }
  .hallcat .hall-list .cont-wrap .txt-wrap .c-btns-wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .hallcat.detail .white-box {
    padding: 50px 20px;
  }
}
@media only screen and (max-width: 1080px) and (max-width: 767px) {
  .white-box {
    padding: 30px 15px;
    border-radius: 10px;
  }
  .hallcat .area-label .inner-block h2 {
    font-size: 24px;
  }
  .hallcat .hall-list > li {
    padding: 20px;
  }
  .hallcat .hall-list .cont-wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .hallcat .hall-list .cont-wrap .img-box {
    margin: 0 auto;
    max-width: 350px;
    width: 100%;
  }
  .hallcat .hall-list .cont-wrap .txt-wrap {
    width: 100%;
  }
  .hallcat .hall-list .cont-wrap .txt-wrap .c-btns-wrap {
    gap: 10px;
    margin-top: 20px;
  }
  .hallcat.detail .white-box {
    padding: 30px 15px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 920px) {
  .c-btns-wrap.apply {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .c-btns-wrap.apply > a {
    width: calc(50% - 10px);
  }
}
@media only screen and (max-width: 767px) and (max-width: 480px) {
  .c-pagination > a.prev, .c-pagination > span:not(.dots).prev {
    margin-right: 0;
  }
  .c-pagination > a.next, .c-pagination > span:not(.dots).next {
    margin-left: 0;
  }
  .c-plan-cards-mini > li > a {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    padding: 10px 20px 10px 10px;
  }
  .c-plan-cards-mini > li > a::after, .c-plan-cards-mini > li > a::before {
    right: 5px;
  }
  .c-plan-cards-mini > li .right {
    width: 100%;
  }
  .c-plan-cards-mini > li .right .price {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .welfare .item .imgs {
    grid-template-columns: 1fr 1fr;
  }
}
@media only screen and (min-width: 768px) and (max-width: 830px) {
  .c-flow-chart > li .flow-steps > li::after {
    left: calc(100% + 3.6144578313vw);
  }
}
@media only screen and (max-width: 1039px) {
  .c-plan-cards-mini {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
@media only screen and (max-width: 480px) {
  .c-plan-cards-mini > li .right .banner {
    padding: 1px 5px 2px;
  }
}
@media only screen and (max-width: 920px) {
  .c-detail-table tr th {
    padding: 12px 10px;
  }
  .c-detail-table tr td {
    padding: 12px 10px;
  }
  .home .c-mv-section .note-text-wrap .txt {
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}
@media only screen and (max-width: 920px) and (max-width: 767px) {
  .c-detail-table tr th {
    width: 100%;
    border-right: none;
    border-bottom: 1px solid #999999;
    display: block;
  }
  .c-detail-table tr td {
    width: 100%;
    display: block;
  }
}
@media only screen and (max-width: 767px) and (max-width: 490px) {
  .c-setplan-cards-mini > li > a {
    grid-template-columns: 100%;
    justify-items: center;
  }
}
@media only screen and (max-width: 490px) {
  .c-setplan-cards-mini > li > a .left img {
    max-width: 60px;
    height: auto;
    aspect-ratio: 1;
  }
}
@media only screen and (max-width: 840px) {
  .c-flow-list > li > .contents-wrap {
    grid-template-areas: "ttl img" "desc desc";
  }
}
@media only screen and (max-width: 374px) {
  .c-flow-list > li > .contents-wrap > .c-num-ttl .inn-txt.tiny {
    font-size: 14px;
  }
}
@media only screen and (max-width: 1120px) {
  .hallcat .area-inner-list > li {
    width: calc((100% - 52px) / 3);
  }
}
@media only screen and (max-width: 1120px) and (max-width: 767px) {
  .hallcat .area-inner-list > li {
    width: calc((100% - 15px) / 2);
  }
}
@media only screen and (max-width: 1120px) and (max-width: 767px) and (max-width: 440px) {
  .hallcat .area-inner-list > li {
    width: 100%;
  }
}
@media only screen and (max-width: 960px) and (max-width: 767px) {
  .hallcat.detail .hall-thumbs .badge {
    top: 20px;
    right: 5px;
    width: 77px;
    height: 91px;
  }
}
@media only screen and (max-width: 767px) and (max-width: 375px) {
  .hallcat.detail .bot-cta .top .doc .c-lines-txt::before {
    left: 30px;
  }
  .hallcat.detail .bot-cta .top .doc .c-lines-txt::after {
    right: 30px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 940px) {
  .contact-section .radio-group .wpcf7-radio, .contact-section .radio-group .wpcf7-checkbox, .contact-section .checkbox-group .wpcf7-radio, .contact-section .checkbox-group .wpcf7-checkbox {
    grid-template-columns: 1fr 1fr;
  }
}
@media only screen and (min-width: 720px) {
  .plan-detail .other-plan-section .c-plan-cards-mini {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    justify-items: center;
    gap: 20px;
  }
  .plan-detail .other-plan-section .c-plan-cards-mini > li {
    max-width: 592px;
    width: 100%;
  }
  .plan-detail .other-plan-section .c-plan-cards-mini > li > a {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .plan-detail .other-plan-section .c-plan-cards-mini > li .left {
    gap: 20px;
  }
  .plan-detail .other-plan-section .c-plan-cards-mini > li .left .tags .tag {
    font-size: 12px;
    padding: 5px;
  }
  .plan-detail .other-plan-section .c-plan-cards-mini > li .left .ttl {
    font-size: 30px;
  }
  .plan-detail .other-plan-section .c-plan-cards-mini > li .left > .img {
    width: 80px;
    height: 80px;
    aspect-ratio: 1;
  }
  .plan-detail .other-plan-section .c-plan-cards-mini > li .right {
    width: auto;
  }
  .plan-detail .other-plan-section .c-plan-cards-mini > li .right .banner {
    font-size: 12px;
  }
  .plan-detail .other-plan-section .c-plan-cards-mini > li .right .banner .large {
    font-size: 18px;
  }
  .plan-detail .other-plan-section .c-plan-cards-mini > li .right .price {
    gap: 10px;
    margin-top: 0;
  }
  .plan-detail .other-plan-section .c-plan-cards-mini > li .right .price > span {
    width: auto;
    font-size: 12px;
  }
  .plan-detail .other-plan-section .c-plan-cards-mini > li .right .price .num {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .plan-detail .other-plan-section .c-plan-cards-mini > li .right .price .num .pink {
    font-size: 60px;
  }
  .plan-detail .other-plan-section .c-plan-cards-mini > li .right .price .num .pink .small {
    font-size: 30px;
  }
  .plan-detail .other-plan-section .c-plan-cards-mini > li .right .price .num .unit {
    position: unset;
    width: auto;
    height: auto;
    padding-top: 15px;
  }
}
@media only screen and (min-width: 720px) and (max-width: 767px) {
  .plan-detail .other-plan-section .c-plan-cards-mini {
    -webkit-column-gap: 16px;
       -moz-column-gap: 16px;
            column-gap: 16px;
  }
}
@media only screen and (min-width: 720px) and (min-width: 1281px) {
  .plan-detail .other-plan-section .c-plan-cards-mini > li > a {
    padding-right: 55px;
  }
}
@media only screen and (min-width: 720px) and (max-width: 1280px) {
  .plan-detail .other-plan-section .c-plan-cards-mini > li > a {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
@media only screen and (max-width: 600px) {
  .plan-detail-ihin .onestop-section .calc-area {
    grid-template-columns: 100%;
    margin-inline: auto;
  }
  .plan-detail-ihin .onestop-section .calc-area .circle {
    border-radius: 10px;
    aspect-ratio: auto;
  }
  .plan-detail-ihin .onestop-section .calc-area .circle .inn-txt .small {
    font-size: 12px;
  }
  .plan-detail-ihin .onestop-section .calc-area .icon.equal {
    rotate: 90deg;
  }
  .payment .payment-section .payment-list .white-box .txt-img-area {
    grid-template-columns: 100%;
  }
  .payment .payment-section .payment-list .white-box.orico .txt-img-area {
    grid-template-columns: 100%;
  }
  .payment .payment-section .payment-list .white-box.orico .txt-img-area .txt-area {
    grid-row: 2;
  }
  .payment .payment-section .payment-list .white-box.orico .txt-img-area .img-area {
    grid-row: 1;
    text-align: center;
  }
  .payment .payment-section .payment-list .white-box.orico .txt-img-area .img-area > img {
    max-width: 300px;
    width: 100%;
  }
}
@media only screen and (min-width: 501px) {
  .plan-detail-ihin .choose-section .details-area .detail-card.row {
    grid-template-columns: min(30%, 100px) 1fr;
  }
}
@media only screen and (max-width: 767px) and (max-width: 440px) {
  .far .c-mv-section .recommend .box {
    font-size: 14px;
  }
  .far .c-mv-section .recommend .img {
    width: 210px;
  }
}
@media only screen and (max-width: 767px) and (max-width: 450px) {
  .sitemap .sitemap-list > li, .sitemap .sitemap-inner-list > li {
    width: 100%;
  }
  .sitemap .sitemap-list.large > li, .sitemap .sitemap-inner-list.large > li {
    width: 100%;
  }
  .sitemap .pref-inner-list > li {
    width: 100%;
  }
}
@media only screen and (max-width: 980px) {
  .support .c-mv-section .img {
    position: relative;
  }
  .support .c-mv-section .img-wrap {
    margin-top: 20px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 20px;
  }
  .support .c-mv-section .img-wrap .img {
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    width: 120px;
  }
  .support .c-mv-section .img-wrap .img > span {
    top: 0;
    left: -10px;
    right: 0;
    bottom: 0;
  }
}
@media only screen and (max-width: 980px) and (max-width: 600px) {
  .support .c-mv-section .img-wrap {
    width: 260px;
    margin: 20px auto 0;
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
}
@media only screen and (max-width: 570px) {
  .payment .payment-section .anchor-list {
    grid-template-columns: repeat(6, minmax(0, 1fr));
    -webkit-column-gap: 8px;
       -moz-column-gap: 8px;
            column-gap: 8px;
  }
  .payment .payment-section .anchor-list > li:nth-child(-n+3) {
    grid-column: span 2;
  }
  .payment .payment-section .anchor-list > li:nth-child(4) {
    grid-column: 2/span 2;
  }
  .payment .payment-section .anchor-list > li:nth-child(5) {
    grid-column: 4/span 2;
  }
  .payment .payment-section .payment-list .white-box .creditcard-area {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
  .payment .payment-section .payment-list .white-box .creditcard-area .img-area:nth-child(-n+3) {
    grid-column: span 2;
  }
  .payment .payment-section .payment-list .white-box .creditcard-area .img-area:nth-child(4) {
    grid-column: 2/span 2;
  }
  .payment .payment-section .payment-list .white-box .creditcard-area .img-area:nth-child(5) {
    grid-column: 4/span 2;
  }
}
/*# sourceMappingURL=style.css.map */
/*# sourceMappingURL=style.css.map */