@charset "utf-8";




/******************************************************************************
/* ヘッダー設定
******************************************************************************/


.middle_menu01_image{
	position: relative;
	width:100%;
	height:200px;
	margin-bottom: 80px;
	z-index: 1;
}




/****************************************************************************************
/* ページタイトル設定
****************************************************************************************/




.obi {
	position: absolute;
	bottom: 0%;
	left: 2.5%;
	margin: 0 auto 0 auto;
	width: 0px;
	height: 50px; 
	z-index: 1000;
	background-color: #ffffff;
	animation-name: anime1;
	animation-duration: 1s;
	animation-timing-function: ease-in-out;
	animation-iteration-count: 1;
	animation-direction: normal;
	animation-delay: 1s;
	animation-fill-mode: forwards;
	opacity: 1;
	text-align: center;
}

@keyframes anime1 {
  0% {
    width: 333px;
    height: 0px;
  }

  100% {
    width: 333px;
    height: 50px;
    background-color: #ffffff;
  }
}


.obi_in {
	position: absolute;
	bottom: 0%;
	left: 0%;
	margin: 0 auto 0 auto;
	width: 0px;
	height: 35px; 
	z-index: 1000;
	background-color: #ffffff;
	animation-name: anime2;
	animation-duration: 1s;
	animation-timing-function: ease-in-out;
	animation-iteration-count: 1;
	animation-direction: normal;
	animation-delay: 1.5s;
	animation-fill-mode: forwards;
	opacity: 0;
	text-align: center;
}

.obi_in img {
	width: auto;
	height: 35px;
}

@keyframes anime2 {
  0% {
    width: 333px;
    height: 0px;
  }

  100% {
    width: 333px;
    height: 35px;
	opacity: 1;

  }
}



.service_title01_area_in_image {
	position: absolute;
	z-index: 0;
	top: 0px;
	left: 0px;
	margin: 0px auto 0;
	text-align: center;
	opacity: 0;
	width:100%;
	height: 200px;
	object-fit: cover;
	background-color: #ffffff;
	animation-name: anime3;
	animation-duration: 1s;
	animation-timing-function: ease-in-out;
	animation-iteration-count: 1;
	animation-direction: normal;
	animation-delay: 0s;
	animation-fill-mode: forwards;
	opacity: 0;

}


@keyframes anime3 {
  0% {
	opacity: 0;

  }

  100% {

	opacity: 1;

  }
}


/******************************************************************************
/* 森林プロジェクトトップページレイアウト
******************************************************************************/





.flex-fc_project_system_toparea {
	margin:30px auto 0px auto;
	display: flex;
}

.flex-fc_project_system_toparea .flex-1 {
	flex: 1.0;
	background-color: #FFFFFF;

}




.flex-fc_project_system_toparea .flex-2 {
	flex: 1.0; 
	margin-top:0px;
	margin-left:30px;
	margin-bottom: 0px;
	background-color: #ffffff;
}



/******************************************************************************
/* 森林プロジェクトレイアウト
******************************************************************************/





.flex-fc_project_system_area {
	margin:30px auto 0px auto;
	display: flex;
}

.flex-fc_project_system_area .flex-1 {
	flex: 1.0;
	background-color: #FFFFFF;

}




.flex-fc_project_system_area .flex-2 {
	flex: 1.0; 
	margin-top:0px;
	margin-left:30px;
	margin-bottom: 0px;
	background-color: #ffffff;
}


/******************************************************************************
/* 森林プロジェクト登録フォームレイアウト
******************************************************************************/





.flex-fc_project_system_area_form {
	margin: 0px auto 0px auto;
	display: flex;
}

.flex-fc_project_system_area_form .flex-1 {
	flex: 1.0;
	background-color: #FFFFFF;

}




.flex-fc_project_system_area_form .flex-2 {
	flex: 1.0; 
	margin-top:0px;
	margin-left:30px;
	margin-bottom: 0px;
	background-color: #ffffff;
}

/******************************************************************************
/* CO2吸収量パッケージ登録フォームレイアウト
******************************************************************************/





.flex-fc_package_system_area_form {
	margin: 0px auto 0px auto;
	display: flex;
}

.flex-fc_package_system_area_form .flex-1 {
	flex: 1.0;
	background-color: #FFFFFF;

}




.flex-fc_package_system_area_form .flex-2 {
	flex: 1.0; 
	margin-top:0px;
	margin-left:30px;
	margin-bottom: 0px;
	background-color: #ffffff;
}

