@charset "UTF-8";


/* ================================================================================
keyvisual
================================================================================ */
@media print, screen
{

#keyvisual
{
	scroll-margin-top: var(--headerH);
}

#keyvisual > .inner
{
	max-width: var(--pageW);
	padding: 40px var(--pageP);
	margin: 0 auto;
}
#keyvisual h1
{
	width: fit-content;
	margin: 0 auto 20px;
}
#keyvisual h1 svg{	width: 857rem;	aspect-ratio: 857/146;	}

#keyvisual .period
{
	width: fit-content;
	margin: 0 auto 30px;
}
#keyvisual .period svg{	width: 646rem;	aspect-ratio: 646/47;	}


#keyvisual .periodBoxes
{
	display: flex;	justify-content: center;	align-items: center;
	gap: 10px;
	margin: 0 auto 30px;
}
#keyvisual .periodBoxes p{	text-align: center;	}
#keyvisual .periodBoxes .box:nth-child(1) p:nth-child(1)
{
	font-size: 17px;
	font-weight: 700;
	letter-spacing: 0.14em;
	line-height: 1.2;
}
#keyvisual .periodBoxes .box:nth-child(1) p:nth-child(2)
{
	font-size: 7px;
	letter-spacing: 0.10em;
}
#keyvisual .periodBoxes .box:nth-child(2) p span:nth-child(1)
{	font-size: 26px;	}
#keyvisual .periodBoxes .box:nth-child(2) p span:nth-child(2),
#keyvisual .periodBoxes .box:nth-child(2) p span:nth-child(5)
{	font-size: 40px;	}
#keyvisual .periodBoxes .box:nth-child(2) p span:nth-child(3),
#keyvisual .periodBoxes .box:nth-child(2) p span:nth-child(6)
{	font-size: 18px;	}
#keyvisual .periodBoxes .box:nth-child(2) svg
{
	width: 19px;
	margin: 0 7px;
	transform: translate(0,-10px);
}
#keyvisual .periodBoxes .box:nth-child(2) svg polygon{	fill: var(--Cgray1);	}

#keyvisual .keyvisual
{
	max-width: 1013rem;	/*aspect-ratio: 1013/165;*/
	margin: 0 auto;
}

}
@media screen and (max-width: 767px)
{

#keyvisual > .inner{	padding: 50rem 0;	}
#keyvisual h1{	margin: 0 auto 30rem;	}
#keyvisual h1 svg{	width: 644rem;	aspect-ratio: 644/266;	}

#keyvisual .period{	margin: 0 auto 10rem;	}
#keyvisual .period svg{	width: 603rem;	aspect-ratio: 603/125;	}

#keyvisual .keyvisual{	max-width: 705rem;	/*aspect-ratio: 1410/995;*/	}

}

.keyvisual {
	position: relative;
	margin-bottom: 290px !important;
}
.keyvisual .bg,
.keyvisual .inner {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
}
@media screen and (max-width: 767px){
	.keyvisual {
		margin-bottom: calc(330 / 767 * 100vw) !important;
	}
}

