@charset "UTF-8";
/*! Writen  by SCSS */
body {
  font-family: YakuHanMP,"Zen Old Mincho","Hiragino Mincho ProN","Yu Mincho","游明朝",YuMincho,"游明朝体","ヒラギノ明朝 Pro W3","Hiragino Mincho Pro","HGS明朝E","ＭＳ Ｐ明朝",serif; }

img.wide_image {
  width: 100%; }

.inner {
  max-width: 960px;
  width: calc(100% - 40px);
  margin: 0 auto; }

.flex {
  display: flex;
  justify-content: space-between; }

.flex_wrap {
  flex-wrap: wrap; }

.flex_rr {
  flex-direction: row-reverse; }

.pos_r {
  position: relative; }

.pos_a {
  position: absolute; }

.sec_lead {
  font-size: clamp(20px, 3.54vw, 34px);
  line-height: 1; }
  @media screen and (max-width: 480px) {
    .sec_lead {
      line-height: 1.4; } }

.lead {
  font-size: clamp(18px, 2.81vw, 27px); }

.read {
  font-size: clamp(14px, 1.77vw, 17px);
  line-height: 2.12; }
  @media screen and (max-width: 480px) {
    .read {
      line-height: 1.8; } }

.sec_info_top {
  padding-top: clamp(30px, 5.21%, 50px); }

.sec_campaign {
  padding-top: clamp(80px, 12.5%, 120px);
  padding-bottom: clamp(25px, 4.17%, 40px); }

.sec_concept {
  padding-top: clamp(80px, 12.5%, 120px); }

.sec_area {
  position: relative;
  padding-top: clamp(100px, 16.67%, 160px);
  padding-bottom: clamp(80px, 14.59%, 140px); }

.sec_plan {
  padding-bottom: clamp(60px, 10.42%, 100px); }
  .sec_plan .plan_content {
    padding-top: clamp(80px, 12.5%, 120px); }

.sec_info_bottom {
  padding-top: clamp(50px, 8.34%, 80px);
  padding-bottom: clamp(50px, 8.34%, 80px); }
  @media screen and (max-width: 480px) {
    .sec_info_bottom {
      padding-top: 0; } }

.link_company {
  margin-bottom: clamp(50px, 8.34%, 80px); }

.sec_outline {
  margin-top: clamp(50px, 8.34%, 80px);
  margin-bottom: clamp(50px, 8.34%, 80px); }

.sec_contact {
  margin-bottom: clamp(80px, 12.5%, 120px); }

.sec_info .info_lead {
  margin-top: clamp(30px, 5.21%, 50px);
  margin-bottom: clamp(30px, 5.21%, 50px);
  font-size: clamp(15px, 2.08vw, 20px);
  line-height: 2; }
  @media screen and (max-width: 480px) {
    .sec_info .info_lead {
      line-height: 1.6; } }
.sec_info .info_day {
  max-width: 446px;
  margin-inline: auto;
  margin-bottom: clamp(50px, 8.34%, 80px); }
.sec_info .present_box {
  max-width: 778px;
  margin-inline: auto; }
  .sec_info .present_box .cap_l {
    margin-top: 20px; }

.sec_campaign .campaign_lead {
  margin-bottom: 30px; }
  .sec_campaign .campaign_lead .sec_lead {
    margin-top: 0.4em;
    margin-bottom: 0.4em;
    line-height: 1; }
.sec_campaign .campaign_wrap {
  position: relative; }
  .sec_campaign .campaign_wrap .campaign_item {
    max-width: 888px;
    margin-inline: auto; }
  .sec_campaign .campaign_wrap::before {
    content: "";
    display: block;
    position: absolute;
    inset: 0;
    z-index: -1;
    background: #f1f1f1;
    margin-top: 6.76%;
    margin-bottom: -6.75%; }
  .sec_campaign .campaign_wrap .campaign_or {
    position: relative;
    z-index: 2;
    max-width: 53px;
    margin-inline: auto;
    margin-top: -1.35%;
    margin-bottom: -1.35%; }