.flex-fc_package_system_area_form .flex-3 {
	flex: 1.0; 
	margin-top:0px;
	margin-left:30px;
	margin-bottom: 0px;
	background-color: #ffffff;
}


/******************************************************************************
/* 右コンテンツエリア設定
******************************************************************************/


.fc_project_area{
	position: relative;
	margin:0px auto 0px auto;
	width:100%;
	padding: 30px;

}


.fc_project_area_title {
	position: relative;
	margin:0px auto 30px auto;
	width:100%;
	padding: 20px;
	font-weight: 700;
	color: #21B7CD;
	background-color: #ffffff;

}



/******************************************************************************
/* サムネイル表示設定
*******************************************************************************/


.d_image_size {
	object-fit: cover;
	width: 100%;
	height: 500px;
	object-position: 50% 50%;
	background-color: #F5F5F5;

}


.d_image_size2 {
	object-fit: cover;
	width: 100%;
	height: 250px;
	object-position: 50% 50%;
	background-color: #F5F5F5;

}


.detail_image_size_box {
	width: 100%;
	margin: 10px auto 0px auto;
	box-sizing: border-box;
	background-color: #F5F5F5;
	border: solid 1px #eeeeee;

}

.detail_image_size_box p {
	display: block;
	margin-top:10px;
	margin-left: 10px;
	margin-bottom: 10px;
}

.detail_image_size_box2 {
	width: 100%;
	margin: 10px auto 0px auto;
	box-sizing: border-box;
	background-color: #F5F5F5;
	border: solid 1px #eeeeee;
}

.detail_image_size_box2 p {
	display: block;
	margin-top:10px;
	margin-left: 10px;
	margin-bottom: 10px;
}


.error_msg {
	display: block;
	margin-top:10px;
	color: #DC3545;
	font-weight: 700;
}

.error_msg01 {
	display: block;
	margin-top:10px;
	color: #DC3545;
	font-weight: 700;
}

.error_msg02 {
	display: block;
	margin-top:10px;
	color: #DC3545;
	font-weight: 700;
}

.error_msg03 {
	display: block;
	margin-top:10px;
	color: #DC3545;
	font-weight: 700;
}

.error_msg04 {
	display: block;
	margin-top:10px;
	color: #DC3545;
	font-weight: 700;
}

.error_msg05 {
	display: block;
	margin-top:10px;
	color: #DC3545;
	font-weight: 700;
}

.error_msg06 {
	display: block;
	margin-top:10px;
	color: #DC3545;
	font-weight: 700;
}


.geomap {
	margin-bottom: 15px;
}



/******************************************************************************
/* サムネイルレイアウト
******************************************************************************/





.flex-fc_project_system_area_thum {
	margin: 20px auto 0px auto;
	display: flex;
}

.flex-fc_project_system_area_thum .flex-1 {
	flex: 1.0;
	background-color: #ffffff;

}




.flex-fc_project_system_area_thum .flex-2 {
	flex: 1.0; 
	margin-top:0px;
	margin-left:30px;
	margin-bottom: 0px;
	background-color: #ffffff;
}



.flex-fc_project_system_area_thum .flex-3 {
	flex: 1.0; 
	margin-top:0px;
	margin-left:30px;
	margin-bottom: 0px;
	background-color: #ffffff;
}



/******************************************************************************
/* カテゴリーメインタイトル設定
******************************************************************************/

.main_title01 {
	position: relative;
	padding-top: 0px;
	padding-bottom: 10px;
	border-bottom: 4px solid #ccc;
	text-align: left;
	font-size: 120%;
	line-height: 110%;
	font-weight:700;
	margin-top: -3px;
	margin-bottom: 40px;
	color: #76CB5C;
}

.main_title01::after {
	position: absolute;
	bottom: -4px;
	left: 0;
	z-index: 2;
	content: '';
	width: 20%;
	height: 4px;
	background-color: #76CB5C;
}




/******************************************************************************
/* ノベルティ詳細ページレイアウト
*******************************************************************************/


.main_area {
	width: 100%;
	margin: 30px auto 0px auto;

}

.detail_main{
	width: 100%;
	margin: 0px auto 0px auto;
	font-size: 100%;

}

.detail_left {
	float: left;
	width:45%; 
	margin: 0px auto 0;
}

