@charset "utf-8";

#main .content{ background-color: #ffffff; position: relative; }
#main .info_content { background-color: #ffd6d6; padding-bottom: 80px;}
#main .info_content p { line-height: 1.5 !important;  color: #111;}
#main .info_content .font_bold { font-weight: bold;}
#main .info_content .copycenter{text-align: center;}
#main .info_content .yellow {color: #ffdf5e;}
#main .info_content .red {color: #99102b;}
#main .info_content .price_waku { display: inline-block;  padding: 0.1em 0.4em; background-color: #fff;  border: 1px solid #111; font-size: 0.9rem;}
#main .info_content .waku_cir { display: inline-block;  padding: 0.1em 0.4em; border-radius: 100px; background-color: #99102b; color: #FFF; font-size: 0.9rem;}
#main .info_content .sizedown { font-size: 0.8rem;}
#main .info_content .caption { padding-top: 2%; font-size: 0.8rem;}
#main .info_content .textcenter { text-align: center;}
#main .info_content .textindent { letter-spacing: -0.08em;}

#main .title .title_cap { text-align: center; font-size: 0.8rem; margin-top:5%;}

#main .info_navi { width: 86%; margin: 7% auto 0;}
#main .info_navi .navi_line {width: 90%; margin: auto; height: 140px; display: flex; align-items: center; background-image: url(../image/bg_navi.png);  background-repeat: no-repeat;  background-position: center bottom;  background-size: 100% auto; }

#main .novelty { width: 80%; padding: 8%; margin: 15% auto 0; border-radius: 30px; background-color: #99102b; box-sizing: border-box;}
#main .novelty > .title { text-align: center;}
#main .novelty  .date { text-align: center; padding: 4% 0 0 0; color: #FFF; font-size: 0.9rem;}
#main .novelty  .copy { padding: 4% 0 0 0; color: #FFF; font-size: 1rem;}
#main .novelty  .btn {margin-top: 6%; position: relative; display: flex; align-items: center; justify-content: center;  background: #fff;  color: #99102b;  border-radius: 9999px; padding: 4%;text-decoration: none; font-size: 1rem; box-shadow: 0 6px 0px rgba(0, 0, 0, 0.8);}
#main .novelty  .btn .arrow {content: ""; position: absolute; right: 16px; top: 50%; transform: translateY(-50%); width: 0; height: 0; border-top: 6px solid transparent; border-bottom: 6px solid transparent; border-left: 8px solid #99102b;}