/* ================================================================================
benefit
================================================================================ */
@media print, screen
{

#benefit
{
	scroll-margin-top: var(--headerH);
}
#benefit > .inner
{
	max-width: var(--pageW);
	padding: 50px var(--pageP) 0;
	margin: 0 auto;
}

#benefit .EOS
{
	margin: 0 auto 40px;

	color: red;
	font-size: 28px;
	font-weight: 700;
	text-align: center;
	line-height: 1.5;
}

#benefit .titleSub
{
	margin: 0 auto 0.1em;

	color: var(--Cspring2026);
	font-size: 32px;
	text-align: center;
	letter-spacing: 0.05em;
}
#benefit .titleSubAcc
{
	display: block;
	width: 580px;	aspect-ratio: 580/23;
	margin: 0 auto 20px;
}

#benefit h2
{
	line-height: 1.4;
	margin: 0 0 20px;
	font-size: 35px;
	font-weight: 700;
	text-align: center;
}

#benefit .boxes
{
	display: flex;
	width: 670px;

	border: 2px solid var(--Cspring2026);

	margin: 0 auto 25px;
	overflow: hidden;
}
#benefit .boxes .box{	width: 50%;	}

#benefit .title
{
	position: relative;
	display: flex;	justify-content: center;	align-items: center;
	height: 105px;
	background-color: var(--Cspring2026);
}
#benefit .box:nth-child(2) .title{	background: linear-gradient(180deg, white 0px 4px, transparent 4px 8px) repeat-y top left/2px 8px var(--Cspring2026);	}
#benefit .box:nth-child(2) ul{	background: linear-gradient(180deg, var(--Cspring2026) 0px 4px, transparent 4px 8px) repeat-y top left/2px 8px;	}

#benefit .title p
{
	color: white;
	font-size: 26px;
	font-weight: 700;
}
#benefit .title p .pr
{
	color: var(--Cyellow1);
	font-size: 1.7em;
	font-weight: 700;
	letter-spacing: -0.05;
}
#benefit .title p .cb
{
	font-size: 1.3em;
	font-weight: 700;
}
#benefit ul
{
	display: flex;	flex-direction: column;	justify-content: center;
	gap: 20px;
	padding: 20px 0;
}

#benefit li p:nth-child(1)
{
	padding: 0 0 .25em;
	font-size: 31px;
	font-weight: 700;
	text-align: center;
}
#benefit li p:nth-child(2)
{
	padding: 0 0 .25em;
	font-size: 19px;
	font-weight: 700;
	text-align: center;
}
#benefit li p:nth-child(3)
{
	/* color: var(--Cspring2026); */
	font-size: 12px;
	font-weight: 500;
	text-align: center;
}

#benefit .message
{
	display: flex;	justify-content: center;	align-items: center;
	gap: 5rem;
}
#benefit .message svg
{
	display: block;
	width: 77rem;	aspect-ratio: 1;
}
#benefit .message p
{
	color: var(--Cspring2026);
	font-size: 40px;
	font-weight: 700;
	text-align: center;
}
#benefit .message p span
{
	background: linear-gradient(-180deg,
		transparent 0 65%,
		var(--Cyellow1) 65% 80%,
		transparent 80% 100%
	);
}

}
@media screen and (max-width: 767px)
{

#benefit > .inner
{
	padding: 0 var(--pageP) 75rem;
}

#benefit .EOS
{
	margin: 0 auto 40px;

	color: red;
	font-size: 32rem;
	font-weight: 700;
	text-align: center;
	line-height: 1.5;
}

#benefit .titleSub
{
	font-size: 40rem;
}
#benefit .titleSubAcc
{
	width: 520rem;
	margin: 0 auto 20rem;
}

#benefit h2
{
	line-height: 1.4;
	margin: 0 0 35rem;
	font-size: 45rem;
}

#benefit .boxes
{
	width: 100%;
	/* border-radius: 30rem; */
	margin: 0 auto 35rem;
}

#benefit .title{	height: 105rem;	}
#benefit .title p{	font-size: 26rem;	}
#benefit ul
{
	gap: 20rem;
	padding: 20rem 0;
}
#benefit li p:nth-child(3)
{
	font-size: 14rem;
}
#benefit li p:nth-child(1)
{
	margin: 0 0 5rem;
	font-size: 31rem;
}
#benefit li p:nth-child(2){	font-size: 19rem;	}
#benefit .message{	gap: 20rem;	}
#benefit .message svg{	width: 97rem;	}
#benefit .message p
{
	font-size: 39rem;
	text-align: left;
	line-height: 1.5;
}

}


/* ================================================================================
cashBack
================================================================================ */
@media print, screen
{

#cashBack
{
	scroll-margin-top: var(--headerH);
}
#cashBack > .inner
{
	max-width: var(--pageW);
	padding: 40px var(--pageP) 100px;
	margin: 0 auto;
}

#cashBack .buttons
{
	display: flex;	flex-wrap: wrap;	justify-content: center;	align-items: center;
	gap: 15px;
}

#cashBack .button a
{
	display: flex;	justify-content: center;	align-items: center;
	width: 312px;	height: 74px;

	background-color: var(--Cspring2026);
	border: 2px solid var(--Cspring2026);

	transition: var(--T03);
}
#cashBack .button p
{
	padding: 0.3em 0 0;
	color: white;
	font-size: 21px;
	font-weight: 700;
	transition: var(--T03);
}

}
@media screen and (min-width: 768px)
{

#cashBack .button a:hover{	background-color: white;	}
#cashBack .button a:hover p{	color: var(--Cspring2026);	}

}
@media screen and (max-width: 767px)
{

#cashBack > .inner{	padding: 0 var(--pageP) 120rem;	}

#cashBack .buttons{	gap: 30rem;	}
#cashBack .button{	width: 100%;	}
#cashBack .button a{	width: 100%;	height: 150rem;	}
#cashBack .button p{	font-size: 44rem;	}

}