.detail_right {
	float: right;
	width:55%;
	padding-left: 50px;
	text-align: left;
	margin: 0px auto 0;

}


.detail_right p {
	margin-bottom: 30px;
	line-height: 2.0;

}

.detail_right .cost {
	width: 100%;
	font-size: 110%;
	font-weight: 500;
	margin-bottom: 0px;
	line-height: 2.0;
	text-align: right;
}

.detail_right .cost span.tanka {
	color: #AA7790;
	font-size: 120%;
	font-weight: 600;
	margin-bottom: 0px;
	line-height: 2.0;
	text-align: right;
}

.detail_right .cost p {
	margin-bottom: -10px;

}


.detail_right .cost span {
	font-size: 80%;
}


.detail_right div {
	line-height: 1.5;

}





/******************************************************************************
/* 一覧表示レイアウト
*******************************************************************************/

ul.submenu_nav2 {

	width:100%; 
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}


ul.submenu_nav2::after {
	content: "";
	display: block;
	width: 32%;
	height: 0;
}

ul.submenu_nav2 li:first-child {
	letter-spacing:normal;
	display: inline-block;
	width: 100%; 
	vertical-align: top;
	text-align: center;
	margin-bottom: 15px;

}

ul.submenu_nav2 li:first-child .detail_image_size {
	width: 100%;
	height: 450px;
}

 
ul.submenu_nav2 li {
	letter-spacing:normal;
	display: inline-block;
	width: 32%; 
	vertical-align: top;
	text-align: center;
	margin-bottom: 10px;

}


ul.submenu_nav2 img {
	border-radius: 8px;
}



.detail_image_size {
	object-fit: cover;
	width: 100%;
	height: 200px;
	object-position: 50% 50%
}



a.order {
	position: absolute;
	top: 0px;
	right: 0px;
	width: 30px;
	height: 30px;
}




.goods2 {
	position: relative;
	margin-bottom: 0px;
	width:100%;
	height: 200px;
	z-index:1;

}

.goods2 a { display: block; }

a.goods-menu2 {
	width:100%;
}

.code {
	margin-bottom: 10px;

}


.main_copy {
	width: 100%;
	margin-top: 30px;
	margin-bottom: 30px;

}






ul.submenu_nav {
	margin-top: 20px;
	margin-bottom: 20px;
	width:100%; 
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}


ul.submenu_nav::after {
	content: "";
	display: block;
	width: 32%;
	height: 0;
}

 
ul.submenu_nav li {
	letter-spacing:normal;
	width: 32%; 
	vertical-align: top;
	text-align: center;
	margin-bottom: 30px;
	display: block;
}


ul.submenu_nav li a {
	display: block;


}



.box30 {
	margin: 0 auto;
 	background: #f5f5f5;
	padding-top: 0px;
	padding-left: 0px;
	padding-right: 0px;
	padding-bottom: 10px;
	height: 450px;
	text-align: left;
	display: block;
}





.box30_in {
	margin-top: 0px;
	overflow: hidden;
	font-weight: 400;
	color: #164270;
	padding-top: 10px;
	padding-left: 20px;
	padding-right: 20px;
	text-align: left;
	height: 150px;
}



.trim {
	overflow: hidden;
	width: 100%;
	max-height: 300px;
	margin: 0 auto;
}



.trim img {
	object-fit: cover;
	transform: scale(1);
	transition: 0.3s ease-in-out;
	width: 100%;
	height: 300px;
	object-position: 50% 50%;
}

.trim:hover img {
	transform: scale(1.3);
}


.kakomi-maru1 {
font-size: 80%;
	padding: 5px;
 color: #ffffff; /*文字色*/
 background-color: #164270; /*背景色*/
 border-radius: 5px; /*角の丸み*/ 
margin-right: 5px;
	font-weight: 700;
}


.mokutekichi {
	font-size: 100%;
	font-weight: 600;
	color: #164270;
	text-align: left;
	padding-top: 10px;
	padding-bottom: 10px;
	margin-bottom: 10px;
}


/******************************************************************************
/* 文字の表示制限設定
******************************************************************************/

