/* CSS Document */

/*- File name [ style.css ] -*/

/*------------------------------------------------------------------------------------------------------------------------------------------

* 変更領域

------------------------------------------------------------------------------------------------------------------------------------------*/

/* screen width 768px未満
---------------------------------------------------------------------*/

.m-plus-rounded-1c {
	font-family: "M PLUS Rounded 1c", sans-serif;
	font-style: normal;
}

.noto-sans-jp {
	font-family: "Noto Sans JP", sans-serif;
	font-optical-sizing: auto;
	font-style: normal;
}



/* body 
-----------------------*/

body, body * {
	color: #333;
}



/* footer 
-----------------------*/

footer .inner{
    background-image: linear-gradient(to top, #000000, #444444);
}

footer .inner p {
	color: #FFFFFF;
}



/* main 
-----------------------*/

main {
    background-color: #000000;
}



/* title 
-----------------------*/

/* h3.title span {} */



/* box_center 
-----------------------*/

/* .box_center {} */

.box_center > * {
    max-width: 1040px;
}



/* top 
-----------------------*/

/* #top {} */



/* btm 
-----------------------*/

/* #btm {} */



/* rule_fuji 
-----------------------*/

/* #rule_fuji {} */



/* method
-----------------------*/

/* #method {} */

/* #method .title img {} */

#method ul#step {
	gap: clamp(20px, 53.3vw, 40px) 20px;
	align-items: center;
}

/* #method ul#step .red {} */

#method ul#step > li {
	width: clamp(310px, 81.3vw, 610px);
}

#method ul#step > li::before {
	background-size: clamp(60px, 16vw, 120px) auto, 100%;
	height: clamp(60px, 16vw, 120px);
}

#method #step > li > .inner {
	background-color: #FFFFFF;
	padding: 0 clamp(20px, 53.3vw, 40px) clamp(32px, 5vw, 64px);
}

#method #appBtn a {
	background-color: #DD2600;
	color: #FFFFFF;
}

#method #appBtn a::after {
	border-color: #FFFFFF;
}




/* 横向き用
---------------------------------------------------------------------*/

@media (orientation: landscape) {}




/* TAB用768px～（TAB）
---------------------------------------------------------------------*/

@media print, screen and (min-width: 768px) {

	/* rule_fuji 
    -----------------------*/



	/* method 
    -----------------------*/

	#method ul#step {
		align-items: stretch;
	}

	#method ul#step > li {
		max-width: 280px;
	}

	#method ul#step > li::before {
		background-size: 64px auto, 100%;
		height: 64px;
	}

	#method ul#step > li > .inner {
		height: calc(100% - 64px);
		padding: 0 clamp(16px, 2.5vw, 32px) clamp(24px, 3.75vw, 48px);
	}

}




/* iPad pro・ノートPC用1024px～（NPC）
---------------------------------------------------------------------*/

@media print, screen and (min-width: 1024px) {

    /* main 
    -----------------------*/

	main {
		background-size: 100px;
	}
    
}




/* PC用1280px～（PC）
---------------------------------------------------------------------*/

@media print, screen and (min-width: 1280px) {}







/*------------------------------------------------------------------------------------------------------------------------------------------

* fv

------------------------------------------------------------------------------------------------------------------------------------------*/

/* screen width 768px未満
---------------------------------------------------------------------*/




/* 横向き用
---------------------------------------------------------------------*/

@media (orientation: landscape) {
}




/* TAB用768px～（TAB）
---------------------------------------------------------------------*/

@media print,screen and (min-width: 768px) {
	
	.fv img{
        min-height: 480px;
        object-fit: cover;
    }
	
}




/* iPad pro・ノートPC用1024px～（NPC）
---------------------------------------------------------------------*/

@media print,screen and (min-width: 1024px) {
	
	
	
}




/* PC用1280px～（PC）
---------------------------------------------------------------------*/

@media print,screen and (min-width: 1280px){
	
	
	
}







/*------------------------------------------------------------------------------------------------------------------------------------------

* anchor

------------------------------------------------------------------------------------------------------------------------------------------*/

/* screen width 768px未満
---------------------------------------------------------------------*/

