@charset "UTF-8";

@import url("https://fonts.googleapis.com/css?family=Noto+Sans+JP&display=swap&subset=japanese");

/* ヘッダ・フッタ・ナビ・パンクズ */
@import url("layout.css");

.c_sec {
	margin-top: 70px;
}

.c_sec:first-child {
	margin-top: 0;
}

.c_ttl {
	display: flex;
	align-items: center;
	min-height: 80px;
	margin-bottom: 24px;
	padding: 20px 40px;
	border-radius: 5px;
	background: linear-gradient(to right, #428300,#a0c146);
	color: #ffffff;
	font-weight: bold;
	font-size: 24px;
	line-height: 1.5;
}

.c_info {
	margin-top: 70px;
}

.c_info:first-child {
	margin-top: 0;
}

.c_info_hd {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 15px;
}

.c_info_hd_ttl {
	font-weight: bold;
	font-size: 24px;
}

.c_info_hd_ttl small {
	font-size: 18px;
}

.c_info_hd_update {
	font-size: 14px;
}

.c_info_hd_link {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	gap: 10px;
	width: 210px;
	height: 40px;
	margin-left: auto;
	border-radius: 10px;
	background: #f7f7f7;
	transition: background 0.2s;
}

.c_info_hd_link:hover {
	background: #ece5cc;
}

.c_info_hd_link::after {
	content: "";
	display: block;
	width: 12px;
	height: 12px;
	background-image: url("/media/home_2402/icon-link.svg");
	background-repeat: no-repeat;
}

.c_info_list {
	display: grid;
	gap: 5px;
	position: relative;
	z-index: 10;
	margin-top: 10px;
}

.c_info_post {
}

.c_info_post_wrap {
	display: flex;
	align-items: center;
	gap: 20px;
	padding: 15px 20px;
	border-radius: 5px;
	background: #f7f7f7;
	transition: background 0.2s;
}

.c_info_post_wrap:hover {
	background: #f2eddb;
}

.c_info_post_wrap::after {
	content: "";
	display: block;
	flex-shrink: 0;
	width: 20px;
	height: 20px;
	margin-left: auto;
	background: #002c83;

	mask-image: url("/media/home_2402/icon-link.svg");
	mask-size: 100% 100%;
}

.c_info_post_date {
}

.c_info_post_ttl {
	font-weight: bold;
}

.c_info_post.-danger .c_info_post_ttl {
	color: #d90000;
}

.c_info_post.-warning .c_info_post_ttl {
	color: #f2804e;
}

.c_info_post.-success .c_info_post_ttl {
	color: #1f9b15;
}

.c_info_ft {
	display: none;
}

.pageWrapper {
}

/* コンテンツ */
.pageBody {
	position: relative;
	z-index: 1;
	min-height: 492px;
	overflow: hidden;
}

.is-txtLarge .pageBody {
	font-size: 16px;
}

.pageBody-marginMiddle {
	margin: 30px 0;
}

.pageBody-bgFull {
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
}

/* サイドバー */
.sideBar {
	position: fixed;
	top: 130px;
	right: 0;
	z-index: 1000;
}

.sideBar_list {
	list-style: none;
}

.sideBar_list_item {
	position: absolute;
	top: 0;
	right: 0;
	z-index: 1;
	border-top-left-radius: 5px;
	border-bottom-left-radius: 5px;
	box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.3);
	        transition: right 0.4s;

	-webkit-transition: right 0.4s;
}

.sideBar_list_item a {
	color: #ffffff;
}

.sideBar_list_item-search {
	right: -298px;
	width: 340px;
	padding: 6px 0;
	border-top-left-radius: 5px;
	border-bottom-left-radius: 5px;
	background: #999999;
	background-image:    -moz-linear-gradient(44% 0% -90deg, rgb(170, 170, 170) 0%, rgb(137, 137, 137) 100%);
	background-image: -webkit-gradient(linear, 44% 0%, 44% 117%, color-stop(0, rgb(170, 170, 170)), color-stop(1, rgb(137, 137, 137)));
	background-image: -webkit-linear-gradient(-90deg, rgb(170, 170, 170) 0%, rgb(137, 137, 137) 100%);
	background-image:         linear-gradient(180deg, rgb(170, 170, 170) 0%, rgb(137, 137, 137) 100%);
	color: #ffffff;
	line-height: 1;
	text-decoration: none;
}