/* ================================================================================
model
================================================================================ */
@media print, screen
{

#model
{
	scroll-margin-top: var(--headerH);
}
#model > .inner
{
	max-width: var(--pageW);
	padding: 0 var(--pageP) 120px;
	margin: 0 auto;
}

#model .titleSub
{
	display: block;
	width: 100%;
	margin: 0 auto 20px;
}
#model h2
{
	margin: 0 auto 40px;
	font-size: 36px;
	font-weight: 700;
	text-align: center;
	letter-spacing: 0.3em;
}
#model .lead
{
	margin: 0 auto 60px;
	font-size: 28px;
	font-weight: 700;
	line-height: calc(36/28);
	text-align: center;
}
#model .lead span
{
	background: linear-gradient(-180deg,
		transparent 0 65%,
		var(--Cyellow1) 65% 80%,
		transparent 80% 100%
	);
}


#model .pcs
{
	display: flex;	flex-wrap: wrap;	justify-content:center;
	gap: 60px 64rem;
}
#model .pcs li{	width: 428rem;	}
#model .pcs .thumb
{
	/* border-radius: 20px; */
	margin: 0 0 30px;
	overflow: hidden;
}
#model .pcs .catch
{
	margin: 0 0 15px;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.3;
	text-align: center;
}
#model .pcs .catch ruby rt{	font-size: 0.5em;	}
#model .pcs li:nth-child(6) .catch ruby rt{	color: transparent;	}

#model .pcs .name
{
	font-size: 60px;
	font-weight: 700;
	text-align: center;
}
#model .pcs .ss
{
	display: flex;	justify-content: center;	align-items: center;
	gap: 10px;
	margin: 0 0 20px;
}
#model .pcs .size
{
	border: 1px solid var(--Cgray1);
	/* border-radius: 0.2em; */
	padding: 0.3em 0.5em 0.1em;
	font-size: 18px;
	font-weight: 700;
}
#model .pcs .series
{
	font-size: 21px;
	font-weight: 700;
}
#model .pcs .button a
{
	display: flex;	justify-content: center;	align-items: center;
	width: 70%;	height: 74px;
	background-color: var(--Cspring2026);
	border: 2px solid var(--Cspring2026);
	margin: 0 auto;
	transition: var(--T03);
}
#model .pcs .button p
{
	padding: 0.3em 0 0;
	color: white;
	font-size: 23px;
	font-weight: 700;
	text-align: center;
	transition: var(--T03);
}
#model .pcs a:hover{	background-color: white;	}
#model .pcs a:hover p{	color: var(--Cspring2026);	}


}
@media screen and (max-width: 767px)
{

#model > .inner{	padding: 0 var(--pageP) 100rem;	}
#model .campaign
{
	width: 600rem;
	margin: 0 auto 30rem;
}
/*#model .titleSub{	width: 600rem;	}*/
#model .titleSub{	transform: scale(1.25);	}
#model { overflow-x: clip;}
#model h2
{
	margin: 0 auto 40rem;
	font-size: 60rem;
}
#model .lead
{
	margin: 0 auto 50rem;
	font-size: 40rem;
}

#model .pcs{	gap: 95rem;	}
#model .pcs li{	width: 100%;	}
#model .pcs .thumb
{
	/* border-radius: 40rem; */
	margin: 0 0 35rem;
}
#model .pcs .catch
{
	margin: 0 0 25rem;
	font-size: 38rem;
}
#model .pcs .name{	font-size: 100rem;	}
#model .pcs .ss
{
	gap: 30rem;
	margin: 0 0 30rem;
}
#model .pcs .size{	font-size: 36rem;	}
#model .pcs .series{	font-size: 42rem;	}
#model .pcs .button a
{
	width: 100%;	height: 152rem;
	/* border-radius: 76rem; */
}
#model .pcs .button p{	font-size: 49rem;	}

}


/* ================================================================================
benefit_2
================================================================================ */
@media print, screen
{

#benefit_2
{
	scroll-margin-top: var(--headerH);
}
#benefit_2 > .inner
{
	max-width: var(--pageW);
	padding: 0 var(--pageP) 100px;
	margin: 0 auto;
}

#benefit_2 h2
{
	line-height: 1.4;
	margin: 0 0 20px;
	font-size: 42px;
	font-weight: 700;
	text-align: center;
}

#benefit_2 .boxes
{
	display: flex;
	width: 670px;

	border: 2px solid var(--Cspring2026);

	margin: 0 auto 25px;
	overflow: hidden;
}
#benefit_2 .boxes .box{	width: 50%;	}

#benefit_2 .title
{
	position: relative;
	display: flex;	justify-content: center;	align-items: center;
	height: 105px;
	background-color: var(--Cspring2026);
}
#benefit_2 .box:nth-child(2) .title{	background: linear-gradient(180deg, white 0px 4px, transparent 4px 8px) repeat-y top left/2px 8px var(--Cspring2026);	}
#benefit_2 .box:nth-child(2) ul{	background: linear-gradient(180deg, var(--Cspring2026) 0px 4px, transparent 4px 8px) repeat-y top left/2px 8px;	}

#benefit_2 .title p
{
	color: white;
	font-size: 26px;
	font-weight: 700;
}
#benefit_2 .title p .pr
{
	color: var(--Cyellow1);
	font-size: 1.7em;
	font-weight: 700;
	letter-spacing: -0.05;
}
#benefit_2 .title p .cb
{
	font-size: 1.3em;
	font-weight: 700;
}
#benefit_2 ul
{
	display: flex;	flex-direction: column;	justify-content: center;
	gap: 20px;
	padding: 20px 0;
}
#benefit_2 li p:nth-child(1)
{
	padding: 0 0 .25em;
	font-size: 31px;
	font-weight: 700;
	text-align: center;
}
#benefit_2 li p:nth-child(2)
{
	padding: 0 0 .25em;
	font-size: 19px;
	font-weight: 700;
	text-align: center;
}
#benefit_2 li p:nth-child(3)
{
	/* color: var(--Cspring2026); */
	font-size: 12px;
	font-weight: 500;
	text-align: center;
}

#benefit_2 .message
{
	display: flex;	justify-content: center;	align-items: center;
	gap: 5rem;
}
#benefit_2 .message svg
{
	display: block;
	width: 77rem;	aspect-ratio: 1;
}
#benefit_2 .message p
{
	color: var(--Cspring2026);
	font-size: 40px;
	font-weight: 700;
	text-align: center;
}
#benefit_2 .message p span
{
	background: linear-gradient(-180deg,
		transparent 0 65%,
		var(--Cyellow1) 65% 80%,
		transparent 80% 100%
	);
}

}
@media screen and (max-width: 767px)
{

#benefit_2 > .inner{	padding: 0 var(--pageP) 75rem;	}
#benefit_2 h2
{
	line-height: 1.4;
	margin: 0 0 15rem;
	font-size: 50rem;
}

#benefit_2 .boxes
{
	width: 100%;
	/* border-radius: 30rem; */
	margin: 0 auto 35rem;
}

#benefit_2 .title{	height: 105rem;	}
#benefit_2 .title p{	font-size: 26rem;	}
#benefit_2 ul
{
	gap: 20rem;
	padding: 20rem 0;
}
#benefit_2 li p:nth-child(3)
{
	font-size: 14rem;
}
#benefit_2 li p:nth-child(1)
{
	margin: 0 0 5rem;
	font-size: 31rem;
}
#benefit_2 li p:nth-child(2){	font-size: 19rem;	}
#benefit_2 .message{	gap: 20rem;	}
#benefit_2 .message svg{	width: 97rem;	}
#benefit_2 .message p
{
	font-size: 39rem;
	text-align: left;
	line-height: 1.5;
}

}


