   @charset "utf-8";

/*  tech_main.css　customize
----------------------------------------------------------
---------------------------------------------------------- */

/*  Heading
---------------------------------------------------------- */



/*---------------------------------------------------------- */
/*  個別custumize
---------------------------------------------------------- */
/*  title_s
---------------------------------------------------------- */
/* background変更 */
#main.tech_body .title_s {
  background: #76a32d;
}
#main.tech_body .title_s a.index_link {
  background: #76a32d;
}

#main.tech_body .title_s a.index_link .title_area .title {
	top: 13px;
}

#main.tech_body .title_s a.index_link .title_area .ctg {
	position: absolute;
	top: 22px;
    left: 245px;
	/* font-size: 16px;
	font-size: 1rem; */
	font-size: 17px;
	font-size: 1.0625rem;
	letter-spacing: 0.01em;
}
#main.tech_body .title_s a.index_link .title_area .ctg span.point{
	color: #bad196;
	margin: 0 4px;
}
/* #main.tech_body .title_s a.index_link .title_area .ctg span.sub{
	font-weight: normal;
} */


/* h2をh1へ変更 */
#main.tech_body .tech_title h1 {
	position: relative;
	font-size: 1.875rem;
	color: #363434;
	font-weight: bold;
	line-height: 1.5;
	text-align: center;
	letter-spacing: 0.1em;
	padding: 25px 0 5px 0;
}
#main.tech_body .tech_title h1:after {
	position: absolute;
	content: "";
	left: 50%;
	transform: translate(-50%, 0);
	bottom: -5px;
	border-bottom: 3px solid #73a32d;
	width: 75px;
}
#main.tech_body .tech_title h1.first {
	margin-top: 0px !important;
	border: none;
}
  #main.tech_body .tech_title h1.subtxt {
	font-size: 0.78125rem;
	font-weight: normal;
}
#main.tech_body .h1_lead {
	font-size: 1.5rem;
	text-align: center;
	padding: 18px 100px 35px;
  color: #619318;
	line-height: 1.5;
	width: 960px;
	margin: 0 auto;
}

/* p.h2_leadをh2.h2_leadへ変更 */
#main.tech_body h2.h2_lead {
    /* font-size: 1.5rem;
    text-align: center;
    padding: 18px 100px 35px; */
    color: #619318;
    /* line-height: 1.5;
    width: 960px;
    margin: 0 auto; */
	font-weight: normal;
}

/* 放射性廃棄物処分用に再記述 */
/* #rwd_snav
---------------------------------------------------------- */
#rwd_snav.snav_icon {
	position: relative;
	width: 1160px;
	margin: 0 auto;
	top: -49px;
}
#rwd_snav.snav_icon .snav_trigger {
	position: absolute;
	top: 7px;
	left: 1125px;
	width: 35px;
	height: 35px;
	overflow: hidden;
	float: right;
	background: #fff;
	border-radius: 2px;
	z-index: 100;
}
#rwd_snav.snav_icon .snav_trigger span {
	position: absolute;
	left: 20%;
	height: 2px;
	width: 60%;
	background: #cc0000;
}
#rwd_snav.snav_icon .snav_trigger span:nth-of-type(1) {
	top: 10px;
}
#rwd_snav.snav_icon .snav_trigger span:nth-of-type(2) {
	top: 16px;
}
#rwd_snav.snav_icon .snav_trigger span:nth-of-type(3) {
	top: 22px;
}
#rwd_snav.snav_icon .snav_trigger.active span:nth-of-type(1) {
	-webkit-transform: translateY(7px) rotate(-45deg);
	transform: translateY(7px) rotate(-45deg);
}
#rwd_snav.snav_icon .snav_trigger.active span:nth-of-type(2) {
	left: 50%;
	opacity: 0;
	-webkit-animation: active-menu-bar .1s forwards;
	animation: active-menu-bar .1s forwards;
}
#rwd_snav.snav_icon .snav_trigger.active span:nth-of-type(3) {
	-webkit-transform: translateY(-5px) rotate(45deg);
	transform: translateY(-5px) rotate(45deg);
}
@-webkit-keyframes active-menu-bar {
	100% {
	height: 0;
	}
}
@keyframes active-menu-bar {
	100% {
	height: 0;
	}
}
#rwd_snav.snav_icon .snav_content {
	position: relative;
	top: 49px;
	left: -1000px;
	width: 3160px;
	color: #494848;
	background: #f6f2ed;
	z-index: 30;
	height: 464px; /* メニュー背景高さ */
	box-shadow: 0 10px 10px -5px rgba(0, 0, 0, 0.3);
	display: none;
	opacity: 0;
	animation: snav_slideOut .4s ease forwards;
	transform-origin: right top;
}
@keyframes snav_slideOut {
	0% {
	  opacity: 1;
	  transform: scaleY(1) translateY(0);
	}
	60% {
		opacity: 0;
	}
	100% {
		opacity: 0;
		transform: scaleY(0) translateY(0);
	}
}

