@charset "Shift_JIS";
/*====================================

	----------------------------------
		Structure
	----------------------------------

	0. General
	1. Header
	2. Main
	3. Footer
	4. Page

	----------------------------------
		Change Log
	----------------------------------

	-2019/01/30	Fixed all

====================================*/
/*====================================

	0. General

====================================*/
html { font-size: 62.5%; }
body { position: relative; background: #ffffff; color: #202020; font-size: 1.0rem; font-family: "メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif"; }
img { vertical-align: bottom; }
a { color: #202020; text-decoration: none; cursor: pointer; }
	a:hover { opacity: 0.8; }
input[type=submit] { cursor: pointer; }
ul,
ol { list-style: none; }
div.inner { display: block; overflow: hidden; margin: 0 auto; width: 1200px; zoom: 1; }
@media (min-width: 668px) {
	.spOnly { display: none !important; } }
#page-top { position: fixed; right: 20px; bottom: 30px; z-index: 3; }
	#page-top a { display: block; width: 60px; height: 60px; background: url("/common/img/icon_pagetop.png") no-repeat 0 0; text-align: center; text-indent: -9999px; }

/*====================================

	1. Header

====================================*/
header { position: fixed; top: 0; z-index: 3; width: 100%; min-width: 1200px; background: #fff; line-height: 1; }
	header #logo { position: absolute; top: 18px; left: 50%; margin-left: -600px; width: 150px; }
	header #logo img { width: 350px; }
	header p#panel-btn { display: none; }
	header .gnav { display: block; }
	header .cmnNav { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; margin-top: 80px; padding: 0 280px 0 0; background: #99e3ef; -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; }
	header .cmnNav__item { padding: 22px 0; font-size: 1.7rem; }
	header .cmnNav__item:nth-child(1) { width: 326px; }
	header .cmnNav__item:nth-child(1) > .cmnNav__link > span:before { background: url("/common/img/icon_light.svg") no-repeat 50% 50%/auto 28px; }
	header .cmnNav__item:nth-child(1) .cmnsubNavInner:before { left: 155px; }
	header .cmnNav__item:nth-child(2) { width: 377px; }
	header .cmnNav__item:nth-child(2) > .cmnNav__link > span:before { background: url("/common/img/icon_tower.svg") no-repeat 50% 50%/auto 25px; }
	header .cmnNav__item:nth-child(2) .cmnsubNavInner:before { left: 495px; }
	header .cmnNav__item:nth-child(3) { width: 217px; }
	header .cmnNav__item:nth-child(3) > .cmnNav__link:after { position: absolute; right: 0; width: 1px; height: 16px; background: #8db2b8; content: ""; }
	header .cmnNav__item:nth-child(3) > .cmnNav__link > span:before { background: url("/common/img/icon_build.svg") no-repeat 50% 50%/auto 25px; }
	header .cmnNav__item:nth-child(3) .cmnsubNavInner:before { left: 800px; }
	header .cmnNav__link { position: relative; display: block; text-align: center; cursor: pointer; }
	header .cmnNav__link:before { position: absolute; left: 0; width: 1px; height: 16px; background: #8db2b8; content: ""; }
	header .cmnNav__link > span { position: relative; display: inline-block; padding-left: 35px; }
	header .cmnNav__link > span:before { position: absolute; top: -5px; left: 0; width: 28px; height: 28px; content: ""; }
	header .cmnsubNav { position: absolute; top: 140px; left: 0; display: none; padding: 20px 0; width: 100%; background: rgba(153, 227, 239, 0.5); }
	header .cmnsubNav:hover > .cmnsubNav { visibility: visible; }
	header .cmnsubNavInner { position: relative; margin: 0 auto; padding: 25px 40px; width: 1200px; background: #fff; }
	header .cmnsubNavInner:before { position: absolute; top: -18px; width: 0; height: 0; border-right: 12px solid transparent; border-bottom: 18px solid #fff; border-left: 12px solid transparent; content: ""; }
	header .cmnsubNav__block { margin-right: 26px; width: 356px; }
	header .cmnsubNav__block:nth-child(3n) { margin-right: 0; }
	header .cmnsubNav__block .cmnsubNav__item { width: 356px; }
	header .cmnsubNav__block dl + dl { margin-top: 20px; }
	header .cmnsubNav__subtitle { display: block; padding: 10px 15px; background: #ccf1f7; }
	header .cmnsubNav__list { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; font-size: 1.4rem; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }
	header .cmnsubNav__item { margin-right: 39px; padding: 12px 0; width: 250px; border-bottom: 1px solid #e0e0e0; }
	header .cmnsubNav__item:nth-child(4n) { margin-right: 0; }
	header .cmnsubNav__item a { position: relative; display: inline-block; padding-left: 15px; }
		header .cmnsubNav__item a:before { position: absolute; top: 3px; left: 0; border-top: 4px solid transparent; border-bottom: 4px solid transparent; border-left: 6px solid #000; content: ""; }
		header .cmnsubNav__item > a[target=_blank]:after { position: absolute; top: 1px; margin-left: 6px; width: 10px; height: 10px; background: url("/common/img/icon_blank.svg") no-repeat 0 0/10px auto; content: ""; }
	header .functionNav { position: absolute; top: 34px; left: 50%; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; margin-left: -40px; width: 220px; }
	header .functionNav__item { margin-right: 15px; font-size: 1.4rem; }
		header .functionNav__item a { position: relative; display: inline-block; padding-left: 11px; }
		header .functionNav__item a:before { position: absolute; top: 50%; left: 0; margin-top: -4px; border-top: 4px solid transparent; border-bottom: 4px solid transparent; border-left: 6px solid #000; content: ""; }
	header .fontNav { position: absolute; top: 27px; left: 50%; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; margin-left: 185px; width: 215px; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; }
	header .fontNav dt { position: relative; padding: 0 10px 0 15px; font-size: 1.4rem; }
		header .fontNav dt:before { position: absolute; top: 50%; left: 0; margin-top: -7px; width: 1px; height: 14px; background: #869fc0; content: ""; }
	header .fontNav dd { margin-right: 5px; }
		header .fontNav dd a { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; width: 25px; height: 25px; border-radius: 50%; background-image: -webkit-linear-gradient(-90deg, white 0%, #b7c8ce 100%); background-image: -ms-linear-gradient(-90deg, white 0%, #b7c8ce 100%); font-size: 1.3rem; -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; }
		header .fontNav dd a.is-active { background: #99e3ef; }
	header .moveNav__search { position: absolute; top: 94px; left: 50%; margin-left: 360px; }
	header .moveNav__search form { padding-left: 10px; width: 240px; height: 32px; border-radius: 16px; background: #fff; font-size: 1.6rem; display: -webkit-flex; display: flex; }
	header .moveNav__search input[type=search] { padding: 9px 10px; width: 190px; height: 32px; font-size: 1.6rem; vertical-align: middle; }
	header .moveNav__search input[type=submit] { width: 40px; height: 32px; background: url("/common/img/icon_search.png") no-repeat 50% 50%; text-indent: -9999; }
	header .moveNav__lang { position: absolute; top: 25px; left: 50%; margin-left: 475px; width: 125px; font-size: 1.4rem; }
	header .moveNav__lang a { display: block; padding: 8px 0; border-radius: 5px; background-image: -webkit-linear-gradient(-90deg, white 0%, #b7c8ce 100%); background-image: -ms-linear-gradient(-90deg, white 0%, #b7c8ce 100%); text-align: center; }
	header .snsNav { position: absolute; top: 27px; left: 50%; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; margin-left: 378px; padding: 0 10px 0 15px; }
	header .snsNav:before { position: absolute; top: 50%; left: 0; margin-top: -7px; width: 1px; height: 14px; background: #869fc0; content: ""; }
	header .snsNav:after { position: absolute; top: 50%; right: 0; margin-top: -7px; width: 1px; height: 14px; background: #869fc0; content: ""; }
	header .snsNav__item { margin-right: 5px; }
		header .snsNav__item img { width: 25px; height: 25px; }



/*====================================

	2. Main

====================================*/
main { position: relative; z-index: 2; display: block; overflow: hidden; margin-top: 140px; min-width: 1200px; min-height: 400px; font-size: 1.6rem; line-height: 1.6; }
	main.s { font-size: 1.4rem; }
	main.m { font-size: 1.6rem; }
	main.l { font-size: 1.8rem; }
	main a { text-decoration: underline; }
	main a:hover { text-decoration: none; }
	main #breadcrumb { background: #fff; }
	main #breadcrumb ul { display: -webkit-flex; display: -webkit-box; display: -ms-flexbox; display: flex; margin: 0 auto; padding: 10px 0; width: 1200px; font-size: 80%; }
	main #breadcrumb a { position: relative; display: inline-block; margin-right: 10px; padding-right: 15px; }
		main #breadcrumb a:after { position: absolute; top: 0; right: 0; bottom: 0; margin: auto; width: 7px; height: 7px; border-top: solid 1px #697b91; border-right: solid 1px #697b91; content: ""; text-decoration: none; -webkit-transform: rotate(45deg); transform: rotate(45deg); -ms-transform: rotate(45deg); }

	main #mainConteiner { display: block; overflow: hidden; margin: 0 auto; width: 1200px; }
	main #mainConteiner > *:first-child { margin-top: 0; }
	main #l-main > *:first-child,
	main #l-aside > *:first-child { margin-top: 0; }
	main #l-main > *:last-child,
	main #l-aside > *:last-child { margin-bottom: 0; }
	main #l-main { float: right; width: 920px; }
	main .is-accordion { margin-top: 2em; }
	main .is-head { position: relative; margin-bottom: 2px; padding: 15px 17px 15px 33px; background: #eee; cursor: pointer; }
	main .is-head:before { position: absolute; top: 0; bottom: 0; left: 15px; margin: auto; width: 0; height: 0; border-top: 6px solid #000; border-right: 4px solid transparent; border-left: 4px solid transparent; content: ""; }
	main .is-open { background: #27bdd5; color: #fff; }
	main .is-open:before { border-top: 0 solid transparent; border-bottom: 6px solid #fff; }
	main .is-body { padding: 15px; }
	main .is-body.is-answer { position: relative; padding: 15px 15px 15px 60px; }
		main .is-body.is-answer:before { position: absolute; top: 10px; left: 10px; color: #27bdd5; content: "A"; font-size: 3rem; }
	main #l-aside { float: left; width: 240px; font-size: 1.4rem; }
	main #l-aside h1 { padding: 18px 5px; background: #27bdd5; color: #fff; text-align: center; font-weight: normal; font-size: 1.8rem; line-height: 1.2; }
		main #l-aside h1 a { color: #fff; }
	main #l-aside ul { margin: 0; line-height: 1.4; }
	main #l-aside li { padding: 15px 0; border-bottom: 1px solid #ccc; }
		main #l-aside li.is-current a.arrowIcon:before { border-left: 6px solid #27bdd5; }
	main #l-aside .is-accordion { margin-top: 0; }
	main #l-aside dt { position: relative; margin-bottom: 2px; padding: 13px 17px; background: #eee; font-size: 1.6rem; }
		main #l-aside dt.is-head { padding: 13px 17px 13px 33px; cursor: pointer; }
		main #l-aside dt.is-head:before { position: absolute; top: 0; bottom: 0; left: 15px; margin: auto; width: 0; height: 0; border-top: 6px solid #000; border-right: 4px solid transparent; border-left: 4px solid transparent; content: ""; }
		main #l-aside dt.is-open { background: #eee; color: #202020; }
		main #l-aside dt.is-open:before { border-top: none; border-bottom: 6px solid #27bdd5; }
		main #l-aside dt dd.is-body { margin-bottom: 2px; padding: 0; }
		main #l-aside dt dd li { padding: 15px; }


/*-----------------------------------------------------
Title
------------------------------------------------------*/
.title00 { margin-bottom: 40px; padding: 50px 0; background: #eee; }
	.title00.emergency { background: #f00; color: #fff; }
	.title00 h1 { margin: 0 auto; width: 1200px; font-weight: normal; font-size: 3.2rem; line-height: 1; }
.titleL01 { margin: 1.5em 0 1em; padding-bottom: 0.5em; border-bottom: 3px solid #5fcddf; font-weight: normal; font-size: 3rem; line-height: 1.2; }
.titleL02 { margin-top: 1.5em; font-weight: normal; font-size: 3rem; line-height: 1.2; }
.titleM01 { margin-top: 1.5em; padding-bottom: 0.5em; border-bottom: 1px solid #5fcddf; font-weight: normal; font-size: 2.4rem; line-height: 1.2; }
.titleM02 { margin-top: 1.5em; padding-bottom: 0.5em; border-bottom: 1px solid #ccc; font-weight: normal; font-size: 2.4rem; line-height: 1.2; }
.titleM03 { margin-top: 1.5em; padding: 0.5em; background: #eee; font-weight: normal; font-size: 2.4rem; line-height: 1.2; }
.titleM04 { margin-top: 1.5em; font-weight: normal; font-size: 2.4rem; line-height: 1.2; }
.titleS01 { position: relative; margin-top: 1.5em; padding-left: 0.8em; font-weight: normal; font-size: 2rem; line-height: 1.2; }
	.titleS01:before { position: absolute; top: 0; left: 0; width: 2px; height: 1em; background: #5fcddf; content: ""; }
.titleS02 { margin-top: 1.5em; padding: 0.5em; background: #eee; font-weight: normal; font-size: 2rem; line-height: 1.2; }
.titleS03 { margin-top: 1.5em; font-weight: normal; font-size: 2rem; line-height: 1.2; }
.titleSS01 { position: relative; margin-top: 1.5em; padding-left: 1em; font-weight: normal; font-size: 1.8rem; line-height: 1.2; }
	.titleSS01:before { position: absolute; top: 0; bottom: 0; left: 0; margin: auto; width: 0.5em; height: 1px; background: #5fcddf; content: ""; }
.is-date { display: block; margin-bottom: 1em; font-size: 1.6rem; }


/*-----------------------------------------------------
Text
------------------------------------------------------*/
main p { margin: 1em 0; }
main small { font-size: 80% !important; }
.komeTxt { padding-left: 1em; text-indent: -1em; }
.komeNumTxt { padding-left: 2em; text-indent: -2em; }
.taR { text-align: right; }
.taL { text-align: left; }
.taC { text-align: center; }
.block { display: block !important; }

/*-----------------------------------------------------
Image
------------------------------------------------------*/
figure { margin: 0.5em 0 2em !important; }
figure img { height: auto; max-width: 100%; }

/*-----------------------------------------------------
List
------------------------------------------------------*/
main ol { margin: 1em 0; }
main ul { margin: 1em 0; }
.discList { margin: 1em 0 1em 1.5em; list-style: disc; }
.decimalList { margin: 1em 0 1em 1.5em; list-style: decimal; }
.circleList { margin: 1em 0 1em 1.5em; list-style: circle; }
.alphaUList { margin: 1em 0 1em 1.5em; list-style: upper-alpha; }
.alphaLList { margin: 1em 0 1em 1.5em; list-style: lower-alpha; }
.squareLList { margin: 1em 0 1em 1.5em; list-style: square; }
.irohaList { margin: 1em 0 1em 1.5em; list-style: katakana-iroha; }
.romanList { margin: 1em 0 1em 1.5em; list-style: upper-roman; }
.kakkoList { margin: 1em 0; padding-left: 2.5em; list-style: none inside; text-indent: -2.5em; }
	.kakkoList > li { counter-increment: cnt; }
	.kakkoList > li:before { display: marker; content: "（" counter(cnt) "）"; }
	.kakkoList > li * { text-indent: 0; }
.komeList { margin: 1em 0; text-indent: 0; }
	.komeList > li { padding-left: 1em; text-indent: -1em; }
.komeNumList { margin: 1em 0; }
	.komeNumList > li { padding-left: 2em; text-indent: -2em; }
	.komeNumList > li * { text-indent: 0; }
.lineList { margin: 1em 0; }
	.lineList li { padding: 0.7em 0; border-bottom: 1px solid #e6e6e6; }

/*-----------------------------------------------------
Icon
------------------------------------------------------*/
.pdfIcon { position: relative; display: inline-block; padding-left: 1.5em; }
	.pdfIcon:before { position: absolute; top: 0; left: 0.15em; width: 1.4em; height: 1.4em; background: url("/common/img/icon_pdf.svg") no-repeat 0 0/auto 1.4em; content: ""; }
.xlsIcon { position: relative; display: inline-block; padding-left: 1.5em; }
	.xlsIcon:before { position: absolute; top: 0; left: 0.15em; width: 1.4em; height: 1.4em; background: url("/common/img/icon_xls.svg") no-repeat 0 0/auto 1.4em; content: ""; }
.docIcon { position: relative; display: inline-block; padding-left: 1.5em; }
	.docIcon:before { position: absolute; top: 0; left: 0.15em; width: 1.4em; height: 1.4em; background: url("/common/img/icon_doc.svg") no-repeat 0 0/auto 1.4em; content: ""; }
.zipIcon { position: relative; display: inline-block; padding-left: 1.5em; }
	.zipIcon:before { position: absolute; top: 0; left: 0.15em; width: 1.4em; height: 1.4em; background: url("/common/img/icon_zip.svg") no-repeat 0 0/auto 1.4em; content: ""; }
.csvIcon { position: relative; display: inline-block; padding-left: 1.5em; }
	.csvIcon:before { position: absolute; top: 0; left: 0.15em; width: 1.4em; height: 1.4em; background: url("/common/img/icon_csv.svg") no-repeat 0 0/auto 1.4em; content: ""; }
.pdfIconAfter { position: relative; padding-right: 1em; }
	.pdfIconAfter:after { position: absolute; right: 0.2em; bottom: 0.2em; width: 1.2em; height: 1em; background: url("/common/img/icon_pdf.svg") no-repeat 100% 0/auto 1em; content: ""; }
.xlsIconAfter { position: relative; padding-right: 1em; }
	.xlsIconAfter:after { position: absolute; right: 0; bottom: 0.2em; width: 1.2em; height: 1em; background: url("/common/img/icon_xls.svg") no-repeat 100% 0/auto 1em; content: ""; }
.docIconAfter { position: relative; padding-right: 1em; }
	.docIconAfter:after { position: absolute; right: 0; bottom: 0.2em; width: 1.2em; height: 1em; background: url("/common/img/icon_doc.svg") no-repeat 100% 0/auto 1em; content: ""; }
.zipIconAfter { position: relative; padding-right: 1em; }
	.zipIconAfter:after { position: absolute; right: 0; bottom: 0.2em; width: 1.2em; height: 1em; background: url("/common/img/icon_zip.svg") no-repeat 100% 0/auto 1em; content: ""; }
.csvIconAfter { position: relative; padding-right: 1em; }
	.csvIconAfter:after { position: absolute; right: 0; bottom: 0.2em; width: 1.2em; height: 1em; background: url("/common/img/icon_csv.svg") no-repeat 100% 0/auto 1em; content: ""; }
.blankIcon { position: relative; padding-right: 1em; }
	.blankIcon:after { position: absolute; right: 0.1em; bottom: 0.3em; width: 0.7em; height: 0.7em; background: url("/common/img/icon_blank.svg") no-repeat 0 0/0.7em auto; content: ""; } 
.arrowIcon { position: relative; display: inline-block; padding-left: 0.8em; }
	.arrowIcon:before { position: absolute; top: 0.4em; left: 0; border-top: 4px solid transparent; border-bottom: 4px solid transparent; border-left: 6px solid #000; content: ""; }
	.arrowIcon.is-current:before { border-left: 6px solid #27bdd5; }
.anchorIcon { position: relative; display: inline-block; padding-left: 0.8em; }
	.anchorIcon:before { position: absolute; top: 0.5em; left: 0; border-top: 6px solid #000; border-right: 4px solid transparent; border-left: 4px solid transparent; content: ""; }
.pdfIcon,
.xlsIcon,
.docIcon,
.zipIcon,
.csvIcon,
.pdfIconAfter,
.xlsIconAfter,
.docIconAfter,
.zipIconAfter,
.csvIconAfter,
.arrowIcon,
.anchorIcon { text-decoration: none; }

/*-----------------------------------------------------
Button
------------------------------------------------------*/
.squareButton { position: relative; display: inline-block; padding: 0.8em 1em 0.8em 2em; border: 1px solid #ccc; }
	.squareButton:before { position: absolute; top: 1.2em; left: 1em; border-top: 4px solid transparent; border-bottom: 4px solid transparent; border-left: 6px solid #000; content: ""; }
.roundButton { position: relative; display: inline-block; padding: 0.5em 1em 0.5em 2em; border-radius: 1.5em; background: #99e3ef; }
	.roundButton:before { position: absolute; top: 0.9em; left: 1em; border-top: 4px solid transparent; border-bottom: 4px solid transparent; border-left: 6px solid #000; content: ""; }
.roundBigButton { position: relative; display: inline-block; padding: 1em 2.5em 1em 1.5em; border-radius: 5em; border: 2px solid #27bdd5; background: #F9FEFE; color: #27bdd5; }
	.roundBigButton:before { position: absolute; top: 0; bottom: 0; margin: auto; right: 1.5em; width: 0.7em; height: 0.7em; border-top: 0.1em solid #27bdd5; border-right: 0.1em solid #27bdd5; content: ""; -webkit-transform: rotate(45deg); transform: rotate(45deg); }
.squareButton,
.roundButton,
.roundBigButton { text-decoration: none; }

/*-----------------------------------------------------
Table
------------------------------------------------------*/
main table { margin: 1em 0; width: 100%; border-collapse: collapse; }
.dataTable { table-layout: fixed; }
.dataTable.fsS { font-size: 85%; }
.dataTable.half { margin: 1em 0; width: 60%; }
	.dataTable caption { margin-bottom: 0.5em; }
	.dataTable thead th { padding: 10px; border: 1px solid #ccc; background: #787878; color: #fff; text-align: center; font-weight: normal; }
	.dataTable tbody th { padding: 10px; border: 1px solid #ccc; background: #f0f0f0; text-align: left; font-weight: normal; }
	.dataTable td { padding: 10px; border: 1px solid #ccc; }
table + small * { margin-top: 0; }

/*-----------------------------------------------------
Columns
------------------------------------------------------*/
.column { display: -webkit-flex; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }
.column.space-between { -webkit-justify-content: space-between; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }
.column.align-items-center { -webkit-align-items: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
.column.sideBySide li { margin-right: 2em; }

.column.col2 li { margin-top: 10px !important; width: 49.5%; }
.column.col2 li:not(:nth-child(2n+1)) { margin-left: 1%; }

.column.col3 li { margin-top: 10px !important; width: 32.5%; }
.column.col3 li:not(:nth-child(3n+1)) { margin-left: 1.25%; }

.column.col4 li { margin-top: 10px !important; width: 24.3%; }
.column.col4 li:not(:nth-child(4n+1)) { margin-left: 0.9%; }

.column.col6 li { margin-top: 10px !important; width: 15.7%; }
.column.col6 li:not(:nth-child(6n+1)) { margin-left: 1.1%; }

/*-----------------------------------------------------
NoteBlock
------------------------------------------------------*/
.noteBlock01 { margin: 1.5em 0; padding: 40px; background: #eee; }
.noteBlock01 *:first-child { margin-top: 0; }
.noteBlock01 *:last-child { margin-bottom: 0; }

.noteBlock02 { margin: 1.5em 0; padding: 40px; border: 1px solid #5fcddf; }
.noteBlock02 *:first-child { margin-top: 0; }
.noteBlock02 *:last-child { margin-bottom: 0; }

.noteBlock03 { margin: 1.5em 0; padding: 20px; border: 1px solid #ccc; }
.noteBlock03 *:first-child { margin-top: 0; }
.noteBlock03 *:last-child { margin-bottom: 0; }

.emergencyBlock { margin: 20px auto 0; padding: 20px; width: 1200px; border: 3px solid #f00; color: #f00; }
.emergencyBlock .inner { width: 1150px; }
.emergencyBlock h1 { margin-top: 0 !important; text-align: center; font-weight: bold; }
.emergencyBlock a { color: #f00; text-decoration: underline; }
.emergencyBlock dl { margin-top: 1em; padding-top: 0.3em; border-top: 1px solid #f00; }
.emergencyBlock dt { float: left; padding-top: 0.8em; }
.emergencyBlock dd { padding: 0.8em 0 0 12em; }

.indexBlock { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; margin: 1.5em 0; padding: 0 0 40px 40px; background: #eee; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }
.indexBlock div { margin: 40px 40px 0 0; padding-bottom: 20px; width: 346px; background: #fff; }
.indexBlock h2 { display: -webkit-flex; display: -webkit-box; display: -ms-flexbox; display: flex; height: 60px; background: #27bdd5; color: #fff; text-align: center; font-weight: normal; font-size: 1.8rem; line-height: 1.2; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; }
.indexBlock ul { margin: 0 20px; }

/*-----------------------------------------------------
Form
------------------------------------------------------*/
main select { border: 1px solid #ccc; padding: 0.2em; }



/*====================================

	3. Footer

====================================*/
footer { position: relative; z-index: 1; margin-top: 33px; font-size: 1.4rem; line-height: 1.2; min-width: 1200px; }
	footer .cmnNav { padding: 40px 0 45px; background: #99e3ef; }
	footer .cmnNav__inner { position: relative; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; margin: 0 auto; width: 1200px; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; }
	footer .cmnNav__list { display: block; overflow: hidden; margin-top: 15px; }
		footer .cmnNav__list.col1 { width: 1200px; }
		footer .cmnNav__list.col2 { width: 580px; }
		footer .cmnNav__list.col2 ul { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; 	flex-wrap: wrap; }
		footer .cmnNav__list.col2 li { width: 193px; }
	footer .cmnNav__company { position: absolute; top: 0; right: 0; }
	footer .cmnNav__title { margin-bottom: 20px; padding-bottom: 12px; border-bottom: 1px solid #4c7177; font-size: 1.8rem; }
	footer .cmnNav__subtitle { margin-bottom: 9px; padding-bottom: 8px; border-bottom: 1px solid #4c7177; font-size: 1.4rem; }
	footer .cmnNav__block { float: left; width: 374px; }
		footer .cmnNav__block:not(:last-child) { margin-right: 39px; }
	footer .cmnNav ul { margin-bottom: 25px; }
	footer .cmnNav li { margin-top: 7px; font-size: 1.2rem; line-height: 1.3; }
		footer .cmnNav li a { position: relative; display: inline-block; padding-left: 10px; }
		footer .cmnNav li a:before { position: absolute; top: 4px; left: 0; margin: auto; width: 0; height: 0; border-top: 3.5px solid transparent; border-bottom: 3.5px solid transparent; border-left: 5px solid #000; content: ""; }
		footer .cmnNav li a[target=_blank]:after { position: absolute; top: 3px; margin-left: 6px; width: 8px; height: 8px; background: url("/common/img/icon_blank.svg") no-repeat 0 0/8px auto; content: ""; }
	footer .functionNav { padding: 35px 0 40px; background: #eee; text-align: center; }
	footer .functionNav ul { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; }
	footer .functionNav li { position: relative; padding: 0 20px; }
		footer .functionNav li:before { position: absolute; left: 0; width: 1px; height: 18px; background: #777; content: ""; }
		footer .functionNav li a[target=_blank]:after { position: absolute; top: 0.4em; bottom: 0; right: 0; margin-left: 0.5em; width: 0.7em; height: 0.7em; background: url("/common/img/icon_blank.svg") no-repeat 0 0/0.7em auto; }　/* 20230201追加 */
		footer .functionNav li:last-child:after { position: absolute; right: 0; width: 1px; height: 18px; background: #777; content: ""; }
	footer .functionNav p { margin-top: 30px; }


/*====================================

	4. page

====================================*/
/*-----------------------------------------------------
Top
------------------------------------------------------*/
.m-topSlide { padding: 20px 20px 40px; }

.m-topSlideItem { padding: 200px; width: 100%; height: 500px; color: #fff; text-align: center; }

.m-topSlideTitle { margin-bottom: 20px; font-size: 4.4rem; font-family: "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif"; }

.m-topSlideLink a { position: relative; display: inline-block; padding: 10px 0 10px 1em; width: 320px; border: 1px solid rgba(255, 255, 255, 0.5); border-radius: 3px; color: #fff; }
	.m-topSlideLink a:after { position: absolute; top: 0; bottom: 0; left: 40px; margin: auto; width: 7px; height: 7px; border-top: solid 1px #fff; border-right: solid 1px #fff; content: ""; text-decoration: none; -webkit-transform: rotate(45deg); transform: rotate(45deg); -ms-transform: rotate(45deg); }

.m-topNav { margin: 0 auto; padding: 0 20px 1px; width: 1200px; background: #eee; }
	.m-topNav li { margin-top: 20px; width: 275px; }
	.m-topNav a { position: relative; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; padding-top: 85px; height: 150px; border: 1px solid #5ecddf; border-radius: 5px; background: #fff; text-align: center; text-decoration: none; line-height: 1.2; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; }
	.m-topNav a:before { position: absolute; top: 17px; right: 0; left: 0; margin: auto; width: 115px; height: 75px; content: ""; }
	.m-topNav a.m-topNav__blockout:before { background: url("/common/img/icon_blackout.svg") no-repeat 50% 50%/75px auto; }
	.m-topNav a.m-topNav__electric:before { background: url("/common/img/icon_electric.svg") no-repeat 50% 50%/81px auto; }
	.m-topNav a.m-topNav__thunderbolt:before { background: url("/common/img/icon_thunderbolt.svg") no-repeat 50% 50%/35px auto; }
	.m-topNav a.m-topNav__office:before { background: url("/common/img/icon_office.svg") no-repeat 50% 50%/54px auto; }
	.m-topNav a.m-topNav__consignment:before { background: url("/common/img/icon_consignment.svg") no-repeat 50% 50%/67px auto; }
	.m-topNav a.m-topNav__renewable:before { background: url("/common/img/icon_renewable.svg") no-repeat 50% 50%/110px auto; }
	.m-topNav a.m-topNav__retailservice:before { background: url("/common/img/icon_retailservice.svg") no-repeat 50% 50%/69px auto; }
	.m-topNav a.m-topNav__limit:before { background: url("/common/img/icon_limit.svg") no-repeat 50% 50%/92px auto; }

.m-news { margin: 40px auto 0; width: 1200px; }
	.m-news .column > div { position: relative; width: 580px; }
	.m-news .m-moreInfo { position: absolute; top: 36px; right: 0; font-size: 1.4rem; line-height: 1; }
	.m-news__rss { position: relative; display: inline-block; margin-right: 0.5em; padding: 0.5em 1em 0.5em 2em; border-radius: 1.5em; background: #99e3ef; text-decoration: none; }
	.m-news__rss:before { position: absolute; top: 0.6em; left: 0.7em; width: 12px; height: 12px; background: url("/common/img/icon_rss.svg") no-repeat 0 0/12px auto; content: ""; }
	.m-news__all { position: relative; display: inline-block; padding: 0.5em 1em 0.5em 2em; border-radius: 1.5em; background: #99e3ef; text-decoration: none; }
	.m-news__all:before { position: absolute; top: 0.7em; left: 1em; border-top: 4px solid transparent; border-bottom: 4px solid transparent; border-left: 6px solid #000; content: ""; }

.m-newsList dt { float: left; padding-top: 15px; }
.m-newsList dd { padding: 15px 0 15px 160px; border-bottom: 1px solid #ddd; }

.m-topBn { margin: 50px auto 0; width: 1200px; }
	.m-topBn li { margin-bottom: 20px; width: 285px; padding: 0 20px; height: 70px; display: -webkit-flex; display: flex; -webkit-align-items: center; align-items: center; }

/*------------------------------------------------------------
for develop
------------------------------------------------------------*/
#__bs_notify__ { padding: 0 5px 0 5px !important; border-radius: 0 !important; font-size: 5px !important; line-height: 100% !important; opacity: 0.3 !important; }
