@charset "utf-8";
/* CSS Document */

.shopcontact-searchbtn {
    overflow: hidden;
    border-radius: 10px;
    background: #fff;
    height: 100%;
    text-align: center;
    position: relative;
}
.shopcontact-searchbtn .ttl-paragraph {
    padding: 40px 0 0 0;
    float: right;
    width: calc(100% - 110px);
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.shopcontact-searchbtn .shopcontact-image {
    display: block !important;
    position: static;
    float: left;
    width: 110px;
}
@media screen and (max-width: 768px) {
	.shopcontact-tel .btn-text-fff {
    color: #fff;
	}
	.shopcontact-tel p {
    text-align: center;
	}
	.shopcontact-web p {
    text-align: center;
	}
}
/**  ▼▼new▼▼  **/
.shopcontact.box-block-border {
    padding: 15px 3% 15px !important;
}
.height-match .height-match-text{padding-top:0.7em;}
#direct .btn-inline-wrapper .btn,
#online .btn-inline-wrapper .btn {  margin-right: 35px;  }
#direct .btn-inline-wrapper .btn:last-child,
#online .btn-inline-wrapper .btn:last-child {  margin-right: 0px;  }
.list-faq-answer {
		white-space: normal;
		overflow: auto;
	}
.list-faq-item div {
    display: block;
    padding: 20px 10px 20px 0;
    position: relative;
    overflow: hidden;
}
.list-faq-item a {
    display: inline;
	padding: 0;
	position: static;
	font-size: 13px;
}
.btn_p {  padding: 4px 5px;  }	
.btn_p:not(.btn-disabled):hover {  padding: 4px 5px;  }
.online a:before {
    content: '';
    display: inline-block;
    vertical-align: middle;
    background-repeat: no-repeat;
    background-size: cover;
    width: 2em;
    height: 2em;
    position: relative;
    top: -1px;
    background-image: url(/biz/sp/common/images/icon/icon_online_cart.svg);
}
.direct_icon a:before,
.direct a:before {
    content: '';
    display: inline-block;
    vertical-align: middle;
    background-repeat: no-repeat;
    background-size: cover;
    width: 2em;
    height: 2em;
    position: relative;
    top: -1px;
    margin-left: -0.6em;   
    background-image: url(/biz/sp/common/images/icon/icon_direct_man.svg);
} 
.direct>div>a:after {
    content: '';
    display: inline-block;
    vertical-align: middle;
    background-repeat: no-repeat;
    background-size: cover;
    width: 1.067em;
    height: 1.067em;
    position: relative;
    top: -1px;
    margin-left: 0.4em;
    background-image: url(/biz/sp/common/images/icon/icon_arrow_circle_down_white.png);
}
.online>div>div>a:after {
    content: '';
    display: inline-block;
    vertical-align: middle;
    background-repeat: no-repeat;
    background-size: cover;
    width: 1.067em;
    height: 1.067em;
    position: relative;
    top: -1px;
    margin-left: 0.4em;
    background-image: url(/biz/sp/common/images/icon/icon_arrow_circle_down_white.png);
}
	/*
.shopcontact-web {
    border-right: none;
    border-left: none;
}
	*/
.shopcontact-tel .mt-30 {  margin-top: 29px !important;  }
.shopcontact-web .mt-40 {  margin-top: 44px !important;  }
.list-faq-item a:after{display:none;}
.pr-40 {padding-right: 40px;}
.pt-34 {padding-top: 34px;}
.ml-43 {margin-left: 43px;}
	
@media screen and (max-width: 768px) {
	#direct .btn-inline-wrapper .btn,
	#online .btn-inline-wrapper .btn {  margin-right: 4px;  }
	.list-faq-item a {	font-size: 12px;  }
	.btn_p {  padding: 10px 5px;  }
	.btn_p:not(.btn-disabled):hover {  padding: 10px 5px;  }
	.text-md-center {  text-align: center;  }
	.shopcontact-tel .mt-30 {  margin-top: 0px !important;  }
	.shopcontact-web .mt-40 {  margin-top: 0px !important;  }
	.btn-inline-wrapper .btn {  width: 80% !important;  }
	.pr-md-0 {padding-right: 0px;}
}
@media screen and (max-width: 1024px) and (min-width: 768px){
	/*
	#direct .btn-inline-wrapper .btn,
	#online .btn-inline-wrapper .btn {  margin-right: 10px;  }
	*/
	#direct .btn-inline-wrapper .btn,
	#online .btn-inline-wrapper .btn {  margin-right: 0px;  }
	#direct .btn-inline-wrapper .btn:last-child,
	#online .btn-inline-wrapper .btn:last-child {  margin-right: 0px;  }
	.shopcontact .btn-l {	
		min-width: 340px;
		padding: 16px 30px;
	}
	.shopcontact .btn-m {	
		min-width: 200px;
	}
	.btn_p {  padding: 10px 5px;  }
	.btn_p:not(.btn-disabled):hover {  padding: 10px 5px;  }
	.tb {  display: block !important;  }
	.text-md-center {  text-align: center;  }
	.shopcontact-tel .mt-30 {  margin-top: 0px !important;  }
	.shopcontact-web .mt-40 {  margin-top: 0px !important;  }
	.row .row .col-md-12 {
    flex: 0 0 100%;
    max-width: 50%;
	}
	.pr-md-0 {padding-right: 0px;}
}	
/**  ▲▲new▲▲  **/
	
/**  ▼▼202102▼▼  **/
/**  ボタン白  **/
.btn-flex-wrapper {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    margin-bottom: 40px;
}
.btn-flex-wrapper .btn,
.btn-flex-wrapper .btn:hover {
    display: block;
    padding: 10px 35px;
    margin-right: 20px;
}
.btn-inline-wrapper .btn-m {
    min-width: 300px !important;
}
@media screen and (max-width: 768px) {
	.btn-flex-wrapper {  display: block;  }
	.btn-flex-wrapper .btn {
		margin-right: 0;
		margin-bottom: 10px;
	}	
	.btn-flex-wrapper .btn-m {
		min-width: 200px !important;
	}
}
/**  ボタン赤　2列  **/	
@media screen and (max-width: 768px) {
	/*#direct .btn_red_2 {  margin-top: 15px;  }*/
}
@media screen and (max-width: 1023px) and (min-width: 768px) {
	/*#direct .btn_red_2 {  margin-left: 30px;  }*/
}
/**  ▲▲202102▲▲  **/
.mr-35 {  margin-right: 35px!important;  }	
@media screen and (max-width: 768px) {
	.mr-md-0 {  margin-right: 0!important;  }	
}

/* ▼▼202306 追加▼▼ */			
/* ショップ検索ボタン */
#shop_block .box-product-biz {  padding: 30px 20px 30px 30px;  }
#shop_block .box-product-biz-image {  
	width: 220px!important;
	padding-right: 20px;
}
#shop_block .shop_ttl {
    padding: 0 0 10px 0;
    border-bottom: 1px solid #e8e8e8;
}
#shop_block .shop_ttl_beforehand {  padding-top: 30px;  }
#shop_block .box-product-biz-text {  margin-left: 230px;  }
#shop_block .text-link-arrow {  font-size: 13px; }
#shop_block .begginer-ttl-icon::before {
    content: "";
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    position: absolute;
    top: 4px;
    left: 0;
    width: 18px;
    height: 16px;
    background-image: url(../../common_b/images/common/icon/icon_attention_red.svg);
}
@media screen and (max-width: 768px) {
	#shop_block .box-product-biz {  padding: 15px;  }
	#shop_block .box-product-biz-image {  width: 120px!important;  }
	#shop_block .box-product-biz-text {  margin-left: 0;  }
	#shop_block .shop_ttl {  
		padding: 30px 0 45px 0;
		border-bottom: 1px solid #e8e8e8;
	}
	#shop_block .shop_ttl_beforehand {  padding-top: 15px;  }
	#shop_block .text-link-arrow {  font-size: 12px; }
	#shop_block .begginer-ttl-icon::before {  top: 0;  }
}
/* ▲▲202306 追加▲▲ */	
/* ▼▼202410 Firework動画_tooltip位置調整▼▼ */
#firework_movie .gotop{bottom:350px!important;}
#firework_movie .shortcutmenu{bottom:350px!important;}
#firework_movie .shortcutmenu.is-absolute{bottom:455px!important;}
@media (max-width: 768px) {	
	#firework_movie .gotop{bottom:60px!important;}
	#firework_movie .shortcutmenu{bottom:65px!important;}
	#firework_movie .shortcutmenu.is-absolute{bottom:130px!important;}
}
/* ▲▲202410 Firework動画_tooltip位置調整▲▲ */

