@charset "utf-8";

/* ------------------------- common ------------------------- */
main {}
main > header {}
main > header > h1 {
	font-size:calc( 1rem + 1vmin );
	border-bottom:silver dotted 2px;
	position:relative;
}
main > header > h1:before {
	content:"　　　　　";
	border-bottom:dodgerblue solid 2px;
	position:absolute;
	bottom:-2px;
	left:0;
}
main > header > dl {
	margin-top:calc( 0.5rem + 0.5vmin );
	justify-content:flex-end !important;
	align-items:center;
}
main > header > dl > dt {}
main > header > dl > dt:after {
	content:" : ";
	margin-right:1vmin;
}
main > header > dl:first-of-type > dd {
	color:white;
	border-radius:1rem;
	background:dodgerblue;
	margin-left:calc( 0.25rem + 0.25vmin );
	padding:calc( 0.15rem + 0.15vmin ) calc( 0.5rem + 0.5vmin );
}
/* -------------------------------------------------- */
main > section {}
main > section > span {
	font-size:calc( 0.5rem + 0.5vmin );
	display:block;
	margin-bottom:calc( 1rem + 1vmin );
}
main > section > span:before {
	content:"－－－－－　　";
	letter-spacing:-0.4rem;
}
/* -------------------------------------------------- */



/* ------------------------- effect ------------------------- */
section#effect > h2 {
	color:hsla(208,100%,40%,1.00);
	font-size: calc( 1.75rem + 1.75vmin );
	font-weight:900;
	letter-spacing:-0.1rem;
	text-align:center;
}
section#effect > figure {
	border:silver solid 1px;
	background:azure;
	margin-top:calc( 2rem + 2vmin );
	padding:calc( 1rem + 1vmin );
}
section#effect > figure > img {
	display:block;
	margin:auto;
}
section#effect > figure > figcaption {
	text-align:center;
	display:block;
	margin-top:calc( 1rem + 1vmin );
}
/* -------------------------------------------------- */
section#effect > ul {
	background:whitesmoke;
	border-radius:1vmin;
	margin-top:calc( 2rem + 2vmin );
	padding:calc( 2rem + 2vmin );
	position:relative;
	grid-template-columns:1fr 1fr;
	grid-gap:calc( 2rem + 2vmin );
}
section#effect > ul:before {
	color:white;
	content:"具体的な対策内容";
	font-weight:700;
	border-radius:1rem;
	background:orange;
	padding:0 1rem;
	position:absolute;
	top:calc( -0.25rem - 0.25vmin );
	left:calc( 1rem + 1vmin );
}
section#effect > ul > li {}
section#effect > ul > li > h3 {
	color:hsla(208, 90%, 40%, 1.00);
	font-size:calc( 1.25rem + 1.25vmin );
	font-weight:900;
	line-height:1.25;
	letter-spacing:-0.1rem;
	margin:0 10%;
	margin-bottom:calc( 2rem + 2vmin );
}
section#effect > ul > li > p {
	margin-top:calc( 1rem + 1vmin );
}
/* -------------------------------------------------- */



/* ------------------------- faq ------------------------- */
section#faq {}
/* -------------------------------------------------- */
section#faq > fieldset {
	border-radius:0.5vmin;
	background:whitesmoke;
	margin-top:calc( 1rem + 1vmin );
	padding:calc( 1rem + 1vmin );
}
section#faq > fieldset > legend {}
section#faq > fieldset > menu {}
section#faq > fieldset > menu > li {
	list-style:decimal;
}
section#faq > fieldset > menu > li:not(:first-of-type) {
	margin-top:0.5rem;
}
/* -------------------------------------------------- */
section#faq > ul {
	margin-top:calc( 2rem + 2vmin );
	grid-gap:calc( 2rem + 2vmin );
	grid-template-columns:1fr 1fr;
}
section#faq > ul > li {}
section#faq > ul > li > i {
	color:hsla(208,100%,40%,1.00);
	font-weight:700;
	font-style:normal;
	display:block;
	margin-bottom:calc( 0.25rem + 0.25vmin );
	position:relative;
}
section#faq > ul > li > i:before {
	content:"";
	background:url(../images/feature_man_icon.png);
	background-size:cover;
	display:block;
	width:2.5rem;
	height:3rem;
	position:absolute;
	bottom:0;
	left:0;
}
section#faq > ul > li > dl {
	border:gainsboro solid 1px;
	border-radius:0.75vmin;
	padding:calc( 1rem + 1vmin );
}
section#faq > ul > li > dl > dt {
	font-size:calc( 0.75rem + 0.75vmin );
	position:relative;
}
section#faq > ul > li > dl > dt:before {
	content:"▼";
	color:white;
	text-shadow:0px 1px 0px silver;
	position:absolute;
	top:0;
	left:calc( -1.1rem - 1.1vmin );
	transform:rotate(-90deg);
}
section#faq > ul > li > dl > dt:after {
	content:"▼";
	color:red;
	position:absolute;
	top:0;
	left:calc( -1.25rem - 1.25vmin );
	transform:rotate(-90deg);
}
section#faq > ul > li > dl > dd {
	line-height:2;
	box-shadow:0.1rem 0.1rem 0.1rem silver inset;
	border-radius:0.5vmin;
	background:white;
	margin-top:calc( 0.5rem + 0.5vmin );
	padding:calc( 0.5rem + 0.5vmin );
}
/* -------------------------------------------------- */
