@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Sans+JP:wght@700&display=swap');

img {
	max-width: 100%;
}
header {
	padding: 2em 0;
}
.gfont {
	font-family: "IBM Plex Sans JP", sans-serif;
  font-weight: 700;
}
.fs_small {font-size:90%;}
.fs_large {font-size: 120%;}
.fs_xlarge {font-size: 140%;}
.em {font-weight: bold;}
.underline {text-decoration: underline;}
.txt_center {text-align: center;}
.red {color: #f00;}
.list > li {
	position: relative;
	padding-left: 1.3em;
}
.list > li::before,
.list > li > .num {
	position: absolute;
	top: 0;
	left: 0;
}
.list.smldot > li::before {
	content: "・";
}
.list.circle > li::before {
	content: "○";
}
.list.kome > li::before {
	content: "※";
}
.list.custom_2 > li {
	padding-left: 2.3em;
}
.list.custom_3 > li {
	padding-left: 3.3em;
}
.list.custom_4 > li {
	padding-left: 3.8em;
}
.list.inline,
.list.inline > li {
	display: inline-block;
	text-align: left;
}
.container {
	width: 92%;
	max-width: 1024px;
	margin: 0 auto;
}

.header_logo {
	width: 20%;
	max-width: 120px;
}
.lp a {
	color: #004da0;
	text-decoration: underline;
}
.lp a img {
	transition: .5s;
}
.lp a:hover {
	text-decoration: none;
}
.lp a:hover img {
	opacity: .7;
}
.lp_box {
	background: #cba817;
	padding: 5em 0;
}
.lp_box.campaign {
	padding: 2em 0 3em;
}
.lp_box._main {
	background: #bd0008 url("../images/bgs_winter2025.png") repeat-y center center / 100% auto;
}
.lp_box._sec,
.lp_wbox._sec {
	margin-top: 3em;
}
.lp_box._bb {
	color: #fff;
	border-radius: 0 0 1em 1em;
	padding: 3em 3em 4em;
}
.lp_wbox._b {
	border-radius: 1em 1em 0 0;
}
.lp_catch {
	text-align: center;
	margin-bottom: 3em;
}
.lp_catch ._tit {
	margin-bottom: .5em;
}
.lp_catch ._tit + .list {
	color: #fff;
	font-size: clamp(11px, .951vw, 13px);
	margin-bottom: .75em;
}
.lp_catch ._body {
	background: linear-gradient(135deg, #cba817 20%, #a28612 60%);
	border-radius: 1em;
	padding: 2em 4em;
}
.detail_btn {
	width: 100%;
	max-width: 880px;
	background: linear-gradient(135deg, #a28612 20%, #8c7202 60%);
	border: 2px solid #fff;
	border-radius: 10px;
	color: #fff;
	font-family: "IBM Plex Sans JP", sans-serif;
	font-weight: 700;
	font-size: clamp(16px, 1.464vw, 20px);
	padding: .4em 1em;
	margin: 1em auto 0;
	transition: .5s;
}
.detail_btn.trigger.active {
	border-radius: 10px 10px 0 0;
}
.detail_btn.trigger::after {
	border-right-color: #fff;
	border-bottom-color: #fff;
}
.detail_btn.trigger:hover {
	background: #705a00;
}
.detail_btn.trigger:hover::after {
	border-right-color: #fff;
	border-bottom-color: #fff;
}
.detail_body {
	font-size: clamp(14px, 1.171vw, 16px);
	line-height: 1.7;
	text-align: left;
	padding: 2em;
}
.detail_body.trigger_target {
	width: 100%;
	max-width: 880px;
	border: 2px solid #fff;
	border-top: none;
	border-radius: 0 0 10px 10px;
	background: #fff;
	margin: 0 auto;
}
.detail_body dl dt {
	font-family: "IBM Plex Sans JP", sans-serif;
	font-weight: 700;
	font-size: 110%;
	line-height: 1.5;
	position: relative;
	padding: 0 0 .25em 1.3em;
}
.detail_body dl dt::before {
	content: "●";
	color: #cba817;
	position: absolute;
	top: 0;
	left: 0;
}
.detail_body dl dd {
	padding: .25em 0 0 1.5em;
}
.detail_body dl dd .lp_att_box {
	margin-top: 1em;
}
.detail_body dl dd + dt {
	margin-top: 2em;
}
.detail_body dl dd .gfont {
	font-size: 110%;
}
.detail_body_bb {
	text-align: center;
	margin: 2em 0;
}
.detail_body_bb ._bb {
	margin: 1em auto 0;
}
.lp_heading {
	background: #bd0008 url("../images/bg_winter2025.png") no-repeat center center / cover;
	text-align: center;
	border-bottom: 6px solid #e7b251;
}
.lp_heading ._tit {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
}
.lp_heading ._camtit {
	width: 90%;
	max-width: 500px;
	margin: 0 auto;
}
.lp_wbox {
	background: #fff;
	border-radius: 1em;
	padding: 3em;
}
.lp_block + .lp_block {
	margin-top: 4em;
}
.lp_block ._tit {
	display: flex;
	flex-flow: row nowrap;
	align-items: center;
	text-align: center;
	margin-bottom: 2em;
}
.lp_block ._tit::before,
.lp_block ._tit::after {
	content: "";
	height: 1.05em;
	background: repeating-linear-gradient(#cba817, #cba817 .15em, transparent .15em, transparent .45em);
	flex-grow: 1;
	margin-right: 1em;
}
.lp_block ._tit::after {
	background: repeating-linear-gradient(#c7000b, #c7000b .15em, transparent .15em, transparent .45em);
	margin: 0 0 0 .5em;
}
.lp_block ._tit > span {
	background: repeating-linear-gradient(90deg, #c7000b 0 1.25em, #cba817 1.25em 2.5em);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	font-family: "IBM Plex Sans JP", sans-serif;
  font-weight: 700;
	font-size: clamp(18px, 2.196vw, 30px);
	letter-spacing: .25em;
	line-height: 1.4;
}
.lp_block ._tit.trigger {
	padding-right: 2em;
	margin-bottom: 0;
}
.lp_block ._tit.trigger::after {
	border-right-width: 4px;
	border-bottom-width: 4px;
	border-right-color: #fff;
	border-bottom-color: #fff;
}
.lp_body.trigger_target {
	margin-top: 1.5em;
}
.lp_block ._tit .list.inline.fs_small {
	font-size: 70%;
	margin-left: .5em;
}
#hint.lp_block ._tit,
#dento_a.lp_block ._tit {
	display: block;
	background: #cba817;
	border-radius: 10px;
	color: #fff;
	font-family: "IBM Plex Sans JP", sans-serif;
	font-weight: 700;
	font-size: clamp(16px, 1.903vw, 26px);
	margin-bottom: 1em;
}
#dento_a.lp_block ._tit {
	background: #c7000b;
	line-height: 1.4;
	padding: .5em 1em;
}
#hint.lp_block ._tit::before,
#hint.lp_block ._tit::after,
#dento_a.lp_block ._tit::before,
#dento_a.lp_block ._tit::after {
	content: none;
}
.lp_block ._tit._icontit {
	padding: .2em 1em .3em;
}
.lp_block ._tit ._icon {
	display: inline-block;
	vertical-align: -.5em;
	width: 1.85em;
}
.flex {
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-between;
}
.flex > * {
	width: 48.5%;
}
.lp_block .flex._calendar > *:nth-child(1) {
	width: 65%;
	padding-top: 1em;
}
.lp_block .flex._calendar > *:nth-child(2) {
	width: 30%;
	max-width: 280px;
	align-self: center;
}
.lp_body {
	font-size: clamp(14px, 1.317vw, 18px);
	padding: 0 1em;
}
.lp_detail {
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
}
.lp_detail > dt {
	width: 5em;
}
.lp_detail > dd {
	width: calc(100% - 5.5em);
}
.lp_detail > *:nth-child(n+3) {
	margin-top: .5em;
}
.lp_calendar_txt {
	margin-top: .5em;
}
.lp_calendar_txt > span {
	display: inline-block;
	width: 2em;
	height: 1.5em;
	background: #f8c3b6;
	vertical-align: middle;
	margin-right: .25em;
}
.lp_graf {
	width: 100%;
	max-width: 540px;
	margin: 0 auto 1.5em;
}
.flex._menu {
	margin-top: .5em;
}
.flex._menu > * {
	width: 23%;
}
.lp_att_box {
	border: 1px solid #888;
	margin-top: 2em;
}
.lp_att_tit {
	background: #eee;
	border-bottom: 1px solid #888;
	font-size: 110%;
	font-weight: bold;
	line-height: 1.4;
	padding: .5em 1em;
}
.lp_att_body {
	line-height: 1.7;
	padding: 1.1em;
}
.trigger {
	cursor: pointer;
	position: relative;
}
.trigger_target {
	display: none;
}
.trigger::after {
	content: "";
	width: .5em;
	height: .5em;
	border-right: 3px solid #666;
	border-bottom: 3px solid #666;
	position: absolute;
	top: calc(50% - .15em);
	right: 1em;
	transform: translateY(-50%) rotate(45deg);
	transition: .5s;
}
.trigger.active::after {
	top: calc(50% + .15em);
	transform: translateY(-50%) rotate(225deg);
}
.lp_att_box.trigger_box {
	padding: 0;
	margin-top: 1em;
}
.lp_att_tit.trigger {
	padding: .65em 2.25em .65em .9em;
	margin: 0;
}
.lp_att_tit.trigger > span {
	background: transparent;
	padding: 0;
}
.lp_att_tit.trigger + .trigger_target {
	padding: .25em 1em 1em;
}
.lp_btn_block {
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-between;
	text-align: center;
	margin-top: 2em;
}
a.lp_btn {
	display: flex;
	flex-flow: column nowrap;
	justify-content: center;
	width: 48.5%;
	border: 3px solid #c7000b;
	border-radius: .5em;
	background: #fff;
	color: #c7000b;
	font-family: "IBM Plex Sans JP", sans-serif;
	font-weight: 700;
	font-size: clamp(16px, 1.756vw, 24px);
	text-decoration: none;
	line-height: 1.4;
	padding: 1em 2em 1em 1em;
	position: relative;
	transition: .5s;
}
a.lp_btn::after {
	content: "";
	width: .5em;
	height: .5em;
	border-top: 3px solid #c7000b;
	border-right: 3px solid #c7000b;
	transform: rotate(45deg) translateY(-50%);
	position: absolute;
	top: 50%;
	right: 1em;
}
a.lp_btn._red {
	background: #c7000b;
	color: #fff;
}
a.lp_btn._red::after {
	border-top-color: #fff;
	border-right-color: #fff;
}
a.lp_btn:hover {
	opacity: .7;
}
.lp_hint_block {
	width: 100%;
	font-family: "IBM Plex Sans JP", sans-serif;
	font-weight: 700;
	font-size: 105%;
	margin: 1.5em 0;
}
.lp_hint_block > div {
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-between;
	align-items: center;
}
.lp_hint_block > div + div {
	border-top: 1px solid #ccc;
	margin-top: 1em;
	padding-top: 1em;
}
.lp_hint_block figure {
	width: 20%;
	text-align: center;
}
.lp_hint_block figure img {
	width: 60%;
}
.lp_hint_block figure figcaption {
	/*color: #116c91;*/
	line-height: 1.2;
	letter-spacing: .05em;
	margin-top: .75em;
}
.lp_hint_block_body {
	width: 80%;
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-between;
	align-items: center;
	line-height: 1.6;
}
.lp_hint_block ._kake {
	display: inline-block;
	margin: 0 .25em;
}
.lp_hint_block .red {
	color: #c7000b;
}
.lp_hint_block_tit {
	width: 10em;
	line-height: 1.4;
	text-align: center;
	position: relative;
}
.lp_hint_block_tit .red {
	font-size: 120%;
}
.lp_hint_block_tit::after {
	content: "";
	display: block;
	width: 2.5em;
	height: 2.5em;
	clip-path: polygon(0% 20%, 50% 20%, 50% 0, 100% 50%, 50% 100%, 50% 80%, 0% 80%);
	background: linear-gradient(to right, transparent 0%, #cba817 80%);
	position: absolute;
	top: calc(50% - 1em);
	right: -2.75em;
}
.lp_hint_block_exam {
	width: calc(100% - 14em);
}
.lp_hint_block_exam > * {
	font-size: 120%;
}
.lp_hint_block._digest {
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
}
.lp_hint_block._digest > div {
	width: 25%;
}
.lp_hint_block._digest > div + div {
	margin-top: 0;
	padding-top: 0;
	border-top: none;
	border-left: 1px solid #ccc;
}
.lp_hint_block._digest figure {
	width: 100%;
}
.lp_hint_block._digest .hint_block_body {
	display: none;
}
.lp_attention_box {
	background: #ccedfb;
	line-height: 1.7;
	padding: 1.5em 2em 2em;
	margin-top: 1.5em;
}
.lp_attention_box._yellow {
	background: #f8eac6;
}
.lp_attention_tit {
	font-family: "IBM Plex Sans JP", sans-serif;
	font-weight: 700;
	font-size: 120%;
	letter-spacing: .05em;
	line-height: 1.3;
	text-align: center;
	margin-bottom: 1em;
}
.lp_attention_tit ._icon {
	display: inline-block;
	width: 2em;
	margin-right: .5em;
	vertical-align: -.5em;
}
.lp_flow {
	display: flex;
	flex-flow: column nowrap;
	margin-top: 1em;
}
.lp_flow > li {
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-between;
	align-items: flex-start;
	border: 1px solid #ccc;
	padding: 1.5em;
}
.lp_flow > li + li {
	margin-top: 1em;
}
.lp_flow > li > .num {
	width: 2.5em;
	background: #c7000b;
	color: #fff;
	font-family: "IBM Plex Sans JP", sans-serif;
	font-weight: 700;
	font-size: 140%;
	line-height: 2.5;
	text-align: center;
}
.lp_flow > li > .num + div {
	width: calc(100% - 6em);
}
.lp_flow > li > .num + div > * + * {
	margin-top: .5em;
}
.lp_flow .number {
	display: inline-block;
	background: #c7000b;
	color: #fff;
	width: 1.6em;
	line-height: 1.5;
	text-align: center;
	margin-right: .25em;
}
.lp_lead {
	font-family: "IBM Plex Sans JP", sans-serif;
	font-size: clamp(16px, 1.610vw, 22px);
	font-weight: 700;
	text-align: center;
	margin-bottom: .75em;
}
.lp_bb {
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-between;
	width: 100%;
	background: #fff;
	border-radius: 2em;
	padding: 2em 3em;
	margin: 0 auto;
}
.lp_bb > div {
	width: 48.5%;
}
.lp_bb ._bb {
	margin: 1.5em auto .5em;
}
.lp_bb ._bb a {
	display: block;
}
.lp_bb ._copy {
	color: #00a0ea;
	font-size: clamp(14px, 1.171vw, 16px);
	font-weight: bold;
	padding: 0 1em;
}
.lp_bb > div:nth-child(2) ._copy {
	color: #c7000b;
}
footer {
	padding: 3em 0 1em;
}

.closed {
	background: #fff;
	border: 2px solid #f00;
	color: #f00;
	font-size: 18px;
	font-weight: bold;
	text-align: center;
	padding: .5em 1.5em;
	margin-top: 1.5em;
}


@media only screen and (max-width:768px) {
	header {
		padding: 1em 0;
	}
	.fs_large {font-size: 110%;}
	.fs_xlarge {font-size: 120%;}
	.lp_box {
		padding: 1.5em 0;
	}
	.lp_box.campaign {
		padding: 1.5em 0;
	}
	.lp_box._sec,
	.lp_wbox._sec {
		margin-top: 2em;
	}
	.lp_box._bb {
		padding: 1.5em 1.5em 3em;
	}
	.lp_catch ._tit {
		margin-bottom: 1em;
	}
	.lp_catch ._tit img {
		width: 100%;
		max-width: 572px;
	}
	.lp_catch ._body {
		padding: 1.5em;
	}
	.lp_catch ._body > div:first-child {
		padding: 0;
	}
	.lp_catch ._body > div:first-child img {
		max-width: 500px;
	}
	.detail_btn {
		border-width: 1px;
		margin-top: 1em;
	}
	.detail_body {
		padding: 1em;
	}
	.detail_body.trigger_target {
		border-width: 1px;
	}
	.detail_body dl dt {
		font-size: 110%;
	}
	.detail_body dl dd {
		padding: 0;
	}
	.detail_body dl dd .gfont {
		font-size: 105%;
	}
	.detail_body_bb {
		margin: 1em 0;
	}
	.detail_body_bb ._bb {
		margin-top: .5em;
	}
	.lp_heading {
		border-bottom-width: 3px;
	}
	.lp_heading ._tit {
		width: 140%;
		margin: 0 -20%;
	}
	.lp_wbox {
		padding: 1.5em;
	}
	.lp_block + .lp_block {
		margin-top: 2em;
	}
	.lp_block ._tit {
		margin-bottom: 1em;
	}
	.lp_block ._tit::before,
	.lp_block ._tit::after {
		height: 1em;
		background: repeating-linear-gradient(#cba817, #cba817 .1em, transparent .1em, transparent .35em);
		margin-right: .75em;
	}
	.lp_block ._tit::after {
		background: repeating-linear-gradient(#c7000b, #c7000b .1em, transparent .1em, transparent .35em);
		margin: 0 0 0 .35em;
	}
	.lp_block ._tit > span {
		background: repeating-linear-gradient(90deg, #c7000b 0 1.25em, #cba817 1.25em 2.5em);
		-webkit-background-clip: text;
		background-clip: text;
		color: transparent;
		font-family: "IBM Plex Sans JP", sans-serif;
		font-weight: 700;
		font-size: clamp(18px, 2.196vw, 30px);
		letter-spacing: .25em;
		line-height: 1.4;
	}
	.lp_block ._tit.trigger::after {
		border-right-width: 3px;
		border-bottom-width: 3px;
	}
	.lp_body.trigger_target {
		margin-top: 1em;
	}
	.lp_block ._tit .list.inline.fs_small {
		display: block;
		font-size: 75%;
		text-align: center;
		margin: .25em auto 0;
	}
	.flex {
		flex-direction: column;
	}
	.flex > * {
		width: 100%;
	}
	.flex > * + * {
		margin-top: 2em;
	}
	.lp_block .flex._calendar > *:nth-child(1) {
		width: 100%;
		padding-top: 0;
	}
	.lp_block .flex._calendar > *:nth-child(2) {
		width: 100%;
	}
	.lp_body {
		padding: 0;
	}
	.flex._menu {
		flex-flow: row wrap;
	}
	.flex._menu > * {
		width: 47%;
		margin-top: 0;
	}
	.flex._menu > *:nth-child(n+3) {
		margin-top: 1em;
	}
	.lp_att_box {
		margin-top: 1em;
	}
	.trigger::after {
		border-right-width: 2px;
		border-bottom-width: 2px;
	}
	.lp_btn_block {
		flex-direction: column;
		justify-content: center;
	}
	.lp_btn_block a.lp_btn + a.lp_btn {
		margin-left: 0;
		margin-top: .75em;
	}
	a.lp_btn {
		width: 100%;
		border-width: 2px;
		padding: .75em 2em .75em .75em;
	}
	a.lp_btn::after {
		border-top-width: 2px;
		border-right-width: 2px;
	}
	.lp_hint_block > div {
		flex-direction: column;
		justify-content: center;
	}
	.lp_hint_block figure {
		width: 100%;
	}
	.lp_hint_block figure img {
		width: 35%;
		max-width: 130px;
	}
	.lp_hint_block_body {
		width: 100%;
		flex-direction: column;
		margin-top: .5em;
	}
	.lp_hint_block_tit {
		width: 100%;
	}
	.lp_hint_block_tit::after {
		clip-path: polygon(80% 0, 80% 50%, 100% 50%, 50% 100%, 0 50%, 20% 50%, 20% 0);
		background: linear-gradient(transparent 0%, #cba817 80%);
		top: auto;
		bottom: -2.5em;
		right: calc(50% - 1em);
	}
	.lp_hint_block_exam {
		width: 100%;
		margin-top: 2.5em;
		text-align: center;
	}
	.lp_hint_block._digest {
		margin-bottom: 0;
	}
	.lp_hint_block._digest > div {
		width: 50%;
		padding: 10px;
	}
	.lp_hint_block._digest > div:nth-child(3) {
		border-left: none;
	}
	.lp_hint_block._digest > div:nth-child(n+3) {
		border-top: 1px solid #ccc;
		padding: 10px;
	}
	.lp_hint_block._digest figure img {
		width: 60%;
	}
	.lp_hint_block._digest > div:nth-child(2) figure img {
		margin: .9em;
	}
	.lp_hint_block._digest > div:nth-child(4) figure img {
		margin: .3em;
	}
	.lp_attention_box {
		padding: 1em;
	}
	.lp_attention_tit {
		font-size: 110%;
		margin-bottom: .75em;
	}
	.lp_attention_tit ._icon {
		width: 1.5em;
		vertical-align: -.25em;
	}
	.lp_flow > li {
		flex-direction: column;
		justify-content: center;
		align-items: stretch;
		padding: 0;
	}
	.lp_flow > li > .num {
		width: 100%;
		font-size: 120%;
		line-height: 2;
	}
	.lp_flow > li > .num + div {
		width: 100%;
		padding: 1em;
	}
	.lp_bb {
		flex-direction: column;
		justify-content: center;
		border-radius: 1em;
		padding: 1.5em;
	}
	.lp_bb > div {
		width: 100%;
	}
	.lp_bb ._bb {
		margin: 1em auto .25em;
	}
	.lp_bb > div:nth-child(2) {
		margin-top: 2em;
	}
	
	.closed {
		border-width: 1px;
		font-size: 14px;
		text-align: left;
		padding: .5em 1em;
		margin-top: 1em;
	}
	
	
}