.sideBar_list_item-search:hover {
	right: -288px;
}

.sideBar_list_item-search.is-show {
	right: 0;
}

.sideBar_showSearchLink {
	display: inline-block;
	width: 18px;
	padding: 0 10px;
	font-size: 18px;
	line-height: 32px;
	vertical-align: middle;
}

.sideBar_searchForm {
	display: inline-block;
	vertical-align: middle;
}

.sideBar_searchForm > input[name="q"] {
	background-image: none !important;
}

.sideBar_searchInput {
	width: 190px;
	padding: 3px 5px;
	vertical-align: middle;
}

.sideBar_searchButton {
	margin: 0 0 0 7px;
	padding: 0 13px;
	border: none;
	border-radius: 3px;
	background: #f2f2f2;
	color: #666666;
	line-height: 30px;
	vertical-align: middle;
	        transition: background-color 0.3s;

	-webkit-transition: background-color 0.3s;
}

.sideBar_searchButton:hover {
	background: #dddddd;
}

.sideBar_hideSearchLink {
	display: inline-block;
	padding: 0 11px 0 8px;
	font-size: 15px;
	line-height: 32px;
	vertical-align: middle;
}

.sideBar_hideSearchLink:hover {
	color: #444444;
}

.sideBar_list_item-reserve {
	top: 55px;
	right: -10px;
}

.sideBar_list_item-reserve:hover {
	right: 0;
}

.sideBar_list_item-reserve a {
	display: block;
	width: 37px;
	padding-top: 15px;
	padding-right: 15px;
	padding-bottom: 15px;
	border-top-left-radius: 5px;
	border-bottom-left-radius: 5px;
	background: #e2271e;
	background-image:    -moz-linear-gradient(50% 0% -90deg, rgb(228, 72, 73) 0%, rgb(222, 38, 38) 100%);
	background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0, rgb(228, 72, 73)), color-stop(1, rgb(222, 38, 38)));
	background-image: -webkit-linear-gradient(-90deg, rgb(228, 72, 73) 0%, rgb(222, 38, 38) 100%);
	background-image:         linear-gradient(180deg, rgb(228, 72, 73) 0%, rgb(222, 38, 38) 100%);
	color: #ffffff;
	font-weight: bold;
	font-size: 16px;
	line-height: 1.1;
	text-decoration: none;
	text-align: center;
}

.sideBar_list_item-bus {
	top: 290px;
	right: -10px;    /*top: 426px;*/
}

.sideBar_list_item-bus:hover {
	right: 0;
}

.sideBar_list_item-bus a {
	display: block;
	width: 37px;
	padding-top: 15px;
	padding-right: 15px;
	padding-bottom: 15px;
	border-top-left-radius: 5px;
	border-bottom-left-radius: 5px;
	background: #00abea;
	color: #ffffff;
	font-weight: bold;
	font-size: 16px;
	line-height: 1.1;
	text-decoration: none;
	text-align: center;
}

.sideBar_list_item-jr {
	top: 180px;
	right: -10px;    /*top: 198px;*/
}

.sideBar_list_item-jr:hover {
	right: 0;
}

.sideBar_list_item-jr a {
	display: block;
	width: 37px;
	padding-top: 15px;
	padding-right: 15px;
	padding-bottom: 15px;
	border-top-left-radius: 5px;
	border-bottom-left-radius: 5px;
	background: #0ab875;
	color: #ffffff;
	font-weight: bold;
	font-size: 16px;
	line-height: 1.1;
	text-decoration: none;
	text-align: center;
}

