@charset "utf-8";
/* CSS Document */

:root {
	--mc: #fff999;
	--sc1: #0d6fb8;
	--sc2: #ed6d00;
}

body{
	font-family: "Noto Sans JP", sans-serif;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-size: var(--fs-base);
	line-height: 1.4;
	position: relative;
	font-feature-settings: "palt";
	color: #000;
}

.innerBox{
	width: var(--mainW);
	margin: 0 auto;
	padding: var(--mrgSecV) var(--mrgSecW);
}

header{
	position: relative;
	z-index: 1;
}

h1 img{
	width: 100%;
	height: auto;
	z-index: 1;
}
.visuallyHidden {
	position: absolute !important;
	width: 1px; 
	height: 0px; 
	padding: 0; 
	margin: -1px; 
	overflow: hidden; 
	clip: rect(0, 0, 0, 0); 
	white-space: nowrap; 
	border: 0;
}

header::after{
	display: block;
	width: 100%;
	content: "";
	background: url("../img/line.png") no-repeat center center;
	background-size: auto 100%;
	z-index: 2;
	
}

main{
	z-index: 1;
}

.cfSubmitBtn a, .cfSubmitBtn span{
	display: block;
	background: url("../img/bg_btn.jpg") repeat;
	color: #fff;
	text-decoration: none;
	font-size: var(--fs-btn);
	width: var(--btnW);
	text-align: center;
	padding: 10px;
	border-radius: 0.7em;
	opacity:1;
}
.cfSubmitBtn a:hover{
	color: #fff;
	opacity:0.8;
}
.cfSubmitBtn a:not(header .cfSubmitBtn a){
	margin: var(--mrg-tt) auto;
}
h2{
	font-size: var(--fs-tt);
	font-weight: 500;
	position: relative;
}
h2:not(.introArea h2){
	text-align: center;
	color: var(--sc2);
}
h2:not(.introArea h2)::after{
	display: block;
	content: "";
	width: 300px;
	height: 3px;
	background: #fff100;
	margin: 0.5em auto var(--mrg-tt);
}
.introArea{
	background: var(--mc);
}
.introArea h2{
	color: var(--sc1);
	margin-bottom: var(--mrg-tt);
}
.introArea article div:first-of-type p:not(:first-of-type){margin-top: 1em;}
.introArea img{
	width: 100%;
	height: auto;
}

.planIntroBox{
	text-align: center;
	border-bottom: 1px solid #d8d8d8;
	margin-bottom: 1.4em;
}

.planTxt{
	margin: 1em 0;
	font-size: var(--fs-btn);
	font-weight: 500;
}

.privilegeArea article{
	border-radius: 0.8em;
	background: var(--mc);
	margin: var(--mrg-tt) 0;
	padding: var(--mrg-tt);
}

h3{
	font-size: var(--fs-tt3);
	font-weight: 600;
	color: var(--sc1);
	margin-bottom: 0.5em;
}
h3 span{
	color: #000;
	font-size: 0.8em;
	font-weight: normal;
}

.discList{
	margin-left: 1.5em;
}
.discList li{
	list-style: disc;
	list-style-position: outside;
}

footer{
	background: var(--mc);
	text-align: center;
	padding: 10px;
	font-size: 12px;
}

.sTxt{font-size: 0.7em;}
.privilegeArea .sTxt{font-size: 14px;}
.bTxt{font-weight: 600;}

a{
	color: #0d6fb8;
	text-decoration: underline;
	transition: 0.3s;
}
a:hover{
	color: var(--sc2);
	transition: 0.3s;
}
img{
	vertical-align: bottom;
}

/* --------------------------------------------------
	PC
-------------------------------------------------- */
@media screen and (min-width:749px){
	:root{
		--fs-base: 18px;
		--fs-btn: 24px;
		--fs-tt: 30px;
		--fs-tt3: 20px;
		--mainW: 1100px;
		--btnW: 550px;
		--mrgSecV: 60px;
		--mrgSecW: 0;
		--mrg-tt: 30px;
	}

	header::after{
		height: 29px;
	}
	header .cfSubmitBtn{
		margin: -80px 0 0 45px;
		z-index: 3;
		position: relative;
	}

	main{
		margin-top: calc(29px / 2 * -1);
	}

	.introArea article{
		display: flex;
		justify-content: space-between;
		gap: 30px;
	}
	.introArea article div:nth-of-type(2){
		flex: 0 0 240px;
	}

	.pcNone{display: none;}

}

/* --------------------------------------------------
	スマホ
-------------------------------------------------- */
@media screen and (max-width : 748px){
	:root{
		--fs-base: 16px;
		--fs-btn: 18px;
		--fs-tt: 22px;
		--fs-tt3: 18px;
		--mainW: 100%;
		--btnW: 100%;
		--mrgSecV: 30px;
		--mrgSecW: 10px;
		--mrg-tt: 15px;
	}

	header::after{
		height: 20px;
	}
	header .cfSubmitBtn{
		margin: 20px 0 0;
		z-index: 3;
		position: relative;
	}

	main{
		margin-top: calc(20px / 2 * -1);
	}

	.introArea article div:nth-of-type(2){
		width: 60%;
		margin: 20px auto 0;
	}

	.smpNone{display: none;}
}

.mt10{margin-top: 10px;}