/**  ▼▼202504▼▼  **/
/**********  ▼▼KV▼▼  ********************/
.kv {
    text-indent: -99em;
    overflow: hidden;
    background: url(../images/sp/kv.jpg) no-repeat center center #c50409;
    width: 100%;
    height: 350px;
}
@media (max-width: 768px) {
    .kv {
        background: url(../images/sp/kv_sp.jpg) no-repeat center center #c50409;
        background-size: 100%;
        height: 0px;
        padding-bottom: 70%;
    }
}

/**********  ▼▼all▼▼  ********************/
.section {
        padding: 80px 0;
}
@media screen and (min-width: 768px) {
    .section {
        padding: 80px 0;
    }
}
.section_wrapper {
    max-width: 980px;
    margin: 0 auto;
    padding: 0 25px;
}
@media screen and (max-width: 768px) {
	.section_wrapper {
		padding: 0 15px;
	}
}
h2 {
    margin: 0 0 45px 0;
    font-weight: 700;
    font-size: 2.2rem;
    text-align: center;
}
h3 {	
	font-size: min( 32px, 2.0rem );
	font-weight: bold;	
	display: inline-table;
}
h3 img,
h3 span {
	vertical-align: middle;
    display: table-cell;
}
h3 span span {
	display: contents;
}
@media screen and (min-width: 769px) {
    h2 {	
		font-size: min( 32px, 2.0rem );
    }
	h3 {	
		font-size: min( 32px, 2.0rem );
		padding-bottom: 30px;
	}
}
@media screen and (max-width: 768px) {
	.section {
		padding: 50px 0;
	}
	h2 {
    	font-size: 22px;
		margin-bottom: 30px;
		line-height: 1.5;
	}
	h3 {
    	font-size: 20px;
		margin-bottom: 10px;
		line-height: 1.3;
	}
}

