 /*---▼ファーストビュー▼---*/
 
 .fv_inner {
     position: relative;
 }
 
 .fv_inner .bk_img {
     position: absolute;
     top: 0;
 }
 
 .main_fv {
     max-width: calc(1315px + 3rem);
     margin: 0 auto;
     /*padding-top: 12.62rem;
     display: flex;
     justify-content: space-between;*/
     position: absolute;
    top: 30%;
    left: 50%;
    /*transform: translate(-50%, -50%);*/
 }
 
 .fv_inner .txt_sec {
     position: relative;
 }
 
 .fv_inner .txt_sec h1 {
     color: #fff;
     font-size: 2.8125rem;
     font-style: normal;
     font-weight: 700;
     line-height: 150%;
     letter-spacing: 0.14063rem;
 }
 
 .fv_inner .txt_sec h2 {
     color: #fff;
     font-size: 3rem;
     line-height: 2;
     font-style: normal;
     font-weight: 700;
     margin: 0 auto;
 }
 
 .fv_inner .txt_sec p {
     color: #fff;
     font-size: 2.75rem;
     font-style: normal;
     font-weight: 400;
 }
.fv_inner .txt_sec p span {font-size: 1.75rem;}



 .fv_inner .txt_sec .fv_concept {
     display: flex;
     color: #fff;
     align-items: center;
     font-size: 2rem;
     font-weight: 700;
     line-height: 150%;
     margin-top: 1.12rem;
 }
 
 .fv_inner .txt_sec .fv_concept .pink_box {
     padding: 0.5625rem 1.0625rem;
     border-radius: 0.625rem;
     text-align: center;
     background: #FF2C73;
 }
 
 .fv_inner .txt_sec .fv_concept .green_box {
     padding: 0.5625rem 1.0625rem;
     border-radius: 0.625rem;
     text-align: center;
     background: #1AB8A3;
     ;
 }
 
 .fv_inner .txt_sec .fv_concept p {
     position: relative;
     display: inline-block;
     width: 3.12319rem;
     height: 0.42588rem;
     background: #fff;
     transform: rotate(45deg);
     vertical-align: middle;
 }
 
 .fv_inner .txt_sec .fv_concept p::before {
     content: "";
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
     background: #fff;
     transform: rotate(90deg);
 }
 
 .fv_inner .img_sec {
     position: relative;
     top: -5.62rem;
     right: 0;
 }
 
 .fv_inner .img_sec img {
     width: 40.67294rem;
     height: 27.5625rem;
     flex-shrink: 0;
 }
 
 @media screen and (max-width: 1024px) {
     .fv_inner .img_sec {
         display: none;
     }
     .main_fv {
         max-width: 90%;
         padding-top: 2.62rem;
         display: flex;
         justify-content: end;
     }
     .fv_inner .txt_sec h2 {
         display: block;
         text-align: center;
     }
     .fv_inner .txt_sec .fv_concept {
         justify-content: center;
     }
     .fv_inner .bk_img {
         position: relative;
         top: 0;
         width: 125%;
     }
     fv_inner .txt_sec h1 {
         font-size: 1.5rem;
         letter-spacing: 0.1rem;
         display: block!important;
         text-align: center!important;
     }
 }
 
 @media screen and (max-width: 768px) {
     .main_fv {
         max-width: 100%;
         flex-direction: column;
         padding: 0 0.5rem;
        top: 80% !important;
        left: 15%;
        padding-top: 0rem;
         text-align: center;
     }
     .fv_inner .bk_img {
         position: absolute!important;
         top: 0!important;
         object-fit: cover!important;
         height: 400px!important;
         width: 100%!important;
         object-position: 15%!important;
     }
     .fv_inner .txt_sec h1 {
         font-size: 1.5rem;
         letter-spacing: 0.1rem;
         display: block;
         text-align: center;
     }
     .fv_inner .txt_sec h2 {
         font-size: 1.3rem;
     }
     .fv_inner .img_sec img {
         display: none;
     }
     .fv_inner .txt_sec .fv_concept {
         gap: 0.5rem;
         justify-content: center;
         font-size: 1.1rem;
     }
     .fv_inner .txt_sec .fv_concept p {
         width: 2.12319rem;
         height: 0.22588rem;
     }
     
     .fv_inner .txt_sec p {
         font-size: 2rem;
     }
     
     
     
     
 }
 /*---▼キャンペーンバナー▼---*/
 
 .campaign_banner_top .campaign_banner {
     display: flex;
     gap: 1.87rem;
     position: relative;
     margin-top: -2rem;
 }
 
 .campaign_banner_top .campaign_banner>div {
     flex: 1;
     background: #FFF;
     box-shadow: 3px 2px 15px 0px rgba(0, 0, 0, 0.20);
     text-align: center;
 }
 
 .campaign_banner_top .campaign_banner>div h2 {
     color: #FFF;
     font-size: 2rem;
     font-weight: 700;
     line-height: 120%;
     text-transform: uppercase;
     padding: 1rem 0 1.19rem 0;
     display: block;
     text-align: center;
 }
 
 .campaign_banner_top .campaign_banner>div .content {
     display: flex;
     align-items: center;
     gap: 1.81rem;
     justify-content: center;
     padding: 0.88rem 0 1.56rem 0;
 }
 
 .campaign_banner_top .campaign_banner>div p {
     color: #222222;
     font-size: 2rem;
     font-weight: 700;
     line-height: 120%;
 }
 
 .campaign_banner_top .campaign_banner>div p span {
     font-size: 1.5rem;
     font-weight: 700;
     line-height: 120%;
 }
 
 .campaign_banner_top .campaign_banner>div p span.mark {
     font-family: "Barlow Semi Condensed";
     font-size: 2rem;
     font-weight: 700;
     line-height: 120%;
 }
 
 .campaign_banner_top .campaign_banner>div p span.line {
     position: relative;
     font-family: "Barlow Semi Condensed";
     font-size: 3rem;
     font-weight: 700;
     line-height: 120%;
 }
 
 .campaign_banner_top .campaign_banner>div p span.line::before {
     position: absolute;
     content: "";
     display: block;
     transform: rotate(350deg);
     background-color: #D60000;
     width: 100%;
     height: 2px;
     top: 50%;
     left: 0;
 }
 
 .campaign_banner_top .campaign_banner>div .content .triangle {
     width: 0;
     height: 0;
     border-style: solid;
     border-top: 1.03125rem solid transparent;
     border-bottom: 1.03125rem solid transparent;
     border-left: 1.03125rem solid #000000;
     border-right: 0;
 }
 
 .campaign_banner_top .campaign_banner>div .content .free {
     color: #D60000;
     font-size: 4.6875rem;
     font-weight: 700;
     line-height: 120%;
     position: relative;
 }
 
 .campaign_banner_top .campaign_banner>div:first-child h2 {
     background: #D60000;
 }
 
 .campaign_banner_top .campaign_banner>div:last-child h2 {
     background: #DEA34F;
 }
 
 .campaign_banner_top .campaign_banner>div:last-child {
     position: relative;
 }
 
 .campaign_banner_top .campaign_banner>div:last-child img {
     position: absolute;
     width: 3.95313rem;
     height: 5.69956rem;
     top: 6rem;
     right: 1rem;
 }
 
 @media screen and (max-width: 1024px) {
     .campaign_banner_top .campaign_banner>div p,
     .campaign_banner_top .campaign_banner>div p span {
         font-size: 1.2rem;
     }
     .campaign_banner_top .campaign_banner>div p span.line {
         font-size: 2rem;
     }
     .campaign_banner_top .campaign_banner>div .content {
         align-items: center;
         gap: 0.5rem;
         justify-content: center;
     }
     /*.main_fv {
         max-width: 90%;
         padding-top: 0.62rem;
         display: flex;
         justify-content: end;
     }*/
 }
 
 @media screen and (max-width: 768px) {
     .campaign_banner_top .campaign_banner {
         flex-direction: column;
         margin-top: 4rem;
         gap: 1rem;
     }
     .campaign_banner_top .campaign_banner>div h2 {
         font-size: 1.5rem;
         padding: 0.5rem 0 0.7rem 0;
     }
     .campaign_banner_top .campaign_banner>div .content {
         gap: 0.8rem;
     }
     .campaign_banner_top .campaign_banner>div p span {
         font-size: 0.8rem;
     }
     .campaign_banner_top .campaign_banner>div p span.mark {
         font-size: 1rem;
     }
     .campaign_banner_top .campaign_banner>div p span.line {
         font-size: 2rem;
     }
     .campaign_banner_top .campaign_banner>div .content .free {
         font-size: 2.6875rem;
     }
     .campaign_banner_top .campaign_banner>div .content .triangle {
         border-top: 0.7rem solid transparent;
         border-bottom: 0.7rem solid transparent;
         border-left: 0.7rem solid #000000;
     }
     .campaign_banner_top .campaign_banner>div p {
         font-size: 1.2rem;
     }
     .campaign_banner_top .campaign_banner>div:last-child img {
         width: 2.95313rem;
         height: 4.69956rem;
         top: 3.8rem;
         right: 0.5rem;
     }
 }
 /*---▼コンセプト▼---*/
 
 .concept_sec {
     position: relative;
     padding-top: 4.81rem;
     margin-top: 5.88rem;
     padding-bottom: 6rem;
 }
 
 .concept_sec img.bk {
     position: absolute;
     top: 0;
     right: 0;
     width: 40.5625rem;
     height: 12.25rem;
     flex-shrink: 0;
 }
 
 .concept_sec .flex_sec {
     display: flex;
     gap: 0.5rem;
     margin-top: 6.81rem;
     margin-bottom: 5.18rem;
 }
 
 .concept_sec .flex_sec .img_sec {
     margin-right: calc(50% - 50vw);
     object-fit: cover;
     object-position: center;
     max-width: 47vw;
 }
 
 .concept_sec p.sub {
     font-size: 1.8rem;
 }
 
 .concept_sec h3 {
     font-size: 2.8125rem;
     font-weight: 400;
     line-height: 150%;
 }
 
 .concept_sec h3 span {
     color: #D60000;
     font-size: 2.8125rem;
     font-weight: 700;
     display: block;
 }
 
 .concept_sec h4 {
     color: #222222;
     text-align: center;
     font-size: 1.5rem;
     font-weight: 700;
     line-height: 170%;
     margin-top: 4.38rem;
     display: inline-block;
 }
 
 .concept_sec .recommendation_gym h2 {
     color: #222222;
     font-family: "Noto Sans JP";
     font-size: 2rem;
     font-weight: 400;
     line-height: 200%;
     text-align: center;
     display: block;
 }
 
 .concept_sec .recommendation_gym h2 span {
     font-size: 3rem;
     font-weight: 700;
     line-height: 150%;
     text-align: center;
     background: -webkit-linear-gradient(transparent 70%, #FFD900 0%);
     background: linear-gradient(transparent 70%, #FFD900 0%);
 }
 
 .concept_sec .recommendation_gym .flex_sec {
     margin-top: 3.18rem;
     gap: 1.5rem;
 }
 
 .concept_sec .recommendation_gym .flex_sec h3 {
     background: #DEA34F;
     width: 12.62063rem;
     color: #FFF;
     text-align: center;
     font-size: 1.5625rem;
     font-weight: 500;
     line-height: 200%;
     display: block;
     margin: auto;
     position: relative;
 }
 
 .concept_sec .recommendation_gym .flex_sec>div img {
     border-radius: 1.875rem;
     margin-top: -1rem;
 }
 
 .concept_sec .recommendation_gym .flex_sec>div p {
     color: #222222;
     text-align: center;
     font-size: 1.25rem;
     font-weight: 500;
     line-height: 200%;
     margin-top: 0.5rem;
 }
 
 .concept_sec .point_sec .point_bk {
     position: relative;
     border-radius: 1.875rem;
     background: #FFF;
     padding: 2.88rem 0;
     text-align: center;
     margin-bottom: 3rem;
 }
 
 .concept_sec .point_sec img {
     width: 10.65625rem;
     height: 6.15625rem;
     aspect-ratio: 170.50/98.50;
     position: absolute;
     top: -1rem;
     left: -2rem;
 }
 
 .concept_sec .point_sec ul {
     text-align: center;
     display: inline-block;
 }
 
 .concept_sec .point_sec ul li {
     display: flex;
     gap: 1.5rem;
     margin-bottom: 0.5rem;
     align-items: center;
     justify-content: left;
 }
 
 .concept_sec .point_sec ul li:last-child {
     margin-bottom: 0;
 }
 
 .concept_sec .point_sec ul li h2 {
     color: #222222;
     font-family: "Noto Sans JP";
     font-size: 1.5rem;
     font-weight: 400;
     line-height: 170%;
     display: block;
 }
 
 .concept_sec .point_sec ul li h2 span {
     font-size: 2rem;
     font-weight: 700;
     line-height: 170%;
     background: -webkit-linear-gradient(transparent 70%, #FFD900 0%);
     background: linear-gradient(transparent 70%, #FFD900 0%);
 }
 
 .concept_sec .point_sec .dli-check-circle {
     display: inline-block;
     vertical-align: middle;
     color: #fff;
     line-height: 1;
     position: relative;
     width: 2.125rem;
     height: 2.125rem;
     background: #D60000;
     border-radius: 50%;
     box-sizing: content-box;
 }
 
 .concept_sec .point_sec .dli-check-circle>span {
     width: 1.15106rem;
     height: 0.70831rem;
     border: 4.435px solid currentColor;
     border-top: 0;
     border-right: 0;
     box-sizing: border-box;
     transform: translateY(-25%) rotate(-45deg);
     position: absolute;
     top: 0;
     left: 0;
     right: 0;
     bottom: 0;
     margin: auto;
 }
 
 .concept_sec .point_sec p {
     font-size: 1.5rem;
     font-weight: 400;
     line-height: 170%;
     text-align: center;
 }
 
 .concept_sec .point_sec h3 {
     display: flex;
     gap: 1.06rem;
     color: #222222;
     text-align: center;
     font-size: 2.25rem;
     font-weight: 700;
     line-height: 170%;
     justify-content: center;
     padding: 0 2.5rem;
     margin: 0.94rem 0;
 }
 
 .concept_sec .point_sec h3 span {
     border: 1px solid #D60000;
     padding: 0.875rem 1.125rem;
     background: #FFF;
     background: #fff;
     justify-content: center;
     flex: 1;
 }
 
 @media screen and (max-width: 768px) {
     .concept_sec {
         position: relative;
         padding-top: 6rem;
         margin-top: 4rem;
         padding-bottom: 4rem;
         margin-bottom: 3rem;
     }
     .concept_sec img.bk {
         width: 17.5625rem;
         height: auto;
     }
     .concept_sec .flex_sec {
         flex-direction: column;
         margin-top: 3.81rem;
     }
     .concept_sec h3 span {
         font-size: 1.8rem;
         line-height: 200%;
     }
     .concept_sec p.sub {
         font-size: 1.2rem;
         margin-bottom: -0.5rem;
         text-align: center;
     }
     .concept_sec h3 {
         font-size: 1.5rem;
         text-align: center;
     }
     .concept_sec h4 {
         font-size: 1.2rem;
         margin: 0;
         width: 100%;
     }
     .concept_sec .flex_sec .img_sec {
         max-width: max-content;
         margin: 1.5rem 0;
     }
     .concept_sec .recommendation_gym .flex_sec {
         margin-top: 1.18rem;
     }
     .concept_sec .recommendation_gym h2 {
         font-size: 1rem;
     }
     .concept_sec .recommendation_gym h2 span {
         font-size: 1.5rem;
     }
     .concept_sec .recommendation_gym .flex_sec {
         gap: 0.8rem;
         flex-direction: inherit;
         flex-flow: wrap;
         justify-content: center;
     }
     .concept_sec .recommendation_gym .flex_sec>div {
         width: calc(100% / 2 - 0.8rem);
     }
     .concept_sec .recommendation_gym .flex_sec h3 {
         width: 7.62063rem;
         font-size: 1rem;
     }
     .concept_sec .recommendation_gym .flex_sec>div img {
         border-radius: 1rem;
         margin-top: -0.8rem;
     }
     .concept_sec .recommendation_gym .flex_sec>div p {
         font-size: 1rem;
     }
     .concept_sec .point_sec img {
         width: 27%;
         height: auto;
         aspect-ratio: auto;
         position: absolute;
         top: -1rem;
         left: -0.8rem;
     }
     .concept_sec .point_sec .point_bk {
         padding: 1.88rem 1.5rem;
     }
     .concept_sec .point_sec ul li {
         display: flex;
         gap: 0.5rem;
     }
     .concept_sec .point_sec .dli-check-circle {
         width: 1.5rem;
         height: 1.5rem;
     }
     .concept_sec .point_sec ul li h2 {
         width: calc(100% - 1.5rem);
         font-size: 1rem;
         text-align: justify;
         line-height: 150%;
     }
     .concept_sec .point_sec ul li h2 span {
         font-size: 1.3rem;
         line-height: 150%;
     }
     .concept_sec .point_sec p {
         font-size: 1.2rem;
     }
     .concept_sec .point_sec h3 span {
         font-size: 1.3rem;
     }
     .concept_sec .point_sec h3 {
         display: flex;
         flex-direction: column;
     }
 }
 /*横無限ループ*/
 
 @keyframes infinity-scroll-left {
     from {
         transform: translateX(0);
     }
     to {
         transform: translateX(-100%);
     }
 }
 
 .scroll-infinity__wrap {
     display: flex;
     overflow: hidden;
     gap: 40px;
     margin-top: 6.25rem;
 }
 
 .scroll-infinity__list {
     display: flex;
     list-style: none;
     padding: 0
 }
 
 .scroll-infinity__list--left {
     animation: infinity-scroll-left 30s infinite linear 0.5s both;
 }
 
 .scroll-infinity__item {
     width: 100%;
 }
 
 .scroll-infinity__item>img {
     width: 101.375rem;
     height: 4.71875rem;
     aspect-ratio: 1622.00/75.50;
 }
 
 @media screen and (max-width: 1024px) {
     .concept_sec img.bk {
         width: 50%;
         height: auto;
     }
     .concept_sec .flex_sec {
         text-align: center;
         display: block;
     }
     .concept_sec .recommendation_gym .flex_sec {
         display: flex;
         justify-content: center;
         gap: 2rem 1rem;
         margin-top: 6.81rem;
         margin-bottom: 5.18rem;
         flex-flow: wrap;
     }
     .concept_sec .recommendation_gym .flex_sec>div {
         width: calc(100% / 2 - 1.5rem);
     }
     .concept_sec .flex_sec .img_sec {
         margin-right: auto;
         object-fit: cover;
         object-position: center;
         max-width: 100%;
     }
 }
 
 @media screen and (max-width: 768px) {
     .scroll-infinity__wrap {
         margin-top: 3.25rem;
         gap: 20px;
     }
     .scroll-infinity__item>img {
         width: 60.375rem;
         height: auto;
         aspect-ratio: auto;
     }
     .scroll-infinity__list--left {
         animation: infinity-scroll-left 20s infinite linear 0.5s both;
     }
 }
 /*---▼ポイント▼---*/
 
 .point {
     padding-top: 9rem;
     margin-bottom: 9rem;
     padding-bottom: 4rem;
 }
 
 .point .fast_point {
     gap: 1.25rem;
     display: flex;
     justify-content: center;
     margin-bottom: 3.38rem;
 }
 
 .point .fast_point>div {
     width: 14.375rem;
 }
 
 .point .fast_point>div .fast_point_content {
     border-radius: 0.9375rem;
     border: 1px solid #D60000;
     padding: 0.75rem;
     height: 11.3125rem;
     text-align: center;
     display: flex;
     flex-direction: column;
 }
 
 .point .fast_point>div .fast_point_content strong {
     color: #D60000;
     text-align: center;
     font-size: 1.5625rem;
     font-weight: 500;
     line-height: 100%;
     margin-top: 0.5rem;
 }
 
 .point .fast_point>div .fast_point_content img {
     height: 6.58031rem;
     width: auto;
     display: block;
     margin: auto;
 }
 
 .point .fast_point>div p {
     text-align: center;
     font-family: "Noto Sans JP";
     font-size: 1.25rem;
     font-weight: 500;
     line-height: 120%;
     padding-top: 1rem;
 }
 
 .point p.text {
     line-height: 170%;
     margin-top: 2.5rem;
 }
 
 .point .point_main_sec .content_sec {
     position: relative;
     margin-top: 6rem;
     padding: 0 5rem;
     top: 2.5rem;
 }
 
 .point .point_main_sec.first .content_sec {
     margin-top: 4rem;
 }
 
 .point .point_main_sec .content_sec.reverse {
     justify-content: end;
     display: flex;
 }
 
 .point .point_main_sec .content_sec .text_sec {
     position: absolute;
     right: 5rem;
     top: 3rem;
     width: 39.3125rem;
 }
 
 .point .point_main_sec .content_sec.reverse .text_sec {
     left: 5rem;
 }
 
 .point .point_main_sec .content_sec img {
     border-radius: 0.9375rem;
     width: 28.5rem;
     height: 23.875rem;
     flex-shrink: 0;
 }
 
 .point .point_main_sec .content_sec.reverse img {
     position: relative;
     right: 0;
 }
 
 .point .point_main_sec .content_sec .text_sec strong {
     color: #D60000;
     font-family: "Barlow Semi Condensed";
     font-size: 5.625rem;
     font-weight: 700;
     line-height: 1;
     margin-left: 6rem;
     display: flex;
     gap: 1rem;
     align-items: end;
     margin-bottom: 1rem;
 }
 
 .point .point_main_sec .content_sec .text_sec strong span {
     font-size: 2rem;
     font-weight: 600;
 }
 
 .point .point_main_sec .content_sec.reverse .text_sec strong {
     margin-right: 6rem;
     justify-content: right;
 }
 
 .point .point_main_sec .content_sec .text_sec .text_area {
     border-radius: 0.9375rem;
     background: #FFF;
     box-shadow: 5px 5px 20px 0px rgba(0, 0, 0, 0.25);
     padding: 2.13rem 1.56rem;
 }
 
 .point .point_main_sec .content_sec .text_sec .text_area h2 {
     font-family: "Noto Sans JP";
     font-size: 2rem;
     font-weight: 400;
     line-height: 150%;
     margin-bottom: 1.06rem;
     display: block;
     color: #222222;
 }
 
 .point .point_main_sec .content_sec .text_sec .text_area h2 span {
     color: #DEA34F;
     font-weight: 700;
     font-size: 2rem;
     line-height: 150%;
 }
 
 @media screen and (max-width: 1024px) {
     .point {
         padding-top: 0rem;
         margin-bottom: 6rem;
         padding-bottom: 2.5rem;
         margin-top: -3rem;
     }
     .point .fast_point {
         flex-flow: wrap;
     }
     .point .fast_point>div {
         width: calc(100% / 2 - 1.25rem);
     }
     .point .fast_point>div .fast_point_content {
         height: 10.3125rem;
     }
     .point .fast_point>div .fast_point_content strong {
         font-size: 1.2rem;
     }
     .point .fast_point>div p {
         font-size: 1rem;
     }
     .point .fast_point>div .fast_point_content img {
         height: 5.58031rem;
     }
     .point .point_main_sec.first .content_sec {
         margin-top: 4rem;
         padding: 0;
     }
     .point .point_main_sec .content_sec img,
     .point .point_main_sec .content_sec.reverse img {
         border-radius: 0.9375rem;
         width: 90%;
         height: auto;
         margin: auto;
     }
     .point .point_main_sec .content_sec.reverse,
     .point .point_main_sec .content_sec {
         margin-top: 4rem;
         padding: 0;
     }
     .point .point_main_sec.first .content_sec {
         margin-top: 2rem;
         padding: 0;
     }
     .point .point_main_sec .content_sec .text_sec {
         position: relative;
         right: auto;
         top: 0;
         width: 100%;
         border-radius: 0.9375rem;
         background: #FFF;
         box-shadow: 5px 5px 20px 0px rgba(0, 0, 0, 0.25);
         padding: 1.5rem 1rem;
         margin-top: 2rem;
     }
     .point .point_main_sec .content_sec .text_sec strong {
         font-size: 4.625rem;
         margin-top: -4rem;
         margin-left: 0;
         display: flex;
         gap: 0.5rem;
         align-items: end;
         justify-content: end;
     }
     .point .point_main_sec .content_sec .text_sec .text_area h2 {
         font-size: 1.5rem;
     }
     .point .point_main_sec .content_sec .text_sec .text_area h2 span {
         font-size: 1.5rem;
     }
     .point .point_main_sec .content_sec .text_sec .text_area {
         border-radius: 0;
         background: #none;
         box-shadow: none;
         padding: 0;
     }
     .point .point_main_sec .content_sec.reverse {
         display: block;
     }
     .point .point_main_sec .content_sec.reverse .text_sec {
         left: 0;
     }
     .point .point_main_sec .content_sec.reverse .text_sec strong {
         margin-right: 0;
     }
 }
 /*---▼料金▼---*/
 /*price.cssのファイルを編集してください。*/
 /*---▼サービス▼---*/
 
 .service {
     padding: 9rem 0;
 }
 
 .service .service_concept {
     margin-top: 6.56rem;
     margin-bottom: 6.31rem;
 }
 
 .service .service_concept .flex_box {
     display: flex;
     gap: 1.75rem;
     justify-content: center;
     align-items: center;
     text-align: center;
 }
 
 .service .service_concept .flex_box h2 {
     display: block;
 }
 
 .service .service_concept .flex_box h2 span {
     font-family: "Noto Sans JP";
     font-size: 3.75rem;
     font-style: normal;
     font-weight: 700;
     line-height: 150%;
     margin-left: -1px;
     border: 1px solid #222222;
     padding: 0 1rem;
 }
 
 .service .service_concept .flex_box .pink_sec h2 span {
     color: #FF2C73;
 }
 
 .service .service_concept .flex_box .green_sec h2 span {
     color: #1AB8A3;
 }
 
 .service .service_concept .flex_box h3 {
     color: #000;
     font-size: 2.5rem;
     font-weight: 500;
     line-height: 150%;
     margin-top: 1.44rem;
 }
 
 .service .service_concept .flex_box .cross {
     padding: 0 4rem;
 }
 
 .service .service_concept .flex_box .cross span {
     position: relative;
     display: inline-block;
     width: 0.21388rem;
     height: 11.20613rem;
     background: #D60000;
     transform: rotate(45deg);
     vertical-align: middle;
 }
 
 .service .service_concept .flex_box .cross span::before {
     content: "";
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
     background: #D60000;
     transform: rotate(90deg);
 }
 
 .service .service_concept p {
     text-align: center;
     margin-top: 2.75rem;
 }
 
 .service .service_content>div {
     display: flex;
     gap: 4.75rem;
     align-items: center;
     margin-bottom: 4.36rem;
 }
 
 .service .service_content>div.reverse {
     flex-direction: row-reverse;
 }
 
 .service .service_content>div img {
     margin-left: calc(50% - 50vw);
     object-fit: cover;
     object-position: center;
     max-width: 50vw;
     height: 20.0625rem;
 }
 
 .service .service_content>div.reverse img {
     margin-right: calc(50% - 50vw);
     margin-left: auto;
 }
 
 .service .service_content>div .title {
     display: flex;
     gap: 0.94rem;
     border-bottom: 1px solid #D60000;
     padding-bottom: 1.75rem;
     margin-bottom: 2rem;
     align-items: center;
 }
 
 .service .service_content>div .title span {
     color: #565656;
     font-family: "Barlow Semi Condensed";
     font-size: 3.75rem;
     font-weight: 700;
     line-height: 100%;
     text-align: center;
 }
 
 .service .service_content>div .title span span {
     display: block;
     font-size: 1.5rem;
     font-weight: 600;
 }
 
 .service .service_content>div .title h3 {
     color: #000;
     font-size: 2rem;
     font-weight: 400;
     line-height: 100%;
     padding-top: 1.5rem;
 }
 
 .service .service_content>div .title h3 span {
     font-size: 1.5rem;
     color: #000;
     font-family: "Noto Sans JP";
     font-size: 1.5rem;
     font-style: normal;
     font-weight: 400;
     line-height: 100%;
 }
 
 .service .group {
     margin-bottom: 5.44rem;
 }
 
 @media screen and (max-width: 820px) {
     .service .service_concept .flex_box {
         display: block;
     }
 }
 
 @media screen and (max-width: 768px) {
     .service .service_concept .flex_box {
         flex-direction: column;
         gap: 0;
     }
     .service .service_concept .flex_box h2 span {
         font-size: 2.75rem;
     }
     .service .service_concept .flex_box h3 {
         font-size: 1.5rem;
         line-height: 150%;
         margin-top: 0;
     }
     .service .service_concept .flex_box .cross span {
         height: 4.20613rem;
     }
     .service .service_concept p {
         text-align: justify;
         margin-top: 2.75rem;
         line-height: 200%;
     }
     .service .service_concept {
         margin-top: 6.56rem;
         margin-bottom: 3.31rem;
     }
     .service .service_content>div img {
         margin-left: auto;
         object-fit: cover;
         object-position: center;
         max-width: 100%;
         height: auto;
     }
     .service .service_content>div,
     .service .service_content>div.reverse {
         flex-direction: column;
         gap: 1.75rem;
         margin-bottom: 4.36rem;
     }
     .service .service_content>div .title span {
         font-size: 2.75rem;
     }
     .service .service_content>div .title span span {
         font-size: 1rem;
     }
     .service .service_content>div .title h3 {
         font-size: 1.5rem;
     }
     .service .service_content>div .title {
         padding-bottom: 1rem;
         margin-bottom: 1rem;
         gap: 0.5rem;
     }
     .service .service_content>div.reverse img {
         margin-right: auto;
     }
     .service .service_content>div .title h3 span {
         font-size: 1rem;
     }
 }


 /*------------------------　プレ　------------------------*/

#pre {
    max-width: calc(1188px + 3rem);
    margin: 0 auto;
    padding: 5em 1.5rem;
}
#pre .message {margin: 0 auto 3em;}
#pre .message p {
    line-height: 2;
    margin: 0 auto 0.8em;
}
#pre .pre-box {
    display: flex;
    align-items: center;
    margin: 0 auto 3em;
    padding-bottom: 3em;
    border-bottom: 1px solid #000;
}
#pre .pre-txt {
    width: 100%;
    flex: 2;
    padding-right: 3em;
}
#pre .pre-txt h2 {
    display: block;
    font-size: 1.5rem;
    margin: 0 auto 0.8em;
}
#pre .pre-txt p {
    line-height: 2;
    margin: 0 auto 0.8em;
}