/* #anchor_area */
#anchor_area #anchor_contents_list{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    column-gap: clamp(10px, 1.5625vw, 20px);
    padding-block: clamp(16px, 2.5vw, 32px) clamp(16px, 5vw, 64px);
}

#anchor_area #anchor_contents_list .list_item{
    width: calc((100% - (clamp(10px, 1.5625vw, 20px) * 1)) / 2);
}

#anchor_area #anchor_contents_list .list_item a{
    display: block;
    background-size: contain !important;
}

#anchor_area #anchor_contents_list .list_item:nth-of-type(1) a{
    background: url(../img/anchor_btn01_hover.png) no-repeat center;
}

#anchor_area #anchor_contents_list .list_item:nth-of-type(2) a{
    background: url(../img/anchor_btn02_hover.png) no-repeat center;
}

#anchor_area #anchor_contents_list .list_item:nth-of-type(3) a{
    background: url(../img/anchor_btn03_hover.png) no-repeat center;
}

#anchor_area #anchor_contents_list .list_item a:hover img{
    opacity: 0;
}


/* .contents_anchor */
.contents_anchor{
    display: flex;
    justify-content: center;
    column-gap: clamp(12px, 3.75vw, 48px);
}

.contents_anchor .anchor_listitem{
    min-width: clamp(70px, 10.9375vw, 140px);
    width: clamp(70px, 10.9375vw, 140px);
}

.contents_anchor .anchor_listitem a img{
    border-radius: 99px;
    border: 1px solid #FFFFFF;
}

.contents_anchor .anchor_listitem a:hover img{
    background-color: #df1c26;
    border-color: #df1c26;
}

* + .contents_anchor{
    margin-top: clamp(20px, 5vw, 64px);
}




/* 横向き用
---------------------------------------------------------------------*/

@media (orientation: landscape) {
}




/* TAB用768px～（TAB）
---------------------------------------------------------------------*/

@media print,screen and (min-width: 768px) {
	
    /* #anchor_area */
	#anchor_area #anchor_contents_list{
        flex-wrap: nowrap;
    }

    #anchor_area #anchor_contents_list .list_item{
        flex: 1;
        width: max-content;
    }
	
}




/* iPad pro・ノートPC用1024px～（NPC）
---------------------------------------------------------------------*/

@media print,screen and (min-width: 1024px) {
	
	
	
}




/* PC用1280px～（PC）
---------------------------------------------------------------------*/

@media print,screen and (min-width: 1280px){
	
	
	
}







/*------------------------------------------------------------------------------------------------------------------------------------------

* .contents_box

------------------------------------------------------------------------------------------------------------------------------------------*/

/* screen width 768px未満
---------------------------------------------------------------------*/
.contents_box{
    position: relative;
}

.contents_box:nth-of-type(odd){
    background: url(../img/bg_image.png) repeat-y center;
    background-size: 100% auto;
}

.contents_box::before{
    content: "";
    display: block;background-image: linear-gradient(#df1c26, transparent 70%);
    height: clamp(40px, 6.25vw, 80px);
    width: 100%;
    position: absolute;
    left: 0;
    top: 0;
}

.contents_box .contents_box_inner{
    padding-block: clamp(40px, 7.5vw, 96px);
}




/* 横向き用
---------------------------------------------------------------------*/

@media (orientation: landscape) {
}




/* TAB用768px～（TAB）
---------------------------------------------------------------------*/

@media print,screen and (min-width: 768px) {
	
	.contents_box .contents_title img{
        margin-inline: auto;
        height: clamp(38px, 5.78125vw, 74px);
    }
	
}




/* iPad pro・ノートPC用1024px～（NPC）
---------------------------------------------------------------------*/

@media print,screen and (min-width: 1024px) {
	
	
	
}




/* PC用1280px～（PC）
---------------------------------------------------------------------*/

@media print,screen and (min-width: 1280px){
	
	
	
}







/*------------------------------------------------------------------------------------------------------------------------------------------

* special_sale

------------------------------------------------------------------------------------------------------------------------------------------*/

/* screen width 768px未満
---------------------------------------------------------------------*/

#special_sale{
    background: url(../img/special_sale/bg.png) no-repeat center right, url(../img/bg_image.png) repeat-y center;
    background-size: 36vw auto, 100% auto;
}

