@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@800&display=swap');

/*------------------------------------------------------

	リセット

------------------------------------------------------*/

html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	font-style: normal;
	font-weight: 500;
	vertical-align: baseline;
	background: transparent;
}
body { line-height: 1;}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block;}
ul { list-style: none;}
blockquote, q { quotes: none;}
blockquote:before, blockquote:after, q:before, q:after { content: ''; content: none;}
a {
	margin: 0;
	padding: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}
table { border-collapse: collapse; border-spacing: 0;}
hr {
	display: block;
	height: 0px;
	border: 0;
	border-bottom: 1px solid #000;
	margin: 0;
	padding: 0;
}
input, select { vertical-align: middle;}
img {
	max-width: 100%;
	height: auto;
	border: none;
	vertical-align: bottom;
	-webkit-backface-visibility: hidden;
	image-rendering: -webkit-optimize-contrast;
}
*, *:before, *:after { box-sizing: border-box;}


/*------------------------------------------------------

	グローバル

------------------------------------------------------*/

html { height: 100%;}

body {
	font-family: "Hiragino Maru Gothic W4 JIS2004", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-weight: 500;
	color: #000;
	font-size: min(3.3vw,1.2em);
	line-height: 1.6;
	position: relative;
	max-width: 750px;
	margin: auto;
}

.fo_noto { font-family: "Noto Sans JP", serif;}

p { margin-bottom: 25px;}
p:last-child { margin-bottom: 0px;}

a { color: #0071b2;}
a:hover, a:active { color: #62add3; text-decoration: none;}

/* 文字装飾 */
.fo06 { font-size: 0.6em !important;}
.fo07 { font-size: 0.7em !important;}
.fo075 { font-size: 0.75em !important;}
.fo08 { font-size: 0.8em !important;}
.fo085 { font-size: 0.85em !important;}
.fo09 { font-size: 0.9em !important;}
.fo105 { font-size: 1.05em !important;}
.fo11 { font-size: 1.1em !important;}
.fo115 { font-size: 1.15em !important;}
.fo12 { font-size: 1.2em !important;}
.fo13 { font-size: 1.3em !important;}
.fo14 { font-size: 1.4em !important;}
.fo15 { font-size: 1.5em !important;}
.fo16 { font-size: 1.6em !important;}
.fo18 { font-size: 1.8em !important;}

.lh12 { line-height: 1.2;}
.lh14 { line-height: 1.4;}
.lh18 { line-height: 1.8;}
.lh20 { line-height: 2;}

.fo_white { color: #FFFFFF;}
.fo_blue { color: #3a4682;}

.left { float: left;}
.right { float: right;}

.pos_rel { position: relative;}
.pos_ab { position: absolute;}

.bold { font-weight: bold;}

.ta_center { text-align: center;}
.ta_right { text-align: right;}
.ta_left { text-align: left;}

.back_white { background-color: #fff;}
.back_gray { background-color: #e6e6e6;}
.back_blue { background-color: #002b5e;}
.back_blue02 { background-color: #719dd1;}

.container { padding: 0px 4%;}

.z50 { z-index: 50;}

/* リスト */
ol { padding-left: 2em;}
ol li { list-style: outside decimal;}

.list_indent { padding-left: 1em;}
.list_indent li { text-indent: -1em;}

.list_disc { padding-left: 1em;}
.list_disc li { list-style: outside disc;}

/* margin */
.mb00 { margin-bottom: 0 !important;}
.mb05 { margin-bottom: 0.5em !important;}
.mb10 { margin-bottom: 1em !important;}
.mb15 { margin-bottom: 1.5em !important;}
.mb20 { margin-bottom: 2em !important;}
.mb25 { margin-bottom: 2.5em !important;}
.mb30 { margin-bottom: 3em !important;}

/* clearFix */
.clearFix { zoom: 100%;}
.clearFix:after {
	content: "";
	clear: both;
	height: 0;
	display: block;
	visibility: hidden;
}


/* ------------------------
	ヘッダー
------------------------ */

.header { padding: 1.2em 72% 1.2em 1em; border-bottom: solid 0.8em #002b5e;}


/* ------------------------
	フッター
------------------------ */

.footer h2 span { border-bottom: dashed 3px #000; padding-bottom: 0.2em;}
.footer .list01 { display: flex; justify-content: center;}
.footer .list01 li:first-child { margin-right: 1.5em;}

.footer .copy { padding: 0.5em;}

.fixed_btn { position: fixed; left: 50%; bottom: 0px; z-index: 9999; width: 100%; max-width: 750px; transform: translateX(-50%); box-shadow: 0px -2px 8px rgba(0,0,0,0.4); border-top-left-radius: 1em; border-top-right-radius: 1em; padding: 0.6em 1.5em;}
.fixed_btn ul { display: flex; justify-content: center}
.fixed_btn li:first-child { margin-right: 1.3em;}

.footer .map iframe { width: 100%; vertical-align: bottom; height: 10em;}

body { padding-bottom: 19%;}


/* ------------------------
	コンテンツ
------------------------ */

.mainimage .btn_area { width: 100%; display: flex; justify-content: center; left: 0px; bottom: 0px; padding: 0px 1em;}
.mainimage .btn_area li:first-child { margin-right: 1.8em;}

.sec01 { padding: 6% 0px 5%;}

.sec02 { padding: 4% 0px;}
.sec02 .box01 { margin: -3em 4% 0px; padding: 1em 2.5em;}
.sec02 th { width: 7em;}
.sec02 .map iframe { width: 100%; vertical-align: bottom; height: 10em;}

.sec05 { background: url("../images/sec05_bg.png") no-repeat center center; background-size: cover; padding: 4% 0px 3%;}
.sec05 li { border: solid 0.5em #fff; background: #fcf2e3; margin-bottom: 0.8em; padding: 1.3em;}
.sec05 li:nth-child(odd) { margin-right: 4%; border-top-right-radius: 5em; border-bottom-right-radius: 5em; padding-left: 6em;}
.sec05 li:nth-child(even) { margin-left: 4%; border-top-left-radius: 5em; border-bottom-left-radius: 5em; padding-right: 6em;}
.sec05 li .pos_ab { width: 5em; bottom: 0;}
.sec05 li:nth-child(odd) .pos_ab { left: 1em;}
.sec05 li:nth-child(even) .pos_ab { right: 1em;}
.sec05 span { background: linear-gradient(transparent 70%, #fcee21 0%);}

.sec06 { background: #fcf2e3; padding-bottom: 3%;}
.sec06 dl { background: #f0831e; border-radius: 1.1em; padding: 0.8em;}
.sec06 dt { padding: 0.2em 1.9em;}
.sec06 dt:before, .sec06 dt:after { content: ""; position: absolute; background-repeat: no-repeat; background-position: center center; background-size: 100% auto; top: 50%; transform: translateY(-50%); cursor: pointer;}
.sec06 dt:before { background-image: url("../images/ico_q.svg"); width: 1.3em; height: 1.7em; left: 0px;}
.sec06 dt:after { background-image: url("../images/ico_plus.svg"); width: 1.5em; height: 1.5em; right: 0px;}
.sec06 dt.open:after { background-image: url("../images/ico_minus.svg");}
.sec06 dd { border-radius: 0.8em; padding: 1em; margin-top: 0.8em; display: none;}
