@charset "UTF-8";
#keyvisual {
  position: relative;
  padding: 226px 0px 162px;
  background: url("../img/order/header_deco1.png") no-repeat top 60px left 2%, url("../img/order/header_deco2.png") no-repeat top 314px left 2%, url("../img/order/header_deco3.png") no-repeat bottom right 45%;
  z-index: 2; }
  #keyvisual .kv {
    background: url("../img/order/kv.png") no-repeat bottom left/cover;
    position: absolute;
    top: 40px;
    right: 0;
    width: 884px;
    height: 575px; }
  #keyvisual .key-box {
    width: 100%;
    max-width: 1076px;
    margin: 0px auto;
    padding: 0px 20px;
    position: relative;
    z-index: 1; }
    #keyvisual .key-box .key-txt1 {
      font-size: 17px;
      line-height: 1.6;
      color: #000; }
      #keyvisual .key-box .key-txt1 span {
        border-radius: 20px;
        font-size: 14px;
        display: inline-block;
        color: #fff;
        line-height: 22px;
        padding: 0px 20px;
        background: #29ABE2;
        font-weight: 700; }
        #keyvisual .key-box .key-txt1 span.small-fs {
  border-radius: none;
  font-size: 10px;
  color: #333333;
  line-height: 22px;
  padding: 0px 10px;
  background: #FFFFFF;
  font-weight: 500;
}
    #keyvisual .key-box h2 {
      font-size: 50px;
      line-height: 1.2;
      color: #29ABE2;
      font-weight: 700;
      margin: 10px 0px 14px;
      -webkit-text-stroke: 6px white;
      paint-order: stroke fill; }
  @media screen and (max-width: 767px) {
    #keyvisual {
      padding: 36px 0px 0px;
      background-size: 30%, 45%, 55%;
      background-position: top 65% left 1%, top 78% left 12%, bottom right 10%; }
      #keyvisual .kv {
        mask: none;
        width: 100%;
        height: auto;
        position: relative;
        inset: 0; }
      #keyvisual .key-box {
        margin: 30px auto 0px; }
        #keyvisual .key-box .key-txt1 {
          font-size: 15px; }
        #keyvisual .key-box h2 {
          font-size: 36px; } }

#ft_fixed {
  position: fixed;
  top: 200px;
  right: 0px;
  z-index: 10; }
  #ft_fixed p {
    height: 200px;
    background: #FF7BAC;
    color: #fff;
    text-align: center;
    line-height: 54px;
    font-size: 18px;
    font-weight: 800;
    box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.4);
    border-radius: 20px 0 0 20px;
    position: relative;
    cursor: pointer;
    transition: all .3s; }
    #ft_fixed p span {
      color: #FFFF00; }
    #ft_fixed p::before {
      content: '';
      position: relative;
      width: 21px;
      height: 28px;
      display: inline-block;
      background: url("../img/aircon/sec9_icon3.png") center/cover;
      margin: 0px auto 8px; }
    @media screen and (min-width: 768px) {
      #ft_fixed p:hover {
        opacity: .8;
        text-decoration: none;
        transition: all .3s; } }

#footer {
  background: #E3F5F4; }

@media screen and (max-width: 767px) {
  #ft_fixed {
    top: auto;
    bottom: 0px;
    left: 0px;
    width: 100%; }
    #ft_fixed p {
      height: auto;
      width: 100%;
      font-size: 20px;
      padding: 10px 0px;
      border-radius: 0; }
      #ft_fixed p::before {
        margin: 0px 8px 0px 0px;
        top: 6px; } }
#sec1 {
  position: relative;
  margin: -40px 0px 0px;
  padding: 205px 0px 120px;
  background: url("../img/order/sec1_deco3.png") no-repeat top right 3%, url("../img/order/sec1_deco1.png") no-repeat top 195px left, url("../img/order/sec1_deco2.png") no-repeat bottom left, url("../img/order/sec1_deco4.png") no-repeat bottom right; }
  #sec1 h2 {
    position: relative;
    text-align: center;
    font-weight: 700;
    color: #0073C1;
    font-size: 40px;
    line-height: 1.4;
    margin: 0px auto 65px;
    width: fit-content; }
    #sec1 h2 span {
      position: relative;
      font-size: 27px;
      margin-bottom: 20px;
      color: #23CCC3;
      font-weight: 400;
      display: inline-block; }
      #sec1 h2 span::before {
        content: '';
        position: absolute;
        bottom: -13px;
        left: 50%;
        transform: translateX(-50%);
        background: url("../img/order/sec1_line.png") center/cover;
        width: 170px;
        height: 5px; }
    #sec1 h2::before {
      content: '';
      position: absolute;
      top: -39px;
      left: 19%;
      background: url("../img/order/sec1_icon1.png") center/cover;
      width: 95px;
      height: 89px; }
    #sec1 h2::after {
      content: '';
      position: absolute;
      top: -30px;
      right: 24%;
      background: url("../img/order/sec1_icon2.png") center/cover;
      width: 36px;
      height: 83px; }
  #sec1 .sec1-row {
    display: flex;
    flex-wrap: wrap;
    margin: 0px auto;
    width: 100%;
    max-width: 850px;
    gap: 32px; }
    #sec1 .sec1-row .sec1-box {
      box-sizing: border-box;
      width: calc(50% - 16px);
      background: #fff;
      border-radius: 16px;
      border: 1px solid #29ABE2;
      position: relative;
      padding: 22px 4% 46px; }
      #sec1 .sec1-row .sec1-box .sec1-txt1 {
        text-align: center;
        color: #29ABE2;
        font-size: 15px;
        font-weight: 700; }
      #sec1 .sec1-row .sec1-box .sec1-icon {
        width: fit-content;
        margin: 15px auto 20px; }
      #sec1 .sec1-row .sec1-box h3 {
        font-weight: 700;
        color: #29ABE2;
        font-size: 20px;
        line-height: 24px;
        margin-bottom: 10px;
        text-align: center; }
      #sec1 .sec1-row .sec1-box::before {
        content: '';
        position: absolute;
        top: 50%;
        right: -30px;
        transform: translateY(-50%);
        background: url("../img/order/sec1_arrow.png") center/cover;
        width: 26px;
        height: 45px; }
      #sec1 .sec1-row .sec1-box:last-child::before {
        display: none; }
      @media screen and (min-width: 768px) {
        #sec1 .sec1-row .sec1-box:nth-child(3)::after {
          content: '';
          position: absolute;
          top: 50%;
          left: -30px;
          transform: translateY(-50%);
          background: url("../img/order/sec1_arrow.png") center/cover;
          width: 26px;
          height: 45px; } }
  @media screen and (max-width: 767px) {
    #sec1 {
      padding: 120px 0px 80px;
      background-size: 40%, 30%, 30%, 50%;
      background-position: top right, top 130px left, bottom 50px left, bottom right;
      margin: 0px; }
      #sec1 h2 {
        font-size: 24px;
        margin-bottom: 40px; }
        #sec1 h2 span {
          font-size: 16px; }
        #sec1 h2::before {
          width: 43px;
          height: 39px;
          top: -7px;
          left: 15%; }
        #sec1 h2::after {
          width: 20px;
          height: 46px;
          top: -8px;
          right: 5%; }
      #sec1 .sec1-row {
        display: block; }
        #sec1 .sec1-row .sec1-box {
          width: 100%;
          margin: 0px 0px 34px; }
          #sec1 .sec1-row .sec1-box::before {
            top: auto;
            bottom: -39px;
            left: 50%;
            right: auto;
            transform: translateX(-50%) rotate(90deg); } }

