@charset "utf-8";@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');/* --------------------------------------------------- *//* Base *//* --------------------------------------------------- */html, body {	margin: 0;	padding: 0;	width: 100%;	height: 100%;	font-size: 62.5%;}body {	color: #222;	font-family: "Noto Sans JP", "Droid Sans", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;	background-color: #00a33e;	font-size: 1.6em;	font-weight: 400;	font-style: normal;	line-height: 1.6;	letter-spacing: 0.01em;	-webkit-text-size-adjust: 100%;}/* --------------------------------------------------- *//* Font *//* --------------------------------------------------- */.font-l { font-size: 2.8rem; }.font-m { font-size: 2.1rem; }.font-n { font-size: 1.6rem; line-height: 1.8; }.font-s { font-size: 1.4rem; line-height: 1.8; }.font-ss { font-size: 1.2rem; line-height: 1.8; }h2 {	font-size: 2.8rem;	font-weight: 600;}h2.sc_title {	width: 100%;	text-align: center;}h2.sc_title::after {	content: '';	display: block;	margin: 0.5em auto 0;	width: 48px;	height: 3px;	background-color: #00a33e;}h2.bar {	padding: 0.25em 1.0em;	border: 1px solid;	font-size: 2.4rem;}h3 {	font-size: 2.1rem;	font-weight: 600;}h4 {	font-size: 1.8rem;	font-weight: 600;}h5 {	font-size: 1.6rem;	font-weight: 600;}/* Tag *//* --------------------------------------------------- */span {	display: inline-block;	color: inherit;	font-style: normal;	font-size: inherit;	font-weight: inherit;	text-decoration: none;}/* Text *//* --------------------------------------------------- */.bold, strong, b { font-weight: 600; }.txt-left { text-align: left; }.txt-right { text-align: right; }.txt-center { text-align: center; }p.int {	padding-left: 1.0em;	text-indent: -1.0em;}p.num-r {	position: relative;	padding-left: 2.0em;}p.num-r::before {	content: '('attr(data-num)')';	position: absolute;	left: 0;	display: inline-block;	width: 2.0em;	text-align: center;}p.num {	padding-left: 1.0em;	text-indent: -0.9em;}p.num::before { content: attr(data-num)''; }/* --------------------------------------------------- *//* Color *//* --------------------------------------------------- */.black { color: #111; }.white { color: #fff; }.gray { color: #999; }.red { color: #e00; }.green { color: #00a33e; }em {	color: inherit;	font-size: inherit;	font-weight: inherit;	font-style: normal;}.bgc00 { background-color: #fff; }.bgc01 { background-color: #00a33e; }.bgc02 { background-color: #f2faf5; }.bgc03 { background-color: #f6f6f6; }/* --------------------------------------------------- *//* Link *//* --------------------------------------------------- */a {	color: inherit;	font-size: inherit;	font-weight: inherit;	text-decoration: none;	transition: all .3s;}a:hover { opacity: 0.5; }p a { color: #f50; text-decoration: underline; }/* --------------------------------------------------- *//* Button *//* --------------------------------------------------- */button.btn {	-webkit-appearance: none;	-moz-appearance: none;	appearance: none;	border: none;	transition: all .3s;}button.btn:hover { opacity: 0.5; }a.btn,button.btn {	position: relative;	display: block;	margin-left: auto;	margin-right: auto;	width: 80%;	max-width: 240px;	background-color: #00a33e;	border: 1px solid #00a33e;	border-radius: 4px;	color: #fff;	text-align:center;	cursor: pointer;}a.btn b,button.btn b {	display: inline-block;	font-size: 1.6rem;	font-weight: 600;	line-height: 3.0;}button.btn b { vertical-align: -1.25em; }a.btn.neg,button.btn.neg {	background-color: #aaa;	border: 1px solid #aaa;}a.btn.frame,button.btn.frame {	background-color: #fff;	color: #00a33e;}a.btn[disabled],button.btn[disabled] {	background-color: #ccedd8;	border: 1px solid #ccedd8;	cursor: default;	pointer-event: none;}a.btn[disabled]:hover,button.btn[disabled]:hover { opacity: 1.0; }/* Guide Button */a.btn.guide.posleft { margin: 0 auto 0 0; }a.btn.guide b {	padding-left: 2.0em;	background-image: url('../img/common/ico-guide.png');	background-repeat: no-repeat;	background-position: 0 50%;	background-size: 32px 32px;}/* --------------------------------------------------- *//* Image *//* --------------------------------------------------- */img { width: 100%; height: auto; }/* --------------------------------------------------- *//* Space *//* --------------------------------------------------- */.tpad-l { padding-top: 96px; }.bpad-l { padding-bottom: 96px; }.tpad-m { padding-top: 72px; }.bpad-m { padding-bottom: 72px; }.tpad-s { padding-top: 48px; }.bpad-s { padding-bottom: 48px; }.tpad-ss { padding-top: 32px; }.bpad-ss { padding-bottom: 32px; }.tpad-sss { padding-top: 1.0em; }.bpad-sss { padding-bottom: 1.0em; }.tmgn-l { margin-top: 96px; }.bmgn-l { margin-bottom: 96px; }.tmgn-m { margin-top: 72px; }.bmgn-m { margin-bottom: 72px; }.tmgn-s { margin-top: 48px; }.bmgn-s { margin-bottom: 48px; }.tmgn-ss { margin-top: 32px; }.bmgn-ss { margin-bottom: 32px; }.tmgn-sss { margin-top: 1.0em; }.bmgn-sss { margin-bottom: 1.0em; }.tmgn0 { margin-top: 0; }.bmgn0 { margin-bottom: 0; }/* --------------------------------------------------- *//* Block *//* --------------------------------------------------- */.block-l {	margin-left: auto;	margin-right: auto;	width: 100%;}.block-m {	margin-left: auto;	margin-right: auto;	width: 86%;}.block-lm {	margin-left: auto;	margin-right: auto;	width: 96%;	max-width: 960px;}.block-s {	margin-left: auto;	margin-right: auto;	width: 96%;	max-width: 800px;}.block-ss {	margin-left: auto;	margin-right: auto;	width: 96%;	max-width: 720px;}.wrap_padding { padding: 3.0em 2.5em; }blockquote { padding: 1.75em 2.0em; }/* --------------------------------------------------- *//* Form *//* --------------------------------------------------- */form *:focus { outline: none; }form .selectwrap { position: relative; display: table; }form .selectwrap::after {	content: '';	position: absolute;	top: 18px;	right: 12px;	display: block;	width: 7px;	height: 7px;	border-bottom: 1px solid #333;	border-right: 1px solid #333;	transform: rotateZ(45deg);	pointer-events: none;}form select {	-webkit-appearance: none;	-moz-appearance: none;	appearance: none;	display: table;	padding: 5px 30px 5px 12px;	width: 100%;	height: 3.0em;	border: 1px;	font-size: 1.6rem;	line-height: 2.5;	background-color: #fff;	border: 1px solid #ddd;	border-radius: 6px;	box-sizing: border-box;	cursor: pointer;}select::-ms-expand {	display: none;}select:-moz-focusring { 	color: transparent; 	text-shadow: 0 0 0 #828c9a;}form input[type=text],form input[type=email],form input[type=password],form input[type=number],form input[type=tel] {	-webkit-appearance: none;	-moz-appearance: none;	appearance: none;	padding: 4px 10px;	background-color: #fff;	border: 0;}form input[type=text],form input[type=email],form input[type=password],form input[type=number],form input[type=tel] {	display: inline-block;	box-sizing: border-box;	border: 1px solid #ddd;	border-radius: 6px;	font-size: 1.6rem;	line-height: 2.0;	height: 3.0em;	transition: all 0.2s;}:placeholder-shown { color: rgba(0,0,0,0.3); }::-webkit-input-placeholder { padding-top: 5px; color: rgba(0,0,0,0.3); font-size: 1.1rem; line-height: 2.0; }:-moz-placeholder { color: rgba(0,0,0,0.3); font-size: 1.1rem; line-height: 2.0; opacity: 0.5; }:-ms-input-placeholder { padding-top: -5px; color: rgba(0,0,0,0.3); font-size: 1.1rem; line-height: 2.0; }form textarea {	-webkit-appearance: none;	-moz-appearance: none;	appearance: none;	padding: 4px 10px;	background-color: #fff;	box-sizing: border-box;	border: 0;	border-radius: 0;	border: 1px solid #ddd;	border-radius: 6px;	font-size: 1.6rem;	line-height: 2.0;	transition: all 0.2s;}/* Error */form select.error,form input[type=text].error,form input[type=email].error,form input[type=password].error,form input[type=number].error,form input[type=tel].error,form textarea.error {	border: 1px solid #d00;	background-color: #fce7e5;}form button,form input[type=button],form input[type=submit],form input[type=reset] {	-webkit-appearance: none;	-moz-appearance: none;	appearance: none;	display: block;	width: 100%;	max-width: 240px;	min-width: 240px;	border: 0;	background-color: #999;	border-radius: 4px;	color: #fff;	font-size: 1.6rem;	font-weight: 600;	line-height: 3.0;	text-align: center;	transition: all .3s;	cursor: pointer;}form input[type=submit] {	border-color: #00a33e;	background-color: #00a33e;	color: #fff;}form input[type=submit].btn-back {	border-color: #bbb;	background-color: #bbb;	color: #fff;}form button:hover,form input[type=button]:hover,form input[type=submit]:hover,form input[type=reset]:hover { opacity: 0.5; }form input:disabled:hover { opacity: 1.0; }/* Disable */form input:disabled {	background-color: #999;	cursor: default;}form label input[type=radio],form label input[type=checkbox] {	display: inline-block;	margin-right: 0.75em;	vertical-align: -1px;}/* フォームサイズ指定 *//* --------------------------------------------------- */.wide-l { width: 100%; }.wide-m { width: 50%; }.wide-s { width: 200px; }form textarea { height: 240px; }/* Form Sheet *//* --------------------------------------------------- */form .sheet { padding: 2.0em; }form .sheet label { display: block; }form .sheet label:not(:first-child) h5 { margin-top: 1.5em; }form .sheet label + div { margin-top: 0.75em; }form .sheet label.lined {	margin-top: 1.5em;	border-top: 1px solid #bbb;}form .sheet label.required::after {	content: '必須';	display: inline-block;	margin-left: 1.0em;	padding: 0 0.5em;	background-color: #d00;	border-radius: 3px;	color: #fff;	font-size: 1.0rem;	font-weight: 400;	line-height: 1.4;	vertical-align: 0.15em;}form .sheet label h5 { display: inline-block; }form .note {	display: block;	margin-top: 0.5em;	color: #999;	font-size: 1.3rem;}/* Error Message */form .error_msg {	display: block;	margin-top: 0.5em;	color: #d00;	font-size: 1.3rem;}.btn_area {	display: flex;	flex-direction: column;	align-items: center;	justify-content: center;	gap: 1.5em;}form .btn_area label { margin-bottom: 1.0em; }/* Confirm */.confirm form .sheet label h5 { color: #00a33e; }.confirm form .sheet label.required::after { display: none; }/* Combo */form .combo {	display: flex;	width: 100%;	justify-content: space-between;}form .combo > div {	display: flex;	justify-content space-between;	width: 48%;	align-items: center;}form .combo > div span { width: 3.0em; }form .combo > div span + * { width: 100%; }form .zip {	display: flex;	align-items: center;}form .zip span { padding: 0 0.5em; }form .zip input { width: 6.0em; }form .date {	display: flex;	align-items: center;	gap: 1.0em;}form .date .selectwrap { width: 8.0em; }form .horizontal {	display: flex;	flex-wrap: wrap;	gap: 0.75em 1.0em;	width: 100%;}form .horizontal label {	margin: 0  !important;}/* --------------------------------------------------- *//* Format *//* --------------------------------------------------- *//* Basic *//* --------------------------------------------------- */.basic p { line-height: 1.8; }/* Announce *//* --------------------------------------------------- */.announce {	padding: 1.25em 1.5em;	background-color: #fce7e5;}.scroll_box > div {	margin: 0 auto;	padding: 3.0em 0;	width: 90%;}/* Side_Label *//* --------------------------------------------------- */dl.side_label {	display: table;	width: 100%;}dl.side_label dt {	padding-top: 2.0em;	width: 16.0em;	float: left;}dl.side_label dd {	padding: 2.0em 0 3.0em 18.0em;	border-top: 1px solid #ddd;	line-height: 1.8;}dl.side_label h4,dl.side_label h5 { color: #00a33e; }/* Scroll Box *//* --------------------------------------------------- */.scroll_box {	height: 640px;	border:1px solid #ddd;	overflow-y: auto;}.scroll_box > div {	margin: 0 auto;	padding: 3.0em 0;	width: 90%;}/* Round Box *//* --------------------------------------------------- */.roundbox {	padding: 4.0em;	border-radius: 1.0em;}/* Series *//* --------------------------------------------------- */.series {	display: flex;	flex-wrap: wrap;	gap: 36px;}.series .fullbox,.series .harfbox {	padding: 2.5em 2.0em;	border: 1px solid #00a33e;}.series .fullbox.noframe,.series .harfbox.noframe { border: 0; }.series .fullbox { width: 100%; }.series .harfbox { width: calc(50% - 18px); }/* Information *//* --------------------------------------------------- */.information {	display: flex;	flex-wrap: wrap;	gap: 36px;}.information > div { width: calc(50% - 18px); }/* Status Board */.status_board {	padding: 2.25em 2.25em;	border: 1px solid #00a33e;}.status_board h3 {	margin-bottom: 0.5em;	color: #00a33e;	font-size: 2.4rem;	text-align: center;}.status_board h4 {	margin: 0 auto 0.5em;	display: table;	padding: 0 2.0em;	border-radius: 96px;	color: #00a33e;	border: 1px solid #00a33e;}.status_board h4.noentry {	margin: 0 auto 2.0em;	color: #fff;	background-color: #f50;	border: 1px solid #f50;}.status_board h4.entried {	margin: 0 auto 2.0em;	color: #f50;	border: 1px solid #f50;}.status_board p { margin-top: 1.0em; }.status_board .schedule {	margin-top: 1.5em;	border-top: 1px solid #ddd;}.status_board .schedule p {	margin: 0;	padding: 0.75em 0;	border-bottom: 1px solid #ddd;	font-size: 2.1rem;	font-weight: 600;	text-align: center;}.status_board .schedule p::before {	content: attr(data-label)'';	display: block;	color: #00a33e;	font-size: 1.6rem;}.status_board .detail {	margin-top: 1.5em;	border-top: 1px solid #aaa;	border-bottom: 1px solid #aaa;}.status_board .detail div {	display: flex;	border-top: 1px solid #ddd;}.status_board .detail div:first-child { border-top: 0; }.status_board .detail div::before {	content: attr(data-label)'';	padding: 0.75em;	background-color: #e5f6eb;	width: 30%;}.status_board .detail div p {	margin: 0;	padding: 0.75em;	width: 70%;}/* Headline */.headline h3 {	padding-bottom: 0.5em;	border-bottom: 1px solid #444;}.headline dt {	padding: 1.0em 0 0.75em;	color: #999;	font-size: 1.4rem;}.headline dd {	padding: 0 0 1.0em;	border-bottom: 1px solid #ddd;}.headline h5 {	margin-top: 0.25em;	color: #00a33e;}