#rwd_snav.snav_icon .snav_content.onanimation {
	/* display: block; */
	opacity: 1;
	animation: snav_slideIn .4s ease forwards;
	transform-origin: right top;
}
@keyframes snav_slideIn {
	0% {
	  opacity: 0;
	  transform: scaleY(0) translateY(0);
	}
	30% {
		opacity: 1;
	}
	100% {
	  opacity: 1;
	  transform: scaleY(1) translateY(0);
	}
}

#rwd_snav.snav_icon .snav_content .snav_accordion {
	position: relative;
	padding: 0;
	border-top: none;
	outline: 0;
	/* cursor: pointer; */
	width: 1160px;
	left: 1000px;
}

/* 区分け */
.menu01,
.menu02,
.menu03,
.menu04{
	position: static;
	padding: 0;
    background: none;
	border-radius: 5px;
	box-sizing: border-box;
	width: auto;
	height: auto; /* メニュー高さ */
}
.menu01{
	padding-top: 20px;
}
/* 区分け ここまで */

/* 左メニュー */
#main.tech_body #rwd_snav.snav_icon .snav_content .snav_accordion h2.snav_ctg {
	position: relative;
	font-size: 16px;
	color: #363434;
	width: 265px;
	margin: 0 20px 0 0;
	text-align: left;
    font-weight: bold;
	line-height: 1;
    letter-spacing: 0.05em;
	box-sizing: border-box;
	padding: 17px;
	border-bottom: dotted 1px #76a32d;
}
#main.tech_body #rwd_snav.snav_icon .snav_content .snav_accordion h2.snav_ctg:hover,
#main.tech_body #rwd_snav.snav_icon .snav_content .snav_accordion h2.snav_ctg.current {
	color: #fff;
	background: #76a32d;
	border-radius: 5px;
}
#main.tech_body #rwd_snav.snav_icon .snav_content .snav_accordion .menu01 h2.snav_ctg {
	border-top: dotted 1px #76a32d;
}
.noborder {
  border-bottom: dotted 1px #f6f2ed !important;
}
#main.tech_body #rwd_snav.snav_icon .snav_content .snav_accordion h2.snav_ctg:after{
	position: absolute;
	margin: auto;
	content: "";
	vertical-align: middle;
	top: 19px;
	right: 30px;
	width: 9px;
	height: 9px;
	border-top: 2px solid #76a32d;
	border-right: 2px solid #76a32d;
	transform: rotate(45deg);
	transition: .5s;
}
#main.tech_body #rwd_snav.snav_icon .snav_content .snav_accordion h2.snav_ctg:hover:after,
#main.tech_body #rwd_snav.snav_icon .snav_content .snav_accordion h2.snav_ctg.current:after{
	transition: .5s;
	right: 15px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}
/* 左メニュー ここまで */

/* 右メニュー */
.menu_content{
	display: none;
	position: absolute;
	left: 280px;
	top: 20px;
	width: 875px;
	height: 420px;
	padding: 20px 30px;
    background: #fff;
	border-radius: 5px;
	box-sizing: border-box;
}
.menu_content.current{
	display: block;
}
.menu_content .left{
	position: absolute;
	left: 30px;
	width: 395px;
}
.menu_content .right{
	position: absolute;
	left: 450px;
	width: 395px;
}

.menu_content .all{
	position: absolute;
	left: 30px;
	top: 235px;
	width: 820px;
}