#sec2 {
  padding: 52px 0px 0px; }
  #sec2 h2 {
    text-align: center;
    color: #0073C1;
    line-height: 1.2;
    font-weight: 700;
    font-size: 40px; }
  #sec2 h3 {
    text-align: center;
    font-weight: 700;
    font-size: 30px;
    margin: 30px 0px 10px;
    line-height: 1.2; }
  #sec2 .sec2-txt1 {
    text-align: center;
    font-size: 20px;
    line-height: 24px; }
  #sec2 .sec2-btn a {
    display: block;
    position: relative;
    width: 100%;
    max-width: 194px;
    line-height: 34px;
    color: #fff;
    font-weight: 700;
    border-radius: 30px;
    background: #FF7BAC;
    font-size: 15px;
    padding-right: 1%;
    margin: 14px auto 50px;
    text-align: center;
    box-sizing: border-box;
    transition: all .3s; }
    #sec2 .sec2-btn a::after {
      content: '';
      position: absolute;
      top: 50%;
      right: 7%;
      transform: translateY(-50%);
      background: url("../img/order/arrow1.png") center/cover;
      width: 8px;
      height: 15px; }
    @media screen and (min-width: 768px) {
      #sec2 .sec2-btn a:hover {
        text-decoration: none;
        opacity: .8;
        transition: all .3s; } }
  #sec2 .sec2-toggle {
    border-radius: 25px;
    border: 1px solid #FF7BAC;
    overflow: hidden;
    background: #FCEDF4; }
    #sec2 .sec2-toggle .toggle-link {
      cursor: pointer;
      background: #FF7BAC;
      position: relative;
      color: #fff;
      text-align: center;
      font-weight: 700;
      font-size: 40px;
      line-height: 1;
      padding: 10px 4%;
      border-radius: 22px;
      transition: all .3s; }
      #sec2 .sec2-toggle .toggle-link::before {
        content: '';
        position: absolute;
        top: 50%;
        right: 3%;
        transform: translateY(-50%) rotate(180deg);
        background: url("../img/order/icon_toggle.png") center/cover;
        width: 28px;
        height: 14px;
        transition: all .3s; }
      @media screen and (min-width: 768px) {
        #sec2 .sec2-toggle .toggle-link:hover {
          opacity: .8;
          transition: all .3s; } }
    #sec2 .sec2-toggle.active .toggle-link::before {
      transition: all .3s;
      transform: translateY(-50%); }
    #sec2 .sec2-toggle .toggle-main {
      box-sizing: border-box;
      padding: 73px 6% 28px; }
      #sec2 .sec2-toggle .toggle-main .txt {
        font-size: 15px;
        line-height: 24px;
        margin-bottom: 31px; }
      #sec2 .sec2-toggle .toggle-main .row {
        border-radius: 20px;
        border: 1px solid #FF7BAC;
        background: #fff;
        box-sizing: border-box;
        padding: 49px 9%;
        margin-bottom: 23px; }
        #sec2 .sec2-toggle .toggle-main .row .row2 {
          display: flex;
          justify-content: space-between;
          align-items: center; }
        #sec2 .sec2-toggle .toggle-main .row h4 {
          font-weight: 700;
          color: #FF7BAC;
          font-size: 30px;
          line-height: 1.2;
          text-decoration: underline;
          text-decoration-color: #FFEC00;
          text-underline-offset: -6px;
          text-decoration-thickness: 10px;
          width: 220px; }
        #sec2 .sec2-toggle .toggle-main .row .box1 {
          width: calc(100% - 220px); }
        #sec2 .sec2-toggle .toggle-main .row .list-check {
          display: flex;
          justify-content: space-between;
          gap: 16px; }
          #sec2 .sec2-toggle .toggle-main .row .list-check .form-radio {
            flex: 1;
            display: block;
            text-align: center;
            border: 1px solid #FF7BAC;
            border-radius: 10px;
            background: #fff;
            font-size: 20px;
            line-height: 21px;
            padding: 10px 15px;
            position: relative;
            cursor: pointer;
            display: flex;
            gap: 10px;
            flex-wrap: wrap;
            flex-grow: 1; }
            #sec2 .sec2-toggle .toggle-main .row .list-check .form-radio input {
              scale: 1.5; }
            #sec2 .sec2-toggle .toggle-main .row .list-check .form-radio:has(input:checked) {
              background: #FF7BAC;
              color: #fff; }
      #sec2 .sec2-toggle .toggle-main .txt2 {
        text-align: center;
        margin: 7px 0px 0px;
        font-size: 15px;
        line-height: 24px;
        text-align: center;
        padding: 0px 3%;
        background: #FCEDF4;
        color: #FF7BAC;
        border-radius: 5px; }
      #sec2 .sec2-toggle .toggle-main h5 {
        font-size: 20px;
        line-height: 1.2;
        margin: 22px 0px 0px; }
      #sec2 .sec2-toggle .toggle-main .txt3 {
        font-size: 15px;
        line-height: 21px;
        margin: 13px 0px 34px; }
      #sec2 .sec2-toggle .toggle-main .btn1 a,
      #sec2 .sec2-toggle .toggle-main .btn1 span {
        width: 100%;
        max-width: 278px;
        font-size: 20px;
        line-height: 21px;
        padding: 11px 0px;
        border-radius: 10px;
        text-align: center;
        display: block;
        background: #FF7BAC;
        color: #fff;
        transition: all .3s; }
        @media screen and (min-width: 768px) {
          #sec2 .sec2-toggle .toggle-main .btn1 a:hover,
          #sec2 .sec2-toggle .toggle-main .btn1 span:hover {
            opacity: .8;
            transition: all .3s; } }
      @media screen and (min-width: 768px) {
        #sec2 .sec2-toggle .toggle-main .btn1 span:hover {
          opacity: 1; } }
      #sec2 .sec2-toggle .toggle-main .btn-f10 a,
      #sec2 .sec2-toggle .toggle-main .btn-f13 a {
        pointer-events: none;
        cursor: not-allowed;
        background: #ccc; }
      #sec2 .sec2-toggle .toggle-main .btn-f10.active a,
      #sec2 .sec2-toggle .toggle-main .btn-f13.active a {
        pointer-events: unset;
        cursor: pointer;
        background: #FF7BAC; }
  @media screen and (max-width: 767px) {
    #sec2 {
      padding: 40px 0px 0px; }
      #sec2 h2 {
        font-size: 24px; }
      #sec2 h3 {
        font-size: 17px; }
      #sec2 .sec2-txt1 {
        font-size: 15px;
        text-align: left; }
      #sec2 .sec2-btn a {
        margin: 16px auto 40px; }
      #sec2 .sec2-toggle .toggle-link {
        padding: 12px 24px;
        font-size: 24px; }
        #sec2 .sec2-toggle .toggle-link::before {
          width: 22px;
          height: 10px; }
      #sec2 .sec2-toggle .toggle-main {
        padding: 50px 5%; }
        #sec2 .sec2-toggle .toggle-main .row {
          padding: 40px 6% 20px; }
          #sec2 .sec2-toggle .toggle-main .row .row2 {
            display: block; }
          #sec2 .sec2-toggle .toggle-main .row h4 {
            font-size: 24px;
            width: 100%;
            margin-bottom: 10px; }
          #sec2 .sec2-toggle .toggle-main .row .box1 {
            width: 100%; }
          #sec2 .sec2-toggle .toggle-main .row .list-check {
            gap: 10px; }
            #sec2 .sec2-toggle .toggle-main .row .list-check .form-radio {
              font-size: 14px;
              padding: 8px; }
          #sec2 .sec2-toggle .toggle-main .row h5 {
            font-size: 18px; }
          #sec2 .sec2-toggle .toggle-main .row .txt2 {
            font-size: 14px; }
          #sec2 .sec2-toggle .toggle-main .row .btn1 a,
          #sec2 .sec2-toggle .toggle-main .row .btn1 span {
            font-size: 18px; } }

