@charset "shift_jis";
@import url('../../../common/slick/slick.css');
@import url('../../../common/slick/slick-theme.css');
@import url('https://fonts.googleapis.com/icon?family=Material+Icons');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Ubuntu:wght@400;700&display=swap');
@import url('https://cdn.jsdelivr.net/npm/yakuhanjp@3.0.0/dist/css/yakuhanjp_s.min.css');

/* ========== ========== ==========
	Config
========== ========== ========== */

#christmas_wrap,
#christmas_wrap *, 
#christmas_wrap *:before, 
#christmas_wrap *:after {
	box-sizing: border-box;
	/* transition: 0.2s; */
}

#christmas_wrap h1, #christmas_wrap h2, 
#christmas_wrap h3, #christmas_wrap h4,
#christmas_wrap h5, #christmas_wrap h6,
#christmas_wrap p {
	margin: 0;
	padding: 0;
}

#christmas_wrap, #christmas_wrap * {
	font-family: YakuHanJPs, 'Noto Sans JP', "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "MS PGothic", sans-serif;
	font-size: 16px;
	line-height: 1.75;
}

#christmas_wrap ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

#christmas_wrap img {
	max-width: 100%;
	height: auto;
	border: 0;
	vertical-align: bottom;
}

#christmas_wrap a,
#christmas_wrap a:hover {
    text-decoration: none;
	transition: 0.2s;
}

#christmas_wrap a:hover,
#christmas_wrap a:hover > img {
	opacity: 0.5;
}

#christmas_wrap strong {
	font-size: inherit;
	font-weight: bold;
}

#christmas_wrap span {
	display: inline-block;
	font-size: inherit;
	font-weight: inherit;
}

.float_box { width: 100%; }
.fl { float: left; }
.fr { float: right; }

.clear { 
	clear: both;
}

.clearfix:after {
	content: "";
	display: block;
	clear: both;
}

/* ---------- ---------- ---------- */

/* .tec16-mainframe-header_bread-list {
	display: none !important;
} */

.l { text-align: left; }
.c { text-align: center; }
.r { text-align: right; }

html, body {
	margin: 0;
	padding: 0;
}



/* ========== ========== ==========
	#christmas_wrap
========== ========== ========== */

#christmas_wrap {
	width: 1000px;
	margin: 2em auto 0;
	padding: 0;
	background-color: #030e3c;
}



/* ========== ========== ==========
	#christmas_head
========== ========== ========== */

#christmas_wrap #christmas_head {
    width: 100%;
    margin: 0 auto;
	padding: 0;
}



/* ========== ========== ==========
	#christmas_main
========== ========== ========== */

#christmas_wrap #christmas_main {
    width: 100%;
    margin: 0 auto;
}
#christmas_wrap #christmas_main section:not(:first-of-type) {
	margin-top: 4em;
}
#christmas_wrap #christmas_main section .content__inner {
	padding: 2em;
}
#christmas_wrap #christmas_main section .content__inner h3.ttl {
	margin-bottom: 0.5em;
	color: #ffffff;
	font-family: 'Ubuntu', sans-serif;
	font-weight: normal;
	font-size: 5em;
	text-align: center;
}
#christmas_wrap #christmas_main section .content__inner h3.ttl .sub {
	display: block;
	margin-top: -1em;
	color: #cccccc;
	font-size: 0.3em;
}
#christmas_wrap #christmas_main section .content__inner h4.ttl {
	margin-bottom: 1em;
	padding: 1em;
	border-top: 2px solid #ffffff;
	border-bottom: 2px solid #ffffff;
	color: #ffffff;
	font-size: 1.5em;
	font-weight: bold;
	text-align: center;
}
#christmas_wrap #christmas_main section .content__inner p.lede {
	margin-bottom: 2em;
	color: #ffffff;
	font-size: 1.25em;
	font-weight: bold;
	text-align: center;
}



/* ========== ========== ==========
	#christmas_info
========== ========== ========== */