/**********  ▼▼アンカーリンク▼▼  ********************/
#lineup_list .lineup-list-btn .btn {
    color: #fff!important;
}
#lineup_list .text-link-blank:after {
    width: 11px!important;
    height: 11px!important;
    margin-left: 10px!important;
}
.btn_anc_list .btn,
.btn_anc_list .btn:hover {
	min-width: 70px;
	width: calc((100% - 60px) / 7);
}
.btn-inline-wrapper.btn_anc_list .btn {
    margin-right: 5px;
}
.btn-inline-wrapper.btn_anc_list .btn:last-child {
    margin-right: 0;
}
@media (max-width: 829px) {	
}
@media (max-width: 768px) {	
	.btn_anc_list .btn,
	.btn_anc_list .btn:hover {
		min-width: 50px;
		width: calc((100% - 15px) / 4)!important;
	}
	.btn_anc_list .btn:nth-child(5),
	.btn_anc_list .btn:nth-child(6),
	.btn_anc_list .btn:nth-child(7),
	.btn_anc_list .btn:nth-child(5):hover,
	.btn_anc_list .btn:nth-child(6):hover,
	.btn_anc_list .btn:nth-child(7):hover {
		min-width: 50px;
		width: calc((100% - 10px) / 3)!important;
	}
	.btn-inline-wrapper.btn_anc_list .btn,
	.btn-inline-wrapper.btn_anc_list .btn:nth-child(2n){  margin-right: 5px;  }
	.text_height {  top: auto;  }
	.btn-inline-wrapper.btn_anc_list .btn:nth-child(4n),
	.btn-inline-wrapper.btn_anc_list .btn:nth-child(7n) {  	margin-right: 0;  }
}

/**********  ▼▼ボタンエリア▼▼  ********************/
.cta_area .section_wrapper {
    padding: 40px 15px 40px 15px;
}  
.cta_area .btn-l {
	font-size: 17px;
}
@media screen and (max-width: 979px) and (min-width: 769px) {
    .cta_area .btn-l {
        min-width: 200px;
        width: inherit;
        padding: 16px 5px;
        font-size: 16px;
    }
}
.btn_rc {
    border-radius: 50px;
}
.btn_red_border {
    border: 3px solid #fc0f3a;
    background: #fff;
    color: #fc0f3a;
}
.cta_area.bg_gray {
    background-color: #E8E8E8;
}
.btn_rc p {
    font-size: 20px;
    font-size: min( 5vw, 2.0rem );
	margin-bottom: 0;
}
@media screen and (min-width: 769px) {
	.btn_rc p {
		font-size: min( 20px, 2.0rem );
		margin-bottom: 0;
	}
	.btn_2 .col-4 .text-size-ml {
        font-size: min( 20px, 2.2vw );
		letter-spacing: -0.05rem;
		padding-top: 20px;
    }
}
.btn_rc p > span {
    position: absolute;
    top: 50%;
    left: 3px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    aspect-ratio: 1 / 1;
    border-radius: 100px;
    padding: 8px;
    background-color: #F8CE00;
}
.btn_rc p > span > span {
    display: block;
    padding-top: 5px;
    color: #333333;
}

