/*! destyle.css v4.0.0 | MIT License | https://github.com/nicolas-cusan/destyle.css */
*, ::before, ::after {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	border-style: solid;
	border-width: 0
}
body *,
body *:before,
body *:after {
	box-sizing: border-box;
}
html {
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0)
}
body {
	margin: 0;
	font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.571;
	text-align: center;
	background-color: #FCD702;
}
p, table, blockquote, address, pre, iframe, form, figure, dl {
	margin: 0
}
h1, h2, h3, h4, h5, h6 {
	font-size: inherit;
	font-weight: inherit;
	margin: 0
}
ul, ol {
	margin: 0;
	padding: 0;
	list-style: none
}
a {
	background-color: rgba(0, 0, 0, 0);
	text-decoration: none;
	color: inherit
}
abbr[title] {
	-webkit-text-decoration: underline dotted;
	text-decoration: underline dotted
}
b, strong {
	font-weight: bolder
}
small {
	font-size: 80%
}
sub, sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline
}
sub {
	bottom: -0.25em
}
sup {
	top: -0.5em
}
svg, img, embed, object, iframe {
	vertical-align: bottom
}
button, input, optgroup, select, textarea {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	vertical-align: middle;
	color: inherit;
	font: inherit;
	background: rgba(0, 0, 0, 0);
	padding: 0;
	margin: 0;
	border-radius: 0;
	text-align: inherit;
	text-transform: inherit
}
button, [type=button], [type=reset], [type=submit] {
	cursor: pointer
}
button:disabled, [type=button]:disabled, [type=reset]:disabled, [type=submit]:disabled {
	cursor: default
}
:-moz-focusring {
	outline: auto
}
select:disabled {
	opacity: inherit
}
option {
	padding: 0
}
fieldset {
	margin: 0;
	padding: 0;
	min-width: 0
}
legend {
	padding: 0
}
progress {
	vertical-align: baseline
}
textarea {
	overflow: auto
}
[type=number]::-webkit-inner-spin-button, [type=number]::-webkit-outer-spin-button {
	height: auto
}
[type=search] {
	outline-offset: -2px
}
[type=search]::-webkit-search-decoration {
	-webkit-appearance: none
}
::-webkit-file-upload-button {
	-webkit-appearance: button;
	font: inherit
}
[type=number] {
	-moz-appearance: textfield
}
label[for] {
	cursor: pointer
}
details {
	display: block
}
summary {
	display: list-item
}
[contenteditable]:focus {
	outline: auto
}
table {
	border-color: inherit;
	border-collapse: collapse
}
caption {
	text-align: left
}
td, th {
	vertical-align: top;
	padding: 0
}
th {
	text-align: left;
	font-weight: bold
}
html {
	overflow: auto
}
ul, ol {
	list-style: none
}
img, video, object {
	max-width: 100%;
	height: auto
}
img {
	width /***/	: auto;
}
a:hover {
	text-decoration: none
}

.blue{
	color: #1D9BF0;
}

.l-wrapper {
	overflow: hidden;
	width: 100%;
}

main {
	display: flex;
	justify-content: center;
	align-items: flex-start;
	padding: 0 15px;
	max-width: 1468px;
	margin: 0 auto;
	position: relative;
}

.fixItem{
	position: fixed;
	top: 50%;
	transform: translateY(-50%);
	z-index: 10;
}
	.fixItem::before{
		content: "";
		display: block;
		background: url("../images/common/bg_text_single.svg") no-repeat center / contain;
		aspect-ratio: 1531/1538;
		margin: 6px auto 0;
		width: 1531px;
		position: absolute;
		z-index: -1;
		transform: translate(-50%,-50%);
	}
	.fixItem.leftItem{
		aspect-ratio: 513/592;
		max-width: 257px;
		width: 20%;
		left: 12.7%;
	}
	.fixItem.leftItem::before{
		top: 60%;
		left: 79%;
	}

.fixItem.sideNavi{
	background: #fff;
	border-radius: 10px;
	padding-bottom: 17px;
	max-width: 332px;
	width: 25%;
	right: 12.5%;
	z-index: 1;
}
	.fixItem.sideNavi::before{
		top: 57%;
		left: 75%;
	}
	.fixItem.sideNavi ul{
		margin-top: 12px;
	}
		.fixItem.sideNavi ul li + li{
			margin-top: 10px;
		}

		.fixItem.sideNavi ul li{
			padding: 0 5px;
		}
		.fixItem.sideNavi ul li:nth-child(1){
			margin-top: 24px;
			margin-left: 4px;
		}
		.fixItem.sideNavi ul li:nth-child(2){
			margin-top: 21px;
			margin-left: 4px;
		}
		.fixItem.sideNavi ul li:nth-child(3){
			margin-top: 18px;
		}
		.fixItem.sideNavi ul li:nth-child(4){
			margin: 8px 0 0 -4px;
			padding: 0 21px;
		}

.fixItem.sideNavi p{
	margin-top: -33px;
}

.l-contents {
	background: #FFF100;
	box-shadow: 0 6px 24px 0 rgba(0,0,0,0.16);
	max-width: 430px;
	flex-shrink: 0;
	position: relative;
	z-index: 50;
}

.cp-logo {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	padding: 28px 23px 28px 31px;
	width: 174px;
	aspect-ratio: 174/94;
	background: #fff;
	border-bottom-right-radius: 10px;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 99;
}
	.cp-logo img{
		max-width: 120px;
		width: 100%;
	}

