@media screen and (min-width: 769px), print {
  img {
    width: 100%;
    height: auto;
  }
  .container {
    overflow: hidden;
    max-width: 768px;
    margin: 0 auto;
  }
  .show_sp {
    display: none !important;
  }
  .row {
    max-width: 768px;
    width: 100%;
    margin: 0 auto;
    padding-left: 27.6px;
    padding-right: 27.6px;
  }
  .row {
    padding-left: 27.6px;
    padding-right: 27.6px;
  }
  .inner {
    padding-left: 27.6px;
    padding-right: 27.6px;
  }
  body {
    padding-top: 108.56px;
  }
  .header {
    position: fixed;
    z-index: 99;
    width: 100%;
    height: 108.56px;
    left: 50%;
    -webkit-transform: translateX(-50%);
       -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    top: 0;
    background-color: #fff;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 0 27.6px;
    width: 768px;
  }
  .header h1 a {
    display: block;
    width: 276px;
  }
  .header ul {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-left: auto;
    gap: 11.04px;
  }
  .header ul li a {
    display: block;
    width: 68.08px;
  }
  .header ul li a.st2 {
    width: 320.16px;
  }
  .footer {
    text-align: center;
    font-size: 16.56px;
    padding: 23px 0 98.44px;
  }
  .footer a {
    font-size: 16.56px;
    display: inline-block;
    margin-bottom: 23px;
    color: #292929;
  }
  .footer p {
    color: #292929;
  }
  .cta_fixed {
    width: 768px;
    position: fixed;
    bottom: 0;
    z-index: 99;
    display: -ms-grid;
    display: grid;
    gap: 9.2px;
    -ms-grid-columns: (minmax(0, 1fr))[2];
        grid-template-columns: repeat(2, minmax(0, 1fr));
    padding: 13.8px;
    left: 50%;
    -webkit-transform: translateX(-50%);
       -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    background-color: #FFFFEF;
  }
  main {
    background-color: #fff;
  }
  .p_top .sec figure img, .p_top .sec picture img {
    display: block;
    width: 100%;
    height: auto;
  }
  .p_top .video {
    margin: 18.4px 0 82.8px;
  }
  .p_top .sec01 {
    position: relative;
  }
  .p_top .sec01 .s_vd {
    width: 336.72px;
    height: 224.48px;
    position: absolute;
  }
  .p_top .sec01 .s_vd.st1 {
    width: 211.6px;
    height: 165.6px;
    right: 0px;
    top: 723.12px;
  }
  .p_top .sec01 .s_vd.st2 {
    width: 100%;
    height: auto;
    left: 0;
    top: 266.8px;
  }
  .p_top .sec01 .s_vd video {
    width: 100%;
    height: 100%;
    object-fit: contain;
  }
  .p_top .sec01Ex {
    background: #005383;
    padding: 18.4px 27.6px;
    margin-top: -85.6px;
    position: relative;
    z-index: 5;
  }
  .p_top .sec01Ex figure {
    width: 100%;
  }
  .p_top .sec05 {
    position: relative;
  }
  .p_top .sec05 .s_vd {
    width: 671.36px;
    height: 1078px;
    position: absolute;
  }
  .p_top .sec05 .s_vd.st1 {
    left: 50%;
    -webkit-transform: translateX(-50%);
       -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    top: 791.2px;
  }
  .p_top .sec05 .s_vd video {
    width: 100%;
    height: 100%;
    object-fit: contain;
    -moz-border-radius: 9.2px;
         border-radius: 9.2px;
  }
  .p_top .sec06 {
    position: relative;
  }
  .p_top .sec06 .s_vd {
    position: absolute;
    width: 651.36px;
  }
  .p_top .sec06 .s_vd.st1 {
    left: 50%;
    -webkit-transform: translateX(-50%);
       -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    top: 174.8px;
  }
  .p_top .sec02 {
    margin-bottom: -147.2px;
  }
  .p_top .videoWr {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    -moz-border-radius: 9.2px;
         border-radius: 9.2px;
  }
  .p_top .videoWr iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .p_top .sec07 {
    position: relative;
  }
  .p_top .sec07.st2 {
    z-index: 3;
    margin-top: -276px;
    margin-bottom: -322px;
  }
  .p_top .sec07.st3 {
    z-index: 7;
    margin-top: -414px;
    margin-bottom: -322px;
  }
  .p_top .sec07 ul {
    position: absolute;
    left: 50%;
    bottom: 366.4px;
    -webkit-transform: translateX(-50%);
       -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 655.04px;
    z-index: 1;
  }
  .p_top .sec07 ul li + li {
    margin-top: 23px;
  }
  .p_top .sec08 {
    margin-top: -303.6px;
    position: relative;
    z-index: 2;
  }
  .p_top .sec09 {
    margin-top: -147.2px;
    margin-bottom: -147.2px;
    position: relative;
    z-index: 2;
  }
  .p_top .sec10 {
    margin-top: -202.4px;
    position: relative;
    z-index: 5;
  }
  .p_top .sec11 {
    margin-top: -202.4px;
    position: relative;
    z-index: 5;
  }
  .p_top .sec12 {
    margin-top: -294.4px;
    position: relative;
    z-index: 5;
  }
  .p_top .sec13 {
    position: relative;
    z-index: 13;
  }
  .p_top .doctor {
    background: url(../img/doctor_bg.webp) center top no-repeat;
    -moz-background-size: 100%;
         background-size: 100%;
    padding: 161px 0 194.12px;
    position: relative;
    z-index: 4;
  }
  .p_top .doctor .doctor_tt {
    text-align: center;
    margin-bottom: 36.8px;
  }
  .p_top .doctor .doctor_tt img {
    display: inline-block;
    width: 687.24px;
  }
  .p_top .doctor .doctor_sliderArea {
    padding-left: 13.8px;
    padding-right: 13.8px;
  }
  .p_top .doctor .doctor_sliderArea .swiper {
    overflow: initial;
  }
  .p_top .doctor .doctor_sliderArea .doctor_slider {
    margin-top: -23px;
  }
  .p_top .doctor .doctor_sliderArea .swiper-button-next {
    width: 64.4px;
    height: 64.4px;
    background: url(../img/ic_next.webp) center/100% 100% no-repeat;
    display: block;
    text-indent: -9199.08px;
    margin-top: 0;
    top: 39%;
    right: 0;
  }
  .p_top .doctor .doctor_sliderArea .swiper-button-prev {
    width: 64.4px;
    height: 64.4px;
    background: url(../img/ic_prev.webp) center/100% 100% no-repeat;
    display: block;
    text-indent: -9199.08px;
    margin-top: 0;
    top: 39%;
    left: 0;
  }
  .p_top .doctor .doctor_sliderArea .swiper-pagination {
    position: static;
    margin-top: 23px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .p_top .doctor .doctor_sliderArea .swiper-pagination .swiper-pagination-bullet {
    opacity: 1;
    width: 25.76px;
    height: 25.76px;
    background: #D9D9D9;
    margin: 0 46px;
  }
  .p_top .doctor .doctor_sliderArea .swiper-pagination .swiper-pagination-bullet-active {
    opacity: 1;
    width: 25.76px;
    height: 25.76px;
    background-color: #4E87B2;
  }
  .p_top .qa {
    padding: 161px 0 230px;
    background: url(../img/qa_bg.webp) center top no-repeat;
    -moz-background-size: cover;
         background-size: cover;
    position: relative;
    z-index: 14;
    margin-top: -276px;
  }
  .p_top .qa h2 {
    text-align: center;
    margin-bottom: 50.6px;
  }
  .p_top .qa h2 img {
    display: inline-block;
    width: 373.52px;
  }
  .p_top .qa .qa_list dl {
    overflow: hidden;
    background: #FFFFFF;
    border: 1px solid #00558E;
  }
  .p_top .qa .qa_list dl + dl {
    margin-top: 18.4px;
  }
  .p_top .qa .qa_list dl dt {
    min-height: 106.72px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    position: relative;
    padding: 0 73.6px 0 92px;
    cursor: pointer;
    font-family: "Roboto", sans-serif;
    font-style: normal;
    font-weight: 500;
    font-size: 25.76px;
    line-height: 1.64;
    color: #00558E;
  }
  .p_top .qa .qa_list dl dt::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 27.6px;
    -webkit-transform: translateY(-50%);
       -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 51.52px;
    height: 51.52px;
    background: url(../img/ic_q.webp) center/100% 100% no-repeat;
    display: block;
  }
  .p_top .qa .qa_list dl dt i {
    position: absolute;
    width: 36.8px;
    height: 36.8px;
    right: 27.6px;
    top: 50%;
    margin-top: -18.4px;
    display: block;
  }
  .p_top .qa .qa_list dl dt i:before, .p_top .qa .qa_list dl dt i:after {
    content: "";
    position: absolute;
    background-color: #00558E;
    -webkit-transition: -webkit-transform 0.25s ease-out;
    transition: -webkit-transform 0.25s ease-out;
    -moz-transition: transform 0.25s ease-out, -moz-transform 0.25s ease-out;
    transition: transform 0.25s ease-out;
    transition: transform 0.25s ease-out, -webkit-transform 0.25s ease-out, -moz-transform 0.25s ease-out;
  }
  .p_top .qa .qa_list dl dt i:before {
    top: 0;
    left: 50%;
    width: 1.84px;
    height: 100%;
    margin-left: -0.92px;
  }
  .p_top .qa .qa_list dl dt i:after {
    top: 50%;
    left: 0;
    width: 100%;
    height: 1.84px;
    margin-top: -0.92px;
  }
  .p_top .qa .qa_list dl dt.is_active i:before {
    -webkit-transform: rotate(90deg);
       -moz-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
            transform: rotate(90deg);
  }
  .p_top .qa .qa_list dl dd {
    background-color: #fff;
    max-height: 0;
    overflow: hidden;
    -webkit-transition: max-height 0.3s ease-out;
    -moz-transition: max-height 0.3s ease-out;
    transition: max-height 0.3s ease-out;
  }
  .p_top .qa .qa_list dl dd .accCt {
    font-size: 23.92px;
    color: #000;
    line-height: 1.9;
    padding: 27.6px 73.6px 27.6px 92px;
    position: relative;
  }
  .p_top .qa .qa_list dl dd .accCt::after {
    content: "";
    position: absolute;
    left: 27.6px;
    top: 0;
    width: -webkit-calc(100% - 55.2px);
    width: -moz-calc(100% - 55.2px);
    width: calc(100% - 55.2px);
    height: 0.92px;
    background: #00558E;
    display: block;
  }
  .p_top .qa .qa_list dl dd .accCt::before {
    content: "";
    position: absolute;
    top: 27.6px;
    left: 27.6px;
    width: 51.52px;
    height: 51.52px;
    background: url(../img/ic_a.webp) center/100% 100% no-repeat;
    display: block;
  }
  .p_top .clinic {
    padding: 161px 0 92px;
    background: url(../img/clinic_bg.webp) center top no-repeat;
    -moz-background-size: cover;
         background-size: cover;
    position: relative;
    z-index: 14;
    margin-top: -184px;
  }
  .p_top .clinic .clinic_img1 {
    text-align: center;
    margin-bottom: 36.8px;
  }
  .p_top .clinic .clinic_img1 img {
    display: inline-block;
    width: 736px;
  }
  .p_top .clinic .clinic_main {
    font-family: "Roboto", sans-serif;
    position: relative;
    z-index: 2;
  }
  .p_top .clinic .clinic_main .row > dl + dl {
    margin-top: 18.4px;
  }
  .p_top .clinic .clinic_main .row > dl > dt {
    background: #4E87B2;
    min-height: 106.72px;
    font-size: 33.12px;
    font-family: "Roboto", sans-serif;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: relative;
    padding: 0 55.2px;
    cursor: pointer;
    color: #fff;
    font-weight: 500;
    line-height: 1.56;
    text-align: center;
    position: relative;
    -moz-box-shadow: 0px 2.76px 0px rgba(78, 135, 178, 0.3);
         box-shadow: 0px 2.76px 0px rgba(78, 135, 178, 0.3);
  }
  .p_top .clinic .clinic_main .row > dl > dt::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 27.6px;
    -webkit-transform: translateY(-50%);
       -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 44.16px;
    height: 44.16px;
    background-image: url(../img/ic_plus.webp);
    background-repeat: no-repeat;
    -moz-background-size: 100% 100%;
         background-size: 100% 100%;
    display: block;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
  }
  .p_top .clinic .clinic_main .row > dl > dt.is_active::after {
    background-image: url(../img/ic_minus.webp);
  }
  .p_top .clinic .clinic_main .row > dl > dd {
    max-height: 0;
    overflow: hidden;
    -webkit-transition: max-height 0.3s ease-out;
    -moz-transition: max-height 0.3s ease-out;
    transition: max-height 0.3s ease-out;
  }
  .p_top .clinic .clinic_main .row > dl > dd .accCt {
    padding: 46px 27.6px;
    border-top: 3.68px solid #bdc8d3;
  }
  .p_top .clinic .clinic_main .row > dl > dd .accCt h3 {
    font-size: 34.96px;
    color: #fff;
    font-weight: 500;
    line-height: 1.569;
    background-color: #4E87B2;
    padding: 22.08px 27.6px;
  }
  .p_top .clinic .clinic_main .row > dl > dd .accCt h3 ~ h3 {
    margin-top: 27.6px;
  }
  .p_top .clinic .clinic_main .row > dl > dd .accCt dl {
    border-left: 1px solid #4E87B2;
    border-right: 1px solid #4E87B2;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    border-top: 1px solid #C2C2C2;
    min-height: 101.2px;
    background-color: #fff;
  }
  .p_top .clinic .clinic_main .row > dl > dd .accCt dl.las {
    border-bottom: 1px solid #4E87B2;
  }
  .p_top .clinic .clinic_main .row > dl > dd .accCt dl dt {
    border-right: 1px solid #C2C2C2;
    width: 174.8px;
    background-color: #E6ECEC;
    font-size: 25.76px;
    font-weight: bold;
    color: #4E87B2;
    letter-spacing: 0.08em;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
  .p_top .clinic .clinic_main .row > dl > dd .accCt dl dd {
    width: 100%;
    padding: 18.4px 34.04px;
    font-size: 22.08px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .p_top .contact {
    padding: 87.4px 0;
    font-size: 22.08px;
  }
  .p_top .contact .formLead h3 {
    text-align: center;
    margin-bottom: 64.4px;
  }
  .p_top .contact .formLead h3 img {
    display: inline-block;
    width: 572.24px;
  }
  .p_top .contact .formLead ul {
    font-size: 20.24px;
    margin-bottom: 36.8px;
  }
  .p_top .contact .alignL {
    font-size: 20.24px;
  }
  .p_top .contact table.formSheet {
    margin-top: 18.4px;
  }
  .p_top .contact table.formSheet {
    display: block;
    font-size: 20.24px;
    background: #FFFFFF;
    -moz-box-shadow: 0px 0px 7.36px rgba(0, 0, 0, 0.15);
         box-shadow: 0px 0px 7.36px rgba(0, 0, 0, 0.15);
    padding: 46px 27.6px;
    margin-bottom: 27.6px;
  }
  .p_top .contact table.formSheet > tbody {
    display: block;
    font-size: 25.76px;
  }
  .p_top .contact table.formSheet > tbody > tr {
    display: block;
    font-size: 25.76px;
  }
  .p_top .contact table.formSheet > tbody > tr > th {
    font-size: 25.76px;
    display: block;
    font-weight: 400;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
       -moz-box-orient: horizontal;
       -moz-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    -webkit-box-pack: end;
       -moz-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
  .p_top .contact table.formSheet > tbody > tr > th .iconRequired {
    margin-right: 13.8px;
  }
  .p_top .contact table.formSheet > tbody > tr > td {
    font-size: 25.76px;
    display: block;
  }
  .p_top .contact table.subtbl {
    display: block;
    font-size: 25.76px;
  }
  .p_top .contact table.subtbl > tbody {
    display: block;
    font-size: 25.76px;
  }
  .p_top .contact table.subtbl > tbody > tr {
    display: block;
    font-size: 25.76px;
  }
  .p_top .contact table.subtbl > tbody > tr > th {
    font-size: 25.76px;
    font-weight: 400;
    display: block;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
       -moz-box-orient: horizontal;
       -moz-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    -webkit-box-pack: end;
       -moz-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
  .p_top .contact table.subtbl > tbody > tr > th .iconRequired {
    margin-right: 13.8px;
  }
  .p_top .contact table.subtbl > tbody > tr > td {
    font-size: 25.76px;
    display: block;
  }
  .p_top .contact .iconRequired {
    font-size: 25.76px;
    font-weight: 400;
    color: #fff;
    background-color: #B71414;
    display: inline-block;
    padding: 0 9.2px;
    -moz-border-radius: 3.68px;
         border-radius: 3.68px;
    margin-right: 13.8px;
  }
  .p_top .contact th {
    font-size: 33.12px;
    font-weight: bold;
    font-family: "Noto Sans JP", sans-serif;
    text-align: left;
    margin-bottom: 36.8px;
    padding-bottom: 36.8px;
    border-bottom: 1px solid #000;
  }
  .p_top .contact tr {
    margin-bottom: 82.8px;
  }
  .p_top .contact .radio-group label {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 9.2px;
    cursor: pointer;
    margin-bottom: 11.04px;
    font-weight: bold;
  }
  .p_top .contact .radio-group label span {
    font-weight: 400;
    font-size: 22.08px;
  }
  .p_top .contact .radio-group input[type="radio"] {
    -moz-appearance: none;
         appearance: none;
    -webkit-appearance: none;
    width: 33.12px;
    height: 33.12px;
    border: 2px solid #000;
    -moz-border-radius: 50%;
         border-radius: 50%;
    position: relative;
    cursor: pointer;
    -webkit-transition: 0.2s;
    -moz-transition: 0.2s;
    transition: 0.2s;
  }
  .p_top .contact .radio-group input[type="radio"]:checked {
    border-color: #000;
  }
  .p_top .contact .radio-group input[type="radio"]:checked::before {
    content: "";
    width: 20.24px;
    height: 20.24px;
    background: #000;
    -moz-border-radius: 50%;
         border-radius: 50%;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
       -moz-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
  .p_top .contact .radio-group input[type="checkbox"] {
    -moz-appearance: none;
         appearance: none;
    -webkit-appearance: none;
    width: 33.12px;
    height: 33.12px;
    border: 2px solid #000;
    -moz-border-radius: 4.6px;
         border-radius: 4.6px;
    position: relative;
    cursor: pointer;
    -webkit-transition: 0.2s;
    -moz-transition: 0.2s;
    transition: 0.2s;
  }
  .p_top .contact .radio-group input[type="checkbox"]:checked {
    border-color: #000;
  }
  .p_top .contact .radio-group input[type="checkbox"]:checked::before {
    content: "";
    width: 20.24px;
    height: 20.24px;
    background: #000;
    -moz-border-radius: 4.6px;
         border-radius: 4.6px;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
       -moz-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
  .p_top .contact input[type="text"], .p_top .contact input[type="tel"], .p_top .contact input[type="email"] {
    border: 0;
    width: 100%;
    height: 82.8px;
    padding: 0 27.6px;
    outline: none;
    font-size: 22.08px;
    -moz-border-radius: 0px;
         border-radius: 0px;
    color: #000;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    margin: 9.2px 0;
    background-color: #F5F5F5;
    font-size: -webkit-calc(max(2.89855vw, px(16)));
    font-size: -moz-calc(max(2.89855vw, px(16)));
    font-size: calc(max(2.89855vw, px(16)));
  }
  .p_top .contact input[type="text"]::-webkit-input-placeholder, .p_top .contact input[type="tel"]::-webkit-input-placeholder, .p_top .contact input[type="email"]::-webkit-input-placeholder {
    color: #C7C7C7;
    opacity: 1;
  }
  .p_top .contact input[type="text"]::-moz-placeholder, .p_top .contact input[type="tel"]::-moz-placeholder, .p_top .contact input[type="email"]::-moz-placeholder {
    color: #C7C7C7;
    opacity: 1;
  }
  .p_top .contact input[type="text"]:-ms-input-placeholder, .p_top .contact input[type="tel"]:-ms-input-placeholder, .p_top .contact input[type="email"]:-ms-input-placeholder {
    color: #C7C7C7;
    opacity: 1;
  }
  .p_top .contact input[type="text"]::placeholder, .p_top .contact input[type="tel"]::placeholder, .p_top .contact input[type="email"]::placeholder {
    color: #C7C7C7;
    opacity: 1;
  }
  .p_top .contact textarea {
	resize: none;
        border: 0;
    width: 100% !important;
    height: 317.4px !important;
    padding: 13.8px 27.6px;
    outline: none;
    font-size: 22.08px;
    -moz-border-radius: 0px;
         border-radius: 0px;
    color: #000;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    margin: 9.2px 0;
    font-size: -webkit-calc(max(2.89855vw, px(16)));
    font-size: -moz-calc(max(2.89855vw, px(16)));
    font-size: calc(max(2.89855vw, px(16)));
    background-color: #F5F5F5;
  }
  .p_top .contact textarea::-webkit-input-placeholder {
    color: #C7C7C7;
    opacity: 1;
  }
  .p_top .contact textarea::-moz-placeholder {
    color: #C7C7C7;
    opacity: 1;
  }
  .p_top .contact textarea:-ms-input-placeholder {
    color: #C7C7C7;
    opacity: 1;
  }
  .p_top .contact textarea::placeholder {
    color: #C7C7C7;
    opacity: 1;
  }
  .p_top .contact input[type="tel"] {
    width: 138px !important;
  }
  .p_top .contact .ctHead {
    font-weight: bold;
  }
  .p_top .contact .ctHead ~ .ctHead {
    margin-top: 55.2px;
  }
  .p_top .contact .fPink {
    display: block;
    margin: 36.8px 0 -18.4px;
  }
  .p_top .contact select {
    border: 0;
    width: 100%;
    height: 82.8px;
    padding: 0 18.4px;
    outline: none;
    font-size: 20.24px;
    -moz-border-radius: 0px;
         border-radius: 0px;
    color: #000;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    margin: 9.2px 0;
    background: #F5F5F5 url(../img/ar2.webp) center right 18.4px no-repeat;
    -moz-background-size: 22.08px 13.8px;
         background-size: 22.08px 13.8px;
    font-size: -webkit-calc(max(2.89855vw, px(16)));
    font-size: -moz-calc(max(2.89855vw, px(16)));
    font-size: calc(max(2.89855vw, px(16)));
  }
  .p_top .contact select::-webkit-input-placeholder {
    color: #C7C7C7;
    opacity: 1;
  }
  .p_top .contact select::-moz-placeholder {
    color: #C7C7C7;
    opacity: 1;
  }
  .p_top .contact select:-ms-input-placeholder {
    color: #C7C7C7;
    opacity: 1;
  }
  .p_top .contact select::placeholder {
    color: #C7C7C7;
    opacity: 1;
  }
  .p_top .contact select.full {
    width: 100%;
  }
  .p_top .contact .cal_wrapper {
    padding-bottom: 18.4px;
    margin-right: 18.4px;
  }
  .p_top .contact .cal_wrapper table.cal {
    line-height: 1;
    font-size: 22.08px;
    width: 100%;
  }
  .p_top .contact .cal_wrapper table.cal th, .p_top .contact .cal_wrapper table.cal td {
    font-size: 22.08px;
  }
  .p_top .contact .cal_wrapper table.cal td {
    padding: 4.6px 6.44px;
    text-align: center;
    border-top: solid 1px #ccc;
    background-color: #FFF;
  }
  .p_top .contact .cal_wrapper table.cal .Sat {
    color: #00a5e4;
  }
  .p_top .contact .cal_wrapper table.cal .backward {
    color: #ccc;
  }
  .p_top .contact .cal_wrapper table.cal .Sun {
    color: #fa64a4;
  }
  .p_top .contact .cal_wrapper table.cal .Holyday {
    color: #fa64a4;
    font-weight: bold;
  }
  .p_top .contact .cal_wrapper table.cal .Today {
    background-color: #FFFF73;
    font-weight: bold;
  }
  .p_top .contact .cal_wrapper table.cal th {
    background-color: #fa64a4;
    color: #FFF;
    text-align: center;
    font-weight: normal;
    padding: 6.44px;
  }
  .p_top .contact .cal_wrapper table.cal th p {
    margin: 0;
  }
  .p_top .contact .fColorPink {
    color: #000;
    text-align: center;
  }
  .p_top .contact .alignC {
    text-align: center;
  }
  .p_top .contact .formSubmitBtn {
    background: url(../img/f_btn.webp) center/100% 100% no-repeat;
    width: 596.16px;
    height: 106.72px;
    padding: 0;
    outline: none;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    border: 0;
    cursor: pointer;
    -moz-border-radius: 0;
         border-radius: 0;
    text-indent: -9199.08px;
    margin: 27.6px 0;
  }
  .p_top .contact .formSubmitBtn:hover {
    opacity: 0.7;
  }
  .p_top .contact .btnXLPnkDeep {
    color: #FFF;
    background-color: #fa64a4;
    font-size: 16.56px;
    padding: 11.04px 55.2px 10.12px;
    -moz-border-radius: 2.76px;
         border-radius: 2.76px;
    text-shadow: 0px -0.92px #EB87B1;
  }
    .p_top .sec01 .s_vd.st2 video {
  width: 100%;
  height: 335px;     /* ← 好きな高さに変更 */
  object-fit: cover; /* はみ出しをトリミング */
}
.p_top .contact .birth-selects select {
  width: auto;
  min-width: 200px;
}
}

@media screen and (max-width: 768px) {
  img {
    width: 100%;
    height: auto;
  }
  .container {
    overflow: hidden;
    max-width: 100vw;
    margin: 0 auto;
  }
  .show_pc {
    display: none !important;
  }
  .row {
    padding-left: 3.62319vw;
    padding-right: 3.62319vw;
  }
  .inner {
    padding-left: 3.62319vw;
    padding-right: 3.62319vw;
  }
  body {
    padding-top: 14.25121vw;
  }
  .header {
    position: fixed;
    z-index: 99;
    width: 100%;
    height: 14.25121vw;
    top: 0;
    left: 0;
    background-color: #fff;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 0 3.62319vw;
  }
  .header h1 a {
    display: block;
    width: 36.23188vw;
  }
  .header ul {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-left: auto;
    gap: 1.44928vw;
  }
  .header ul li a {
    display: block;
    width: 8.9372vw;
  }
  .header ul li a.st2 {
    width: 42.02899vw;
  }
  .footer {
    text-align: center;
    font-size: 2.17391vw;
    padding: 3.01932vw 0 12.92271vw;
  }
  .footer a {
    font-size: 2.17391vw;
    display: inline-block;
    margin-bottom: 3.01932vw;
    color: #292929;
  }
  .footer p {
    color: #292929;
  }
  .cta_fixed {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 99;
    display: -ms-grid;
    display: grid;
    gap: 1.20773vw;
    -ms-grid-columns: (minmax(0, 1fr))[2];
        grid-template-columns: repeat(2, minmax(0, 1fr));
    padding: 1.81159vw;
    background-color: #FFFFEF;
  }
  .p_top .sec figure img, .p_top .sec picture img {
    display: block;
    width: 100%;
    height: auto;
  }
  .p_top .video {
    margin: 2.41546vw 0 10.86957vw;
  }
  .p_top .sec01 {
    position: relative;
  }
  .p_top .sec01 .s_vd {
    position: absolute;
  }
  .p_top .sec01 .s_vd.st1 {
    width: 27.77778vw;
    height: 21.73913vw;
    right: 0vw;
    top: 94.92754vw;
  }
  .p_top .sec01 .s_vd.st2 {
    width: 100%;
    height: auto;
    left: 0;
    top: 35.02415vw;
  }
  .p_top .sec01 .s_vd video {
    width: 100%;
    height: 100%;
    object-fit: contain;
  }
  .p_top .sec01Ex {
    background: #005383;
    padding: 2.41546vw 3.62319vw;
    margin-top: -11.73913vw;
    position: relative;
    z-index: 5;
  }
  .p_top .sec01Ex figure {
    width: 100%;
  }
  .p_top .sec05 {
    position: relative;
  }
  .p_top .sec05 .s_vd {
    width: 78.26087vw;
    height: 139.13043vw;
    position: absolute;
  }
  .p_top .sec05 .s_vd.st1 {
    left: 50%;
    -webkit-transform: translateX(-50%);
       -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    top: 100.24155vw;
  }
  .p_top .sec05 .s_vd video {
    width: 100%;
    height: 100%;
    object-fit: contain;
    -moz-border-radius: 1.20773vw;
         border-radius: 1.20773vw;
  }
  .p_top .sec06 {
    position: relative;
  }
  .p_top .sec06 .s_vd {
    position: absolute;
    width: 85.50725vw;
  }
  .p_top .sec06 .s_vd.st1 {
    left: 50%;
    -webkit-transform: translateX(-50%);
       -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    top: 22.94686vw;
  }
  .p_top .sec02 {
    margin-bottom: -19.32367vw;
  }
  .p_top .videoWr {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    -moz-border-radius: 1.20773vw;
         border-radius: 1.20773vw;
  }
  .p_top .videoWr iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .p_top .sec07 {
    position: relative;
  }
  .p_top .sec07.st2 {
    z-index: 3;
    margin-top: -36.23188vw;
    margin-bottom: -42.27053vw;
  }
  .p_top .sec07.st3 {
    z-index: 7;
    margin-top: -54.34783vw;
    margin-bottom: -42.27053vw;
  }
  .p_top .sec07 ul {
    position: absolute;
    left: 50%;
    bottom: 47.72464vw;
    -webkit-transform: translateX(-50%);
       -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 85.99034vw;
    z-index: 1;
  }
  .p_top .sec07 ul li + li {
    margin-top: 3.01932vw;
  }
  .p_top .sec08 {
    margin-top: -39.85507vw;
    position: relative;
    z-index: 2;
  }
  .p_top .sec09 {
    margin-top: -19.32367vw;
    margin-bottom: -19.32367vw;
    position: relative;
    z-index: 2;
  }
  .p_top .sec10 {
    margin-top: -26.57005vw;
    position: relative;
    z-index: 5;
  }
  .p_top .sec11 {
    margin-top: -26.57005vw;
    position: relative;
    z-index: 5;
  }
  .p_top .sec12 {
    margin-top: -38.64734vw;
    position: relative;
    z-index: 5;
  }
  .p_top .sec13 {
    position: relative;
    z-index: 13;
  }
  .p_top .doctor {
    background: url(../img/doctor_bg.webp) center top no-repeat;
    -moz-background-size: 100%;
         background-size: 100%;
    padding: 21.13527vw 0 25.48309vw;
    position: relative;
    z-index: 4;
  }
  .p_top .doctor .doctor_tt {
    text-align: center;
    margin-bottom: 4.83092vw;
  }
  .p_top .doctor .doctor_tt img {
    display: inline-block;
    width: 90.21739vw;
  }
  .p_top .doctor .doctor_sliderArea {
    padding-left: 1.81159vw;
    padding-right: 1.81159vw;
  }
  .p_top .doctor .doctor_sliderArea .swiper {
    overflow: initial;
  }
  .p_top .doctor .doctor_sliderArea .doctor_slider {
    margin-top: -3.01932vw;
  }
  .p_top .doctor .doctor_sliderArea .swiper-button-next {
    width: 8.45411vw;
    height: 8.45411vw;
    background: url(../img/ic_next.webp) center/100% 100% no-repeat;
    display: block;
    text-indent: -1207.6087vw;
    margin-top: 0;
    top: 39%;
    right: 0;
  }
  .p_top .doctor .doctor_sliderArea .swiper-button-prev {
    width: 8.45411vw;
    height: 8.45411vw;
    background: url(../img/ic_prev.webp) center/100% 100% no-repeat;
    display: block;
    text-indent: -1207.6087vw;
    margin-top: 0;
    top: 39%;
    left: 0;
  }
  .p_top .doctor .doctor_sliderArea .swiper-pagination {
    position: static;
    margin-top: 3.01932vw;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .p_top .doctor .doctor_sliderArea .swiper-pagination .swiper-pagination-bullet {
    opacity: 1;
    width: 3.38164vw;
    height: 3.38164vw;
    background: #D9D9D9;
    margin: 0 6.03865vw;
  }
  .p_top .doctor .doctor_sliderArea .swiper-pagination .swiper-pagination-bullet-active {
    opacity: 1;
    width: 3.38164vw;
    height: 3.38164vw;
    background-color: #4E87B2;
  }
  .p_top .qa {
    padding: 21.13527vw 0 30.19324vw;
    background: url(../img/qa_bg.webp) center top no-repeat;
    -moz-background-size: cover;
         background-size: cover;
    position: relative;
    z-index: 14;
    margin-top: -36.23188vw;
  }
  .p_top .qa h2 {
    text-align: center;
    margin-bottom: 6.64251vw;
  }
  .p_top .qa h2 img {
    display: inline-block;
    width: 49.03382vw;
  }
  .p_top .qa .qa_list dl {
    overflow: hidden;
    background: #FFFFFF;
    border: 1px solid #00558E;
  }
  .p_top .qa .qa_list dl + dl {
    margin-top: 2.41546vw;
  }
  .p_top .qa .qa_list dl dt {
    min-height: 14.00966vw;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    position: relative;
    padding: 0 9.66184vw 0 12.07729vw;
    cursor: pointer;
    font-family: "Roboto", sans-serif;
    font-style: normal;
    font-weight: 500;
    font-size: 3.38164vw;
    line-height: 1.64;
    color: #00558E;
  }
  .p_top .qa .qa_list dl dt::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 3.62319vw;
    -webkit-transform: translateY(-50%);
       -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 6.76329vw;
    height: 6.76329vw;
    background: url(../img/ic_q.webp) center/100% 100% no-repeat;
    display: block;
  }
  .p_top .qa .qa_list dl dt i {
    position: absolute;
    width: 4.83092vw;
    height: 4.83092vw;
    right: 3.62319vw;
    top: 50%;
    margin-top: -2.41546vw;
    display: block;
  }
  .p_top .qa .qa_list dl dt i:before, .p_top .qa .qa_list dl dt i:after {
    content: "";
    position: absolute;
    background-color: #00558E;
    -webkit-transition: -webkit-transform 0.25s ease-out;
    transition: -webkit-transform 0.25s ease-out;
    -moz-transition: transform 0.25s ease-out, -moz-transform 0.25s ease-out;
    transition: transform 0.25s ease-out;
    transition: transform 0.25s ease-out, -webkit-transform 0.25s ease-out, -moz-transform 0.25s ease-out;
  }
  .p_top .qa .qa_list dl dt i:before {
    top: 0;
    left: 50%;
    width: 0.24155vw;
    height: 100%;
    margin-left: -0.12077vw;
  }
  .p_top .qa .qa_list dl dt i:after {
    top: 50%;
    left: 0;
    width: 100%;
    height: 0.24155vw;
    margin-top: -0.12077vw;
  }
  .p_top .qa .qa_list dl dt.is_active i:before {
    -webkit-transform: rotate(90deg);
       -moz-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
            transform: rotate(90deg);
  }
  .p_top .qa .qa_list dl dd {
    background-color: #fff;
    max-height: 0;
    overflow: hidden;
    -webkit-transition: max-height 0.3s ease-out;
    -moz-transition: max-height 0.3s ease-out;
    transition: max-height 0.3s ease-out;
  }
  .p_top .qa .qa_list dl dd .accCt {
    font-size: 3.1401vw;
    color: #000;
    line-height: 1.9;
    padding: 3.62319vw 9.66184vw 3.62319vw 12.07729vw;
    position: relative;
  }
  .p_top .qa .qa_list dl dd .accCt::after {
    content: "";
    position: absolute;
    left: 3.62319vw;
    top: 0;
    width: -webkit-calc(100% - 7.24638vw);
    width: -moz-calc(100% - 7.24638vw);
    width: calc(100% - 7.24638vw);
    height: 0.12077vw;
    background: #00558E;
    display: block;
  }
  .p_top .qa .qa_list dl dd .accCt::before {
    content: "";
    position: absolute;
    top: 3.62319vw;
    left: 3.62319vw;
    width: 6.76329vw;
    height: 6.76329vw;
    background: url(../img/ic_a.webp) center/100% 100% no-repeat;
    display: block;
  }
  .p_top .clinic {
    padding: 21.13527vw 0 12.07729vw;
    background: url(../img/clinic_bg.webp) center top no-repeat;
    -moz-background-size: cover;
         background-size: cover;
    position: relative;
    z-index: 14;
    margin-top: -24.15459vw;
  }
  .p_top .clinic .clinic_img1 {
    text-align: center;
    margin-bottom: 4.83092vw;
  }
  .p_top .clinic .clinic_img1 img {
    display: inline-block;
    width: 96.61836vw;
  }
  .p_top .clinic .clinic_main {
    font-family: "Roboto", sans-serif;
    position: relative;
    z-index: 2;
  }
  .p_top .clinic .clinic_main .row > dl + dl {
    margin-top: 2.41546vw;
  }
  .p_top .clinic .clinic_main .row > dl > dt {
    background: #4E87B2;
    min-height: 14.00966vw;
    font-size: 4.34783vw;
    font-family: "Roboto", sans-serif;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: relative;
    padding: 0 7.24638vw;
    cursor: pointer;
    color: #fff;
    font-weight: 500;
    line-height: 1.56;
    text-align: center;
    position: relative;
    -moz-box-shadow: 0vw 0.36232vw 0vw rgba(78, 135, 178, 0.3);
         box-shadow: 0vw 0.36232vw 0vw rgba(78, 135, 178, 0.3);
  }
  .p_top .clinic .clinic_main .row > dl > dt::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 3.62319vw;
    -webkit-transform: translateY(-50%);
       -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 5.7971vw;
    height: 5.7971vw;
    background-image: url(../img/ic_plus.webp);
    background-repeat: no-repeat;
    -moz-background-size: 100% 100%;
         background-size: 100% 100%;
    display: block;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
  }
  .p_top .clinic .clinic_main .row > dl > dt.is_active::after {
    background-image: url(../img/ic_minus.webp);
  }
  .p_top .clinic .clinic_main .row > dl > dd {
    max-height: 0;
    overflow: hidden;
    -webkit-transition: max-height 0.3s ease-out;
    -moz-transition: max-height 0.3s ease-out;
    transition: max-height 0.3s ease-out;
  }
  .p_top .clinic .clinic_main .row > dl > dd .accCt {
    padding: 6.03865vw 3.62319vw;
    border-top: 0.48309vw solid #bdc8d3;
  }
  .p_top .clinic .clinic_main .row > dl > dd .accCt h3 {
    font-size: 4.58937vw;
    color: #fff;
    font-weight: 500;
    line-height: 1.569;
    background-color: #4E87B2;
    padding: 2.89855vw 3.62319vw;
  }
  .p_top .clinic .clinic_main .row > dl > dd .accCt h3 ~ h3 {
    margin-top: 3.62319vw;
  }
  .p_top .clinic .clinic_main .row > dl > dd .accCt dl {
    border-left: 1px solid #4E87B2;
    border-right: 1px solid #4E87B2;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    border-top: 1px solid #C2C2C2;
    min-height: 13.28502vw;
    background-color: #fff;
  }
  .p_top .clinic .clinic_main .row > dl > dd .accCt dl.las {
    border-bottom: 1px solid #4E87B2;
  }
  .p_top .clinic .clinic_main .row > dl > dd .accCt dl dt {
    border-right: 1px solid #C2C2C2;
    width: 22.94686vw;
    background-color: #E6ECEC;
    font-size: 3.38164vw;
    font-weight: bold;
    color: #4E87B2;
    letter-spacing: 0.08em;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
  .p_top .clinic .clinic_main .row > dl > dd .accCt dl dd {
    width: 100%;
    padding: 2.41546vw 4.4686vw;
    font-size: 2.89855vw;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .p_top .contact {
    padding: 11.47343vw 0;
    font-size: 2.89855vw;
  }
  .p_top .contact .formLead h3 {
    text-align: center;
    margin-bottom: 8.45411vw;
  }
  .p_top .contact .formLead h3 img {
    display: inline-block;
    width: 75.12077vw;
  }
  .p_top .contact .formLead ul {
    font-size: 2.657vw;
    margin-bottom: 4.83092vw;
  }
  .p_top .contact .alignL {
    font-size: 2.657vw;
  }
  .p_top .contact table.formSheet {
    margin-top: 2.41546vw;
  }
  .p_top .contact table.formSheet {
    display: block;
    font-size: 2.657vw;
    background: #FFFFFF;
    -moz-box-shadow: 0vw 0vw 0.96618vw rgba(0, 0, 0, 0.15);
         box-shadow: 0vw 0vw 0.96618vw rgba(0, 0, 0, 0.15);
    padding: 6.03865vw 3.62319vw;
    margin-bottom: 3.62319vw;
  }
  .p_top .contact table.formSheet > tbody {
    display: block;
    font-size: 3.38164vw;
  }
  .p_top .contact table.formSheet > tbody > tr {
    display: block;
    font-size: 3.38164vw;
  }
  .p_top .contact table.formSheet > tbody > tr > th {
    font-size: 3.38164vw;
    display: block;
    font-weight: 400;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
       -moz-box-orient: horizontal;
       -moz-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    -webkit-box-pack: end;
       -moz-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
  .p_top .contact table.formSheet > tbody > tr > th .iconRequired {
    margin-right: 1.81159vw;
  }
  .p_top .contact table.formSheet > tbody > tr > td {
    font-size: 3.38164vw;
    display: block;
  }
  .p_top .contact table.subtbl {
    display: block;
    font-size: 3.38164vw;
  }
  .p_top .contact table.subtbl > tbody {
    display: block;
    font-size: 3.38164vw;
  }
  .p_top .contact table.subtbl > tbody > tr {
    display: block;
    font-size: 3.38164vw;
  }
  .p_top .contact table.subtbl > tbody > tr > th {
    font-size: 3.38164vw;
    font-weight: 400;
    display: block;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
       -moz-box-orient: horizontal;
       -moz-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    -webkit-box-pack: end;
       -moz-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
  .p_top .contact table.subtbl > tbody > tr > th .iconRequired {
    margin-right: 1.81159vw;
  }
  .p_top .contact table.subtbl > tbody > tr > td {
    font-size: 3.38164vw;
    display: block;
  }
  .p_top .contact .iconRequired {
    font-size: 3.38164vw;
    font-weight: 400;
    color: #fff;
    background-color: #B71414;
    display: inline-block;
    padding: 0 1.20773vw;
    -moz-border-radius: 0.48309vw;
         border-radius: 0.48309vw;
    margin-right: 1.81159vw;
  }
  .p_top .contact th {
    font-size: 4.34783vw;
    font-weight: bold;
    font-family: "Noto Sans JP", sans-serif;
    text-align: left;
    margin-bottom: 4.83092vw;
    padding-bottom: 4.83092vw;
    border-bottom: 1px solid #000;
  }
  .p_top .contact tr {
    margin-bottom: 10.86957vw;
  }
  .p_top .contact .radio-group label {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1.20773vw;
    cursor: pointer;
    margin-bottom: 1.44928vw;
    font-weight: bold;
  }
  .p_top .contact .radio-group label span {
    font-weight: 400;
    font-size: 2.89855vw;
  }
  .p_top .contact .radio-group input[type="radio"] {
    -moz-appearance: none;
         appearance: none;
    -webkit-appearance: none;
    width: 4.34783vw;
    height: 4.34783vw;
    border: 2px solid #000;
    -moz-border-radius: 50%;
         border-radius: 50%;
    position: relative;
    cursor: pointer;
    -webkit-transition: 0.2s;
    -moz-transition: 0.2s;
    transition: 0.2s;
  }
  .p_top .contact .radio-group input[type="radio"]:checked {
    border-color: #000;
  }
  .p_top .contact .radio-group input[type="radio"]:checked::before {
    content: "";
    width: 2.657vw;
    height: 2.657vw;
    background: #000;
    -moz-border-radius: 50%;
         border-radius: 50%;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
       -moz-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
  .p_top .contact .radio-group input[type="checkbox"] {
    -moz-appearance: none;
         appearance: none;
    -webkit-appearance: none;
    width: 4.34783vw;
    height: 4.34783vw;
    border: 2px solid #000;
    -moz-border-radius: 0.60386vw;
         border-radius: 0.60386vw;
    position: relative;
    cursor: pointer;
    -webkit-transition: 0.2s;
    -moz-transition: 0.2s;
    transition: 0.2s;
  }
  .p_top .contact .radio-group input[type="checkbox"]:checked {
    border-color: #000;
  }
  .p_top .contact .radio-group input[type="checkbox"]:checked::before {
    content: "";
    width: 2.657vw;
    height: 2.657vw;
    background: #000;
    -moz-border-radius: 0.60386vw;
         border-radius: 0.60386vw;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
       -moz-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
  .p_top .contact input[type="text"], .p_top .contact input[type="tel"], .p_top .contact input[type="email"] {
    border: 0;
    width: 100%;
    height: 10.86957vw;
    padding: 0 3.62319vw;
    outline: none;
    font-size: 2.89855vw;
    -moz-border-radius: 0vw;
         border-radius: 0vw;
    color: #000;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    margin: 1.20773vw 0;
    background-color: #F5F5F5;
    font-size: -webkit-calc(max(2.89855vw, 16px));
    font-size: -moz-calc(max(2.89855vw, 16px));
    font-size: calc(max(2.89855vw, 16px));
  }
  .p_top .contact input[type="text"]::-webkit-input-placeholder, .p_top .contact input[type="tel"]::-webkit-input-placeholder, .p_top .contact input[type="email"]::-webkit-input-placeholder {
    color: #C7C7C7;
    opacity: 1;
  }
  .p_top .contact input[type="text"]::-moz-placeholder, .p_top .contact input[type="tel"]::-moz-placeholder, .p_top .contact input[type="email"]::-moz-placeholder {
    color: #C7C7C7;
    opacity: 1;
  }
  .p_top .contact input[type="text"]:-ms-input-placeholder, .p_top .contact input[type="tel"]:-ms-input-placeholder, .p_top .contact input[type="email"]:-ms-input-placeholder {
    color: #C7C7C7;
    opacity: 1;
  }
  .p_top .contact input[type="text"]::placeholder, .p_top .contact input[type="tel"]::placeholder, .p_top .contact input[type="email"]::placeholder {
    color: #C7C7C7;
    opacity: 1;
  }
  .p_top .contact textarea {
    border: 0;
    width: 100%;
    height: 41.66667vw !important;
    padding: 1.81159vw 3.62319vw;
    outline: none;
    font-size: 2.89855vw;
    background-color: #F5F5F5;
    color: #000;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    margin: 1.20773vw 0;
    font-size: -webkit-calc(max(2.89855vw, 16px));
    font-size: -moz-calc(max(2.89855vw, 16px));
    font-size: calc(max(2.89855vw, 16px));
  }
  .p_top .contact textarea::-webkit-input-placeholder {
    color: #C7C7C7;
    opacity: 1;
  }
  .p_top .contact textarea::-moz-placeholder {
    color: #C7C7C7;
    opacity: 1;
  }
  .p_top .contact textarea:-ms-input-placeholder {
    color: #C7C7C7;
    opacity: 1;
  }
  .p_top .contact textarea::placeholder {
    color: #C7C7C7;
    opacity: 1;
  }
  .p_top .contact input[type="tel"] {
    width: 18.11594vw;
  }
  .p_top .contact .ctHead {
    font-weight: bold;
  }
  .p_top .contact .ctHead ~ .ctHead {
    margin-top: 7.24638vw;
  }
  .p_top .contact .fPink {
    display: block;
    margin: 4.83092vw 0 -2.41546vw;
  }
  .p_top .contact select {
    border: 0;
    width: 100%;
    height: 10.86957vw;
    padding: 0 2.41546vw;
    outline: none;
    font-size: 2.657vw;
    -moz-border-radius: 0vw;
         border-radius: 0vw;
    color: #000;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    margin: 1.20773vw 0;
    background: #F5F5F5 url(../img/ar2.webp) center right 2.41546vw no-repeat;
    -moz-background-size: 2.89855vw 1.81159vw;
         background-size: 2.89855vw 1.81159vw;
    font-size: -webkit-calc(max(2.89855vw, 16px));
    font-size: -moz-calc(max(2.89855vw, 16px));
    font-size: calc(max(2.89855vw, 16px));
  }
  .p_top .contact select::-webkit-input-placeholder {
    color: #C7C7C7;
    opacity: 1;
  }
  .p_top .contact select::-moz-placeholder {
    color: #C7C7C7;
    opacity: 1;
  }
  .p_top .contact select:-ms-input-placeholder {
    color: #C7C7C7;
    opacity: 1;
  }
  .p_top .contact select::placeholder {
    color: #C7C7C7;
    opacity: 1;
  }
  .p_top .contact select.full {
    width: 100%;
  }
  .p_top .contact .cal_wrapper {
    padding-bottom: 2.41546vw;
    margin-right: 2.41546vw;
  }
  .p_top .contact .cal_wrapper table.cal {
    line-height: 1;
    font-size: 2.89855vw;
    width: 100%;
  }
  .p_top .contact .cal_wrapper table.cal th, .p_top .contact .cal_wrapper table.cal td {
    font-size: 2.89855vw;
  }
  .p_top .contact .cal_wrapper table.cal td {
    padding: 0.60386vw 0.84541vw;
    text-align: center;
    border-top: solid 1px #ccc;
    background-color: #FFF;
  }
  .p_top .contact .cal_wrapper table.cal .Sat {
    color: #00a5e4;
  }
  .p_top .contact .cal_wrapper table.cal .backward {
    color: #ccc;
  }
  .p_top .contact .cal_wrapper table.cal .Sun {
    color: #fa64a4;
  }
  .p_top .contact .cal_wrapper table.cal .Holyday {
    color: #fa64a4;
    font-weight: bold;
  }
  .p_top .contact .cal_wrapper table.cal .Today {
    background-color: #FFFF73;
    font-weight: bold;
  }
  .p_top .contact .cal_wrapper table.cal th {
    background-color: #fa64a4;
    color: #FFF;
    text-align: center;
    font-weight: normal;
    padding: 0.84541vw;
  }
  .p_top .contact .cal_wrapper table.cal th p {
    margin: 0;
  }
  .p_top .contact .fColorPink {
    color: #000;
    text-align: center;
  }
  .p_top .contact .alignC {
    text-align: center;
  }
  .p_top .contact .formSubmitBtn {
    background: url(../img/f_btn.webp) center/100% 100% no-repeat;
    width: 78.26087vw;
    height: 14.00966vw;
    padding: 0;
    outline: none;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    border: 0;
    cursor: pointer;
    -moz-border-radius: 0;
         border-radius: 0;
    text-indent: -1207.6087vw;
    margin: 3.62319vw 0;
  }
  .p_top .contact .formSubmitBtn:hover {
    opacity: 0.7;
  }
  .p_top .contact .btnXLPnkDeep {
    color: #FFF;
    background-color: #fa64a4;
    font-size: 2.17391vw;
    padding: 1.44928vw 7.24638vw 1.3285vw;
    -moz-border-radius: 0.36232vw;
         border-radius: 0.36232vw;
    text-shadow: 0vw -0.12077vw #EB87B1;
  }
  .p_top .contact .birth-selects select {
  width: auto;
  min-width: 100px;
}
    .p_top .sec01 .s_vd.st2 video {
  width: 100%;
  height: 43vw;     /* ← 好きな高さに変更 */
  object-fit: cover; /* はみ出しをトリミング */
}
}


/* 生年月日（年・月・日）横並び用 */
.p_top .contact .birth-selects {
  display: flex;
  gap: 9.2px;
  flex-wrap: wrap;
}



.formEx a {
  color: rgba(110, 168, 255, 0.991);
  font-style: normal;
}