/* ================================================================================
howto
================================================================================ */
@media print, screen
{

#howto
{
	scroll-margin-top: var(--headerH);
	/* background: url("../image/howto_background.jpg") no-repeat center/cover; */
	background: #bbe1f9;
}
#howto > .inner
{
	max-width: var(--pageW);
	padding: 80px var(--pageP);
	margin: 0 auto;
}

#howto h2
{
	margin: 0 0 70px;
	color: #141843;
	font-size: 61px;
	font-weight: 700;
	text-align: center;
	letter-spacing: 0.2em;
}

#howto .steps
{
	display: flex;	flex-wrap: wrap;	justify-content: center;	align-items: center;
	gap: 25px;
}

#howto .steps > li
{
	display: flex;	align-items: center;
	gap: 25px;

	width: 100%;
	background-color: white;
	/* border-radius: 20px; */

	padding: 30px 80rem 30px 25rem;
}
#howto .steps li > .box:nth-child(1)
{
	flex-shrink: 0;
	width: 63rem;
}
#howto .steps li > .box:nth-child(2){	width: calc(100% - 25rem - 63rem);	}
#howto .steps .titleArea
{
	display: flex;	justify-content: space-between;	align-items: center;
	gap: 60rem;
}
#howto .steps .titleArea > .box:nth-child(1){	width: calc(100% - 60rem - 163rem);	}
#howto .steps .titleArea > .box:nth-child(2)
{
	flex-shrink: 0;
	width: 163rem;
}
#howto .steps svg{	display: block;	}
#howto .steps li:nth-child(1) .icon{	width: 123rem;	aspect-ratio: 123/98;	}
#howto .steps li:nth-child(2) .icon{	width: 167rem;	aspect-ratio: 167/125;	}
#howto .steps li:nth-child(3) .icon{	width: 144rem;	aspect-ratio: 144/124;	}
#howto .steps li:nth-child(4) .icon{	width: 145rem;	aspect-ratio: 145/91;	}
#howto .steps li:nth-child(5) .icon{	width: 136rem;	aspect-ratio: 136/120;	}

#howto .boxes2
{
	display: flex;	flex-wrap: wrap;	justify-content: space-between;	align-items: center;
}


#howto .steps .number
{
	display: flex;	justify-content: center;	align-items: center;
	aspect-ratio: 1;
	background-color: var(--Cyellow1);
	border-radius: 50%;

	padding: 0.2em 0 0;

	color: #141843;
	font-size: 47rem;
	font-weight: 700;
}

#howto .steps h3
{
	margin: 0 0 10px;
	color: #141843;
	font-size: 25px;
	line-height: var(--lhL2);
	font-weight: 700;
}
#howto .steps h4
{
	width: fit-content;
	border: 2px solid #141843;
	border-radius: 2em;

	padding: 0.3em 0.8em 0.1em;
	margin: 0 0 10px;

	color: #141843;
	font-size: 14px;
	line-height: 1.5;
	font-weight: 700;
}

#howto .steps .green{	color: #141843;	font-weight: 700;	}
#howto .steps .text_1
{
	margin: 0 0 5px;
	font-size: 12px;
	line-height: 1.5;
}
#howto .steps .text_2
{
	font-size: 12px;
	line-height: 1.5;
}
#howto .steps .text_3
{
	font-size: 16px;
	font-weight: 700;
	line-height: 1.5;
}

#howto .steps .button a
{
	display: flex;	justify-content: center;	align-items: center;
	width: 222px;	height: 38px;

	background-color: #141843;
	border: 1px solid #141843;
	/* border-radius: 19px; */
	transition: var(--T03);
}
#howto .steps .button p
{
	padding: 0.3em 0 0;
	color: white;
	font-size: 16px;
	line-height: 1;
	font-weight: 700;
	transition: var(--T03);
}

#howto .steps .button a:hover{	background-color: white;	}
#howto .steps .button a:hover p{	color: #141843;	}

#howto .steps .documents
{
	/* display: flex;	flex-wrap: wrap; */
	/* gap: 10px; */
	margin: 0 0 10px;
}
/* #howto .steps .documents ul:nth-child(1){	width: 45%;	} */
/* #howto .steps .documents ul:nth-child(2){	width: 55%;	} */
#howto .steps .documents ul
{
	display: flex;	flex-direction: column;
	gap: 2px;
}
#howto .steps .documents li
{
	padding: 0 0 0 1em;

	font-size: 12px;
	line-height: 1.5;
	text-indent: -1em;
}
#howto .steps .documents li span
{
	/* display: inline-block; */
	font-weight: 700;
	word-break: keep-all;
}

#howto .steps .plus
{
	display: block;
	width: 33px;	aspect-ratio: 1;
	margin: 0 0 20px;
}
#howto .steps .texts_1
{
	display: flex;
	gap: 15px;
}

#howto .steps hr
{
	height: 2px;
	background: linear-gradient(90deg, var(--Cgray1) 0px 4px, transparent 4px 8px) repeat-x top center/8px 2px;
	margin: 0 0 var(--mb20);
}

#howto .steps .notes
{
	display: flex;	flex-direction: column;
	gap: 2px;
}
#howto .steps .notes > li
{
	font-size: 12px;
	line-height: var(--lhS);
}


}
@media screen and (max-width: 767px)
{

#howto > .inner
{
	padding: 80rem var(--pageP) 110rem;
}

#howto h2
{
	margin: 0 0 70rem;
	font-size: 78rem;
	letter-spacing: 0;
}

#howto .steps{	gap: 40rem;	}
#howto .steps > li
{
	flex-wrap: wrap;	justify-content: center;
	gap: 30rem;
	/* border-radius: 70rem; */

	padding: 40rem;
}
#howto .steps li > .box:nth-child(1){	width: 102rem;	}
#howto .steps li > .box:nth-child(2){	width: 100%;	}
#howto .steps .titleArea
{
	flex-wrap: wrap;	justify-content: center;
	gap: 30rem;
}
#howto .steps .titleArea > .box:nth-child(1){	width: 100%;	}
#howto .steps .titleArea > .box:nth-child(2){	width: 100%;	}
#howto .steps li .icon{	margin: 0 auto 35rem;	}
#howto .steps li:nth-child(1) .icon{	width: 251rem;	margin: 0 auto 20rem;	transform: translateX(-20rem);	}
#howto .steps li:nth-child(2) .icon{	width: 352rem;	}
#howto .steps li:nth-child(3) .icon{	width: 302rem;	margin: 20rem auto 40rem;	}
#howto .steps li:nth-child(4) .icon{	width: 393rem;	margin: 20rem auto 40rem;	}
#howto .steps li:nth-child(5) .icon{	width: 290rem;	margin: 20rem auto 40rem;	}

#howto .boxes2{	flex-direction: column-reverse;	}

#howto .steps .number{	font-size: 76rem;	}
#howto .steps h3
{
	margin: 0;
	font-size: 36rem;
	text-align: center;
}
#howto .steps h4
{
	margin: 0 auto 25rem;
	font-size: 25rem;
}
#howto .steps .text_1{	font-size: 20rem;	}
#howto .steps .text_2{	font-size: 20rem;	}
#howto .steps .text_3{	font-size: 35rem;	}
#howto .steps li:nth-child(4) .text_3{	margin: 0 auto 30rem;	text-align: center;	}
#howto .steps li:nth-child(5) .text_3{	text-align: center;	}


#howto .steps .button a
{
	width: 100%;	height: 138rem;
	border-width: 2px;
	/* border-radius: 69rem; */
}
#howto .steps .button p{	font-size: 40rem;	}

#howto .steps .documents
{
	/* gap: 5rem; */
	width: 105%;
	margin: 0 0 10rem;
}
#howto .steps .documents ul:nth-child(1){	width: 100%;	}
#howto .steps .documents ul:nth-child(2){	width: 100%;	}

#howto .steps .documents li{	font-size: 20rem;	}

#howto .steps .documents > li
{
	width: 100%;
	font-size: 21rem;
}

#howto .steps .plus
{
	width: 64rem;
	margin: 0 auto 25rem;
}
#howto .steps .texts_1
{
	flex-direction: column;
	gap: 0;
}
/* #howto .steps .texts_1 p{	text-align: center;} */
#howto .steps .notes{	gap: 2rem;	}

#howto .steps li:nth-child(4) p,
#howto .steps li:nth-child(5) p
{	text-align: center;	}

}