.contact-toggle .mt58 {
  margin-top: 58px; }
.contact-toggle .txt-center {
  text-align: center !important; }
.contact-toggle .txt-left {
  text-align: left !important; }
.contact-toggle .txt11 {
  font-size: 20px;
  line-height: 1.2;
  font-weight: 700;
  color: #29ABE2;
  margin-bottom: 39px; }
.contact-toggle .ttl {
  display: flex;
  gap: 24px;
  align-items: center;
  font-size: 30px;
  line-height: 1.2;
  font-weight: 700;
  color: #29ABE2;
  margin-bottom: 18px;
  margin-top: 30px; }
  .contact-toggle .ttl .dots {
    display: block;
    flex: 1;
    height: 4px;
    background: radial-gradient(circle, #2ca0d6 2px, transparent 2px);
    background-size: 12px 4px;
    background-repeat: repeat-x; }
@media screen and (min-width: 768px) {
  .contact-toggle .dis-flex-pc {
    display: flex;
    gap: 18px;
    justify-content: space-between; } }
.contact-toggle .box {
  box-sizing: border-box;
  border: 1px solid #29ABE2;
  padding: 30px 5% 21px;
  border-radius: 16px;
  margin-bottom: 24px;
  background: #fff; }
  .contact-toggle .box.bg-blue {
    background: #29ABE2;
    color: #fff; }
  .contact-toggle .box.box2 {
    background: #F5FBFE;
    color: #29ABE2; }
    .contact-toggle .box.box2 .btn3 {
      align-self: flex-end; }
      .contact-toggle .box.box2 .btn3 a {
        font-size: 13px;
        line-height: 20px;
        text-decoration: underline;
        transition: all .3s; }
        @media screen and (min-width: 768px) {
          .contact-toggle .box.box2 .btn3 a:hover {
            text-decoration: none;
            transition: all .3s; } }
    .contact-toggle .box.box2 .btn4 a {
      width: fit-content;
      margin: -2px 0px 0px auto; }
.contact-toggle .form-radio3 {
  position: relative;
  width: 100%;
  height: 100%;
  display: block;
  padding: 29px 0px;
  cursor: pointer; }
  .contact-toggle .form-radio3 input {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 16px;
    scale: 1.5; }
.contact-toggle .list-check4 .form-radio {
  position: relative;
  cursor: pointer; }
  .contact-toggle .list-check4 .form-radio input {
    position: absolute;
    top: 12px;
    left: 12px;
    scale: 1.5; }
  .contact-toggle .list-check4 .form-radio:has(input:checked) .box {
    background: #29ABE2;
    color: #fff; }
.contact-toggle .ttl2 {
  text-align: center;
  font-size: 20px;
  line-height: 1.2;
  margin-bottom: 6px; }
.contact-toggle .ttl4 {
  font-size: 30px;
  line-height: 1.2;
  text-decoration: underline;
  text-decoration-color: #FFEC00;
  text-underline-offset: -6px;
  text-decoration-thickness: 10px;
  color: #29ABE2;
  font-weight: 700; }
  .contact-toggle .ttl4 span {
    font-size: 15px;
    display: block;
    margin-top: 0px; }
  .contact-toggle .ttl4 small {
    font-size: 20px; }
.contact-toggle .ttl5 {
  text-align: center;
  font-size: 20px;
  line-height: 1.2; }
.contact-toggle .box11 {
  box-sizing: border-box;
  border-radius: 10px;
  padding: 6px 3%;
  background: #F5FBFE;
  color: #29ABE2;
  margin: 6px auto;
  width: 100%;
  max-width: 440px; }
  .contact-toggle .box11.bg-white {
    background: #fff; }
  .contact-toggle .box11.full {
    width: 100%;
    padding: 2px 3%;
    max-width: unset; }
.contact-toggle .txt1 {
  font-size: 15px;
  line-height: 24px; }
.contact-toggle .txt2 {
  font-size: 15px;
  line-height: 24px; }
  .contact-toggle .txt2 span {
    font-weight: 700;
    color: #FF7BAC; }
  .contact-toggle .txt2 a {
    display: inline-block;
    position: relative;
    font-weight: 700;
    border-bottom: 1px solid #29ABE2;
    line-height: 1.2;
    transition: all .3s; }
    .contact-toggle .txt2 a i {
      position: relative;
      display: inline-block;
      width: 13.5px;
      height: 13.5px;
      background: url("../img/order/arrow2.png") center/cover;
      margin-right: 4px;
      top: 0px; }
    @media screen and (min-width: 767px) {
      .contact-toggle .txt2 a:hover {
        border-color: transparent;
        transition: all .3s; } }
.contact-toggle .txt3 {
  font-size: 13px;
  line-height: 20px;
  margin: 5px 0px; }
.contact-toggle .txt4 {
  font-size: 15px;
  line-height: 20px;
  margin: 10px 0px; }
.contact-toggle .btn1 a,
.contact-toggle .btn1 span {
  display: block;
  width: fit-content;
  margin: 0px auto;
  font-size: 13px;
  line-height: 22px;
  font-weight: 700;
  background: #29ABE2;
  color: #fff;
  text-align: center;
  padding: 0px 14px;
  border-radius: 30px; }
  @media screen and (min-width: 768px) {
    .contact-toggle .btn1 a:hover,
    .contact-toggle .btn1 span:hover {
      opacity: .8;
      text-decoration: none; } }
@media screen and (min-width: 768px) {
  .contact-toggle .btn1 span:hover {
    opacity: 1; } }
.contact-toggle .btn1.ml a,
.contact-toggle .btn1.ml span {
  margin: 10px 0px; }
.contact-toggle .btn2 a,
.contact-toggle .btn2 > span {
  display: block;
  width: fit-content;
  line-height: 1.2;
  border-bottom: 1px solid #29ABE2;
  color: #29ABE2;
  font-size: 13px;
  margin-bottom: 10px;
  transition: all .3s; }
  .contact-toggle .btn2 a i,
  .contact-toggle .btn2 > span i {
    position: relative;
    display: inline-block;
    width: 13.5px;
    height: 13.5px;
    background: url("../img/order/arrow2.png") center/cover;
    margin-right: 4px;
    top: 2px; }
  @media screen and (min-width: 768px) {
    .contact-toggle .btn2 a:hover,
    .contact-toggle .btn2 > span:hover {
      border-color: transparent;
      transition: all .3s; } }
.contact-toggle .select-box {
  position: relative;
  width: 100%;
  max-width: 375px; }
  .contact-toggle .select-box .form-select {
    width: 100%;
    display: block;
    padding: 10px 12px;
    border-radius: 10px;
    border: 1px solid #29ABE2;
    font-size: 15px;
    line-height: 26px;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    position: relative;
    margin-bottom: 10px; }
  .contact-toggle .select-box::after {
    content: '';
    position: absolute;
    top: 50%;
    right: 6%;
    width: 13px;
    transform: translateY(-50%);
    height: 7px;
    background: url("../img/order/arrow3.png") center/cover;
    pointer-events: none; }
.contact-toggle .form-input {
  width: 100%;
  max-width: 375px;
  border: 1px solid #29ABE2;
  border-radius: 10px;
  padding: 10px 12px;
  font-size: 15px;
  line-height: 25px;
  font-weight: 700; }
  .contact-toggle .form-input::placeholder {
    color: #B3B3B3; }
.contact-toggle .list-check {
  display: flex;
  justify-content: flex-start;
  gap: 16px; }
  .contact-toggle .list-check .form-radio {
    flex: 1;
    display: block;
    text-align: center;
    border: 1px solid #29ABE2;
    border-radius: 10px;
    background: #fff;
    font-size: 20px;
    line-height: 21px;
    padding: 10px 15px;
    position: relative;
    cursor: pointer;
    max-width: 45%;
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    flex-grow: 1; }
    .contact-toggle .list-check .form-radio input {
      scale: 1.5; }
    .contact-toggle .list-check .form-radio:has(input:checked) {
      background: #29ABE2;
      color: #fff; }
.contact-toggle label:has(input:disabled) {
  color: #ccc !important;
  pointer-events: none !important;
  cursor: unset !important; }
.contact-toggle .list-check3 .form-radio2 {
  display: block;
  padding: 21px 5%;
  box-sizing: border-box;
  border-radius: 20px;
  border: 1px solid #29ABE2;
  background: #fff;
  margin-bottom: 22px;
  cursor: pointer;
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
  flex-grow: 1; }
  .contact-toggle .list-check3 .form-radio2 .txt10 {
    text-align: center;
    width: 100%;
    margin: 6px auto 0px;
    max-width: 410px;
    font-size: 15px;
    line-height: 20px;
    padding: 4px 2%;
    border-radius: 10px;
    background: #F5FBFE;
    color: #29ABE2; }
  .contact-toggle .list-check3 .form-radio2 input {
    scale: 1.5;
    align-self: flex-start;
    margin-top: 6px; }
  .contact-toggle .list-check3 .form-radio2:has(input:checked) {
    background: #29ABE2;
    color: #fff; }
    .contact-toggle .list-check3 .form-radio2:has(input:checked) .txt10 {
      background: #fff; }
.contact-toggle .btn5 a {
  display: block;
  width: 100%;
  position: relative;
  max-width: 345px;
  background: #FF7BAC;
  color: #fff;
  font-size: 15px;
  line-height: 33px;
  border-radius: 30px;
  text-align: center;
  margin: 12px auto 0px;
  transition: all .3s; }
  .contact-toggle .btn5 a::before {
    content: '';
    position: absolute;
    top: 50%;
    right: 3%;
    transform: translateY(-50%);
    background: url("../img/order/arrow4.png") center/cover;
    width: 7px;
    height: 13px; }
  @media screen and (min-width: 768px) {
    .contact-toggle .btn5 a:hover {
      opacity: .8;
      transition: all .3s; } }
.contact-toggle .col {
  width: 220px; }
.contact-toggle .col2 {
  width: calc(100% - 220px); }
.contact-toggle .box-hidden {
  display: none;
  transition: all .5s; }
  .contact-toggle .box-hidden.active {
    display: block;
    transition: all .3s; }
.contact-toggle .js-child-option + .js-child-option {
  margin-top: 20px; }
  .contact-toggle .js-child-option + .js-child-option h6 {
    margin-bottom: 8px; }
@media screen and (max-width: 767px) {
  .contact-toggle .mt58 {
    margin-top: 40px; }
  .contact-toggle .txt11 {
    font-size: 16px;
    margin-bottom: 24px; }
  .contact-toggle .ttl {
    font-size: 20px;
    gap: 12px; }
    .contact-toggle .ttl .dots {
      min-width: 10%; }
  .contact-toggle .ttl2 {
    font-size: 16px; }
  .contact-toggle .ttl4 {
    font-size: 24px;
    margin-bottom: 12px; }
    .contact-toggle .ttl4 span {
      font-size: 12px; }
    .contact-toggle .ttl4 small {
      font-size: 14px; }
  .contact-toggle .ttl5 {
    font-size: 16px; }
  .contact-toggle .box {
    padding: 30px 5%; }
    .contact-toggle .box.box2 .btn4 a {
      margin: 5px 0px 0px auto; }
  .contact-toggle .txt1 {
    font-size: 14px;
    line-height: 20px; }
  .contact-toggle .col,
  .contact-toggle .col2 {
    width: 100%; }
  .contact-toggle .list-check {
    gap: 10px; }
    .contact-toggle .list-check .form-radio {
      font-size: 14px;
      padding: 8px; }
  .contact-toggle .list-check3 .form-radio2 .txt10 {
    font-size: 13px; }
  .contact-toggle .form-radio3 {
    padding: 16px 0px; } }

#sec3 {
  padding: 57px 0px 0px; }
  #sec3 .sec3-toggle {
    border-radius: 25px;
    border: 1px solid #29ABE2;
    overflow: hidden;
    background: #F5FBFE; }
    #sec3 .sec3-toggle .toggle-link1 {
      cursor: pointer;
      background: #29ABE2;
      position: relative;
      color: #fff;
      text-align: center;
      font-weight: 700;
      font-size: 40px;
      line-height: 1;
      padding: 10px 4%;
      border-radius: 22px;
      transition: all .3s; }
      #sec3 .sec3-toggle .toggle-link1::before {
        content: '';
        position: absolute;
        top: 50%;
        right: 3%;
        transform: translateY(-50%) rotate(180deg);
        background: url("../img/order/icon_toggle.png") center/cover;
        width: 28px;
        height: 14px;
        transition: all .3s; }
      @media screen and (min-width: 768px) {
        #sec3 .sec3-toggle .toggle-link1:hover {
          opacity: .8;
          transition: all .3s; } }
    #sec3 .sec3-toggle.active .toggle-link1::before {
      transition: all .3s;
      transform: translateY(-50%); }
    #sec3 .sec3-toggle .toggle-main1 {
      box-sizing: border-box;
      padding: 73px 6% 28px; }
      #sec3 .sec3-toggle .toggle-main1 .sec3-toggle2 {
        border-radius: 20px;
        border: 1px solid #29ABE2;
        background: #fff;
        overflow: hidden;
        margin-bottom: 25px; }
        #sec3 .sec3-toggle .toggle-main1 .sec3-toggle2.active .toggle-link2 {
          background: #29ABE2;
          color: #fff; }
          #sec3 .sec3-toggle .toggle-main1 .sec3-toggle2.active .toggle-link2::before {
            transform: translateY(-50%) rotate(-180deg);
            transition: all .2s; }
        #sec3 .sec3-toggle .toggle-main1 .sec3-toggle2 .toggle-link2 {
          cursor: pointer;
          background: #fff;
          text-align: center;
          font-size: 20px;
          line-height: 21px;
          color: #29ABE2;
          border-radius: 18px;
          position: relative;
          transition: all .3s; }
          #sec3 .sec3-toggle .toggle-main1 .sec3-toggle2 .toggle-link2::before {
            content: '▼';
            position: absolute;
            top: 50%;
            right: 4%;
            font-size: 14px;
            transform: translateY(-50%);
            transition: all .2s; }
          #sec3 .sec3-toggle .toggle-main1 .sec3-toggle2 .toggle-link2:has(input:disabled) {
            cursor: auto;
            pointer-events: none; }
          @media screen and (min-width: 768px) {
            #sec3 .sec3-toggle .toggle-main1 .sec3-toggle2 .toggle-link2:hover {
              background: #29ABE2;
              color: #fff;
              transition: all .3s; } }
        #sec3 .sec3-toggle .toggle-main1 .sec3-toggle2 .toggle-main2 {
          padding: 41px 9% 48px; }
  #sec3 .sec3-box2 {
    position: relative; }
    #sec3 .sec3-box2 .sec3-icon {
      position: absolute;
      top: 0px;
      right: 4%;
      z-index: 1; }
  #sec3 .sec3-box2.sec3-box22 .sec3-icon {
    display: none; }
  #sec3 .sec3-txt2 {
    text-align: center;
    font-size: 15px;
    line-height: 21px; }
  #sec3 .sec3-btn1 a {
    display: block;
    width: 100%;
    position: relative;
    max-width: 345px;
    background: #FF7BAC;
    color: #fff;
    font-size: 15px;
    line-height: 33px;
    border-radius: 30px;
    text-align: center;
    margin: 12px auto 0px;
    transition: all .3s; }
    #sec3 .sec3-btn1 a::before {
      content: '';
      position: absolute;
      top: 50%;
      right: 3%;
      transform: translateY(-50%);
      background: url("../img/order/arrow4.png") center/cover;
      width: 7px;
      height: 13px; }
    @media screen and (min-width: 768px) {
      #sec3 .sec3-btn1 a:hover {
        opacity: .8;
        transition: all .3s; } }
  @media screen and (max-width: 767px) {
    #sec3 {
      padding: 40px 0px 0px; }
      #sec3 .sec3-toggle .toggle-link1 {
        padding: 12px 24px;
        font-size: 24px; }
        #sec3 .sec3-toggle .toggle-link1::before {
          width: 22px;
          height: 10px; }
      #sec3 .sec3-toggle .toggle-main1 {
        padding: 50px 5%; }
        #sec3 .sec3-toggle .toggle-main1 .sec3-toggle2 {
          margin-bottom: 16px; }
          #sec3 .sec3-toggle .toggle-main1 .sec3-toggle2 .toggle-link2 {
            font-size: 18px; }
          #sec3 .sec3-toggle .toggle-main1 .sec3-toggle2 .toggle-main2 {
            padding: 24px 5% 30px; }
      #sec3 .sec3-box2 .sec3-icon {
        width: 24%;
        max-width: 120px;
        right: 0px;
        top: 20px; } }

