@charset "utf-8";

#main #topinfo {
	margin: 10px 0;
	padding: 0;
}

#main #topinfo ul {}

#main #topinfo>ul>li {
	display: inline-block;
	height: 250px;
	vertical-align: top;
	float: left;
	/* 2018/8/8 追加 */
	margin-left: 10px;
}

/* 2018/8/8 追加 */
#main #topinfo>ul>li.bnr_s {
	height: 125px;
	margin-left: 5px;
}

#main #topinfo>ul>li:first-child {
	width: 460px;
}

/*フラッシュ使用時OPEN*/

#main #topinfo>ul>li.wide {
	width: 467px;
}


/*
#main #topinfo > ul > li:not(:first-child) {
	width: 230px;
}
*/
/*
#main #topinfo > ul > li:last-child {
	background: url(../img/btn_event_160908_09_bg.gif);
}

#main #topinfo > ul > li > ul {
	margin-top: 8.3em;
}

#main #topinfo > ul > li  li {
	margin: 0 auto 5.95em;
}
*/


#main #topinfo p {
	float: left;
	padding-left: 7px;
}

#news {
	margin-top: 10px;
}

#news dt,
.past_news dt {
	font-weight: bold;
	background-image: url("../img/dot-botan.gif");
	background-repeat: no-repeat;
	background-position: 0 3px;
	padding-left: 15px;
	margin-bottom: 5px;
}

#news dd,
.past_news dd {
	border-bottom: 1px dashed #BBB;
	margin-bottom: 10px;
	padding-bottom: 5px;
	margin-left: 16px;
}

#main #content {
	width: 730px;
	float: left;
	padding-left: 10px;
}

#main #blog_body {
	max-width: 90%;
	width: 100%;
	margin: 0 auto;
}

#main #blog_body h1 {
	font-size: 1.8em;
	margin: 1em 0 1.5em;
	font-weight: 600;
	color: rgb(15, 160, 204);
	padding: 15px 0;
	-webkit-box-shadow: 0px 4px 3px -3px rgb(0 0 0 / 30%);
}

#main #blog_body h2 {
	font-size: 1.4em;
	line-height: 1.2em;
	margin: 0.5em 0 1.5em;
	font-weight: 600;
	color: rgb(15, 160, 204);
	padding: 5px 0 10px;
	-webkit-box-shadow: 0px 4px 3px -3px rgb(0 0 0 / 30%);
}

.blog_text .blog_time {
	font-size: 1em;
	font-weight: 600;
}

.blog_inline {
	display: inline-block;
	width: 48%;
	vertical-align: top;
}

.blog_float {
	float: right;
	width: 175px;
	padding: 0 0 10px 10px;
}

.blog_float_2 {
	float: right;
	padding: 0 0 10px 10px;
	width: 250px;
}

.blog_float_left {
	float: left;
	padding: 0 10px 5px 0;
}

.blog_float img {
	padding: 5px;
}

.mt5 {
	margin-top: 5px;
}

.mt0 {
	margin-top: 0 !important;
}

.mt10 {
	margin-top: 10px !important;
}

.mt20 {
	margin-top: 20px !important;
}

.mt30 {
	margin-top: 30px !important;
}

.mt40 {
	margin-top: 40px !important;
}

.mb0 {
	margin-bottom: 0 !important;
}

.mb10 {
	margin-bottom: 10px !important;
}

.mb20 {
	margin-bottom: 20px !important;
}

.mb30 {
	margin-bottom: 30px !important;
}

.mb40 {
	margin-bottom: 40px !important;
}

.ml10 {
	margin-left: 10px !important;
}

.ml20 {
	margin-left: 20px !important;
}

.ml30 {
	margin-left: 30px !important;
}

.mr10 {
	margin-right: 10px !important;
}

.mr20 {
	margin-right: 20px !important;
}

.mr30 {
	margin-right: 30px !important;
}

.block {
	display: block;
}

.blog_inline img {
	width: 100%;
	padding: 0 5px;
}