/* ================================================================================
period
================================================================================ */
@media print, screen
{

#period
{
	scroll-margin-top: var(--headerH);
}
#period > .inner
{
	max-width: var(--pageW);
	padding: 85px var(--pageP) 90px;
	margin: 0 auto;
}

#period ul
{
	display: flex;	flex-direction: column;
	gap: 50px;
	margin: 0 auto 80px;
}

#period h3
{
	background: #bce2fa;
	color: #141843;
	display: flex;	justify-content: center;	align-items: center;
	width: 500px;	height: 55px;

	/*border: 2px solid var(--Cgray1);*/
	border-radius: 28px;

	padding: 0.6em 0 0.4em;
	margin: 0 auto 30px;

	font-size: 31px;
	font-weight: 700;
}

#period .text_1
{
	margin: 0 0 10px;
	font-size: 36px;
	/* font-family: var(--YuGothic); */
	font-weight: 700;
	line-height: 1.3;
	text-align: center;
}
#period .text_1 .week{	font-size: 0.6em;	}
#period .text_1 .date2{	font-size: 0.6em;	}
#period .text_2
{
	font-size: 19px;
	text-align: center;
}

#period p .mark
{
	font-weight: 700;
}


#period h2
{
	color: var(--Cspring2026);
	font-size: 42px;
	font-weight: 700;
	text-align: center;
	line-height: 1.5;
}
#period h2 span
{
	background: linear-gradient(-180deg,
		transparent 0 65%,
		var(--Cyellow1) 65% 80%,
		transparent 80% 100%
	);
}


}
@media screen and (max-width: 767px)
{

#period > .inner
{
	padding: 100rem var(--pageP) 50rem;
}

#period ul
{
	gap: 50rem;
	margin: 0 auto 80rem;
}

#period h3
{
	width: 624rem;	height: 68rem;
	border-radius: 34rem;
	margin: 0 auto 30rem;
	font-size: 43rem;
}

#period .text_1
{
	margin: 0 0 10rem;
	font-size: 38rem;
}
#period .text_2{	font-size: 24rem;	}
#period li:last-child .text_1{	font-size: 38rem;	}
#period h2{	font-size: 52rem;	}


}


