@charset "utf-8";

/* common */
html,
body {
    width: 100%;
    height: 100%;
}
body {
    color: #000;
    line-height: 1;
    font-family: 'Noto Sans JP', sans-serif;
    font-feature-settings: 'palt' 1;
    text-align: center;
}
@media (min-width: 1440px) {
    .summer2026 {
        font-size: 1px;
    }
}
@media (min-width: 768px) and (max-width: 1439px) {
    .summer2026 {
        font-size: calc(1vw / 1440 * 100);
    }
}
@media (min-width: 768px) {
    .summer2026 {
        background: #fce457 url(../images/bg.jpg) 50% 0 / contain;
    }
}
@media (max-width: 767px) {
    .summer2026 {
        font-size: 1px;
        font-size: calc(1vw / 750 * 100);
        background: #fce457 url(../images/sp/bg.jpg) 50% 100px / contain;
    }
}
img {
    width: 100%;
    height: auto;
    vertical-align: bottom;
}
a {
    display: block;
    text-decoration: none;
}
.wrap{
    position: relative;
    overflow: hidden;
}
.main{
    padding-top: 80px;
}
@media (min-width: 981px) {
    .main{
        padding-top: 92px;
    }
}
@media (min-width: 768px) {
    .section_inner{
        width: 1200em;
        margin-inline: auto;
    }
    .sp_only {
        display: none!important;
    }
}
@media (max-width: 767px) {
    .section_inner{
        padding: 0 25em;
    }
    .pc_only {
        display: none!important;
    }
}
.fade_up {
    translate: 0 30em;
    opacity: 0;
    transition: translate 0.5s, opacity 0.5s;
}
.animated.fade_up {
    translate: 0 0;
    opacity: 1;
}
.scale_bound {
    scale: 0;
}
.animated.scale_bound {
    scale: 1;
    animation: scale_bound 0.8s;
}
@keyframes scale_bound {
	0% {
		transform: scale(0);
	}
	20% {
		transform: scale(0);
	}
	60% {
		transform: scale(1.1);
	}
	80% {
		transform: scale(0.95);
	}
	90% {
		transform: scale(1);
	}
	100% {
		transform: scale(1);
	}
}
@media (min-width: 768px) {
    @media (hover:hover) {
        .btn {
            transition: opacity 0.3s;
        }
        .btn:hover {
            opacity: 0.7;
        }
    }
}
@media (max-width: 767px) {
    .fade_up_sp {
        translate: 0 30em;
        opacity: 0;
        transition: translate 0.5s, opacity 0.5s;
    }
    .animated.fade_up_sp {
        translate: 0 0;
        opacity: 1;
    }
    .scale_bound_sp {
        scale: 0;
    }
    .animated.scale_bound_sp {
        scale: 1;
        animation: scale_bound 0.8s;
    }
}