.blog_inline a {
	border-bottom: 1px solid #093;
}

.blog_text {
	margin: 50px 0 100px;
}

.blog_text h3 {
	margin-top: 30px;
	margin-bottom: 5px;
	font-size: 1.2em;
	font-weight: 600;
}

#main #sidebanner {
	width: 200px;
	float: right;
	padding-right: 10px;
}


#up-date {
	/* height: 650px; */
	height: 450px;
	overflow-y: scroll;
}

#up-date2 {
	height: 500px;
	overflow-y: scroll;
}

.img_01 {
	overflow: hidden;
}

ul.bnr {
	margin: 0;
	padding: 0;
}

ul.bnr li {
	margin: 0;
	padding: 0;
}

.flex {
	display: flex;
	align-items: flex-start;
}

.bold {
	font-weight: bold;
	font-size: 1.1em;
}

#blog_050 img {
	margin: 0 0 10px 10px;
	display: inline-block;
}

.annotation {
	margin-top: 10px;
	display: block;
}

.blog_text .flex {
	margin-bottom: 30px;
}

.blog_text .blogcaption {
	margin-bottom: 0;
	margin-left: 10px;
}

#blog_050 .subtitle {
	color: #008299;
	margin-bottom: 5px;
}

.flex.rowr {
	flex-direction: row-reverse;
}

#blog_050 .flex.rowr img {
	margin: 0 10px 10px 0;
	display: inline-block;
}

.annotation {
	color: #00adcc;
}

.annotation-sup {
	color: #00adcc;
}

.grbox {
	padding: 0 10px;
	border: 1px solid #093;
	border-radius: 10px;
}

.indent_cont {
	display: table;
	width: 100%;
}

.indent_cont .indent_head {
	display: table-cell;
	vertical-align: top;
	white-space: nowrap;
	padding-right: 3px;
}

.indent_cont .indent_body {
	display: table-cell;
	vertical-align: top;
}

.green_box.indent_cont {
	border: 2px solid #093;
	border-radius: 15px;
	display: inline-block;
	padding: 20px;
	max-width: 604px;
	box-sizing: border-box;
	margin-bottom: 20px;
}

.green_boxn .indent_head,
.green_box .indent_body {
	font-weight: bold;
	font-size: 1.2em;
	margin-bottom: 10px;
	line-height: 1.5;
}

.green_box .indent_list {
	margin-bottom: 10px;
}

.grbox.grbox2 {
	padding: 20px 10px !important;
}

.minimoji {
	font-size: 0.9em !important;
}

@media screen and (max-width: 768px) {
	#topinfo ul {
		display: flex;
		flex-wrap: wrap;
		overflow: hidden;
	}

	#navi {
		display: none;
	}

	#main #topinfo>ul>li:first-child {
		width: calc(100vw - 20px);
	}

	#main #topinfo ul .bnr_topfv_contents {
		height: 210px !important;
	}

	#main #topinfo ul .slide_topfv_contents {
		height: 350px !important;
	}

	#main #topinfo ul li img {
		width: 100%;
	}

	#contents #oshirase img {
		display: block;
		width: 100%;
		width: calc(100% - 20px);
	}

	#main #topinfo ul li:nth-of-type(n+2) {
		width: calc(50vw - 15px);
	}

	#main #content {
		width: 100vw;
		box-sizing: border-box;
		float: none;
	}

	#main #sidebanner {
		float: none;
		width: 100%;
		box-sizing: border-box;
		padding: 0 10px;
		margin-top: 20px;
	}

	#main #sidebanner ul {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}

	#main #sidebanner li {
		width: 45%;
	}

	#main #sidebanner li img {
		display: block;
		width: 100%;
	}

	#up-date {
		height: 270px;
	}

}

/* 固定メニュー */

.mob_menu {
	display: none;
}

