body{
    color: #341805;
    text-rendering:auto;
}
main{
    position: relative;
}
.top{
    margin-bottom: 0;
}
.header-logo{
    position: fixed;
    top: 0;
    left: 0;
    display: block;
    width: 18vw;
    z-index: 10;
}
.top .day{
    top: 61%;
}

.header{
    position: relative;
    z-index: 500;
}
.header-float{
    position: fixed;
    top: 0;
    right: 0;
    display: flex;
    flex-direction: column;
    padding-top: 10px;
    gap: 5px;
    z-index: 300;
}
.header-menu-btn{
    position: relative !important;
    left: auto !important;
    top: 0 !important;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 130px !important;
    height: 85px !important;
    border-radius: .3vw 0 0 .3vw;
    color: #fff;
    background-color: #341805;
    filter: none;
    transform: none !important;
    z-index: 100;
}
.header-menu-btn_bar{
    position: relative;
    display: block;
    margin-inline: auto;
    width: 38%;
    height: auto;
    aspect-ratio: 50/24;
}
.header-menu-btn_bar .bar{
    position: absolute;
    left: 50%;
    display: block;
    width: 100%;
    height: 1px;
    background-color: #fff;
    transition: all .4s ease 0s;
}
.header-menu-btn_bar .bar:nth-of-type(1){
    top: 0%;
    transform: translateX(-50%);
}
.header-menu-btn_bar .bar:nth-of-type(2){
    top: 50%;
    transform: translateX(-50%);
    opacity: 1;
}
.header-menu-btn_bar .bar:nth-of-type(3){
    bottom: 0%;
    transform: translateX(-50%)
}
.header-menu-btn_txt{
    margin-top: 5px;
    line-height: 1.125;
    font-weight: 700;
}
.header-menu-btn.is-open .bar:nth-of-type(1){
    top: 50%;
    transform: translateX(-50%) rotate(-30deg);
}
.header-menu-btn.is-open .bar:nth-of-type(2){
    opacity: 0;
}
.header-menu-btn.is-open .bar:nth-of-type(3){
    bottom: 50%;
    transform: translateX(-50%) rotate(30deg);
}

.header-menu-outer{
    position: fixed;
    top: 0;
    right: 0;
    /* display: block; */
    display: none;
    width: 100%;
    height: 100dvh;
    background-color: rgba(0,0,0,.6);
    z-index: 49;
}
.header-menu{
    display: block;
    margin-left: auto;
    margin-right: 0;
    padding-top: 125px;
    padding-bottom: 30px;
    max-width: 370px;
    width: 100%;
    height: 100%;
    background-color: #341805;
}
.header-menu_inner{
    display: block;
    padding-inline: 40px;
    width: 100%;
    height: 100%;
    overflow-y: auto;
}
.header-menu_list{
    display: block;
}
.header-menu_list-item{
    display: block;
    width: 100%;
    border-bottom: 1px solid #fff;
}
.header-menu_list-link{
    position: relative;
    display: block;
    padding-block: 20px;
    padding-right: 30px;
    color: #fff;
    font-size: 18px;
    font-weight: 900;
}

.header-flyer-btn{
    position: relative !important;
    display: block;
    width: 130px !important;
    height: 85px !important;
    border: 1px solid #fff;
    border-right: none;
    border-radius: .3vw 0 0 .3vw;
    color: #fff;
    font-weight: 900;
    background-color: #d40439;
    transition: all .4s ease 0s;
}
.header-flyer-btn::before{
    content: '';
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    background-color: #fff;
    mask-image: url('../img/top/flyer_btn.svg');
    mask-size: contain;
    mask-position: center;
    mask-repeat: no-repeat;
    transition: inherit;
}
.header-flyer-btn:hover,
.header-flyer-btn:focus{
    border-color: #341805;
    background-color: #fffded;
}
.header-flyer-btn:hover::before,
.header-flyer-btn:focus{
    background-color: #341805;
}