/* mv */
.mv_ttl {
    width: 621em;
    margin: 64em auto 0;
    position: relative;
}
.mv_day {
    width: 170em;
    margin: auto;
    position: absolute;
}
.mv_btn {
    width: 450em;
    margin: 36em auto 0;
}
.mv_label {
    width: 670em;
    margin: 27em auto 0;
}
.mv_link {
    font-weight: 500;
    line-height: 1.5;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.mv_link_inner {
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.mv_link_l {
    display: flex;
    align-items: center;
}
.mv_link_l::after {
    content: '';
    display: block;
    border-right: 0;
}
@media (min-width: 768px) {
    .mv {
        padding-bottom: 50em;
    }
    .mv_ttl {
        transform: translateX(-24em);
    }
    .mv_link {
        flex-direction: row;
        align-items: baseline;
        text-decoration: underline;
        width: fit-content;
        margin: 30em auto 0;
    }
    .mv_link_inner {
        font-size: 24em;
    }
    .mv_link_l {
        font-size: 1.21em;
        justify-content: center;
    }
    .mv_link_l::after {
        margin-left: 10px;
        border: 9px solid transparent;
        border-left: 14px solid #000;
    }
    .mv_day {
        top: 126em;
        right: -46em;
    }
}
@media (max-width: 767px) {
    .mv {
        padding-bottom: 80em;
    }
    .mv_ttl {
        transform: translateX(-24em);
    }
    .mv_link {
        flex-direction: row;
        align-items: baseline;
        text-decoration: underline;
        width: fit-content;
        margin: 30em auto 0;
    }
    .mv_link_inner {
        font-size: 28em;
    }
    .mv_link_l {
        font-size: 1.21em;
        justify-content: center;
    }
    .mv_link_l::after {
        margin-left: 5px;
        border: 4.5px solid transparent;
        border-left: 7px solid #000;
    }
    .mv_day {
        top: 126em;
        right: -45em;
    }
}

/* product */
.product_inner {
    margin-inline: auto;
    background-color: #fff;
}
.product_header {
    position: relative;
}
.product_header_ttl {
    margin-inline: auto;
    position: relative;
}
.product_header_ttl::before {
    content: '';
    width: 100%;
    background: no-repeat 50% 0 / contain;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
}
.product_header_ttl_img {
    margin-inline: auto;
    position: relative;
}
.product_header_icon {
    position: absolute;
}

.product_list {
    display: flex;
    flex-wrap: wrap;
}

.product_note_list {
    line-height: 1.4;
    margin-inline: auto;
    text-align: left;
}
.product_note_list_inner {
    padding-left: 0.5em;
    text-indent: -0.5em;
    display: block;
}
.product_note_list_red {
    color: #e60012;
}
.product_note_list_blue {
    color: #0068b1;
}
.product_txt,
.product_btn,
.product_label {
    margin-inline: auto;
}
.product_link {
    color: #000;
    font-weight: 500;
    line-height: 1.5;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.product_link_inner {
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.product_link_l {
    display: flex;
    align-items: center;
}
.product_link_l::after {
    content: '';
    display: block;
    border-right: 0;
}
.product_sale_btn_wrap {
    margin-inline: auto;
}
@media (min-width: 768px) {
    .product {
        padding-bottom: 120em;
    }
    .product_inner {
        width: 1164em;
        padding-bottom: 70em;
    }
    .product_inner + .product_inner {
        margin-top: 80em;
    }
    .product_header_ttl {
        padding-top: 32em;
    }
    .product_header_ttl_30 .product_header_ttl_img {
        width: 554em;
    }
    .product_header_ttl_25 .product_header_ttl_img {
        width: 534em;
    }
    .product_header_ttl_20 .product_header_ttl_img {
        width: 565em;
    }
    .product_header_ttl_15 .product_header_ttl_img {
        width: 461em;
    }
    .product_header_ttl::before {
        height: 320em;
        background-image: url(../images/product_header_bg.png);
    }

    .product_list {
        margin: 22em 58em 0;
        gap: 100em 40em;
    }
    .product_list > li {
        width: 232em;
    }

    .product_note_list {
        width: fit-content;
        margin-top: 100em;
    }
    .product_note_list_inner {
        font-size: 24em;
    }
    .product_txt {
        width: 640em;
        margin-top: 80em;
    }
    .product_btn {
        width: 450em;
        margin-top: 80em;
    }
    .product_label {
        width: 642em;
        margin-top: 40em;
    }
    .product_link {
        flex-direction: row;
        align-items: baseline;
        text-decoration: underline;
        width: fit-content;
        margin: 30em auto 0;
    }
    .product_link_inner {
        font-size: 24em;
    }
    .product_link_l {
        font-size: 1.21em;
        justify-content: center;
    }
    .product_link_l::after {
        margin-left: 10px;
        border: 9px solid transparent;
        border-left: 14px solid #000;
    }

    .product_sale_btn_wrap {
        width: 1164em;
        margin-top: 40em;
        display: flex;
        justify-content: space-between;
    }
    .product_sale_btn {
        width: 380em;
    }
}
@media (max-width: 767px) {
    .product {
        padding-bottom: 120em;
    }
    .product_inner {
        width: 670em;
        padding-bottom: 65em;
    }
    .product_inner + .product_inner {
        margin-top: 80em;
    }
    .product_header_ttl {
        padding-top: 28em;
    }
    .product_header_ttl_30 .product_header_ttl_img {
        width: 558em;
    }
    .product_header_ttl_25 .product_header_ttl_img {
        width: 534em;
    }
    .product_header_ttl_20 .product_header_ttl_img {
        width: 565em;
    }
    .product_header_ttl_15 .product_header_ttl_img {
        width: 461em;
    }
    .product_header_ttl::before {
        height: 275em;
        background-image: url(../images/sp/product_header_bg.png);
    }

    .product_list {
        margin: 22em 47em 0;
        justify-content: space-between;
        gap: 100em 0;
    }
    .product_list > li {
        width: 264em;
    }

    .product_note_list {
        width: fit-content;
        margin-top: 100em;
    }
    .product_note_list_inner {
        font-size: 24em;
    }
    .product_txt {
        width: 640em;
        margin-top: 100em;
    }
    .product_btn {
        width: 450em;
        margin-top: 76em;
    }
    .product_label {
        width: 642em;
        margin-top: 30em;
    }
    .product_link {
        flex-direction: row;
        align-items: baseline;
        text-decoration: underline;
        width: fit-content;
        margin: 30em auto 0;
    }
    .product_link_inner {
        font-size: 28em;
    }
    .product_link_l {
        font-size: 1.21em;
        justify-content: center;
    }
    .product_link_l::after {
        margin-left: 5px;
        border: 4.5px solid transparent;
        border-left: 7px solid #000;
    }

    .product_sale_btn_wrap {
        width: 670em;
        margin-top: 60em;
    }
    .product_sale_btn + .product_sale_btn {
        margin-top: 20em;
    }
}

/* footer */
.footer {
    background-color: #fff;
    position: relative;
}
.footer_txt {
    font-weight: 500;
    text-align: center;
}
.footer_arrow {
    position: absolute;
}
@media (min-width: 768px) {
    .footer {
        padding: 60em 0;
    }
    .footer_txt {
        font-size: 12em;
    }
    .footer_arrow {
        width: 40em;
        right: 70em;
        bottom: 105em;
    }
}
@media (max-width: 767px) {
    .footer {
        padding: 60em 0;
    }
    .footer_txt {
        font-size: 20em;
        line-height: 1.4;
    }
    .footer_arrow {
        width: 80em;
        right: 20em;
        bottom: 132em;
    }
}