#sec4 {
  padding: 46px 0px 76px; }
  #sec4 .sec4-toggle {
    margin-bottom: 45px;
    border-radius: 25px;
    border: 1px solid #29ABE2;
    overflow: hidden;
    background: #F5FBFE; }
    #sec4 .sec4-toggle > .toggle-link {
      cursor: pointer;
      background: #29ABE2;
      position: relative;
      color: #fff;
      text-align: center;
      font-weight: 700;
      font-size: 40px;
      line-height: 1;
      padding: 10px 4%;
      border-radius: 22px;
      transition: all .3s; }
      #sec4 .sec4-toggle > .toggle-link::before {
        content: '';
        position: absolute;
        top: 50%;
        right: 3%;
        transform: translateY(-50%) rotate(180deg);
        background: url("../img/order/icon_toggle.png") center/cover;
        width: 28px;
        height: 14px;
        transition: all .3s; }
      @media screen and (min-width: 768px) {
        #sec4 .sec4-toggle > .toggle-link:hover {
          opacity: .8;
          transition: all .3s; } }
    #sec4 .sec4-toggle.active .toggle-link::before {
      transition: all .3s;
      transform: translateY(-50%); }
    #sec4 .sec4-toggle > .toggle-main {
      box-sizing: border-box;
      padding: 73px 6% 28px; }
  @media screen and (max-width: 767px) {
    #sec4 {
      padding: 30px 0px 50px; }
      #sec4 .sec4-toggle {
        margin-bottom: 30px; }
        #sec4 .sec4-toggle > .toggle-link {
          padding: 12px 24px;
          font-size: 24px; }
          #sec4 .sec4-toggle > .toggle-link::before {
            width: 22px;
            height: 10px; }
        #sec4 .sec4-toggle > .toggle-main {
          padding: 50px 5%; } }

