@charset "utf-8";
*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
:root {
	--main: #222;
	--red: #d61818;
	--yellow: #ffd304;
	--bgcolor01: #ebe5dd;
	--bgcolor02: #e3c7bd;
	--font01: "Noto Sans JP", sans-serif;
	--font03: "Roboto", sans-serif;
	--paddingPC: 0 18vw 8vh;
	--paddingTABLET: 0 4vw 4vh;
	--paddingSP: 0 7vw 5vh;
}

@media only screen and (max-width: 599px) {
	.sp_only {
		display: block;
	}
	.sp_tablet_only {
		display: block;
	}
	.tablet_only {
		display: none;
	}
	.pc_only {
		display: none;
	}
	.pc_tablet_only {
		display:none !important;
	}
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
	.sp_only {
		display: none !important;
	}
	.sp_tablet_only {
		display: block;
	}
	.tablet_only {
		display: block;
	}
	.pc_only {
		display: block;
	}
	.pc_tablet_only {
		display:block;
	}
}
@media only screen and (min-width: 1025px) {
	.sp_only {
		display: none !important;
	}
	.sp_tablet_only {
		display: none;
	}
	.tablet_only {
		display: none;
	}
	.pc_only {
		display: block;
	}
	.pc_tablet_only {
		display:block;
	}
}

.idc-commonbanner {
    display: none;
}
.main_mv {
    max-width: 1920px;
    margin: 0 auto;
}
main {
	color:var(--main);
}
main ul {
    list-style: none;
}