/* ワードプレスの管理エリア */
.areaWpAdmin {
	display: none;
	padding: 20px;
	background-color: #020202;
}

.areaWpAdmin a {
	color: #ffffff;
	font-weight: bold;
}

/* 断面図 */
.crossSection {
	position: relative;
	z-index: 1;
}

.crossSection_header {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	width: 100%;
}

.crossSection_footer {
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 1;
	width: 100%;
}

.crossSection_height {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 3;
	width: 100%;
}

.crossSection_body img {
	display: block;
}

.crossSection_list {
	list-style: none;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 4;
	width: 100%;
	height: 100%;
}

.crossSection_item {
	position: absolute;
	z-index: 1;
	width: 1.515%;
}

.crossSection_item-no01 {
	top: 40%;
	left: 1.7%;
}

.crossSection_item-no02 {
	top: 52%;
	left: 7%;
}

.crossSection_item-no03 {
	top: 48%;
	left: 12%;
}

.crossSection_item-no04 {
	top: 42%;
	left: 15%;
}

.crossSection_item-no05 {
	top: 37%;
	left: 21.5%;
}

.crossSection_item-no06 {
	top: 32%;
	left: 32%;
}

.crossSection_item-no07 {
	top: 30%;
	left: 36%;
}

.crossSection_item-no08 {
	top: 22%;
	left: 41%;
}

.crossSection_item-no09 {
	top: 16%;
	left: 43.4%;
}

.crossSection_item-no10 {
	top: 31%;
	left: 49.7%;
}

.crossSection_item-no11 {
	top: 34%;
	left: 56.5%;
}

.crossSection_item-no12 {
	top: 43%;
	left: 61.4%;
}

.crossSection_item-no13 {
	top: 37.5%;
	left: 65%;
}

.crossSection_item-no14 {
	top: 24%;
	left: 73%;
}

.crossSection_item-no15 {
	top: 41%;
	left: 79%;
}

.crossSection_item-no16 {
	top: 38%;
	left: 84.9%;
}

.crossSection_item-no17 {
	top: 45%;
	left: 91.5%;
}

.crossSection_item-no18 {
	top: 47%;
	left: 95%;
}

.crossSection_item-no19 {
	top: 51%;
	left: 98%;
}

.crossSection_item a {
	display: block;
	        transform-origin: center bottom;
	        transition:         transform 0.3s;

	-webkit-transition: -webkit-transform 0.3s;
	-webkit-transform-origin: center bottom;
}

.crossSection_item a:hover {
	        transform: scale(1.5);

	-webkit-transform: scale(1.5);
}

.crossSection_road {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	width: 100%;
	height: 100%;
}

.comingSoon {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1000;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.6);
}

.is-debug .comingSoon {
	display: none !important;
}

.is-ltIE8 .comingSoon {
	background: url(../img/bg-black-alpha50.png) repeat;
}

.comingSoon_text {
	padding: 10px 0 0;
	color: #ffffff;
	font-size: 28px;
	text-align: center;
}

.comingSoon_text .icon {
	margin: 0 10px 0 0;
}

/* タブレット以下設定 */
@media screen and (max-width:999px) {
	.pageBody {
		/*padding-top: 134px;*/
	}

	.pageHeader,
	.gnav {
		display: block;
	}

	.pageWrapper {
		/*overflow: hidden;*/
	}

	.wrapper {
	}

	.pageBody-fitImage img {
		max-width: 100%;
		height: auto;
	}

	/* サイドバー */
	.sideBar {
		top: 143px;
	}
}