.form-contact .c-form-row {
  display: flex; }
.form-contact .c-form-label {
  font-size: 20px;
  font-weight: 700;
  width: 160px;
  margin-right: 20px; }
.form-contact .c-form-required {
  display: inline-block;
  font-size: 15px;
  font-weight: 700;
  background-color: #FF7BAC;
  color: #FFF;
  border-radius: 20px;
  padding: 0 0.6em;
  vertical-align: middle;
  margin: 0 8px; }
.form-contact .c-form-control-box {
  width: calc(100% - 180px); }
.form-contact .form-control {
  max-width: 373px;
  display: block;
  width: 100%;
  height: 41px;
  padding: 12px;
  font-size: 15px;
  line-height: 1.5;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #29ABE2;
  border-radius: 10px;
  transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
  font-weight: 700; }
  .form-contact .form-control::placeholder {
    color: #B3B3B3; }
  .form-contact .form-control.form-control-full {
    max-width: 100%; }
.form-contact .c-form-inner-label {
  font-size: 15px;
  font-weight: 700;
  margin-top: 15px;
  margin-bottom: 6px; }
  .form-contact .c-form-inner-label:first-child {
    margin-top: 0px; }
.form-contact .control-row {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: nowrap; }
.form-contact .p-postal-code {
  width: 250px; }
.form-contact .c-form-control {
  display: flex;
  gap: 20px;
  margin-top: 10px;
  width: 100%;
  flex-wrap: wrap; }
.form-contact .c-form-radio,
.form-contact .c-form-check-box {
  padding: 8px 12px;
  text-align: center;
  border-radius: 10px;
  border: 1px solid #29ABE2;
  font-size: 20px;
  line-height: 1.2;
  background: #fff;
  position: relative;
  max-width: 196px;
  width: 32%;
  display: flex;
  align-items: center;
  cursor: pointer;
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  flex-grow: 1; }
  .form-contact .c-form-radio span,
  .form-contact .c-form-check-box span {
    display: inline-block;
    width: fit-content; }
  .form-contact .c-form-radio input,
  .form-contact .c-form-check-box input {
    scale: 1.5; }
  .form-contact .c-form-radio:has(:checked),
  .form-contact .c-form-check-box:has(:checked) {
    background: #29ABE2;
    color: #fff; }
.form-contact textarea.form-control {
  height: auto;
  width: 100%;
  max-width: unset; }
.form-contact .c-form-help-count {
  font-size: 13px;
  text-align: right;
  margin: 5px 0px 0px; }
  .form-contact .c-form-help-count span {
    color: #FF7BAC; }
.form-contact hr {
  border: solid 1px #29ABE2;
  margin: 24px 0; }
.form-contact .p-form-title-sub {
  margin: 60px 0px 16px;
  font-size: 20px;
  font-weight: 700; }
.form-contact .p-form-agree-container {
  box-sizing: border-box;
  padding: 44px 3% 32px;
  border-radius: 10px;
  background: #fff;
  border: 1px solid #29ABE2; }
  .form-contact .p-form-agree-container .p-form-agree-checkbox {
    display: flex;
    padding: 10px;
    gap: 8px;
    justify-content: flex-start;
    align-items: flex-start;
    font-size: 13px;
    line-height: 21px; }
    .form-contact .p-form-agree-container .p-form-agree-checkbox input {
      width: 13px;
      margin-top: 4px; }
    .form-contact .p-form-agree-container .p-form-agree-checkbox .p-form-agree-checkbox-label a {
      color: #0000EE;
      text-decoration: underline; }
@media screen and (max-width: 767px) {
  .form-contact .c-form-row {
    display: block; }
  .form-contact .c-form-label {
    width: 100%;
    font-size: 18px;
    margin-bottom: 10px; }
  .form-contact .c-form-control-box {
    width: 100%;
    max-width: 100%; }
  .form-contact .c-form-control {
    gap: 6px; }
  .form-contact .control-row.control-sm {
    max-width: 90%;
    flex-wrap: nowrap; }
  .form-contact .c-form-radio,
  .form-contact .c-form-check-box {
    font-size: 16px;
    width: 45%; }
  .form-contact hr {
    margin: 20px 0; }
  .form-contact .p-form-title-sub {
    margin: 40px 0px 16px;
    font-size: 16px; }
  .form-contact .p-form-agree-container {
    padding: 32px 4%; } }

#sec5 {
  background: url("../img/order/sec4_bg.png") top center/cover;
  padding: 223px 0px 190px; }
  #sec5 h2 {
    text-align: center;
    font-size: 40px;
    line-height: 1.2;
    margin-bottom: 65px;
    color: #0073C1;
    font-weight: 700; }
  #sec5 .wrap {
    max-width: 1040px; }
  @media screen and (max-width: 767px) {
    #sec5 {
      background-image: url("../img/order/sec4_bg_sp.png");
      padding: 120px 0px 100px; }
      #sec5 h2 {
        font-size: 24px;
        margin-bottom: 32px; } }