/* ------------------------------------------ 
	
 - main_lead

------------------------------------------ */
.main_lead {
    text-align: center;
    padding: 50px 0 0 0;
}
.main_lead_title {
	display: inline;
	color: var(--main);
	font-weight: bold;
	border-bottom: 1px solid #222;
}
.main_lead_text {
    letter-spacing: 0.5px;
    font-weight: 500;
}
.main_lead_text .marker {
	background: linear-gradient(#00000000 60%, #ffd304a6 60%);
}
.main_lead_text > span {
	color: var(--red);
	font-family: var(--font03);
	font-weight: bold;
}
.main_lead_note {
    font-weight: 500;
}
@media (max-width: 599px) {
    .main_lead {
        padding:var(--paddingSP);
		margin-top: 46px;
    }
    .main_lead_title {
	    font-size: 24px;
	}
    .main_lead_text {
        font-size: 14px;
        line-height: 1.8;
        letter-spacing: 0.5px;
        margin-top: 14px;
    }
	.main_lead .main_lead_text:nth-of-type(1) {
		line-height: 2;
	}
	.main_lead .main_lead_text:nth-of-type(2) {
		line-height: 1.6;
		margin-top: -12px;
		margin-bottom:20px;
	}
	.main_lead_text .marker {
		padding: 0 4px 0 2px;
	}
	.main_lead_text > span {
		font-size: 24px;
	}
	.main_lead_text span > span {
		font-size: 30px;
		letter-spacing: -1px;
		padding: 0px 2px;
	}
    .main_lead_note {
        font-size: 12px;
    }
}
@media (min-width: 600px) and (max-width: 1024px) {
     .main_lead {
        padding:var(--paddingTABLET);
        margin-top: 50px;
    }
    .main_lead_title {
	    font-size: 24px;
	}
    .main_lead_text {
        font-size: 16px;
        letter-spacing: 0.5px;
    }
	.main_lead .main_lead_text:nth-of-type(1) {
		line-height: 2.4;
        margin: 23px auto 0;
	}
	.main_lead .main_lead_text:nth-of-type(2) {
		line-height: 1.7;
		margin-top: -24px;
		margin-bottom:20px;
	}
	.main_lead_text .marker {
		padding: 0 4px 0 2px;
	}
	.main_lead_text > span {
		font-size: 32px;
	}
	.main_lead_text span > span {
		font-size: 46px;
		letter-spacing: -1px;
		padding: 0px 2px;
	}
    .main_lead_note {
        font-size: 14px;
    }
}
@media (min-width: 1025px) {
    .main_lead {
        padding:var(--paddingPC);
        margin-top: 80px;
    }
    .main_lead_title {
	    font-size: 32px;
	}
    .main_lead_text {
        font-size: 22px;
        letter-spacing: 0.5px;
    }
	.main_lead .main_lead_text:nth-of-type(1) {
		line-height: 2.4;
        margin: 23px auto 0;
	}
	.main_lead .main_lead_text:nth-of-type(2) {
		line-height: 1.7;
		margin-top: -24px;
		margin-bottom:20px;
	}
	.main_lead_text .marker {
		padding: 0 4px 0 2px;
	}
	.main_lead_text > span {
		font-size: 34px;
	}
	.main_lead_text span > span {
		font-size: 54px;
		letter-spacing: -1px;
		padding: 0px 2px;
	}
    .main_lead_note {
        font-size: 14px;
    }
}

/* ------------------------------------------ 
	 
 - product_area / common

------------------------------------------ */
.product_intro_col {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
}
.product_intro_col > div {
	font-weight: 500;
}
.product_name {
	font-weight: 600;
}
.product_smy {
	display: inline;
	font-weight: 500;
	border-bottom: 1px dotted #c9b5b5;
}
@media (max-width: 599px) {
    .product_intro_col {
	    flex-wrap: wrap;
	    gap: 30px;
	}
	.product_intro_col > div {
	    flex: 0 1 calc(100%);
	}
	.product_text {
	    padding:var(--paddingSP);
	}
	.product_text_col {
	margin-bottom: 0;
	}
	.product_name {
	    font-size: 24px;
	    margin-bottom: 13px;
	}
	.product_smy {
	    font-size: 14px;
	    line-height: 2.6;
	    padding-bottom: 7px;
	}
}
@media (min-width: 600px) and (max-width: 1024px) {
    .product_area {
	}
	.product_intro_col {
	    flex-wrap: nowrap;
	    gap: 30px;
	    padding: var(--paddingTABLET);
	}
	.product_area:nth-of-type(odd) .product_intro .product_intro_col {
	    flex-direction: row-reverse;
	}
	.product_intro_col > div {
	    flex: 0 1 calc((100% - 1 * 30px) / 2);
	}
	.product_name {
	    font-size: 20px;
	    margin-bottom: 10px;
	}
	.product_smy {
	    font-size: 15px;
	    line-height: 2.2;
	    padding-bottom: 5px;
	}
}
@media (min-width: 1025px) {
	.product_area {
	}
	.product_intro {
		width: 1290px;
		max-width: 100%;
		margin: 0 auto;
		padding: 0 30px 7vh;
	}
	.product_intro_col {
	    flex-wrap: nowrap;
	    gap: 40px;
	}
	.product_area:nth-of-type(odd) .product_intro .product_intro_col {
	    flex-direction: row-reverse;
	}
	.product_intro_col > div {
	    flex: 0 1 calc((100% - 1 * 40px) / 2);
	}
	.product_name {
	    font-size: 30px;
	    margin-bottom: 20px;
	}
	.product_smy {
	    font-size: 18px;
	    line-height: 3.2;
	    padding-bottom: 16px;
	}
}

/* ------------------------------------------ 
	 
 - product_area01 / cinema_area

------------------------------------------ */
.cinema_area {
    
}

/* ------------------------------------------ 
	 
 - product_area02 / yuno_area

------------------------------------------ */
@media (max-width: 599px) {
	.yuno_area {
		padding-top:40px;
	}
}
@media (min-width: 600px) and (max-width: 1024px) {
	.yuno_area {
		padding-top:5vh;
	}
}
@media (min-width: 1025px) {
	.yuno_area {
		padding-top:8vh;
	}
}

/* ------------------------------------------ 
	 
 - product_area03 / fill_area

------------------------------------------ */
.fetch_wrap {
	margin:0 auto;
}
.fetch_title {
	text-align:center;
	font-weight: 600;
}
.fetch_title > span {
	color: var(--red);
	font-family: var(--font03);
	font-weight: bold;
}
.fetch_title .marker {
	background: linear-gradient(#00000000 60%, #ffd304a6 60%);
	padding: 0 4px 0 2px;
}
.fetch_title > span {
}
.fetch_title span > span {
	letter-spacing: -1px;
	padding: 0px 2px;
}
.fetch_note {    
	text-align:center;
	font-weight: 500;
}
.fill_area .as-product {
	border:none !important;
}
.fill_area .as-product .pro-info {
	border-top: none !important;
}
.fill_area #products_grid .oe_list .pro-info {
	border-left:none;
}
@media (max-width: 599px) {
	.fetch_wrap {
		margin-top: 20px;
	}
    .fetch_title {
        font-size: 20px;
        margin-bottom: 0;
    }
	.fetch_title > span {
		font-size: 24px;
	}
	.fetch_title span > span {
		font-size: 38px;
	}
    .fetch_note {
		font-size: 12px;
	}
	.fill_area .as-product {
		margin-bottom:0;
	}
	.fill_area .as-product-list {
		padding:0 3vw;
	}
}
@media (min-width: 600px) and (max-width: 1024px) {
	.fill_area {
		padding-top:5vh;
	}
    .fetch_wrap {
		margin-top: -22px;
	}
    .fetch_title {
        font-size: 22px;
    }
	.fetch_title > span {
		font-size: 28px;
	}
	.fetch_title span > span {
		font-size: 46px;
	}
    .fetch_note { 
		font-size: 12px;
    }
}
@media (min-width: 1025px) {
	.fill_area {
		padding-top:6vh;
	}
	.fetch_wrap {
		margin-top: -22px;
		width: 1140px;
		max-width: 100%;
		margin: -22px auto 50px;
	}
    .fetch_title {
        font-size: 24px;
    }
	.fetch_title > span {
		font-size: 34px;
	}
	.fetch_title span > span {
		font-size: 54px;
	}
    .fetch_note { 
		font-size: 14px;
    }
}

/* ------------------------------------------ 
	 
 - pickup_item

------------------------------------------ */
.pickup_item {
    display: flex;
    flex-direction: row;
    height: auto;
}
.pickup_item_col {
    display: flex;
    flex-direction: column;
	position: relative;
    height: auto;
}
.pickup_item_col::after {
    content: "";
    position: absolute;
    width: 0;
    height: 0;
    top: 0%;
    left: 0%;
    border-style: solid;
    border-color: transparent transparent transparent var(--red);
    transition: border-color 0.3s 
    ease;
    z-index: 2;
}
.percent {
	position: absolute;
    display: inline;    
    top: 2%;
    left: 3%;
    color: #fff;
    font-weight: bold;
    line-height: 0.6;
    font-family: var(--font03);
    letter-spacing: -3px;
	z-index: 3;
}
.percent span:first-of-type {
	padding-left: 3px;
}
.percent span:last-of-type {
	letter-spacing: 0;
	font-family: var(--font03);
	font-weight: bold;
}
.pickup_item_image img {  
	display: block;
	width: 100%;
	height: auto;
	object-fit: cover;
}
.pickup_item_text {
	display: flex;
	flex-direction: column;
}
.pickup_item_text_col {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
}
.pickup_item_name {
	flex-grow: 1;
    font-weight: 700;
    text-align: left;
    font-family: var(--font03);
}

.pickup_item_icon_col {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
}
.pickup_item_icon {
    display: inline-block;
	width: fit-content;
    color: #fff;
	font-weight: bold;
    background: #868686;
    border-radius: 3px;
    font-family: var(--font03);
}
.pickup_item_sale_price {
    color: var(--red);
    text-align: center;
    font-weight: 700;
    font-family: var(--font03);
}
.pickup_item_sale_price > span {font-family: var(--font01);letter-spacing: 0.5px;}
.pickup_item_selling_price {
    text-decoration: line-through;
    text-align: center;
    font-family: var(--font03);
    margin-bottom: 0;
}
.pickup_item_btn {
    cursor: pointer;
    display: inline-block;
    text-align: center;
}
.pickup_item_link {
    display: block;
    font-family: var(--font03);
    line-height: 1.8;
    border:1px solid #333;
    border-radius: 45px;
    background: #fff;
    padding: 6px 6px;
}
.pickup_item_link:hover {
    border:1px solid var(--red);
	color:var(--red);
	opacity:1;
}
@media (max-width: 599px) {
    .pickup_item {
	    flex-wrap: wrap;
	    gap: 40px 20px;
	    padding:var(--paddingSP);
	}
	.pickup_item_col {
	    flex: 0 1 calc((100% - 1 * 20px) / 2);
	}
	.pickup_item_col::after {
	    border-width: 0 0 70px 70px;
	}
	.percent {
	    top: 2%;
	    left: 3%;
	    line-height: 0.6;
	    font-size: 22px;
	}
	.percent span:first-of-type {
	    font-size: 14px;
	}
	.percent span:last-of-type {
	    font-size: 14px;
	}
	.pickup_item_text {
		flex-grow: 1;
	}
	.pickup_item_name {
	    flex-grow: 0;
	    font-size: 13px;
	    margin: 12px 0 6px;
        line-height: 1.5;
	}
    .pickup_item_name > span {
	    font-size: 16px;
	   }
    .pickup_item_icon_col_wrap {
		 flex-grow: 1;
	}
	.pickup_item_icon_col {
	    flex-grow: 1;
	    flex-wrap: wrap;
	    flex-direction: column;
	    gap: 5px;
	    margin-bottom: 6px;
	}
	.pickup_item_icon {
	    font-size: 10px;
	    letter-spacing: 0.3px;
	    padding: 1px 6px;
	}
	.pickup_item_sale_price {
	    font-size: 22px;
	    font-weight: 700;
	    letter-spacing: -1px;
	    line-height: 1.4;
	    margin-bottom: 3px;
	}
	.pickup_item_sale_price > span {
	    font-size: 12px;
	}
	.pickup_item_selling_price {
	    font-size: 12px;
	    margin-bottom: 0;
	}
	.pickup_item_btn {
	    width: 100%;
	    margin: 7px auto 0;
	}
	.pickup_item_link {
	    font-size: 12px;
	}
}
@media (min-width: 600px) and (max-width: 1024px) {
    .pickup_item {
	    flex-wrap: nowrap;
	    gap: 20px;
	    padding: var(--paddingTABLET);
	    margin-bottom: 0;
	}
	.pickup_item_col {
	    flex: 0 1 calc((100% - 3 * 20px) / 4);
	}
	.pickup_item_col::after {
	    border-width: 0 0 70px 70px;
	}
	.percent {
	    top: 2%;
	    left: 3%;
	    line-height: 0.6;
	    font-size: 22px;
	}
	.percent span:first-of-type {
	    font-size: 14px;
	}
	.percent span:last-of-type {
	    font-size: 14px;
	}
	.pickup_item_text {
		flex-grow: 1;
	}
	.pickup_item_name {
	    flex-grow: 0;
	    font-size: 13px;
	    margin: 14px 0;
	}
    .pickup_item_icon_col_wrap {
		flex-grow: 2;
	}
	.pickup_item_icon_col {
	    flex-wrap: nowrap;
	    flex-direction: column;
	    gap: 10px;
	    margin-bottom: 6px;
	}
	.pickup_item_icon {
	    font-size: 10px;
	    letter-spacing: 0.3px;
	    padding: 4px 6px 1px;
	}
	.pickup_item_sale_price {
	    font-size: 23px;
	    font-weight: 700;
	    letter-spacing: -1px;
	    line-height: 1.4;
	    margin-bottom: 10px;
	}
	.pickup_item_sale_price > span {
	    font-size: 13px;
	}
	.pickup_item_selling_price {
	    font-size: 12px;
	    margin-bottom: 0;
	}
	.pickup_item_btn {
	    width: 90%;
	    margin: 15px auto 0;
	}
	.pickup_item_link {
	    font-size: 14px;
	}
}
@media (min-width: 1025px) {
	.pickup_item {
	    flex-wrap: nowrap;
	    gap: 40px;
	    width: 1290px;
	    max-width: 100%;
	    margin: 0 auto;
	    padding: 0 30px 7vh;
	}
	.pickup_item_col {
	    flex: 0 1 calc((100% - 3 * 40px) / 4);
	}
	.pickup_item_col::after {
	    border-width: 0 0 80px 80px;
	}
	.percent {
	    top: 2%;
	    left: 3%;
	    line-height: 0.6;
	    font-size: 24px;
	}
	.percent span:first-of-type {
	    font-size: 16px;
	}
	.percent span:last-of-type {
	    font-size: 16px;
	}
	.pickup_item_text {
		flex-grow: 1;
	}
	.pickup_item_name {
	    flex-grow: 1;
	    font-size: 16px;
	    margin: 14px 0 10px;
	    letter-spacing: -0.3px;
	}
	.pickup_item_icon_col {
	    flex-wrap: nowrap;
	    flex-direction: row;
	    gap: 10px;
	    margin-bottom: 16px;
	}
	.pickup_item_icon {
	    font-size: 11px;
	    letter-spacing: 0.3px;
	    padding: 4px 6px 1px;
	}
	.pickup_item_sale_price {
	    font-size: 34px;
	    font-weight: 700;
	    letter-spacing: -1px;
	    line-height: 1.4;
	    margin-bottom: 0;
	}
	.pickup_item_sale_price > span {
	    font-size: 19px;
	}
	.pickup_item_selling_price {
	    font-size: 14px;
	    margin-bottom: 0;
	    letter-spacing: -0.5px;
	}
	.pickup_item_btn {
	    width: 80%;
	    margin: 15px auto 0;
	}
	.pickup_item_link {
	    font-size: 14px;
	}
}

/* ------------------------------------------ 
	 
 - series_btn_area

------------------------------------------ */
 .series_btn_area {
	background: #f5f5f5;
 }
.series_btn_link {
	display: block;
	color: #fff;
	background: var(--red);
	border:2px solid var(--red);
	box-shadow: 1px 1px 6px 0px #d7d7d7;
	font-family: var(--font01);
	font-weight: bold;
	text-align: center;
	letter-spacing: 1px;
}
.series_btn_link:hover {
	color:var(--red);
	background:#fff;
	border:2px solid var(--red);
}
.series_smy_btn {
	display: flex;
	flex-wrap: nowrap;
	flex-direction: row;
	justify-content: center;
}
.fill_area .series_btn {
	padding: 0;
	margin:0 auto;
}
.series_smy_btn_label {
	text-align: center;
}
.series_smy_btn_label_link {
	font-family: var(--font03);
}
@media (max-width: 599px) {
    .series_btn_area {
		width: 100%;
		padding: 40px 7vw;
		margin: 0 auto;
	}
	.series_btn {
		margin: 0 auto 12px;
	}
	.series_smy_btn_tit {
		text-align: center;
		font-weight: bold;
		margin-bottom: 10px;
	}
	.series_btn_link {
		font-size: 14px;
		padding: 4px;
		position:relative;
	}
	.series_btn_link .fa-angle-right {
		position:absolute;
		top:30%;
		right:3%;
	}
	.series_smy_btn {
		flex-wrap: wrap;
		flex-direction: column;
		gap: 14px;
	}
	.series_smy_btn_label {
		width: 100%;
		flex: 0 1 calc((100% - 1 * 10px) / 2);
		border: 1px solid var(--main);
		background: #fff;
	}
	.series_smy_btn_label_link {
		display: block;
		border-bottom: none;
		font-size: 12px;
		padding: 5px 0;
		position:relative;
	}
	.series_smy_btn_label_link .fa-angle-right {
		position:absolute;
		top:30%;
		right:3%;
	}
}
@media (min-width: 600px) and (max-width: 1024px) {
    .series_btn_area {
		padding: 4vh 2vw;
	}
	.fill_area  .series_btn_area {
		padding: 4vh 2vw;
	}
	.series_btn {
		width: 70%;
		margin: 0 auto 27px;
	}
	.series_btn_link {
		font-size: 14px;
		padding: 6px;
	}
	.series_smy_btn {
		gap: 18px 60px;
		flex-wrap: wrap;
	}
	.series_smy_btn_label_link {
	    font-size: 15px;
	    font-weight: 600;
	    text-decoration: underline;
	}
	.series_btn_link .fa-angle-right,
	.allitem_btn_link .fa-angle-right{
		padding-left:20px;
	}
	.series_smy_btn_label_link .fa-angle-right {
		display: none;
		padding-left:10px;
	}
}
@media (min-width: 1025px) {
    .series_btn_area {
		padding: 7vh 0;
		width: 100%;
		max-width: 100%;
		margin: 0 auto;
	}
	.fill_area  .series_btn_area {
		 padding: 7vh 0;
	}
	.series_btn {
		width: 100%;
		max-width: 700px;
		padding-bottom: 20px;
		margin: 0 auto;
	}
	.series_btn_link {
		font-size: 18px;
		padding: 10px;
	}
	.series_smy_btn {
		gap: 50px;
	}
	.series_smy_btn_label_link {
	    font-size: 15px;
	    font-weight: 600;
	    text-decoration: underline;
	}
	.series_btn_link .fa-angle-right,
	.allitem_btn_link .fa-angle-right{
		padding-left:20px;
	}
	.series_smy_btn_label_link .fa-angle-right {
		display: none;
		padding-left:10px;
	}
}



/* ------------------------------------------ 
	 
 - allitem_btn

------------------------------------------ */
.allitem_btn_area {
	margin: 0 auto;
	position: relative;
}
.allitem_btn_link {
	display: block;
	color: var(--red);
	border: 2px solid var(--red);
	background:#fff;
	box-shadow: 1px 1px 6px 0px #d7d7d7;
	font-family: var(--font01);
	font-weight: bold;
	text-align: center;
	letter-spacing: 2px;
}
.allitem_btn_link:hover {
	color: #fff;
	border: 2px solid var(--red);
	background:var(--red);
}
@media (max-width: 599px) {
	.allitem_btn_area {
		padding: 4vh 7vw;
	}
	.allitem_btn_link {
		font-size: 14px;
		padding: 8px;
		position: relative;
	}
	.allitem_btn_link .fa-angle-right {
		position:absolute;
		top:30%;
		right:3%;
	}
}
@media (min-width: 600px) and (max-width: 1024px) {
	.allitem_btn_area {
		padding: 4vh 7vw;
	}
	.allitem_btn_link {
	    font-size: 14px;
		padding: 8px;
	}
}
@media (min-width: 1025px) {
	.allitem_btn_area {
		width: 100%;
		max-width: 100%;
		margin: 0 auto;
		position: relative;
		padding: 7vh 0;
	}
	.allitem_btn {
        width: 100%;
        max-width: 1040px;
        margin: 0 auto;
        padding: 0 30px;
 }
	.allitem_btn_link {
	    font-size: 18px;
	    padding: 10px;
	}
}



/* ------------------------------------------ 
	 
 - footer

------------------------------------------ */
.ac_products_footerbtn_box {
    text-align: center;
    margin: 0 auto;
}
.ac_products_footerbtn_box a {
	text-decoration: underline;
}
@media (max-width: 599px) {
    
}
@media (min-width: 600px) and (max-width: 1024px) {
    
}
@media (min-width: 1025px) {
	.ac_products_footerbtn_box {
		text-align: center;
		padding:var(--paddingPC);
		margin: 0 auto;
	}
	.ac_products_footerbtn_box a {
		text-decoration: underline;
	}  
}