@media screen and (max-width: 1680px){
	.l-wrapper::before {
		content: "";
		display: block;
		background: url("../images/common/bg_text.svg") no-repeat center / contain;
		aspect-ratio: 2677/1538;
		width: 153vw;
		position: fixed;
		top: 52%;
		left: -21vw;
		z-index: -1;
		transform: translateY(-50%);
	}
	.fixItem::before{
		content: none;
	}
	.fixItem.leftItem{
		width: 14%;
		left: 10.7%;
	}
	.fixItem.sideNavi{
		width: 19%;
		right: 8.5%;
	}
}
@media screen and (max-width: 1280px){
	main{
		justify-content: space-between;
	}
	.l-contents{
		margin: 0 auto;
	}
	.cp-logo{
		padding: 18px 23px 18px;
		width: 114px;
	}
	.fixItem.sideNavi{
		right: 5%;
	}
}
@media screen and (max-width: 1023px){
	.l-wrapper::before {
		content: none;
	}
	main{
		display: block;
		padding: 0;
	}
	.fixItem.leftItem,
	.fixItem.sideNavi{
		display: none;
	}
}
@media screen and (max-width: 767px){
	main{
		overflow: hidden;
	}
}
@media screen and (max-width: 570px){
	.l-wrapper{
		overflow: hidden;
	}
}
@media screen and (max-width: 480px){
	.l-contents{
		max-width: inherit;
	}
}

/*-------------------------------------

ツイスターキャンペーン

--------------------------------------*/

.ankerLink{
	display: flex;
	justify-content: center;
	align-items: flex-end;
	margin-top: -9px;
	padding: 0 20px;
}
	.ankerLink li:nth-child(2){
		margin: 0 8px;
	}

.cp-kv__img{
	margin: -85px -27px 0 -31px;
}

.cp-container-wrapper{
	padding: 0 20px 43px;
}

.cp-container{
	background: #fff;
	border-radius: 10px;
	padding: 28px 12px 40px;
}

.cp-container + .cp-container{
	margin-top: 30px;
}

.cp-container p{
	text-align: left;
	font-weight: 700;
}

.cp-container .lead{
	font-size: 18px;
	color: #DC000C;
	line-height: 1.444;
}
.cp-container .line{
	text-decoration: underline;
	margin-top: 0.8em;
}
.cp-container .btn{
	margin-top: 1.1714em;
}
.cp-container .min{
	font-size: 14px;
	color: #DC000C;
	margin-top: 1em;
}

.cp-container .cp-detail-box{
	max-width: 321px;
	margin: 0 auto;
}

.cp-container .img-present{
	margin-right: -10px;
	margin-top: 25px;
}

.figContents{
	margin: 0 -20px;
}
.figContents.fig1{
	margin-top: -50px;
	margin-right: -86px;
}
.figContents.fig2{
	margin-top: 8px;
}

.txt-end{
	font-size: 34px;
	font-weight: 900;
	background: #646464;
	color: #fff;
	line-height: 66px;
	margin-bottom: 12px;
}

#contents1{
	padding-top: 32px;
	margin-top: 18px;
}
	#contents1 .cp-detail-box{
		margin-top: 23px;
	}
		#contents1 .lead{
			margin-top: 17px;
		}

#contents2{
	padding-top: 28px;
	padding-bottom: 16px;
}
	#contents2 h2{
		text-align: left;
	}
	#contents2 .fig1{
		margin: 16px 0 19px;
	}
	#contents2 .fig2{
		margin-top: 1.68em;
	}
	#contents2 .lead{
		font-size: 16px;
		margin-top: 8px;
	}
	#contents2 .btn{
		margin-top: 1.6em;
	}

#contents3{
	padding-top: 24px;
	padding-bottom: 11px;
}
	#contents3 h2{
		text-align: left;
		padding-left: 3px;
	}
	#contents3 .box1{
		margin-top: 1.5em;
	}
	#contents3 .fig1{
		max-width: 295px;
		margin: 0 auto;
	}
	#contents3 .fig2{
		margin-top: 26px;
	}
	#contents3 .txt{
		margin-top: 1.5em;
	}
	#contents3 .lead{
		font-size: 16px;
		margin-top: 0.4em;
	}
	#contents3 .min{
		margin-top: 0.4em;
	}

#contents4{
	background: #fff url("../images/bg_contents4.webp") no-repeat center top / 100%;
}
	#contents4 .inner{
		margin-top: -47px;
		padding-top: 1px;
	}
		#contents4 h2{
			margin: -53px -17px 0 -7px;
		}
		#contents4 figure{
			margin-top: 16px;
		}
		#contents4 .btn{
			margin-top: 24px;
		}

#contents4 .cp-detail-box{
	max-width: 323px;
}

@media screen and (max-width: 480px){
	.figContents.fig1{
		margin-right: -50px;
	}
	.txt-end{
		font-size: clamp(14px,9vw,34px);
	}
	#contents4 .inner{
		margin-top: -27px;
	}
}
@media screen and (max-width: 385px){
	.txt-end{
		line-height: 17.142vw;
		margin-bottom: 3.1168vw;
	}
}
/*-------------------------------------

フッター

--------------------------------------*/
footer{
	background: #4D2C1D;
	font-size: 12px;
	color: #fff;
	padding: 28px 10px;
	position: relative;
	z-index: 1;
}

footer .btn{
	max-width: 294px;
	width: 100%;
	margin: 0 auto;
	background: #fff;
	border-radius: 40px;
	overflow: hidden;
}
	footer .btn a{
		display: flex;
		justify-content: center;
		align-items: center;
		padding: 20px 40px;
	}

footer .copy{
	margin-top: 18px;
}

@media screen and (max-width: 460px){
	footer{
		padding-left: 2.6667vw;
		padding-right: 2.6667vw;
	}
	footer .btn{
		width: 65%;
	}
	footer .btn a{
		padding: 12px 8.6956vw;
	}
	footer .copy{
		font-size: clamp(10px, 3.5vw, 16px);
	}
}