#sec6 {
  background: url("../img/order/sec6_bg.png") repeat top left;
  padding: 126px 0px 128px;
  position: relative;
  margin-top: -20px;
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.3);
  z-index: 3; }
  #sec6 .sec6-box {
    border-radius: 20px;
    background: #fff;
    padding: 74px 6%;
    box-sizing: border-box;
    margin: 0px auto;
    max-width: 1000px;
    width: 100%; }
    #sec6 .sec6-box h2 {
      position: relative;
      text-align: center;
      font-weight: 700;
      color: #0073C1;
      font-size: 40px;
      line-height: 1.4;
      margin: 0px auto;
      width: fit-content; }
      #sec6 .sec6-box h2 span {
        position: relative;
        font-size: 27px;
        margin-bottom: 20px;
        color: #23CCC3;
        font-weight: 400;
        display: inline-block; }
        #sec6 .sec6-box h2 span::before {
          content: '';
          position: absolute;
          bottom: -13px;
          left: 50%;
          transform: translateX(-50%);
          background: url("../img/order/sec1_line.png") center/cover;
          width: 170px;
          height: 5px; }
      #sec6 .sec6-box h2::before {
        content: '';
        position: absolute;
        top: 72px;
        left: -23%;
        background: url("../img/order/sec6_icon1.png") center/cover;
        width: 78px;
        height: 44px; }
      #sec6 .sec6-box h2::after {
        content: '';
        position: absolute;
        top: 46px;
        right: -20%;
        background: url("../img/order/sec6_icon2.png") center/cover;
        width: 75px;
        height: 77px; }
    #sec6 .sec6-box .sec6-txt1 {
      font-size: 17px;
      line-height: 26px;
      margin: 42px 0px; }
    #sec6 .sec6-box .sec6-box2 {
      box-sizing: border-box;
      padding: 32px 4%;
      border-radius: 20px;
      background: #F5FBFE; }
      #sec6 .sec6-box .sec6-box2 h3 {
        font-size: 15px;
        font-weight: 700;
        color: #0071BC; }
      #sec6 .sec6-box .sec6-box2 .sec6-txt2 {
        font-size: 15px;
        line-height: 25px;
        margin: 12px 0px 30px; }
  @media screen and (min-width: 768px) and (max-width: 1040px) {
    #sec6 {
      padding-bottom: 118px; } }
  @media screen and (max-width: 767px) {
    #sec6 {
      padding: 100px 0px 76px; }
      #sec6 .sec6-box {
        padding: 50px 4%; }
        #sec6 .sec6-box h2 {
          font-size: 24px; }
          #sec6 .sec6-box h2 span {
            font-size: 16px; }
          #sec6 .sec6-box h2::before {
            width: 50px;
            height: 39px;
            top: -7px;
            left: 15%; }
          #sec6 .sec6-box h2::after {
            width: 40px;
            height: 40px;
            top: -8px;
            right: 5%; }
        #sec6 .sec6-box .sec6-txt1 {
          margin: 24px 0px;
          font-size: 15px; }
        #sec6 .sec6-box .sec6-txt2 {
          font-size: 13px; } }

