/*! Writen  by SCSS */
.sec01 {
  padding: clamp(50px, 6.667vw, 80px) 0 clamp(50px, 7.5vw, 90px); }
  .sec01 .sec01_wrap01 {
    margin-bottom: clamp(60px, 7.5vw, 90px); }
    .sec01 .sec01_wrap01 .midashi_group {
      margin-bottom: clamp(40px, 5vw, 60px);
      flex-direction: column;
      row-gap: clamp(15px, 1.667vw, 20px);
      text-align: center; }
      @media screen and (max-width: 480px) {
        .sec01 .sec01_wrap01 .midashi_group .head_ttl {
          display: flex;
          justify-content: center;
          column-gap: 10px;
          flex-direction: column; } }
      .sec01 .sec01_wrap01 .midashi_group .head_read {
        font-size: clamp(15px, 2.167vw, 26px); }
        @media screen and (max-width: 480px) {
          .sec01 .sec01_wrap01 .midashi_group .head_read {
            font-size: 14px; } }
    .sec01 .sec01_wrap01 .ttl01 {
      display: flex;
      justify-content: center;
      text-align: center;
      column-gap: 20px;
      margin-bottom: 1em;
      line-height: 1;
      font-size: clamp(15px, 2.5vw, 30px);
      color: #1f73b2; }
      @media screen and (max-width: 480px) {
        .sec01 .sec01_wrap01 .ttl01 {
          font-size: 5vw; } }
      .sec01 .sec01_wrap01 .ttl01:before, .sec01 .sec01_wrap01 .ttl01:after {
        content: "";
        display: block;
        width: 1px;
        height: auto; }
      .sec01 .sec01_wrap01 .ttl01:before {
        border-left: 1px dotted #1f73b2;
        transform: skew(30deg); }
      .sec01 .sec01_wrap01 .ttl01:after {
        border-right: 1px dotted #1f73b2;
        transform: skew(-30deg); }
    .sec01 .sec01_wrap01 .sec01_list {
      display: flex;
      justify-content: space-between; }
      @media screen and (max-width: 480px) {
        .sec01 .sec01_wrap01 .sec01_list {
          flex-direction: column;
          gap: 30px 0; } }
      .sec01 .sec01_wrap01 .sec01_list li {
        width: 30.84%; }
        @media screen and (max-width: 480px) {
          .sec01 .sec01_wrap01 .sec01_list li {
            width: 100%; } }
        .sec01 .sec01_wrap01 .sec01_list li .img {
          margin-bottom: 15px; }
          @media screen and (max-width: 480px) {
            .sec01 .sec01_wrap01 .sec01_list li .img {
              margin-bottom: 10px; } }
        .sec01 .sec01_wrap01 .sec01_list li .txt {
          font-size: clamp(14px, 1.834vw, 22px);
          text-align: center;
          line-height: 1.37; }
          @media screen and (max-width: 480px) {
            .sec01 .sec01_wrap01 .sec01_list li .txt {
              font-size: 4.6vw; } }
  .sec01 .sec01_wrap02 .bustab_group .line_ttl {
    margin-bottom: clamp(30px, 4.167vw, 50px); }
  .sec01 .sec01_wrap02 .bustab_group .installation_image {
    border: 2px solid #2d81c1;
    font-size: clamp(18px, 2.167vw, 26px);
    max-width: 360px;
    text-align: center;
    padding: 5px 20px;
    border-radius: 40px;
    margin: 0 auto 30px;
    color: #2d81c1; }
    @media screen and (max-width: 480px) {
      .sec01 .sec01_wrap02 .bustab_group .installation_image {
        width: 85%; } }
  .sec01 .sec01_wrap02 .bustab_group .head_sub {
    display: flex;
    justify-content: center;
    align-items: center;
    column-gap: 30px;
    font-size: clamp(16px, 1.834vw, 22px); }
    .sec01 .sec01_wrap02 .bustab_group .head_sub:before, .sec01 .sec01_wrap02 .bustab_group .head_sub:after {
      content: "";
      width: 100%;
      background: #4da7ff;
      height: 1px; }
    .sec01 .sec01_wrap02 .bustab_group .head_sub .ttl {
      flex-shrink: 0;
      font-size: clamp(16px, 1.834vw, 22px);
      color: #4da7ff; }
    .sec01 .sec01_wrap02 .bustab_group .head_sub.blue {
      color: #4da7ff; }
    .sec01 .sec01_wrap02 .bustab_group .head_sub.first {
      margin: clamp(30px, 5vw, 60px) 0 clamp(20px, 3.334vw, 40px); }
    .sec01 .sec01_wrap02 .bustab_group .head_sub.second {
      margin-bottom: clamp(15px, 2.084vw, 25px); }
    .sec01 .sec01_wrap02 .bustab_group .head_sub.no_line:before, .sec01 .sec01_wrap02 .bustab_group .head_sub.no_line:after {
      content: none; }
  .sec01 .sec01_wrap02 .bustab_group .photo_spec_group {
    align-items: flex-start; }
    @media screen and (max-width: 480px) {
      .sec01 .sec01_wrap02 .bustab_group .photo_spec_group {
        flex-direction: column;
        row-gap: 40px; } }
    .sec01 .sec01_wrap02 .bustab_group .photo_spec_group .photo_spec_in {
      width: 46.67%; }
      @media screen and (max-width: 480px) {
        .sec01 .sec01_wrap02 .bustab_group .photo_spec_group .photo_spec_in {
          width: 100%; } }
      .sec01 .sec01_wrap02 .bustab_group .photo_spec_group .photo_spec_in .bus_tab_ttl {
        font-size: clamp(24px, 3.501vw, 42px);
        text-align: center;
        color: #FFF;
        padding: 10px;
        background-position: top center;
        background-repeat: no-repeat;
        background-size: cover;
        border-top-left-radius: 25px;
        border-top-right-radius: 25px;
        line-height: 1;
        display: flex;
        justify-content: center;
        gap: 0 20px;
        align-items: center; }
        @media screen and (max-width: 480px) {
          .sec01 .sec01_wrap02 .bustab_group .photo_spec_group .photo_spec_in .bus_tab_ttl {
            border-top-left-radius: 15px;
            border-top-right-radius: 15px;
            gap: 0 10px; } }
        .sec01 .sec01_wrap02 .bustab_group .photo_spec_group .photo_spec_in .bus_tab_ttl.bg01 {
          background-image: url("../images/special/order/bg_royal.jpg"); }
        .sec01 .sec01_wrap02 .bustab_group .photo_spec_group .photo_spec_in .bus_tab_ttl.bg02 {
          background-image: url("../images/special/order/bg_standard.jpg"); }
        .sec01 .sec01_wrap02 .bustab_group .photo_spec_group .photo_spec_in .bus_tab_ttl small {
          display: block;
          margin: 5px 0 0;
          font-size: 0.4em;
          text-align: center; }
      .sec01 .sec01_wrap02 .bustab_group .photo_spec_group .photo_spec_in .spec {
        background: #F5F5F5;
        border-radius: 20px;
        margin-top: 20px;
        padding: clamp(15px, 2.5vw, 30px); }
        @media screen and (max-width: 480px) {
          .sec01 .sec01_wrap02 .bustab_group .photo_spec_group .photo_spec_in .spec {
            width: 100%; } }
        .sec01 .sec01_wrap02 .bustab_group .photo_spec_group .photo_spec_in .spec .spec_ttl {
          display: flex;
          justify-content: flex-start;
          column-gap: 10px;
          font-size: clamp(14px, 1.667vw, 20px);
          line-height: 1;
          margin-bottom: clamp(10px, 1.667vw, 20px); }
          @media screen and (max-width: 480px) {
            .sec01 .sec01_wrap02 .bustab_group .photo_spec_group .photo_spec_in .spec .spec_ttl {
              font-size: 16px;
              margin-bottom: 10px; } }
          .sec01 .sec01_wrap02 .bustab_group .photo_spec_group .photo_spec_in .spec .spec_ttl:before {
            content: "";
            width: 8px;
            background: #2d81c1; }
        .sec01 .sec01_wrap02 .bustab_group .photo_spec_group .photo_spec_in .spec .spec_txt {
          font-size: clamp(10px, 1.5vw, 18px);
          line-height: 2.2; }
          @media screen and (max-width: 820px) {
            .sec01 .sec01_wrap02 .bustab_group .photo_spec_group .photo_spec_in .spec .spec_txt {
              font-size: 10px; } }
          @media screen and (max-width: 768px) {
            .sec01 .sec01_wrap02 .bustab_group .photo_spec_group .photo_spec_in .spec .spec_txt {
              font-size: 11px; } }
  .sec01 .sec01_wrap02 .bustab_group .movie_group {
    margin: clamp(50px, 7.5vw, 90px) auto clamp(40px, 5vw, 60px); }
  .sec01 .sec01_wrap02 .bustab_group .banner_interivew {
    max-width: 900px;
    margin: 0 auto clamp(40px, 5vw, 60px); }
    .sec01 .sec01_wrap02 .bustab_group .banner_interivew a {
      display: block; }
  .sec01 .sec01_wrap02 .bustab_group .use_image_group .line_ttl {
    margin-bottom: clamp(30px, 4.167vw, 50px); }
  .sec01 .sec01_wrap02 .bustab_group .use_image_group .use_image {
    margin-bottom: clamp(40px, 5vw, 60px); }
    @media screen and (max-width: 480px) {
      .sec01 .sec01_wrap02 .bustab_group .use_image_group .use_image {
        flex-direction: column;
        gap: 50px 0; } }
    .sec01 .sec01_wrap02 .bustab_group .use_image_group .use_image .use_in {
      width: 30.84%; }
      @media screen and (max-width: 480px) {
        .sec01 .sec01_wrap02 .bustab_group .use_image_group .use_image .use_in {
          width: 100%; } }
      .sec01 .sec01_wrap02 .bustab_group .use_image_group .use_image .use_in .photo_group .photo {
        width: 67.57%; }
        .sec01 .sec01_wrap02 .bustab_group .use_image_group .use_image .use_in .photo_group .photo:nth-child(2) {
          margin-left: auto;
          margin-top: -15%;
          filter: drop-shadow(0px 0px 0px rgba(0, 0, 0, 0.1)) drop-shadow(0px 0px 1px rgba(0, 0, 0, 0.1)) drop-shadow(0px 0px 2px rgba(0, 0, 0, 0.1)) drop-shadow(0px 0px 3px rgba(0, 0, 0, 0.1)) drop-shadow(0px 0px 4px rgba(0, 0, 0, 0.1)) drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.1)); }
      .sec01 .sec01_wrap02 .bustab_group .use_image_group .use_image .use_in .photo_group .cap {
        right: 10px; }
      .sec01 .sec01_wrap02 .bustab_group .use_image_group .use_image .use_in .type_name {
        margin-top: -45px;
        line-height: 1.6;
        font-size: clamp(18px, 2.667vw, 32px);
        color: #2d81c1; }
        @media screen and (max-width: 820px) {
          .sec01 .sec01_wrap02 .bustab_group .use_image_group .use_image .use_in .type_name {
            margin-top: -30px; } }
        @media screen and (max-width: 480px) {
          .sec01 .sec01_wrap02 .bustab_group .use_image_group .use_image .use_in .type_name {
            font-size: 6.4vw; } }
        .sec01 .sec01_wrap02 .bustab_group .use_image_group .use_image .use_in .type_name .small {
          margin-top: 10px;
          color: #333;
          display: block;
          font-size: 50%; }
          @media screen and (max-width: 480px) {
            .sec01 .sec01_wrap02 .bustab_group .use_image_group .use_image .use_in .type_name .small {
              margin-top: 5px;
              font-size: 55%; } }
  .sec01 .sec01_wrap02 .bustab_group .use_image_group .type_detail {
    max-width: 940px;
    margin: 0 auto;
    border: 1px dotted #000;
    padding: 25px clamp(20px, 3.334vw, 40px); }
    @media screen and (max-width: 480px) {
      .sec01 .sec01_wrap02 .bustab_group .use_image_group .type_detail {
        padding: 20px; } }
    .sec01 .sec01_wrap02 .bustab_group .use_image_group .type_detail .type_detail_ttl {
      font-size: clamp(23px, 2.5vw, 30px);
      color: #2d81c1;
      font-weight: bold;
      line-height: 1.4;
      text-align: center;
      margin-bottom: 20px; }
      @media screen and (max-width: 480px) {
        .sec01 .sec01_wrap02 .bustab_group .use_image_group .type_detail .type_detail_ttl {
          font-size: 5.4vw; } }
      .sec01 .sec01_wrap02 .bustab_group .use_image_group .type_detail .type_detail_ttl .small {
        font-size: 70%; }
    .sec01 .sec01_wrap02 .bustab_group .use_image_group .type_detail .sale_txt {
      column-gap: 20px;
      align-items: center;
      margin-bottom: 25px; }
      .sec01 .sec01_wrap02 .bustab_group .use_image_group .type_detail .sale_txt:before, .sec01 .sec01_wrap02 .bustab_group .use_image_group .type_detail .sale_txt:after {
        content: "";
        width: 100%;
        height: 3px;
        border-top: 3px double rgba(51, 51, 51, 0.6); }
      .sec01 .sec01_wrap02 .bustab_group .use_image_group .type_detail .sale_txt span {
        flex-shrink: 0;
        line-height: 1.2;
        font-size: clamp(17px, 1.834vw, 22px); }
    .sec01 .sec01_wrap02 .bustab_group .use_image_group .type_detail .type_detail_in {
      flex-wrap: wrap;
      justify-content: center;
      gap: clamp(20px, 2.5vw, 30px) 40px; }
      @media screen and (max-width: 480px) {
        .sec01 .sec01_wrap02 .bustab_group .use_image_group .type_detail .type_detail_in {
          flex-direction: column;
          row-gap: 20px; } }
      @media screen and (max-width: 480px) {
        .sec01 .sec01_wrap02 .bustab_group .use_image_group .type_detail .type_detail_in .detail_in {
          width: 100%; } }
      .sec01 .sec01_wrap02 .bustab_group .use_image_group .type_detail .type_detail_in .detail_in.full {
        width: 100%; }
      .sec01 .sec01_wrap02 .bustab_group .use_image_group .type_detail .type_detail_in .detail_in .detail_ttl {
        display: flex;
        justify-content: flex-start;
        column-gap: 10px;
        font-size: clamp(19px, 2.084vw, 25px);
        line-height: 1;
        color: #2d81c1;
        margin-bottom: 10px; }
        .sec01 .sec01_wrap02 .bustab_group .use_image_group .type_detail .type_detail_in .detail_in .detail_ttl:before {
          content: "";
          width: 8px;
          background: #2d81c1; }
      .sec01 .sec01_wrap02 .bustab_group .use_image_group .type_detail .type_detail_in .detail_in .price {
        font-size: clamp(24px, 2.334vw, 28px);
        line-height: 1;
        letter-spacing: 0.15em; }
        @media screen and (max-width: 480px) {
          .sec01 .sec01_wrap02 .bustab_group .use_image_group .type_detail .type_detail_in .detail_in .price {
            letter-spacing: 0.05em; } }
        .sec01 .sec01_wrap02 .bustab_group .use_image_group .type_detail .type_detail_in .detail_in .price .big {
          font-size: 142%;
          display: inline-block;
          line-height: 1;
          color: #bb0000; }
        .sec01 .sec01_wrap02 .bustab_group .use_image_group .type_detail .type_detail_in .detail_in .price .small {
          font-size: 57%; }
      .sec01 .sec01_wrap02 .bustab_group .use_image_group .type_detail .type_detail_in .detail_in .detail_read {
        margin-top: 5px;
        font-size: clamp(13px, 1.5vw, 18px); }
      .sec01 .sec01_wrap02 .bustab_group .use_image_group .type_detail .type_detail_in .detail_in .detail_anno {
        font-size: clamp(12px, 1.167vw, 14px);
        text-indent: -1em;
        padding-left: 1em; }

.sec02 {
  padding: clamp(40px, 5vw, 60px) 0 clamp(50px, 6.667vw, 80px);
  background: rgba(109, 197, 176, 0.3); }
  .sec02 .features_group .fea_ttl {
    text-align: center;
    font-size: clamp(24px, 2.834vw, 34px);
    color: #30937b;
    margin-bottom: clamp(30px, 3.334vw, 40px);
    align-items: center; }
    .sec02 .features_group .fea_ttl small {
      font-size: 0.7em;
      display: block;
      text-align: center;
      margin: auto; }
  .sec02 .features_group .fea_item {
    flex-direction: column; }
    .sec02 .features_group .fea_item .item_in:not(:first-child) {
      padding-top: clamp(25px, 3.334vw, 40px);
      margin-top: clamp(25px, 3.334vw, 40px);
      border-top: 1px dashed #333; }
    .sec02 .features_group .fea_item .item_in .fea_name {
      display: flex;
      justify-content: flex-start;
      column-gap: 10px;
      font-size: clamp(18px, 2.167vw, 26px);
      line-height: 1.4;
      margin-bottom: 10px;
      width: fit-content; }
      .sec02 .features_group .fea_item .item_in .fea_name:before {
        content: "";
        width: 8px;
        background: #52a490;
        height: 19px;
        margin: auto; }
      .sec02 .features_group .fea_item .item_in .fea_name.text_line {
        background: linear-gradient(transparent 55%, #fff694 55%, #fff694 99%, transparent 100%); }
    .sec02 .features_group .fea_item .item_in .fea_read {
      font-size: clamp(13px, 1.5vw, 18px); }
    .sec02 .features_group .fea_item .item_in .flow_group {
      margin-top: 30px; }
      @media screen and (max-width: 480px) {
        .sec02 .features_group .fea_item .item_in .flow_group {
          margin-top: 20px; } }
      .sec02 .features_group .fea_item .item_in .flow_group .flow_in {
        width: 30.84%; }
        .sec02 .features_group .fea_item .item_in .flow_group .flow_in .photo_txt {
          font-size: clamp(15px, 1.834vw, 22px);
          color: #2c7664;
          text-align: center;
          margin-top: 10px;
          line-height: 1.36; }
          @media screen and (max-width: 480px) {
            .sec02 .features_group .fea_item .item_in .flow_group .flow_in .photo_txt {
              font-size: 12px; } }

.sec03 {
  padding: clamp(40px, 5.834vw, 70px) 0 clamp(60px, 8.334vw, 100px); }
  .sec03 .line_ttl {
    margin-bottom: clamp(30px, 3.334vw, 40px); }
  .sec03 .movie_group {
    max-width: 800px;
    margin: 0 auto clamp(20px, 5.834vw, 70px);
    max-width: 100%;
    display: flex;
    justify-content: space-between; }
    @media screen and (max-width: 480px) {
      .sec03 .movie_group {
        flex-direction: column;
        row-gap: 30px; } }
    .sec03 .movie_group .movie_item {
      width: 48.34%;
      text-align: center; }
      @media screen and (max-width: 480px) {
        .sec03 .movie_group .movie_item {
          width: 100%; } }
      .sec03 .movie_group .movie_item .line_ttl {
        margin-bottom: 20px; }
        @media screen and (max-width: 480px) {
          .sec03 .movie_group .movie_item .line_ttl {
            margin-bottom: 10px; } }
        .sec03 .movie_group .movie_item .line_ttl .ttl {
          font-size: clamp(20px, 2.5vw, 30px); }
      .sec03 .movie_group .movie_item .sub_ttl {
        font-size: clamp(14px, 1.667vw, 20px);
        margin-bottom: 10px; }
        @media screen and (max-width: 480px) {
          .sec03 .movie_group .movie_item .sub_ttl {
            font-size: 16px; } }
    .sec03 .movie_group .movie_box {
      aspect-ratio: 16/9;
      background: #CCC;
      display: flex;
      justify-content: center;
      align-items: center;
      margin-bottom: 10px;
      position: relative; }
      .sec03 .movie_group .movie_box iframe {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%; }
    .sec03 .movie_group .bnr_interview {
      display: block;
      max-width: 484px;
      margin: 30px auto 0; }
    .sec03 .movie_group .movie_txt {
      font-size: clamp(17px, 2.167vw, 26px);
      text-align: center;
      line-height: 1.6; }
      .sec03 .movie_group .movie_txt .small {
        font-size: 84.7%; }
        @media screen and (max-width: 480px) {
          .sec03 .movie_group .movie_txt .small {
            font-size: 13px; } }
  .sec03 .consider_group {
    padding: clamp(20px, 3.334vw, 40px) 30px clamp(30px, 4.167vw, 50px);
    background: #dcebf6;
    border-radius: 20px; }
    @media screen and (max-width: 480px) {
      .sec03 .consider_group {
        padding: 30px 20px; } }
    .sec03 .consider_group .consider_in .con_ttl {
      font-size: clamp(22px, 3vw, 36px);
      text-align: center;
      line-height: 1.4;
      margin-bottom: clamp(20px, 2.5vw, 30px); }
    .sec03 .consider_group .consider_in .reform_group {
      flex-wrap: wrap;
      justify-content: center;
      align-items: center; }
      .sec03 .consider_group .consider_in .reform_group .logo_reform {
        width: 32%; }
        @media screen and (max-width: 480px) {
          .sec03 .consider_group .consider_in .reform_group .logo_reform {
            width: 100%;
            text-align: center; } }
      .sec03 .consider_group .consider_in .reform_group .reform_txt {
        font-size: clamp(13px, 1.834vw, 22px);
        padding-left: 20px;
        margin-left: 20px;
        border-left: 1px dashed #333;
        line-height: 1.6; }
        @media screen and (max-width: 768px) {
          .sec03 .consider_group .consider_in .reform_group .reform_txt {
            font-size: 12px;
            line-height: 1.8; } }
        @media screen and (max-width: 480px) {
          .sec03 .consider_group .consider_in .reform_group .reform_txt {
            width: 100%;
            font-size: 13px;
            padding-left: 0;
            margin-left: 0;
            border-left: none;
            padding-top: 15px;
            margin-top: 15px;
            border-top: 1px dashed #333; } }
      .sec03 .consider_group .consider_in .reform_group .obi_txt {
        width: 100%;
        max-width: 1000px;
        margin-top: clamp(20px, 2.5vw, 30px);
        text-align: center;
        padding: 10px 5px;
        background: #fff694;
        border-radius: 10px;
        font-size: clamp(16px, 2vw, 24px);
        color: #286ba3; }
        @media screen and (max-width: 480px) {
          .sec03 .consider_group .consider_in .reform_group .obi_txt {
            line-height: 1.4; } }
    .sec03 .consider_group .consider_in .hp_link {
      max-width: 400px;
      margin: 40px auto 0;
      display: flex;
      justify-content: center;
      align-items: center;
      font-size: clamp(16px, 2vw, 24px);
      color: #FFF;
      padding: 20px 10px;
      background: #286ba3;
      transition: 0.3s opacity ease-in-out 0s; }
      @media screen and (max-width: 480px) {
        .sec03 .consider_group .consider_in .hp_link {
          margin: 30px auto 0; } }
      body:not(.mobile) .sec03 .consider_group .consider_in .hp_link:hover {
        opacity: 0.7; }
      .sec03 .consider_group .consider_in .hp_link .arrow {
        transform: scale(0.6, 1); }

.movie_group {
  max-width: 800px; }
  .movie_group .movie_box {
    aspect-ratio: 16/9;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 10px;
    position: relative; }
    .movie_group .movie_box iframe {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%; }
  .movie_group .movie_txt {
    font-size: clamp(17px, 2.167vw, 26px);
    text-align: center; }
    .movie_group .movie_txt .small {
      display: block;
      font-size: 12px; }
