@charset "UTF-8";
html {
  font-size: 10px;
  overflow-y: scroll
}
body {
  font-family: YakuHanJP, Noto Sans JP, Hiragino Sans, ヒラギノ角ゴ ProN W6, ヒラギノ角ゴ Pro W6, Hiragino Kaku Gothic Pro, メイリオ, Meiryo, ＭＳ Ｐゴシック, ＭＳ ゴシック, sans-serif;
  font-size: min(3.7333333333vw, 1.6rem);
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.75;
  -webkit-text-size-adjust: 100%;
  color: #231815;
	width: 100%;
}
.main{width: 100%;}
a {
  cursor: pointer;
  transition: all .2s ease;
  user-select: none;
  -moz-user-select: none;
  -webkit-user-select: none
}
@media (any-hover: hover) {
  a:hover {
    opacity: .7
  }
}
@media (min-width: 768px) {
  a[href*="tel:"] {
    pointer-events: none;
    cursor: default;
    text-decoration: none
  }
}
img {
  max-width: 100%;
  height: auto;
  vertical-align: middle
}
@media (max-width: 375px) {
  .hp_xs_none {
    display: none !important
  }
}
@media (max-width: 767px) {
  .hp_sm_none {
    display: none !important
  }
}
@media (min-width: 768px) {
  .hp_md_none {
    display: none !important
  }
}
@media (min-width: 992px) {
  .hp_lg_none {
    display: none !important
  }
}
@media (max-width: 991px) {
  .hp_lg_max_none {
    display: none !important
  }
}
@media (min-width: 1030px) {
  .hp_xl_none {
    display: none !important
  }
}
@media (max-width: 1029px) {
  .hp_xl_max_none {
    display: none !important
  }
}
.hp_c_base {
  color: #231815 !important
}
.hp_bc_base {
  background-color: #231815 !important
}
.hp_c_white {
  color: #fff !important
}
.hp_bc_white {
  background-color: #fff !important
}
.hp_c_key {
  color: #ee7800 !important
}
.hp_bc_key {
  background-color: #ee7800 !important
}
.hp_c_accent {
  color: #005085 !important
}
.hp_bc_accent {
  background-color: #005085 !important
}
.hp_c_accent_light {
  color: #33739d !important
}
.hp_bc_accent_light {
  background-color: #33739d !important
}
.hp_c_caution {
  color: #d93940 !important
}
.hp_bc_caution {
  background-color: #d93940 !important
}
.hp_c_caution_light {
  color: #eb6d56 !important
}
.hp_bc_caution_light {
  background-color: #eb6d56 !important
}
.hp_c_link {
  color: #00f !important
}
.hp_bc_link {
  background-color: #00f !important
}
.hp_c_bg {
  color: #fcdec6 !important
}
.hp_bc_bg {
  background-color: #fcdec6 !important
}
.hp_c_bg_2 {
  color: #fffbc7 !important
}
.hp_bc_bg_2 {
  background-color: #fffbc7 !important
}
.hp_c_bg_3 {
  color: #e6e6e6 !important
}
.hp_bc_bg_3 {
  background-color: #e6e6e6 !important
}
.hp_d_b {
  display: block !important
}
.hp_d_ib {
  display: inline-block !important
}
.hp_d_f {
  display: flex !important
}
.hp_d_if {
  display: inline-flex !important
}
.hp_d_g {
  display: grid !important
}
.hp_d_ig {
  display: inline-grid !important
}
.hp_d_dn {
  display: none !important
}
.hp_fw_l {
  font-weight: 300 !important
}
.hp_fw_n {
  font-weight: 400 !important
}
.hp_fw_b {
  font-weight: 700 !important
}
.hp_fw_bl {
  font-weight: 900 !important
}
.hp_ta_l {
  text-align: left !important
}
.hp_ta_c {
  text-align: center !important
}
.hp_ta_r {
  text-align: right !important
}
.inner {
  width: 89.3333%;
  max-width: 974px;
  margin-inline: auto
}
.indent {
  display: flex
}
.indent *:first-child {
  flex-shrink: 0
}
.js_fadeIn {
  visibility: hidden;
  opacity: 0;
  translate: 0 50px
}
.js_fadeIn.is_active {
  visibility: visible;
  opacity: 1;
  translate: 0
}
.text {
  font-size: min(3.2vw, 2rem);
  line-height: 1.3666666667;
  letter-spacing: -.025em;
  text-align: justify
}
@media (min-width: 768px) {
	body{width: 840px;}
	.main{width: 840px;}
  .text {
    line-height: 1.4
  }
}
.text .s {
  font-size: 60%
}
.noteList {
  display: flex;
  flex-wrap: wrap;
  gap: 0 10px
}
.note {
  line-height: 1.4;
  font-size: min(2.4vw, 1.6rem)
}
.note .s {
  font-size: 60%
}
.image {
  text-align: center
}
.ctaBtn {
  display: block;
  width: fit-content;
  margin-inline: auto
}
.asterisk {
  display: inline-block;
  margin-bottom: 2px;
  margin-right: 2px
}
@media (max-width: 767px) {
  .asterisk {
    width: 1.0666666667vw
  }
}
.main {
  padding-bottom: 0;
}
.main:has(.cta_box a+a) {
  padding-bottom: min(58.6666666667vw, 125px)
}
@media (min-width: 768px) {
  .main:has(.cta_box a+a) {
    padding-bottom: min(37.3333333333vw, 45px)
  }
}
a.pagetop {
  position: fixed;
  bottom: 290px;
  right: 20px
}
@media (max-width: 767px) {
  a.pagetop {
    position: fixed;
    bottom: 175px;
    right: 10px
  }
  a.pagetop img {
    width: 45px;
    height: 45px
  }
}
.mv {
  position: relative;
  max-width: 840px;
  aspect-ratio: 375/512;
  margin-inline: auto;
	margin: 0;
}
@media (min-width: 768px) {
  .mv {
    aspect-ratio: 1030/535
  }
}
.mv_bg {
  position: absolute;
  inset: auto 0 0;
  z-index: 0;
  margin: auto
}
@media (min-width: 768px) {
  .mv_bg {
    top: 0;
    right: 0;
    bottom: 0;
    left: 0
  }
}
.mv_bg img {
  width: 100%
}
.mv_contents {
  position: relative;
  width: fit-content;
  padding-top: 8.5333333333vw;
  margin-inline: auto
}
@media (min-width: 768px) {
  .mv_contents {
    width: min(29.6116504854vw, 305px);
    padding-top: min(9.4174757282vw, 97px);
    margin-left: 40px
  }
}
@media (max-width: 767px) {
  .mv_contents_imgbox {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px
  }
}
.mv_new {
  width: 20.2666666667vw
}
@media (min-width: 768px) {
  .mv_new {
    position: absolute;
    top: 45px;
    left: .8vw;
    width: min(11.8446601942vw, 122px);
    top: min(2.427184466vw, 25px);
    left: min(1.4563106796vw, 15px)
  }
}
.mv_new img {
  width: 100%
}
.mv_new.is_show {
  visibility: visible
}
.mv_logo {
  width: 31.4666666667vw
}
@media (min-width: 768px) {
  .mv_logo {
    width: min(27.2815533981vw, 281px)
  }
}
.mv_text {
  margin-top: 4vw;
  font-size: 7.4666666667vw;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: .05em;
  color: #a37942;
  text-align: center
}
@media (min-width: 768px) {
  .mv_text {
    margin-top: 20px;
    text-align: left;
    font-size: min(4.4660194175vw, 46px)
  }
}
.mv_text .s {
  font-size: 75%;
  letter-spacing: 0
}
.cta_box {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 15px
}
@media (min-width: 768px) {
  .cta_box {
    flex-direction: row;
    gap: 26px
  }
}
.firstsecbox {
  position: relative;
  background: #fcdec6;
  padding: 42px 0 40px;
  margin-bottom: 18.1333333333vw
}
@media (min-width: 768px) {
  .firstsecbox {
    padding: 50px 0 40px;
    margin-bottom: 114px
  }
}
.firstsecbox:before {
  content: "";
  position: absolute;
  bottom: -9.8666666667vw;
  left: 0;
  right: 0;
  margin: auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 13.8666666667vw solid transparent;
  border-left: 13.8666666667vw solid transparent;
  border-top: 10.1333333333vw solid #fcdec6;
  border-bottom: 0
}
@media (min-width: 768px) {
  .firstsecbox:before {
    bottom: -75px;
    border-right: 100px solid transparent;
    border-left: 100px solid transparent;
    border-top: 76px solid #fcdec6
  }
}
.firstsecbox .image {
  margin-top: 50px
}
.thirdsecbox {
  background-color: #fcdec6;
  padding: 10px 0 47px
}
.point {
  position: relative;
  background-color: #fff;
  border-radius: 5px;
  padding: 15px 20px;
  margin-top: 12vw
}
@media (min-width: 768px) {
  .point {
    border-radius: 12px;
    padding: 45px 40px
  }
}
@media (min-width: 768px) {
  .point {
    margin-top: 24px
  }
}
.point .noteList {
  margin-top: 10px
}
@media (min-width: 768px) {
  .point .noteList {
    margin-top: 20px
  }
}
@media (min-width: 768px) {
  .point.point_1 {
    padding-bottom: 25px
  }
}
@media (max-width: 767px) {
  .point.point_1 .point_title {
    width: 75.4666666667vw
  }
}
@media (min-width: 768px) {
  .point.point_2 {
    padding-bottom: 10px
  }
}
@media (min-width: 768px) {
  .point.point_2 .point_txtbox {
    margin-top: -15px
  }
}
@media (max-width: 767px) {
  .point.point_2 .point_title {
    width: 62.1333333333vw
  }
}
.point.point_2 .point_check_box .note span + span {
  margin-left: 3px
}
@media (min-width: 768px) {
  .point.point_3 {
    padding-bottom: 30px
  }
}
.point.point_3 .note {
  letter-spacing: -.03em
}
@media (max-width: 767px) {
  .point.point_3 .point_title {
    width: 71.4666666667vw
  }
}
@media (min-width: 768px) {
  .point_titbox {
    display: flex;
    gap: 38px
  }
}
.point_num {
  text-align: center
}
@media (max-width: 767px) {
  .point_num {
    width: 7.4666666667vw;
    margin-top: -10.1333333333vw;
    margin-inline: auto;
    margin-bottom: 5.3333333333vw
  }
}
@media (min-width: 768px) {
  .point_num {
    flex: 0 0 auto
  }
}
.point_title {
  margin-inline: auto
}
.point_check {
  padding: 15px 10px;
  background-color: #fffbe3;
  border-radius: 5px;
  margin-top: 30px
}
@media (min-width: 768px) {
  .point_check {
    padding: 28px 20px 35px 28px;
    margin-top: 35px;
    border-radius: 12px
  }
}
.point_check_item {
  position: relative;
  display: flex;
  gap: 10px
}
@media (min-width: 768px) {
  .point_check_item {
    gap: 35px
  }
}
.point_check_item + .point_check_item {
  margin-top: 2.6666666667vw;
  padding-top: 2.6666666667vw
}
@media (min-width: 768px) {
  .point_check_item + .point_check_item {
    margin-top: 20px;
    padding-top: 20px
  }
}
.point_check_item + .point_check_item:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: radial-gradient(circle, #000 5%, transparent 25%);
  background-size: 3px 3px;
  background-repeat: repeat-x;
  height: 3px;
  width: 100%
}
@media (min-width: 768px) {
  .point_check_item + .point_check_item:before {
    height: 8px;
    background-size: 8px 8px
  }
}
@media (max-width: 767px) {
  .point_check_item:nth-of-type(1) .point_check_icon {
    margin-top: 3.4666666667vw
  }
}
.point_check_item:nth-of-type(2) {
  align-items: center
}
@media (max-width: 767px) {
  .point_check_item:nth-of-type(2) .point_check_title {
    letter-spacing: -.04em
  }
}
.point_check_icon {
  flex: 0 0 auto
}
@media (max-width: 767px) {
  .point_check_icon {
    width: 4.8vw
  }
}
.point_check_title {
  font-size: min(3.2vw, 2.5rem);
  font-weight: 500;
  line-height: 1.4
}
.point_check_title span {
  font-size: 120%;
  font-weight: 700
}
.point_check_title sup {
  font-size: 70%;
  vertical-align: super
}
.point_check_title .asterisk {
  margin-left: 3px
}
.point_check_tag_list {
  display: flex;
  gap: 2px;
  flex-wrap: wrap;
  margin-top: 5px
}
@media (min-width: 768px) {
  .point_check_tag_list {
    margin-top: 10px;
    gap: 10px
  }
}
.point_check_tag_item {
  border: 1px solid #000;
  background-color: #fff;
  border-radius: 4px;
  padding: 0 4px;
  letter-spacing: 0;
  font-size: min(2.1333333333vw, 1.5rem);
  font-weight: 500
}
@media (min-width: 768px) {
  .point_check_tag_item {
    letter-spacing: -.04em;
    padding: 5px 12px;
    border-radius: 8px
  }
}
.point_check .noteList {
  margin-top: 5px
}
@media (min-width: 768px) {
  .point_check .noteList {
    margin-top: 0
  }
}
.point_caution {
  display: flex;
  align-items: center;
  gap: 4px;
  margin-top: 10px
}
@media (min-width: 768px) {
  .point_caution {
    gap: 10px
  }
}
@media (max-width: 767px) {
  .point_caution_icon {
    width: 7.2vw
  }
}
.point_caution .small {
  font-size: 60%;
  margin-top: .8vw
}
@media (min-width: 768px) {
  .point_caution .small {
    margin-top: 5px
  }
}
.point_text {
  margin-top: 23px;
  font-size: min(3.2vw, 2.5rem);
  font-weight: 500;
  line-height: 1.4
}
@media (min-width: 768px) {
  .point_text {
    margin-top: 45px
  }
}
.exsample {
  margin-bottom: 40px
}
.exsample dl {
  display: grid;
  grid-template-columns: min(14.6666666667vw, 120px) 1fr;
  margin-bottom: 20px
}
@media (min-width: 768px) {
  .exsample dl {
    margin-bottom: 45px
  }
}
.exsample dt {
  position: relative;
  border-left: 1px solid #000;
  border-right: 1px solid #000;
  text-align: center;
  font-size: min(2.4vw, 2rem);
  font-weight: 500;
  display: flex;
  align-items: center;
  justify-content: center
}
.exsample dt:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 95%;
  height: 1px;
  background-color: #000
}
.exsample dt:after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 95%;
  height: 1px;
  background-color: #000
}
.exsample dd {
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  margin-left: 3px;
  padding: 5px 3px;
  line-height: 1.1;
  font-size: min(2.4vw, 2rem)
}
@media (min-width: 768px) {
  .exsample dd {
    margin-left: 7px;
    padding: 10px 5px
  }
}
.exsample dd .big {
  font-size: 150%;
  font-weight: 500
}
.exsample dd .male {
  display: inline-block;
  background-color: #a1cbed;
  padding: 2px 5px;
  margin-right: 2px;
  font-weight: 500;
  font-size: min(2.1333333333vw, 1.8rem)
}
@media (min-width: 768px) {
  .exsample dd .male {
    margin-right: 4px
  }
}
.exsample dd .womale {
  display: inline-block;
  background-color: #f5b2b2;
  padding: 2px 5px;
  margin-right: 4px;
  font-weight: 500;
  font-size: min(2.1333333333vw, 1.8rem)
}
.exsample dd .small {
  position: relative;
  top: -.2666666667vw;
  display: inline-block;
  font-size: 60%
}
@media (min-width: 768px) {
  .exsample dd .small {
    top: -2px
  }
}
.exsample_sex {
  margin-bottom: 4px
}
@media (min-width: 768px) {
  .exsample_sex {
    margin-bottom: 8px
  }
}
.exsample_img {
  text-align: center
}
.exsample02 {
  position: relative;
  border-radius: 5px;
  background-color: #fff;
  padding: 0;
  margin-bottom: 20px
}
@media (min-width: 768px) {
  .exsample02 {
    border-radius: 12px;
    padding: 45px 40px
  }
}
@media (min-width: 768px) {
  .exsample02 {
    padding: 0;
    margin-bottom: 24px
  }
}
.exsample02_title {
  font-size: min(2.6666666667vw, 2rem);
  margin-bottom: 10px
}
@media (min-width: 768px) {
  .exsample02_title {
    margin-bottom: 10px
  }
}
.exsample02_img {
  position: relative;
  background-color: #fff;
  border-radius: 5px;
  padding: 15px 20px 60px
}
@media (min-width: 768px) {
  .exsample02_img {
    border-radius: 12px;
    padding: 45px 40px
  }
}
.exsample02_img img {
  width: 100%
}
.exsample02_caution {
  background-color: #fff;
  border-radius: 0 0 5px 5px;
  padding: 15px 20px;
  position: relative;
  background-color: #fffbe3
}
@media (min-width: 768px) {
  .exsample02_caution {
    border-radius: 12px;
    padding: 45px 40px
  }
}
@media (max-width: 767px) {
  .exsample02_caution {
    padding-bottom: 10px;
    padding-top: 5.3333333333vw
  }
}
@media (min-width: 768px) {
  .exsample02_caution {
    padding-bottom: 20px
  }
}
.exsample02_caution_title {
  position: absolute;
  top: -3.2vw;
  left: 0;
  background-color: #8c502b;
  color: #fff;
  font-weight: 800;
  font-size: min(2.9333333333vw, 2.2rem);
  padding: 2px 20px 2px 10px;
  border-top-right-radius: 100vmax;
  border-bottom-right-radius: 100vmax
}
@media (min-width: 768px) {
  .exsample02_caution_title {
    padding: 5px 40px 5px 20px;
    top: -22px
  }
}
.exsample02_caution_title img {
  display: inline-block;
  margin-top: -20px;
  margin-right: 5px
}
@media (max-width: 767px) {
  .exsample02_caution_title img {
    margin-top: -2.6666666667vw;
    margin-right: 10px;
    width: 6.4vw
  }
}
.exsample02_caution .note span:first-of-type {
  color: #8c502b;
  margin-right: 3px;
  font-size: 70%;
  margin-top: .5333333333vw
}
@media (min-width: 768px) {
  .exsample02_caution .note span:first-of-type {
    margin-top: 4px
  }
}
.cost {
  position: relative;
  background-color: #fff;
  padding: 15px 20px;
  border-radius: 0;
  margin-bottom: 20px
}
@media (min-width: 768px) {
  .cost {
    border-radius: 12px;
    padding: 45px 40px
  }
}
@media (min-width: 768px) {
  .cost {
    margin-bottom: 24px
  }
}
.agreement {
  position: relative;
  background-color: #fff;
  padding: 15px 20px;
  border-radius: 0
}
@media (min-width: 768px) {
  .agreement {
    border-radius: 12px;
    padding: 45px 40px
  }
}
@media (min-width: 768px) {
  .agreement {
    padding-top: 30px;
    padding-bottom: 30px;
    margin-bottom: 24px
  }
}
.agreement_item + .agreement_item {
  margin-top: 15px
}
@media (min-width: 768px) {
  .agreement_item + .agreement_item {
    margin-top: 40px
  }
}
.agreement_title {
  font-size: min(3.7333333333vw, 2.8rem);
  font-weight: 800;
  color: #8c502b;
  margin-bottom: 10px
}
@media (min-width: 768px) {
  .agreement_title {
    margin-bottom: 25px
  }
}
.agreement_item_title {
  font-size: min(2.9333333333vw, 2.4rem);
  font-weight: 800;
  color: #fff;
  background-color: #8c502b;
  border-radius: 6px;
  padding: 3px 10px;
  margin-bottom: 8px
}
@media (min-width: 768px) {
  .agreement_item_title {
    padding: 5px 20px;
    margin-bottom: 20px
  }
}
.agreement_item_subtitle {
  font-size: min(3.2vw, 2.6rem);
  font-weight: 500;
  margin-bottom: 5px;
  letter-spacing: -.06em
}
@media (min-width: 768px) {
  .agreement_item_subtitle {
    margin-bottom: 10px
  }
}
.agreement_item_text {
  margin-bottom: 5px;
  font-size: min(2.4vw, 2rem)
}
@media (min-width: 768px) {
  .agreement_item_text {
    margin-bottom: 10px
  }
}
.sectionFoot {
  margin-top: 20px
}
@media (min-width: 768px) {
  .sectionFoot {
    margin-top: 18px
  }
}
.sectionFoot .note {
  letter-spacing: -.04em
}
.noteList_2 {
  margin-top: 19px
}
@media (min-width: 768px) {
  .noteList_2 {
    margin-top: 50px
  }
}
.noteList_2 .note {
  font-size: min(2.4vw, 2rem);
  line-height: min(3.7333333333vw, 28px)
}
@media (min-width: 768px) {
  .noteList_2 .note {
    letter-spacing: -.02em
  }
}
.copyright {
  margin-top: 4px;
  display: block;
  text-align: right;
  font-size: min(2.4vw, 2rem);
  line-height: min(3.7333333333vw, 23.6px);
  letter-spacing: 0
}
@media (min-width: 768px) {
  .copyright {
    margin-top: 33px
  }
}
.gotop {
  display: block;
  width: fit-content;
  margin-top: min(.8vw, 7px);
  margin-left: auto;
  font-size: min(3.7333333333vw, 2.4rem);
  text-decoration: underline;
  color: #00f
}
.footer {
  position: fixed;
  bottom: 0;
  left: 0;
  display: grid;
  place-content: center;
  width: 100%;
  height: min(32vw, 125px);
  background-color: #e6e6e6cc;
  visibility: hidden;
  opacity: 0;
  transition: .3s
}
.footer:has(.cta_box a+a) {
  height: min(53.3333333333vw, 205px)
}
@media (min-width: 768px) {
  .footer:has(.cta_box a+a) {
    height: min(32vw, 125px)
  }
}
.footer.is_show {
  visibility: visible;
  opacity: 1
}