#pre .pre-txt ul {
    list-style: disc;
    margin-left: 2em;
    margin-bottom: 3em;
}
#pre .pre-txt ul li {
    line-height: 2;
}



#pre .pre-img {
    width: 100%;
    flex: 1;
}



#pre .pre-img img {width: 100%;}












 /*---▼アクセス▼---*/
 
 .access {
     position: relative;
     padding-top: 9rem;
     margin-top: -6rem;
 }
 
 .access .wrap {

 }
 
 .access img.bk {
     position: absolute;
     top: 0;
     right: 0;
     width: 40.5625rem;
     height: 12.25rem;
     flex-shrink: 0;
 }
 
 .access .flex_sec {
     display: flex;
     gap: 2.81rem;
     margin-top: 5rem;
 }
 
 .access .flex_sec h3 {
     font-family: "Barlow Semi Condensed";
     font-size: 1.875rem;
     font-weight: 500;
     line-height: 150%;
     padding-bottom: 0.78rem;
     margin-bottom: 1.78rem;
 }
 
 .access .flex_sec iframe,
 .access .flex_sec .text_sec {
     flex: 1;
 }
 
 .access .access_table {
     border-collapse: collapse;
     width: 100%;
     max-width: 700px;
 }

 .access_table td {
     line-height: 1.8;
     padding-left: 1.25em;
 }
 
 .access .access_table tr {
     border-bottom: 1.37rem solid #fff;
 }
 
 .access .access_table th {
     background: #3b3b3b;
     text-align: center;
     padding: 0.625rem 1rem;
     color: #fff;
     font-size: 0.85rem;
     font-weight: 500;
 }
 





 @media screen and (max-width: 820px) {
     .access .flex_sec {
         flex-direction: column;
     }
 }
 
 @media screen and (max-width: 768px) {
     .access {
         padding-top: 3rem;
         padding-bottom: 0
     }
     .access img.bk {
         width: 17.5625rem;
         height: auto;
     }
     .access .flex_sec {
         flex-direction: column;
         margin-top: 0;
     }
     .access .flex_sec .text_sec {
         order: 0;
     }
     .access .flex_sec iframe {
         order: 1
     }
     .access .flex_sec h3 {
         font-size: 1.5rem;
         padding-bottom: 0;
     }
     .access .access_table th {
         padding: 0.5rem;
         font-size: 1rem;
         width: 23%;
     }
     .access .flex_sec iframe {
         order: 1;
         height: 300px;
         flex: auto;
     }
     .access .wrap {
         padding-bottom: 6rem;
     }
 }
 /*---▼新着情報▼---*/
 
 .news_sec {
     padding-top: 9rem;
 }
 
 .news_sec .wrap {
     border-bottom: 1px solid #222222;
     padding-bottom: 9rem;
 }
 
 .news_sec .news_content ul {
     margin-top: 5rem;
 }
 
 .news_sec .news_content ul li a {
     display: flex;
     gap: 1.13rem;
     padding: 0 2rem;
     padding-bottom: 0.75rem;
     border-bottom: 1px solid #222222;
     margin-bottom: 1.19rem;
 }
 
 .news_sec .news_content ul li span.category {
     width: 5.25rem;
     text-align: center;
     color: #FFF;
     font-size: 0.875rem;
     font-weight: 600;
     line-height: 100%;
     display: flex;
     align-items: center;
     justify-content: center;
 }
 
 .news_sec .news_content ul li span.category.blog {
     background: #DEA34F;
 }
 
 .news_sec .news_content ul li span.category.news {
     background: #D60000;
 }
 
 .news_sec .news_content ul li span.data {
     color: #000;
     font-family: "Barlow Semi Condensed";
     font-size: 1.125rem;
     font-weight: 500;
     line-height: 100%;
     display: flex;
     align-items: center;
 }
 
 .news_sec .news_content ul li h3 {
     font-size: 1rem;
     font-style: normal;
     font-weight: 400;
 }
 
 .news_sec .news_content .btn_flex {
     display: flex;
     gap: 2.5rem;
     justify-content: center;
     margin-top: 2.5rem;
 }
 
 .news_sec .news_content .btn_flex a {
     width: 12.25rem;
     padding: 0.5rem 0;
     text-align: center;
     color: #FFF;
     font-family: "Noto Sans JP";
     font-weight: 700;
     line-height: 2rem;
     letter-spacing: 0.2rem;
 }
 
 .news_sec .news_content .btn_flex a.news_btn {
     background: #D60000;
 }
 
 .news_sec .news_content .btn_flex a.blog_btn {
     background: #DEA34F;
 }
 
 @media screen and (max-width: 768px) {
     .news_sec {
         padding-top: 0;
     }
     .news_sec .news_content ul li a {
         flex-flow: wrap;
         padding: 1rem 0;
         gap: 0.5rem 1rem;
     }
     .news_sec .news_content ul li span.category {
         padding: 0.5rem 0;
     }
     .news_sec .news_content .btn_flex {
         gap: 1rem;
     }
     .news_sec .news_content .btn_flex a {
         width: auto;
         flex: 1;
     }
     .news_sec .wrap {
         padding-bottom: 6rem;
     }
 }
 /*---▼代表挨拶▼---*/
 
 .greeting {
     padding: 9rem 0;
 }
 
 .greeting .flex_sec {
     display: flex;
     gap: 2.75rem;
     margin-top: 5rem;
 }
 
 .greeting .flex_sec img {
     width: 33.5rem;
     height: 57.5625rem;
     flex-shrink: 0;
 }
 
 .greeting .flex_sec .text_sec h3 {
     font-family: "Noto Sans JP";
     font-size: 2.5rem;
     font-weight: 500;
     line-height: 150%;
     border-bottom: 1px solid #D60000;
     padding-bottom: 0.88rem;
     margin-bottom: 2.06rem;
     display: flex;
     gap: 0.94rem;
     align-items: baseline;
 }
 
 .greeting .flex_sec .text_sec h3 span {
     color: #D60100;
     font-family: "Barlow Semi Condensed";
     font-size: 1.5625rem;
 }
 
 .greeting .flex_sec .text_sec p {
     color: #222222;
     font-family: "Noto Sans JP";
     font-size: 1rem;
     font-weight: 400;
     line-height: 150%;
     margin-bottom: 1.5rem;
 }
 
 .greeting .flex_sec .text_sec {
     position: relative;
 }
 
 .greeting .flex_sec .text_sec img.name {
     width: 19.96138rem;
     height: 6.02425rem;
     position: absolute;
     right: 0;
 }
 
 .greeting .career {
     margin-top: 6.31rem;
 }
 
 .greeting .career h4 {
     color: #D60100;
     font-family: "Barlow Semi Condensed";
     font-size: 2.1875rem;
     font-weight: 500;
     line-height: 150%;
     border-bottom: 1px solid #D60000;
     padding-bottom: 0.88rem;
     margin-bottom: 2.06rem;
     display: flex;
     gap: 1.13rem;
     align-items: baseline;
 }
 
 .greeting .career h4 span {
     color: #222222;
     font-family: "Noto Sans JP";
     font-size: 1.25rem;
     font-style: normal;
     font-weight: 500;
     line-height: 150%;
 }
 
 .greeting .career .flex_sec {
     margin-top: 3.06rem;
 }
 
 .greeting .career .flex_sec img {
     width: 28.8715rem;
     height: 19.25rem;
     flex-shrink: 0;
     aspect-ratio: 461.94/308.00;
 }
 
 .greeting .medical {
     margin-top: 5rem;
 }
 
 .greeting .medical h4 {
     font-size: 1.875rem;
     font-weight: 500;
     line-height: 150%;
 }
 
 .greeting .medical .flex_sec {
     margin-top: 2.19rem;
 }
 
 .greeting .medical .flex_sec img {
     width: 23.9865rem;
     height: 13.3125rem;
     flex-shrink: 0;
     aspect-ratio: 383.78/213.00;
 }
 
 .greeting .medical .flex_sec .text_sec {
     width: 100%;
     position: relative;
 }
 
 .greeting .medical .flex_sec .text_sec h4 {
     font-family: "Noto Sans JP";
     font-size: 1.875rem;
     font-weight: 500;
     line-height: 150%;
     border-bottom: 1px solid #D60000;
     padding-bottom: 0rem;
     margin-bottom: 1rem;
     display: flex;
     gap: 0.94rem;
     align-items: baseline;
 }
 
 .greeting .medical .flex_sec .text_sec h4 span {
     color: #D60100;
     font-family: "Barlow Semi Condensed";
     font-size: 1.25rem;
 }
 
 .greeting .medical .flex_sec .text_sec p {
     margin-bottom: 0.3rem;
 }
 
 .greeting .medical .flex_sec .text_sec a {
     padding: 0.5rem 1.5rem;
     text-align: center;
     color: #FFF;
     font-family: "Noto Sans JP";
     line-height: 2rem;
     letter-spacing: 0.2rem;
     border-radius: 0.3125rem;
     background: #D60000;
     position: absolute;
     bottom: 0;
     right: 0;
 }
 
 @media screen and (max-width: 820px) {
     .greeting .flex_sec {
         flex-direction: column;
     }
 }
 
 @media screen and (max-width: 768px) {
     .greeting {
         padding: 6rem 0;
     }
     .greeting .flex_sec {
         flex-direction: column;
     }
     .greeting .flex_sec img {
         width: auto;
         height: auto;
     }
     .greeting .flex_sec .text_sec h3,
     .greeting .medical .flex_sec .text_sec h4 {
         font-size: 1.5rem;
         padding-bottom: 0.5rem;
         margin-bottom: 1.25rem;
         gap: 0.5rem;
     }
     .greeting .flex_sec .text_sec h3 span,
     .greeting .medical .flex_sec .text_sec h4 span {
         font-size: 1rem;
     }
     .greeting .flex_sec .text_sec img.name {
         width: 14.96138rem;
         height: 4.02425rem;
         bottom: -2rem;
     }
     .greeting .career {
         margin-top: 4.31rem;
     }
     .greeting .career h4 {
         font-size: 1.7rem;
         padding-bottom: 0.5rem;
         margin-bottom: 1.25rem;
         gap: 0.5rem;
     }
     .greeting .career h4 span {
         font-size: 1erm;
     }
     .greeting .career .flex_sec {
         margin-top: 0;
     }
     .greeting .career .flex_sec img,
     .greeting .medical .flex_sec img {
         width: auto;
         height: auto;
         flex-shrink: 0;
         aspect-ratio: auto;
     }
     .greeting .medical .flex_sec .text_sec a {
         position: relative;
         top: 2rem;
     }
 }