@media screen and (max-width: 768px) {
	/* .mob_menu {
		display: block;
		z-index: 1000;
		position: relative;
		padding: 5px 0;
		background-color: #1090c7;
	} */


	.mob_menu {
		display: block;
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		z-index: 1000;
		height: 46px;
		padding: 5px 0;
		background-color: #1090c7;
	}

	.overlay {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		/* 半透明の黒 */
		display: none;
		/* 初期状態では非表示 */
		z-index: 9997;
	}

	.header__navigation strong {
		font-weight: bold;
	}

	.header__navigation a span {
		font-size: 16px;
		margin-top: 10px;
		display: block;
	}



	.header__navigation.active .overlay {
		display: block;
		/* メニューが開いたときに表示 */
	}

	.menu__hamburger {
		cursor: pointer;
		width: 30px;
		margin: 10px 20px;
		transition: transform 0.3s;
		/* アニメーションを追加 */
	}

	.bar {
		display: block;
		width: 100%;
		height: 4px;
		background-color: #fff;
		margin: 4px 0;
		transition: all 0.3s;
		/* アニメーションを追加 */
	}

	.header__navigation {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-color: #29a7e1;
		display: none;
		justify-content: center;
		align-items: center;
	}

	.header__navigation.active {
		display: flex;
	}

	.header__navigation ul {
		list-style: none;
		padding: 0;
		text-align: center;
		position: inherit;
		z-index: 9998;
	}

	.header__navigation li {
		margin: 30px 0;
	}

	.header__navigation a {
		color: #fff;
		text-decoration: none;
		font-size: 24px;
	}


	.menu__hamburger {
		display: block;
		position: inherit;
		z-index: 9999;
	}

	.menu__hamburger.active .bar {
		background-color: #fff;
	}

	.menu__hamburger.active .bar:nth-child(1) {
		transform: rotate(45deg) translate(5px, 6px);
	}

	.menu__hamburger.active .bar:nth-child(2) {
		opacity: 0;
	}

	.menu__hamburger.active .bar:nth-child(3) {
		transform: rotate(-45deg) translate(5px, -6px);
	}

	/* あなたの設備協会 */

	#blog_body img {
		display: inline-block;
		max-width: 100%;
	}

	#blog_body .flex {
		flex-direction: column;
	}

	#up-date2 {
		height: 190px;
	}

}


@media screen and (max-width: 428px) {
	#main #topinfo ul .slide_topfv_contents {
		height: 240px !important;
	}
}

@media screen and (max-width: 400px) {
	#main #topinfo ul .slide_topfv_contents {
		height: 210px !important;
	}
}

.blog_img_flex {
	display: flex;
	justify-content: space-between;
}

.blog_img_flex div {
	width: 45%;
}

.blog_img_flex div img {
	display: block;
	width: 100%;
}

@media screen and (max-width: 768px) {
	#blog_057 .flex .ml20 {
		margin-left: 0 !important;
	}

	.blog_img_flex,
	#blog_057 .flex {
		flex-direction: column;
		align-items: center;
	}

	.blog_img_flex div {
		width: 250px;
		margin-top: 10px;
	}

}

b.mb10 {
	display: inline-block;
}


/*ベース*/
.toggle {
	display: none;
}

.Label {
	/*タイトル*/
	padding: 1em;
	display: block;
	color: #fff;
	background: #484a70;
	cursor: pointer;
}

.Label::before {
	/*タイトル横の矢印*/
	content: "";
	width: 6px;
	height: 6px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	position: absolute;
	top: calc(50% - 3px);
	right: 20px;
	transform: rotate(135deg);
}

.Label,
.content {
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	transform: translateZ(0);
	transition: all 0.3s;
}

.content {
	/*本文*/
	height: 0;
	margin-bottom: 10px;
	padding: 0;
	overflow: hidden;
}

.toggle:checked+.Label+.content {
	/*開閉時*/
	height: auto;
	padding: 0 0 10px;
	transition: all .3s;
}

.toggle:checked+.Label::before {
	transform: rotate(-45deg) !important;
}

.up-date_past {
	height: 300px;
	overflow-y: scroll;
}

.accordion {
	margin-top: 30px;
}

.past_news {
	margin-top: 10px;
}