#main.tech_body #rwd_snav.snav_icon .snav_content .snav_accordion .menu_content h2{
	font-size: 24px;
	color: #76a32d;
	margin: 0;
	line-height: 1;
    padding-bottom: 10px;
    margin-bottom: 15px;
	border-bottom: dotted 1px #76a32d;
}

#main.tech_body #rwd_snav.snav_icon .snav_content .snav_accordion .menu_content h3.snav_title_heading {
    font-size: 16px;
    color: #76a32d;
    margin: 0;
    line-height: 1;
	padding: 0;
    margin-bottom: 15px;
	letter-spacing: 0.05em;
}

#rwd_snav.snav_icon .snav_content .snav_accordion .snav_title {
	position: relative;
	font-size: 15px;
	font-size: 0.9375rem;
	font-weight: bold;
	color: #363434;
	line-height: 1.2;
	position: relative;
	display: block;
	padding: 0;
	margin: 0 0 6px 0;
	padding: 0 0 0 17px;
	letter-spacing: 0.02em;
}

#rwd_snav.snav_icon .snav_content .snav_accordion .snav_title:before {
	content: "";
	position: absolute;
	background: #76a32d;
	top: 2px;
    left: 0;
    height: 12px;
    width: 12px;
	border-radius: 1px;
} 

#rwd_snav.snav_icon .snav_content ul {
	margin-bottom: 15px;
	padding-left: 17px;
}
#rwd_snav.snav_icon .snav_content ul li {
	position: relative;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 1.5;
	text-align: left;
	margin-bottom: 5px;
	text-indent: -14px;
    padding-left: 14px;
}
#rwd_snav.snav_icon .snav_content ul li span{
	position: relative;
    /* top: 1px; */
	top: 0;
	left: 12px;
	display: inline-block;
    font-size: 13px;
    font-size: 0.8125rem;
    font-weight: bold;
    color: #619318;
    text-indent: -0.35rem;
}

#rwd_snav.snav_icon .snav_content ul li span.pc_indent {
	text-indent: 7.55em;
    padding-right: 12px;
	font-weight: normal;
    color: #363434;

}

#rwd_snav.snav_icon .snav_content ul li a {
	color: #363434;
	line-height: 1.35;
	text-decoration: none;
	/* display: block; */
	padding: 0 0 3px 12px;
}
#rwd_snav.snav_icon .snav_content ul li a:hover,
#rwd_snav.snav_icon .snav_content ul li a:hover span.pc_indent {
	text-decoration: underline;
}
#rwd_snav.snav_icon .snav_content ul li:before {
	position: absolute;
	/* top: -1px; */
	top: -2px;
	left: 14px;
	content: url(/tech/civil_common/images/icon_arrow_s.svg);
	display: inline-block;
	width: 9px;
	height: 9px;
}

#rwd_snav.snav_icon .snav_content ul li.ctg_tunnel {
    text-indent: -111px;
    padding-left: 111px;
}
#rwd_snav.snav_icon .snav_content ul li.ctg_tunnel:before {
	left: 111px;
}
#rwd_snav.snav_icon .snav_content ul li.ctg_dam {
    text-indent: -59px;
    padding-left: 59px;
}
#rwd_snav.snav_icon .snav_content ul li.ctg_dam:before {
	left: 59px;
}

/* サイト内リンクの時 */
#rwd_snav.snav_icon .snav_content ul li.in a {
	padding: 3px 0 3px 13px;
}
/* #rwd_snav.snav_icon .snav_content ul li.in:before {
	top: 0;
} */
/* サイト内リンクの時　ここまで */

/* リンクなしの時 */
#rwd_snav.snav_icon .snav_content ul li.no_link {
	color: #7b7b7b;
	line-height: 1.3;
	text-decoration: none;
	display: block;
	/* padding: 3px 0 2px 13px; */
	padding: 3px 0 2px 27px;
}
#rwd_snav.snav_icon .snav_content ul li.no_link:before {
	content: url(/tech/civil_common/images/icon_arrow_s_gray.svg);
	top: 1px;
	/* left: 0; */
	left: 14px;
}
/* リンクなしの時 ここまで */