/* ================================================================================
buy
================================================================================ */
@media print, screen
{

#buy
{
	scroll-margin-top: var(--headerH);
	background: url("../image/buy_background.jpg") no-repeat center/cover;
	background: var(--Cyellow1);
}
#buy > .inner
{
	max-width: var(--pageW);
	padding: 80px var(--pageP);
	margin: 0 auto;
}

#buy h2
{
	margin: 0 0 70px;
	/*color: var(--Cgreen1);*/
	font-size: 61px;
	font-weight: 700;
	text-align: center;
	letter-spacing: 0.1em;
}


#buy .pcs
{
	display: flex;	flex-wrap: wrap;	justify-content:center;
	gap: 55px 64rem;
	margin: 0 0 60px;
}
#buy .pcs > li
{
	width: 428rem;

	background-color: white;
	/* border-radius: 30px; */

	padding: 0 0 40px;
	overflow: hidden;
}
#buy .pcs .thumb
{
	margin: 0 0 30px;
	overflow: hidden;
}

#buy .pcs .name
{
	font-size: 60px;
	font-weight: 700;
	text-align: center;
}
#buy .pcs .ss
{
	display: flex;	justify-content: center;	align-items: center;
	gap: 10px;
	margin: 0 0 35px;
}
#buy .pcs .size
{
	border: 1px solid var(--Cgray1);
	/* border-radius: 0.2em; */
	padding: 0.3em 0.5em 0.1em;
	font-size: 18px;
	font-weight: 700;
}
#buy .pcs .series
{
	font-size: 21px;
	font-weight: 700;
}
#buy .pcs .note
{
	padding: 0 0 0.5em;
	margin: 0;
	font-size: 14px;
	font-weight: 500;
	text-align: center;
}
#buy .pcs .buttons
{
	display: flex;	flex-wrap: wrap;	justify-content: space-between;
	width: calc(144px * 2 + 10px);
	gap: 10px;
	margin: 0 auto;
}

#buy .pcs .buttons > li a
{
	display: flex;	justify-content: center;	align-items: center;
	width: 144px;	height: 56px;
	/* border-radius: 10px; */
	transition: var(--T03);
}
#buy .pcs .buttons > li p
{
	padding: 0.3em 0 0;
	font-size: 16px;
	text-align: center;
	transition: var(--T03);
}
#buy .pcs .buttons > li:nth-child(1) a{	background-color: var(--Cspring2026);	border: 2px solid var(--Cspring2026);	}
#buy .pcs .buttons > li:nth-child(n+2) a{	border: 2px solid var(--Cgray1);}
#buy .pcs .buttons > li:nth-child(1) p{	color: white;	}
/* #buy .pcs .buttons > li:nth-child(n+2) p{		} */

#buy .pcs .buttons > li:nth-child(1) a:hover{	background-color: white;	}
#buy .pcs .buttons > li:nth-child(n+2) a:hover{	background-color: var(--Cgray1);	}
#buy .pcs .buttons > li:nth-child(1) a:hover p{	color: var(--Cspring2026);	}
#buy .pcs .buttons > li:nth-child(n+2) a:hover p{	color: white;	}


#buy .message
{
	color: var(--Cgray1);
	font-size: 33px;
	font-weight: 700;
	line-height: 1.5;
	text-align: center;
}
#buy .message span
{
	/* background: linear-gradient(-180deg, white 0% 85%, transparent 85% 100%); */
	padding: 0.1em 0.1em 0;
}


}
@media screen and (max-width: 767px)
{

#buy > .inner
{
	padding: 85rem var(--pageP) 115rem;
}

#buy h2
{
	margin: 0 0 70rem;
	font-size: 75rem;
	letter-spacing: 0.05em;
}

#buy .pcs
{
	gap: 50rem;
	margin: 0 0 50rem;
}
#buy .pcs > li
{
	width: 100%;
	/* border-radius: 40rem; */
	padding: 0 0 50rem;
}
#buy .pcs .thumb{	margin: 0 0 50rem;	}

#buy .pcs .name
{
	font-size: 100rem;
}
#buy .pcs .ss
{
	gap: 30rem;
	margin: 0 0 30rem;
}
#buy .pcs .size{	font-size: 34rem;	}
#buy .pcs .series{	font-size: 40rem;	}

#buy .pcs .buttons
{
	width: calc(277rem * 2 + 20rem);
	gap: 20rem;
}

#buy .pcs .buttons > li a
{
	width: 277rem;	height: 124rem;
	/* border-radius: 25rem; */
}
#buy .pcs .buttons > li p{	font-size: 35rem;	}
#buy .message{	font-size: 49rem;	}


}