.header_contact_aicon{
    width: 130px;
    padding: 15px 0 32px;
    color: #341805;
    clip-path: polygon(0 0, 100% 0%, 100% 100%, 50% calc(100% - 20px), 0 100%);
    background: linear-gradient(#A87322 0%, #A87322 10%, #FFF596 50%, #A87322 90%, #A87322 100px);
    z-index: 0;
}
.header_contact_aicon::after {
    content: "";
    position: absolute;
    left: 0%;
    top: -100%;
    display: block;
    width: 100%;
    height: 100%;
    background: linear-gradient(#D40439 0%, #D40439 10%, #E87E77 50%, #D40439 90%, #D40439 100px);
    transition: all .3s;
    z-index: 0;
}
.header_contact_aicon:hover::after {
    top: 0;
}
.header_contact_aicon_in{
    position: relative;
    z-index: 1;
}
.header_contact_aicon .header_contact_aicon_in figure {
    position: relative;
    width: 100%;
}
.header_contact_aicon .header_contact_aicon_in figure img {
    width: 100%;
    height: auto;
}
.header_contact_aicon .header_contact_aicon_in .text{
    position: relative;
    display: block;
    text-align: center;
    font-size: 20px;
    font-weight: 900;
    line-height: 1.3;
    letter-spacing: .08em;
    transition: all .3s;
    margin-left: 3%;
}
.header_contact_aicon:hover .header_contact_aicon_in .text{
    color: #fff100;
}
.header_contact_aicon .header_contact_aicon_in .text .arrow {
    position: relative;
    top: 0;
    right: 0;
    display: inline-block;
    clip-path: polygon(2px 0, 100% 50%, 2px 100%, 0 100%, calc(100% - 2px) 50%, 0 0);
    background-color: #341805;
    width: 14px;
    height: 16px;
    transition: all .3s;
}
.header_contact_aicon:hover .header_contact_aicon_in .text .arrow {
    background-color: #fff100;
}

.contact_aicon{
    /* top: calc((5vw + .6vw) * 2 + .6vw); */
    display: none;
}

.sp_link{
    display: none;
}
.bira{
    z-index: 0;
}

.d-lg-none{
    display: none;
}

button a p{
    padding: 6px 4.5%;
    font-size: 2.85vw;
}
button a .tag{
    position: absolute;
    top: 0;
    left: 0;
    display: inline-flex;
    align-items: center;
    padding: 0 1em;
    width: 22%;
    height: 100%;
    font-size: 1.1vw;
    font-weight: 900;
    line-height: 1.2em;
    border-radius: 0 100px 100px 0;
    color: #fff;
    background-color: #d40439;
    z-index: 1;
    transition: inherit;
}
button a .tag .tag-big{
    display: contents;
    font-size:1.9vw;
    line-height: 1em;
    /* transition: all .3s; */
}
button a:hover .tag{
    color:#d40439;
    background-color: #fff;
}
button a:hover .tag .tag-big{
    color:#d40439;
}

.color-red{
    color:#d40439;
}
.font-big{
    font-size: 1.5em;
    font-weight: 700;
}
.ul-yellow{
    position: relative;
}
.ul-yellow::before{
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 20%;
    background-color: #ffeb83;
    z-index: -1;
    transform: translateY(-50%);
}
.hl-yellow{
    background-color: #ffe142;
}


.banner_line{
    position: absolute;
    top: 0;
    width: 100%;
    background-image: url('../img/top/line-bg.png');
    background-size: 100%;
    /* z-index: 1; */
}
.banner_line-wrap{
    display: flex;
    align-items: end;
    margin: 0 auto;
    padding: 0 20px;
    /* max-width: 1140px; */
    /* width: 100%; */
    width: 83%;
}

.banner_line .banner_line-link{
    position: relative;
    margin-top: auto;
    margin-bottom: auto;
    z-index: 1;
    /* margin-bottom: 50px; */
}

.speak .speak_in{
    z-index: 0;
}
.speak .speak_in li:last-child{
    margin-top: -200px;
}

.speak .speak_in li figure{
    width: 60%;
}


.flyer-btn{
    position: relative;
    margin: 0 auto 3.57vw;
    max-width: 310px;
    width: 80%;
    border: none;
    background-color: #341805;
}
.flyer-btn-link{
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 25px 0;
    width: 100%;
    border: none;
    color: #fff;
    font-size: 20px;
    background-color: transparent;
}

.flyer-btn-icon{
    display: block;
    margin-right: -1em;
    margin-left: 1em;
    width: 1em;
    height: 1em;
    background-color: #fff;
    mask-image: url('../img/top/other-window.svg');
    mask-size: cover;
    mask-repeat: no-repeat;
    mask-position: center;
}


.benefits{
    position: relative;
    background-image: none;
}
.benefits::before{
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    width: 100%;
    height: 100%;
    background-image: linear-gradient(rgba(255, 255, 255, 0), #fdd600);
    opacity: .2;
}

.benefits .benefits_in{
    /* padding-top: 7.14vw; */
    padding-top: 0;
}

.benefits_list{
    display: flex;
    flex-wrap: wrap;
    gap: 1.19vw;
    padding: 0 0.257vw 0 1.37vw;
}
.benefits_list_row{
    display: flex;
    gap: 2.084vw;
    width: 100%;
}
.benefits_list-item{
    padding-bottom: 0.833vw;
    width: calc((100% - 2.084vw) / 2);
    border: 0.357vw solid transparent;
    border-radius: 1.071vw;
    background-color: #fff;
    filter: drop-shadow(0 0 1.785vw rgba(0,0,0,.1));
}
.benefits_list-item.benefits-popup-open{
    position: relative;
    padding-bottom: 0 !important;
}
.benefits_list-item.benefits-popup-open::after{
    content: '';
    position: absolute;
    bottom: -0.357vw;
    left: -0.357vw;
    display: block;
    width: calc(100% + (0.357vw * 2));
    height: 4.05vw;
    border-bottom-right-radius: inherit;
    border-bottom-left-radius: inherit;
    background-image: linear-gradient(transparent,#fff);
}
.benefits_list-item.benefits-popup-open .benefits-popup-open_state{
    position: absolute;
    top: 0.357vw;
    right: 0.357vw;
    display: block;
    width: 2.85vw;
    height: auto;
    aspect-ratio: 1/1;
    border-radius: 50%;
    background-color: #341805;
}
.benefits_list-item.benefits-popup-open .benefits-popup-open_state::before,
.benefits_list-item.benefits-popup-open .benefits-popup-open_state::after{
    content: '';
    position: absolute;
    top: calc(50% - 1px);
    left: 50%;
    display: block;
    width: 43.75%;
    height: 2px;
    background-color: #fff;
    transition: all .3s;
}
.benefits_list-item.benefits-popup-open .benefits-popup-open_state::before{
    transform: translateX(-50%);
}
.benefits_list-item.benefits-popup-open .benefits-popup-open_state::after{
    transform: translateX(-50%) rotate(90deg);
}
.benefits_list-item_head{
    position: relative;
    display: flex;
    padding: 0.833vw 0 0 1.458vw;
    font-weight: 900;
    text-align: start;
}
.benefits_list-item_head .num{
    position: relative;
    font-size: 2.084vw;
    height: fit-content;
}
.benefits_list-item_head .num::before{
    content: '';
    position: absolute;
    top: 50%;
    left: -100%;
    display: block;
    width: 1.845vw;
    height: 1.845vw;
    border-radius: 50%;
    background-color: #ffe142;
    transform: translateY(-50%);
}
.benefits_list-item_head .head-ttl{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin-top: -0.3vw;
    padding-left: 0.595vw;
    font-size: 1.31vw;
    line-height:1.5;
}
.benefits_list-item_head .head-ttl.f-column{
    flex-direction: column;
    align-items: start;
    margin-top: 0;
}
.benefits_list-item_head .head-ttl span{
    line-height: 1.5;
}
.benefits_list-item_head .head-ttl .big{
    color: #d40439;
    font-size: 2.381vw;
}
.benefits_list-item_head .head-ttl .big-more{
    line-height: 1.3;
    font-size: 3.274vw;
}

.benefits_list-item_head .icon{
    position: absolute;
    top: 0;
    right: 0;
    width: 7.92vw;
}

.al-center{
    display: flex;
    align-items: center;
}
.benefits_list-item_det{
    padding-left: 4.072vw;
    text-align: start;
    font-size: 0.893vw;
}
.benefits_list-item.benefits-popup-open .benefits_list-item_det{
    max-height:4.05vw;
    overflow: clip;
}
.benefits_list-item_badge{
    display: block;
    margin-top: 0.505vw;
    margin-left: 4.072vw;
    padding: 0.178vw 0.714vw;
    width: fit-content;
    height: fit-content;
    color: #3da745;
    font-size: 0.893vw;
    background-color:#ffe142;
}

.benefits_list-item.red-link{
    border: 0.357vw solid #dd5578;
    color: #fff;
    background-color: #d40439;
}

.benefits_list-item.line-link{
    border: 0.357vw solid #9ad39e;
    color: #fff;
    background-color: #3da745;
}

.benefits_list-item.red-link .benefits_list-item_head .head-ttl .big,
.benefits_list-item.line-link .benefits_list-item_head .head-ttl .big{
    color: inherit;
}

.benefits_list_col{
    display: flex;
    flex-wrap: wrap;
    gap: 1.19vw;
    width: 50%;
}
.benefits_list_col .benefits_list-item{
    width: 100%;
}
br.b-pc{
    display: block;
}
br.b-sp{
    display: none;
}

.benefits_popup{
    position: fixed;
    top: 0;
    left: 0;
    /* display: block; */
    display: none;
    width: 100%;
    height: 100dvh;
    z-index: 800;
}
.benefits_popup_bg{
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,.6);
    z-index: 0;
}
.benefits_popup_inner{
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-inline: auto;
    padding-inline: 2.67vw;
    max-width: 55.35vw;
    width: 100%;
    height: 100%;
    z-index: 1;
}
.benefits_popup_slide_outer{
    position: relative;
    display: block;
    padding-block: 1.78vw;
    padding-inline: 5.35vw;
    width: 100%;
    height: auto;
    border-radius: 1.07vw;
    background-color: #fff;
}
.benefits_popup_slide_ui{
    position: absolute;
    top: 50%;
    left: -2.67vw;
    display: flex;
    justify-content: space-between;
    width: calc(100% + (2.67vw * 2));
    transform: translateY(-50%);
}
.benefits_popup_slide_btn{
    position: static !important;
    display: block;
    margin: 0 !important;
    width: 5.35vw !important;
    height: auto !important;
    aspect-ratio: 1/1;
    border: 1px solid #fff;
    border-radius: 50%;
    color: #fff !important;
    background-color: #341805;
    filter: none !important;
}
.benefits_popup_slide_btn::after{
    color: inherit;
    font-size: 2.61vw !important;
}

.benefits_popup_slide_under{
    margin-top: 1.78vw;
}
.benefits_popup_close{
    display: flex;
    justify-content: center;
    align-items: center;
    margin-inline: auto;
    width: 9.64vw;
    height: 3.15vw;
    color: #fff;
    font-size: 1vw;
    background-color: #341805;
    filter: none;
}
.benefits_popup_close .icon{
    position: relative;
    display: inline-block;
    margin-right: 0.53vw;
    width: 1em;
    height: 1em;
}
.benefits_popup_close .icon::before,
.benefits_popup_close .icon::after{
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    display: block;
    width: 100%;
    height: 1px;
    background-color: #fff;
}
.benefits_popup_close .icon::before{
    transform: translateX(-50%) rotate(45deg);
}
.benefits_popup_close .icon::after{
    transform: translateX(-50%) rotate(-45deg);
}

.mekar{
    position: relative;
    background-image: none;
}
.mekar::before{
    content: '';
    position: absolute;
    bottom: 0;
    right: 0;
    display: block;
    width: 100%;
    height: 62%;
    background-image: linear-gradient(rgba(255, 255, 255, 0), #fdd600);
    opacity: .2;
}
.mekar_slider{
    padding-top: 2.38vw;
    padding-inline: 4.464vw;
    padding-bottom: 1.54vw;
    border-radius: 0 0 1.19vw 1.19vw;
    background-color: #fff;
}
.mekar_slider_content{
    overflow: clip;
}
.mekar_slider_item{
    display: block;
    height: 14.22vw;
    background-size: auto 100%;
    background-position-x: 0%;
    background-repeat: repeat-x;
    animation: mekarSl 100s linear 0s infinite;
}
.mekar_slider_item.is-stop{
    animation-play-state: paused;
}
@keyframes mekarSl{
    0% {
        background-position-x: 0%;
    }
    100% {
        background-position-x: -100%;
    }
}
.mekar_slider_stop{
    display: flex;
    margin-inline: auto;
    color: #341805;
    font-size: 1.3vw;
    filter: none;
}
.mekar_slider_stop_txt{
    margin-right: 1.19vw;
}
.mekar_slider_stop_icon{
    display: block;
    width: 2.32vw;
    height: 2.32vw;
    background-image: url('../img/top/mekar_play.png');
    background-size: contain;
    background-position: center;
    /* background-image: url('../img/top/mekar_stop.png'); */
}
.mekar_slider_stop.is-stop .mekar_slider_stop_icon{
    background-image: url('../img/top/mekar_stop.png');
}


.radial .radial_in{
    background: url('../img/top/radial_bg.png');
    background-repeat: no-repeat;
    background-size: cover;
}
.radial .radial_lead{
    margin-inline: auto;
    width: 85.1vw;
}
.radial .radial_content{
    position: relative;
    display: block;
    padding-bottom: 4.46vw;
    background-color: #FFDFBF;
}
.radial .radial_content_group{
    position: relative;
    display: block;
    padding-top: 3.57vw;
    padding-bottom: 1.785vw;
}
.radial .radial_content_group::before{
    content:'';
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 8.3vw;
    background-image: linear-gradient(#FFDFBF,#FFEEDC 10%,#FFFFFF,#FFEBD6 90%,#FFDFBF);
    z-index: 0;
}
.radial .radial_content_group:first-of-type::before{
    display: none;
}
.radial .radial_content_group_inner{
    position: relative;
    z-index: 1;
}
.radial .radial_content_notes{
    position: relative;
    text-align: center;
    font-size: 1.07vw;
    font-weight: 700;
    z-index: 1;
}
.radial .radial-slider-outer{
    position: relative;
    margin-inline: auto;
    width: 69.64vw;
}
.radial .radial-slider{
    width: 100%;
    overflow: visible !important;
}
.radial .radial-slider-item{
    padding-right: 1.19vw;
    /* width: calc(100% / 3.6); */
    width: calc(100% / 3);
}
.radial .radial-slider-ui{

}
.radial .radial-slider__btn{
    position: absolute;
    top: 50%;
    left: 0;
    display: flex;
    justify-content: space-between;
    width: 100%;
    transform: translateY(-50%);
    z-index: 1;
}
.radial-slider__btn-prev,
.radial-slider__btn-next{
    position: static !important;
    margin-top: auto !important;
    margin-bottom: auto !important;
    width: 4.5vw !important;
    height: 4.5vw !important;
    color: #fff !important;
    border-radius: 50%;
    background-color: #341805;
    filter: none;
}
.radial-slider__btn-prev::after,
.radial-slider__btn-next::after{
    font-size: 2.14vw !important;
}
.radial-slider__btn-prev{
    margin-left: calc(-4.5vw + 1.19vw);
}
.radial-slider__btn-next{
    margin-right: calc(-4.5vw + 1.19vw);
}

.goods .good_txt h4{
    margin-bottom: 1.19vw;
    text-align: start;
    font-size: 2.08vw;
    color: #042439;
}

.goods .good_txt .good_txt_inner {
    display: flex;
}

.goods .good_txt .good_txt_content{
    /* width: calc(100% - 37.6785vw); */
    margin-top: 0;
    padding-right: 4.64%;
    width: 49%;
}
.goods .good_txt .good_txt_content p{
    text-align: start;
    font-size: .9523vw;
}

.goods .good_txt .good_txt_figure{
    display: flex;
    gap: .59vw;
    width: 51%;
    height: fit-content;
    /* width: 37.6785vw; */
}
.goods .good_txt .good_txt_figure .good_txt_figure_item{
    width: calc((100% - .59vw) / 2);
    aspect-ratio: 303/258;
    object-fit: cover;
}

.goods-slider{
    padding-bottom: 3% !important;
}
.goods-slider__ui{
    display: flex;
    margin-bottom: 30px;
}
.goods-slider__num{
    position: static !important;
    margin-top: auto;
    margin-right: 35px;
    margin-bottom: auto;
    width: auto !important;
    font-weight: bold;
}
.goods-slider__btn{
    display: flex;
    gap: 10px;
}
.goods-slider__btn-next,
.goods-slider__btn-prev{
    position: static !important;
    margin: 0 !important;
    width: 50px !important;
    height: 50px !important;
    color: #fff !important;
    border-radius: 50%;
    background-color: #341805;
    filter: none;
}
.goods-slider__btn-next::after,
.goods-slider__btn-prev::after{
    font-size: 20px !important;
}
.goods-slider__item{
    padding: 0 1%;
    box-sizing: border-box;
}


/* section{
    position: relative;
    z-index: 1;
} */
.acc{
    padding-bottom: 180px;
}
.acc .acc_in .txt_en{
    margin-bottom: 0;
}

.acc_list{
    display: grid !important;
    grid-template-columns: repeat(2, 1fr);
    grid-template-areas: 
    'a b'
    'c d'
    'e d'
    'f d'
    'g h'
    'i j'
    'k l';
    gap: 30px;
    margin-bottom: 0 !important;
    max-width: 960px !important;
    width: 100%;
}
.acc_list-item{
    display: flex;
    flex-direction: column;
    width: auto !important;
}
.acc_list-item:nth-of-type(1){
    grid-area: a;
}
.acc_list-item:nth-of-type(2){
    grid-area: b;
}
.acc_list-item:nth-of-type(3){
    grid-area: c;
}
.acc_list-item:nth-of-type(4){
    grid-area: d;
}
.acc_list-item:nth-of-type(5){
    grid-area: e;
}
.acc_list-item:nth-of-type(6){
    grid-area: f;
}
.acc_list-item:nth-of-type(7){
    grid-area: g;
}
.acc_list-item:nth-of-type(8){
    grid-area: h;
}
.acc_list-item:nth-of-type(9){
    grid-area: i;
}
.acc_list-item:nth-of-type(10){
    grid-area: j;
}
.acc_list-item:nth-of-type(11){
    grid-area: k;
}
.acc_list-item:nth-of-type(12){
    grid-area: l;
}
.acc_list-item .lead{
    padding: 8px 24px;
    width: 100%;
    color: #fff;
    font-size: 18px;
    font-weight: 900;
    background-color: #341805;
}
.acc_list-item .txt{
    padding: 10px 24px;
    width: 100%;
}
.acc_list-item .list{
    flex-direction: column;
    padding-left: 1em;
    margin: 0 !important;
    width: auto !important;
    list-style: disc;
}
.acc_list-item .map{
    margin-top: auto;
    width: 100%;
    height: 220px;
}
.acc_list-item .map iframe{
    width: 100%;
    height: 100%;
}

.acc_list-item .list li{
    width: auto !important;
}

.con_form{
    background-color: #FEF8D4;
}
.con_form_in{
    position: relative;
    z-index: 1;
}

.con_form .con_form_in button{
    width: 100%;
    display: flex;
    justify-content: center;
}
.con_form .form_button::after{
    right: 4%;
}
.con_form .form_button .form-send{
    position: absolute;
    top: 50%;
    right: 3%;
    transform: translateY(-50%);
    clip-path: polygon(2px 0, 100% 50%, 2px 100%, 0 100%, calc(100% - 2px) 50%, 0 0);
    background-color: #fff;
/*    width: 25px;*/
/*    width: 6.66vw;*/
/*    height: 60%;*/
    transition: all .3s;
}
.con_form .form_button .form-back{
    position: absolute;
    top: 50%;
    right: auto;
    left: 8%;
    transform: translateY(-50%) rotate(180deg);
    clip-path: polygon(2px 0, 100% 50%, 2px 100%, 0 100%, calc(100% - 2px) 50%, 0 0);
    background-color: #fff;
    width: 25px;
    height: 60%;
    transition: all .3s;
}


.con_form .form_button:has(>.form-back)::after{
    left: 8%;
    right: auto;
}


.main_site p{
    font-size: 46px;
}


.swiper-button-next:after,
.swiper-button-prev:after{
    position: relative;
    z-index: 5;
}


/*-----------------------
ラジオボタン
------------------------*/
input[type="radio"]{
    display: none;
}

.ragio label{
    position: relative;
    /* display: block; */
    padding-left: 30px;
    cursor: pointer;
    /* font-size: 18px; */
}
.ragio label::before{
    content: '';
    position: absolute;
    left: 0;
    top: 5px;
    display: block;
    height: 22px;
    width: 22px;
    border: 1px solid #1a1311;
    border-radius: 50%;
    background-color: #fff;
}
.ragio label::after{
    content: '';
    position: absolute;
    top: 10px;
    left: 5px;
    display: none;
    width: 12px;
    height: 12px;
    background: #b40019;
    border-radius: 50%;
}
.ragio label:has(input:checked)::after{
    display: block;
}

@media screen and (max-width: 1200px) {
    .speak .speak_in{
        padding-top: 280px;
    }
    .speak .speak_in li:last-child{
        margin-top: -120px;
    }
}
@media screen and (max-width: 900px){
    .header_contact_aicon{
        display: none;
    }
    .contact_aicon{
        display: block;
        padding: 0;
    }
    .contact_aicon:hover .contact_aicon_in img{
        transform: none;
    }
    .sp_link{
        display: block;
    }
    
    .sp_span{
        display: none;
    }
    .acc{
        padding-bottom: 90px;
    }
    .speak .speak_in{
        padding-top: 230px;
    }
}
@media screen and (max-width: 601px) {
    .top .day {
        top: 70%;
    }
    .header-logo{
        width: 41.33vw;
    }

    .header-float{
        flex-direction: row-reverse;
        padding-top: 0;
    }

    .header-menu-btn{
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        width: 60px !important;
        height: 42px !important;
        border-radius: 0 0 0 .3vw;
    }
    .header-menu-btn_bar{
        position: relative;
        display: block;
        margin-inline: auto;
        width: 38%;
        height: auto;
        aspect-ratio: 50/24;
    }
    .header-menu-btn_txt{
        display: none;
    }

    .header-menu-outer{
    }
    .header-menu{
        margin-left: 0;
        padding-top: 50px;
        padding-bottom: 55px;
        max-width: none;
        height: auto;
    }
    .header-menu_inner{
        padding-inline: 20px;
    }
    .header-menu_list-link{
        font-size: 16px;
    }

    .header-flyer-btn{
        width: 100px !important;
        height: 42px !important;
        border-top: none;
        border-right: 1px solid #fff;
        border-radius: 0 0 .3vw .3vw;
    }
    .header-flyer-btn::before{
        mask-image: url('../img/top/flyer_btn_sp.svg');
    }

    .d-lg-none{
        display: block;
    }
    .flyer-btn{
        width: 65%;
        background-color: #d40439;
    }
    .flyer-btn-link{
        padding: 10px 0;
    }
    .benefits_list{
        gap: 2.67vw;
        padding: 0 4vw 0 6.67vw;
    }
    .benefits_list_row{
        flex-wrap: wrap;
        gap: 2.67vw;
    }
    .benefits_list-item{
        padding-bottom: 4.26vw;
        width: 100%;
        border: 1.6vw solid transparent;
        border-radius: 4.8vw;
    }
    .benefits_list-item.benefits-popup-open{}
    .benefits_list-item.benefits-popup-open::after{
        bottom: -1.6vw;
        left: -1.6vw;
        width: calc(100% + (1.6vw * 2));
        height: 10.67vw;
    }
    .benefits_list-item.benefits-popup-open .benefits-popup-open_state{
        top: 1.86vw;
        right: 1.86vw;
        width: 10.66vw;
    }
    .benefits_list-item_head{
        padding: 2.93vw 0 0 3.28vw;
    }
    .benefits_list-item.benefits-popup-open .benefits_list-item_head{
        padding-right: 14.86vw;
    }
    .benefits_list-item_head .num{
        position: relative;
        font-size: 8vw;
        height: fit-content;
    }
    .benefits_list-item_head .num::before{
        left: -80%;
        width: 6.13vw;
        height: 6.13vw;
    }
    .benefits_list-item_head .head-ttl{
/*        margin-top: -0.3vw;*/
        padding-left: 1.787vw;
        font-size: 4.27vw;
/*        line-height: 2.551vw;*/
    }
    .benefits_list-item_head .head-ttl.f-column{
        margin-top: 2.66vw;
    }
    .benefits_list-item_head .head-ttl.f-column-sp{
        flex-direction: column;
        align-items: start;
    }
    .benefits_list-item_head .head-ttl .big{
        font-size: 5.87vw;
    }
    .benefits_list-item_head .head-ttl .big-more{
        font-size: 9.33vw;
    }
    .benefits_list-item_head .icon{
        display: none;
    }
    .al-center{
        display: inline;
    }
    .benefits_list-item_det{
        padding-left: 14.93vw;
        font-size: 3.46vw;
    }
    .benefits_list-item_badge{
        margin-top: 1.96vw;
        margin-left: 15.804vw;
        padding: 0.691vw 2.771vw;
/*        font-size: 0.893vw;*/
        font-size: 3.466vw;
    }
    .benefits_list-item.line-link{
        border: 1.6vw solid #9ad39e;
    }
    
    .benefits_list_col{
        gap: 2.67vw;
        width: 100%;
    }
    .benefits_list_col .benefits_list-item{
        width: 100%;
    }

    br.b-pc{
        display: none;
    }
    br.b-sp{
        display: block;
    }
    .benefits_popup_inner{
        padding-inline: 5.33vw;
        max-width: 91.2vw;
    }
    .benefits_popup_slide_outer{
        padding-block: 3.46vw 6.67vw;
        padding-inline: 3.73vw;
        border-radius: 4.8vw;
    }
    .benefits_popup_slide_ui{
        left: -5.33vw;
        width: calc(100% + (5.33vw * 2));
    }
    .benefits_popup_slide_btn{
        width: 11.46vw !important;
    }
    .benefits_popup_slide_btn::after{
        font-size: 5.59vw !important;
    }

    .benefits_popup_slide_under{
        margin-top: 8vw;
    }
    .benefits_popup_close{
        width: 26.13vw;
        height: 9vw;
        font-size: 3.73vw;
    }
    .benefits_popup_close .icon{
        margin-right: 1.86vw;
        width: 1em;
        height: 1em;
    }

    .radial .radial_in{
        background: url('../img/top/radial_bg_sp.png');
    }

    .banner_line{
        position: relative;
        margin-bottom: -450px;
    }
    .speak .speak_in{
        padding-top: 480px;
    }
    .speak .speak_in li figure{
        width: 90%;
    }
    .speak .speak_in li:last-of-type{
        margin-top: -70px;
    }
    .main_site p{
        font-size: 6.85vw ;
    }
    .acc{
        padding-bottom: 60px;
    }
    .acc_list{
        display: flex !important;
        margin-bottom: 0 !important;
    }


    .banner_line{
        background-image: url('../img/top/line-bg_sp.png');
        background-size: 100%;
    }

    .banner_line-wrap{
        position: relative;
        flex-direction: column;
        padding-top: 35%;
    }
    .banner_line .banner_line-link{
        position: absolute;
        left: calc(50% - 35%);
        top: auto;
        bottom: 0;
        width: 70%;
    }

    button a{
        display: flex;
        flex-direction: column;
    }
    button a .tag{
        position: static;
        padding: 4px;
        width: 100%;
        border-radius: 0;
        font-size: 14px;
        text-align: center;
        justify-content: center;
    }
    button a .tag br{
        display: none;
    }
    button a .tag .tag-big{
        font-size: 14px;
    }
    button a p{
        padding: 6px 4.5%;
    }

    .mekar::before{
        display: none;
    }
    .mekar_slider{
        padding-top: 20px;
        padding-inline: 0;
        padding-bottom: 0;
        border-radius: 0;
    }
    .mekar_slider_item{
        height: 87px;
    }
    .mekar_slider_stop{
        margin-top: 14px;
        width: auto !important;
        max-width: none !important;
        font-size: 14px;
    }
    .mekar_slider_stop_txt{
        margin-right: 10px;
    }
    .mekar_slider_stop_icon{
        display: block;
        width: 27px;
        height: 27px;
    }

    .radial .radial_lead{
        max-width: 335px;
        width: 100%;
    }
    .radial .radial_content{
        padding-bottom: 32px;
    }
    .radial .radial_content_group{
        padding-top: 25px;
        padding-bottom: 25px;
    }
    .radial .radial_content_group::before{
        height: 230px;
        background-image: linear-gradient(#FFDFBF,#FFEEDC 10%,#FFFFFF,#FFEBD6 90%,#FFDFBF);
    }
    .radial .radial_content_notes{
        font-size: 14px;
    }
    .radial .radial-slider-outer{
        max-width: 335px;
        width: 100%;
    }
    .radial .radial-slider-item{
        padding-right: 10px;
        width: calc(100% / 1.1);
    }
    .radial .radial-slider-ui{
        padding-top: 10px;
    }
    .radial .radial-slider__btn{
        position: static;
        justify-content: start;
        gap: 7px;
        transform: none;
    }
    .radial-slider__btn-prev,
    .radial-slider__btn-next{
        width: 35px !important;
        height: 35px !important;
    }
    .radial-slider__btn-prev::after,
    .radial-slider__btn-next::after{
        font-size: 17px !important;
    }
    .radial-slider__btn-prev{
        margin-left: 0;
    }
    .radial-slider__btn-next{
        margin-right: 0;
    }

    .goods{
        padding-bottom: 60px;
    }
    .goods .good_txt h4{
        /* margin-bottom: 5.33vw; */
        margin-bottom: 20px;
        text-align: center;
        /* font-size: 6.13vw; */
        font-size: 23px;
    }

    .goods .good_txt .good_txt_inner {
        /* display: flex; */
        flex-wrap: wrap;
    }

    .goods .good_txt .good_txt_content{
        padding-right: 0;
        width: 100%;
    }
    .goods .good_txt .good_txt_content p{
        text-align: start;
        font-size: 14px;
    }

    .goods .good_txt .good_txt_figure{
        flex-wrap: wrap;
        gap: 10px;
        width: 100%;
    }
    .goods .good_txt .good_txt_figure .good_txt_figure_item{
        width: 100%;
        aspect-ratio: auto;
        /* object-fit: cover; */
    }


    .con_form .form_button::after{
        width: 20px;
    }
}