#main .loversday { width: 80%; margin: 15% auto 0;}
#main .loversday .title img {  width: 100%;  height: auto;  display: block;}
#main .loversday .loversday_body { width: 100%; padding: 0 8% 8% 8%; box-sizing: border-box; background-image: url(../image/bg01.png); background-position: center bottom;  background-size: 100% auto;}
#main .loversday .loversday_body > .date { text-align: center; padding: 4% 0 0 0; color: #FFF; font-size: 0.9rem;}
#main .loversday .loversday_body > .copy { padding: 4% 0 0 0; color: #FFF; font-size: 1rem;}
#main .loversday .loversday_body > .caption {color: #FFF;}
#main .loversday .loversday_body > .head { padding: 3%; margin-top: 8%; color: #FFF; font-size: 1rem; border: solid 1px #FFF; text-align: center;}
#main .loversday .special { margin: 40px auto 0 auto; width: 90% ;}
#main .loversday .special .number { padding: 4%; margin-top: 8%; border-radius: 10px; background-color: #ffdf5e; text-align: center;}
#main .loversday .special .title { font-size: 1.2rem; font-weight: bold; color: #FFF; text-align: center; padding-top: 5%;}
#main .loversday .detail_btn { position: relative; height: 48px; background-color: #FFF; cursor: pointer; padding: 4% 0; margin-top: 10%;}
#main .loversday .detail_btn .title {  position: absolute; left: 0;  right: 48px; /* ← アイコン分を除外 */ top: 50%;  transform: translateY(-50%); color: #99102b; font-size: 1rem; text-align: center;}
#main .loversday .detail_btn .icon { position: absolute; right: 16px; top: 50%; transform: translateY(-50%); font-size: 20px; width: 24px; text-align: center; color: #99102b;}
#main .loversday .detail_content { max-height: 0; overflow: hidden; transition: max-height 1s ease;}
#main .loversday .detail.is-open .detail_content { max-height: 9999px; /* 十分大きめ */}
#main .loversday .special_wrap { margin: 3% auto 0 auto; width: 100% ; padding: 8%; box-sizing: border-box; background-color: #ffffcb;}
#main .loversday .special_wrap .number { padding: 4%; border-radius: 10px; background-color: #ffdf5e; text-align: center;}
#main .loversday .special_wrap .title { font-size: 1.2rem; color: #750c21; text-align: center; padding-top: 5%; font-weight: bold;}
#main .loversday .special_wrap .head_ci { width: 100%; background-color: #750c21; border-radius: 100px; text-align: center; padding: 2%; color: #FFF; font-size: 1rem; margin-top: 5%; box-sizing: border-box;}
#main .loversday .special_wrap .head_sq { width: 100%; background-color: #750c21; text-align: center; padding: 2%; color: #FFF; font-size: 1rem; margin-top: 5%; box-sizing: border-box;}
#main .loversday .special_wrap .head_choco { position: relative; display: block; width: 100%; padding: 5%; margin-top:40px; color: #750c21; box-sizing: border-box;background-color: #FFF;border-top:solid 2px #750c21; border-bottom:solid 2px #750c21;}
#main .loversday .special_wrap .head_choco .shop_name { font-size: 1.1rem; color: #750c21;  font-weight: bold; text-align: center;}
#main .loversday .special_wrap .head_choco .chef_photo {text-align: center; padding-top: 4%;}
#main .loversday .special_wrap .head_choco .name { font-size: 0.8rem; color: #750c21; font-weight: normal; text-align: center; padding-top: 4%;}
#main .loversday .special_wrap .copy { padding: 3% 0 0 0; color: #750c21; font-size: 0.9rem;}
#main .loversday .special_wrap .caption { color: #750c21;}
#main .loversday .special_wrap .head_choco::before,#main .loversday .special_wrap .head_choco::after { content: ""; position: absolute; left: 0; width: 100%; height: 1px; background-color: #910f29;}
#main .loversday .special_wrap .head_choco::before { top: 1px; /* double 3px の内側 */}
#main .loversday .special_wrap .head_choco::after { bottom: 1px;}
#main .loversday .special_wrap .application {margin-top: 6%; position: relative; display: flex; align-items: center; justify-content: center;  background: #ffdf5e; border: solid 2px #750c21;  color: #750c21;  border-radius: 9999px; padding: 6%;text-decoration: none; font-size: 1rem; font-weight: bold;}
#main .loversday .special_wrap .application .arrow {content: ""; position: absolute; right: 16px; top: 50%; transform: translateY(-50%); width: 0; height: 0; border-top: 6px solid transparent; border-bottom: 6px solid transparent; border-left: 8px solid #750c21;}
#main .loversday .special_wrap .chef { display: flex; width: 100%; padding: 4%; box-sizing: border-box; margin: 6% 0 0 0 ; background-color: #FFF; justify-content: space-between; align-items: center;}
#main .loversday .special_wrap .chef .photo { width: 28%;}
#main .loversday .special_wrap .chef .copy { width: 62%;}
#main .loversday .special_wrap .photo { text-align: center; padding-top: 4%;}

#main .waku_wrap { width: 80%; margin: 8% auto 0; padding: 5%; box-sizing: border-box; background: #fff6e9; border: solid 2px #99102b;}
#main .waku_wrap .date { text-align: center; padding: 4% 0 0 0; color: #111; font-size: 0.9rem;}
#main .waku_wrap .copy { padding: 4% 0 0 0; color: #111; font-size: 1rem;}
#main .waku_wrap .caption {color: #111;}
#main .waku_wrap .head_waku {padding: 1%; margin-top: 4%; background-color: #FFF; color: #111; font-size: 1rem; border: solid 1px #333; text-align: center; font-size: 0.9rem;}
#main .waku_wrap li { font-size: 1rem; line-height: 1.5; text-indent: -1em; /* マーカー分左にずらす */ padding-left: 1em;}

#main .gachaland .title {position: relative; text-align: center; padding-top: 10%;}
#main .gachaland .title .title_sub {position: absolute; width: 22%; left: -10px; top: -10px;}

#main .stamprally .title {position: relative; text-align: center;}
#main .stamprally .title .title_sub {position: absolute; width: 44%; right: -40px; top: -50px;}
#main .stamprally .salesfloor { width: 100%; background-color: #f0dbdf; border-radius: 20px; padding: 5%; margin-top: 8%; box-sizing: border-box; position: relative; display: flex;
  justify-content: center;  flex-wrap:wrap}