/* ================================================================================
term
================================================================================ */
@media print, screen
{

#term
{
	scroll-margin-top: var(--headerH);
}
#term > .inner
{
	max-width: var(--pageW);
	padding: 85px var(--pageP);
	margin: 0 auto;
}

#term h3
{
	margin: 0 0 35px;
	font-size: 25px;
	font-weight: 700;
}

#term ul
{
	display: flex;	flex-direction: column;
	gap: 5px;
	margin: 0 0 50px;
}

#term li
{
	padding: 0 0 0 1em;
	font-size: 15px;
	line-height: 1.3;
	text-indent: -1em;
}
#term li::before
{
	content: "";
	display: inline-block;
	width: 1em;	height: 1em;

	background-color: var(--Cgray1);
	border-radius: 50%;
	transform: translate(0,0.15em) scale(0.3);
}

#term .text_1
{
	margin: 0 0 50px;
	font-size: 15px;
	line-height: 1.3;
}
#term .text_2
{
	margin: 0 0 20px;
	font-size: 19px;
	line-height: 1.3;
}
#term .text_2 a{	color: rgba(2,176,234,1);	}
#term .text_2 a:hover{	text-decoration: underline;	}

#term .text_3
{
	padding: 0 0 0 1em;
	font-size: 17px;
	line-height: 1.3;
	text-indent: -1em;
}


}
@media screen and (max-width: 767px)
{

#term > .inner
{
	padding: 70rem var(--pageP) 110rem;
}

#term h3
{
	margin: 0 0 35rem;
	font-size: 25rem;
}

#term ul
{
	gap: 5rem;
	margin: 0 0 50rem;
}
#term li{	font-size: 21rem;	}
#term .text_1
{
	margin: 0 0 30rem;
	font-size: 21rem;
}
#term .text_2
{
	margin: 0 0 20rem;
	font-size: 21rem;
}
#term .text_3{	font-size: 19rem;	}

}



/* ================================================================================
intel
================================================================================ */
@media print, screen
{

#intel
{
	scroll-margin-top: var(--headerH);
}
#intel > .inner
{
	max-width: var(--pageW);
	padding: 0 var(--pageP) 90px;
	margin: 0 auto;
}

#intel .boxes
{
	display: flex;	align-items: center;
	gap: 50px;
	margin: 0 auto 20px;
}
#intel .box:nth-child(1){	flex-shrink: 0;	width: 180px;	}
#intel picture{	width: 180px;	}

#intel h2
{
	margin: 0 0 10px;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.5;
}
#intel .text_1
{
	font-size: 12px;
	line-height: 1.5;
}
#intel .text_2
{
	font-size: 12px;
	line-height: 1.5;
}
#intel .text_2 a{	color: rgba(2,176,234,1);	}
#intel .text_2 a:hover{	text-decoration: underline;	}


}
@media screen and (max-width: 767px)
{

#intel > .inner
{
	padding: 0 var(--pageP) 90rem;
}

#intel .boxes
{
	flex-direction: column;
	gap: 60rem;
	margin: 0 auto 20rem;
}
#intel .box:nth-child(1){	width: 100%;	}

#intel picture
{
	width: 370rem;
	margin: 0 auto;
}
#intel h2
{
	margin: 0 auto 30rem;

	font-size: 25rem;
	text-align: center;
}

#intel .text_1
{
	font-size: 26rem;
	text-align: center;
}

#intel .text_2
{
	width: fit-content;
	margin: 0 auto;
	font-size: 26rem;
	text-align: center;
}


}





