@charset "UTF-8";
/* ###################  ブレイクポイントの設定  ################### */
/*ブレイクポイント*/
/* ####  マージン　パディング  #####*/
.mt_00 { margin-top: 0px !important; }

.mb_00 { margin-bottom: 0px !important; }

.pt_00 { padding-top: 0px !important; }

.pb_00 { padding-bottom: 0px !important; }

.mt_10 { margin-top: 10px !important; }

.mb_10 { margin-bottom: 10px !important; }

.pt_10 { padding-top: 10px !important; }

.pb_10 { padding-bottom: 10px !important; }

.mt_20 { margin-top: 20px !important; }

.mb_20 { margin-bottom: 20px !important; }

.pt_20 { padding-top: 20px !important; }

.pb_20 { padding-bottom: 20px !important; }

.mt_30 { margin-top: 30px !important; }

.mb_30 { margin-bottom: 30px !important; }

.pt_30 { padding-top: 30px !important; }

.pb_30 { padding-bottom: 30px !important; }

.mt_40 { margin-top: 40px !important; }

.mb_40 { margin-bottom: 40px !important; }

.pt_40 { padding-top: 40px !important; }

.pb_40 { padding-bottom: 40px !important; }

.mt_50 { margin-top: 50px !important; }

.mb_50 { margin-bottom: 50px !important; }

.pt_50 { padding-top: 50px !important; }

.pb_50 { padding-bottom: 50px !important; }

.mt_60 { margin-top: 60px !important; }

.mb_60 { margin-bottom: 60px !important; }

.pt_60 { padding-top: 60px !important; }

.pb_60 { padding-bottom: 60px !important; }

.mt_70 { margin-top: 70px !important; }

.mb_70 { margin-bottom: 70px !important; }

.pt_70 { padding-top: 70px !important; }

.pb_70 { padding-bottom: 70px !important; }

.mt_80 { margin-top: 80px !important; }

.mb_80 { margin-bottom: 80px !important; }

.pt_80 { padding-top: 80px !important; }

.pb_80 { padding-bottom: 80px !important; }

.mt_90 { margin-top: 90px !important; }

.mb_90 { margin-bottom: 90px !important; }

.pt_90 { padding-top: 90px !important; }

.pb_90 { padding-bottom: 90px !important; }

.mt_100 { margin-top: 100px !important; }

.mb_100 { margin-bottom: 100px !important; }

.pt_100 { padding-top: 100px !important; }

.pb_100 { padding-bottom: 100px !important; }

/*    タグリセット      */
html { scroll-behavior: smooth; }

html, body { margin: 0; padding: 0; font-family: "Noto Sans", 'NotoSansCJKjp', "Noto Sans CJK JP", "Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","メイリオ","Meiryo","ＭＳ Ｐゴシック",sans-serif; }

ul, dl, ol { margin: 0; padding: 0; }

main, section, article, div { box-sizing: border-box; }

li { margin: 0; padding: 0; list-style: none; }

a { text-decoration: none; box-sizing: border-box; }

img { vertical-align: top; }

@media screen and (max-width: 640px) { .disp_pc { display: none !important; } }

@media screen and (max-width: 800px) { .disp_pad { display: none !important; } }

.disp_sp { display: none !important; }
@media screen and (max-width: 640px) { .disp_sp { display: block !important; } }

.center { text-align: center; }

