@charset "UTF-8";
/* reset:start */
*,
*::before,
*::after {
  box-sizing: border-box;
}

* {
  margin: 0;
  padding: 0;
}

html {
  font-size: 62.5%;
}

body {
  overflow-x: hidden;
  font-family: "Noto Sans JP", sans-serif;
  color: #231815;
  font-weight: 500;
}

img,
picture,
video,
canvas,
svg {
  display: block;
  max-width: 100%;
  height: auto;
}

img {
  width: 100%;
}

input,
button,
textarea,
select {
  font: inherit;
}

p,
h1,
h2,
h3,
h4,
h5,
h6 {
  overflow-wrap: break-word;
}

ul {
  list-style: none;
}

[hidden] {
  display: none;
}

.about__point, .cont__btn, .cont__btn--contact {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
@media screen and (min-width: 750px) {
  .about__point, .cont__btn, .cont__btn--contact {
    display: flex !important;
  }
}
.about__point > *, .cont__btn > *, .cont__btn--contact > * {
  min-height: 0%;
}

.cont__container, .cont__container--small {
  box-sizing: content-box !important;
  max-width: 1080px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 20px;
  padding-right: 20px;
}
@media screen and (max-width: 749px) {
  .cont__container, .cont__container--small {
    max-width: 89.3333333333vw;
    padding-left: 0;
    padding-right: 0;
  }
}

.cont__container--small {
  max-width: 840px;
}
@media screen and (max-width: 749px) {
  .cont__container--small {
    max-width: 78.6666666667vw;
  }
}

.footer__breadcrumb-item, .modal__close, .tokushoho__table-link, .movie__img, .movie__modal, .kv__btn, .link, .cont__btn-link {
  color: inherit;
  transition: opacity 0.3s;
  cursor: pointer;
}
.footer__breadcrumb-item:hover, .modal__close:hover, .tokushoho__table-link:hover, .movie__img:hover, .movie__modal:hover, .kv__btn:hover, .link:hover, .cont__btn-link:hover {
  opacity: 0.7;
}

.cont__btn, .cont__btn--contact {
  margin-top: 12.7777777778%;
}

/* common:start */
[v-cloak] {
  display: none;
}

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

@media screen and (min-width: 750px) {
  .spOnly {
    display: none !important;
  }
}

.cont {
  background-color: #fffbed;
  background-image: url(/common/images/cont_bg.png);
  background-size: 1920px;
  background-repeat: no-repeat;
  background-position: top center;
  padding-top: 15px;
  padding-bottom: 120px;
}
@media screen and (min-width: 1921px) {
  .cont {
    background-size: cover;
  }
}
@media screen and (max-width: 1120px) {
  .cont {
    padding-top: 1.3392857143vw;
    padding-bottom: 10.7142857143vw;
  }
}
@media screen and (max-width: 749px) {
  .cont {
    background-image: url(/common/images/sp/cont_bg.png);
    background-size: 100% 100%;
    padding-top: 0;
    padding-bottom: 16vw;
  }
}
@media screen and (max-width: 749px) {
  .cont__btn {
    background-color: #fff100;
    border-top: 1.0666666667vw solid #231815;
    padding: 4.8vw 5.3333333333vw 5.3333333333vw;
    margin-top: 0;
    position: fixed;
    left: 0;
    bottom: 0;
    z-index: 5;
  }
}
@media screen and (max-width: 749px) {
  .cont__btn--contact {
    margin-top: 25.3731343284%;
  }
}
.cont__btn-link {
  position: relative;
}
.cont__btn-link::before {
  content: "";
  background-image: url(/common/images/cont_img_character.svg);
  background-size: contain;
  background-repeat: no-repeat;
  width: 52px;
  height: 101px;
  position: absolute;
  top: -58px;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (max-width: 749px) {
  .cont__btn-link::before {
    background-image: url(/common/images/sp/cont_img_character.png);
    width: 10.8vw;
    height: 20.9333333333vw;
    top: -12vw;
  }
}
.cont__btn-img {
  width: 400px;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 749px) {
  .cont__btn-img {
    width: 100%;
  }
}

/* common:end */
.js-accordion__trigger {
  cursor: pointer;
}
.js-accordion__trigger-qa {
  position: relative;
}
.js-accordion__target {
  overflow: hidden;
  border-bottom: 4px solid #00aa7e;
}
@media screen and (max-width: 749px) {
  .js-accordion__target {
    border-width: 0.5333333333vw;
  }
}
.js-accordion__target-enter-active {
  transition: all 0.5s ease-in-out;
}
.js-accordion__target-leave-active {
  transition: all 0.5s ease-in-out;
}
.js-accordion__target-enter, .js-accordion__target-leave-to {
  opacity: 0;
}
.js-accordion__icon {
  position: absolute;
  right: 36px;
  top: 50%;
  transform: translateY(-50%);
}
@media screen and (max-width: 749px) {
  .js-accordion__icon {
    right: 2.1333333333vw;
  }
}
.js-accordion__icon span {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
  transition: all 0.3s;
  transition-delay: 0.3s;
}
.js-accordion__icon span::before, .js-accordion__icon span::after {
  display: block;
  position: absolute;
  content: "";
  width: 20px;
  height: 4px;
  background-color: #fff;
  top: calc(50% - 2px);
  right: 0;
  transform: translateY(-50%);
  transition: all 0.3s;
}
@media screen and (max-width: 749px) {
  .js-accordion__icon span::before, .js-accordion__icon span::after {
    width: 4vw;
    height: 0.5333333333vw;
    top: calc(50% - 0.5333333333vw);
  }
}
.js-accordion--close .js-accordion__icon span::after {
  transform: translateY(-50%) rotate(90deg);
}

/* js-fade:start */
:root {
  --fade-translate-x: 0px;
  --fade-translate-y: 0px;
  --fade-duration: 500ms;
}

/* 表示方向 */
.up {
  --fade-translate-y: 50px;
}

.down {
  --fade-translate-y: -50px;
}

.fromLeft {
  --fade-translate-x: -50px;
}

.fromRight {
  --fade-translate-x: 50px;
}

.jsScroll {
  opacity: 0;
  transition-duration: 500ms;
  transition-property: opacity, transform;
  transition-delay: 0ms;
  transform: translate(var(--fade-translate-x), var(--fade-translate-y));
}

.jsScrollIn {
  opacity: 1;
  transform: translate(0, 0);
}

.jsFvHide {
  opacity: 0;
  transition-duration: 1.5s;
  transition-property: opacity, transform;
  transition-delay: 0s;
}
.jsFvHide.jsFvShow {
  opacity: 1;
}

.fade-enter-active {
  transition: opacity 0.3s;
}
.fade-leave-active {
  transition: opacity 0.3s;
}
.fade-enter, .fade-leave-to {
  opacity: 0;
}

/* js-fade:end */
/* kv:start */
.kv__container {
  position: relative;
}
.kv__btn {
  max-width: 135px;
  position: absolute;
  top: 30px;
  right: 43px;
}
@media screen and (max-width: 1120px) {
  .kv__btn {
    max-width: 12.0535714286vw;
    top: 2.6785714286vw;
    right: 3.8392857143vw;
  }
}

/* kv:end */
.about__inner--03, .about__inner--02, .about__inner {
  background-image: url(/common/images/about_bg_step.png);
  background-repeat: no-repeat;
  background-position: top center;
  background-size: 100% 100%;
  height: 305px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 7.6923076923%;
  margin-top: 5.7692307692%;
}
@media screen and (max-width: 1120px) {
  .about__inner--03, .about__inner--02, .about__inner {
    height: 27.2321428571vw;
  }
}
@media screen and (max-width: 749px) {
  .about__inner--03, .about__inner--02, .about__inner {
    padding: 3.9215686275%;
    margin-top: 3.9215686275%;
  }
}

/* about:start */
.about__container {
  background-image: url(/common/images/about_bg.png);
  background-repeat: no-repeat;
  background-position: top center;
  background-size: 100% 100%;
  padding: 5.5555555556% 7.4074074074%;
  margin-top: 11.1111111111%;
}
@media screen and (max-width: 749px) {
  .about__container {
    background-image: url(/common/images/sp/about_bg.png);
    padding: 8vw 5.3333333333vw;
    margin-top: 17.9104477612%;
  }
}
.about__txt {
  margin-top: 3.5869565217%;
  font-size: 2.4rem;
  line-height: 1.5833333333;
  letter-spacing: 0.04em;
}
@media screen and (max-width: 749px) {
  .about__txt {
    margin-top: 4.7457627119%;
    padding: 0 0.8474576271%;
    font-size: 4.8vw;
    line-height: 1.6111111111;
  }
}
.about__caution {
  margin-top: 1.6304347826%;
  font-size: 1.4rem;
  line-height: 1;
  letter-spacing: 0.04em;
}
@media screen and (max-width: 749px) {
  .about__caution {
    margin-top: 3.3898305085%;
    font-size: 3.2vw;
  }
}
.about__contents {
  background-image: url(/common/images/about_bg_green.png);
  background-repeat: no-repeat;
  background-position: top center;
  background-size: 100% 100%;
  padding: 6.5217391304% 4.347826087%;
  margin-top: 5.9782608696%;
}
@media screen and (max-width: 749px) {
  .about__contents {
    background-image: url(/common/images/sp/about_bg_green.png);
    padding: 10.1694915254% 6.7796610169%;
    margin-top: 9.3220338983%;
  }
}
.about__hdg {
  margin-top: 7.1428571429%;
}
@media screen and (max-width: 749px) {
  .about__hdg {
    margin-top: 11.7647058824%;
  }
}
.about__steps {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  margin-top: 4.1666666667%;
}
@media screen and (max-width: 749px) {
  .about__steps {
    display: block;
    margin-top: 7.8431372549%;
  }
}
.about__step {
  width: 30.9523809524%;
}
@media screen and (max-width: 749px) {
  .about__step {
    width: 100%;
  }
}
.about__step:nth-child(n+2) {
  margin-left: 3.5714285714%;
}
@media screen and (max-width: 749px) {
  .about__step:nth-child(n+2) {
    margin: 7.8431372549% 0 0 0;
  }
}
.about__step-txts {
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
@media screen and (max-width: 1120px) {
  .about__step-num {
    max-width: 4.4642857143vw;
  }
}
@media screen and (max-width: 749px) {
  .about__step-num {
    max-width: 9.3333333333vw;
  }
}
.about__step-txt {
  margin-left: 3.8461538462%;
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.4166666667;
  letter-spacing: 0.04em;
  color: #fff;
}
@media screen and (max-width: 1120px) {
  .about__step-txt {
    font-size: 2.1428571429vw;
  }
}
@media screen and (max-width: 749px) {
  .about__step-txt {
    margin: -2.1568627451% 0 -2.1568627451% 3.9215686275%;
    font-size: 4.8vw;
    line-height: 1.6111111111;
  }
}
@media screen and (max-width: 749px) {
  .about__inner {
    background-image: url(/common/images/sp/about_bg_step_01.png);
    height: 68.2666666667vw;
  }
}
@media screen and (max-width: 749px) {
  .about__inner--02 {
    background-image: url(/common/images/sp/about_bg_step_02.png);
    height: 58.1333333333vw;
  }
}
@media screen and (max-width: 749px) {
  .about__inner--03 {
    background-image: url(/common/images/sp/about_bg_step_03.png);
    height: 55.3333333333vw;
  }
}
.about__inner-txt {
  margin: -6px 0;
  font-size: 1.8rem;
  line-height: 1.6666666667;
  letter-spacing: 0.04em;
  text-align: center;
}
@media screen and (max-width: 1120px) {
  .about__inner-txt {
    margin: -0.5357142857vw 0;
    font-size: 1.6071428571vw;
  }
}
@media screen and (max-width: 749px) {
  .about__inner-txt {
    margin: -1.2vw 0;
    font-size: 4vw;
    line-height: 1.6;
  }
}
.about__inner-small {
  font-size: 1.4rem;
}
@media screen and (max-width: 1120px) {
  .about__inner-small {
    font-size: 1.25vw;
  }
}
@media screen and (max-width: 749px) {
  .about__inner-small {
    font-size: 3.2vw;
  }
}
.about__inner-img-01 {
  margin-top: 9.0909090909%;
}
@media screen and (max-width: 749px) {
  .about__inner-img-01 {
    margin-top: 8.5106382979%;
  }
}
.about__inner-img-02 {
  margin-top: 9.0909090909%;
}
@media screen and (max-width: 749px) {
  .about__inner-img-02 {
    margin-top: 8.5106382979%;
  }
}
.about__list {
  margin-top: 3.9285714286%;
}
@media screen and (max-width: 749px) {
  .about__list {
    margin-top: 5.8823529412%;
  }
}
.about__item {
  font-size: 1.8rem;
  line-height: 1.6666666667;
  letter-spacing: 0.04em;
  padding-left: 1em;
  text-indent: -1em;
  color: #fff;
}
@media screen and (max-width: 749px) {
  .about__item {
    font-size: 4vw;
    line-height: 1.6;
  }
}
.about__item-sup {
  font-size: 60%;
}
.about__item-caution {
  display: inline-block;
  font-size: 1.4rem;
  line-height: 1.4285714286;
  text-indent: -1em;
  padding-left: 1em;
}
@media screen and (max-width: 749px) {
  .about__item-caution {
    margin-top: 0.9333333333vw;
    font-size: 3.2vw;
    line-height: 1.5833333333;
  }
}
.about__present {
  margin: 15px 0 20px;
}
@media screen and (max-width: 749px) {
  .about__present {
    margin: 4vw 0 4.6666666667vw;
  }
}
.about__present-hdg {
  border: 4px solid #ffffff;
  border-radius: 16px;
  padding: 15px 25px;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
@media screen and (max-width: 749px) {
  .about__present-hdg {
    border-width: 0.8vw;
    border-radius: 4vw;
    padding: 3.3333333333vw 2vw 4.6666666667vw;
    flex-direction: column;
  }
}
.about__present-txt {
  width: 630px;
  margin-right: 30px;
  font-size: 2rem;
  line-height: 1.4;
  letter-spacing: 0.04em;
  color: #ffffff;
}
@media screen and (max-width: 749px) {
  .about__present-txt {
    width: 100%;
    margin-right: 0;
    margin-bottom: 3.3333333333vw;
    font-size: 4vw;
    line-height: 1.4666666667;
    text-align: center;
  }
}
.about__present-logo {
  width: 118px;
}
@media screen and (max-width: 749px) {
  .about__present-logo {
    width: 28.5333333333vw;
  }
}
.about__present-list {
  margin-top: 15px;
}
@media screen and (max-width: 749px) {
  .about__present-list {
    margin-top: 3.3333333333vw;
  }
}
.about__present-item {
  font-size: 1.4rem;
  line-height: 1.4285714286;
  letter-spacing: 0.04em;
  color: #ffffff;
  text-indent: -1em;
  padding-left: 2em;
}
@media screen and (max-width: 749px) {
  .about__present-item {
    font-size: 3.2vw;
    line-height: 1.5833333333;
  }
}
.about__point {
  background-image: url(/common/images/about_bg_overview.png);
  background-repeat: no-repeat;
  background-position: top center;
  background-size: 100% 100%;
  height: 70px;
  margin-top: 1.7857142857%;
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.04em;
  color: #00aa7e;
}
@media screen and (max-width: 1120px) {
  .about__point {
    height: 6.25vw;
    font-size: 2.1428571429vw;
  }
}
@media screen and (max-width: 749px) {
  .about__point {
    background-image: url(/common/images/sp/about_bg_overview.png);
    height: 30.6666666667vw;
    margin-top: 6.4705882353%;
    padding-left: 3.9215686275%;
    font-size: 4.8vw;
    line-height: 1.6111111111;
    text-align: center;
  }
}
.about__img {
  margin-top: 4.7619047619%;
}
@media screen and (max-width: 749px) {
  .about__img {
    margin-top: 7.8431372549%;
  }
}

/* about:end */
.voice__item-txt--even, .voice__item-txt {
  max-width: 80.9523809524%;
  margin-top: -0.3571428571%;
  font-size: 1.8rem;
  color: #00aa7e;
  letter-spacing: 0.04em;
}
@media screen and (max-width: 1120px) {
  .voice__item-txt--even, .voice__item-txt {
    font-size: 1.6071428571vw;
  }
}
@media screen and (max-width: 749px) {
  .voice__item-txt--even, .voice__item-txt {
    max-width: 73.7288135593%;
    margin-top: -0.8474576271%;
    font-size: 4vw;
  }
}

/* voice:start */
.voice__container {
  background-image: url(/common/images/voice_bg.png);
  background-repeat: no-repeat;
  background-position: top center;
  background-size: 100% 100%;
  padding: 5.5555555556% 11.1111111111%;
  margin-top: 11.1111111111%;
}
@media screen and (max-width: 749px) {
  .voice__container {
    background-image: url(/common/images/sp/voice_bg.png);
    padding: 8vw 5.3333333333vw;
    margin-top: 17.9104477612%;
  }
}
.voice__list {
  margin-top: 7.1428571429%;
}
@media screen and (max-width: 749px) {
  .voice__list {
    margin-top: 9.4915254237%;
  }
}
.voice__item {
  max-width: 100%;
  height: 91px;
  background-image: url(/common/images/voice_bg_fukidashi_01.png);
  background-repeat: no-repeat;
  background-size: 100%;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
@media screen and (max-width: 1120px) {
  .voice__item {
    height: 8.125vw;
  }
}
@media screen and (max-width: 749px) {
  .voice__item {
    height: 32.1333333333vw;
    background-image: url(/common/images/sp/voice_bg_fukidashi_01.png);
  }
}
.voice__item:nth-child(even) {
  background-image: url(/common/images/voice_bg_fukidashi_02.png);
}
@media screen and (max-width: 749px) {
  .voice__item:nth-child(even) {
    background-image: url(/common/images/sp/voice_bg_fukidashi_02.png);
  }
}
@media screen and (min-width: 750px) {
  .voice__item:nth-child(3) {
    background-image: url(/common/images/voice_bg_fukidashi_03.png);
    height: 8.5714285714vw;
  }
}
@media screen and (min-width: 1121px) {
  .voice__item:nth-child(3) {
    height: 96px;
  }
}
.voice__item:nth-child(n+2) {
  margin-top: 2.380952381%;
}
@media screen and (max-width: 749px) {
  .voice__item:nth-child(n+2) {
    margin-top: 6.7796610169%;
  }
}
.voice__item-txt {
  margin-left: 30px;
  margin-right: auto;
}
@media screen and (max-width: 1120px) {
  .voice__item-txt {
    margin-left: 2.6785714286vw;
  }
}
@media screen and (max-width: 749px) {
  .voice__item-txt {
    margin-left: 2.6666666667vw;
  }
}
.voice__item-txt--even {
  margin-left: 130px;
  margin-right: auto;
}
@media screen and (max-width: 1120px) {
  .voice__item-txt--even {
    margin-left: 11.6071428571vw;
  }
}
@media screen and (max-width: 749px) {
  .voice__item-txt--even {
    margin-left: auto;
    margin-right: 2.6666666667vw;
  }
}
.voice__item-large {
  font-size: 2.4rem;
  font-weight: bold;
  background: linear-gradient(transparent 70%, #fff100 60%);
}
@media screen and (max-width: 1120px) {
  .voice__item-large {
    font-size: 2.1428571429vw;
  }
}
@media screen and (max-width: 749px) {
  .voice__item-large {
    font-size: 4.8vw;
  }
}
.voice__item-small {
  font-size: 1.4rem;
}
@media screen and (max-width: 1120px) {
  .voice__item-small {
    font-size: 1.25vw;
  }
}
@media screen and (max-width: 749px) {
  .voice__item-small {
    font-size: 3.2vw;
  }
}
.voice__caution {
  margin-top: 2.380952381%;
  font-size: 1.4rem;
  line-height: 1;
  letter-spacing: 0.1em;
  font-feature-settings: "palt";
}
@media screen and (max-width: 749px) {
  .voice__caution {
    margin-top: 3.3898305085%;
    font-size: 3.2vw;
  }
}
.voice__hdg {
  margin-top: 7.1428571429%;
}
@media screen and (max-width: 749px) {
  .voice__hdg {
    margin-top: 10.1694915254%;
  }
}
.voice__img {
  margin-top: 4.5238095238%;
}
@media screen and (max-width: 749px) {
  .voice__img {
    margin-top: 6.7796610169%;
  }
}

/* voice:end */
/* scene:start */
.scene__container {
  background-image: url(/common/images/scene_bg.png);
  background-repeat: no-repeat;
  background-position: top center;
  background-size: 100% 100%;
  padding: 5.5555555556% 7.4074074074%;
  margin-top: 11.1111111111%;
}
@media screen and (max-width: 749px) {
  .scene__container {
    background-image: url(/common/images/sp/scene_bg.png);
    padding: 8vw 5.3333333333vw;
    margin-top: 17.9104477612%;
  }
}
.scene__contents {
  background-image: url(/common/images/scene_bg_green.png);
  background-repeat: no-repeat;
  background-position: top center;
  background-size: 100% 100%;
  padding: 4.347826087% 2.7173913043%;
  margin-top: 6.5217391304%;
}
@media screen and (max-width: 749px) {
  .scene__contents {
    background-image: url(/common/images/sp/scene_bg_green.png);
    padding: 5.0847457627% 1.6949152542% 5.4237288136%;
    margin-top: 10.1694915254%;
  }
}
.scene__txt {
  margin: 2.2988505747% 1.724137931% 0;
  font-size: 1.4rem;
  line-height: 1;
  letter-spacing: 0.04em;
  color: #fff;
}
@media screen and (max-width: 749px) {
  .scene__txt {
    margin: 1.3333333333vw 0 0;
    padding: 0 6.6666666667vw 0 4vw;
    font-size: 3.2vw;
    line-height: 1.5833333333;
  }
}

/* scene:end */
/* movie:start */
.movie__container {
  margin-top: 11.1111111111%;
  padding: 0 7.4074074074%;
  text-align: center;
}
@media screen and (max-width: 749px) {
  .movie__container {
    margin-top: 17.9104477612%;
    padding: 0;
  }
}
.movie__img {
  border: 1px solid #231815;
}
@media screen and (max-width: 749px) {
  .movie__img {
    border-width: 0.2666666667vw;
  }
}
.movie__img-size {
  width: 100%;
  max-height: 100%;
}
.movie__modal {
  border: none;
  border-bottom: 1px solid #231815;
  background: none;
  padding-bottom: 6px;
  margin: 40px 0 0 38px;
  position: relative;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.04em;
}
@media screen and (max-width: 749px) {
  .movie__modal {
    padding-bottom: 1.3333333333vw;
    margin: 5.7333333333vw 0 0 8.9333333333vw;
    font-size: 3.7333333333vw;
  }
}
.movie__modal::before {
  content: "";
  background-image: url(/common/images/movie_icon.png);
  background-repeat: no-repeat;
  background-size: 100%;
  width: 24px;
  height: 24px;
  position: absolute;
  top: 50%;
  left: -32px;
  transform: translateY(-50%);
}
@media screen and (max-width: 749px) {
  .movie__modal::before {
    background-image: url(/common/images/sp/movie_icon.png);
    width: 6.1333333333vw;
    height: 6.1333333333vw;
    left: -7.3333333333vw;
  }
}

/* movie:end */
/* place:start */
.place__container {
  background-image: url(/common/images/place_bg.png);
  background-repeat: no-repeat;
  background-position: top center;
  background-size: 100% 100%;
  padding: 5.5555555556% 7.4074074074% 5.0925925926%;
  margin-top: 11.1111111111%;
}
@media screen and (max-width: 749px) {
  .place__container {
    background-image: url(/common/images/sp/place_bg.png);
    padding: 8vw 5.3333333333vw;
    margin-top: 17.9104477612%;
  }
}
.place__ttl {
  margin-bottom: 3.2608695652%;
}
@media screen and (max-width: 749px) {
  .place__ttl {
    margin-bottom: 3.3333333333vw;
  }
}
.place__box {
  width: 66.0869565217%;
  margin: 6.5217391304% auto 0;
}
@media screen and (max-width: 749px) {
  .place__box {
    width: 100%;
    margin-top: 8vw;
  }
}
.place__table {
  width: 100%;
  border: 2px solid #00aa7e;
  border-radius: 10px;
  border-spacing: 0;
  overflow: hidden;
}
@media screen and (max-width: 749px) {
  .place__table {
    border-width: 0.5333333333vw;
    border-radius: 2.6666666667vw;
  }
}
.place__table-group {
  text-align: center;
  font-size: 1.8rem;
  letter-spacing: 0.04em;
}
@media screen and (max-width: 1120px) {
  .place__table-group {
    font-size: 1.6071428571vw;
  }
}
@media screen and (max-width: 749px) {
  .place__table-group {
    font-size: 4vw;
  }
}
.place__table-num, .place__table-num--last {
  width: 16.059602649%;
  border-bottom: 2px solid #ffffff;
  background-color: #00aa7e;
  color: #ffffff;
}
@media screen and (max-width: 749px) {
  .place__table-num, .place__table-num--last {
    width: 9.3333333333vw;
    border-bottom-width: 0.5333333333vw;
  }
}
.place__table-num--last {
  border-bottom: none;
}
.place__table-prefecture, .place__table-prefecture--last {
  width: 27.3178807947%;
  border-right: 2px solid #00aa7e;
  border-bottom: 2px solid #00aa7e;
}
@media screen and (max-width: 749px) {
  .place__table-prefecture, .place__table-prefecture--last {
    width: 22vw;
    border-right-width: 0.5333333333vw;
    border-bottom-width: 0.5333333333vw;
  }
}
.place__table-prefecture--last {
  border-bottom: none;
}
.place__table-txt, .place__table-txt--last {
  width: 56.6225165563%;
  padding: 4.1390728477% 0 4.3046357616%;
  border-bottom: 2px solid #00aa7e;
}
@media screen and (max-width: 749px) {
  .place__table-txt, .place__table-txt--last {
    text-align: left;
    width: 46.6666666667vw;
    padding: 2.6666666667vw 2.6666666667vw 2.4vw;
    border-bottom-width: 0.5333333333vw;
    line-height: 1.6;
  }
}
.place__table-txt--last {
  border-bottom: none;
}
.place__note {
  margin-top: 2.4671052632%;
  text-indent: -1em;
  padding-left: 1em;
  font-size: 1.4rem;
  line-height: 1.5714285714;
  letter-spacing: 0.04em;
}
@media screen and (max-width: 1120px) {
  .place__note {
    font-size: 1.25vw;
  }
}
@media screen and (max-width: 749px) {
  .place__note {
    margin-top: 1.3333333333vw;
    font-size: 3.2vw;
    line-height: 1.5833333333;
  }
}

/* place:end */
/* flow:start */
.flow__container {
  background-image: url(/common/images/flow_bg.png);
  background-repeat: no-repeat;
  background-position: top center;
  background-size: 100% 100%;
  padding: 5.5555555556% 7.4074074074%;
  margin-top: 11.1111111111%;
}
@media screen and (max-width: 749px) {
  .flow__container {
    background-image: url(/common/images/sp/flow_bg.png);
    padding: 8vw 5.3333333333vw;
    margin-top: 17.9104477612%;
  }
}
.flow__txt {
  max-width: 783px;
  margin: 6.5217391304% auto 0;
}
@media screen and (max-width: 749px) {
  .flow__txt {
    max-width: 100%;
    margin-top: 10.1694915254%;
  }
}
.flow__note {
  max-width: 783px;
  margin: 1.6304347826% auto 0;
  font-size: 1.4rem;
  letter-spacing: 0.04em;
}
@media screen and (max-width: 749px) {
  .flow__note {
    font-size: 3.2vw;
    line-height: 1.5833333333;
    text-indent: -1em;
    padding-left: 1em;
  }
}

/* flow:end */
/* qa:start */
.qa__container {
  background-image: url(/common/images/qa_bg.png);
  background-repeat: no-repeat;
  background-position: top center;
  background-size: 100% 100%;
  padding: 5.5555555556% 7.4074074074%;
  margin-top: 11.1111111111%;
}
@media screen and (max-width: 749px) {
  .qa__container {
    background-image: url(/common/images/sp/qa_bg.png);
    padding: 8vw 5.3333333333vw;
    margin-top: 17.9104477612%;
  }
}
.qa__list {
  margin-top: 6.5217391304%;
}
@media screen and (max-width: 749px) {
  .qa__list {
    margin-top: 10.1694915254%;
  }
}
.qa__item {
  background-color: #fff;
  border: 4px solid #00aa7e;
  border-bottom: none;
  margin-top: 4.347826087%;
}
@media screen and (max-width: 749px) {
  .qa__item {
    border-width: 0.5333333333vw;
    margin-top: 6.7796610169%;
  }
}
.qa__item:first-child {
  margin-top: 0;
}
.qa__item-text {
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.4166666667;
  letter-spacing: 0.04em;
  color: #fff;
}
@media screen and (max-width: 749px) {
  .qa__item-text {
    font-size: 4.8vw;
    line-height: 1.6111111111;
  }
}
.qa__item-text-img {
  max-width: 20px;
  margin-right: 20px;
}
@media screen and (max-width: 749px) {
  .qa__item-text-img {
    max-width: 4.2666666667vw;
    margin-right: 2.6666666667vw;
  }
}
.qa__item-text-img > img {
  width: 20px;
  max-width: unset;
}
@media screen and (max-width: 749px) {
  .qa__item-text-img > img {
    width: 4.2666666667vw;
  }
}
.qa__item-question {
  background-color: #00aa7e;
  padding: 1.3157894737% 9.8684210526% 1.8640350877% 1.7543859649%;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  position: relative;
}
@media screen and (max-width: 749px) {
  .qa__item-question {
    padding: 0.5154639175% 9.6219931271% 1.2027491409% 2.5773195876%;
  }
}
.qa__item-answer {
  padding: 3.5087719298% 6.1403508772% 3.399122807%;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  font-size: 1.8rem;
  line-height: 1.6666666667;
  letter-spacing: 0.04em;
}
@media screen and (max-width: 749px) {
  .qa__item-answer {
    padding: 5.1546391753% 9.6219931271% 3.9518900344%;
    font-size: 4vw;
    line-height: 1.6;
  }
}

/* qa:end */
/* tokushoho:start */
.tokushoho__container {
  background-image: url(/common/images/place_bg.png);
  background-repeat: no-repeat;
  background-position: top center;
  background-size: 100% 100%;
  padding: 5.5555555556%;
  margin-top: 11.1111111111%;
}
@media screen and (max-width: 749px) {
  .tokushoho__container {
    background-image: url(/common/images/sp/place_bg.png);
    padding: 8vw 5.3333333333vw;
    margin-top: 17.9104477612%;
  }
}
.tokushoho__ttl {
  max-width: 920px;
  margin: auto;
}
@media screen and (max-width: 749px) {
  .tokushoho__ttl {
    max-width: 100%;
  }
}
.tokushoho__box {
  width: 100%;
  margin: 6.25% auto 0;
}
@media screen and (max-width: 749px) {
  .tokushoho__box {
    width: 100%;
    margin-top: 8vw;
  }
}
.tokushoho__table {
  width: 100%;
  border: 2px solid #00aa7e;
  border-radius: 10px;
  border-spacing: 0;
  overflow: hidden;
  width: 100%;
  table-layout: fixed;
}
@media screen and (max-width: 749px) {
  .tokushoho__table {
    border-width: 0.5333333333vw;
    border-radius: 2.6666666667vw;
  }
}
.tokushoho__table-group {
  font-size: 1.8rem;
  letter-spacing: 0.04em;
}
@media screen and (max-width: 1120px) {
  .tokushoho__table-group {
    font-size: 1.6071428571vw;
  }
}
@media screen and (max-width: 749px) {
  .tokushoho__table-group {
    font-size: 4vw;
  }
}
.tokushoho__table-ttl, .tokushoho__table-ttl--03, .tokushoho__table-ttl--02, .tokushoho__table-ttl--last {
  width: 25.9414225941%;
  padding: 2.8242677824% 0 2.9288702929%;
  border-bottom: 2px solid #ffffff;
  background-color: #00aa7e;
  color: #ffffff;
  line-height: 1;
  vertical-align: top;
}
@media screen and (max-width: 749px) {
  .tokushoho__table-ttl, .tokushoho__table-ttl--03, .tokushoho__table-ttl--02, .tokushoho__table-ttl--last {
    width: 38.8316151203%;
    border-bottom-width: 0.5333333333vw;
    line-height: 1.4;
  }
}
@media screen and (max-width: 749px) {
  .tokushoho__table-ttl--02, .tokushoho__table-ttl--last {
    text-align: left;
    padding-left: 5.3333333333vw;
  }
}
@media screen and (max-width: 749px) {
  .tokushoho__table-ttl--03 {
    text-align: left;
    padding-left: 3.0666666667vw;
  }
}
.tokushoho__table-ttl--last {
  border: none;
}
@media screen and (max-width: 749px) {
  .tokushoho__table-ttl--last {
    text-align: left;
    padding-left: 5.3333333333vw;
  }
}
.tokushoho__table-txt, .tokushoho__table-txt--last {
  width: 74.0585774059%;
  padding: 2.510460251% 4.1841004184% 2.4058577406%;
  border-bottom: 2px solid #00aa7e;
  background-color: #ffffff;
  line-height: 1.6666666667;
}
@media screen and (max-width: 749px) {
  .tokushoho__table-txt, .tokushoho__table-txt--last {
    text-align: left;
    width: 41.8666666667vw;
    padding: 2.6666666667vw 2.6666666667vw 2.4vw;
    border-bottom-width: 0.5333333333vw;
    line-height: 1.6;
  }
}
.tokushoho__table-txt--last {
  border: none;
}
.tokushoho__table-link {
  color: #000;
  text-decoration: none;
  word-wrap: break-word;
}
.tokushoho__list {
  margin-top: 4.7770700637%;
}
@media screen and (max-width: 749px) {
  .tokushoho__list {
    margin-top: 6.6666666667vw;
  }
}
.tokushoho__list-item {
  padding-left: 1em;
  text-indent: -1em;
}
.tokushoho__list-caution {
  display: block;
  font-size: 14px;
  line-height: 1.5714285714;
  padding-left: 1em;
}
@media screen and (max-width: 749px) {
  .tokushoho__list-caution {
    font-size: 3.2vw;
    line-height: 1.5833333333;
  }
}
.tokushoho__refund {
  padding-bottom: 10px;
}
@media screen and (max-width: 749px) {
  .tokushoho__refund {
    margin-bottom: -2.6666666667vw;
  }
}
.tokushoho__refund-item:nth-child(n+2) {
  margin-top: 4.7770700637%;
}
@media screen and (max-width: 749px) {
  .tokushoho__refund-item:nth-child(n+2) {
    margin-top: 6vw;
  }
}

/* tokushoho:end */
.modal__close::after, .modal__close::before {
  content: "";
  width: 4px;
  height: 30px;
  background: #231815;
  position: absolute;
  top: 50%;
  right: 50%;
}
@media screen and (max-width: 1120px) {
  .modal__close::after, .modal__close::before {
    width: 0.3571428571vw;
    height: 2.6785714286vw;
  }
}
@media screen and (max-width: 749px) {
  .modal__close::after, .modal__close::before {
    width: 1.0666666667vw;
    height: 8vw;
  }
}

/* modal:start */
.modal {
  position: relative;
  z-index: 100;
}
.modal__area {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10;
  width: 100%;
  height: 100%;
  /* flex */
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.modal__contents {
  background-image: url(/common/images/modal_bg.png);
  background-repeat: no-repeat;
  background-size: 100%;
  max-width: 95%;
  width: 1000px;
  height: 575px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  position: relative;
  z-index: 12;
}
@media screen and (max-width: 1120px) {
  .modal__contents {
    width: 89.2857142857vw;
    height: 51.3392857143vw;
  }
}
@media screen and (max-width: 749px) {
  .modal__contents {
    background-image: url(/common/images/sp/modal_bg.png);
    width: 89.3333333333vw;
    height: 151.3333333333vw;
    padding: 10.6666666667vw 5.3333333333vw;
    display: block;
  }
}
.modal__close {
  display: block;
  width: 30px;
  height: 30px;
  border: none;
  background: none;
  position: absolute;
  top: 40px;
  right: 33px;
}
@media screen and (max-width: 1120px) {
  .modal__close {
    width: 2.6785714286vw;
    height: 2.6785714286vw;
    top: 3.5714285714vw;
    right: 3.5714285714vw;
  }
}
@media screen and (max-width: 749px) {
  .modal__close {
    width: 6.4vw;
    height: 6.4vw;
    top: 5.3333333333vw;
    right: 5.3333333333vw;
  }
}
.modal__close::before {
  transform: translate(-50%, -50%) rotate(45deg);
}
.modal__close::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}
.modal__inner {
  display: flex;
  align-items: center;
}
@media screen and (max-width: 749px) {
  .modal__inner {
    display: block;
  }
}
@media screen and (max-width: 1120px) {
  .modal__inner-img {
    max-width: 25.9821428571vw;
  }
}
@media screen and (max-width: 749px) {
  .modal__inner-img {
    max-width: 78.6666666667vw;
  }
}
.modal__inner-txts {
  margin: 5px 15px 0 80px;
}
@media screen and (max-width: 1120px) {
  .modal__inner-txts {
    margin: 0.4464285714vw 1.3392857143vw 0 7.1428571429vw;
  }
}
@media screen and (max-width: 749px) {
  .modal__inner-txts {
    margin: 5.3333333333vw 0 0 0;
  }
}
.modal__inner-ttl {
  max-width: 312px;
}
@media screen and (max-width: 1120px) {
  .modal__inner-ttl {
    max-width: 27.8571428571vw;
  }
}
@media screen and (max-width: 749px) {
  .modal__inner-ttl {
    max-width: 100%;
  }
}
.modal__inner-txt {
  margin-top: 35px;
  font-size: 1.6rem;
  line-height: 1.625;
  letter-spacing: 0.04em;
}
@media screen and (max-width: 1120px) {
  .modal__inner-txt {
    margin-top: 3.125vw;
    font-size: 1.4285714286vw;
  }
}
@media screen and (max-width: 749px) {
  .modal__inner-txt {
    margin-top: 5.0847457627%;
    font-size: 3.7333333333vw;
    line-height: 1.5714285714;
  }
}
.modal__inner-txt + .modal__inner-txt {
  margin-top: 25px;
}
@media screen and (max-width: 1120px) {
  .modal__inner-txt + .modal__inner-txt {
    margin-top: 2.2321428571vw;
  }
}
@media screen and (max-width: 749px) {
  .modal__inner-txt + .modal__inner-txt {
    margin-top: 7.6271186441%;
  }
}
.modal__bg {
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.4);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 11;
}

/* modal:end */
/* footer:start */
.footer__container {
  background-color: #fff;
  padding: 80px 0;
  text-align: center;
}
@media screen and (max-width: 1120px) {
  .footer__container {
    padding: 7.1428571429vw 0;
  }
}
@media screen and (max-width: 749px) {
  .footer__container {
    padding: 10vw 0 11.3333333333vw;
  }
}
.footer__breadcrumb {
  width: 600px;
  margin: 0 auto;
  display: flex;
  font-size: 1.6rem;
  line-height: 1;
  letter-spacing: 0.04em;
}
@media screen and (max-width: 749px) {
  .footer__breadcrumb {
    width: 54.6666666667%;
    flex-direction: column;
    font-size: 3.7333333333vw;
    text-align: left;
  }
}
.footer__breadcrumb-item {
  position: relative;
  padding-left: 17px;
}
@media screen and (max-width: 749px) {
  .footer__breadcrumb-item {
    padding-left: 4vw;
  }
}
.footer__breadcrumb-item::before {
  content: "";
  width: 10px;
  height: 10px;
  border: 2px solid currentColor;
  border-left: 0;
  border-bottom: 0;
  box-sizing: border-box;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(-25%, -50%) rotate(45deg);
}
@media screen and (max-width: 749px) {
  .footer__breadcrumb-item::before {
    width: 2.1333333333vw;
    height: 2.1333333333vw;
    border-width: 0.5333333333vw;
  }
}
.footer__breadcrumb-item:not(:last-of-type) {
  padding-right: 40px;
}
@media screen and (max-width: 749px) {
  .footer__breadcrumb-item:not(:last-of-type) {
    padding-right: 0;
    margin-bottom: 3.3333333333vw;
  }
}
.footer__breadcrumb-link {
  color: #231815;
  text-decoration: none;
}
.footer__privacy-policy {
  display: inline-block;
  color: #231815;
  text-decoration: none;
  position: relative;
}
.footer__privacy-policy::after {
  content: "";
  position: absolute;
  width: 12px;
  height: 12px;
  margin-left: 5px;
  margin-top: 3px;
  background: url(/common/images/footer_icon_pc.png);
  background-size: 100%;
}
@media screen and (max-width: 749px) {
  .footer__privacy-policy::after {
    width: 2.6666666667vw;
    height: 2.6666666667vw;
    margin-left: 1.3333333333vw;
    margin-top: 0.6666666667vw;
    background: url(/common/images/footer_icon_sp.png);
    background-size: 100%;
  }
}
.footer__copyright {
  margin-top: 38px;
  font-size: 1.4rem;
  line-height: 1;
  letter-spacing: 0.04em;
}
@media screen and (max-width: 749px) {
  .footer__copyright {
    margin-top: 8vw;
    font-size: 3.2vw;
  }
}

/* footer:end */