@media print, screen {
  .intelFamily {
    position: relative;
    min-width: 1280px;
    padding: 0 0 100px;
    margin: 0;
  }
  .intelFamily > .inner {
    margin: 0 auto;
  }
  .intelFamily .boxes {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 10px 50px;
    width: 650px;
    margin: 0 auto 10px;
  }
  .intelFamily .box:nth-child(1) {
    width: 100px;
    flex-shrink: 0;
  }
  .intelFamily .box:nth-child(2) {
    width: calc(100% - 50px - 100px);
    flex-shrink: 0;
  }
  .intelFamily .box:nth-child(3) {
    width: 100%;
    flex-shrink: 0;
  }
  /* .intelFamily .boxL{	width: 100px;	flex-shrink: 0;	} */
  /* .intelFamily .boxR{	width: 750px;	} */
  .intelFamily picture {
    display: block;
    width: 100%;
  }
  .intelFamily picture img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
       object-fit: contain;
  }
  .intelFamily h2 {
    /* margin: 0 0 10px; */
    font-size: 16px;
    font-family: DIN Next W01 Regular, YuGothic, 游ゴシック, ＭＳ Ｐゴシック, MS P Gothic, MS-PGothic, ヒラギノ角ゴ Pro W3, Hiragino Kaku Gothic Pro, Osaka, arial, helvetica, clean, sans-serif;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 0;
  }
  .intelFamily p {
    font-size: 12px;
    font-family: DIN Next W01 Regular, YuGothic, 游ゴシック, ＭＳ Ｐゴシック, MS P Gothic, MS-PGothic, ヒラギノ角ゴ Pro W3, Hiragino Kaku Gothic Pro, Osaka, arial, helvetica, clean, sans-serif;
    line-height: 1.8;
    letter-spacing: 0;
  }
  .intelFamily a {
    color: #0b113e;
  }
  .intelFamily .boxes + p {
    width: 900px;
    margin: 0 auto;
  }
}
@media screen and (max-width: 750px) {
  .intelFamily {
    min-width: auto;
    padding: 0 0 9.3333333333vw;
  }
  .intelFamily > .inner {
    width: 90%;
  }
  .intelFamily .boxes {
    flex-direction: column;
    gap: 5.3333333333vw;
    width: 100%;
    margin: 0 auto 1.3333333333vw;
  }
  .intelFamily .box:nth-child(1) {
    width: 30%;
  }
  .intelFamily .box:nth-child(2) {
    width: 100%;
  }
  /* .intelFamily .boxL{	width: 30%;	} */
  /* .intelFamily .boxR{	width: 100%;	} */
  .intelFamily h2 {
    /* margin: 0 0 calc(30 / 750 * 100vw); */
    font-size: 3.2vw;
    text-align: center;
  }
  .intelFamily p {
    font-size: 2.1333333333vw;
    text-align: center;
  }
  .intelFamily .boxes + p {
    width: 100%;
  }
}



.mslogo
{
	width: 88%;
	max-width: 1100px;
	margin: 0 auto;
}
.mslogo .inner
{
	container-type: inline-size;
	display: flex;	justify-content: end;	align-items: center;
	width: 320px;	aspect-ratio: 410/90;
	max-width: 50vw;
	margin: 0 0 0 auto;
}
.mslogo img
{
	display: block;
	width: 55cqw;
	aspect-ratio: 2227/900;
}
.mslogo p
{
	font-size: 3.8cqw;
	text-align: center;
	letter-spacing: 0.05em;
	white-space: pre;
}

.intel_redemption {
    margin: 50px auto 30px;
    max-width: 1000px;
    width: 100%;
}
.intel_redemption ul {
    display: flex;
    justify-content: center;
}
.intel_redemption ul li {
    align-items: center;
    display: flex;
}
.intel_redemption ul li:nth-of-type(1) img {
	display: block;
    height: 30px;
    width: auto;
}
.intel_redemption ul li:nth-of-type(2) {
    width: 35%;
    margin-left: 40px;
}
.intel_redemption ul li:nth-of-type(2) img {
	display: block;
    width: 15%;
}
.intel_redemption .msg {
	font-size: 16px;
	font-family: DIN Next W01 Regular, YuGothic, 游ゴシック, ＭＳ Ｐゴシック, MS P Gothic, MS-PGothic, ヒラギノ角ゴ Pro W3, Hiragino Kaku Gothic Pro, Osaka, arial, helvetica, clean, sans-serif;
	font-weight: bold;
	line-height: 1.5;
	margin-left: 40px;
}
.intel_redemption p {
	font-size: 12px;
	font-family: DIN Next W01 Regular, YuGothic, 游ゴシック, ＭＳ Ｐゴシック, MS P Gothic, MS-PGothic, ヒラギノ角ゴ Pro W3, Hiragino Kaku Gothic Pro, Osaka, arial, helvetica, clean, sans-serif;
	line-height: 1.8;
	text-align: center;
	margin-top: 20px;
}
.intel_redemption a {
	color: #0b113e;
}
@media screen and (max-width: 750px) {
    .intel_redemption ul {
        flex-wrap: wrap;
		row-gap: 10px;
    }
    .intel_redemption ul li {
        justify-content: center;
        margin: auto auto .75em;
        width: 90% !important;
    }
	.intel_redemption .msg {
		font-size: 14px;
		margin-left: 30px;
	}
	.intel_redemption p {
		font-size: 10px;
	}
}



.IV {
	opacity: 0;
}
.IV.inview {
	opacity: 1;
	transition: .5s;
}
.model_ttl {
	position: relative;
}
.model_ttl .titleSub.text {
	position: absolute;
	top: 0;
}



/* ======================================== end ======================================== */