#main .stamprally .salesfloor .title { position: absolute; display: inline-block; border-radius: 999px; margin: auto; background-color: #99102b; padding: 1% 4%; color: #FFF; font-size: 0.9rem; top: -12px; }
#main .stamprally .salesfloor .copy { padding: 4% 0 0 0; color: #111; font-size: 1rem; width: ; }
#main .stamprally .under { position: relative; padding-bottom: 6%;}
#main .stamprally .under::after { content: ""; position: absolute; top: 90%;  left: 50%; transform: translateX(-50%);  width: 0; height: 0; border-left: 10px solid transparent; border-right: 10px solid transparent; border-top: 12px solid #111;}

#main .app_wrap { width: 80%; margin: 8% auto 0; box-sizing: border-box; background: #fff6e9; border: solid 2px #99102b;}
#main .app_wrap .app_title { background-color: #99102b; padding: 10% 0; text-align: center; position: relative;}
#main .app_wrap .app_title .title_sub {position: absolute; width: 18%; left: 10px; top: 10px;}
#main .app_wrap .app_inner { padding:0 5% 5% 5%;}
#main .app_wrap .date { text-align: center; padding: 4% 0 0 0; color: #111; font-size: 0.9rem;}
#main .app_wrap .copy { padding: 4% 0 0 0; color: #111; font-size: 1rem;}
#main .app_wrap .caption {color: #111;}
#main .app_wrap .datespace {padding-top: 4%; font-size: 1rem; line-height: 1.5; display: flex; align-items: flex-start; justify-content: center; }
#main .app_wrap .term {display: flex; align-items: flex-start; justify-content: center;}
#main .app_wrap .term p { display: inline-block; font-size: 0.9em;}#main .app_wrap .head_waku {padding: 1%; margin-top: 8%; background-color: #FFF; color: #111; font-size: 1rem; border: solid 1px #333; text-align: center; font-size: 0.9rem;}
#main .app_wrap .top_dotline { margin-top: 20px; background: /* ドットの点線 */ radial-gradient(circle, #111 1px, transparent 2px)   top center / 10px 8px repeat-x, /* ベース背景 */ #fff6e9;}
#main .app_wrap .title {position: relative; text-align: center; padding-top: 10%;}
#main .app_wrap .title .title_sub {position: absolute; width: 36%; right: -14px; top: 32px;}
#main .app_wrap .set_wrap { display: flex; justify-content: space-between; flex-wrap: wrap; width: 100%;}
#main .app_wrap .set_wrap .set { width: 26%; margin-top: 5%;}
#main .app_wrap .set_wrap .set_copy { width: 71%; color: #111; font-size: 1rem; margin-top: 5%; line-height: 1.5;}
#main .app_wrap .mikoukai { margin-top: 5%; padding: 4%; text-align: center; font-size: 1rem; color: #FFF; font-weight: bold; background-color: #111;}