#christmas_wrap #christmas_main #christmas_info {
	margin: 2em 2em 4em;
    padding: 1em;
    background-image: linear-gradient(
        -45deg,
        #e6e6e7 25%,
        #e3e3e4 25%, #e3e3e4 50%,
        #e6e6e7 50%, #e6e6e7 75%,
        #e3e3e4 75%, #e3e3e4
    );
    background-size: 15px 15px;
}
#christmas_wrap #christmas_main #christmas_info h3.ttl {
    margin-bottom: 0.5em;
    padding: 0;
    background-color: transparent;
    background-image: none;
    color: #1f1f37;
	cursor: pointer;
    font-size: 1.5em;
    font-weight: bold;
    text-align: center;
	position: relative;
}
#christmas_wrap #christmas_main #christmas_info .toggle--btn::after {
	content: "＋";
	font-size: 1.25em;
	font-weight: bold;
	position: absolute;
	left: 95%;
	top: 50%;
	transform: translateY(-50%);
}
#christmas_wrap #christmas_main #christmas_info .toggle--btn.active::after {
	content: "−";
}
#christmas_wrap #christmas_main #christmas_info #christmas_info_inner {
	display: none;
    padding: 1em 2em 2em;
    background-color: #ffffff;
}
#christmas_wrap #christmas_main #christmas_info #christmas_info_inner h4.ttl {
    margin: 1em 0;
    padding: 0.25em 0.5em;
    background-color: #e3e3e4;
    color: #1f1f37;
    font-size: 1em;
	font-weight: bold;
}
#christmas_wrap #christmas_main #christmas_info #christmas_info_inner h5 {
    margin: 1em 0;
    font-size: 1em;
	font-weight: bold;
}
#christmas_wrap #christmas_main #christmas_info #christmas_info_inner h5:before {
    content: "◆";
}
#christmas_wrap #christmas_main #christmas_info #christmas_info_inner p.mar-t1em {
    margin-top: 1em;
}
#christmas_wrap #christmas_main #christmas_info #christmas_info_inner p:not(:first-of-type) {
	margin-top: 1em;
}
#christmas_wrap #christmas_main #christmas_info #christmas_info_inner p strong {
    color: #ad1a29;
    font-size: 1.25em;
	font-weight: bold;
}
#christmas_wrap #christmas_main #christmas_info #christmas_info_inner p .red {
    color: #ad1a29;
	font-weight: bold;
}
#christmas_wrap #christmas_main #christmas_info #christmas_info_inner p .big {
    font-size: 1.25em;
	font-weight: bold;
}
#christmas_wrap #christmas_main #christmas_info #christmas_info_inner p a {
	color: #1a64ad;
    font-size: inherit;
	text-decoration: underline;
}
#christmas_wrap #christmas_main #christmas_info #christmas_info_inner .card_list {
	display: flex;
	justify-content: space-between;
	max-width: 780px;
	margin-top: 1em;
}
#christmas_wrap #christmas_main #christmas_info #christmas_info_inner .card_list .item {
	width: 32%;
}
#christmas_wrap #christmas_main #christmas_info #christmas_info_inner .card_list .caption {
	margin-top: 0.5em;
	font-size: 0.75em;
	text-align: center;
}
#christmas_wrap #christmas_main #christmas_info #christmas_info_inner .card_list .item .caption .circle {
	display: inline-block;
	width: 1.75em;
	height: 1.75em;
	margin-right: 0.25em;
	background-color: #222222;
	border-radius: 50%;
	color: #ffffff;
}



/* ========== ========== ==========
	#christmas_nav
========== ========== ========== */