#sec7 {
  position: relative;
  padding: 250px 0px 50px;
  background: url("../img/order/sec7_deco.png") no-repeat top left 3%, url("../img/order/sec7_deco2.png") no-repeat top 100px right 3%, #E3F5F4; }
  #sec7 .wrap {
    z-index: 2;
    max-width: 1040px; }
  #sec7 .sec7-row {
    display: flex;
    justify-content: space-between; }
  #sec7 .sec7-box {
    width: 55%; }
  #sec7 .sec7-txt1 {
    font-weight: 700;
    font-size: 30px;
    line-height: 40px; }
    #sec7 .sec7-txt1 strong {
      font-size: 50px;
      color: #FF7BAC; }
    #sec7 .sec7-txt1 span {
      display: inline-block;
      font-size: 30px;
      margin-right: 20px; }
      #sec7 .sec7-txt1 span span {
        color: #FF7BAC;
        margin-right: 0px; }
  #sec7 .sec7-txt2 {
    font-size: 20px;
    font-weight: 700;
    line-height: 35px;
    margin: 20px 0px 4px; }
  #sec7 .sec7-txt3 {
    font-size: 15px; }
  #sec7 .sec7-btn {
    width: 44%;
    transition: all .3s; }
    #sec7 .sec7-btn button {
      display: block;
      width: 100%;
      box-sizing: border-box;
      border-radius: 30px;
      font-size: 28px;
      font-weight: 800;
      line-height: 1.2;
      padding: 14px 2%;
      box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
      background: #FF7BAC;
      text-align: center;
      color: #fff; }
      @media screen and (min-width: 768px) {
        #sec7 .sec7-btn button:hover {
          opacity: .8;
          transition: all .3s; } }
  @media screen and (max-width: 768px) {
    #sec7 {
      padding: 120px 0px;
      background-size: 40%, 55%; }
      #sec7 .sec7-row {
        display: block; }
      #sec7 .sec7-box {
        width: 100%; }
      #sec7 .sec7-txt1 {
        font-size: 22px;
        line-height: 30px; }
        #sec7 .sec7-txt1 strong {
          font-size: 36px; }
        #sec7 .sec7-txt1 span {
          font-size: 22px;
          margin-right: 10px; }
          #sec7 .sec7-txt1 span span {
            margin-right: 0px; }
      #sec7 .sec7-txt2 {
        font-size: 16px;
        line-height: 24px; }
      #sec7 .sec7-txt3 {
        font-size: 13px; }
      #sec7 .sec7-btn {
        width: 100%; }
        #sec7 .sec7-btn a {
          margin: 20px auto 0px;
          font-size: 20px; } }

