@charset "UTF-8";
.pc {
  display: block;
}

.sp {
  display: none;
}

@media (max-width: 1024px) {
  .pc {
    display: none;
  }
  .sp {
    display: block;
  }
}
@media (max-width: 734px) {
  .pc {
    display: none;
  }
  .sp {
    display: block;
  }
}
.drow {
  display: none;
}

@media (max-width: 1024px) {
  .drow {
    display: block;
  }
  .mobile-menu-icon {
    background-color: transparent;
    border: none;
    position: fixed;
    right: 4%;
    top: 2.2rem;
    z-index: 5000000;
  }
  .mobile-menu-icon span {
    background-color: #000;
    width: 35px;
    height: 2px;
    display: block;
    margin-bottom: 9px;
    transition: transform 0.7s;
  }
  .mobile-menu-icon span:last-child {
    margin-bottom: 0;
  }
  button.menu-open > span {
    background-color: #000;
  }
  button.menu-open > span:nth-child(1) {
    transform: translateY(11px) rotate(135deg);
  }
  button.menu-open > span:nth-child(2) {
    transform: translateX(-18px) scaleX(0);
  }
  button.menu-open > span:nth-child(3) {
    transform: translateY(-11px) rotate(-135deg);
  }
  .menu-open {
    transform: none !important;
    transition: transform 0.7s;
  }
  body {
    margin: 0;
    padding: 0;
    position: relative;
    overflow-x: hidden;
  }
  .header {
    position: relative;
    margin-top: 0;
  }
  .header__logo {
    position: fixed;
    z-index: 20000000;
  }
  .header__wrap {
    position: fixed;
    top: 20px;
    margin: 0 auto;
    right: 0;
    left: 0;
    z-index: 2000000;
    padding: 28px 0;
    border-radius: 8px;
  }
  .header__global {
    position: fixed;
    width: 100vw;
    height: 100vh;
    top: 0;
    right: 0;
    left: 0;
    transform: translateY(-100vh);
    background: #fff;
    flex-flow: column;
    gap: 0;
  }
  .header__navlist {
    width: 80%;
    margin: 0 auto;
    margin-top: 32px;
  }
  .header__navlist--contact, .header__navlist--login {
    padding-top: 32px;
    width: 70%;
    margin: 0 auto;
  }
  .header__navlist--contact a, .header__navlist--login a {
    display: block;
    text-align: center;
    padding: 21px 0;
  }
  .header__navlist--login {
    padding-top: 16px;
  }
  .header__navlist--contact a {
    background: linear-gradient(to right, #FF8116 0%, #F38E00 100%);
    border-radius: 50px;
  }
  .header__navlist a {
    font-size: 4.2666666667vw;
  }
  .header__navlist:first-child {
    margin-top: 8rem;
  }
}
@media (max-width: 1024px) {
  html body span.blue {
    color: #4FAFE7;
  }
  html body p {
    font-size: 4vw;
  }
  html body h2 {
    font-size: 6.4vw;
    line-height: 70%;
    margin: 43px 0 30px;
    font-weight: 700;
  }
  html body .header__navlist--logo img {
    height: 24px;
    width: 30px;
  }
  html body .fv {
    padding: 81px 0 0 0;
    background: linear-gradient(to bottom, #FFE4C4 0%, #FFB373 100%);
  }
  html body .fv__contents {
    flex-flow: column;
  }
  html body .fv__title {
    font-size: 6.9333333333vw;
  }
  html body .fv__title--text {
    width: 100%;
    text-align: center;
  }
  html body .fv__subject {
    font-size: 4.2666666667vw;
    margin: 0 auto 7px;
  }
  html body .fv__subject:nth-of-type(2) {
    font-size: 3.2vw;
    margin: 10px auto;
  }
  html body .fv__circle {
    margin: 0 auto;
  }
  html body .fv__circle--list {
    height: 21.3333333333vw;
    width: 21.3333333333vw;
  }
  html body .fv__circle--list b {
    font-size: 3.2vw;
  }
  html body .fv__link {
    font-size: 4.8vw;
    background: linear-gradient(to bottom, #FF8116 0%, #F38E00 100%);
    color: #fff;
    width: 100%;
    position: relative;
    z-index: 1;
  }
  html body .fv__link::after {
    content: "→";
    display: flex;
    position: absolute;
    background-color: white;
    color: #f57c00;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    align-items: center;
    justify-content: center;
    text-align: center;
    top: 37%;
    right: 11%;
  }
  html body .fv__imgarea {
    width: 100%;
    margin: -20px 0;
  }
  html body .fv__img--laptpo {
    position: static;
    width: 100%;
  }
  html body .fv__img--crowd {
    width: 9.9866666667vw;
    height: 10.2186666667vw;
    bottom: 47vw;
    left: -1vw;
  }
  html body .fv__img--graph1, html body .fv__img--graph2, html body .fv__img--graph3 {
    width: 23.6453333333vw;
    height: 16.9866666667vw;
  }
  html body .fv__img--graph1 {
    bottom: 25vw;
    left: -2vw;
  }
  html body .fv__img--graph2 {
    left: 12vw;
    top: 54vw;
  }
  html body .fv__img--graph3 {
    width: 18.8453333333vw;
    bottom: 57vw;
    left: 56vw;
  }
  html body .fv__img--airplane {
    width: 40.1786666667vw;
    height: 40.1866666667vw;
    top: 12vw;
    right: 10vw;
  }
  html body span.fz05 {
    font-size: 4.2666666667vw;
    color: inherit;
  }
  html body span.orange {
    font-size: 6.4vw;
  }
  html body .about__title--span {
    font-size: 4.2666666667vw;
  }
  html body .about__textarea::after {
    background: url(../svg/hukidasi_sp.svg) no-repeat;
    width: 91.4666666667vw;
    height: 59.7333333333vw;
    background-size: contain;
  }
  html body .about__pickup {
    align-items: center;
    justify-content: center;
    width: 97%;
    margin: 0 auto;
    flex-flow: column-reverse;
  }
  html body .about__textarea {
    width: 100%;
  }
  html body span.b-under {
    font-size: 4.8vw;
    background: linear-gradient(transparent 70%, #FFD97A 30%);
  }
  html body .about__description {
    margin: 7vw auto;
    line-height: 180%;
  }
  html body .about__icon {
    width: 26.1333333333vw;
    height: 24vw;
    margin: 1.8666666667vw 0vw 0vw 0vw;
  }
  html body .about__items {
    gap: 24px;
    flex-flow: column;
  }
  html body .point,
  html body .plan {
    background-color: #FFF9F3;
  }
  html body .point__contents.contents,
  html body .plan__contents.contents {
    max-width: 100% !important;
    width: 100%;
  }
  html body .point__table,
  html body .plan__table {
    margin-left: 20px;
  }
  html body .point__tablearea,
  html body .plan__tablearea {
    overflow-x: scroll;
    padding: 10px 0;
  }
  html body .point .table_design thead th:nth-child(2)::before {
    content: "";
    bottom: 94%;
  }
  html body .point .point__table--enp-th::before {
    content: "";
    left: -4.5vw;
    width: 108%;
    background: #FFF9F3;
  }
  html body .point__title {
    line-height: 128%;
  }
  html body .point__title span.under {
    background: transparent;
  }
  html body .point__title--span {
    font-size: 4.2666666667vw;
    margin-bottom: -18px;
  }
  html body .point__tablearea {
    margin: 40px auto;
  }
  html body .point .table_design tbody th,
  html body .point .table_design tbody td {
    font-size: 3.7333333333vw;
  }
  html body .point .orange {
    font-size: 8vw;
  }
  html body th,
  html body td {
    box-sizing: border-box;
  }
  html body .point .table_design thead th:nth-child(2) {
    border-radius: 5px 5px 0 0;
    width: 74.6666666667vw;
  }
  html body .point .table_design thead th {
    width: 53.3333333333vw;
  }
  html body .reason {
    background: linear-gradient(to bottom, #FFE4C4 0%, #FFCBA0 100%);
    padding-bottom: 40px;
  }
  html body .reason__title {
    letter-spacing: 1px;
    margin-top: 0;
    padding-top: 60px;
  }
  html body .reason__title--span {
    font-size: 4.2666666667vw;
    color: #A8AAAA;
  }
  html body .reason::after {
    background: url(../svg/bg_circle_sp.svg) no-repeat center center;
    background-size: contain;
    width: 100%;
    height: 100%;
    background-position-y: 6%;
  }
  html body .reason__item {
    width: 95%;
    margin: 0 auto;
  }
  html body .plan .plan__table--enp-th::before {
    width: 55vw;
    left: -4.5vw;
    height: 117%;
    background: #FFF9F3;
  }
  html body .plan__title--span {
    font-size: 4.2666666667vw;
  }
  html body .plan .table_design tbody th,
  html body .plan .table_design tbody td {
    font-size: 3.7333333333vw;
  }
  html body .plan .table_design thead th {
    width: 53.3333333333vw;
  }
  html body .plan .blue {
    font-size: 8vw;
  }
  html body .cp_qa03 .cp_actab {
    margin: 0;
  }
  html body .cp_qa03 .cp_actab label {
    font-size: 3.7333333333vw;
    padding: 2em 4em;
    line-height: 1.8;
    display: flex;
    text-indent: inherit;
    width: 59%;
    margin: 0 auto;
    height: 100%;
    align-items: center;
  }
  html body .cp_qa03 .cp_actab label::before {
    align-items: center;
    display: flex;
    align-items: center;
    height: 100%;
    font-family: arial;
    font-weight: 100;
    font-size: 6.4vw;
    left: 13vw;
    position: absolute;
  }
  html body .cp_qa03 .cp_actab label::after {
    top: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    height: 100%;
    font-weight: 100;
    width: 1em;
  }
  html body .cp_qa03 .cp_actab .cp_actab-content p {
    margin: 2em 1em;
    font-weight: 400;
  }
  html body .cp_qa03 .cp_actab .cp_actab-content {
    border-top: solid 1px #e9ebeb;
    padding: 0px 0 0 3.5em;
  }
  html body .cp_qa03 .cp_actab .cp_actab-content::before {
    margin: 1em 0 0 -1em;
    font-family: Arial;
  }
  html body .flow {
    background-color: #FFF9F3;
  }
  html body .faq__title--span, html body .flow__title--span {
    font-size: 4.2666666667vw;
  }
  html body .flow__nomber {
    font-size: 5.3333333333vw;
    color: #4FAFE7;
  }
  html body .flow__nomber::after {
    width: 13.3333333333vw;
    height: 13.3333333333vw;
    margin: 0 auto;
    top: -4.8vw;
    right: 0px;
    left: 0;
    bottom: 0;
    border: solid 2px #4FAFE7;
  }
  html body .flow__items {
    width: 65.3333333333vw;
  }
  html body .flow__box {
    gap: 0;
    padding: 20px 0;
    width: 91.4666666667vw;
  }
  html body .flow__title--h3 {
    font-size: 4.8vw;
  }
  html body .flow__description {
    font-size: 3.7333333333vw;
    letter-spacing: 1px;
  }
  html body .flow__nomber {
    width: 25%;
  }
  html body .contact {
    background: linear-gradient(to bottom, #FFE4C4 0%, #FFCBA0 100%);
  }
  html body .contact__items {
    flex-flow: column;
  }
  html body .contact__item--textarea {
    width: 100%;
  }
  html body .contact__description {
    font-size: 5.8666666667vw;
    margin-bottom: 1rem;
  }
  html body .contact__description::before {
    content: "＼";
    left: 20px;
  }
  html body .contact__description::after {
    content: "／";
    right: 20px;
  }
  html body .contact__link {
    font-size: 4.8vw;
    background: linear-gradient(to bottom, #FF8116 0%, #F38E00 100%);
  }
  html body .contact__link::after {
    color: #f57c00;
    background-color: #fff;
    width: 4.8vw;
    height: 4.8vw;
    font-size: 3.7333333333vw;
    right: 12%;
  }
  html body .contact__formarea {
    background-color: rgba(255, 255, 255, 0.4);
    flex-flow: column;
    border: none;
    gap: 10px;
  }
  html body .contact__mailform {
    color: #000;
    width: 78%;
    text-align: center;
  }
  html body .contact__item--imgarea {
    width: 90%;
  }
  html body .footer__wrap {
    padding: 0;
    margin: 12.8vw auto 6.4vw auto;
  }
  html body .footer__nav {
    align-items: baseline;
    flex-flow: column;
  }
  html body .footer__navlist:first-child a {
    border-bottom: 2px solid #000;
  }
  html body .footer__global {
    gap: 30px;
    flex-flow: column;
  }
  html body .footer__logo {
    margin: 0vw 0vw 9.3333333333vw 0vw;
  }
  html body .footer_copywrite {
    text-align: center;
    margin: 13.3333333333vw 0vw 0vw 0vw;
  }
  html body .footer_copywrite small {
    font-size: 2.9333333333vw;
    letter-spacing: 1px;
  }
  html body .contact__mailform::before {
    background: url(../svg/mail_icon.svg) no-repeat;
  }
}