@media screen and (max-width:639px) {
	.c_sec {
		margin-top: 40px;
	}

	.c_sec:first-child {
		margin-top: 0;
	}

	.c_ttl {
		display: flex;
		min-height: 50px;
		margin-bottom: 18px;
		padding: 10px 20px;
		font-size: 18px;
	}

	.c_info {
		margin-top: 40px;
	}

	.c_info_hd .c_info_hd_link {
		display: none;
	}

	.c_info_hd_ttl {
		font-size: 18px;
	}

	.c_info_hd_ttl small {
		font-size: 14px;
	}

	.c_info_list {
	}

	.c_info_post {
	}

	.c_info_post_wrap {
		display: block;
		position: relative;
		padding-right: 40px;
		padding-left: 15px;
	}

	.c_info_post_wrap:hover {
	}

	.c_info_post_wrap::after {
		position: absolute;
		top: 50%;
		right: 10px;
		margin-top: -10px;
	}

	.c_info_post_date {
		font-size: 12px;
	}

	.c_info_post_ttl {
		line-height: 1.5;
	}

	.c_info_post.-danger .c_info_post_ttl {
	}

	.c_info_post.-warning .c_info_post_ttl {
	}

	.c_info_post.-success .c_info_post_ttl {
	}

	.c_info_ft {
		display: block;
		margin-top: 25px;
		text-align: center;
	}

	/* コンテンツ */
	.pageBody {
		min-height: 150px;
	}

	.sideBar {
		position: static;
	}

	.sideBar-header {
		display: none;
	}

	.sideBar_list_item {
		position: static;
		width: 100%;
		border-radius: 0;
		        box-sizing: border-box;
		box-shadow: none;

		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
	}

	.sideBar_list_item-search {
		background: #9c9c9c;
		text-align: center;
	}

	.sideBar_searchInput {
		border: none !important;
		background-size: 150px auto !important;
	}

	.sideBar_hideSearchLink {
		display: none;
	}

	.sideBar_list_item-reserve a {
		position: relative;
		z-index: 1;
		width: 100%;
		padding: 0;
		border-radius: 0;
		        box-sizing: border-box;
		font-size: 13px;
		line-height: 44px;

		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
	}

	.sideBar_list_item-reserve a .icon {
		margin: 0 0 0 4px;
		font-size: 90%;
	}

	.sideBar_list_item-reserve a:after {
		content: "";
		display: block;
		position: absolute;
		top: 50%;
		right: 3%;
		z-index: 1;
		width: 6px;
		height: 6px;
		margin-top: -4px;
		border: 2px solid #ffffff;
		border-bottom: none;
		border-left: none;
		        transform: rotate(45deg);

		-webkit-transform: rotate(45deg);
	}

	.sideBar_list_item-reserve a br {
		display: none;
	}

	.sideBar_list_item-jr a {
		position: relative;
		z-index: 1;
		width: 100%;
		padding: 0;
		border-radius: 0;
		        box-sizing: border-box;
		font-size: 13px;
		line-height: 44px;

		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
	}

	.sideBar_list_item-jr a .icon {
		margin: 0 0 0 4px;
		font-size: 90%;
	}

	.sideBar_list_item-jr a:after {
		content: "";
		display: block;
		position: absolute;
		top: 50%;
		right: 3%;
		z-index: 1;
		width: 6px;
		height: 6px;
		margin-top: -4px;
		border: 2px solid #ffffff;
		border-bottom: none;
		border-left: none;
		        transform: rotate(45deg);

		-webkit-transform: rotate(45deg);
	}

	.sideBar_list_item-bus a {
		position: relative;
		z-index: 1;
		width: 100%;
		padding: 0;
		border-radius: 0;
		        box-sizing: border-box;
		font-size: 13px;
		line-height: 44px;

		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
	}

	.sideBar_list_item-bus a .icon {
		margin: 0 0 0 4px;
		font-size: 90%;
	}

	.sideBar_list_item-bus a:after {
		content: "";
		display: block;
		position: absolute;
		top: 50%;
		right: 3%;
		z-index: 1;
		width: 6px;
		height: 6px;
		margin-top: -4px;
		border: 2px solid #ffffff;
		border-bottom: none;
		border-left: none;
		        transform: rotate(45deg);

		-webkit-transform: rotate(45deg);
	}
}

@media print {
	.sideBar {
		display: none;
	}
}