#form-total {
  background: #fff;
  padding: 16px 0px 10px;
  position: fixed;
  bottom: 0px;
  left: 0px;
  width: 100%;
  z-index: 10; }
  #form-total .total-row {
    display: flex;
    justify-content: space-between;
    width: 100%;
    max-width: 1040px;
    padding: 0px 20px;
    margin: 0px auto; }
  #form-total .total-box {
    width: 55%; }
  #form-total .total-txt1 {
    font-weight: 700;
    font-size: 30px;
    line-height: 40px; }
    #form-total .total-txt1 strong {
      font-size: 50px;
      color: #FF7BAC; }
    #form-total .total-txt1 span {
      display: inline-block;
      font-size: 30px;
      margin-right: 20px; }
      #form-total .total-txt1 span span {
        color: #FF7BAC;
        margin-right: 0px; }
  #form-total .total-txt2 {
    font-size: 20px;
    font-weight: 700;
    line-height: 35px;
    margin: 10px 0px 4px; }
  #form-total .total-txt3 {
    font-size: 15px; }
  #form-total .total-btn {
    width: 44%;
    transition: all .3s; }
    #form-total .total-btn button {
      display: block;
      width: 100%;
      box-sizing: border-box;
      border-radius: 30px;
      font-size: 28px;
      font-weight: 800;
      line-height: 1.2;
      padding: 14px 2%;
      box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
      background: #FF7BAC;
      text-align: center;
      color: #fff; }
      @media screen and (min-width: 768px) {
        #form-total .total-btn button:hover {
          opacity: .8;
          transition: all .3s; } }
  @media screen and (max-width: 767px) {
    #form-total {
      padding: 10px 0px 14px; }
      #form-total .total-row {
        display: block; }
      #form-total .total-box {
        width: 100%; }
      #form-total .total-txt1 {
        font-size: 18px;
        line-height: 30px; }
        #form-total .total-txt1 strong {
          font-size: 20px; }
        #form-total .total-txt1 span {
          font-size: 16px;
          margin-right: 10px; }
          #form-total .total-txt1 span span {
            margin-right: 0px; }
      #form-total .total-txt2 {
        font-size: 12px;
        line-height: 24px;
        margin: 0px; }
      #form-total .total-txt3 {
        font-size: 12px; }
      #form-total .total-btn {
        width: 100%; }
        #form-total .total-btn a {
          width: 90%;
          margin: 10px auto 0px;
          font-size: 16px;
          padding: 10px 0px; } }

#form-total.remove {
  opacity: 0;
  display: none; }

#thanks {
  padding: 100px 0px 200px;
  text-align: center;
  position: relative;
  z-index: 2;
  margin-top: -36px; }
  #thanks .thanks-message {
    line-height: 1.6;
    font-size: 20px;
    color: #29ABE2;
    font-weight: 700; }
  #thanks .thanks-button a {
    width: fit-content;
    margin: 30px auto 0px;
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 3px;
    display: block;
    font-size: 16px;
    transition: all .3s; }
    @media screen and (min-width: 768px) {
      #thanks .thanks-button a:hover {
        text-decoration: none;
        transition: all .3s; } }
  @media screen and (max-width: 767px) {
    #thanks {
      padding: 100px 0px 100px;
      margin-top: 0px; }
      #thanks .thanks-message {
        font-size: 18px; } }