#christmas_wrap #christmas_main #christmas_nav {
	margin-top: 2em;
}
#christmas_wrap #christmas_main #christmas_nav .content__inner {
	padding: 0 2em;
}
#christmas_wrap #christmas_main #christmas_nav .nav__list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#christmas_wrap #christmas_main #christmas_nav .nav__list .btn {
	display: block;
	width: 49%;
	padding: 1em;
	background-color: #ad1a29;
	border-radius: 0.5em;
	color: #ffffff;
	font-size: 1.25em;
	font-weight: bold;
	text-align: center;
	position: relative;
}
#christmas_wrap #christmas_main #christmas_nav .nav__list .btn::after {
	content: "";
	display: inline-block;
	width: 18px;
	height: 18px;
	border-top: 4px solid #ffffff;
	border-right: 4px solid #ffffff;
	position: absolute;
	right: 1em;
	top: 50%;
	transform: translateY(-50%) rotate(45deg);
}
#christmas_wrap #christmas_main #christmas_nav .nav__list .btn .sub {
	font-size: 0.75em;
}
#christmas_wrap #christmas_main #christmas_nav .nav__list .btn .main {
	font-size: 1.25em;
}



/* ========== ========== ==========
	.item__container
========== ========== ========== */

#christmas_wrap #christmas_main .display .item__container {
	display: grid;
	gap: 1em;
}
#christmas_wrap #christmas_main .display .item__container:not(:first-of-type) {
	margin-top: 2em;
}
#christmas_wrap #christmas_main .display .item__container.column--3 {
	grid-template-columns: repeat(3, 1fr);
}
#christmas_wrap #christmas_main .display .item__container.column--4 {
	grid-template-columns: repeat(4, 1fr);
}
#christmas_wrap #christmas_main .display .item__container .item {
	display: grid;
	grid-template-rows: subgrid;
	grid-row: span 3;
	background-color: rgba(255, 255, 255, 0.1);
	border-radius: 1em;
	color: #ffffff;
	overflow: hidden;
}
#christmas_wrap #christmas_main .display .item__container .item .item__txt {
	margin: 0 1em;
	padding-bottom: 1em;
	border-bottom: 2px dotted #ffffff;
}
#christmas_wrap #christmas_main .display .item__container .item .item__txt .lede {
	margin-bottom: 0.5em;
	color: #ad1a29;
	font-weight: bold;
}
#christmas_wrap #christmas_main .display .item__container .item .item__ttl {
	margin: 0 1em 1em;
}
#christmas_wrap #christmas_main .display .item__container .item .item__ttl .ttl {
	font-weight: bold;
}
#christmas_wrap #christmas_main .display .item__container .item .item__ttl .price {
	margin-top: 1em;
	font-weight: bold;
	text-align: right;
}
/* #christmas_wrap #christmas_main .display .item__container .item .item__ttl .price::before {
	content: "……";
	margin-right: 0.5em;
} */



/* ========== ========== ==========
	.btn__list
========== ========== ========== */

#christmas_wrap #christmas_main .display .btn__list {
	margin-top: 2em;
}
#christmas_wrap #christmas_main .display .btn__list .btn {
	display: block;
	margin-top: 2em;
	padding: 1em;
	background-color: #ad1a29;
	border-radius: 0.5em;
	color: #ffffff;
	font-size: 1.25em;
	font-weight: bold;
	text-align: center;
	position: relative;
}
#christmas_wrap #christmas_main .display .btn__list .btn::after {
	content: "";
	display: inline-block;
	width: 18px;
	height: 18px;
	border-top: 4px solid #ffffff;
	border-right: 4px solid #ffffff;
	position: absolute;
	right: 1em;
	top: 50%;
	transform: translateY(-50%) rotate(45deg);
}
#christmas_wrap #christmas_main .display .btn__list .btn:not(:first-of-type) {
	margin-top: 1em;
}



/* ========== ========== ==========
	#content_btn
========== ========== ========== */

#christmas_wrap #christmas_main #content_btn {
	margin-top: 0;
}
#christmas_wrap #christmas_main #content_btn .content__inner {
	padding-top: 0;
}



/* ========== ========== ==========
	#special__wrapper
========== ========== ========== */

#christmas_wrap #christmas_main #special__wrapper {
	background: url("../images/bg_special.png") center center repeat, linear-gradient(#853838, #4a1c1c);
}
#christmas_wrap #christmas_main #special__wrapper .content__inner h4.ttl {
	margin-top: 2em;
}