@charset "utf-8";

/* ****************************************************************************

　目次

-------------------------------------------------------------------------------

　01. モジュール

******************************************************************************* */
/* ==

　01. モジュール

=============================================================================== */
.tShinrin_btn {
	display: block;
	position: relative;
	max-width: 520px;
	line-height: 1.5;
	margin: 64px auto 0;
	padding: 3px 0 7px;
	border: 3px solid #365c48;
	border-radius: 50px;
	background-color: #365c48;
	color: #fff;
	font-size: 184%;
	font-weight: 400;
	text-decoration: none;
	text-align: center;
	box-shadow: 2px 2px 3px 2px rgba(0, 0, 0, 0.2) ;
	-webkit-box-shadow: 2px 2px 3px 2px rgba(0, 0, 0, 0.2) ;
	-moz-box-shadow: 2px 2px 3px 2px rgba(0, 0, 0, 0.2) ;
	-o-box-shadow: 2px 2px 3px 2px rgba(0, 0, 0, 0.2) ;
	-ms-box-shadow: 2px 2px 3px 2px rgba(0, 0, 0, 0.2) ;
	transition: opacity .3s;
}
.tShinrin_btn ~ .tShinrin_btn { margin-top: 20px; }
.d_hover .tShinrin_btn:hover {
	opacity: 0.6;
}
.tShinrin_btn::after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	right: 20px;
	width: 20px;
	height: 15px;
	margin: -8px 0 0;
	background: url(../../images/rn/index_ico01.png) center center no-repeat;
	background-size: 20px 15px;
}
/* 
------------------------------------------------------------------------------- */
.tLead_body{
	margin-bottom: 75px;
	padding: 56px 0 240px;
	background: #fff url(../images/img01.jpg) center bottom no-repeat;
}
.tLead_in {
	max-width: 754px;
	margin: 0 auto;
}
.tLead_txt {
	line-height: 2.7;
	margin: 0;
	color: #345946;
	font-size: 124%;
	font-weight: 400;
	text-align: center;
}
.tLead_txt span{
	padding: 0 5px;
	background: rgba(255, 255, 255, 0.7);
}
.tLead_txt ~ .tLead_txt{ margin-top: 30px; }

/* 14の暮らす森
------------------------------------------------------------------------------- */
.tShinrin_body {
	padding: 28px 0 75px;
	background-color: #fff;
}
.tShinrin_in {
	max-width: 754px;
	margin: 0 auto;
}
.tShinrin_tit {
	line-height: 1.5;
	margin: 0 0 46px;
	padding: 0;
	background: none;
	color: #365c48;
	font-size: 184%;
	font-weight: 500;
	text-align: center;
}
.tShinrin_layout {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}
.tShinrin_info {
	width: -webkit-calc(100% - 436px);
	width: calc(100% - 436px);
	padding: 10px 2px 0 0;
	box-sizing: border-box;
}
/*
.tShinrin_map {
	width: 390px;
}
*/
.tShinrin_map img {
	outline: none;
	border: none;
}
.tShinrin_map area{
	outline: none;
	border: none;
}
.tShinrin_txt {
	line-height: 1.7;
	margin: 25px 0 0;
	color: #333;
	font-size: 150%;
	font-weight: 400;
}
.tShinrin_txt:first-child {
	margin-top: 0;
}
.tShinrin_note {
	line-height: 1.5;
	margin: 30px 0 26px;
	color: #808080;
	font-size: 100%;
	font-weight: 500;
}
.tShinrin_help1,
.tShinrin_help2 {
	line-height: 2;
	margin: 0;
	color: #333;
	font-size: 134%;
	font-weight: 400;
}
.tShinrin_help1::before,
.tShinrin_help2::before {
	content: "";
	display: inline-block;
	width: 20px;
	height: 20px;
	margin: 0 5px 0 0;
	background: url(../images/index_ico01.png) center center no-repeat;
	background-size: 20px 20px;
	vertical-align: -0.3em;
}
.tShinrin_help2::before {
	background-image: url(../images/index_ico02.png);
}
/* 地図画像（タブ切り替え部分）
------------------------------------------------------------------------------- */
.map_tab_container {
    margin: 0 auto;
    position: relative;
    height: 670px;
}
.map_tab_item {
    height: 60px;
    padding: 0;
    text-align: center;
    display: block;
    float: left;
    font-size: 117%;
    font-weight: bold;
    transition: all 0.2s ease;
    color: #fff;
    background-color: #c4c9c3;
    box-sizing: border-box;
}
.map_tab_item:hover,
.map_tab_content area:hover{
    cursor: pointer;
}
.map_tab_item01{
    border-radius: 30px 0 0 30px;
    width: 20%;
    bottom: 120px;
    left: 0;
    position:absolute;
    padding-top: 17px;
}
.map_tab_item02{
    border-left: 2px solid #fff;
    border-right: 2px solid #fff;
    width: 40%;
    position: absolute;
    bottom: 120px;
    left: 20%;
    padding-top: 17px;
}
.map_tab_item03{
    border-radius: 0 30px 30px 0;
    width: 40%;
    position: absolute;
    bottom: 120px;
    right: 0;
    padding-top: 5px;
}
.map_tab_item03 img{
    display: block;
    width: 22px;
    height: 22px;
    margin: 0 auto;
    opacity: 0.7;
}
input[name="map_tab_item"] {
    display: none;
}
.map_tab_content {
    display: none;
    clear: both;
    overflow: hidden;
}
#map_tab1:checked ~ #map_tab1_content,
#map_tab2:checked ~ #map_tab2_content,
#map_tab3:checked ~ #map_tab3_content{ 
    display: block;
}
#map_tab3:checked ~ #map_fukidashi{ 
    display: block !important;
}
.map_tab_container input:checked + .map_tab_item {
    background-color: #365c48;
    color: #fff;
    position: absolute;
}
.map_tab_container input:checked + .map_tab_item img{
    opacity: 1;
}
/*---------------------
  ふきだし
  --------------------*/