/* ss_comingsoon */
#special_sale * + #ss_comingsoon{
    margin-top: clamp(20px, 5vw, 64px);
}




/* 横向き用
---------------------------------------------------------------------*/

@media (orientation: landscape) {
}




/* TAB用768px～（TAB）
---------------------------------------------------------------------*/

@media print,screen and (min-width: 768px) {
	
	
	
}




/* iPad pro・ノートPC用1024px～（NPC）
---------------------------------------------------------------------*/

@media print,screen and (min-width: 1024px) {
	
	
	
}




/* PC用1280px～（PC）
---------------------------------------------------------------------*/

@media print,screen and (min-width: 1280px){
	
	#special_sale{
        background: url(../img/bg_image.png) repeat-y center;
        background-size: 100% auto;
        
    }

    #special_sale > *{
        background: url(../img/special_sale/bg.png) no-repeat center right;
        background-size: 360px auto;
    }
	
}







/*------------------------------------------------------------------------------------------------------------------------------------------

* originalgoods_present

------------------------------------------------------------------------------------------------------------------------------------------*/

/* screen width 768px未満
---------------------------------------------------------------------*/

/* #originalgoods_contents */
#originalgoods_present #originalgoods_contents{
    display: grid;
    row-gap: clamp(40px, 6.25vw, 80px);
}

#originalgoods_present #originalgoods_contents .contents_listitem > * + *{
    margin-top: clamp(32px, 6.25vw, 80px);
}

#originalgoods_present #originalgoods_contents .contents_listitem .btn{
    margin-inline: auto;
    max-width: 600px;
    width: 80vw;
}

#originalgoods_present #originalgoods_contents .contents_listitem .btn a:hover{
    opacity: 0.7;
}

#originalgoods_present #originalgoods_contents .contents_listitem .btn a.none_btn{
    pointer-events: none;
}

#originalgoods_present * + #originalgoods_contents{
    margin-top: clamp(20px, 6.25vw, 80px);
}




/* 横向き用
---------------------------------------------------------------------*/

@media (orientation: landscape) {
}




/* TAB用768px～（TAB）
---------------------------------------------------------------------*/

@media print,screen and (min-width: 768px) {
	
	
	
}




/* iPad pro・ノートPC用1024px～（NPC）
---------------------------------------------------------------------*/

@media print,screen and (min-width: 1024px) {
	
	
	
}




/* PC用1280px～（PC）
---------------------------------------------------------------------*/

@media print,screen and (min-width: 1280px){
	
	
	
}







/*------------------------------------------------------------------------------------------------------------------------------------------

* campaign

------------------------------------------------------------------------------------------------------------------------------------------*/

/* screen width 768px未満
---------------------------------------------------------------------*/

/* #campaign_list */
#campaign #campaign_list .list_item{
    position: relative;
}

#campaign #campaign_list .list_item + .list_item{
    margin-top: clamp(40px, 7.8125vw, 100px);
}

#campaign #campaign_list .list_item .campaign_contents_banner{
    margin-inline: auto;
    width: 64vw;
}

#campaign #campaign_list .list_item .campaign_contents_banner img{
    box-shadow: 0 0 10px 0 #FFFFFF;
}

#campaign #campaign_list .list_item .campaign_contents_banner a.none_btn{
    pointer-events: none;
}

#campaign #campaign_list .list_item .campaign_contents_btn a.none_btn{
    pointer-events: none;
}

#campaign #campaign_list .list_item .campaign_contents_btn.btn_comingsoon a{
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #ffd000;
    pointer-events: none;
    margin-inline: auto;
    width: 64vw;
}

#campaign #campaign_list .list_item .campaign_contents_btn.btn_comingsoon a img{
    height: 36px;
}

#campaign #campaign_list .list_item * + .campaign_contents_btn{
    margin-top: 12px;
}

#campaign #campaign_list .list_item * + .campaign_contents_btn.btn_comingsoon{
    margin-top: 18px;
}