.sec_concept .image_concept {
  text-align: center;
  margin-bottom: clamp(80px, 12.5%, 120px); }
.sec_concept .sec_lead {
  margin-bottom: clamp(30px, 5.21%, 50px);
  text-align: center; }
.sec_concept .plan_list {
  max-width: 893px;
  margin-inline: auto;
  display: grid;
  align-items: start;
  grid-template-columns: repeat(2, 1fr);
  gap: 0 1.9%; }
  @media screen and (max-width: 480px) {
    .sec_concept .plan_list {
      gap: 20px 0;
      grid-template-columns: 1fr; } }
  .sec_concept .plan_list .item a {
    display: block;
    transition: opacity 0.3s ease-in-out; }
    @media (hover: hover) {
      .sec_concept .plan_list .item a:hover {
        opacity: 0.7; } }

.sec_area {
  position: relative; }
  .sec_area::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    padding-top: 80.88%;
    z-index: -1;
    background: url("../images/bg01.jpg") top center/cover no-repeat; }

.area_head {
  text-align: center;
  margin-bottom: 30px; }

.area_wrap {
  justify-content: center;
  align-items: flex-start;
  margin-bottom: clamp(30px, 5.21%, 50px);
  gap: 0 2.08%; }
  @media screen and (max-width: 480px) {
    .area_wrap {
      flex-direction: column;
      gap: 20px 0; } }
  .area_wrap .text_box .area_lead {
    font-size: clamp(18px, 2.9vw, 29px);
    line-height: 1.59;
    margin-bottom: 1em; }
    @media screen and (max-width: 480px) {
      .area_wrap .text_box .area_lead {
        text-align: center; } }
  .area_wrap .image_box {
    flex-shrink: 0;
    max-width: 614px;
    width: 63.96%; }
    @media screen and (max-width: 480px) {
      .area_wrap .image_box {
        width: 100%; } }

.plan_lead_wrap {
  margin-bottom: clamp(30px, 5.21%, 50px);
  text-align: center; }
  .plan_lead_wrap .lead {
    margin-top: 0.4em; }
  .plan_lead_wrap .read {
    text-align: left;
    margin-top: 2.5em; }