.btn_arrow:before {
    content: "";
    right: 20px;
    width: 13px;
    height: 13px;
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
    position: absolute;
    top: 50%;
    -webkit-transform: translate(0, -50%) rotate(45deg);
    transform: translate(0, -50%) rotate(45deg);
}
.btn_red_border.btn_arrow:before {
    border-top-color: #fc0f3a;
    border-right-color: #fc0f3a;
}
.cta_area h2 {
	margin-bottom: 20px;
}
.btn_border {
    border: 3px solid #fc0f3a;
}
@media screen and (max-width: 768px) {
	.cta_area .section_wrapper {
        padding: 30px 0 33px 0;
    }
	.cta_area h2 {
    	font-size: 23px;
		margin-bottom: 15px;
		line-height: 1.5;
	}
	.cta_area .text-size-ml {
		font-size: 18px;
		margin-bottom: 0;
	}
	.cvArea_block .btn {
        width: 90%;
    }
	.btn_rc p > span {
        padding: 4px;
    }    
	.cvArea_block .col-md-12 {
        margin-bottom: 10px;
    }
}

/**********  ▼▼lp_list▼▼  ********************/
.btn_more.btn_arrow:before {    
	right: 15px;
    width: 10px;
    height: 10px;
    border-top: 2px solid #333;
    border-right: 2px solid #333;	
}
#lp_list .line_red {
	padding-top: 25px;
    padding-left: 45px;
	position: relative;
}
#lp_list .line_red:after {
    display: block;
    content: "";
    background: #c50409;
    width: 10px;
    height: 100%;
    position: absolute;
    border: 1px solid #c50409;
    left: 15px;
    top: 0;
}
#lp_list .bg_red {
	background-color: #c50409;
	padding: 30px;
	/*display: inline-table;*/
	width: 100%;
}
#lp_list .bg_red > div {
	vertical-align: middle;
	text-align: center;
	/*display: table-cell;*/
}
#lp_list h3 {
	padding-top: 60px;
}
#lp_list #anc1 h3 {
	padding-top: 0;
}

@media screen and (max-width: 768px) {
	#lp_list .line_red_md {
		position: relative;
	}
	#lp_list .line_red_md:after {
		display: block;
		content: "";
		background: #c50409;
		width: 5px;
		height: 100%;
		position: absolute;
		border: 1px solid #c50409;
		left: 5px;
		top: 1px;
	}
	#lp_list .line_red {
		padding-left: 5px;
	}
	#lp_list .line_red:after {
		content: none;
	}
	#lp_list .row > div:first-child {
		order: 1;
	}
	#lp_list .row > div:nth-child(2n) {
		order: 3;
	}
	#lp_list .row > div:last-child {
		order: 2;
		padding-left: 25px;
	}
	#lp_list .bg_red {
		padding: 15px;
	}
	#lp_list .line_red.col-md-12 {
		padding-left: 25px;
		padding-top: 15px;
	}
	#lp_list h3 {
		padding-top: 40px;
	}
	#lp_list #anc1 h3 {
		padding-top: 0;
	}
	#lp_list .bg_red > div {
		display: block;
	}
	#lp_list .bg_red div:last-child {
		padding-top: 10px
	}
}

#lp_list .bg_red,
#lp_list .row .col-6 .box_height {
	overflow:hidden;	
	transition : all 0.3s;
}
#lp_list .row a img { 
	transition : all 0.3s;
}
#lp_list .row a:hover {
	opacity: 1;
}
#lp_list .row a img:hover {
	transform:scale(1.15);
}
#lp_list .row > div:last-child .bnr_shadow:hover img {
	transform:scale(1.1);
}
#lp_list .row .bg_red:hover,
#lp_list .row > div:last-child .bnr_shadow:hover {
  box-shadow: 0 2px 5px rgba(0,0,0,0.3);
}
#lp_list .row a img:active {
  transform: scale(0.9);
}
@media screen and (max-width: 768px) {
	#lp_list .row a img:active {
		transform:scale(1.15);
		box-shadow: 0 2px 5px rgba(0,0,0,0.3);
	}
}

/**********  ▼▼message▼▼  ********************/
/*
#message {
  background-image: linear-gradient(180deg, #fffcf2, #fff8e8);
}
*/
/**********  ▼▼bnr_list▼▼  ********************/
#bnr_list h2 {
	margin-bottom: 20px;
}

/** ▲▲202504▲▲ **/