.go_top a { display: block; color: #fff; background: #000; text-decoration: none; padding: 8px 0; width: 90%; margin: auto; text-align: center; }

input[type="submit"]:hover, input[type="image"]:hover { cursor: pointer; }

.cart_area { background: #c00; padding: 10px; box-sizing: border-box; margin-bottom: 10px; }
.cart_area .cart_h { color: #fff; text-align: center; padding-bottom: 8px; }
.cart_area form { background: #fff; display: flex; align-items: center; gap: 10px; box-sizing: border-box; }
@media screen and (max-width: 640px) { .cart_area form { flex-wrap: wrap; padding: 10px; text-align: center; } }
.cart_area form .cart_img_area { width: 30%; max-width: 300px; }
@media screen and (max-width: 640px) { .cart_area form .cart_img_area { text-align: center; width: 100%; max-width: inherit; } }
.cart_area form .cart_info_area { width: 70%; padding: 0 10px; text-align: center; }
@media screen and (max-width: 640px) { .cart_area form .cart_info_area { width: 100%; padding: 0; } }
.cart_area form p { color: #c00; font-size: 28pt; font-weight: bold; margin: 0; }
@media screen and (max-width: 640px) { .cart_area form p { font-size: 6.5vw; } }
.cart_area form p small { font-size: 10pt; }
@media screen and (max-width: 640px) { .cart_area form p small { font-size: 8pt; } }
.cart_area form button { background: #000; color: #fff; border: none; font-size: 16pt; padding: 4px; font-weight: bold; border-radius: 4px; width: 80%; margin: 20px auto 0 auto; display: block; }
@media screen and (max-width: 640px) { .cart_area form button { width: 80%; font-size: 5vw; line-height: 1; padding: 10px 0px; } }
.cart_area form button:hover { cursor: pointer; }
.cart_area h3 { font-size: 16pt; margin: 0; }
@media screen and (max-width: 640px) { .cart_area h3 { font-size: 4.3vw; } }
.cart_area .cart_img { width: 100%; max-width: 260px; height: auto; }

.kiyaku { margin: 40px auto; border-width: 3px; border-style: solid; border-color: #333; padding: 10px 20px; border-radius: 8px; box-sizing: border-box; }
@media screen and (max-width: 640px) { .kiyaku { width: 96%; } }
.kiyaku dl { margin: 0; padding: 0; }
.kiyaku dt { margin: 0 0 6px 0; padding: 10px 10px 0 10px; font-weight: 700; font-size: 14pt; }
@media screen and (max-width: 640px) { .kiyaku dt { font-size: 10pt; } }
.kiyaku dd { font-size: 12pt; margin: 0; padding: 0 10px 10px 10px; border-bottom: 1px solid #ddd; line-height: 1.4; }
@media screen and (max-width: 640px) { .kiyaku dd { font-size: 8pt; } }
.kiyaku dd:last-child { border: none; }
.kiyaku dd ul { margin-left: 1rem; }
.kiyaku dd li { list-style: disc; margin-bottom: 6px; }

.go_top a { display: block; color: #fff; background: #000; text-decoration: none; padding: 8px 0; width: 90%; margin: auto; text-align: center; }

html { scroll-behavior: smooth; }

body { font-family: "Noto Sans JP", "Yu Gothic Medium", "Yu Gothic", "游ゴシック体", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN", "Meiryo", "メイリオ", "Roboto", sans-serif; font-optical-sizing: auto; font-weight: 400; font-style: normal; }

#caressa_gw2026 { width: 100%; margin: 0 auto 80px auto; padding-bottom: 20px; max-width: 800px; /* 左右を少し外に出す（数値は好みで調整） */ }
@media screen and (max-width: 640px) { #caressa_gw2026 { margin-bottom: 40px; } }
#caressa_gw2026 img, #caressa_gw2026 input[type="image"] { width: 100%; height: auto; }
#caressa_gw2026 section { max-width: 800px; width: 100%; margin: auto; }
@media screen and (max-width: 640px) { #caressa_gw2026 section { width: 92%; } }
#caressa_gw2026 .coupon { padding: 40px 0; background: #fff; }
#caressa_gw2026 .coupon h3 { color: #fff; margin: 0; padding: 0 0 10px 0; font-size: clamp(22px, 4vw, 32px); }
#caressa_gw2026 .coupon h4 { margin: 0; padding: 0 0 10px 0; font-size: clamp(22px, 4vw, 32px); color: #5A2008; }
#caressa_gw2026 .coupon article { background: #CB7B40; width: 80%; margin: auto; border-radius: 10px; text-align: center; padding: 10px; }
@media screen and (max-width: 640px) { #caressa_gw2026 .coupon article { width: 100%; padding: 5px; } }
#caressa_gw2026 .coupon article div { background: #fff; margin: auto; padding: 20px; }
#caressa_gw2026 .coupon article .text { font-size: clamp(16px, 4vw, 20px); margin: 0 0 6px 0; }
#caressa_gw2026 .coupon article button { background: #CB7B40; display: block; padding: 12px 36px; color: #fff; font-size: 28px; font-weight: 700; border: none; border-radius: 10px; text-align: center; cursor: pointer; width: 90%; margin: auto; /* 下の影 */ box-shadow: 3px 3px 0 #aaa; }
#caressa_gw2026 .coupon article p { font-weight: bold; color: #5A2008; }
#caressa_gw2026 .coupon article dl { margin: 0; }
#caressa_gw2026 .coupon article dl span { font-size: clamp(20px, 5vw, 32px); }
#caressa_gw2026 .coupon article dt { margin: 0 0 0px 0; display: inline-block; padding: 4px 20px; border-radius: 4px; color: #5A2008; font-weight: bold; font-size: clamp(16px, 4vw, 22px); }
#caressa_gw2026 .coupon article dd { margin: 0 0 20px 0; color: #333; font-size: clamp(16px, 4vw, 22px); font-weight: bold; }
#caressa_gw2026 .coupon article dd li { font-size: clamp(12px, 4vw, 18px); font-weight: normal; text-align: left; }
#caressa_gw2026 .select_cart { margin-bottom: 40px; }
#caressa_gw2026 .select_cart article { display: flex; margin-bottom: 20px; align-items: center; flex-wrap: wrap; }
@media screen and (max-width: 640px) { #caressa_gw2026 .select_cart article { align-items: flex-start; padding-bottom: 20px; } }
#caressa_gw2026 .select_cart article .cap { width: 100%; font-size: 9pt; margin-top: 6px; margin-bottom: 10px; }
#caressa_gw2026 .select_cart .set { text-align: center; background: #F8EBD8; color: #7B3F0F; padding: 6px 0; margin: 20px 0 0 0; font-size: clamp(16px, 4.5vw, 22px); }
@media screen and (max-width: 640px) { #caressa_gw2026 .select_cart .set { margin-bottom: 10px; } }
#caressa_gw2026 .select_cart h3 { margin: 0 0 10px 0; font-size: clamp(14px, 3.6vw, 22px); }
@media screen and (max-width: 640px) { #caressa_gw2026 .select_cart h3 { line-height: 1.2; } }
#caressa_gw2026 .select_cart p { margin: 0; }
#caressa_gw2026 .select_cart article + p { margin: -16px 0 20px 0; font-size: 9pt; }
#caressa_gw2026 .select_cart .img_area { margin-right: 20px; width: 30%; }
@media screen and (max-width: 640px) { #caressa_gw2026 .select_cart .img_area { width: 90%; margin-right: 10px; } }
#caressa_gw2026 .select_cart .img_area img { width: auto; height: auto; max-height: 200px; margin: 0; }
@media screen and (max-width: 640px) { #caressa_gw2026 .select_cart .img_area img { width: 100%; height: auto; max-height: inherit; } }
@media screen and (max-width: 640px) { #caressa_gw2026 .select_cart form { width: 100%; } }
#caressa_gw2026 .select_cart .info_area { width: calc(68% - 10px); }
@media screen and (max-width: 640px) { #caressa_gw2026 .select_cart .info_area { width: 100%; text-align: center; } }
#caressa_gw2026 .select_cart .info_col { display: flex; align-items: flex-end; flex-wrap: wrap; gap: 10px; }
@media screen and (max-width: 640px) { #caressa_gw2026 .select_cart .info_col { flex-wrap: wrap; justify-content: center; gap: 0; width: 100%; } }
#caressa_gw2026 .select_cart .info_col p { line-height: 1.2; font-size: clamp(20px, 4vw, 28px); font-weight: bold; }
@media screen and (max-width: 640px) { #caressa_gw2026 .select_cart .info_col p { text-align: center; } }
#caressa_gw2026 .select_cart .info_col div { width: 100%; }
@media screen and (max-width: 640px) { #caressa_gw2026 .select_cart .info_col div { width: 100%; } }
#caressa_gw2026 .select_cart button { background: #C19D55; color: #fff; font-weight: bold; border-radius: 200px; border: none; padding: 4px 20px; font-size: clamp(14px, 4vw, 16px); margin: 10px 0 0 0; }
@media screen and (max-width: 640px) { #caressa_gw2026 .select_cart button { width: 90%; padding: 8px 20px; } }
#caressa_gw2026 .select_cart button:hover { cursor: pointer; }
#caressa_gw2026 .select_cart a { background: #999; color: #fff; font-weight: bold; border-radius: 200px; border: none; padding: 4px 20px; font-size: clamp(14px, 4vw, 16px); margin: 10px 0 0 0; text-align: center; }
@media screen and (max-width: 640px) { #caressa_gw2026 .select_cart a { width: 90%; margin: 10px auto; display: block; padding: 8px 20px; } }
#caressa_gw2026 .select_cart span { color: #f00; }
#caressa_gw2026 .select_cart span strong { font-size: clamp(18px, 4vw, 24px); }
#caressa_gw2026 .select_cart small { font-size: 8pt; margin-left: 6px; }
#caressa_gw2026 .select_cart .js-color { margin-left: 10px; }
@media screen and (max-width: 640px) { #caressa_gw2026 .select_cart .js-color { margin-left: 0; } }
#caressa_gw2026 .gift strong { font-size: clamp(18px, 4vw, 24px); }
#caressa_gw2026 .gift article { padding-bottom: 10px; }
#caressa_gw2026 .gift .info_col { align-items: center; margin-bottom: 10px; }
@media screen and (max-width: 640px) { #caressa_gw2026 .gift .info_col { margin-bottom: 0px; align-items: center; gap: 0 10px; } }
#caressa_gw2026 .gift .info_col p { margin-bottom: 0; }
@media screen and (max-width: 640px) { #caressa_gw2026 .gift .info_col p { margin-bottom: 6px; } }
#caressa_gw2026 .swiper { position: relative; }
#caressa_gw2026 .swiper_outer { width: 90%; margin: auto; position: relative; }
#caressa_gw2026 .swiper_outer .swiper-button-prev, #caressa_gw2026 .swiper_outer .swiper-button-next { position: absolute; top: 50%; transform: translateY(-50%); z-index: 10; width: 32px; height: 32px; }
@media screen and (max-width: 640px) { #caressa_gw2026 .swiper_outer .swiper-button-prev, #caressa_gw2026 .swiper_outer .swiper-button-next { width: 20px; height: 20px; top: 54%; } }
#caressa_gw2026 .swiper_outer .swiper-button-prev { left: -5%; }
@media screen and (max-width: 640px) { #caressa_gw2026 .swiper_outer .swiper-button-prev { left: -9%; } }
#caressa_gw2026 .swiper_outer .swiper-button-next { right: -5%; }
@media screen and (max-width: 640px) { #caressa_gw2026 .swiper_outer .swiper-button-next { right: -9%; } }
#caressa_gw2026 .swiper-button-prev .swiper-navigation-icon, #caressa_gw2026 .swiper-button-next .swiper-navigation-icon { display: none !important; }
#caressa_gw2026 .swiper-button-next, #caressa_gw2026 .swiper-button-prev { width: 22px; height: 54px; /* クリック範囲 */ }
@media screen and (max-width: 640px) { #caressa_gw2026 .swiper-button-next, #caressa_gw2026 .swiper-button-prev { width: 11px; height: 27px; } }
#caressa_gw2026 .swiper-button-prev::after, #caressa_gw2026 .swiper-button-next::after { content: ""; display: block; /* これあると縦中央寄せが安定します */ width: 22px; height: 50px; margin: auto; background-repeat: no-repeat; background-size: contain; background-position: center; }
@media screen and (max-width: 640px) { #caressa_gw2026 .swiper-button-prev::after, #caressa_gw2026 .swiper-button-next::after { width: 11px; height: 27px; } }
#caressa_gw2026 .swiper-button-prev::after { background-image: url("img/arrow_left_black.svg"); }
#caressa_gw2026 .swiper-button-next::after { background-image: url("img/arrow_right_black.svg"); }
