@charset "UTF-8";
/*! Writen  by SCSS */
@import url("https://fonts.googleapis.com/css2?family=EB+Garamond:ital,wght@0,400..800;1,400..800&display=swap");
.sec01.first {
  background: #f7f3f1;
  margin: 0;
  padding: 90px 0; }

.sec02 {
  padding: 90px 0; }

.sec01 {
  margin-top: clamp(80px, 10%, 120px);
  margin-bottom: clamp(50px, 6.67%, 80px); }
  .sec01 .lead_wrap {
    margin-bottom: 60px; }
    @media screen and (max-width: 480px) {
      .sec01 .lead_wrap {
        margin-bottom: 30px; } }
  @media screen and (max-width: 480px) {
    .sec01 .list {
      flex-direction: column;
      row-gap: 20px;
      padding-top: 22px; } }
  .sec01 .list .item {
    width: 31.67%; }
    @media screen and (max-width: 480px) {
      .sec01 .list .item {
        width: 90%;
        margin-inline: auto; } }
    .sec01 .list .item a {
      position: relative;
      display: block;
      transition: opacity 0.3s ease-in-out; }
      @media (hover: hover) {
        .sec01 .list .item a:hover {
          opacity: 0.7; } }
      .sec01 .list .item a .icon {
        position: absolute;
        left: 0;
        right: 0;
        bottom: 100%;
        font-weight: bold;
        font-size: clamp(16px, 1.667vw, 20px);
        line-height: 1;
        padding: 0.3em 0;
        background: linear-gradient(90deg, #916311 0%, #BD8D2D 50%, #916311 100%);
        text-align: center;
        color: #fff;
        font-weight: 600;
        width: 50%; }
        .sec01 .list .item a .icon.icon01 {
          right: auto;
          left: 0;
          width: 57.5%; }
        .sec01 .list .item a .icon.icon02 {
          left: auto;
          right: 0;
          width: 42.5%;
          background: linear-gradient(135deg, #5c0000 0%, #8b0000 35%, #b22222 70%, #6d0019 100%); }

.bnr_area {
  position: relative;
  margin-bottom: clamp(100px, 15vw, 180px); }
  .bnr_area a {
    display: block;
    max-width: 700px;
    width: calc(100% - 60px);
    margin: 0 auto;
    position: relative;
    filter: drop-shadow(3px 3px 3px rgba(51, 51, 51, 0.8)); }
    @media screen and (max-width: 480px) {
      .bnr_area a {
        width: calc(100% - 40px); } }
    .bnr_area a .cap_ico {
      position: absolute;
      top: calc(-30%/2.26);
      right: calc(-20%/7);
      width: calc(128%/7);
      pointer-events: none;
      filter: drop-shadow(3px 3px 3px rgba(51, 51, 51, 0.8)); }
      @media screen and (max-width: 480px) {
        .bnr_area a .cap_ico {
          top: calc(-45%/2.26);
          filter: drop-shadow(3px 3px 3px rgba(51, 51, 51, 0)); } }
  .bnr_area.detail {
    margin: 60px 0 0; }

.sec_detail {
  margin-bottom: clamp(50px, 6.67%, 80px); }
  .sec_detail .inner {
    max-width: 1000px; }
  .sec_detail .lead {
    font-size: clamp(17px, 1.93vw, 24px); }
  .sec_detail .copy {
    margin-bottom: 2em; }
  .sec_detail .plan_detail_image {
    margin-bottom: clamp(25px, 3.34%, 40px); }
    .sec_detail .plan_detail_image.ex1 {
      margin-bottom: clamp(40px, 5.84%, 70px); }
  .sec_detail .detail_wrap {
    display: grid;
    grid-template-columns: 31% 66%;
    align-items: flex-start;
    align-content: start;
    grid-auto-flow: dense; }
    @media screen and (max-width: 768px) {
      .sec_detail .detail_wrap {
        row-gap: clamp(30px, 28.847vw, 210px); } }
    @media screen and (max-width: 480px) {
      .sec_detail .detail_wrap {
        grid-template-columns: 1fr;
        row-gap: 30px; } }
    .sec_detail .detail_wrap .text_wrap {
      display: flex;
      flex-direction: column;
      row-gap: clamp(10px, 1.25vw, 15px); }
      @media screen and (max-width: 480px) {
        .sec_detail .detail_wrap .text_wrap {
          text-align: center; } }
      .sec_detail .detail_wrap .text_wrap .txt {
        border-bottom: 1px solid;
        padding-bottom: clamp(10px, 1.5vw, 15px);
        line-height: 1;
        font-size: clamp(12px, 1.5vw, 15px);
        font-weight: bold; }
        .sec_detail .detail_wrap .text_wrap .txt:nth-last-child(1 of .txt) {
          border: none; }
        .sec_detail .detail_wrap .text_wrap .txt .en {
          font-weight: normal; }
      .sec_detail .detail_wrap .text_wrap .txt01 {
        font-size: clamp(40px, 4.5vw, 45px);
        letter-spacing: 0.06em; }
        .sec_detail .detail_wrap .text_wrap .txt01 .small_01 {
          font-size: 70%;
          position: relative; }
          .sec_detail .detail_wrap .text_wrap .txt01 .small_01 sup {
            position: absolute;
            top: -1.9em;
            left: -1.6em;
            line-height: 1;
            font-size: 42%;
            padding: 0.15em 0.2em 0.25em;
            background: #000;
            color: #fff;
            width: 12.6em;
            text-align: center; }
            @media screen and (max-width: 480px) {
              .sec_detail .detail_wrap .text_wrap .txt01 .small_01 sup {
                width: 12.9em; } }
        .sec_detail .detail_wrap .text_wrap .txt01 .small_02 {
          font-size: 66%; }
        .sec_detail .detail_wrap .text_wrap .txt01 .small_03 {
          font-size: 47%; }
      .sec_detail .detail_wrap .text_wrap .txt02 .big_01 {
        font-size: 266%; }
      .sec_detail .detail_wrap .text_wrap .txt02 .big_02 {
        font-size: 214%; }
      .sec_detail .detail_wrap .text_wrap .txt02 .small {
        font-size: 94%; }
      .sec_detail .detail_wrap .text_wrap .hanrei_list {
        font-size: clamp(10px, 1.25vw, 13px);
        line-height: 1;
        display: flex;
        align-items: baseline;
        font-weight: 700;
        gap: 0.5em 0.8em; }
        @media screen and (max-width: 480px) {
          .sec_detail .detail_wrap .text_wrap .hanrei_list {
            justify-content: center;
            font-size: 12px; } }
        .sec_detail .detail_wrap .text_wrap .hanrei_list .item {
          display: flex;
          align-items: center;
          gap: 0.25em; }
          .sec_detail .detail_wrap .text_wrap .hanrei_list .item .icon {
            width: 2.3em;
            height: 0.76em;
            border: 1px solid; }
            .sec_detail .detail_wrap .text_wrap .hanrei_list .item .icon.icon_storage {
              background: #e9e4d6; }
            .sec_detail .detail_wrap .text_wrap .hanrei_list .item .icon.icon_water {
              background: #e1f2fc; }
            .sec_detail .detail_wrap .text_wrap .hanrei_list .item .icon.icon_yukadan {
              background: #fbecd2; }
      .sec_detail .detail_wrap .text_wrap .hensai {
        border: 1px solid #000;
        font-weight: bold; }
        .sec_detail .detail_wrap .text_wrap .hensai .hensai_ttl {
          padding: 0.3em 0.5em;
          background: #000;
          text-align: center;
          color: #fff;
          font-size: clamp(11px, 1.4vw, 14px);
          letter-spacing: 0.2em; }
        .sec_detail .detail_wrap .text_wrap .hensai .txts {
          padding: 0.8em 0.5em; }
          .sec_detail .detail_wrap .text_wrap .hensai .txts .flex {
            flex-wrap: wrap;
            justify-content: center;
            align-items: flex-end;
            grid-gap: 0 0.5em; }
            .sec_detail .detail_wrap .text_wrap .hensai .txts .flex:not(:last-child) {
              padding-bottom: 0.8em;
              margin-bottom: 0.7em;
              border-bottom: 1px solid #887631; }
          .sec_detail .detail_wrap .text_wrap .hensai .txts .txt1 {
            display: flex;
            justify-content: center;
            align-items: baseline;
            font-size: clamp(11px, 1.6vw, 16px);
            letter-spacing: 0;
            line-height: 1; }
            @media screen and (max-width: 480px) {
              .sec_detail .detail_wrap .text_wrap .hensai .txts .txt1 {
                font-size: 4vw; } }
            .sec_detail .detail_wrap .text_wrap .hensai .txts .txt1 .bg_text {
              font-size: 0.9em;
              line-height: 1;
              background: #887631;
              color: #fff;
              padding: 0.3em;
              margin-right: 0.25em;
              transform: translateY(-3px); }
            .sec_detail .detail_wrap .text_wrap .hensai .txts .txt1 .lg {
              display: inline-block;
              font-size: 240%;
              color: #900;
              line-height: 0.8; }
            .sec_detail .detail_wrap .text_wrap .hensai .txts .txt1 .lg2 {
              font-size: 180%;
              line-height: 0.8; }
              .sec_detail .detail_wrap .text_wrap .hensai .txts .txt1 .lg2.red {
                color: #900; }
            .sec_detail .detail_wrap .text_wrap .hensai .txts .txt1 .lg3 {
              display: inline-block;
              color: #900;
              font-size: 400%;
              line-height: 0.8; }
            .sec_detail .detail_wrap .text_wrap .hensai .txts .txt1 .monthly {
              font-size: 160%; }
            .sec_detail .detail_wrap .text_wrap .hensai .txts .txt1 .min {
              font-size: 80%; }
          .sec_detail .detail_wrap .text_wrap .hensai .txts .bonus_text {
            font-size: clamp(10px, 1.2vw, 12px);
            line-height: 1;
            text-align: center;
            width: 100%;
            background: #887631;
            color: #fff;
            padding: 0.3em;
            margin-top: 1em; }
            @media screen and (max-width: 480px) {
              .sec_detail .detail_wrap .text_wrap .hensai .txts .bonus_text {
                font-size: 12px;
                padding: 5px; } }
          .sec_detail .detail_wrap .text_wrap .hensai .txts .cap_l {
            text-align: justify;
            font-size: 10px; }
    .sec_detail .detail_wrap .btn {
      grid-row: 2/3; }
      @media screen and (max-width: 480px) {
        .sec_detail .detail_wrap .btn {
          grid-row: 3/4;
          margin-top: 20px; } }
      .sec_detail .detail_wrap .btn a {
        display: grid;
        place-items: center;
        padding-block: 12px;
        border: 1px solid #333;
        line-height: 1;
        font-size: clamp(14px, 1.8vw, 18px);
        transition: opacity 0.3s ease-in-out; }
        @media (hover: hover) {
          .sec_detail .detail_wrap .btn a:hover {
            opacity: 0.7; } }
    .sec_detail .detail_wrap .img {
      grid-row: 1 / 3;
      grid-column: 2 / 3; }
      @media screen and (max-width: 480px) {
        .sec_detail .detail_wrap .img {
          grid-column: span 1;
          grid-row: span 1; } }
      .sec_detail .detail_wrap .img .plan_change_btn {
        max-width: 580px;
        width: 100%;
        margin: 0 auto clamp(30px, 3.334vw, 40px);
        display: flex; }
        @media screen and (max-width: 480px) {
          .sec_detail .detail_wrap .img .plan_change_btn {
            width: calc(100% - 40px); } }
        .sec_detail .detail_wrap .img .plan_change_btn .plan_change {
          display: block;
          width: 44.83%;
          position: relative;
          background-position: top center;
          background-repeat: no-repeat;
          background-size: cover;
          padding: 15px 10px;
          font-size: clamp(16px, 1.385vw, 18px);
          color: #906c00;
          background: #fff;
          border: 1px solid #906c00;
          transition: 0.3s all ease-in-out 0s;
          font-family: YakuHanMP,"Shippori Mincho","Noto Serif JP","Hiragino Mincho ProN","Yu Mincho","游明朝",YuMincho,"游明朝体","ヒラギノ明朝 Pro W3","Hiragino Mincho Pro","HGS明朝E","ＭＳ Ｐ明朝",serif; }
          @media screen and (max-width: 480px) {
            .sec_detail .detail_wrap .img .plan_change_btn .plan_change {
              font-size: 16px;
              padding: 10px; } }
          .sec_detail .detail_wrap .img .plan_change_btn .plan_change.active {
            background: #906c00;
            color: #fff; }
      .sec_detail .detail_wrap .img .draw_box {
        text-align: center;
        position: relative; }
        .sec_detail .detail_wrap .img .draw_box .draw_box_in {
          position: relative; }
          .sec_detail .detail_wrap .img .draw_box .draw_box_in .draw_img {
            position: absolute;
            inset: 0;
            display: flex;
            justify-content: center;
            align-items: center;
            opacity: 0;
            transition: 0.3s all ease-in-out 0s;
            pointer-events: none;
            flex-direction: column;
            align-self: self-start; }
            .sec_detail .detail_wrap .img .draw_box .draw_box_in .draw_img.active {
              position: relative;
              opacity: 1;
              pointer-events: all; }

.detail_link_wrap {
  margin-top: clamp(40px, 5.84%, 70px);
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 20px;
  padding-bottom: 20px;
  border-top: 1px solid #26376a;
  border-bottom: 1px solid #26376a; }
  @media screen and (max-width: 480px) {
    .detail_link_wrap {
      flex-wrap: wrap;
      padding-left: 15px;
      padding-right: 15px;
      gap: 15px 4%; } }
  .detail_link_wrap .link_detail {
    color: #26376a;
    display: flex;
    align-items: center;
    transition: opacity 0.3s ease-in-out;
    font-size: clamp(16px, 2.09vw, 26px);
    gap: 0 0.61em; }
    @media screen and (max-width: 480px) {
      .detail_link_wrap .link_detail {
        font-size: 18px;
        gap: 0.5em; } }
    .detail_link_wrap .link_detail:after {
      content: "";
      margin: 0;
      padding: 0;
      display: block;
      border: none;
      border-bottom: solid 1px currentColor;
      height: 0.3em;
      width: 1.15em; }
    .detail_link_wrap .link_detail.link_detail_prev {
      flex-direction: row-reverse; }
      @media screen and (max-width: 480px) {
        .detail_link_wrap .link_detail.link_detail_prev {
          order: 1; } }
      .detail_link_wrap .link_detail.link_detail_prev:after {
        border-left: solid 1px currentColor;
        transform: skewX(-45deg); }
    @media screen and (max-width: 480px) {
      .detail_link_wrap .link_detail.link_detail_next {
        order: 2; } }
    .detail_link_wrap .link_detail.link_detail_next:after {
      border-right: solid 1px currentColor;
      transform: skewX(45deg); }
    .detail_link_wrap .link_detail .text {
      display: flex;
      align-items: baseline;
      justify-content: center;
      flex-wrap: wrap;
      line-height: 1;
      gap: 0.3em 0.3em; }
      @media screen and (max-width: 480px) {
        .detail_link_wrap .link_detail .text {
          flex-direction: column;
          align-items: center;
          justify-content: center; } }
      .detail_link_wrap .link_detail .text .en {
        display: flex;
        align-items: baseline;
        font-weight: 600;
        letter-spacing: 0.05em; }
        @media screen and (max-width: 480px) {
          .detail_link_wrap .link_detail .text .en {
            line-height: 0.8; } }
        .detail_link_wrap .link_detail .text .en .text_lg {
          font-size: 1.6em; }
      .detail_link_wrap .link_detail .text .space {
        font-size: 0.61em;
        letter-spacing: 0.05em; }
    @media (hover: hover) {
      .detail_link_wrap .link_detail:hover {
        opacity: 0.7; } }
  .detail_link_wrap .button_return {
    max-width: 252px;
    padding: 20px;
    width: 100%;
    text-align: center;
    justify-content: center;
    margin-left: auto;
    margin-right: auto;
    background: #fff;
    border: 1px solid #26376a;
    color: #26376a; }
    @media screen and (max-width: 480px) {
      .detail_link_wrap .button_return {
        order: 3; } }
    .detail_link_wrap .button_return .cv_btn_txt {
      color: #26376a; }
    .detail_link_wrap .button_return::after {
      border-bottom: solid 1px currentColor;
      border-right: solid 1px currentColor; }
    @media (hover: hover) {
      .detail_link_wrap .button_return:hover {
        color: #fff;
        background: #26376a; }
        .detail_link_wrap .button_return:hover .cv_btn_txt {
          color: #fff; } }

.sec02 .sec_ttl {
  max-width: 381px;
  width: calc(381%/14);
  margin: 0 auto;
  margin-bottom: clamp(30px, 4.17%, 50px); }
  @media screen and (max-width: 600px) {
    .sec02 .sec_ttl {
      width: calc(381%/6); } }
.sec02 .sec02_box {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between; }
  @media screen and (max-width: 768px) {
    .sec02 .sec02_box {
      gap: 20px 0; } }
  .sec02 .sec02_box + .sec02_box {
    margin-top: clamp(100px, 11.67%, 140px) !important; }
  .sec02 .sec02_box .box_ttl {
    width: 100%;
    text-align: center;
    margin-bottom: clamp(30px, 4.17%, 50px); }
    @media screen and (max-width: 768px) {
      .sec02 .sec02_box .box_ttl {
        order: 1;
        margin-bottom: 10px; } }
    .sec02 .sec02_box .box_ttl figure {
      width: 100%;
      border-top: 1px solid;
      border-bottom: 1px solid;
      border-color: #513e29;
      margin: 0 auto 15px;
      padding: 15px 10px; }
      .sec02 .sec02_box .box_ttl figure.txt_101 img {
        width: calc(276%/12);
        margin: 0 auto; }
        @media screen and (max-width: 600px) {
          .sec02 .sec02_box .box_ttl figure.txt_101 img {
            width: calc(276%/6); } }
      .sec02 .sec02_box .box_ttl figure.txt_201 img {
        width: calc(351%/12);
        margin: 0 auto; }
        @media screen and (max-width: 600px) {
          .sec02 .sec02_box .box_ttl figure.txt_201 img {
            width: calc(351%/6); } }
      .sec02 .sec02_box .box_ttl figure.txt_301 img {
        width: calc(380%/12);
        margin: 0 auto; }
        @media screen and (max-width: 600px) {
          .sec02 .sec02_box .box_ttl figure.txt_301 img {
            width: calc(380%/6); } }
      .sec02 .sec02_box .box_ttl figure.txt_401 img {
        width: calc(274%/12);
        margin: 0 auto; }
        @media screen and (max-width: 600px) {
          .sec02 .sec02_box .box_ttl figure.txt_401 img {
            width: calc(274%/6); } }
    .sec02 .sec02_box .box_ttl p {
      color: #513e29;
      font-size: clamp(20px, 2.41vw, 30px); }
  .sec02 .sec02_box .box_main_img {
    max-width: 1600px;
    margin: 0 auto;
    width: 100%;
    margin-bottom: clamp(30px, 4.17%, 50px); }
    @media screen and (max-width: 768px) {
      .sec02 .sec02_box .box_main_img {
        order: 3;
        margin-bottom: 0; } }
  .sec02 .sec02_box .txt_box {
    width: calc(600%/12); }
    @media screen and (max-width: 768px) {
      .sec02 .sec02_box .txt_box {
        order: 4;
        width: 100%; } }
    .sec02 .sec02_box .txt_box .txt_box_ttl {
      border-bottom: 1px solid #513e29;
      padding-bottom: 20px; }
      @media screen and (max-width: 600px) {
        .sec02 .sec02_box .txt_box .txt_box_ttl .txt_102 {
          width: calc(468%/5.6); } }
      @media screen and (max-width: 600px) {
        .sec02 .sec02_box .txt_box .txt_box_ttl .txt_202 {
          width: calc(535%/5.6); } }
      @media screen and (max-width: 600px) {
        .sec02 .sec02_box .txt_box .txt_box_ttl .txt_302 {
          width: calc(535%/5.6); } }
      @media screen and (max-width: 600px) {
        .sec02 .sec02_box .txt_box .txt_box_ttl .txt_402 {
          width: calc(465%/5.6); } }
    .sec02 .sec02_box .txt_box .ttl {
      font-size: clamp(16px, 1.93vw, 24px);
      letter-spacing: 0.03em;
      margin: 0.5em 0 0.6em;
      line-height: 1.46; }
    .sec02 .sec02_box .txt_box .txt {
      font-size: clamp(14px, 1.29vw, 16px);
      line-height: 1.6875;
      letter-spacing: 0; }
    .sec02 .sec02_box .txt_box .txt_box_ttl2 {
      border-top: dotted 1px #e8e5e1;
      position: relative;
      padding: 1.5em 0;
      margin-top: 1.5em; }
      @media screen and (max-width: 600px) {
        .sec02 .sec02_box .txt_box .txt_box_ttl2 {
          padding: 0.5em 0; } }
      .sec02 .sec02_box .txt_box .txt_box_ttl2 .txt_203 {
        max-width: 402px; }
        @media screen and (max-width: 600px) {
          .sec02 .sec02_box .txt_box .txt_box_ttl2 .txt_203 {
            width: calc(402%/5.6); } }
      .sec02 .sec02_box .txt_box .txt_box_ttl2 .txt_303 {
        max-width: 229px; }
        @media screen and (max-width: 600px) {
          .sec02 .sec02_box .txt_box .txt_box_ttl2 .txt_303 {
            width: calc(229%/5.6); } }
      .sec02 .sec02_box .txt_box .txt_box_ttl2 .txt_403 {
        max-width: 229px; }
        @media screen and (max-width: 600px) {
          .sec02 .sec02_box .txt_box .txt_box_ttl2 .txt_403 {
            width: calc(229%/5.6); } }
  .sec02 .sec02_box .box_sub_img {
    width: calc(455%/12); }
    @media screen and (max-width: 768px) {
      .sec02 .sec02_box .box_sub_img {
        order: 2;
        width: 100%; } }
    .sec02 .sec02_box .box_sub_img .item_wrap {
      width: 100%;
      padding-bottom: calc(90%/4.55);
      position: relative; }
      @media screen and (max-width: 768px) {
        .sec02 .sec02_box .box_sub_img .item_wrap {
          display: flex;
          justify-content: space-between;
          align-items: center;
          padding-bottom: 0; } }
    .sec02 .sec02_box .box_sub_img .sub_img.img102 {
      max-width: 300px; }
      @media screen and (max-width: 768px) {
        .sec02 .sec02_box .box_sub_img .sub_img.img102 {
          width: calc(400%/7.28); } }
    .sec02 .sec02_box .box_sub_img .sub_img.img202 {
      max-width: 334px; }
      @media screen and (max-width: 768px) {
        .sec02 .sec02_box .box_sub_img .sub_img.img202 {
          width: calc(400%/7.28); } }
    .sec02 .sec02_box .box_sub_img .sub_img.img302 {
      max-width: 355px; }
      @media screen and (max-width: 768px) {
        .sec02 .sec02_box .box_sub_img .sub_img.img302 {
          width: calc(400%/7.28); } }
    .sec02 .sec02_box .box_sub_img .sub_img.img402 {
      max-width: 378px; }
      @media screen and (max-width: 768px) {
        .sec02 .sec02_box .box_sub_img .sub_img.img402 {
          width: calc(400%/7.28); } }
    .sec02 .sec02_box .box_sub_img .sub_txt {
      position: absolute;
      right: 0;
      bottom: 0; }
      @media screen and (max-width: 768px) {
        .sec02 .sec02_box .box_sub_img .sub_txt {
          position: static; } }
      .sec02 .sec02_box .box_sub_img .sub_txt.txt1 {
        width: calc(298%/4.55); }
        @media screen and (max-width: 768px) {
          .sec02 .sec02_box .box_sub_img .sub_txt.txt1 {
            width: calc(298%/7.28);
            margin-left: calc(20%/7.28); } }
      .sec02 .sec02_box .box_sub_img .sub_txt.txt2 {
        width: calc(285%/4.55); }
        @media screen and (max-width: 768px) {
          .sec02 .sec02_box .box_sub_img .sub_txt.txt2 {
            width: calc(285%/7.28);
            margin-left: calc(20%/7.28); } }
      .sec02 .sec02_box .box_sub_img .sub_txt.txt3 {
        width: calc(322%/4.55); }
        @media screen and (max-width: 768px) {
          .sec02 .sec02_box .box_sub_img .sub_txt.txt3 {
            width: calc(322%/7.28);
            margin-left: calc(20%/7.28); } }
  @media screen and (max-width: 768px) {
    .sec02 .sec02_box.box04 {
      width: calc(100% - 40px);
      margin: 0 auto; } }
  .sec02 .sec02_box.box04 .ex_item {
    display: flex;
    justify-content: space-between; }
    @media screen and (max-width: 768px) {
      .sec02 .sec02_box.box04 .ex_item {
        display: none; } }
  @media screen and (min-width: 769px) {
    .sec02 .sec02_box.box04 .sp {
      display: none; } }

.type_change_btn {
  max-width: 960px;
  margin: 0 auto 60px; }
  @media screen and (max-width: 480px) {
    .type_change_btn {
      margin: 0 auto 40px; } }
  .type_change_btn.type_a {
    max-width: 640px; }
    .type_change_btn.type_a .change_btn {
      width: 46.88%;
      font-size: clamp(18px, 3.907vw, 25px); }
  .type_change_btn .change_btn {
    width: 31.25%;
    font-size: clamp(18px, 2.605vw, 25px);
    color: #26376a;
    font-weight: 600;
    letter-spacing: 0.05em;
    text-align: center;
    padding: 22px 0;
    line-height: 1;
    cursor: pointer;
    position: relative;
    border: 1px solid #26376a;
    transition: all 0.3s ease-in-out 0s; }
    @media screen and (max-width: 480px) {
      .type_change_btn .change_btn {
        padding-bottom: 10px;
        font-size: 5vw;
        align-content: center; } }
    body:not(.mobile) .type_change_btn .change_btn:hover, .type_change_btn .change_btn.active {
      background: #26376a;
      color: #fff; }
      body:not(.mobile) .type_change_btn .change_btn:hover:after, .type_change_btn .change_btn.active:after {
        content: "";
        position: absolute;
        inset: 0;
        top: calc(100% + 10px);
        bottom: auto;
        margin: auto;
        width: 14px;
        background: #26376a;
        aspect-ratio: 7/5;
        clip-path: polygon(50% 100%, 0 0, 100% 0); }
    .type_change_btn .change_btn .min {
      font-size: clamp(10px, 2.188vw, 14px);
      letter-spacing: 0.1em;
      display: block; }
      @media screen and (max-width: 480px) {
        .type_change_btn .change_btn .min {
          line-height: 1.4;
          letter-spacing: 0.05em;
          font-size: calc(13vw/4.14); } }

.plan_detail_group {
  position: relative; }
  .plan_detail_group .plan_detail_group_in {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    opacity: 0;
    transition: 0.3s opacity ease-in-out 0s;
    pointer-events: none; }
    .plan_detail_group .plan_detail_group_in > * {
      pointer-events: none; }
    .plan_detail_group .plan_detail_group_in.active {
      position: relative;
      opacity: 1;
      pointer-events: all; }
      .plan_detail_group .plan_detail_group_in.active > * {
        pointer-events: all; }
    .plan_detail_group .plan_detail_group_in.menu1 .detail_wrap, .plan_detail_group .plan_detail_group_in.menu2 .detail_wrap {
      grid-template-columns: 58.8% 36%;
      row-gap: clamp(30px, 5vw, 60px);
      align-items: center; }
      @media screen and (max-width: 480px) {
        .plan_detail_group .plan_detail_group_in.menu1 .detail_wrap, .plan_detail_group .plan_detail_group_in.menu2 .detail_wrap {
          grid-template-columns: 1fr; } }
      .plan_detail_group .plan_detail_group_in.menu1 .detail_wrap .ttl_wrap, .plan_detail_group .plan_detail_group_in.menu2 .detail_wrap .ttl_wrap {
        font-weight: bold; }
        @media screen and (max-width: 480px) {
          .plan_detail_group .plan_detail_group_in.menu1 .detail_wrap .ttl_wrap, .plan_detail_group .plan_detail_group_in.menu2 .detail_wrap .ttl_wrap {
            text-align: center; } }
        .plan_detail_group .plan_detail_group_in.menu1 .detail_wrap .ttl_wrap .ttl, .plan_detail_group .plan_detail_group_in.menu2 .detail_wrap .ttl_wrap .ttl {
          font-size: clamp(20px, 4vw, 40px);
          font-size: clamp(20px, 3.6vw, 36px);
          margin-bottom: 0.75em;
          letter-spacing: 0.03em; }
        .plan_detail_group .plan_detail_group_in.menu1 .detail_wrap .ttl_wrap .txt, .plan_detail_group .plan_detail_group_in.menu2 .detail_wrap .ttl_wrap .txt {
          font-size: clamp(14px, 1.334vw, 16px);
          display: flex;
          flex-direction: column;
          row-gap: 1.2em; }
          @media screen and (max-width: 480px) {
            .plan_detail_group .plan_detail_group_in.menu1 .detail_wrap .ttl_wrap .txt, .plan_detail_group .plan_detail_group_in.menu2 .detail_wrap .ttl_wrap .txt {
              row-gap: 0.75em;
              font-size: 3.4vw; } }
          .plan_detail_group .plan_detail_group_in.menu1 .detail_wrap .ttl_wrap .txt span, .plan_detail_group .plan_detail_group_in.menu2 .detail_wrap .ttl_wrap .txt span {
            display: block; }
      .plan_detail_group .plan_detail_group_in.menu1 .detail_wrap .img, .plan_detail_group .plan_detail_group_in.menu2 .detail_wrap .img {
        grid-column: span 2;
        grid-row: 2/3;
        max-width: 660px;
        margin-inline: auto; }
        @media screen and (max-width: 480px) {
          .plan_detail_group .plan_detail_group_in.menu1 .detail_wrap .img, .plan_detail_group .plan_detail_group_in.menu2 .detail_wrap .img {
            grid-column: auto;
            grid-row: auto; } }

.pickup_txt {
  width: fit-content;
  margin: 2em auto 0;
  background: #26376a;
  color: #e5ff62;
  letter-spacing: 0.08em;
  font-size: clamp(16px, 1.61vw, 20px);
  font-size: clamp(16px, 2.41vw, 30px);
  line-height: 1.4;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0.5em 15px; }
  @media screen and (max-width: 480px) {
    .pickup_txt {
      width: 100%;
      font-size: calc(22vw/3.9);
      font-size: calc(21vw/3.9); } }
  .pickup_txt .min {
    font-size: 80%; }

.pickup_txt2 {
  max-width: 700px;
  margin: 6em auto 0;
  padding: 1em 32px;
  background: #8f6212;
  color: #ffffff; }
  @media screen and (max-width: 480px) {
    .pickup_txt2 {
      max-width: none;
      width: 100%; } }
  .pickup_txt2 .pickup_bnr {
    width: 100%;
    letter-spacing: 0.08em;
    font-size: clamp(16px, 2.41vw, 30px);
    line-height: 1.4;
    text-align: center;
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    align-items: center; }
    @media screen and (max-width: 480px) {
      .pickup_txt2 .pickup_bnr {
        font-size: calc(22vw/3.9);
        font-size: calc(21vw/3.9);
        justify-content: center; } }
  .pickup_txt2 .cap_l {
    margin-top: 10px; }

.a_type.b_cnt {
  /* ─── INTRO ─── */
  /* ─── DIVIDER ─── */
  /* ─── PLAN SECTION ─── */
  /* ─── COMPARE ─── */
  /* ─── SPECS ─── */
  /* ─── CTA ─── */
  /* ─── FOOTER ─── */
  /* ─── RESPONSIVE ─── */ }
  .a_type.b_cnt .intro {
    padding: 40px 0 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    max-width: 1400px;
    margin: 0 auto;
    padding-bottom: 10vh; }
    @media screen and (max-width: 900px) {
      .a_type.b_cnt .intro {
        gap: 6vw 0;
        flex-direction: column; } }
    .a_type.b_cnt .intro .l_cnt {
      width: 55%; }
      @media screen and (max-width: 900px) {
        .a_type.b_cnt .intro .l_cnt {
          width: 100%; } }
    .a_type.b_cnt .intro .r_cnt {
      width: 40%;
      display: flex;
      flex-direction: column;
      gap: 2vw 0; }
      @media screen and (max-width: 900px) {
        .a_type.b_cnt .intro .r_cnt {
          width: 100%;
          gap: 6vw 0; } }
  .a_type.b_cnt .intro-label {
    font-family: 'Cormorant Garamond', serif;
    font-size: 0.75rem;
    letter-spacing: 0.4em;
    color: #0085e2;
    text-transform: uppercase;
    margin-bottom: 1.5rem; }
  .a_type.b_cnt .intro-heading {
    font-family: 'Shippori Mincho', serif;
    font-size: clamp(1.6rem, 2.8vw, 2.4rem);
    font-weight: 600;
    line-height: 1.7;
    margin-bottom: 2rem; }
  .a_type.b_cnt .intro-body {
    font-size: 0.9rem;
    line-height: 2.2;
    color: #4a4238; }
  .a_type.b_cnt .intro-stat {
    border-left: 2px solid #0085e2;
    padding-left: 2rem; }
  .a_type.b_cnt .stat-number {
    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(3rem, 6vw, 5.5rem);
    font-weight: 300;
    color: #0085e2;
    line-height: 1;
    display: block; }
  .a_type.b_cnt .stat-unit {
    font-family: 'Cormorant Garamond', serif;
    font-size: 1.2rem;
    color: #7a7060;
    margin-bottom: 1rem;
    display: block; }
  .a_type.b_cnt .stat-label {
    font-size: 0.85rem;
    color: #7a7060;
    line-height: 1.8; }
  .a_type.b_cnt .ornament-divider {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    padding: 0 8vw;
    max-width: 1400px;
    margin: 0 auto; }
  .a_type.b_cnt .ornament-divider::before,
  .a_type.b_cnt .ornament-divider::after {
    content: '';
    flex: 1;
    height: 1px;
    background: linear-gradient(to right, transparent, rgba(0, 133, 226, 0.25), transparent); }
  .a_type.b_cnt .ornament-divider span {
    font-family: 'Cormorant Garamond', serif;
    font-size: 1.2rem;
    color: #0085e2;
    letter-spacing: 0.2em; }
  .a_type.b_cnt .plans {
    padding: 10vh 0;
    max-width: 1400px;
    margin: 0 auto; }
  .a_type.b_cnt .section-header {
    text-align: center;
    margin-bottom: 8vh; }
  .a_type.b_cnt .section-eyebrow {
    font-family: 'Cormorant Garamond', serif;
    font-size: 0.75rem;
    letter-spacing: 0.5em;
    color: #0085e2;
    text-transform: uppercase;
    margin-bottom: 1.2rem; }
  .a_type.b_cnt .section-title {
    font-family: 'Shippori Mincho', serif;
    font-size: clamp(1.8rem, 3.5vw, 3rem);
    font-weight: 600;
    line-height: 1.5; }
  .a_type.b_cnt .plan-cards {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 3vw; }
  .a_type.b_cnt .plan-card {
    position: relative;
    background: #f3faff;
    border: 1px solid rgba(0, 133, 226, 0.25);
    overflow: hidden;
    transition: transform 0.5s ease, box-shadow 0.5s ease;
    cursor: pointer; }
  .a_type.b_cnt .plan-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 30px 60px rgba(26, 22, 18, 0.15); }
  .a_type.b_cnt .plan-card-accent {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(to right, #b8975a, #d4b57a, #b8975a);
    background: linear-gradient(to right, #006fc0, #0085e2, #006fc0); }
  .a_type.b_cnt .plan-card-header {
    padding: 3rem 3rem 2rem;
    border-bottom: 1px solid rgba(0, 133, 226, 0.25); }
  .a_type.b_cnt .plan-number {
    font-family: 'Cormorant Garamond', serif;
    font-size: 0.7rem;
    letter-spacing: 0.4em;
    color: #0085e2;
    text-transform: uppercase;
    margin-bottom: 1rem; }
  .a_type.b_cnt .plan-title {
    font-family: 'Shippori Mincho', serif;
    font-size: clamp(1.4rem, 2.5vw, 2rem);
    font-weight: 600;
    line-height: 1.5;
    margin-bottom: 1rem; }
  .a_type.b_cnt .plan-tag {
    display: inline-block;
    font-size: 0.72rem;
    color: #0085e2;
    border: 1px solid rgba(0, 133, 226, 0.25);
    padding: 0.3rem 1rem;
    letter-spacing: 0.15em; }
  .a_type.b_cnt .plan-card-body {
    padding: 2.5rem 3rem; }
  .a_type.b_cnt .plan-highlight {
    display: flex;
    align-items: baseline;
    gap: 0.5rem;
    margin-bottom: 2rem;
    padding-bottom: 2rem;
    border-bottom: 1px solid rgba(0, 133, 226, 0.25); }
  .a_type.b_cnt .plan-highlight-num {
    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(2.5rem, 4vw, 3.5rem);
    font-weight: 300;
    color: #0085e2;
    line-height: 1; }
  .a_type.b_cnt .plan-highlight-unit {
    font-size: 0.85rem;
    color: #7a7060; }
  .a_type.b_cnt .plan-copy {
    font-size: 0.88rem;
    line-height: 2.1;
    color: #4a4238;
    margin-bottom: 2rem; }
  .a_type.b_cnt .plan-features {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 0.8rem; }
  .a_type.b_cnt .plan-features li {
    display: flex;
    align-items: center;
    gap: 0.8rem;
    font-size: 0.82rem;
    color: #5a5248; }
  .a_type.b_cnt .plan-features li::before {
    content: '';
    width: 20px;
    height: 1px;
    background: #0085e2;
    flex-shrink: 0; }
  .a_type.b_cnt .plan-card-footer {
    padding: 2rem 3rem;
    background: rgba(0, 133, 226, 0.05);
    border-top: 1px solid rgba(0, 133, 226, 0.25); }
  .a_type.b_cnt .plan-target {
    font-size: 0.78rem;
    color: #7a7060;
    line-height: 1.8; }
  .a_type.b_cnt .plan-target strong {
    color: #0085e2;
    font-weight: 500;
    display: block;
    margin-bottom: 0.4rem;
    font-size: 0.72rem;
    letter-spacing: 0.2em; }
  .a_type.b_cnt .compare {
    background: #0085e2;
    padding: 12vh 8vw; }
  .a_type.b_cnt .compare-inner {
    max-width: 1400px;
    margin: 0 auto; }
  .a_type.b_cnt .compare .section-title {
    color: #f5f0e8; }
  .a_type.b_cnt .compare-table {
    width: 100%;
    border-collapse: collapse;
    margin-top: 4rem; }
  .a_type.b_cnt .compare-table th,
  .a_type.b_cnt .compare-table td {
    padding: 1.5rem 2rem;
    text-align: center;
    border-bottom: 1px solid rgba(184, 151, 90, 0.15); }
  .a_type.b_cnt .compare-table th {
    font-family: 'Shippori Mincho', serif;
    font-size: 0.9rem;
    font-weight: 600;
    color: #d4b57a;
    letter-spacing: 0.1em; }
  .a_type.b_cnt .compare-table td {
    font-size: 0.85rem;
    color: rgba(240, 235, 224, 0.75);
    line-height: 1.8; }
  .a_type.b_cnt .compare-table td:first-child {
    text-align: left;
    color: rgba(0, 133, 226, 0.8);
    font-size: 0.78rem;
    letter-spacing: 0.15em; }
  .a_type.b_cnt .compare-table tr:hover td {
    background: rgba(184, 151, 90, 0.05); }
  .a_type.b_cnt .compare-note {
    margin-top: 2rem;
    font-size: 0.75rem;
    color: rgba(0, 133, 226, 0.35);
    text-align: center;
    letter-spacing: 0.1em; }
  .a_type.b_cnt .specs {
    padding: 12vh 8vw;
    max-width: 1400px;
    margin: 0 auto; }
  .a_type.b_cnt .specs-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1px;
    background: rgba(0, 133, 226, 0.25);
    border: 1px solid rgba(0, 133, 226, 0.25);
    margin-top: 4rem; }
  .a_type.b_cnt .spec-item {
    background: #faf8f4;
    padding: 2.5rem 2rem;
    text-align: center; }
  .a_type.b_cnt .spec-label {
    font-size: 0.72rem;
    letter-spacing: 0.2em;
    color: #7a7060;
    margin-bottom: 0.8rem;
    text-transform: uppercase; }
  .a_type.b_cnt .spec-value {
    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(1.4rem, 2.5vw, 2rem);
    font-weight: 400;
    color: #1a1612;
    line-height: 1.2; }
  .a_type.b_cnt .spec-unit {
    font-size: 0.8rem;
    color: #7a7060;
    display: block;
    margin-top: 0.3rem; }
  .a_type.b_cnt .cta {
    position: relative;
    padding: 14vh 8vw;
    background: #0085e2;
    overflow: hidden;
    text-align: center; }
  .a_type.b_cnt .cta-bg {
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse 60% 80% at 50% 50%, rgba(184, 151, 90, 0.08) 0%, transparent 70%); }
  .a_type.b_cnt .cta-content {
    position: relative;
    z-index: 2;
    max-width: 700px;
    margin: 0 auto; }
  .a_type.b_cnt .cta-eyebrow {
    font-family: 'Cormorant Garamond', serif;
    font-size: 0.75rem;
    letter-spacing: 0.5em;
    color: #0085e2;
    text-transform: uppercase;
    margin-bottom: 2rem; }
  .a_type.b_cnt .cta-title {
    font-family: 'Shippori Mincho', serif;
    font-size: clamp(1.6rem, 3vw, 2.6rem);
    font-weight: 600;
    color: #0085e2;
    line-height: 1.7;
    margin-bottom: 1.5rem; }
  .a_type.b_cnt .cta-body {
    font-size: 0.87rem;
    color: rgba(240, 235, 224, 0.55);
    line-height: 2;
    margin-bottom: 4rem; }
  .a_type.b_cnt .cta-buttons {
    display: flex;
    justify-content: center;
    gap: 1.5rem;
    flex-wrap: wrap; }
  .a_type.b_cnt .btn-primary {
    display: inline-block;
    padding: 1.2rem 3rem;
    background: #0085e2;
    color: #0085e2;
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 0.85rem;
    font-weight: 500;
    letter-spacing: 0.1em;
    text-decoration: none;
    transition: background 0.3s, transform 0.3s; }
  .a_type.b_cnt .btn-primary:hover {
    background: #0085e2;
    transform: translateY(-2px); }
  .a_type.b_cnt .btn-secondary {
    display: inline-block;
    padding: 1.2rem 3rem;
    background: transparent;
    color: #0085e2;
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 0.85rem;
    font-weight: 400;
    letter-spacing: 0.1em;
    text-decoration: none;
    border: 1px solid rgba(0, 133, 226, 0.3);
    transition: border-color 0.3s, transform 0.3s; }
  .a_type.b_cnt .btn-secondary:hover {
    border-color: #b8975a;
    color: #d4b57a;
    transform: translateY(-2px); }
  .a_type.b_cnt footer {
    background: #0085e2;
    padding: 3rem 8vw;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 1rem; }
  .a_type.b_cnt .footer-brand {
    font-family: 'Shippori Mincho', serif;
    font-size: 1rem;
    color: rgba(0, 133, 226, 0.7);
    letter-spacing: 0.2em; }
  .a_type.b_cnt .footer-note {
    font-size: 0.7rem;
    color: rgba(240, 235, 224, 0.2);
    letter-spacing: 0.1em; }
  @media (max-width: 900px) {
    .a_type.b_cnt .intro {
      grid-template-columns: 1fr; }
    .a_type.b_cnt .plan-cards {
      grid-template-columns: 1fr; }
    .a_type.b_cnt .specs-grid {
      grid-template-columns: repeat(2, 1fr); }
    .a_type.b_cnt .hero-line {
      display: none; }
    .a_type.b_cnt .plan-card-header, .a_type.b_cnt .plan-card-body, .a_type.b_cnt .plan-card-footer {
      padding-left: 2rem;
      padding-right: 2rem; }
    .a_type.b_cnt .compare-table th, .a_type.b_cnt .compare-table td {
      padding: 1rem;
      font-size: 0.78rem; } }
  @media (max-width: 600px) {
    .a_type.b_cnt .hero-content {
      padding: 0 6vw 8vh; }
    .a_type.b_cnt .cta-buttons {
      flex-direction: column;
      align-items: center; }
    .a_type.b_cnt .btn-primary, .a_type.b_cnt .btn-secondary {
      width: 100%;
      max-width: 300px;
      text-align: center; }
    .a_type.b_cnt .specs-grid {
      grid-template-columns: 1fr 1fr; } }
  .a_type.b_cnt .type_a_basic {
    max-width: 660px;
    margin: auto;
    padding: 10vh 0; }
  .a_type.b_cnt .intro-stat .text_wrap {
    display: flex;
    flex-direction: column;
    row-gap: clamp(10px, 1.25vw, 15px); }
    @media screen and (max-width: 480px) {
      .a_type.b_cnt .intro-stat .text_wrap {
        text-align: center; } }
    .a_type.b_cnt .intro-stat .text_wrap .txt {
      border-bottom: 1px solid;
      padding-bottom: clamp(10px, 1.5vw, 15px);
      line-height: 1;
      font-size: clamp(12px, 1.5vw, 15px);
      font-weight: bold; }
      .a_type.b_cnt .intro-stat .text_wrap .txt:nth-last-child(1 of .txt) {
        border: none; }
      .a_type.b_cnt .intro-stat .text_wrap .txt .en {
        font-weight: normal; }
    .a_type.b_cnt .intro-stat .text_wrap .txt01 {
      font-size: clamp(40px, 4.5vw, 45px);
      letter-spacing: 0.06em; }
      .a_type.b_cnt .intro-stat .text_wrap .txt01 .small_01 {
        font-size: 70%;
        position: relative; }
        .a_type.b_cnt .intro-stat .text_wrap .txt01 .small_01 sup {
          position: absolute;
          top: -1.9em;
          left: -1.6em;
          line-height: 1;
          font-size: 42%;
          padding: 0.15em 0.2em 0.25em;
          background: #000;
          color: #fff;
          width: 12.6em;
          text-align: center; }
          @media screen and (max-width: 480px) {
            .a_type.b_cnt .intro-stat .text_wrap .txt01 .small_01 sup {
              width: 12.9em; } }
      .a_type.b_cnt .intro-stat .text_wrap .txt01 .small_02 {
        font-size: 66%; }
      .a_type.b_cnt .intro-stat .text_wrap .txt01 .small_03 {
        font-size: 47%; }
    .a_type.b_cnt .intro-stat .text_wrap .txt02 .big_01 {
      font-size: 266%; }
    .a_type.b_cnt .intro-stat .text_wrap .txt02 .big_02 {
      font-size: 214%; }
    .a_type.b_cnt .intro-stat .text_wrap .txt02 .small {
      font-size: 94%; }
    .a_type.b_cnt .intro-stat .text_wrap .hanrei_list {
      font-size: clamp(10px, 1.25vw, 13px);
      line-height: 1;
      display: flex;
      align-items: baseline;
      font-weight: 700;
      gap: 0.5em 0.8em; }
      @media screen and (max-width: 480px) {
        .a_type.b_cnt .intro-stat .text_wrap .hanrei_list {
          justify-content: center;
          font-size: 12px; } }
      .a_type.b_cnt .intro-stat .text_wrap .hanrei_list .item {
        display: flex;
        align-items: center;
        gap: 0.25em; }
        .a_type.b_cnt .intro-stat .text_wrap .hanrei_list .item .icon {
          width: 2.3em;
          height: 0.76em;
          border: 1px solid; }
          .a_type.b_cnt .intro-stat .text_wrap .hanrei_list .item .icon.icon_storage {
            background: #e9e4d6; }
          .a_type.b_cnt .intro-stat .text_wrap .hanrei_list .item .icon.icon_water {
            background: #e1f2fc; }
          .a_type.b_cnt .intro-stat .text_wrap .hanrei_list .item .icon.icon_yukadan {
            background: #fbecd2; }
    .a_type.b_cnt .intro-stat .text_wrap .hensai {
      border: 1px solid #000;
      font-weight: bold; }
      .a_type.b_cnt .intro-stat .text_wrap .hensai .hensai_ttl {
        padding: 0.3em 0.5em;
        background: #000;
        text-align: center;
        color: #fff;
        font-size: clamp(11px, 1.4vw, 14px);
        letter-spacing: 0.2em; }
      .a_type.b_cnt .intro-stat .text_wrap .hensai .txts {
        padding: 0.8em 0.5em; }
        .a_type.b_cnt .intro-stat .text_wrap .hensai .txts .flex {
          flex-wrap: wrap;
          justify-content: center;
          align-items: flex-end;
          grid-gap: 0 0.5em; }
          .a_type.b_cnt .intro-stat .text_wrap .hensai .txts .flex:not(:last-child) {
            padding-bottom: 0.8em;
            margin-bottom: 0.7em;
            border-bottom: 1px solid #887631; }
        .a_type.b_cnt .intro-stat .text_wrap .hensai .txts .txt1 {
          display: flex;
          justify-content: center;
          align-items: baseline;
          font-size: clamp(11px, 1.6vw, 16px);
          letter-spacing: 0;
          line-height: 1; }
          @media screen and (max-width: 480px) {
            .a_type.b_cnt .intro-stat .text_wrap .hensai .txts .txt1 {
              font-size: 4vw; } }
          .a_type.b_cnt .intro-stat .text_wrap .hensai .txts .txt1 .bg_text {
            font-size: 0.9em;
            line-height: 1;
            background: #887631;
            color: #fff;
            padding: 0.3em;
            margin-right: 0.25em;
            transform: translateY(-3px); }
          .a_type.b_cnt .intro-stat .text_wrap .hensai .txts .txt1 .lg {
            display: inline-block;
            font-size: 240%;
            color: #900;
            line-height: 0.8; }
          .a_type.b_cnt .intro-stat .text_wrap .hensai .txts .txt1 .lg2 {
            font-size: 180%;
            line-height: 0.8; }
            .a_type.b_cnt .intro-stat .text_wrap .hensai .txts .txt1 .lg2.red {
              color: #900; }
          .a_type.b_cnt .intro-stat .text_wrap .hensai .txts .txt1 .lg3 {
            display: inline-block;
            color: #900;
            font-size: 400%;
            line-height: 0.8; }
          .a_type.b_cnt .intro-stat .text_wrap .hensai .txts .txt1 .monthly {
            font-size: 160%; }
          .a_type.b_cnt .intro-stat .text_wrap .hensai .txts .txt1 .min {
            font-size: 80%; }
        .a_type.b_cnt .intro-stat .text_wrap .hensai .txts .bonus_text {
          font-size: clamp(10px, 1.2vw, 12px);
          line-height: 1;
          text-align: center;
          width: 100%;
          background: #887631;
          color: #fff;
          padding: 0.3em;
          margin-top: 1em; }
          @media screen and (max-width: 480px) {
            .a_type.b_cnt .intro-stat .text_wrap .hensai .txts .bonus_text {
              font-size: 12px;
              padding: 5px; } }
        .a_type.b_cnt .intro-stat .text_wrap .hensai .txts .cap_l {
          text-align: justify;
          font-size: 10px; }

.plan_detail_group.a_inner {
  margin-left: auto;
  margin-right: auto; }
  .plan_detail_group.a_inner .plan_detail_group_in {
    left: 0;
    right: 0; }
  .plan_detail_group.a_inner .plan-card .menu_txt {
    background: #0085e2;
    color: #fff;
    padding: 10px;
    line-height: 1;
    letter-spacing: 0.1em;
    font-size: 16px;
    text-align: center; }
  .plan_detail_group.a_inner .b_cnt {
    margin-top: clamp(60px, 8.34%, 100px);
    width: 100%; }
    .plan_detail_group.a_inner .b_cnt .cnt_ttl {
      background: #0085e2;
      text-align: center;
      color: #fff;
      padding: 20px 0; }
      .plan_detail_group.a_inner .b_cnt .cnt_ttl .hero-title {
        font-size: clamp(18px, 3.6vw, 36px);
        font-weight: bold;
        margin-bottom: 0.5em;
        line-height: 1.4;
        letter-spacing: 0.1em; }
        @media screen and (max-width: 480px) {
          .plan_detail_group.a_inner .b_cnt .cnt_ttl .hero-title {
            font-size: calc(22vw/3.9); } }
        .plan_detail_group.a_inner .b_cnt .cnt_ttl .hero-title em {
          font-style: normal;
          color: #d4b57a; }
      .plan_detail_group.a_inner .b_cnt .cnt_ttl .hero-sub {
        font-size: clamp(14px, 2vw, 20px);
        letter-spacing: 0.1em;
        line-height: 1.6; }
        @media screen and (max-width: 480px) {
          .plan_detail_group.a_inner .b_cnt .cnt_ttl .hero-sub {
            font-size: calc(13vw/3.9); } }
    .plan_detail_group.a_inner .b_cnt .intro-heading {
      font-size: clamp(16px, 3.2vw, 32px); }
      @media screen and (max-width: 480px) {
        .plan_detail_group.a_inner .b_cnt .intro-heading {
          font-size: calc(22vw/3.9); } }
    .plan_detail_group.a_inner .b_cnt .section-title {
      font-size: clamp(16px, 3.6vw, 36px); }
      @media screen and (max-width: 480px) {
        .plan_detail_group.a_inner .b_cnt .section-title {
          font-size: calc(20vw/3.9); } }
    .plan_detail_group.a_inner .b_cnt .plan-title {
      font-size: clamp(14px, 2.8vw, 28px); }
      @media screen and (max-width: 480px) {
        .plan_detail_group.a_inner .b_cnt .plan-title {
          font-size: calc(18vw/3.9); } }

.inner_900 {
  max-width: 900px;
  margin-left: auto;
  margin-right: auto; }

.inner_1200 {
  max-width: 1200px; }

.garamond {
  font-family: "EB Garamond", serif; }

.type_a .inner_1200 {
  max-width: 1200px;
  margin: 0 auto;
  width: calc(100% - 40px); }
.type_a .box_a {
  max-width: 1200px;
  margin: 0 auto;
  text-align: center;
  margin-top: clamp(40px, 5.84%, 70px); }
  .type_a .box_a .txts {
    letter-spacing: 0.1em; }
    @media screen and (max-width: 1000px) {
      .type_a .box_a .txts {
        padding-top: 30px;
        width: calc(100% - 40px);
        margin: 0 auto; } }
    .type_a .box_a .txts .txt1 {
      color: #906c00;
      line-height: 1;
      font-weight: 400;
      font-size: clamp(14px, 1.667vw, 20px);
      margin-bottom: 1em; }
      @media screen and (max-width: 1000px) {
        .type_a .box_a .txts .txt1 {
          text-align: center;
          margin-bottom: 15px; } }
      @media screen and (max-width: 480px) {
        .type_a .box_a .txts .txt1 {
          font-size: calc(16vw/4.14); } }
    .type_a .box_a .txts .txt2 {
      color: #906c00;
      font-size: clamp(26px, 3.334vw, 40px);
      line-height: 1.5;
      font-weight: 400;
      margin-bottom: 0.5em; }
      @media screen and (max-width: 1000px) {
        .type_a .box_a .txts .txt2 {
          text-align: center;
          margin-bottom: 15px; } }
      @media screen and (max-width: 480px) {
        .type_a .box_a .txts .txt2 {
          font-size: calc(30vw/4.14); } }
    .type_a .box_a .txts .txt3 {
      font-size: clamp(18px, 1.834vw, 22px);
      line-height: 1.81;
      margin-bottom: calc(25%/5.7);
      font-weight: 500;
      margin-bottom: 0; }
      @media screen and (max-width: 1000px) {
        .type_a .box_a .txts .txt3 {
          text-align: center;
          margin-bottom: 15px; } }
      @media screen and (max-width: 480px) {
        .type_a .box_a .txts .txt3 {
          font-size: calc(18vw/4.14); } }
      .type_a .box_a .txts .txt3 .lg {
        color: #906c00;
        font-size: 200%;
        line-height: 0.8;
        display: inline-block; }
    .type_a .box_a .txts .txt4 {
      font-size: clamp(13px, 1.25vw, 15px);
      line-height: 2.33;
      letter-spacing: -.055em;
      margin-bottom: calc(35%/5.7); }
      @media screen and (max-width: 1000px) {
        .type_a .box_a .txts .txt4 {
          text-align: center;
          line-height: 2;
          margin-bottom: 25px; } }
      @media screen and (max-width: 480px) {
        .type_a .box_a .txts .txt4 {
          text-align: left;
          font-size: calc(14vw/4.14);
          line-height: 2.14; } }
    .type_a .box_a .txts .flex_txt {
      display: flex;
      align-items: flex-end;
      gap: 0 17px; }
      @media screen and (max-width: 1000px) {
        .type_a .box_a .txts .flex_txt {
          justify-content: center; } }
      @media screen and (max-width: 480px) {
        .type_a .box_a .txts .flex_txt {
          align-items: center; } }
      .type_a .box_a .txts .flex_txt .txt5 {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 3em;
        height: 3em;
        font-size: clamp(15px, 2vw, 24px);
        line-height: 1.2;
        padding: .2em;
        border: 1px solid #000; }
        @media screen and (max-width: 480px) {
          .type_a .box_a .txts .flex_txt .txt5 {
            width: auto;
            height: auto;
            font-size: calc(18vw/4.14); } }
      .type_a .box_a .txts .flex_txt .txt6 span {
        display: inline-block; }
      .type_a .box_a .txts .flex_txt .txt6 .garamond {
        font-size: clamp(60px, 8.334vw, 100px);
        line-height: 0.8;
        font-weight: 400;
        letter-spacing: 0; }
        @media screen and (max-width: 480px) {
          .type_a .box_a .txts .flex_txt .txt6 .garamond {
            font-size: calc(80vw/4.14); } }
      .type_a .box_a .txts .flex_txt .txt6 .min {
        font-size: clamp(15px, 2vw, 24px);
        line-height: 1; }
        @media screen and (max-width: 480px) {
          .type_a .box_a .txts .flex_txt .txt6 .min {
            font-size: calc(24vw/4.14); } }
.type_a .type_change_btn .change_btn {
  height: 70px;
  padding: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  gap: 5px; }
.type_a .tow_plan_wrap {
  text-align: center;
  background: #f4f4f4;
  padding: 40px 20px;
  margin-top: 40px; }
  .type_a .tow_plan_wrap .c1 {
    color: #906c00; }
  .type_a .tow_plan_wrap .img_list_a {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center; }
    @media screen and (max-width: 680px) {
      .type_a .tow_plan_wrap .img_list_a {
        max-width: 400px;
        gap: 20px;
        flex-direction: column; } }
    .type_a .tow_plan_wrap .img_list_a .or_txt {
      width: 40px; }
      @media screen and (max-width: 680px) {
        .type_a .tow_plan_wrap .img_list_a .or_txt {
          width: 25px; } }
    .type_a .tow_plan_wrap .img_list_a .plan-card {
      cursor: pointer;
      width: calc(560%/12);
      box-shadow: 0 0 8px rgba(0, 0, 0, 0.3);
      transition: all 0.3s; }
      @media screen and (max-width: 680px) {
        .type_a .tow_plan_wrap .img_list_a .plan-card {
          width: 100%; } }
      @media (hover: hover) {
        .type_a .tow_plan_wrap .img_list_a .plan-card:hover {
          opacity: 0.7;
          box-shadow: 0 0 0; } }
  .type_a .tow_plan_wrap .txt1 {
    font-size: clamp(14px, 1.667vw, 20px); }
  .type_a .tow_plan_wrap .txt2 {
    font-size: clamp(28px, 3.334vw, 40px); }
    @media screen and (max-width: 680px) {
      .type_a .tow_plan_wrap .txt2 {
        line-height: 1.8; } }
    .type_a .tow_plan_wrap .txt2 .italic {
      display: inline;
      font-style: italic; }
  .type_a .tow_plan_wrap .txt3 {
    font-size: clamp(20px, 2.167vw, 26px);
    margin-bottom: 2em;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 15px; }
    @media screen and (max-width: 680px) {
      .type_a .tow_plan_wrap .txt3 {
        margin-bottom: 30px; } }
    .type_a .tow_plan_wrap .txt3::before, .type_a .tow_plan_wrap .txt3::after {
      content: "";
      height: 1px;
      width: 3em;
      display: block;
      background: #906c00; }

.page_scroll_group {
  position: fixed;
  right: 20px;
  bottom: 20px;
  display: flex;
  flex-direction: row-reverse;
  z-index: 10; }
  @media screen and (max-width: 900px) {
    .page_scroll_group {
      bottom: 60px; } }
  @media screen and (max-width: 480px) {
    .page_scroll_group {
      right: 10px; } }
  .page_scroll_group .page_scroll {
    font-size: 14px;
    writing-mode: vertical-rl; }
  .page_scroll_group .line {
    display: block;
    height: 100%;
    width: 1px;
    margin: 0 auto;
    overflow: hidden;
    position: relative;
    pointer-events: none; }
    .page_scroll_group .line:after {
      content: "";
      position: absolute;
      inset: 0;
      display: block;
      border-left: solid 1px #000;
      margin: 0 auto;
      animation: loopScrollBar 1.5s ease-in-out 0s infinite both; }
@keyframes loopScrollBar {
  0% {
    transform: translateY(-100%); }
  40% {
    transform: translateY(0%); }
  80%, 100% {
    transform: translateY(100%); } }
.planHensai {
  width: 90%;
  max-width: 880px;
  border: solid 1px #607F72;
  padding: 40px 3%;
  margin: 60px auto 0;
  padding: 15px 3% 40px; }

@media (max-width: 767px) {
  .planHensai {
    padding: 20px 5%;
    margin: 30px auto 0; } }
.planHensai .phead {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 20px;
  -moz-column-gap: 20px;
  column-gap: 20px;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
  -ms-flex-align: end;
  align-items: flex-end;
  border-bottom: solid 1px #607F72;
  margin-bottom: 20px;
  padding-bottom: 20px; }

@media (max-width: 767px) {
  .planHensai .phead {
    -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;
    padding-bottom: 10px; } }
.planHensai .phead .plan {
  background: #607F72;
  padding: 10px 20px;
  color: #fff;
  font-size: 16px;
  line-height: 1; }

@media (max-width: 767px) {
  .planHensai .phead .plan {
    font-size: 14px; } }
.planHensai .phead .price {
  font-size: 24px;
  line-height: 1; }

@media (max-width: 767px) {
  .planHensai .phead .price {
    font-size: 20px; } }
.planHensai .phead .price strong {
  color: #870b0b;
  font-size: 300%;
  line-height: 1;
  font-weight: normal; }

.planHensai .pbody .hensaiTxt01 {
  font-size: 16px;
  line-height: 1.5em;
  margin-bottom: 20px; }

@media (max-width: 767px) {
  .planHensai .pbody .hensaiTxt01 {
    font-size: 14px; } }
.planHensai .pbody .hensaiTxt01 strong {
  color: #870b0b;
  font-size: 140%;
  line-height: 1;
  font-weight: normal;
  display: inline-block;
  margin-left: 10px; }

.planHensai .pbody .hensaiTxt01 span {
  display: inline-block; }

.planHensai .pbody .hensaiTxt01 span:nth-child(2) {
  margin: 0 10px; }

.planHensai .pbody .hensaiTxt02 {
  font-size: 14px;
  line-height: 1.5em; }

@media (max-width: 767px) {
  .planHensai .pbody .hensaiTxt02 {
    font-size: 12px; } }