.plan_head {
  width: fit-content;
  margin-inline: auto;
  text-align: center;
  color: #fff;
  font-size: clamp(24px, 3.54vw, 34px);
  line-height: 1;
  padding: 0.4em 2.35em;
  margin-bottom: clamp(30px, 5.21%, 50px); }
  @media screen and (max-width: 480px) {
    .plan_head {
      padding: 0.4em 1em; } }
  .plan_content_01 .plan_head {
    background: #808f8e; }
  .plan_content_02 .plan_head {
    background: #a39993; }

.plan_wrap {
  position: relative; }
  .plan_wrap .read {
    max-width: 670px;
    margin-inline: auto; }
  .plan_wrap + .plan_wrap {
    margin-top: clamp(100px, 16.67%, 160px); }
    @media screen and (max-width: 480px) {
      .plan_wrap + .plan_wrap {
        margin-top: 60px; } }

.plan_content_01 {
  position: relative;
  padding-bottom: clamp(60px, 10.42%, 100px); }
  .plan_content_01::before {
    content: "";
    display: block;
    z-index: -2;
    position: absolute;
    inset: 0;
    background: #fbfcfc;
    margin-top: clamp(10px, 3.13%, 30px); }

.plan_content_02 {
  margin-top: clamp(-30px, -3.12%, -10px); }

.plan_detail {
  margin-bottom: 30px; }

.plan_image {
  margin-bottom: clamp(50px, 8.34%, 80px); }

.plan_wrap_plan {
  padding-bottom: clamp(40px, 6.25%, 60px);
  margin-bottom: clamp(80px, 12.5%, 120px); }
  .plan_wrap_plan .plan_read {
    margin-top: clamp(40px, 6.25%, 60px); }
  .plan_wrap_plan .plan_deco {
    position: absolute;
    max-width: 111px;
    width: 11.57%;
    right: 3.65%;
    bottom: 0; }

.plan_wrap_customize .cap_l {
  margin-top: clamp(40px, 7.3%, 70px); }

.customize_wrap .customize_top {
  justify-content: flex-start; }
  @media screen and (max-width: 480px) {
    .customize_wrap .customize_top {
      flex-direction: column;
      gap: 25px 0; } }
  .customize_wrap .customize_top .image_box {
    align-self: flex-start;
    width: 50%; }
    @media screen and (max-width: 480px) {
      .customize_wrap .customize_top .image_box {
        width: 100%; } }
    .customize_wrap .customize_top .image_box img {
      width: 100%; }
  .customize_wrap .customize_top .text_box {
    max-width: 480px;
    width: calc(50% - 20px);
    display: flex;
    flex-direction: column;
    margin-left: -2.18%; }
    @media screen and (max-width: 480px) {
      .customize_wrap .customize_top .text_box {
        width: calc(100% - 40px);
        align-self: center;
        margin-left: 0; } }
    .customize_wrap .customize_top .text_box .customize_lead,
    .customize_wrap .customize_top .text_box .read {
      width: 70.84%;
      margin-left: auto;
      margin-right: 0; }
      @media screen and (max-width: 480px) {
        .customize_wrap .customize_top .text_box .customize_lead,
        .customize_wrap .customize_top .text_box .read {
          width: 100%; } }
    .customize_wrap .customize_top .text_box .customize_lead {
      font-size: clamp(18px, 2.4vw, 24px);
      margin-bottom: auto;
      line-height: 1.84;
      margin-top: 1em; }
      @media screen and (max-width: 480px) {
        .customize_wrap .customize_top .text_box .customize_lead {
          margin-top: 0.6em;
          margin-bottom: 20px; } }
.customize_wrap.customize_wrap_02 .customize_top .text_box {
  margin-left: 0;
  margin-right: -2.18%; }
  @media screen and (max-width: 480px) {
    .customize_wrap.customize_wrap_02 .customize_top .text_box {
      margin-right: 0; } }
  .customize_wrap.customize_wrap_02 .customize_top .text_box .customize_lead,
  .customize_wrap.customize_wrap_02 .customize_top .text_box .read {
    margin-left: 0;
    margin-right: auto; }
.customize_wrap .customize_bottom {
  margin-top: clamp(25px, 4.17%, 40px);
  text-align: center; }
.customize_wrap + .customize_wrap {
  margin-top: clamp(80px, 12.5%, 120px); }

.plan_wrap_price {
  max-width: 884px;
  margin-inline: auto;
  margin-top: clamp(100px, 16.67%, 160px);
  background: #fff;
  padding-top: clamp(40px, 7.3%, 70px);
  padding-bottom: clamp(40px, 7.3%, 70px);
  text-align: center; }
  @media screen and (max-width: 480px) {
    .plan_wrap_price {
      margin-top: 60px; } }

.access_image {
  text-align: center;
  margin-bottom: clamp(50px, 8.34%, 80px); }

.location_list {
  max-width: 890px;
  display: grid;
  align-items: start;
  align-content: start;
  grid-template-columns: repeat(3, 1fr);
  gap: 0 2.13%;
  margin-bottom: clamp(50px, 8.34%, 80px); }
  @media screen and (max-width: 480px) {
    .location_list {
      grid-template-columns: repeat(2, 1fr);
      gap: 15px 4%; } }
  .plan_content_02 .location_list {
    grid-template-columns: repeat(4, 1fr);
    gap: 0 1.79%; }
    @media screen and (max-width: 480px) {
      .plan_content_02 .location_list {
        grid-template-columns: repeat(2, 1fr);
        gap: 15px 4%; } }
  .location_list .item .item_text {
    margin-top: 0.4em;
    line-height: 1.53; }

.map_box {
  aspect-ratio: 890 / 370; }
  @media screen and (max-width: 480px) {
    .map_box {
      aspect-ratio: 6 / 4; } }
  .map_box iframe {
    display: block;
    line-height: 0;
    width: 100%;
    height: 100%; }

.plan_wrap {
  margin-bottom: clamp(25px, 4.17%, 40px); }

.plan_wrap_point {
  max-width: 884px; }
  .plan_wrap_point .point_wrap {
    margin-bottom: 30px;
    position: relative;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    margin-inline: auto; }
    @media screen and (max-width: 480px) {
      .plan_wrap_point .point_wrap {
        flex-direction: column;
        gap: 15px 0; } }
    .plan_wrap_point .point_wrap::before {
      content: "";
      display: block;
      position: absolute;
      inset: 0;
      z-index: -1;
      background: #fff;
      border-radius: 100vmax;
      margin-top: 2.27%; }
    .plan_wrap_point .point_wrap .staff {
      max-width: 222px;
      width: 25.12%; }
      @media screen and (max-width: 480px) {
        .plan_wrap_point .point_wrap .staff {
          width: 50.46%;
          text-align: center;
          align-self: center; } }
    .plan_wrap_point .point_wrap .text_box {
      width: 65.05%; }
      @media screen and (max-width: 480px) {
        .plan_wrap_point .point_wrap .text_box {
          width: 100%; } }

.sec_outline {
  max-width: 890px;
  margin-inline: auto;
  border-radius: 20px;
  background: #e6e6e6;
  padding-top: clamp(30px, 5.21%, 50px);
  padding-bottom: clamp(30px, 5.21%, 50px); }
  .sec_outline .outline_inner {
    max-width: 780px;
    margin-inline: auto;
    width: calc(100% - 40px); }
    @media screen and (max-width: 480px) {
      .sec_outline .outline_inner {
        width: calc(100% - 20px); } }
  .sec_outline .outline_head {
    font-size: clamp(14px, 1.93vw, 18px);
    line-height: 1;
    color: #fff;
    background: #999;
    text-align: center;
    padding: 0.6em 0.2em;
    margin-bottom: 1.5em;
    border-radius: 100vmax; }
    @media screen and (max-width: 480px) {
      .sec_outline .outline_head {
        line-height: 1.4; } }
  .sec_outline .outline {
    font-size: clamp(12px, 1.72vw, 16px);
    line-height: 2.13; }
    @media screen and (max-width: 480px) {
      .sec_outline .outline {
        line-height: 1.6; } }
    .sec_outline .outline .item {
      display: flex;
      align-items: flex-start;
      gap: 0.5em;
      margin-bottom: 0.5em;
      line-height: 1.8; }
      .sec_outline .outline .item::before {
        content: "";
        display: block;
        flex-shrink: 0;
        width: 0.2em;
        height: 0.2em;
        background: currentColor;
        border-radius: 100%;
        line-height: 0;
        margin-top: 0.85em; }
        @media screen and (max-width: 480px) {
          .sec_outline .outline .item::before {
            margin-top: 0.8em; } }

.tel_wrap {
  font-weight: 700;
  margin-top: clamp(30px, 5.21%, 50px);
  align-items: center;
  justify-content: center;
  font-size: clamp(20px, 3.6vw, 36px);
  line-height: 1;
  gap: 0.7em; }
  @media screen and (max-width: 480px) {
    .tel_wrap {
      flex-direction: column;
      text-align: center;
      font-size: 30px;
      gap: 0.5em; } }
  .tel_wrap .tel_head {
    font-size: 0.7em; }
  .tel_wrap .tel {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.25em; }
    .tel_wrap .tel .icon {
      width: 0.5em;
      line-height: 0; }
  .tel_wrap .tel_sub {
    font-size: 0.44em; }

.floating_bnner {
  max-width: 400px;
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index: 20; }
  @media screen and (max-width: 480px) {
    .floating_bnner {
      width: 60%; } }
  .floating_bnner a {
    display: block; }
  .floating_bnner .floating_bnner_close {
    background: #000;
    color: #fff;
    font-size: 20px;
    line-height: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: -35px;
    right: 0;
    cursor: pointer;
    width: 28px;
    height: 28px;
    transition: opacity 0.3s ease-in-out; }
    @media (hover: hover) {
      .floating_bnner .floating_bnner_close:hover {
        opacity: 0.7; } }

/*# sourceMappingURL=lp.css.map */