#map_fukidashi {
    width: 100%;
    position: absolute;
    bottom: 0;
    padding: 20px 25px;
    color: #fff;
    background: #365c48;
    font-size: 117%;
    box-sizing: border-box;
    border-radius: 10px;
    display: none;
}
#map_fukidashi::before {
    content: "";
    display: block;
    position: absolute;
    top: -15px;
    right: 75px;
    border-style: solid;
    border-width: 0 12px 20px 12px;
    border-color: transparent transparent #365c48 transparent;
}
#map_fukidashi span{
    display: block;
    margin-bottom: 5px;
    font-weight: bold;
}
/* “暮らす森”の歴史
------------------------------------------------------------------------------- */
.tHistory_body {
	padding: 56px 0 75px;
	background-color: #ced3ce;
}
.tHistory_in {
	max-width: 754px;
	margin: 0 auto;
}
.tHistory_tit {
	line-height: 1.5;
	margin: 0 0 46px;
	padding: 0;
	background: none;
	color: #365c48;
	font-size: 184%;
	font-weight: 500;
	text-align: center;
}
.tHistory_txt {
	line-height: 1.7;
	margin: 0;
	color: #333;
	font-size: 150%;
	font-weight: 400;
	text-align: center;
}
.tHistory_txt02 {
	line-height: 1.7;
	margin: 17px 0 0 25px;
	color: #365c48;
	font-size: 150%;
	font-weight: 400;
}
.tHistory_txt02 span{
	text-align: center;
	display: inline-block;
}
.tHistory_layout{
	width: 570px;
	margin: 70px auto 0;
}
.tHistory_body dl{
	padding: 0 0 100px;
	background: url(../images/bg_history01.png) 158px bottom no-repeat;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
}
.tHistory_body dt{
	width: 180px;
	padding-bottom: 15px;
	padding-right: 40px;
	font-size: 150%;
	color: #365c48;
	text-align: right;
	position: relative;
	box-sizing: border-box;
}
.tHistory_body dt::before{
	content: "";
	width: 2px;
	height: 100%;
	border-right: 2px solid #365c48;
	display: block;
	position: absolute;
	right: 12px;
}
.tHistory_body dt::after{
	content: "";
	display: block;
	width: 26px;
	height: 26px;
	background: url(../images/index_ico01.png) center center no-repeat;
	background-size: 26px 26px;
	position: absolute;
	right: 0;
	top: 2px;
}
.tHistory_body dt:first-child::after{
	background: url(../images/ico_history_top.png) center center no-repeat;
	top: 0;
}
.tHistory_body dd{
	width: 390px;
	padding: 0 0 15px 20px;
	font-size: 150%;
	color: #365c48;
	box-sizing: border-box;
}
.tHistory_body dd a{
	color:#365c48;
	text-decoration: none;
}
.d_hover .tHistory_body dd a:hover{ text-decoration: underline; }

.tHistory_body dd.pbXL{ padding-bottom: 110px; }
.tHistory_body dd.pbL{ padding-bottom: 70px; }
.tHistory_body dd.pbM{ padding-bottom: 40px; }