.title_ellipsis {
    width: 100%; /* 省略せずに表示するサイズを指定 */
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.contents_ellipsis {
     display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden; 
}


/******************************************************************************
/* 制度に参加する設定
******************************************************************************/



.maru-box-01 {
	display: inline-block;
	height: 45px;
	background-color: #5472CD;
	border-radius: 5px;
	padding-left: 5px;
	padding-right: 5px;
	padding-top: 5px;
	padding-bottom: 4px;
	color: #ffffff;
	font-weight: 700;
	margin-right: 5px;
	text-align: center;
	font-size: 90%;
}


.maru-box-01 p{
	line-height: 1.2;
}


/******************************************************************************
/* 枠付きテーブル
*******************************************************************************/



.fc_project_area_table01 {
	border-collapse:collapse;
	width: 100%;
	text-align:left;
	line-height: 150%;
	border-top-width: 1px;
	border-top-style: solid;
	border-top-color: #9CDFE8;
	border-left-width: 1px;
	border-left-style: solid;
	border-left-color: #9CDFE8;
	font-size: 90%;
	margin-bottom: 15px;
}


.fc_project_area_table01 th{
	height: 80px;
	border-right-width: 1px;
	border-right-style: solid;
	border-right-color: #9CDFE8;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #9CDFE8;
	color: #ffffff;
	background-color: #A2CC89;
	font-weight: 400;
	margin: 0px;
	padding: 11px;
	vertical-align: middle;
	text-align: center;
	white-space: nowrap;

}



.fc_project_area_table01 td{
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #9CDFE8;
	border-right-width: 1px;
	border-right-style: solid;
	border-right-color: #9CDFE8;
	background-color : #ffffff;
	margin: 0px;
	padding: 11px;
	font-weight: 700;
}

.fc_project_area_table01 td:nth-child(3) {
  text-align: center;
}



/********************************************************************************************************
/* 説明ボックス
*********************************************************************************************************/


.fc_project_comment_box {
	width: 100%;
	background-color: #FAFAFA;
	padding-left: 40px;
	padding-right: 40px;
	padding-top:20px;
	padding-bottom:50px;

}


.example {
	position: relative;
	box-sizing: border-box;
	margin: 30px auto 30px auto;
	width: 100%;
	height: auto;
	display: inline-block;
	padding:12px;
	border : dashed 1px #CBD5E0 ;
	text-align: left;
	background-color: #ffffff;
	letter-spacing: 1.2px;
	font-weight: 400;
	color: #000000;
}


/********************************************************************************************************
/* 森林プロジェクトボックス（CO2吸収量パッケージ登録）
*********************************************************************************************************/


.fc_package_comment_box {
	width: 100%;
	background-color: #FAFAFA;
	padding: 20px;
	margin-bottom:30px;
}

.fc_package_comment_box p{
	font-size: 110%;
	font-weight: 700;
}



/******************************************************************************
/* 検索ボックス設定
*******************************************************************************/





.flex-search_box {
	margin:30px auto 0px auto;
	display: flex;
}

.flex-search_box .flex-1 {
	flex: 2.0;
	background-color: #FFFFFF;

}




.flex-search_box .flex-2 {
	flex: 6.0; 
	margin-top:0px;
	margin-left:30px;
	margin-bottom: 0px;
	background-color: #ffffff;
}

.flex-search_box .flex-2 p {
	font-size: 110%;
	font-weight: 700;
	margin-bottom: 30px;
}



.flex-search_box .flex-3 {
	flex: 0.5;
	margin-top: 80px;
	margin-left:30px;
	margin-bottom: 0px;
	background-color: #ffffff;
	text-align: right;
}


.release_box {
	box-sizing: border-box;
	border: solid 1px black;
	width: 100%;
	padding: 20px;
	margin-top: 30px;
	text-align: center;
}


/******************************************************************************
/* 検索ボタン
*******************************************************************************/



.search_button {
	display: inline-block;
	height: 150px;
	width: 150px;
	text-decoration: none;
	font-size: 120%;
	font-weight: 700;
	text-align: center;
	color: #4758E0;
	border: 1px solid #cbcbcb;
	border-bottom: 1px solid #b2b1b1;
	text-shadow: 0px 1px 0px #fafafa;
	-webkit-box-shadow: 0 1px 0 #f5f5f5 inset, 1px 1px 1px #e9e9e9;
	-moz-box-shadow: 0 1px 0 #f5f5f5 inset, 1px 1px 1px #e9e9e9;
	box-shadow: 0 1px 0 #f5f5f5 inset, 1px 1px 1px #e9e9e9;
	background: #eeeeee;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0.5, #ffffff), color-stop(0.5, #eeeeee));
	background: -moz-linear-gradient(top, #ffffff 50%, #eeeeee 50%);
	background: -o-linear-gradient(top, #ffffff 50%, #eeeeee 50%);
	background: -ms-linear-gradient(top, #ffffff 50%, #eeeeee 50%);
	background: linear-gradient(top, #ffffff 50%, #eeeeee 50%);
	filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#ffffff 50%', endColorstr='#eeeeee 50%');
	-ms-filter: "progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#ffffff 50%', endColorstr='#eeeeee 50%')";
	border-radius: 5px;
	margin-right: 0px;
	cursor: pointer;

}
.search_button:active{ 
	-ms-transform: translateY(2px);
	-webkit-transform: translateY(2px);
	transform: translateY(2px);
	box-shadow: none;
}

.search_button span {
	display: block;
	font-size: 70%;
	font-weight: 700;
	margin-top: 5px;
}

.search_button p {
	font-size: 85%;
	font-weight: 700;
	margin-top: 0px;
	margin-left: -10px;
}




/******************************************************************************
/* ラジオボタン
*******************************************************************************/

.radio-inline__input2 {
    clip: rect(1px, 1px, 1px, 1px);
    position: absolute !important;
}

.radio-inline__label2 {
    display: inline-block;
    padding: 0.5rem 0.5rem;
    margin-right: 10px;
    margin-bottom: 10px;
    border-radius: 3px;
    transition: all .2s;
    outline-color: #4D90FE;
    outline-offset: -2px;
    outline-style: auto;
    outline-width: 5px;
    font-weight: 700;
}

.radio-inline__input2:checked + .radio-inline__label2 {
    background: #B54A4A;
    color: #fff;
    text-shadow: 0 0 1px rgba(0,0,0,.7);
    border 1px solid #ff8e9d;
    font-weight: 700;
}

.radio-inline__input2:focus + .radio-inline__label2 {
    outline-color: #4D90FE;
    outline-offset: -2px;
    outline-style: auto;
    outline-width: 5px;
    font-weight: 700;
}




/*------------------------------------------------------------*/
/*------------------------------------------------------------*/
/* 601 - 768用（タブレット用）の記述 */
/*------------------------------------------------------------*/
/*------------------------------------------------------------*/


/******************************************************************************
/* タブレットサイズ
*******************************************************************************/


@media screen and (max-width:1200px) {



.pcOnly {
	display: none!important;
}
.spOnly {
	display: block!important;
}

/******************************************************************************
/* 右コンテンツエリア設定
******************************************************************************/


.fc_project_area{
	position: relative;
	margin:0px auto 0px auto;
	width:100%;
	padding: 30px;

}


.fc_project_area_title {
	position: relative;
	margin:0px auto 30px auto;
	width:100%;
	padding: 20px;
	font-weight: 700;
	color: #21B7CD;
	background-color: #ffffff;

}





/******************************************************************************
/* 簡易CO2吸収量設定
******************************************************************************/


.fc_project_system_area{
	margin:30px auto 0px auto;
	width:100%;

}


.flex-fc_project_system_area {
  display: block;
}

.flex-fc_project_system_area .flex-1 {
	display: block;
	background-color: #FFFFFF;

}






.flex-fc_project_system_area .flex-2 {
	display: block;
	margin-top:0px;
	margin-left:0px;
	margin-bottom: 0px;
	padding: 0px;
	background-color: #9CDFE8;

}








}



/*------------------------------------------------------------*/
/*------------------------------------------------------------*/
/* 600px - 100px用（スマートフォン用）の記述 */
/*------------------------------------------------------------*/
/*------------------------------------------------------------*/


@media screen and (min-width: 100px) and (max-width: 600px)  {



/******************************************************************************
/* コンテンツエリア設定
******************************************************************************/


.fc_project_area{
	position: relative;
	margin:0px auto 0px auto;
	width:100%;
	z-index : 0;
	font-size: 100%;
}







/******************************************************************************
/* 簡易CO2吸収量設定
******************************************************************************/


.fc_project_system_area{
	margin:30px auto 0px auto;
	width:100%;

}


.flex-fc_project_system_area {
  display: block;
}

.flex-fc_project_system_area .flex-1 {
	width:100%;
	display: block;
	background-color: #FFFFFF;

}






.flex-fc_project_system_area .flex-2 {
	width:100%;
	display: block;
	margin-top:0px;
	margin-left:0px;
	margin-bottom: 0px;
	padding: 0px;
	background-color: #9CDFE8;

}






}