/* 見出し?の時 */
#rwd_snav.snav_icon .snav_content ul li.dot {
	position: relative;
	color: #363434;
	line-height: 1.3;
	text-decoration: none;
	display: block;
	padding: 3px 0 2px 27px;
}
#rwd_snav.snav_icon .snav_content ul li.dot:before {
	content: "?";
	position: absolute;
	left: 10px;
    top: 2px;
    font-size: 20px;
	line-height: 1;
	color: #7b7b7b;
}
/* 見出し?の時 ここまで */

#rwd_snav.snav_icon .snav_content ul li a.blank_icon {
	position: relative;
}
#rwd_snav.snav_icon .snav_content ul li a.blank_icon:after {
	content: "";
	background: url(/common/image/icon_blank.gif);
	background-size: contain;
	background-repeat: no-repeat;
	position: absolute;
	bottom: 11px;
	margin-left: 4px;
	display: inline-block;
	width: 8px;
	height: 10px;
}
#rwd_snav.snav_icon .snav_content ul li a.blank_icon.space:after {
	margin-left: 0;
}


/* 放射性廃棄物処分とは　部分 */
#rwd_snav.snav_icon .snav_content .menu01 ul {
	padding-left: 0;
}

#main.tech_body #rwd_snav.snav_icon .snav_content .snav_accordion p.txt{
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 1.7;
	color: #363434;
	margin-bottom: 12px;
	margin-left: 2px;
	width: 395px;
}
#main.tech_body #rwd_snav.snav_icon .snav_content .snav_accordion p.img{
	width: 395px;
}
#main.tech_body #rwd_snav.snav_icon .snav_content .snav_accordion p.img img{
	width: 100%;
	height: auto;
	border-radius: 5px;
}
/* 放射性廃棄物処分とは　部分ここまで */

/* #rwd_snav ここまで */


/* 本文 */
#main.tech_body h3.label {
  margin: 35px 0 25px;
  padding: 7px 7px 7px 13px;
  width: 935px;
  border-left: solid 5px #73a32d;
  background: #f3efe8;
}
/* 関連情報 */
#main.tech_body .rel_info {
  /* box-sizing: border-box;
  padding: 8px 15px 15px; */
  border: #73a32d 2px solid;
  margin-bottom: 20px;
  background-color: #f4f8ef;
}

/* キーワード */
.keyword dt {
  /* line-height: 1;
  font-weight: bold;
  display: inline-block;
  padding: 6px 7px 3px 7px;
  text-align: center; */
  background-color: #73a32d;
  /* color: #fff;
  vertical-align: top; */
}

/* 適用実績 */
/* #main.tech_body .ex_col.wide {
	width: 960px;
}
#main.tech_body .ex_col.wide .txt {
	width: 805px;
} */
  

/* 学術論文 */
#body #main.tech_body .treatise {
	/* box-sizing: border-box;
	padding: 10px 15px 0 15px; */
	border: #73a32d 2px solid;
	/* margin-bottom: 40px; */
	background-color: #f4f8ef;
}
#body #main.tech_body .treatise ul.list > li:before {
	/* position: absolute;
	content: "";
	top: 9px !important;
	left: 0;
	width: 8px;
	height: 8px;
	border-radius: 2px; */
	background: #73a32d;
}

#body #main ul.list > li:before {
  background: #73a32d;
}

/*  放射性廃棄物処分 footer
---------------------------------------------------------- */
.rwd_bottom {
	display: flex;
	justify-content: center;
	padding: 20px;
	background: #f3efe8;
	margin-top: 50px;
	margin-bottom: 20px;
}
.rwd_bottom .btn_contact a {
    display: inline-block;
    padding: 12px 30px;
    text-align: center;
    font-weight: bold;
    font-size: 16px;
    font-size: 1rem;
    line-height: 1;
    text-decoration: none;
    color: #363434;
    margin: 0;
    white-space: nowrap;
    border: #73a32d 2px solid;
    background: #fff;
	transition: 0.3s;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
}
.rwd_bottom .btn_contact a:hover {
    color: #fff;
    background: #73a32d;
	transition: 0.3s;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
}



/*----------------------------------------------------
    print
----------------------------------------------------*/
@media print {
	#main.tech_body .title_s a.index_link .title_area .title {
		left: 10px;
	}
	#rwd_snav,
	.rwd_bottom {
		display: none;
	}
	#main.tech_body .title_s a.index_link .title_area .ctg {
		left: 255px;
	}
}