@charset "UTF-8";

/* CSS Document */

/* ===========================================
 * ROOT
 * ======================================== */

:root {
	--fontfamiry_main: YakuHanJP, "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	--font_h2: 700 20px / 1.6 var(--fontfamiry_main);
	--font_h3: 600 18px / 1.6 var(--fontfamiry_main);
	--font_h4: 600 16px / 1.6 var(--fontfamiry_main);
	--font_p: 400 14px / 1.6 var(--fontfamiry_main);
	--font_btn: 600 16px / 1.6 var(--fontfamiry_main);
	--font_main: 400 14px / 1.6 var(--fontfamiry_main);
	--color_btn_next: #509224;
	--color_btn_back: #E01F0F;
	--color_btn_update: #245392;
	--color_txt_main: #333333;
	--color_txt_accent: #E01F0F;
	--color_txt_link: #245392;
	--color_txt_btn: #FFFFFF;
	--color_bk_main: #FFFFFF;
	--color_bk_section: #F4F4F4;
	}

/* ===========================================
 * BASE
 * ======================================== */

html {
	font-size: 62.5%;
	overflow-x: hidden;
}
body { 
	position: relative;
    width: 100%;
	font: normal 16px / 1.6 "Hiragino Kaku Gothic ProN", "Yu Gothic", "Arial", "Meiryo", "Helvetica Neue", "Helvetica", sans-serif;
	background-color: #333;
	overflow-x: hidden;
}
img {
	max-width: 100%;
	padding: 0px;
	margin: 0px auto;
	border: none;
	vertical-align:bottom;
    -webkit-backface-visibility: hidden;
	display: block;
}
h1 {
	width: 100%;
	padding: 0;
	margin: 0;
}
h2 {
	width: 100%;
	padding: 0;
	margin: 0;
	margin-bottom: 20px;
	font: var(--font_h2);
}
h3 {
	width: 100%;
	padding: 0;
	margin: 0;
	margin-bottom: 18px;
	font: var(--font_h3);
}
h4 {
	width: 100%;
	padding: 0;
	margin: 0;
	margin-top: 18px;
	margin-bottom: 9px;
	font: var(--font_h4);
}
p {
	margin: 0px;
	margin-bottom: 9px;
	padding: 0px;
	font: var(--font_p);
}
strong {
	margin: 0px;
	padding: 0px;
	font: var(--font_h3);
	color: var(--color_txt_accent);
}
p:last-child {
	margin-bottom: 0;
}
p > span {
	color: var(--color_txt_accent);
}
a {
	color: var(--color_txt_link);
}
a:hover {
	text-decoration: none;
}
ul {
	list-style: none;
}
dl {
	padding: 0;
	margin: 0;
	margin-bottom: 9px;
}
dl:last-child {
	margin-bottom: 0;
}
small {
	display: inline-block;
	font-size: inherit;
}
.clear {
	clear: both;
	margin: 0px;
	padding: 0px;
}
.clearfix {
	zoom: 1; /* for IE6/7 */
}
.clearfix::after {
	content: '';
	display: block;
	clear: both;
}
*{
	box-sizing: border-box;
	margin: 0px;
	padding: 0px;
}

/* ===========================================
 * CONTAINER
 * ======================================== */

.container {
	position: relative;
	z-index: auto;
	width: min(100%, 750px);
	margin: 0 auto;
	font: var(--font_main);
	color: var(--color_txt_main);
	background-color: var(--color_bk_main);
}
.header, .main, .footer {
	position: relative;
	z-index: auto;
	width: 100%;
	margin: 0 auto;
}
.inner {
	width: 87.2%;
	margin: 0 auto;
}

/* ===========================================
 * FOOTER
 * ======================================== */

.wrap__info {
	width: 100%;
	padding: 48px 0;
	margin: 0 auto;
	background-color: var(--color_bk_main);
}

.wrap__btn {
	width: 100%;
	padding: 48px 0;
	margin: 0 auto;
	background-color: var(--color_bk_section);
}
.wrap__btn .next {
	width: min(100%, 270px);
	padding: 0.5em 0;
	margin: 24px auto 0 auto;
	text-align: center;
	font: var(--font_btn);
	color: var(--color_txt_btn);
	text-decoration: none;
	border-radius: 9px;
	background-color: var(--color_btn_next);
	display: block;
}

.wrap__faq {
	width: 100%;
	padding: 48px 0;
	margin: 0 auto;
	background-color: var(--color_bk_main);
}
.wrap__faq dl {
	width: 100%;
}
.wrap__faq dl > dt, .wrap__faq dl > dd {
	padding: 12px;
	display: grid;
	grid-template-columns: 22px auto;
	align-items: flex-start;
	gap: 0.5em;
}
.wrap__faq dl > dt {
	background-color: #F4F4F4;
}
.wrap__faq dl > dd,
.wrap__faq dl > dt  {
	border: 2px solid #F4F4F4;
}
.wrap__faq dl > dt > figure, .wrap__faq dl > dd > figure {
	width: 22px;
}

/* 準備 */
/* ======================================= */

.wrap__today {
	width: 100%;
	padding: 48px 0;
	margin: 0 auto;
	background-color: var(--color_bk_main);
}
.wrap__today .today {
	width: 100%;
	max-height: 300px;
	height: 100vw;
	padding: 24px;
	border: 2px solid #F4F4F4;
}

.wrap__situation00 {
	width: 100%;
	padding: 48px 0;
	margin: 0 auto;
	background-color: var(--color_bk_section);
}

.wrap__update {
	width: 100%;
	padding: 48px 0;
	margin: 0 auto;
	background-color: var(--color_bk_section);
}
.wrap__update .update {/*情報を更新する*/
	width: min(100%, 270px);
	padding: 0.5em;
	margin: 24px auto 0 auto;
	text-align: center;
	font: var(--font_btn);
	color: var(--color_txt_btn);
	text-decoration: none;
	border-radius: 9px;
	background-color: var(--color_btn_update);
	display: block;
}
.wrap__update .link {
	width: 100%;
	margin: 24px auto 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	gap: 9px;
} 

.wrap__back {
	width: 100%;
	padding: 48px 0;
	margin: 0 auto;
	background-color: var(--color_bk_main);
}
.wrap__back .back {/*情報を更新する*/
	width: min(100%, 270px);
	padding: 0.5em;
	margin: 0 auto;
	text-align: center;
	font: var(--font_btn);
	color: var(--color_txt_btn);
	text-decoration: none;
	border-radius: 9px;
	background-color: var(--color_btn_back);
	display: block;
}
.wrap__back .link {
	width: 100%;
	margin: 24px auto 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	gap: 9px;
} 

/* ===========================================
 * FOOTER
 * ======================================== */

.wrap__contact {
	width: 100%;
	padding: 48px 0;
	margin: 0 auto;
	background-color: var(--color_bk_section);
}

.wrap__copyright {
	width: 100%;
	padding: 1em 0;
	margin: 0 auto;
	text-align: center;
	font: 400 12px / 1.6 'Noto Sans JP', sans-serif;
	color: #00633C;
	background-color: #FFFFFF;
}