@charset "UTF-8";

/* ----------------------------------
 Base
---------------------------------- */
body {
	font-family: 'IBM Plex Sans JP', "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W6", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color: #15181C;
}

a { color: #15181C;}

h1, .h1 { padding: 0; margin: 30px 0 20px; border: 0; font-size: 26px; font-weight: 600; text-align: center; color: #0047BA;}
h2, .h2 { padding: 0; margin: 0 0 20px; border: 0; font-size: 24px; font-weight: 600;}
h3, .h3 { padding: 0; margin: 0 0 20px; border: 0; font-size: 18px; font-weight: bold;}
h4, .h4 { padding: 0; margin: 0 0 15px; font-size: 16px; font-weight: bold; border-bottom: 0;}
h5, .h5 { padding: 0; margin: 0 0 15px; font-size: 14px; font-weight: bold;}
h6, .h6 { padding: 0; margin: 0 0 10px; font-size: 14px; font-weight: 600;}

.img-center img { font-size: 8px;}
.legend { padding: 0 0 10px 0; margin: 40px 0 20px; border-bottom: #0047BA 2px solid; font-size: 16px; font-weight: bold; color: #0047BA;}
.alert  { margin-top: 20px; margin-bottom: 20px;}

/* ----------------------------------
 Design
---------------------------------- */
.font-Roc { font-family: "roc-grotesk", sans-serif; font-weight: 800; font-style: normal;}

.design-headerline      { margin: 0 0 40px 0; text-align: center;}
.design-headerline h2   { padding: 0; margin: 0 0 10px 0; border: none; text-align: center; font-size: 54px; font-weight: 600; letter-spacing: 0.05em; line-height: 1.0; color: #0047BA;}
.design-headerline .sub { font-size: 20px; font-weight: 600; text-align: center; line-height: 1.0;}

.link-more         { width: 300px; margin: 20px auto 0;}
.link-more a       { width: 100%; height: 45px; padding: 1px 0 0 0; border: #0047BA 2px solid; border-radius: 45px; font-size: 15px; font-weight: 600; text-decoration: none; line-height: 1.0; color: #0047BA; display: flex; justify-content: center; align-items: center; background: #fff; transition: 0.3s;}
.link-more a:hover { background: #0047BA; color: #fff; box-shadow: 0px 5px 5px -3px rgba(0, 0, 0, 0.3);}

/* ----------------------------------
 Form Parts
---------------------------------- */
.form-error { color: #ff0000;}
.block-common-alert-list--items { color: #ff0000;}

/* input */
input[type="text"],
input[type="tel"],
input[type="zip"],
input[type="email"],
input[type="search"],
input[type="password"],
input[type="url"],
input[type="number"],
textarea { -webkit-appearance: none; -moz-appearance: none; min-height: 42px; padding: 4px 10px; border: #E9EEF0 1px solid; background-color: #fff;}
select   { 
	-webkit-appearance: none; -moz-appearance: none; height: 42px; padding: 4px; border: #A1A3A6 2px solid; line-height: 34px;
	background: #fff url(../../img/usr/pulldown.png?d=20250729a2) no-repeat right 5px center;
	padding-right: 20px;
	width: auto;
}
select:hover{
	border: #A1A3A6 2px solid;	
}
input[type="number"] { min-width: 50px; min-height: 42px; padding: 4px; border: #E9EEF0 1px solid; background-color: #fff; box-sizing: border-box;}

input[type="text"][name="s_name"],
input[type="text"][name="s_name2"],
input[type="text"][name="d_name"],
input[type="text"][name="d_name2"],
input[type="text"][name="s_kana"],
input[type="text"][name="s_kana2"],
input[type="text"][name="d_kana"],
input[type="text"][name="d_kana2"] { width: 200px;}

/* radio */
input[type="radio"] { -webkit-appearance: none; -moz-appearance: none; -ms-appearance: none; width: 20px; height: 20px; margin-bottom: 3px; margin-right: 5px; border: #c8c8c8 1px solid; border-radius: 10px; background: #fff; position: relative; outline: 0; transition: 0.3s;}
input[type="radio"]:before { content: ""; width: 10px; height: 10px; margin: 0; border: #FFF 1px solid; border-radius: 10px; position: absolute; left: calc(50% - 5px); top: calc(50% - 5px); display: block; background: #FFF; transition: 0.3s;}
input[type="radio"]:checked { border: #1846BA 1px solid;}
input[type="radio"]:checked:before { border: #1846BA 1px solid; background: #1846BA;}
input[type="radio"]:checked + label { color: #1846BA; font-weight: 700;}

/* checkbox */
input[type="checkbox"] { -webkit-appearance: none; -moz-appearance: none; -ms-appearance: none; width: 20px; height: 20px; margin-bottom: 3px; margin-right: 5px; border: #E9EEF0 1px solid; background: #fff; position: relative; outline: 0; transition: 0.3s;}
input[type="checkbox"]:before { transition: 0.3s;}
input[type="checkbox"]:checked { border: #1846BA 1px solid; background: #1846BA;}
input[type="checkbox"]:checked:before { content: ""; width: 10px; height: 6px; margin: 0; border-right: 2px solid #fff; border-top: 2px solid #fff; transform: rotate(135deg); position: absolute; left: calc(50% - 5px); top: calc(50% - 4px); display: block;}
input[type="checkbox"]:checked + label { font-weight: 700;}

input[name="pwd_display"] { margin-top: -5px;}
.page-estimate input[name="pwd_display"] { margin-top: 0;}

select[name*="card_y"],
select[name*="year"],
select[name*="yy_"]  { min-width: 6em; text-align: center;}
select[name*="card_method"],
select[name*="card_divide"],
select[name*="card_m"],
select[name*="month"],
select[name*="date"],
select[name*="mm_"],
select[name*="dd_"] { min-width: 4em; text-align: center;}

/* ----------------------------------
 Price
---------------------------------- */
.price { color: #15181C;}
.onsale .price { color: #CD0000;}
.default-price { font-weight: 400;}
.price::after,
.default-price::after { content: "（税込）"; font-size: 10px; font-weight: 400 !important;}
.net::after,
.net-price::after,
.default-net::after { content: "（税抜）"; font-size: 10px; font-weight: 400 !important;}
.net-price { display: none !important;}

/* ----------------------------------
 Pankuzu
---------------------------------- */
.block-topic-path { padding: 15px 0; margin: 0 0 30px 0; font-size: 12px; color: #C4CBCF;}
.block-topic-path--list li { padding-right: 1.0em;}
.block-topic-path--list a  { padding-left: 1.0em; text-decoration: none; color: #0047BA;}
.block-topic-path--list li:last-child a { color: #15181C;}
.block-topic-path--list .block-topic-path--item__home a { padding-left: 0;}

/* ----------------------------------
 Pager
---------------------------------- */
.pager { margin: 0; padding: 20px 0 50px; border: none; text-align: center;}
[class*="-pager-top"] .pager { padding-bottom: 10px;}
.page-event [class*="-pager-top"] .pager,
.page-genre [class*="-pager-top"] .pager,
.page-category [class*="-pager-top"] .pager { display: none;}
.page-event [class*="-pager-bottom"] .pager,
.page-genre [class*="-pager-bottom"] .pager,
.page-category [class*="-pager-bottom"] .pager { padding: 20px 0 50px;}
.pager-total { padding: 0; margin: 0;}
.pager-current { color: #000;}
.pagination li { width: 32px; height: 32px; padding: 0; margin: 0 5px; border: none; border-radius: 32px; color: #15181C;}
.pagination li a,
.pagination li span { width: 32px; height: 32px; padding: 2px 0 0 0; border: none; border-radius: 32px; font-size: 13px; text-decoration: none; display: flex; justify-content: center; align-items: center; transition: 0.3s;}
.pagination li a       { border: #E9EEF0 2px solid; font-weight: 600; color: #15181C; background: #E9EEF0;}
.pagination li a:hover { border: #0047BA 2px solid; font-weight: 600; color: #0047BA; background: #ffffff;}
.pagination li span    { border: #0047BA 2px solid; font-weight: 600; color: #ffffff; background: #0047BA;}
.pagination li.pager-first a,
.pagination li.pager-previous a,
.pagination li.pager-next a,
.pagination li.pager-last a { border: #ffffff 2px solid; display: block; font-size: 0; background: #fff; position: relative;}
.pagination li.pager-first a::before,
.pagination li.pager-first a::after,
.pagination li.pager-previous a::before,
.pagination li.pager-next a::before,
.pagination li.pager-last a::before,
.pagination li.pager-last a::after { content: ''; width: 8px; height: 8px; border-top: #9DA3A6 1px solid; border-left: #9DA3A6 1px solid; position: absolute; top: calc(50% - 4px); display: block;}
.pagination li.pager-first a::before    { left:   8px; transform: rotate(-45deg);}
.pagination li.pager-first a::after     { left:  14px; transform: rotate(-45deg);}
.pagination li.pager-previous a::before { left:  12px; transform: rotate(-45deg);}
.pagination li.pager-next a::before     { right: 12px; transform: rotate(135deg);}
.pagination li.pager-last a::before     { right:  8px; transform: rotate(135deg);}
.pagination li.pager-last a::after      { right: 14px; transform: rotate(135deg);}

#block_top_navigation_frame { padding: 0; margin: 0 0 40px 0; display: flex; align-items: center;}
#block_top_navigation_frame .block-goods-list-naviframe--page { display: none !important;}
#block_top_navigation_frame .block-goods-list-naviframe--sum  { font-size: 14px;}
#block_top_navigation_frame .block-goods-list-naviframe--sum .pager-total { padding: 0; margin: 0;}
#block_top_navigation_frame .block-goods-list-naviframe--sum .pager-total .pager-count { font-size: 14px;}
#block_top_navigation_frame .block-goods-list-naviframe--sum .pager-total .pager-count::before { content: '検索結果：'; font-size: 14px; display: inline-block;}
#block_top_navigation_frame .block-goods-list-naviframe--sum .pager-total .pager-count span { font-size: 18px; font-weight: 600;}

/* ----------------------------------
 Qty
---------------------------------- */
.block-goods-list--qty-order-items { display: none;}
#block_top_navigation_frame #block_top_navigation_item_qty { margin: 0 0 0 auto;}
#block_top_navigation_item_qty .block-goods-list--qty-order-items { display: block;}
#block_top_navigation_item_qty .block-goods-list--qty-order-items .block-qty--select { width: 120px; height: 40px; min-height: auto; padding: 0; margin: 0; border: none; display: inline-block; background: #fff url("../../img/usr/common/ico_sort_select_bg.png") calc(100% - 10px) center no-repeat; -webkit-background-size: 8px auto; background-size: 8px auto;}
#block_top_navigation_item_qty .block-goods-list--qty-order-items .block-qty--select select { width: 100%; height: 40px; min-height: auto; padding: 0 10px; border: #DFE4E6 1px solid; border-radius: 5px; font-size: 13px; display: flex; align-items: center; background: transparent;}
#block_top_navigation_item_qty .block-goods-list--qty-order-items .block-qty--select select option { font-size: 13px;}

/* ----------------------------------
 Sort
---------------------------------- */
.block-goods-list--sort-order-items { display: none;}
#block_top_navigation_frame #block_top_navigation_item_sort { margin: 0 0 0 5px;}
#block_top_navigation_item_sort .block-goods-list--sort-order-items { width: 120px; max-width: 120px; padding: 0; margin: 0; border: none; display: flex; align-items: center;}
#block_top_navigation_item_sort .block-goods-list--sort-order-items .block-sort--select { width: 120px; height: 40px; min-height: auto; padding: 0; margin: 0; border: none; display: inline-block; background: #fff url("../../img/usr/common/ico_sort_select_bg.png") calc(100% - 10px) center no-repeat; -webkit-background-size: 8px auto; background-size: 8px auto;}
#block_top_navigation_item_sort .block-goods-list--sort-order-items .block-sort--select select { width: 100%; height: 40px; min-height: auto; padding: 0 10px; border: #DFE4E6 1px solid; border-radius: 5px; font-size: 13px; display: flex; align-items: center; background: transparent;}
#block_top_navigation_item_sort .block-goods-list--sort-order-items .block-sort--select select option { font-size: 13px;}

/* ----------------------------------
 Style
---------------------------------- */
#block_top_navigation_frame #block_top_navigation_item_style { margin: 0 0 0 5px; display: none !important;}
.block-goods-list--display-style-items { width: auto; padding: 0; margin: 0; /*display: flex;*/ align-items: center; display: none !important;}
.block-goods-list--display-style-items .style-item { width: 35px; height: 35px; display: flex; justify-content: center; align-items: center;}
.block-goods-list--display-style-items .style-item a,
.block-goods-list--display-style-items .style-item span { width: 35px; height: 35px; font-size: 0; color: #fff; display: flex; justify-content: center; align-items: center; -webkit-background-size: 22px 22px; background-size: 22px 22px; background-position: center center; background-repeat: no-repeat;}
.block-goods-list--display-style-items .style-item.style-P a    { background-image: url("../../img/usr/common/ico_style_p.png");}
.block-goods-list--display-style-items .style-item.style-P span { background-image: url("../../img/usr/common/ico_style_p_on.png");}
.block-goods-list--display-style-items .style-item.style-T a    { background-image: url("../../img/usr/common/ico_style_t.png");}
.block-goods-list--display-style-items .style-item.style-T span { background-image: url("../../img/usr/common/ico_style_t_on.png");}

/* ----------------------------------
 Button
---------------------------------- */
.action .btn   { min-width: 200px; border-width: 2px; border-radius: 40px;}
.btn-default   { border: 2px solid #DFE4E6; color: #15181C; background: #fff;}
.btn-primary   { border: 2px solid #0047BA; color: #fff; background: #0047BA;}
.btn-secondary { border: 2px solid #9d9896; color: #fff; background: #9d9896;}
.btn-danger    { border: 2px solid #15181C; color: #fff; background: #15181C;}

.star-base     { width: 110px; height: 22px; background-position: 0 0; background-size: 110px 44px;}
.star-select   { width: 110px; height: 22px; background-position: -110px -22px; background-size: 110px 44px;}
.fieldset .form-control { padding-left: 12px;}

.block-goods-order-item-button .block-loading-min--ball::before,
.block-add-cart .block-loading-min--ball::before { background-color: #fff;}

/* ----------------------------------
 Fieldset
---------------------------------- */
.fieldset { border-top: #e5e5e5 1px solid;}
.fieldset .form-group,
.fieldset .form-group:last-child { border: none; border-bottom: #e5e5e5 1px solid;}
.required:after { content: "必須"; padding: .2em .6em; border-radius: .25em; font-size: 11px; text-align: center; white-space: nowrap; vertical-align: baseline; color: #fff; display: inline-block; background-color: #CD0000;}


/* ----------------------------------
 ピンクプロモーション開始対応
---------------------------------- */
.page-top.page-top--pink .design-headerline * { color: #F34E9A;}
.page-top.page-top--pink .link-more a { border-color: #F34E9A; color: #fff; background: #F34E9A;}
.page-top.page-top--pink .link-more a:hover { background: #fff; color: #F34E9A;}