#campaign #campaign_list #campaign_contents01 .campaign_contents_banner{
    position: relative;
}

#campaign #campaign_list #campaign_contents01 .campaign_contents_btn a,
#campaign #campaign_list #campaign_contents01 .campaign_contents_banner a{
    position: relative;
    z-index: 1;
}

#campaign #campaign_list #campaign_contents01 .campaign_contents_banner::before{
    content: "";
    display: block;
    background: url(../img/img_godzilla.png) no-repeat center;
    background-size: contain;
    aspect-ratio: 1 / 1.033;
    width: clamp(380px, 60vw, 765px);
    transform: translateY(-50%);
    position: absolute;
    left: 52%;
    top: 38%;
}

#campaign * + #campaign_list{
    padding-top: clamp(20px, 6.25vw, 80px);
}




/* 横向き用
---------------------------------------------------------------------*/

@media (orientation: landscape) {
}




/* TAB用768px～（TAB）
---------------------------------------------------------------------*/

@media print,screen and (min-width: 768px) {

    #campaign > *::before{
        left: calc(50% + 15vw);
        top: 28vw;
    }
	
	/* #campaign_list */
    #campaign #campaign_list .list_item{
        aspect-ratio: 1 / 0.519;
    }

    #campaign #campaign_list .list_item .campaign_contents_banner{
        width: clamp(240px, 37.5vw, 480px);
        position: absolute;
        bottom: 0;
        right: 0;
    }

    #campaign #campaign_list .list_item .campaign_contents_btn{
        position: absolute;
        bottom: 0;
        left: 0;
    }

    #campaign #campaign_list .list_item .campaign_contents_btn.btn_comingsoon{
        bottom: 10px;
    }

    #campaign #campaign_list .list_item .campaign_contents_btn.btn_comingsoon a{
        margin-inline: 0;
        width: clamp(240px, 25vw, 318px);
    }

    #campaign #campaign_list .list_item .campaign_contents_btn.btn_comingsoon a img{
        height: clamp(36px, 5.625vw, 72px);
    }

    #campaign #campaign_list .list_item * + .campaign_contents_btn{
        margin-top: 0;
    }

    #campaign #campaign_list .list_item * + .campaign_contents_btn.btn_comingsoon{
        margin-top: 0;
    }

    #campaign #campaign_list #campaign_contents01 .campaign_contents_banner{
        position: absolute;
    }

    #campaign #campaign_list #campaign_contents01 .campaign_contents_banner::before{
        transform: translateY(calc(clamp(130px, 23vw, 290px) * -1));
        left: 28%;
        top: 0;
    }

    #campaign #campaign_list #campaign_contents01 .campaign_contents_banner::after{
        content: "";
        display: block;
        background: url(../img/img_godzilla_hand.png) no-repeat center;
        background-size: contain;
        aspect-ratio: 1 / 0.42;
        width: clamp(380px, 60vw, 765px);
        transform: translateY(calc(clamp(130px, 23vw, 290px) * -1));
        z-index: 3;
        position: absolute;
        left: 28%;
        top: 0;
    }
	
}




/* iPad pro・ノートPC用1024px～（NPC）
---------------------------------------------------------------------*/

@media print,screen and (min-width: 1024px) {
	
	
	
}




/* PC用1280px～（PC）
---------------------------------------------------------------------*/

@media print,screen and (min-width: 1280px){
	
}







/*------------------------------------------------------------------------------------------------------------------------------------------

* Add Sample Code

------------------------------------------------------------------------------------------------------------------------------------------*/

/* screen width 768px未満
---------------------------------------------------------------------*/




/* 横向き用
---------------------------------------------------------------------*/

@media (orientation: landscape) {
}




/* TAB用768px～（TAB）
---------------------------------------------------------------------*/

@media print,screen and (min-width: 768px) {
	
	
	
}




/* iPad pro・ノートPC用1024px～（NPC）
---------------------------------------------------------------------*/

@media print,screen and (min-width: 1024px) {
	
	
	
}




/* PC用1280px～（PC）
---------------------------------------------------------------------*/

@media print,screen and (min-width: 1280px){
	
	
	
}