/* 追加分 */
#main .kaijo_event { width: 80%; margin: 15% auto 0;}
#main .kaijo_event p { color: #fff;}
#main .kaijo_event .title img {  width: 100%;  height: auto;  display: block;}
#main .kaijo_event .kaijo_event_body { width: 100%; padding: 0 8% 0% 8%; box-sizing: border-box; background-image: url(../image/bg01.png); background-position: center bottom;  background-size: 100% auto;}
#main .kaijo_event .copy { padding: 4% 0 0 0; font-size: 1rem;}
#main .kaijo_event .date { text-align: center; padding: 4% 0 0 0; color: #FFF; font-size: 0.9rem;}
#main .kaijo_event .sanka_waku { display: inline-block;  padding: 0.1em 0.4em;  border: 1px solid #fff; font-size: 0.9rem;}
#main .kaijo_event .kaijo_event_content1 { padding-top: 4%;}
#main .kaijo_event .kaijo_event_content2 { padding-top: 12%;}
#main .kaijo_event .kaijo_event_content .kaijo_event_title { background-color: #ffdf5e; padding: 5% 0; width: 100%; position: relative; text-align: center; margin-top: 6%;}
#main .kaijo_event .kaijo_event_content1 .title_sub {position: absolute; width: 24%; right: 10px; top: -10px;}
#main .kaijo_event .kaijo_event_content2 .title_sub {position: absolute; width: 28%; right: -5px; top: -20px;}
#main .kaijo_event .kaijo_event_content .seminar{ padding-bottom: 5%;}
#main .kaijo_event .kaijo_event_content .seminar_date { padding: 0 0 0 3% ; border-left: #ffdf5e 5px solid; box-sizing: border-box; font-size: 1rem; color: #ffdf5e; margin-top: 5%; }
#main .kaijo_event .kaijo_event_content .copy { padding: 2% 0 0 0; font-size: 0.9rem;}
#main .kaijo_event .kaijo_event_content .app_link_btn {margin-top: 6%; position: relative; display: flex; align-items: center; justify-content: center; text-align: center;  background: #fff; border-radius: 9999px; padding: 6%;text-decoration: none; font-size: 1rem; line-height: 1.5; font-weight: bold; color: #004ea2;}
#main .kaijo_event .kaijo_event_content .app_link_btn .arrow {content: ""; position: absolute; right: 16px; top: 50%; transform: translateY(-50%); width: 0; height: 0; border-top: 6px solid transparent; border-bottom: 6px solid transparent; border-left: 8px solid #004ea2;}
#main .kaijo_event .kaijo_event_content .talkevent_content { padding: 5% 0; position: relative;}
#main .kaijo_event .kaijo_event_content .talkevent_content .talkevent_title { font-size: 0.9rem; color: #ffdf5e;  padding-top: 2%;}
#main .kaijo_event .kaijo_event_content .talkevent_content .talkevent_date { font-size: 0.9rem; padding-top: 2%;}
#main .kaijo_event .kaijo_event_content .talkevent_content .copy { font-size: 0.9rem; padding-top: 2%;}
#main .kaijo_event .kaijo_event_content .talkevent_content .photo { position: absolute; width: 35%; right: 0; top: 25px;}
.talkevent_content + .talkevent_content { background: /* ドットの点線 */ radial-gradient(circle, #FFF 1px, transparent 2px)   top center / 10px 8px repeat-x, /* ベース背景 */ #910f29; }
#main .kaijo_event .kaijo_event_content .schedule_content { padding: 8% 0 5% 0; position: relative;}
#main .kaijo_event .kaijo_event_content .schedule_content .schedule_date_wrap { padding: 0 0 0 3% ; border-left: #ffdf5e 5px solid; box-sizing:}
#main .kaijo_event .kaijo_event_content .schedule_content .schedule_date { font-size: 0.9rem; color: #ffdf5e; }
.schedule_date +  .schedule_date { padding-top: 3%;}
#main .kaijo_event .kaijo_event_content .schedule_content .copy { font-size: 0.9rem; padding-top: 2%;}
#main .kaijo_event .kaijo_event_content .schedule_content .photo { position: absolute; width: 35%; right: 0; top: 25px;}
.schedule_content + .schedule_content { background: /* ドットの点線 */ radial-gradient(circle, #FFF 1px, transparent 2px)   top center / 10px 8px repeat-x, /* ベース背景 */ #910f29; }
#main .set_content_wrap .set_content { padding-top: 12%;}
#main .set_content_wrap .set_content .set_title {padding: 2% 0; background-color: #99102b; text-align: center;}
#main .set_content_wrap .set_content .photo { text-align: center; padding-top: 4%;}
#main .set_content_wrap .set_content .product {display: flex; justify-content: center; padding-top: 4%; font-size: 1rem; }
#main .set_content_wrap .set_detail_btn { position: relative; height: 48px; background-color: #111; cursor: pointer; margin-top: 5%;}
#main .set_content_wrap .set_detail_btn .title {  position: absolute; left: 0;  right: 0px; /* ← アイコン分を除外 */ top: 50%;  transform: translateY(-50%); color: #FFF; font-size: 1rem; text-align: center; padding: 0;}
#main .set_content_wrap .set_detail_btn .icon { position: absolute; right: 16px; top: 50%; transform: translateY(-50%); font-size: 20px; width: 24px; text-align: center; color: #FFF;}
#main .set_content_wrap .set_content .set_detail { max-height: 0; overflow: hidden; transition: max-height 1s ease;}
#main .set_content_wrap .set_content.is-open .set_detail { max-height: 9999px; /* 十分大きめ */}
#main .set_content_wrap .set_content .set_detail_body { padding: 5%; border: #111 2px solid; background-color: #fff;}
#main .set_content_wrap .set_content .set_detail_body .set_name { font-size: 1rem; font-weight: bold; }
#main .set_content_wrap .set_content .set_detail_body .set_copy { padding-top: 3%; font-size: 0.9rem; }
.set_copy + .set_name { padding-top: 7%; margin-top: 5%; background: /* ドットの点線 */ radial-gradient(circle, #99102b 1px, transparent 2px)   top center / 10px 8px repeat-x, /* ベース背景 */ #FFF;}

#main .cosme { width: 80%; margin: 8% auto 0;padding: 5%;  box-sizing: border-box; background: #fff6e9; border: solid 2px #99102b;}
#main .cosme .title { text-align: center;}
#main .cosme .copy { padding: 4% 0 0 0; font-size: 1rem;}
#main .cosme .date { text-align: center; padding: 4% 0 0 0; font-size: 0.9rem;}
#main .cosme .cosme_detail_btn { position: relative; height: 48px; background-color: #111; cursor: pointer; margin-top: 5%;}
#main .cosme .cosme_detail_btn .title {  position: absolute; left: 0;  right: 0px; /* ← アイコン分を除外 */ top: 50%;  transform: translateY(-50%); color: #FFF; font-size: 1rem; text-align: center; padding: 0;}
#main .cosme .cosme_detail_btn .icon { position: absolute; right: 16px; top: 50%; transform: translateY(-50%); font-size: 20px; width: 24px; text-align: center; color: #FFF;}
#main .cosme .cosme_detail { max-height: 0; overflow: hidden; transition: max-height 1s ease;}
#main .cosme.is-open .cosme_detail { max-height: 9999px; /* 十分大きめ */}
#main .cosme .cosme_detail_body { padding: 5%; border: #111 2px solid; background-color: #fff;}
#main .cosme .cosme_detail_body .shop_name { font-size: 1rem; font-weight: bold; color: #99102b;}
#main .cosme .cosme_detail_body .copy { padding-top: 3%; font-size: 0.9rem; }
#main .cosme .cosme_detail_body .limit { padding-top: 3%; font-size: 1rem; font-weight: bold; }
.limit + .shop_name { padding-top: 7%; margin-top: 5%; background: /* ドットの点線 */ radial-gradient(circle, #99102b 1px, transparent 2px)   top center / 10px 8px repeat-x, /* ベース背景 */ #FFF;}

#main .shoppingbag { width: 80%; margin: 8% auto 0;padding: 5%;  box-sizing: border-box; background: #fff6e9; border: solid 2px #99102b;}
#main .shoppingbag .shoppingbag_title { text-align: center; position: relative;}
#main .shoppingbag .shoppingbag_title .title_sub {position: absolute; width: 40%; right: -30px; top: -30px;}
#main .shoppingbag .photo { padding-top: 5%; text-align: center;}
#main .shoppingbag .date { text-align: center; padding: 4% 0 0 0; font-size: 0.9rem;}
#main .shoppingbag .copy { padding: 4% 0 0 0; font-size: 1rem;}

#main .photopanel { width: 80%; margin: 8% auto 0;padding: 5%;  box-sizing: border-box; background: #fff6e9; border: solid 2px #99102b;}
#main .photopanel .photopanel_title { text-align: center; position: relative;}
#main .photopanel .photopanel_title .title_sub {position: absolute; width: 40%; right: -15px; top: -45px;}
#main .photopanel .photo { padding-top: 5%; text-align: center;}
#main .photopanel .date { text-align: center; padding: 4% 0 0 0; font-size: 0.9rem;}
#main .photopanel .copy { padding: 4% 0 0 0; font-size: 1rem;}

#main .instagram { padding: 10% 10% 30% 10%; background-image: url(../image/bg_insta.svg); background-repeat: no-repeat; background-position: top; background-size: 100% auto;}
#main .instagram .insta_icon { text-align: center; margin-top: -55px;}
#main .instagram .title { text-align: center; font-size: 1.1rem; font-weight: bold; color: #111; line-height: 1.5;}
#main .instagram .photo { padding-top: 5%; text-align: center;}
#main .instagram .copy { padding: 7% 0 0 0; font-size: 1rem; color: #111; line-height: 1.5;}
#main .instagram .insta_btn {margin-top: 6%; position: relative; display: flex; align-items: center; justify-content: center; text-align: center; background: #99102b;  color: #fff;  border-radius: 9999px; padding: 4%;text-decoration: none; font-size: 1rem; box-shadow: 0 6px 0px rgba(0, 0, 0, 0.8); line-height: 1.5;}
#main .instagram  .insta_btn .arrow {content: ""; position: absolute; right: 16px; top: 50%; transform: translateY(-50%); width: 0; height: 0; border-top: 6px solid transparent; border-bottom: 6px solid transparent; border-left: 8px solid #fff;}
#main .instagram  .app_btn {margin-top: 6%; position: relative; display: flex; align-items: center; justify-content: center; text-align: center; background: #004ea2;  color: #fff;  border-radius: 9999px; padding: 4%;text-decoration: none; font-size: 1rem; box-shadow: 0 6px 0px rgba(0, 0, 0, 0.8); line-height: 1.5;}
#main .instagram  .app_btn .arrow {content: ""; position: absolute; right: 16px; top: 50%; transform: translateY(-50%); width: 0; height: 0; border-top: 6px solid transparent; border-bottom: 6px solid transparent; border-left: 8px solid #fff;}






@media screen and (max-width: 780px){ /*780px以下のcss*/
}
@media screen and (max-width: 480px){ /*480px以下のcss*/
}
