@charset "utf-8";
html {
	scroll-behavior: smooth;
	height: 100%;
	font-family: 'Noto Sans JP', sans-serif;
}
body {
	height: 100%;
	font-size: 16px;
	font-feature-settings: "palt";
	letter-spacing: 0.1;
	line-height: 1.8;
	background-color: #fff;
	color: #303e31;
	animation: pagefadein 1.5s forwards;
	word-break: break-word;
}
@keyframes pagefadein {
	0% {
		opacity: 0
	}
	100% {
		opacity: 1
	}
}
img {
	-webkit-touch-callout: none;
	-webkit-user-select:none;
	-moz-touch-callout:none;
	-moz-user-select:none;
	-webkit-user-drag: none;
	-khtml-user-drag: none;
	user-drag: none;
	touch-callout:none;
	user-select:none;
}
a:link,
a:visited {
	text-decoration: none;
}
a:hover,
a:active {
	text-decoration: none;
	transition: all .3s;	
}
h3 {
	font-size: 3rem;
	font-weight: 900;
	line-height: 1.5;
}
h4 {
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.5;
}
p {
	font-size: 1rem;
	margin: 0;
}
@media screen and (max-width: 768px){
	h3 {
		font-size: 2.4rem;
	}
	h4 {
		font-size: 1.5rem;
	}
	p {
		font-size: 1rem;
	}
}
 table {
 	font-size: 1rem;
 }
@media screen and (max-width: 768px){
	table {
		font-size: 0.9rem;
	}
}

/*プリント用------------------------------------------------------------------------------------------------------------------*/
@media print {
	header,	.gnav, .contact_container, #page-top {
    display: none !important;
  }
}

/*全体------------------------------------------------------------------------------------------------------------------*/
/* 全体wrap */
#wrap {
	width:100%;
	margin:0 auto;
}
#wrap::before {
	content: "";
	position: fixed;
	z-index: 90;
	display: block;
	inline-size: 6px;
	block-size: 100%;
	background-color: #317f63;
}

/*アニメーション------------------------------------------------------------------------------------------------------------------*/
/* スクロールドリブンアニメーション-フェードイン*/
.sda_fadein1 {
	animation: fadein-y100 linear;
	animation-timeline: view();
	animation-range: entry 0% cover 20%;
}
@keyframes fadein-y100 {
	from {
		transform: translateY(100px);
		opacity: 0;
	}
	to {
		transform : translateY(0px);
		opacity: 1;
	}
}
.sda_fadein2 {
	animation: fadein-y2 linear;
	animation-timeline: view();
	animation-range: entry 0% cover 20%;
	animation-delay: 2s;
}
@keyframes fadein-y2 {
	from {
		transform: translateY(100px);
		opacity: 0;
	}
	to {
		transform : translateY(0px);
		opacity: 1;
	}
}
.sda_slideleft1 {
	animation: slideleft-x100 linear;
	animation-timeline: view();
	animation-range: entry 0% cover 30%;
}
@keyframes slideleft-x100 {
	from {
		transform: translateX(-100px);
		opacity: 0;
	}
	to {
		transform : translateX(0px);
		opacity: 1;
	}
}
.sda_slideright1 {
	animation: slideright-x100 linear;
	animation-timeline: view();
	animation-range: entry 0% cover 30%;
}
@keyframes slideright-x100 {
	from {
		transform: translateX(100px);
		opacity: 0;
	}
	to {
		transform : translateX(0px);
		opacity: 1;
	}
}

@keyframes slidedown {
	from {
		transform: translateY(-100px);
		opacity: 0;
	}
	to {
		transform : translateY(0px);
		opacity: 1;
	}
}
@keyframes slideup {
	from {
		transform: translateY(100px);
		opacity: 0;
	}
	to {
		transform : translateY(0px);
		opacity: 1;
	}
}
/* スクロールイン */
.slideup {
	opacity: 0;
	transform : translateY(100px);
	transition : 0.5s;
}
.slideup.scrollin_up {
	opacity: 1;
	transform: translateY(0px);
}
.slideleft {
	opacity: 0;
	transform : translateX(-100px);
	transition : 0.5s;
}
.slideleft.scrollin_left {
	opacity: 1;
	transform: translateX(0px);
}
.slideright {
	opacity: 0;
	transform : translateX(100px);
	transition : 0.5s;
}
.slideright.scrollin_right {
	opacity: 1;
	transform: translateX(0px);
}
/* スライドイン*/
.slidein1 {
	animation: slidein-y100 1s forwards;
}
@keyframes slidein-y100 {
	0% {
		transform: translateY(100px);
	}
	100% {
		transform : translateY(0px);
	}
}
@media screen and (max-width: 1024px){
	.slidein1 {
		animation: nene;
	}
}

/*headerまわり------------------------------------------------------------------------------------------------------------------*/
/* ヘッダー */
header {
	top: 0;
	margin: 0 auto;
}
.hd_wrap {
	margin: 0 auto;
}
/* ヘッダーメニュー */
.bg_menu_content {
	justify-content: space-between;
	padding: 18px 0;
	position: fixed;
	width: 100%;
	height: 80px;
	top: 0;
	left: 0;
	transform: translateX(-50%);
	z-index: 87;
	background: rgba(255, 255, 255, 1);
	animation: slidedown 0.5s forwards;
}
.menu_content {
	justify-content: space-between;
	padding: 18px 0;
	position: fixed;
	width: 100%;
	height: 80px;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	z-index: 88;
}
.menu_content ul {
	text-align: right;
	padding: 10px 60px 0 0;
	animation: slidedown 0.5s forwards;
}
.menu_content li {
	display: inline;
	font-size: 0.8rem;
	font-weight: 700;
	padding: 0 0.4rem;
	vertical-align: 2px;
}
.menu_content li a:link,
.menu_content li a:visited {
	color: #303e31;
	transition: all .3s;
}
.menu_content li a:hover,
.menu_content li a:active {
	color: #22ac38;
	transition: all .3s;
}
@media screen and (max-width: 1024px){
	.menu_content {
		width: 100%;
	}
	.menu_content ul li {
		display: none;
	}
}
/* ヘッダーロゴ */
header .logo {
	position: fixed;
	left: 20px;
	top: 20px;
	z-index: 88;
	animation: slidedown 0.5s forwards;
}
header .logo img {
	width: 330px;
	height: auto;
}
@media screen and (max-width: 1024px){
	header .logo img {
		max-width: 60%;
		height: auto;
		padding: 10px 0;
	}
}
/* メニューボタン */
.menubtn {
	height: 20px;
	position: fixed;
	right: 20px;
	top: 30px;
	width: 30px;
	z-index: 999;
	animation: slidedown 0.5s forwards;
}
.btn-trigger {
	position: relative;
	width: 24px;
	height: 18px;
	cursor: pointer;
}
.btn-trigger span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 2px;
	background-color: #303e31;
	border-radius: 2px;
}
.btn-trigger, .btn-trigger span {
	display: inline-block;
	transition: all .5s;
	box-sizing: border-box;
}
.btn-trigger span:nth-of-type(1) {
	top: 0;
}
.btn-trigger span:nth-of-type(2) {
	top: 8px;
}
.btn-trigger span:nth-of-type(3) {
	bottom: 0;
}
#btn::before {
	position: absolute;
	top: 50%;
	left: 50%;
	display: block;
	content: '';
	width: 40px;
	height: 40px;
	margin: -20px 0 0 -20px;
	border-radius: 50%;
	border: 2px solid transparent;
}
#btn::after {
	position: absolute;
	top: 50%;
	left: 50%;
	display: block;
	content: '';
	width: 40px;
	height: 40px;
	margin: -20px 0 0 -20px;
	border-radius: 50%;
	border: 2px solid transparent;
	transition: all .75s;
}
#btn.active span:nth-of-type(1) {
	-webkit-transform: translateY(8px) rotate(-45deg);
	transform: translateY(8px) rotate(-45deg);
	background-color: #fff;
	box-shadow: none;
}
#btn.active span:nth-of-type(2) {
	left: 60%;
	opacity: 0;
	-webkit-animation: active-btn-bar02 .8s forwards;
	animation: active-btn-bar02 .8s forwards;
	box-shadow: none;
}
@-webkit-keyframes active-btn-bar02 {
	100% {
		height: 0;
	}
}
@keyframes active-btn-bar02 {
	100% {
		height: 0;
	}
}
#btn.active span:nth-of-type(3) {
	-webkit-transform: translateY(-8px) rotate(45deg);
	transform: translateY(-8px) rotate(45deg);
	background-color: #fff;
	box-shadow: none;
}
#btn.active::after {
	-webkit-animation: active-btn .7s .25s forwards;
	animation: active-btn .7s .25s forwards;
}
@-webkit-keyframes active-btn {
	0% {
		border-color: transparent;
	}
	25% {
		border-color: transparent #fff transparent transparent;
	}
	50% {
		border-color: transparent #fff #fff transparent;
	}
	75% {
		border-color: transparent #fff #fff #fff;
	}
	100% {
		border-color: #fff;
	}
}
@keyframes active-btn {
	0% {
		border-color: transparent;
		transform: rotate(0);
	}
	25% {
		border-color: transparent #fff transparent transparent;
	}
	50% {
		border-color: transparent #fff #fff transparent;
	}
	75% {
		border-color: transparent #fff #fff #fff;
	}
	100% {
		border-color: #fff;
		transform: rotate(-680deg);
	}
}
@media screen and (max-width: 768px){
	.menu {
		right: 15px;
		top: 15px;
	}
}
/* スマホ改行 */
@media screen and (min-width: 768px){
	.br-sp {
		display: none;
	}
}
/* gnav */
.gnav {
	background: rgba(48,62,49,0.98);/*#303e31*/
	background: url("../images/bg_modal.jpg") no-repeat center center / cover;
	display: none;
	height: 100vh;
	width: 100%;
	position: fixed;
	z-index: 98;
	top: 0;
	/* モーダル時の背景スクロール制御 */
	overscroll-behavior: contain;
    overflow-y: auto;
}

/* モーダル時の背景スクロール制御 */
.gnav::after {
	height:calc(100vh + 1px) ;
    width: 1px;
    background-color: transparent;
}
@media screen and (max-width: 768px){
	.gnav {
		overflow-y: auto;
		padding-bottom: 50px;
	}
}
/* ドロワー */
.header_drawer {
	padding-top: 60px;
    margin: 0 auto;
    width: 50%;
}
.header_drawer_inner {
	color: #fff;
}
.inner_menu {
	margin: 0 60px;
}
.inner_menu ul {
	display: inline-block;
}
.inner_menu li {
	font-size: 1.8rem;
	font-weight: 700;
	min-height: 50px;
	position: relative;
	z-index: 1;
	padding: 0 20px;
	transition: all .3s;
}
.inner_menu li::before {
	background: #fff;
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	bottom: 0;
	transform: scale(0, 1);
	transform-origin: left top;
	transition: all .3s;
	z-index: -1;
}
.inner_menu li:hover {
	color: #006934;
	transition: all .3s;
}
.inner_menu li:hover::before {
	transform-origin: left top;
	transform: scale(1, 1);
}
.inner_menu span {
	font-size: 14px;
	font-weight: 700;
	color: #006934;
	padding-left: 1rem;
	transition: all .3s;
}
@media screen and (max-width: 768px){
	.header_drawer {
		padding-top: 30px !important;
        width: 100% !important;
	}
	.inner_menu {
		margin: 30px 0 0;
	}
	.inner_menu li {
		transition: none;
		font-size: 2rem;
	}
	.inner_menu li::before {
		background: none;
		transform: none;
		transition: none;
	}
	.inner_menu li:hover {
		color: #fff;
		transition: none;
	}
	.inner_menu li:hover::before {
		transform: none;
	}
}
/* ドロワー-事業内容メニュー */
.inner_menu_business {
	margin: 0 10px 0 165px;
	border-left: solid 1px #fff;
}
.inner_menu_business ul {
	display: inline-block;
}
.inner_menu_business li {
	font-size: 1.2rem;
	font-weight: 700;
	min-height: 40px;
	position: relative;
	z-index: 1;
	padding: 0 10px;
	transition: all .3s;
}
.inner_menu_business li::before {
	background: #fff;
	content: "";
	display: block;
	width: 100%;
	height: 35px;
	position: absolute;
	left: 0;
	bottom: 5px;
	transform: scale(0, 1);
	transform-origin: left top;
	transition: all .3s;
	z-index: -1;
}
@media screen and (max-width: 768px){
	.inner_menu_business li {
		transition: none;
		font-size: 1rem;
	}
	.inner_menu_business li::before {
		background: none;
		transform: none;
		transition: none;
	}
}
/* ドロワーSNS */
.inner_sns {
	text-align: right;
	margin: 20px 20px 0;
	padding: 0 10px;
}
.inner_sns img {
	width: auto;
	height: 31px;
	margin: 0 15px;
	opacity: 1;
}
.inner_sns img:hover {
	opacity: 0.6;
	transition: all .3s;
}
@media screen and (max-width: 768px){
	.inner_sns {
		margin: 50px 0 100px;
		bottom: 20px;
	}
	.inner_sns img:hover {
		opacity: 1;
		transition: none;
	}
}

/*トップmvまわり------------------------------------------------------------------------------------------------------------------*/
/* メインビジュアル */
.mv {
	position: relative;
	z-index: 0;
	padding: 0;
	width: 100%;
	height: auto;
}
.mv img {
	background-size: cover;
	background-attachment: fixed;
	width: 100%;
	height: auto;
}
.mv h2.slide-title {
	width: 100%;
	font-size: 4rem;
	font-weight: 900;
	line-height: 1.5;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	color: #fff;
	text-shadow: 0px 0px 3px #111;
	text-align: center;
}
@media (min-width: 768px) and (max-width: 1023px) {
	.mv {
		width: 100%;
		padding: 0;
	}
	.mv img {
		position: relative;
		left: 0;
		top: 0;
		transform: none;
	}
	.mv h2.slide-title {
		font-size: 2.4rem;
		width: 100%;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
	}
}
@media screen and (max-width: 767px){
	.mv h2.slide-title {
		font-size: 1.4rem;
		width: 100%;
		height: auto;
	}
}
/* 縦書き */
.vertical {
	writing-mode: vertical-rl;
	text-orientation: upright;
}
/* mv-キャッチ */
.mv_catch {
	width: 100%;
	height: 100%;
	padding: 120px 30px 0 0;
	font-size: 2.8rem;
	font-weight: 900;
	line-height: 1.5;
	position: absolute;
	color: #fff;
	text-shadow: 0px 0px 3px #111;
	text-align: left;
	animation: slideup 0.5s forwards;
	animation-delay: 0.5s;
	opacity: 0;
}
@media screen and (max-width: 767px){
	.mv_catch {
		width: auto;
		padding: 0;
		font-size: 2rem;
		align-items: center;
		top: 120px;
		right: 20px;
	}
}

/* 動画 */
.video-box {
	position: relative;
	overflow: hidden;
	width: 100%;
	height: 100vh;
}
#video {
	/*天地中央配置*/
	position: absolute;
	z-index: -1;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	/*縦横幅指定*/
	width: 177.77vh; /* 16:9 の幅→16 ÷ 9＝ 177.77% */
	height: 56.25vw; /* 16:9の幅 → 9 ÷ 16 = 56.25% */
	/*width: 150vh; /* 3:2 の幅→3 ÷ 2＝ 150% */
	/*height: 66.66vw; /* 3:2の幅 → 2 ÷ 3 = 66.66% */
	min-height: 100%;
	min-width: 100%;
}

/* movトピックス */
.mov-topics {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 60%;
	max-width: 1000px;
	background-color: rgba(255,255,255,0.8);
	z-index: 999;
	animation: slideup 0.5s forwards;
	animation-delay: 1s;
	opacity: 0;
}
.mov-topics_wrap:hover {
	background-color: rgba(143,195,31,0.1);/*#8fc31f*/
	transition: all .3s;
}
.mov-topics_wrap {
	width: 100%;
	padding: 20px 40px;
	display: grid;
	grid-template-columns: 100px 140px auto;
	margin: 0 auto;
}
.mov-topics_heading {
	margin: 0;
}
.mov-topics_heading h3 {
	font-size: 1.2rem;
}
.mov-topics_heading p {
	font-size: 0.9rem;
	line-height: 1;
}
.mov-topics_date {
	margin: 0px 15px;
}
.mov-topics_date p {
	font-size: 0.8rem;
	line-height: 1.5;
}
.mov-topics_title {
	margin: 5px 20px 5px;
}
.mov-topics_title p {
	font-size: 1.5rem;
	line-height: 1.5;
	font-weight: 700;
}
.mov-topics_date p.date {
	font-size: 0.8rem;
}
.mov-topics_date p.category {
	font-size: 0.7rem;
	background-color: #303e31;
	color: #fff;
	text-align: center;
	padding: 2px 5px;
	display: inline-block;
	vertical-align: top;
	margin-right: 5px;
}
@media screen and (max-width: 1024px){
	.mov-topics {
		width: 55%;
	}
	.mov-topics_wrap {
		display: grid;
		grid-template-columns: 80px 100px auto;
		margin: 0 auto;
		width: 100%;
		height: auto;
		padding: 10px 20px;
	}
	.mov-topics_wrap:hover {
		border-radius: 0;
	}
	.mov-topics_heading,
	.mov-topics_date,
	.mov-topics_title {
		margin: 0 0 5px 0;
	}
	.mov-topics_heading h3 {
		font-size: 1rem;
		margin-right: 0.5rem;
		float: left;
	}
	.mov-topics_heading p {
		font-size: 0.8rem;
		line-height: 2;
		float: left;
	}
	.mov-topics_title p {
		font-size: 1rem;
	}
	.mov-topics_date p.date {
		font-size: 0.8rem;
		/*float: left;*/
		padding-right: 0.5rem;
	}
	.mov-topics_date p.category {
		/*float: left;*/
		font-size: 0.6rem;
	}
}
@media screen and (max-width: 768px){
	.mov-topics {
		width: 100%;
	}
	.mov-topics_wrap {
		display: grid;
		grid-template-columns: 100%;
	}
	.mov-topics_heading {
		display: inline-flex;
		justify-content: flex-start;
	}
	.mov-topics_date {
		display: inline-flex;
		justify-content: flex-start;
	}
}

/*ボトムmvまわり------------------------------------------------------------------------------------------------------------------*/
/* ボトムmv用catch */
.mv h2.btm_mv_catch {
	font-size: 2rem;
	display: flex;
    align-items: center;
	text-align: left;
}
@media screen and (max-width: 767px){
	.mv h2.btm_mv_catch {
		font-size: 1rem;
		height: 60%;
	}
}
/* ボトムmv用-SWIPERサイズ・画像位置*/
.swiper {
    width: 100%;
    height: 100vh;
}
.swiper-slide img {
	position: relative;
	top: -20%;
}
@media (min-width: 768px) and (max-width: 1023px) {
	.swiper {
		height: auto;
	}
	.swiper-slide img {
		top: 0;
	}
}
@media screen and (max-width: 767px){
	.swiper {
		height: auto;
	}
	.swiper-slide img {
		top: 0;
	}
}

/*各種SWIPER設定------------------------------------------------------------------------------------------------------------------*/
/*Jクレジットプロジェクト*/
.swiper_jcredit1 {
    width: 100%;
}
.swiper_jcredit1 .swiper-slide img {
	position: relative;
	top: -20%;
}
@media (min-width: 768px) and (max-width: 1023px) {
	.swiper_jcredit1  {
		height: auto;
	}
	.swiper_jcredit1 .swiper-slide img {
		top: 0;
	}
}
@media screen and (max-width: 767px){
	.swiper_jcredit1  {
		height: auto;
	}
	.swiper_jcredit1 .swiper-slide img {
		top: 0;
	}
}
/*SWIPER-採用情報*/
.swiper_recruit1 {
	overflow: hidden;
}
.swiper_recruit1 div.swiper-slide img {
	width: auto;
	height: 240px;
}
/*SWIPERスライド一定速度*/
.swiper_recruit1 div.swiper-wrapper {
  transition-timing-function: linear;
}
@media screen and (max-width: 767px){
	.swiper_recruit1 div.swiper-slide img {
		width: 100%;
		height: auto;
	}
}
.swiper_recruit2 {
	overflow: hidden;
	height: 100%;
}
.swiper_recruit2 div.swiper-slide img {
	width: 100%;
	height: auto;
}
/*SWIPERスライド一定速度*/
.swiper_recruit2 div.swiper-wrapper {
  transition-timing-function: linear;
}
@media screen and (max-width: 767px){
	.swiper_recruit2 {
		height: 150px;
	}
	.swiper_recruit2 div.swiper-slide img {
		width: 150px;
	}
}
/*SWIPER-森林管理*/
.swiper-business1 {
	margin: 20px 0;
}
.swiper-business1 div.swiper {
  width: 100%;
  height: 300px;
}

.swiper-business1 div.swiper-slide {
  width: 100%;
  height: 300px;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #303e31;
  font-size: 0.9rem;
  line-height: 1.5;
  font-weight: 700;
}
.swiper-business1 div.slideframe {
	background-color: #fff;
	border-radius: 5px;
}
.swiper-business1 div.innerbox {
	width: 100%;
	padding: 0 35px;
}
.swiper-business1 div.innerbox img {
	width: 100%;
	margin: 10px 0;
}
.swiper-business1 div.innerbox img.photo_vertical {
	width: 56.25%;
	left: 50%;
	transform: translateX(-50%);
}
.swiper-business1 div.innerbox p {
	font-size: 12px;
	text-indent: -1em;
	padding-left: 1em;
	margin-bottom: 0;
}
.swiper-business1 div.innerbox p.kanrimenu_cap {
	font-size: 10px;
	text-align: right;
	line-height: 1;
}
.swiper-business1 div.innerbox div.kanrimenu_text {
	font-size: 12px;
	font-weight: 400;
}
.swiper-business1 div.innerbox p.btm_text {
	font-size: 10px;
	text-indent: 0;
	padding-left: 0;
}
@media screen and (max-width: 768px){
	.swiper-business1 div.innerbox {
		padding: 0 55px;
	}
}
/* 矢印カスタマイズ */
.swiper-business1 .swiper-button-prev:after,
.swiper-business1 .swiper-button-next:after {
  content: "";
  width: 1rem;
  height: 1rem;
  border: 0;
  border-top: solid 3px #317f63;
  border-right: solid 3px #317f63;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
.swiper-business1 .swiper-button-prev:before {
  border-bottom: 20px solid transparent;
  border-right: 30px solid #317f63;
  border-top: 20px solid transparent;
}
.swiper-business1 .swiper-button-prev:after {
  transform: rotate(-135deg);
}
.swiper-business1 .swiper-button-next:before {
  border-bottom: 20px solid transparent;
  border-left: 30px solid #317f63;
  border-top: 20px solid transparent;
}
.swiper-business1 .swiper-button-next:after {
  transform: rotate(45deg);
}
/*SWIPER-各事業スライド*/
.swiper-business2 {
	margin: 10px 0;
	width: 100%;
}
.swiper-business2 div.swiper {
	width: 100%;
	max-height: 440px;
}
.swiper-business2 div.swiper-wrapper {
	text-align: center;
}
.swiper-business2 div.swiper-slide {
	width: 100%;
	max-height: 400px;
	display: flex;
	justify-content: center;
	align-items: center;
}
.swiper-business2 .swiper-pagination-bullet {
	background-color: #317f63;
}
.swiper-business2 div.swiper-slide img {
	top: 0;
	width: 100%;
}
.swiper-business2 div.swiper-slide img.photo_vertical {
	width: 56.25%;
}
.swiper-business2 div.slide_innerbox {
	width: 100%;
}
.swiper-business2 p.gallery1_cap {
	font-size: 12px;
	text-align: center;
	line-height: 2;
}
.swiper-business2 .swiper-pagination-fraction {
	font-size: 0.8rem;
}
@media screen and (max-width: 767px){
	.swiper-business2 {
		margin: 0 auto;
		max-width: 75%;
	}
	.swiper-business2 div.swiper {
		height: 320px;
	}
}
/*SWIPER-各事業スライド-autoplay*/
.swiper-business3 {
	margin: 10px 0;
	width: 100%;
}
.swiper-business3 div.swiper {
	width: 100%;
	max-height: 440px;
}
.swiper-business3 div.swiper-wrapper {
	text-align: center;
}
.swiper-business3 div.swiper-slide {
	width: 100%;
	max-height: 400px;
	display: flex;
	justify-content: center;
	align-items: center;
}
.swiper-business3 .swiper-pagination-bullet {
	background-color: #317f63;
}
.swiper-business3 div.swiper-slide img {
	top: 0;
	width: 100%;
}
.swiper-business3 div.swiper-slide img.photo_vertical {
	width: 56.25%;
}
.swiper-business3 div.slide_innerbox {
	width: 100%;
}
.swiper-business3 p.gallery1_cap {
	font-size: 12px;
	text-align: center;
	line-height: 2;
}
.swiper-business3 .swiper-pagination-fraction {
	font-size: 0.8rem;
}
@media screen and (max-width: 767px){
	.swiper-business3 {
		margin: 0 auto;
		max-width: 75%;
	}
	.swiper-business3 div.swiper {
		height: 320px;
	}
}
/*SWIPER-組合案内*/
.swiper-profile1 {
	margin: 10px 0;
	width: 100%;
	max-width: 300px;
}
.swiper-profile1 div.swiper {
	width: 100%;
	height: 260px;
}
.swiper-profile1 div.swiper-wrapper {
	text-align: center;
}
.swiper-profile1 div.swiper-slide {
	width: 100%;
	height: 225px;
	display: flex;
	justify-content: center;
	align-items: center;
}
.swiper-profile1 .swiper-pagination-bullet {
	background-color: #317f63;
}
.swiper-profile1 div.swiper-slide img {
	top: 0;
	width: 100%;
	
}
.swiper-profile1 div.swiper-slide img.photo_vertical {
	width: 56.25%;
}
.swiper-profile1 div.slide_innerbox {
	width: 100%;
}
.swiper-profile1 p.gallery1_cap {
	font-size: 12px;
	text-align: center;
	line-height: 2;
}
.swiper-profile1 .swiper-pagination-fraction {
	font-size: 0.8rem;
}
@media screen and (max-width: 767px){
	.swiper-profile1 {
		margin: 0 auto;
	}
	.swiper-profile1 div.swiper {
		height: 270px;
	}
}
/*SWIPER-ギャラリー*/
.swiper-gallery1 {
	margin: 20px 0;
	width: 100%;
	max-width: 300px;
}
.swiper-gallery1 div.swiper {
	/*スライダーの幅と高さを調整*/
	width: 100%;
	height: 300px;
}
.swiper-gallery1 div.swiper-wrapper {
	text-align: center;
}
.swiper-gallery1 div.swiper-slide {
	/*スライド要素の幅と高さを調整*/
	width: 100%;
	/*height: 100%;*/
	height: 300px;

	/*テキストの位置調整*/
	display: flex;
	justify-content: center;
	align-items: center;
}
/*ページネーション-バレット上書き*/
.swiper-gallery1 .swiper-pagination-bullet {
	background-color: #317f63;
}
.swiper-gallery1 div.swiper-slide img {
	/*メインビジュアルの位置調整を打消し*/
	top: 0;
	width: 100%;
	
}
.swiper-gallery1 div.slide_innerbox {
	width: 100%;
}
.swiper-gallery1 p.gallery1_cap {
	font-size: 12px;
	text-align: center;
	line-height: 2;
}
/*ページネーション-分数上書き*/
.swiper-gallery1 .swiper-pagination-fraction {
	font-size: 0.8rem;
}
@media screen and (max-width: 767px){
	.swiper-gallery1 {
		margin: 0 auto;
	}
}

/*共用ボックス------------------------------------------------------------------------------------------------------------------*/
/* コンテナ */
.container {
	margin: 0 auto;
}
/* セクションボックス */
.section_box {
	padding: 50px 100px;
	margin-bottom: 20px;
	margin: 0 auto;
	max-width: 1280px;
}
@media screen and (max-width: 1024px){
	.section_box {
		padding: 20px;
	}
}

/*カラー------------------------------------------------------------------------------------------------------------------*/
.bg_lgreen1 {
	background-color: #d9e9e1;
}
.bg_lgreen2 {
	background-color: #e9f3d2;
}
.bg_lgray1 {
	background-color: #f7f8f8;
}
.bg_lgray2 {
	background-color: #fbfbfb;
}
.box_green1 {
	border: solid 1px #317f63;
}
.box_green2 {
	border: solid 1px #22ac38;
}
.color_green1 {
	color: #317f63;
}
.color_green2 {
	color: #22ac38;
}
.color_orange {
	color: #EE7700;
}
.btmline_green1 {
	border-bottom: solid 1px #317f63;
}
@media screen and (max-width: 768px){
	.btmline_green1 {
		margin-bottom: 10px;
		padding-bottom: 10px;
	}
}

/*関連記事装飾------------------------------------------------------------------------------------------------------------------*/
/* 日付・カテゴリー・タグ・タイトル */
.date {
	font-size: 0.8rem;
	margin-top: 3px;
}
.category {
	font-size: 0.7rem;
	background-color: #303e31;
	color: #fff;
	text-align: center;
	padding: 0 5px 2px 5px;
	display: inline-block;
	vertical-align: top;
	margin-top: 3px;
	margin-right: 5px;
}
.category-list a {
	font-size: 0.7rem;
	background-color: #303e31;
	color: #fff;
	text-align: center;
	padding: 0 5px 2px 5px;
	display: inline-block;
	vertical-align: top;
	margin-top: 3px;
	margin-right: 5px;
}
.tag {
	font-size: 0.7rem;
	background-color: #fff;
	color: #303e31;
	border: #303e31 1px solid;
	border-radius: 30px;
	text-align: center;
	padding: 0 5px 2px 5px;
	display: inline-block;
	vertical-align: top;
	margin-top: 3px;
	margin-right: 5px;
}
.title {
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.5;
}
@media screen and (max-width: 1024px){
	.date {
		font-size: 0.8rem;
		padding-right: 0.5rem;
	}
	.category {
		font-size: 0.7rem;
	}
	.tag {
		font-size: 0.7rem;
	}
}

/*文字装飾------------------------------------------------------------------------------------------------------------------*/
/* 文字フチどり */
.outer_text {
	color: #303e31;
	text-shadow: 1px 1px 0 #fff,-1px 1px 0 #fff,-1px -1px 0 #fff,1px -1px 0 #fff,10px 6px 0 #e9d9c1;
}
.txtshadow_white {
	color: #303e31;
	text-shadow:10px 6px 0 #fff;
}

/*mainまわり------------------------------------------------------------------------------------------------------------------*/
/* メイン */
main {
}
@media screen and (max-width: 768px){
	main {
		position: relative;
	}
}
/* コンテンツ */
.contents {
	width: 100%;
}
/* 下層ページコンテンツ */
.lw_contents {
	padding-top: 100px;
	background-color: #fff;
}
/* リンクボタン */
.linkbtn {
	text-align: right;
	min-height: 40px;
	margin: 0;
	z-index: 10;
}
.linkbtn svg {
	margin-top: 20px;
	width: auto;
	height: 40px;
	fill: #303e31;
	transition: all .3s;
}
.linkbtn svg text {
	font-weight: 700;
	font-size: 24px;
}
.linkbtn svg:hover {
	fill: #22ac38;
	transition: all .3s;
	transform: translateX(10px);
}
.linkbtn svg.white {
	fill: #fff;
}
.linkbtn svg.white:hover {
	fill: #22ac38;
}
/*Top-ニュースまわり------------------------------------------------------------------------------------------------------------------*/
/* Top-ニュースリスト */
.top_newslist_header {
	width: 100%;
	padding: 100px 0;
	background: linear-gradient(180deg, #317f63 0%, #317f63 30%, #fbfbfb 30%, #fbfbfb 100%);
}
.top_newslist {
	width: 100%;
	margin: 0 auto;
	background-color: #fff;
}
.top_newslist ul {
	text-align: left;
	margin: 20px auto;
	border-top: #ccc 1px solid;
}
.top_newslist li {
	padding: 20px 5px;
	border-bottom: #ccc 1px solid;
}
.top_newslist li:hover {
	background-color: rgba(143,195,31,0.1);/*#8fc31f*/
	transition: all .3s;
}
.top_newslist_wrap {
	display: grid;
	grid-template-columns: 100px 120px auto;
}
@media screen and (max-width: 768px){
	.top_newslist_header {
		padding: 50px 0;
		background: none;
	}
	.top_newslist_wrap {
		display: grid;
		grid-template-columns: fit-content(100%);
	}
	.top_newslist_wrap div {
		margin-bottom: 5px;
	}
}

/*Top-Jクレジットまわり------------------------------------------------------------------------------------------------------------------*/
/* Top-Jクレジット */
.top_jcredit {
	width: 100%;
	margin: 0 auto;
}
.top_jcredit_inner {
	width: 50%;
	padding: 20px 40px;
	background-color: rgba(255,255,255,0.9);/*#fff*/
}
.top_jcredit_inner a {
	width: 50%;
}
.top_jcredit_wrap {
	display: grid;
	grid-template-columns: 100%;
	margin: 20px auto;
	line-height: 1.5;
}
.bgimg_jcredit {
	background: url("../images/mv2.jpg") no-repeat center center / cover;
}
@media screen and (max-width: 768px){
	.top_jcredit_inner {
		width: 100%;
		padding: 20px;
	}
	.top_jcredit_wrap {
		/*flex-direction: column;*/
		display: grid;
		grid-template-columns: fit-content(100%);
	}
}

/*Top-組合案内まわり------------------------------------------------------------------------------------------------------------------*/
/* Top-組合案内 */
.top_profile {
	width: 100%;
	margin: 0 auto;
}
.top_business_wrap {
	width: 100%;
	position: relative;
}
.top_business_wrap ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
}
.top_business_wrap li {
	width: 30%;
    margin: 20px 0;
	text-align: center;
	align-items: center;
	font-size: 1.2rem;
	font-weight: 700;
}
.top_business_wrap li::after {
	content: '';
	display: flex;
	text-align: center;
	justify-content: center;
	align-items: center;
	width: 100%;
}
.top_business_wrap li:hover {
	opacity: 0.6;
	transition: all .3s;
}
/* 事業ボタン */
.top_business_wrap li.btn_management {
	background: url("../images/bg_btn_management_s001.jpg")no-repeat center -30px / cover;
	color: #fff;
	text-shadow: 0px 0px 3px #111;
}
.top_business_wrap li.btn_maintenance {
	background: url("../images/bg_btn_maintenance_c001.jpg")no-repeat center center / cover;
	color: #fff;
	text-shadow: 0px 0px 3px #111;
}
.top_business_wrap li.btn_felling {
	background: url("../images/bg_btn_felling_bassaicrane1-4.jpg")no-repeat center -200px / cover;
	color: #fff;
	text-shadow: 0px 0px 3px #111;
}
.top_business_wrap li.btn_jcredit {
	background: url("../images/bg_btn_jcredit_m_takehara001.jpg")no-repeat center center / cover;
	color: #fff;
	text-shadow: 0px 0px 3px #111;
}
.top_business_wrap li.btn_woodproducts {
	background: url("../images/bg_btn_woodproducts_sugibashi2.jpg")no-repeat center -200px / cover;
	color: #fff;
	text-shadow: 0px 0px 3px #111;
}
.top_business_wrap li.btn_stihlshop {
	background: url("../images/pho_stihlshop_gaikan.jpg")no-repeat center center / cover;
	color: #fff;
	text-shadow: 0px 0px 3px #111;
}
.top_business_wrap li a {
	display: block;
	padding: 50px 0;
}
@media screen and (max-width: 768px){
	.top_business_wrap li {
		width: 100%;
		margin: 20px 0 0;
	}
	.top_business_wrap li:nth-last-child(1) {
		width: 100%;
		margin: 20px 0 20px;
	}
}

/*Top-組合だよりまわり------------------------------------------------------------------------------------------------------------------*/
/* Top-組合だより */
.top_report {
	width: 100%;
	margin: 0 auto;
	padding-bottom: 0;
	line-height: 1.5;
	display: grid;
	grid-template-columns: 60% 40%;
}
.top_report_inner {
	width: 50%;
	padding: 20px 40px;
}
.top_report_wrap {
	display: grid;
	grid-template-columns: 100%;
	margin: 20px auto;
	padding-right: 30px;
}
.top_report_wrap2 {
	display: grid;
	grid-template-columns: 180px auto;
	margin: 20px auto;
	padding-left: 30px;
}
.top_report_wrap2 img {
	max-width: 180px;
	padding-right: 10px;
}
.latest {
	font-size: 2.4rem;
}
.report_balloon {
	transform: rotate(15deg);
	margin-bottom: 10px;
}
/* Top-組合だより-関連記事 */
.top_report_relation {
	width: 100%;
	margin: 20px auto;
	padding-top: 0;
	display: grid;
	grid-template-columns: 100%;
}
.top_report_relation_heading h4 {
	padding-right: 0.5rem;
	position: relative;
	width: 100%;
	margin-bottom: 20px;
}
.top_report_relation_heading h4::after {
	content: '';
	position: absolute;
	top: 1.4rem;
	left: 16.5rem;
	right: 0;
	border-top: 1px solid #303e31;
}
.report_relation_wrap {
	width: 100%;
	margin: 20px auto;
	padding-bottom: 0;
	display: grid;
	grid-template-columns: 25% 25% 25% 25%;
}
.report_relation_wrap div.card {
	padding: 10px;
	margin: 0 10px 30px 10px;
	background-color: #fff;
	border: solid 1px #fff;
	transition: all .3s;
}
.report_relation_wrap div.card:hover {
	border: solid 1px #317f63;
	transition: all .3s;
}
.report_relation_wrap div.card img.card_img {
	width: 100%;
}
.report_relation_wrap div.card_content {
	margin-top: 10px;
}
.report_relation_wrap p.card_title {
	font-size: 1rem;
	line-height: 1.5;
	font-weight: 700;
}
@media screen and (max-width: 768px){
	.top_report {
		display: grid;
		grid-template-columns: fit-content(100%);
	}
	.top_report_inner {
		width: 100%;
	}
	.top_report_wrap {
		display: grid;
		grid-template-columns: fit-content(100%);
		padding-right: 0;
	}
	.top_report_wrap2 {
		grid-template-columns: 50% 50%;
		padding-left: 0;
	}
	.top_report_wrap2 img {
		max-width: 150px;
	}
	.top_report_relation_heading h4::after {
		top: 1.2rem;
		left: 14rem;
	}
	.report_relation_wrap {
		grid-template-columns: fit-content(100%);
	}
	.report_relation_wrap div.card {
		margin: 0;
		margin-bottom: 30px;
	}
	.report_relation_wrap div.card_content {
		margin-top: 0;
		background: #fff;
		padding: 5px 20px 20px;
	}
}

/*Top-採用情報まわり------------------------------------------------------------------------------------------------------------------*/
/* Top-採用情報 */
.top_recruit {
	width: 100%;
	margin: 0 auto;
	padding-bottom: 0;
	display: grid;
	grid-template-columns: 50% 50%;
}
.top_recruit_inner {
	width: 100%;
	padding: 20px 40px;
}
.top_recruit_wrap {
	display: grid;
	grid-template-columns: 100%;
	margin: 20px auto;
}
.top_recruit_wrap img {
	width: 100%;
	height: auto;
}
.top_recruit_catch {
	position: relative;
	top: 0;
	left: -120px;
	z-index: 1;
	animation-delay: 1s;
}
.top_recruit_catch h3 {
	position: relative;
	text-align: center;
	font-size: 40px;
	line-height: 2rem;
	margin: 0 60px;
	transform: rotate(-15deg);
	filter: drop-shadow(-2px 3px 0 rgb(255, 255, 255));
}
.top_recruit_catch span {
	font-size: 24px;
}
.top_recruit_catch h3::before {
	position: absolute;
	content: "";
	top: 50%;
	left: 0;
	width: 100px;
	height: 3px;
	background-color: #303e31;
	transform: rotate(60deg);
}
.top_recruit_wrap h3::after {
	position: absolute;
	content: "";
	top: 50%;
	right: 0;
	width: 100px;
	height: 3px;
	background-color: #303e31;
	transform: rotate(-60deg);
}
.top_recruit_wrap2 {
	display: grid;
	grid-template-columns: 100%;
	margin: 50px auto 20px;
}
.top_recruit_wrap2 h4 {
	font-size: 2rem;
	font-weight: 700;
	color: #ea5514;
	margin-bottom: 20px;
}
.top_recruit_wrap2 p {
	line-height: 1.5;
}
.entrypage_box {
	text-align: right;
}
.entrypage_btn {
	width: 100%;
	border-radius: 5px;
	display: inline-block;
	margin: 20px auto;
	padding: 30px 20px;
	text-align: center;
	font-size: 2rem;
	font-weight: 700;
	line-height: 1;
	color: #fff;
	background-color: #317f63;
	border: 1px solid #317f63;
}
.entrypage_btn:hover {
	color: #22ac38;
	background-color: #fff;
	border: 1px solid #22ac38;
	transition: all .3s;
}
@media screen and (max-width: 768px){
	.top_recruit {
		grid-template-columns: fit-content(100%);
		flex-direction: column-reverse;
	}
	.top_recruit_inner {
		width: 100%;
		padding: 0;
	}
	.top_recruit_wrap {
		display: grid;
		grid-template-columns: fit-content(100%);
	}
	.top_recruit_catch {
		top: 0px;
		left: -45px;
	}
	.top_recruit_catch h3 {
		line-height: 1.5rem;
		padding: 0 30px;
		margin: 0 30px;
	}
	.top_recruit_catch span {
		font-size: 16px;
	}
	.top_recruit_catch h3::before {
		width: 60px;
		height: 2px;
	}
	.top_recruit_wrap h3::after {
		width: 60px;
		height: 2px;
	}
	.top_recruit_wrap2 {
		display: grid;
		grid-template-columns: fit-content(100%);
	}
	.top_recruit_wrap2 h4 {
		font-size: 1.5rem;
	}
	.entrypage_btn {
		font-size: 1.2rem;
	}
}

/*Top-フリーエリアまわり------------------------------------------------------------------------------------------------------------------*/
/* Top-フリーエリア */
.top_freearea {
	width: 100%;
	margin: 0 auto;
}
.top_freearea_inner {
	margin: 20px auto;
	text-align: center;
}
.yt_container {
	width: 100%;
	aspect-ratio: 16 / 9; /* アスペクト比を16:9に設定 */
	max-width: 560px;/*width="560" height="315"*/
}

/*lw-下層ページまわり------------------------------------------------------------------------------------------------------------------*/
/* lw-下層ページ */
.lw_page_info {
	width: 100%;
	padding: 15px;
}
.lw_page_info h3 {
	font-size: 2.5rem;
	font-weight: 700;
	margin-bottom: 100px;
}
.lw_page_info h4 {
	font-size: 1.5rem;
	font-weight: 700;
	margin: 1rem auto 0.5rem;
}
.lw_page_info img {
	margin: 0 auto;
	height: auto;
}
@media screen and (max-width: 768px) {
	.lw_page_info {
		padding: 15px 0;
	}
	.lw_page_info h3 {
		font-size: 1.6rem;
		margin-bottom: 60px;
	}
	.lw_page_info h4 {
		font-size: 1.2rem;
	}
	.lw_page_info p {
		font-size: 0.9rem;
	}
}

/*調整用------------------------------------------------------------------------------------------------------------------*/
.center {
	text-align: center;
}
.large {
	width: 100%;
}
.medium {
	display: block;
	width: 60%;
}
.small {
	display: block;
	width: 30%;
}
.pline_lgray {
	height: 1px;
	background-color: #ccc;
	margin: 60px 0;
}
.pline_lgreen3 {
	height: 1px;
	border: none;
	background-color: #adccc1;
	margin: 60px 0;
}

/*リンク------------------------------------------------------------------------------------------------------------------*/
.link_dl::after {
	content: '';
	background-image: url("../images/icon_dl.svg");
	display: inline-block;
	width: 16px;
	height: 16px;
	margin-left: 5px;
}
.link_exter::after {
	content: '';
	background-image: url("../images/icon_exterlink.svg");
	display: inline-block;
	width: 16px;
	height: 16px;
	margin-left: 5px;
}
.link_txt a, .link_dl a, .link_exter a {
	color: #22ac38;
	text-decoration: underline;
}

/*lw-ページ上部背景------------------------------------------------------------------------------------------------------------------*/
/*背景固定*/
.bg_fixed {
	width: 100%;
	height: 60vh;
	padding: 0 20px;
	position: fixed;
	z-index: -1;
}

/*
.bg_img_profile {
	background: linear-gradient(rgb(0 0 0 / 0) 50%,rgb(0 0 0 / 0.6) 90%), url("../images/pho_kumiai_gaikan2.jpg") no-repeat center center / cover;
	top: 80px;
}*/

.catch_profile {
	height: auto;
	position: relative;
	font-size: 5rem;
	font-weight: 900;
	line-height: 1;
	padding-top: 50vh;
	text-align: center;
	color: #fff;
}
.bg_img_recruit {
	background: linear-gradient(rgb(0 0 0 / 0) 50%,rgb(0 0 0 / 0.6) 90%), url("../images/pho_mori_image.jpg") no-repeat center center / cover;
}
.catch_recruit {
	height: auto;
	position: relative;
	font-size: 5rem;
	font-weight: 900;
	line-height: 1;
	padding-top: 50vh;
	text-align: center;
	color: #fff;
}
@media screen and (max-width: 768px) {
	.bg_fixed {
		height: 40vh;
	}
	.bg_img_profile, .bg_img_recruit {
		top: 0;
	}
	.catch_profile, .catch_recruit {
		font-size: 3rem;
		padding-top: 20vh;
	}
}

/*お知らせ------------------------------------------------------------------------------------------------------------------*/
/* lw-お知らせ-トピックス */
.lw_news_topics {
	width: 100%;
	margin: 20px auto;
	padding-top: 0;
}
.lw_news_topics_board {
	display: grid;
	grid-template-columns: 40% 60%;
	border: solid 1px #ccc;
	padding: 10px;
	transition: all .3s;
}
.lw_news_topics_board:hover {
	filter: drop-shadow(5px 5px 0 #e9f3d2);
	transition: all .3s;
}
.lw_news_topics_inner {
	width: 100%;
	padding: 15px;
}
.lw_news_topics_inner img {
	width: 100%;
	height: auto;
}
.lw_news_topics_inner p.card_title {
	font-size: 1.5rem;
	font-weight: 700;
	margin-bottom: 1rem;
}
.lw_news_topics_inner p.card_text {
	font-size: 1rem;
}
.lw_news_topics_inner p.card_text::after {
	content: '…';
}
@media screen and (max-width: 768px){
	.lw_news_topics_board {
		grid-template-columns: fit-content(100%);
		padding: 20px;
	}
	.lw_news_topics_inner {
		width: 100%;
		padding: 0;
	}
	.lw_news_topics_inner img {
		margin-bottom: 20px;
	}
	.lw_news_topics_inner p.card_title {
		font-size: 1.2rem;
	}
}
/* lw-関連記事 */
.lw_relation {
	width: 100%;
	margin: 20px auto;
	padding-top: 0;
	display: grid;
	grid-template-columns: 100%;
}
.lw_relation_heading {
	position: relative;
	width: 100%;
	margin-bottom: 20px;
}
.lw_relation_heading h4::after {
	content: '';
	position: absolute;
	top: 49%;
	left: 8rem;
	right: 0;
	border-top: 1px solid #303e31;
}
.lw_relation_wrap {
	width: 100%;
	margin: 50px auto 20px;
	padding-bottom: 0;
	display: grid;
	grid-template-columns: 25% 25% 25% 25%;
}
.lw_relation_wrap.secondpage {/**２ページ目以降の設定**/
	width: 100%;
	margin: 50px auto 20px;
	padding-bottom: 0;
	display: grid;
	grid-template-columns: 33% 33% 33%;
}
.lw_relation_wrap div.card {
	padding: 10px;
	margin-bottom: 30px;
	transition: all .3s;
}
.lw_relation_wrap div.card:hover {
	background-color: #e9f3d2;
	transition: all .3s;
}
.lw_relation_wrap div.card img.card_img {
	width: 100%;
}
.lw_relation_wrap div.card_content {
	margin-top: 10px;
}
.lw_relation_wrap p.card_title {
	font-size: 1rem;
	font-weight: 700;
}
@media screen and (max-width: 768px){
	.lw_relation_heading h4::after {
		left: 7rem;
	}
	.lw_relation_wrap,
	.lw_relation_wrap.secondpage {
		grid-template-columns: 100%;
		padding: 0;
	}
	.lw_relation_wrap div.card {
		margin: 0;
		margin-bottom: 30px;
	}
}
/* カテゴリーリスト */
.categorylist {
	width: 100%;	
	text-align: left;
}
.categorylist p {
	display: inline-block;
	font-size: 14px;
	font-weight: 700;
	line-height: 26px;
	margin: 0 5px;
	width: 80px;
}
.categorylist ul {
	display: inline-block;
	margin-bottom: 10px;
	padding-left: 5px;
}
.categorylist li {
	margin-right: 5px;
}
.categorylist li:hover {
	opacity: 0.6;
	transition: all .3s;
}
@media screen and (max-width: 768px){
	.categorylist p {
		width: auto;
		vertical-align: 2px;
	}
}
/* ページャー */
.pager {
	width: 100%;
	margin: 20px auto;
	text-align: center;
}
.pager p,
.pager .wp-pagenavi a.page.larger,
.pager .wp-pagenavi a.page.smaller,
.pager .wp-pagenavi span {
	display: inline-block;
	font-size: 14px;
	font-weight: 700;
	line-height: 26px;
	text-align: center;
	margin: 0 5px;
}
a.nextpostslink {
	display: inline-block;
	width: unset;
	height: unset;
	font-size: 14px;
	line-height: 26px;
	border: 0px solid #303e31;
	border-radius: unset;
	color: unset;
	text-align: center;
	transition: unset;
	margin: 0 5px;
}

/*
.pager_prev:before,
a.prev.page-numbers:before {
	content: '《';
	margin-right: 5px;
	color: #317f63;
}
.pager_next:after,
a.next.page-numbers:after {
	content: '》';
	margin-left: 5px;
	color: #317f63;
}
	*/
.circle,
a.page.larger,
a.page.smaller   {
	width: 30px;
	height: 30px;
	line-height: 30px;
	border: 1px solid #303e31;
	border-radius: 50%;
	color: #303e31;
	text-align: center;
	transition: all .3s;
}
.circle:hover,
a.page.larger:hover {
	background-color: #e9f3d2;
	transition: all .3s;
}
.circle_selected,
span.current {
	display: inline-block;
	width: 30px;
	height: 30px;
	/*line-height: 30px;*/
	border: 1px solid #303e31;
	background-color: #303e31;
	border-radius: 50%;
	color: #fff;
	/*text-align: center;*/
}

/*lw-詳細ページ------------------------------------------------------------------------------------------------------------------*/
.lw_page {
	width: 100%;
	margin: 20px auto;
	padding-top: 0;
}
.lw_page_head {
	width: 100%;
	padding: 15px 0;
	border-bottom: solid 1px #ccc;
	margin-bottom: 30px;
}
.lw_page_head h3 {
	font-size: 2rem;
	font-weight: 700;
}
.lw_page_container {
	margin-bottom: 30px;
	padding: 15px 0;
}
.lw_page_container h3 {
	font-size: 2.4rem;
}
.lw_page_info {
	width: 100%;
	padding: 15px;
}
.lw_page_info h3 {
	font-size: 2.5rem;
	font-weight: 700;
	margin-bottom: 100px;
}
.lw_page_info h4 {
	font-size: 1.5rem;
	font-weight: 700;
	margin: 1rem auto 0.5rem;
}
.lw_page_info img {
	margin: 0 auto;
	height: auto;
}
.lw_page_info p {
	margin-bottom: 1rem;
}
.lw_page_info ul {
	margin: 10px 0;
}
.lw_page_info li {
	line-height: 2;
}
@media screen and (max-width: 768px) {
	.lw_page_container {
		padding: 15px 0;
	}
	.lw_page_container h3 {
		font-size: 1.8rem;
	}
	.lw_page_info {
		padding: 15px 0;
	}
	.lw_page_info h3 {
		font-size: 1.6rem;
		margin-bottom: 60px;
	}
	.lw_page_info h4 {
		font-size: 1.2rem;
	}
	.lw_page_info p {
		font-size: 0.9rem;
	}
	.logo_stihlshop {
		max-width: 250px;
	}
}

/*フレックスボックス------------------------------------------------------------------------------------------------------------------*/
.flbx_container {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: flex-start;
	margin: 30px 0 60px;
}
.flbx_container_inner {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: flex-start;
	margin: 0;
}
.flbx_item {
	flex-basis: auto;
}
.flbx_item50 {
	flex-basis: 50%;
}
.flbx_item30 {
	flex-basis: 30%;
}
.flbx_item70 {
	flex-basis: 70%;
}
.flbx_item100 {
	flex-basis: 100%;
}
.flbx_item40 {
	flex-basis: 40%;
}
.flbx_item25 {
	flex-basis: 25%;
}
.flbx_item h4,
.flbx_item50 h4,
.flbx_item30 h4,
.flbx_item70 h4,
.flbx_item100 h4,
.flbx_item40 h4,
.flbx_item25 h4 {
	margin: 0 auto 1rem;
}
.blankspace_left {
	padding-left: 30px;
}
.blankspace_right {
	padding-right: 30px;
}
.blankspace_top {
	padding-top: 30px;
}
.blankspace_bottom {
	padding-bottom: 30px;
}
.row_reverse {
	flex-direction: row-reverse;
}
.flbx_container a {
	color: #22ac38;
	text-decoration: underline;
}
@media screen and (max-width: 768px) {
	.flbx_container {
		display: flex;
		flex-direction: column;
		margin: 30px 0 60px;
	}
	.flbx_container_inner {
		display: flex;
		flex-direction: column;
		margin: 0 0 30px;
}
	.flbx_item, .flbx_item50, .flbx_item30, .flbx_item70, .flbx_item100, .flbx_item40, .flbx_item25 {
		/*flex-basis: 100%;*/
		margin: 0 auto;
		width: 100%;
	}
	.flbx_container img {
		padding: 20px 0 0;
	}
	.blankspace_left {
		padding-left: 0;
	}
	.blankspace_right {
		padding-right: 0;
	}
	.row_reverse {
		flex-direction: column;
	}
}
/*インフォボックス*/
.page_info_box {
	padding: 20px;
	width: fit-content;
	margin: 30px auto;
}
.page_info_box_w100 {
	padding: 20px;
	width: 100%;
	margin: 30px auto;
}
.page_info_box_w50 {
	padding: 20px;
	width: 50%;
	margin: 30px auto;
}
.page_info_box_container {
	width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.page_info_box_item1 {
	margin: 0 auto;
}
.page_info_box_item2 {
	margin: 20px auto 0;
}
@media screen and (max-width: 1024px) {
	.page_info_box_w100 h4 {
		font-size: 1.5rem;
	}
}
@media screen and (max-width: 768px) {
	.page_info_box_w100 {
		padding: 10px;
	}
	.page_info_box_w100 h4 {
		font-size: 1.2rem;
	}
	.page_info_box_w50 {
		width: 100%;
	}
}
/*アコーディオンコンテンツ*/
summary {
	cursor: pointer;
	list-style: none;
}
/* Safariで表示されるデフォルトの三角形アイコンを消す */
summary::-webkit-details-marker {
	display: none;
}
details {
	margin: 14px 0;
	padding: 10px;
	height: 20px;
	transition: .5s;
}
details[open] {
	height: fit-content;
	transition: .5s;
}
details[open] .icon {
	transform: rotate(180deg);
}
details[open] .icon_x {
	transform: rotate(225deg);
}
/*アイコン*/
.icon {
	display: block;
	position: relative;
	width: 24px;
	margin: 0 0 0 auto;
	top: -12px;
	flex-shrink: 0;
	transform-origin: center 43%;
	transition: transform 0.4s;
}
.icon::before,
.icon::after {
	content: "";
	position: absolute;
	display: block;
	width: 15px;
	height: 3px;
	background-color: #303e31;
}
.icon::before {
	left: 0;
	transform: rotate(45deg);
}
.icon::after {
    right: 0;
    transform: rotate(-45deg);
}
/*アイコン+*/
.icon_x {
	display: block;
	position: relative;
	width: 24px;
	margin: 0 0 0 auto;
	top: -17px;
	flex-shrink: 0;
	transform-origin: center;
	transition: transform 0.4s;
}
.icon_x::before,
.icon_x::after {
	content: "";
	position: absolute;
	display: block;
	width: 18px;
	height: 2px;
	background-color: #303e31;
}
.icon_x::before {
	left: 3px;
	transform: rotate(0deg);
}
.icon_x::after {
    right: 3px;
    transform: rotate(90deg);
}
.accordion_wrap {
	padding: 0;
}
.accordion {
	border: 1px solid #ddd;
	border-radius: 5px;
	margin-bottom: 10px;
	height: fit-content;
}
.accordion-header {
	padding: 10px;
	font-size: 1.2rem;
	font-weight: 700;
}
.accordion-content {
	padding: 15px;
	line-height: 1.5;
	background-color: #fff;
}
@media screen and (max-width: 768px) {
	.accordion-content {
		padding: 10px;
	}
}
/*インナーボックス*/
.inner_wrap {
	width: 100%;
	margin: 20px auto;
	padding-bottom: 0;
	display: grid;
	grid-template-columns: 33% 33% 33%;
	justify-items: center;
}
@media screen and (max-width: 768px) {
	.inner_wrap {
		grid-template-columns: 100%;
		justify-content: center;
	}
}
/*リストスタイル*/
.list_style1 ul {
	border-top: solid 1px #ccc;
}
.list_style1 li {
	padding: 20px 5px;
	border-bottom: solid 1px #ccc;
}
.list_style1 li::before {
	content: 'ー';
	color: #22ac38;
	margin-right: 5px;
}
.list_style1 ul a {
	color: #22ac38;
	text-decoration: underline;
}
.list_style2 ul {
}
.list_style2 li {
	padding-bottom: 10px;
	font-size: 0.9rem;
	line-height: 1.5;
	text-indent: -12px;
	padding-left: 12px;
}
.list_style2 li::before {
	content: '・';
	color: #22ac38;
	margin-right: 5px;
}
.list_style ul {
}
.list_style li {
	font-size: 0.9rem;
	line-height: 1.5;
}
.list_style li::before {
	content: 'ー';
	color: #22ac38;
	margin-right: 5px;
}
.list_style_stihlshop ul {
	border-top: solid 1px #ccc;
	margin: 0 20px;
}
.list_style_stihlshop ul a {
	color: #303e31;
}
.list_style_stihlshop li {
	padding: 20px 5px;
	border-bottom: solid 1px #ccc;
}
.list_style_stihlshop li::before {
	content: 'ー';
	color: #ee7700;
	margin-right: 5px;
}
@media screen and (max-width: 768px) {
	.list_style_stihlshop ul {
		margin: 0;
		font-size: 0.9rem;
	}
	.list_style_stihlshop li:nth-child(8) {
		border-bottom: none;
	}
}
/*ヘッドライン-センター*/
.heading_line_center {
	margin-top: 80px;
}
.heading_line_center h4 {
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 2rem;
	text-align: center;
	margin-bottom: 2rem;
	position: relative;
}
.heading_line_center h4:before {
  position: absolute;
  top: 1rem;
  left: 0;
  width: 100%;
  height: 1px;
  content: '';
  background: #ccc;
}
.heading_line_center h4 span {
  position: relative;
  padding: 0 0.5rem;
  background: #fff;
}
@media screen and (max-width: 768px) {
	.heading_line_center h4 span {
	  font-size: 1.4rem;
	}
}
/*コンテンツインデックス*/
.contents_index_wrap {
	width: 100%;
	padding: 10px 0;
	display: grid;
	grid-template-columns: 100px auto;
	margin: 0 auto;
}
.contents_heading {
	margin: 0;
}
.contents_heading h3 {
	font-size: 1.2rem;
	margin-bottom:0;

}
.contents_heading p {
	font-size: 0.9rem;
}
.contents_indexlist {
	width: 100%;
	margin: 0;
}
.contents_indexlist ul {
	border-top: solid 1px #ccc;
}
.contents_indexlist li {
	padding: 20px 5px;
	border-bottom: solid 1px #ccc;
}
.contents_indexlist li::before {
	content: 'ー';
	color: #22ac38;
	margin-right: 5px;
}
@media screen and (max-width: 768px) {
	.contents_index_wrap {
		grid-template-columns: 100%;
	}
	.contents_heading {
		display: flex;
	}
	.contents_heading h3 {
		margin-right: 0.5rem;
	}
	.contents_heading p {
		padding-top: 0.5rem;
	}
	.contents_indexlist li {
		padding: 10px 5px;
		font-size: 0.9rem;
	}
}

/*テーブル------------------------------------------------------------------------------------------------------------------*/
/*テーブル-ベーシック-横スクロール*/
.table_basic_wrap {
	padding-bottom: 20px;
	margin-bottom: 50px;
}
.table_basic_wrap a {
	color: #22ac38;
	text-decoration: underline;
}
#table_basic {
	margin: 0 auto;
	padding: 0;
	width: 100%;
}
#table_basic tr {
	background-color: #fff;
	border: 1px solid #bbb;
	padding: .35rem;
}
#table_basic th,
#table_basic td {
	padding: 1rem 10px 1rem 1rem;
	border-right: 1px solid #bbb;
}
#table_basic th {
	background-color: #eee;
	text-align: center;
}
#table_basic td.td_head {
	font-weight: 700;
}
@media screen and (max-width: 768px) {
	.table_basic_wrap {
		overflow-x: auto;
		overflow-y: hidden;
		white-space: nowrap;
	}
	#table_basic {
		overflow-x: scroll;
	}
	#table_basic th {
		text-align: left;
	}
}
/*テーブル-ベーシック-縦積み*/
.table_basic_stack_wrap {
	padding-bottom: 20px;
	margin-bottom: 50px;
}
.table_basic_stack_wrap a {
	color: #22ac38;
	text-decoration: underline;
}
#table_basic_stack {
	margin: 0 auto;
	padding: 0;
	width: 100%;
}
#table_basic_stack tr {
	background-color: #fff;
	border: 1px solid #bbb;
	padding: .35rem;
}
#table_basic_stack th,
#table_basic_stack td {
	padding: 1rem 10px 1rem 1rem;
	border-right: 1px solid #bbb;
}
#table_basic_stack th {
	background-color: #eee;
	text-align: center;
}
#table_basic_stack th.th_txtl {
	text-align: left;
}
#table_basic_stack td.td_head {
	font-weight: 700;
}
@media screen and (max-width: 768px) {
	.table_basic_stack_wrap {
		overflow-x: hidden;
		overflow-y: hidden;
		white-space: wrap;
	}
	#table_basic_stack th {
		display: none;
	}
	#table_basic_stack td {
		display: block;
		width: 100%;
		padding: 10px;
		border-right: none;
	}
	#table_basic_stack td::before {
		content: attr(data-label);
		display: block;
		font-weight: 700;
		text-align: left;
	}	
	#table_basic_stack td.td_head {
		background-color: #eee;
		border-bottom: 1px solid #bbb;
	}
}
.quantity {
	text-align: right;
}
.volume {
	text-align: right;
}
/*テーブル-ベーシック-ライン-横スクロール*/
.table_basic_line_wrap {
	padding-bottom: 20px;
	margin-bottom: 50px;
}
.table_basic_line_wrap a {
	color: #22ac38;
	text-decoration: underline;
}
#table_basic_line {
	margin: 0 auto;
	padding: 0;
	width: 100%;
	border-top: 2px solid #317f63;
	border-bottom: 2px solid #317f63;
}
#table_basic_line tr {
	background-color: #fff;
	padding: .35rem;
}
#table_basic_line th,
#table_basic_line td {
	padding: 1rem 10px 1rem 1rem;
}
#table_basic_line th {
	text-align: center;
}
#table_basic_line td {
	border-top: 1px solid #ccc;
}
#table_basic_line td.td_head {
	font-weight: 700;
}
@media screen and (max-width: 768px) {
	.table_basic_line_wrap {
		overflow-x: auto;
		overflow-y: hidden;
		white-space: nowrap;
	}
	#table_basic_line {
		overflow-x: scroll;
	}
	#table_basic_line th {
		text-align: left;
	}
}
/*テーブル-ベーシック-ライン-縦積み*/
.table_basic_line_stack_wrap {
	padding-bottom: 20px;
	margin-bottom: 50px;
}
.table_basic_line_stack_wrap a {
	color: #22ac38;
	text-decoration: underline;
}
#table_basic_line_stack {
	margin: 0 auto;
	padding: 0;
	width: 100%;
	border-top: 2px solid #317f63;
	border-bottom: 2px solid #317f63;
}
#table_basic_line_stack tr {
	background-color: #fff;
	padding: .35rem;
}
#table_basic_line_stack th,
#table_basic_line_stack td {
	padding: 1rem 10px 1rem 1rem;
}
#table_basic_line_stack th {
	text-align: center;
}
#table_basic_line_stack td {
	border-top: 1px solid #ccc;
}
#table_basic_line_stack td.td_head {
	font-weight: 700;
}
@media screen and (max-width: 768px) {
	.table_basic_line_stack_wrap {
		overflow-x: hidden;
		overflow-y: hidden;
		white-space: wrap;
	}
	#table_basic_line_stack th {
		display: none;
	}
	#table_basic_line_stack td {
		display: flex;
		justify-content: space-between;
		padding: 10px;
	}
	#table_basic_line_stack td::before {
		content: attr(data-label);
		display: block;
		font-weight: 700;
		text-align: left;
		width:100px;
	}
	#table_basic_line_stack td.td_head {
		display: block;
	}
}
/*テーブル*/
.table_wrap {
	width: 100%;
	margin: 0 auto;
}
#table_standard {
	border-collapse: collapse;
	margin: 0 auto;
	padding: 0;
	width: 100%;
	table-layout: auto;
}
#table_standard tr {
	background-color: #fff;
	border: 1px solid #bbb;
	padding: .35rem;
}
#table_standard th,
#table_standard td {
	padding: 1rem 10px 1rem 1rem;
	border-right: 1px solid #bbb;
}
#table_standard th {
	font-size: .85rem;
}
#table_standard thead tr{
	background-color: #d9e9e1;
}
.txt{
	text-align: left;
	font-size: .85rem;
}
.price{
	text-align: right;
}
@media screen and (max-width: 768px) {
	#table_standard {
		border: 0;
		width: 100%
	}
	#table_standard th{
		background-color: #eee;
		display: block;
		border-right: none;
	}
	#table_standard thead {
		border: none;
		/*clip: rect(0 0 0 0);*/
		height: 1px;
		margin: -1px;
		overflow: hidden;
		padding: 0;
		position: absolute;
		width: 1px;
	}
	#table_standard tr {
		display: block;
		margin-bottom: .625rem;
	}
	#table_standard td {
		border-bottom: 1px solid #bbb;
		display: block;
		font-size: .8rem;
		text-align: right;
		position: relative;
		padding: .625rem .625rem .625rem 4rem;
		border-right: none;
	}
	#table_standard td::before {
		content: attr(data-label);
		font-weight: 700;
		position: absolute;
		left: 10px;
	}
	#table_standard td:last-child {
		border-bottom: 0;
	}
}
#table_linetype {
	border-collapse: collapse;
	margin: 0 auto;
	padding: 0;
	width: 100%;
	table-layout: auto;
}
#table_linetype tr {
	background-color: #fff;
	padding: .35rem;
	border-bottom: 1px solid #ccc;
}
#table_linetype tr:last-child{
	border-bottom: 2px solid #317f63;
}
#table_linetype th,
#table_linetype td {
	padding: 1rem 10px 1rem 1rem;
}
#table_linetype th {
	color: #317f63;
}
@media screen and (max-width: 768px) {
	#table_linetype {
		border: 0;
		width:100%
	}
	#table_linetype th{
		display: block;
		border-right: none;
		border-bottom: 2px solid #317f63;
		padding-bottom: .6rem;
		margin-bottom: .6rem;
	}
	#table_linetype thead {
		border: none;
		height: 1px;
		margin: -1px;
		overflow: hidden;
		padding: 0;
		position: absolute;
		width: 1px;
	}
	#table_linetype tr {
		display: block;
		margin-bottom: 2rem;
		border-bottom: 2px solid #317f63;
	}  
	#table_linetype td {
		border-bottom: 1px solid #ccc;
		display: block;
		font-size: .8rem;
		text-align: right;
		position: relative;
		padding: .625rem .625rem .625rem 4rem;
		border-right: none;
	} 
	#table_linetype td::before {
		content: attr(data-label);
		font-weight: bold;
		position: absolute;
		left: 10px;
	}
	#table_linetype td:last-child {
		border-bottom: 0;
	}
}
.table_cap {
	text-align: right;
	font-size: 0.8rem;
}
.text_cap {
	font-size: 0.8rem;
}
.image_cap {
	font-size: 0.8rem;
}
/*コンテンツスライド用*/
.page_info_box_c-slide {
	padding: 0;
	width: 100%;
	margin: 30px auto;
}
.page_info_box_c-slide_img {
	margin: 0 auto;
}
.page_info_box_c-slide_txt {
	margin: auto 0;
	padding: 20px;
}
@media screen and (max-width: 768px) {
	.page_info_box_c-slide {
		padding: 20px;
	}
	.page_info_box_container {
		flex-direction: column;
	}
}
/*ページボトム*/
.page_bottom {
	display: flex;
	flex-wrap: wrap;
	padding: 20px;
	border-top: solid 1px #ccc;
}
.page_bottom_text {
	font-size: 0.8rem;
	font-weight: 700;
}
.page_bottom_text_next {
	text-align: right;
}
.page_bottom_text_prev::before {
	content: '<';
	color: #22ac38;
	margin-right: 5px;
}
.page_bottom_text_next::after {
	content: '>';
	color: #22ac38;
	margin-left: 5px;
}
.page_bottom_title {
	font-size: 1.2rem;
	font-weight: 700;
	margin-bottom: 20px;
}
.page_bottom_prev {
	width: 50%;
	display: block;
	padding: 10px auto;
	border-right: solid 1px #ccc;
	padding-right: 20px;
}
.page_bottom_next {
	width: 50%;
	display: block;
	padding: 10px auto;
	padding-left: 20px;
}
@media screen and (max-width: 768px) {
	.page_bottom {
		padding: 20px 0;
	}
	.page_bottom_title {
		font-size: 0.9rem;
	}
	.page_bottom_prev {
		padding-right: 10px;
	}
	.page_bottom_next {
		padding-left: 10px;
	}
}
.page_bottom_button {	
	width: fit-content;
	margin: 20px auto;
}
.btn_back {
	width: 100%;
	color: #317f63;
	border: solid 2px #317f63;
	border-radius: 100px;
	padding: 10px 25px;
	font-size: 1.2rem;
	font-weight: 700;
	transition: all .3s;
}
.btn_back:hover {
	color: #fff;
	background-color: #317f63;
	border: solid 2px #317f63;
	transition: all .3s;
}

/*組合だより------------------------------------------------------------------------------------------------------------------*/
/* lw-組合だより-最新号 */
.lw_report_latest {
	width: 100%;
	margin: 20px auto;
	padding-top: 0;
}
.lw_report_latest_board {
	display: grid;
	grid-template-columns: 250px auto;
	border: solid 1px #ccc;
	padding: 10px;
	transition: all .3s;
}
.lw_report_latest_board:hover {
	filter: drop-shadow(5px 5px 0 #e9f3d2);
	transition: all .3s;
}
.lw_report_latest_inner {
	width: 100%;
	padding: 15px;
}
.report_cover {
	text-align: center;
}
.report_cover img {
	width: auto;
	height: 100%;
	max-height: 300px;
}
.lw_report_latest_inner p.card_title {
	font-size: 1.4rem;
	margin-bottom: 1rem;
	font-weight: 700;
}
.lw_report_latest_inner p.card_text::after {
	content: '…';
}
@media screen and (max-width: 768px){
	.lw_report_latest_board {
		grid-template-columns: fit-content(100%);
		padding: 20px;
	}
	.lw_report_latest_inner {
		width: 100%;
		padding: 0;
	}
	.lw_report_latest_inner img {
		margin-bottom: 20px;
	}
}

/*Jクレジット------------------------------------------------------------------------------------------------------------------*/
/*Jクレジット-プロジェクトスライド*/
.project_slide {
	position: relative;
	padding: 20px 0;
	display: flex;
	text-align: center;
	align-items: center;
}
.project_slide img {
	width: 75%;
}
.project_slide p {
	position: absolute;
	width: 100%;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	font-size: 1.5rem;
	font-weight: 700;
	color: #fff;
	text-shadow: 0px 0px 3px #111;
}
@media screen and (max-width: 768px){
	.project_slide img {
		width: 100%;
	}
	.project_slide p {
		font-size: 1rem;
	}
}
/*Jクレジット-販売実績*/
.result_item {
	text-align: center;
	margin-bottom: 20px;
}
.result_item p {
	line-height: 1;
	font-weight: 700;
}
.result_title {
	font-size: 1rem;
	color: #317f63;
}
.result_total {
	font-size: 1rem;
	vertical-align: 2rem;
}
.result_figure {
	font-size: 6rem;
	font-weight: 900;
	line-height: 1;
	color: #317f63;
	padding: 0 5px;
}
.result_cap {
	font-size: 0.8rem;
	font-weight: normal;
	margin-top: 20px;
}
@media screen and (max-width: 768px){
	.result_item {
		margin-bottom: 1rem;
	}
	.result_total {
		font-size: 1rem;
		vertical-align: 1.5rem;
	}
	.result_figure {
		font-size: 4rem;
	}
}
/*年度別販売実績テーブル-フレックス-横スクロール*/
.table_basic_r8_wrap, .table_basic_r7_wrap, .table_basic_r6_wrap {
	padding-bottom: 20px;
	margin-bottom: 50px;
}
.table_basic_r8_wrap a, .table_basic_r7_wrap a, .table_basic_r6_wrap a {
	color: #22ac38;
	text-decoration: underline;
}
#table_basic_r8, #table_basic_r7, #table_basic_r6 {
	margin: 0 auto;
	padding: 0;
	width: 100%;
}
#table_basic_r8 tr, #table_basic_r7 tr, #table_basic_r6 tr {
	background-color: #fff;
	border: 1px solid #bbb;
	padding: .35rem;
}
#table_basic_r8 th, #table_basic_r7 th, #table_basic_r6 th,
#table_basic_r8 td, #table_basic_r7 td, #table_basic_r6 td {
	padding: 1rem 10px 1rem 1rem;
	border-right: 1px solid #bbb;
}
#table_basic_r8 th, #table_basic_r7 th, #table_basic_r6 th {
	background-color: #eee;
}
#table_basic_r8 td.table_total,
#table_basic_r7 td.table_total,
#table_basic_r6 td.table_total {
	padding: 1rem 10px 1rem 1rem;
	border: solid 1px #111;
}
#table_basic_r8 td.table_total_quantity,
#table_basic_r7 td.table_total_quantity,
#table_basic_r6 td.table_total_quantity {
	padding: 1rem 10px 1rem 1rem;
	border: solid 1px #111;
}
#table_basic_r8 td.table_blank,
#table_basic_r7 td.table_blank,
#table_basic_r6 td.table_blank {
	padding: 1rem 10px 1rem 1rem;
	border-right: solid 1px #fff;
	border-bottom: solid 1px #fff;
}
.non_public {
	text-align: center;
}
.table_total {
	text-align: center;
	font-weight: 700;
}
.table_total_quantity {
	text-align: right;
	font-weight: 700;
}
@media screen and (max-width: 768px) {
	.table_basic_r8_wrap, .table_basic_r7_wrap, .table_basic_r6_wrap {
		overflow-x: auto;
		overflow-y: hidden;
		white-space: nowrap;
	}
	#table_basic_r8, #table_basic_r7, #table_basic_r6 {
		overflow-x: scroll;
	}
	#table_basic_r8, #table_basic_r7, #table_basic_r6 th {
		text-align: left;
	}
}
/*年度別販売実績テーブル-フレックス-縦積み*/
#table_basic_stack_r8, #table_basic_stack_r7, #table_basic_stack_r6 {
	margin: 0 auto;
	padding: 0;
	width: 100%;
}
#table_basic_stack_r8 tr, #table_basic_stack_r7 tr, #table_basic_stack_r6 tr {
	background-color: #fff;
	border: 1px solid #bbb;
	padding: .35rem;
}
#table_basic_stack_r8 th, #table_basic_stack_r7 th, #table_basic_stack_r6 th,
#table_basic_stack_r8 td, #table_basic_stack_r7 td, #table_basic_stack_r6 td {
	padding: 1rem 10px 1rem 1rem;
	border-right: 1px solid #bbb;
}
#table_basic_stack_r8 th, #table_basic_stack_r7 th, #table_basic_stack_r6 th {
	background-color: #eee;
}
#table_basic_stack_r8 td.table_total,
#table_basic_stack_r7 td.table_total,
#table_basic_stack_r6 td.table_total {
	padding: 1rem 10px 1rem 1rem;
	border: solid 1px #111;
}
#table_basic_stack_r8 td.table_total_quantity,
#table_basic_stack_r7 td.table_total_quantity,
#table_basic_stack_r6 td.table_total_quantity {
	padding: 1rem 10px 1rem 1rem;
	border: solid 1px #111;
}
#table_basic_stack_r8 td.table_blank,
#table_basic_stack_r7 td.table_blank,
#table_basic_stack_r6 td.table_blank {
	padding: 1rem 10px 1rem 1rem;
	border-right: solid 1px #fff;
	border-bottom: solid 1px #fff;
}
#table_basic_stack_r8 td.td_head, 
#table_basic_stack_r7 td.td_head, 
#table_basic_stack_r6 td.td_head {
	font-weight: 700;
}
@media screen and (max-width: 768px) {
	.table_basic_stack_r8_wrap, .table_basic_stack_r7_wrap, .table_basic_stack_r6_wrap {
		overflow-x: hidden;
		overflow-y: hidden;
		white-space: wrap;
	}
	#table_basic_stack_r8 tr, #table_basic_stack_r7 tr, #table_basic_stack_r6 tr {
		border: none;
	}
	#table_basic_stack_r8 th, #table_basic_stack_r7 th, #table_basic_stack_r6 th {
		display: none;
	}
	#table_basic_stack_r8 td, #table_basic_stack_r7 td, #table_basic_stack_r6 td {
		display: block;
		width: 100%;
		padding: 10px 10px 10px 1rem;
		text-indent: -1rem;
		border-right: none;
		line-height: 1.5;
		border-bottom: 1px dotted #ddd;
	}
	#table_basic_stack_r8 td::before, #table_basic_stack_r7 td::before, #table_basic_stack_r6 td::before {
		content: attr(data-label);
		display: block;
		font-weight: 700;
		text-align: left;
	}
	#table_basic_stack_r8 td:nth-last-child(1), #table_basic_stack_r7 td:nth-last-child(1), #table_basic_stack_r6 td:nth-last-child(1) {
		margin-bottom: 30px;
		border-bottom: none;
	}
	.quantity::after {
		content: 't-CO2';
		font-size: 0.6rem;
		font-weight: 700;
		padding-left: 5px;
	}
	#table_basic_stack_r8 td.non_public, #table_basic_stack_r7 td.non_public, #table_basic_stack_r6 td.non_public {
		text-align: left;
		font-weight: 700;
	}
	#table_basic_stack_r8 td.table_total, #table_basic_stack_r7 td.table_total, #table_basic_stack_r6 td.table_total {
		border-bottom: none;
	}
}

/*リクルート------------------------------------------------------------------------------------------------------------------*/
/*採用情報*/
.subtitle_type1 {
	width: 100%;
	padding-left: 10px;
	margin-bottom: 1rem;
	font-size: 1.5rem;
	font-weight: 700;
	color: #fff;
	background-color: #317f63;
	position: relative;
	display: inline-block; 
	padding-bottom: 5px;
	border-bottom: 2px solid #317f63;
}
.subtitle_type1::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	border-bottom: 2px solid #fff;
	transform: translateY(-5px);
}
.section_info_wrap {
	width: 100%;
	margin: 20px auto;
	padding-bottom: 0;
	display: grid;
	grid-template-columns: 33% 33% 33%;
}
.section_info_wrap div.card {
	padding: 10px;
	margin: 0 10px 30px 10px;
	transition: all .3s;
}
.section_info_wrap div.card_content {
	min-height: 120px;
	margin-top: 10px;
	background-color: #fff;
	padding: 10px;
}
.section_info_wrap div.card_content_blank {
	min-height: 120px;
	margin-top: 10px;
	padding: 10px;
}
.section_info_wrap p.name {
	font-size: 1rem;
	font-weight: 700;
	text-align: left;
	margin-bottom: 10px;
}
.section_info_wrap p.info {
	font-size: 0.8rem;
	line-height: 1.5;
	text-align: left;
}
@media screen and (max-width: 768px){
	.section_info_wrap {
		display: grid;
		grid-template-columns: 100%;
	}
	.section_info_wrap div.card {
		margin: 0;
		margin-bottom: 0px;
	}
	.section_info_wrap div.card_content {
		min-height: auto;
		margin-top: 0;
		background: #fff;
		padding: 5px;
	}
}
/*採用フロー*/
.lw_recruit_flow_wrap {
	overflow-x: auto;
	overflow-y: hidden;
	white-space: nowrap;
	display: flex;
	padding: 20px 0;
}
.lw_recruit_flow_item {
	flex-shrink: 0;
	margin-right: 40px;
	transition: all .3s;
	font-size: 1.5rem;
	font-weight: 700;
	background-color: #ccc;
}
.recruit_flow_item {
	position: relative;
    display: inline-block;
    margin: 1.5em 15px 1.5em 0;
    padding: 7px 10px;
    width: 160px;
    height: auto;
    color: #303e31;
    font-size: 16px;
    background: #fff;
    border: solid 2px #303e31;
    white-space: wrap;
    text-align: center;
}
.recruit_flow_item:last-child::before {
	content: none;
}
.recruit_flow_item:before {
	content: "";
	position: absolute;
	top: 50%;
	left: 100%;
	margin-top: -15px;
	border: 15px solid transparent;
	border-left: 15px solid #303e31;
}
.flow_step {
	font-size: 3rem;
	font-weight: 900;
	line-height: 1.5;
}
.recruit_flow_item p {
	font-size: 1rem;
	font-weight: 700;
	line-height: 2;
}
.flow_cap {
	font-size: 0.7rem;
	font-weight: normal;
	line-height: 1.5;
	text-align: left;
	margin: 10px auto;
	width: 100%;
	padding: 0;
}
@media screen and (max-width: 768px){
	.lw_recruit_flow_wrap {
		overflow-x: hidden;
		overflow-y: hidden;
		display: grid;
		grid-template-columns: 100%;
	}
	.recruit_flow_item {
	  width: 100%;
	  height: auto;
	}
	.recruit_flow_item:before {
	  content: "";
	  position: absolute;
	  top: 120%;
	  left: 46%;
	  margin-top: -15px;
	  border: 15px solid transparent;
	  border-top: 15px solid #303e31;
	}
	.flow_cap {
		text-align: center;
	}
}
/*テーブル-応募方法-basic_line*/
.table_entry1_wrap {
	padding-bottom: 20px;
	margin-bottom: 50px;
}
.table_entry1_wrap a {
	color: #22ac38;
	text-decoration: underline;
}
#table_entry1 {
	margin: 0 auto;
	padding: 0;
	width: 100%;
	border-top: 2px solid #317f63;
	border-bottom: 2px solid #317f63;
}
#table_entry1 tr {
	background-color: #fff;
	padding: .35rem;
}
#table_entry1 th,
#table_entry1 td {
	padding: 1rem 10px 1rem 1rem;
}
#table_entry1 th {
	text-align: center;
}
#table_entry1 td {
	border-top: 1px solid #ccc;
}
#table_entry1 td.td_head {
	font-weight: 700;
}
@media screen and (max-width: 768px) {
	.table_entry1_wrap {
		overflow-x: auto;
		overflow-y: hidden;
		white-space: nowrap;
	}
	#table_entry1 {
		overflow-x: scroll;
	}
	#table_entry1 th {
		text-align: left;
	}
}
/*テーブル-募集要項-basic_line_stack*/
.table_job1_wrap {
	padding-bottom: 20px;
	margin-bottom: 50px;
}
.table_job1_wrap a {
	color: #22ac38;
	text-decoration: underline;
}
#table_job1 {
	margin: 0 auto;
	padding: 0;
	width: 100%;
	border-top: 2px solid #317f63;
	border-bottom: 2px solid #317f63;
}
#table_job1 tr {
	background-color: #fff;
	padding: .35rem;
}
#table_job1 th,
#table_job1 td {
	padding: 1rem 10px 1rem 1rem;
}
#table_job1 th {
	text-align: center;
}
#table_job1 td {
	border-top: 1px solid #ccc;
}
#table_job1 td.td_head {
	font-weight: 700;
}
@media screen and (max-width: 768px) {
	.table_job1_wrap {
		overflow-x: hidden;
		overflow-y: hidden;
		white-space: wrap;
	}
	#table_job1 th {
		display: none;
	}
	#table_job1 td {
		display: block;
		width: 100%;
		padding: 10px 0;
	}
	#table_job1 td::before {
		content: attr(data-label);
		display: block;
		font-weight: 700;
		text-align: left;
		width:100px;
	}
	#table_job1 td.td_head {
		display: block;
	}
}
.entry_link_box h4 {
	font-size: 1.8rem
}
@media screen and (max-width: 768px){
	.entry_link_box {
		padding: 0;
	}
	.entry_link_box h4 {
		font-size: 1.5rem
	}
}
.entry_box {
	background-color: #fff;
	padding: 50px;
	align-items: center;
}
.entry_box_item {
	margin: 0 auto;
}
.entry_box h4 {
	margin: 0;
	color: #303e31;
}
.entry_box_item a {
	text-decoration: none;
}
@media screen and (max-width: 768px){
	.entry_box {
		padding: 20px;
	}
	.entry_box h4 {
		font-size: 1.2rem;
		margin-bottom: 1rem;
	}
}
.btn_recruitsite {
	background-color: #20AEE5;
	padding: 40px;
	text-align: center;
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 1.5;
	color: #fff;
	border: 1px solid #20AEE5;
	border-radius: 5px;
	transition: all .3s;
}
.btn_recruitsite:hover {
	background-color: #fff;
	color: #20AEE5;
	border: 1px solid #20AEE5;
	transition: all .3s;
}
.btn_entry_tel {
	background-color: #fff;
	padding: 20px;
	text-align: center;
	font-size: 1.4rem;
	font-weight: 700;
	line-height: 1.5;
	color: #303e31;
	border: 1px solid #303e31;
	border-radius: 5px;
}
.btn_entry_cap {
	font-size: 0.8rem;
	line-height: 1.5;
	color: #303e31;
	margin-top: 10px;
}
@media screen and (max-width: 768px){
	.btn_recruitsite {
		padding: 20px;
		font-size: 1.4rem;
	}
	.btn_entry_tel {
		font-size: 1.2rem;
	}
	.btn_entry_tel a {
		pointer-events: none;
	}
}

/*組合案内------------------------------------------------------------------------------------------------------------------*/
/*組合案内-概要*/
.list_summary ul {
}
.list_summary li {
	padding: 5px;
	text-indent: -2em;
	padding-left: 2em;
	line-height: 1.5;
}
.list_summary li::before {
	content: '一、';
	color: #317f63;
	margin-right: 5px;
}
.list_summary_chikai ul {
}
.list_summary_chikai li {
	padding: 5px;
	text-indent: -1.35rem;
	padding-left: 1.35rem;
	line-height: 1.5;
}
.list_summary_chikai li::before {
	content: '●';
	color: #317f63;
	margin-right: 5px;
}
/*テーブル-組合概要*/
#table_basic_line_1, #table_basic_line_2 {
	margin: 0 auto;
	padding: 0;
	width: 100%;
	border-top: 2px solid #317f63;
	border-bottom: 2px solid #317f63;
}
#table_basic_line_1 tr, #table_basic_line_2 tr {
	background-color: #fff;
	padding: .35rem;
}
#table_basic_line_1 th, #table_basic_line_2 th,
#table_basic_line_1 td,#table_basic_line_2 td {
	padding: 1rem 10px 1rem 1rem;
}
#table_basic_line_1 th, #table_basic_line_2 th {
	text-align: center;
}
#table_basic_line_1 td,#table_basic_line_2 td {
	border-top: 1px solid #ccc;
}
#table_basic_line_2 td.table_blank {
	border-top: 1px solid #fff;
	border-bottom: 1px solid #fff;
}
@media screen and (max-width: 768px) {
	.table_basic_line_2_wrap {
		overflow-x: auto;
		overflow-y: hidden;
		white-space: nowrap;
	}
	#table_basic_line_1, #table_basic_line_2 {
		overflow-x: scroll;
	}
	#table_basic_line_1 th, #table_basic_line_2 th {
		text-align: left;
	}
	#table_basic_line_2 td.detail {
		white-space: normal;
		
	}
}
/*テーブル-各課の事業内容_basic_line_stack*/
.table_business1_wrap {
	padding-bottom: 20px;
	margin-bottom: 50px;
}
.table_business1_wrap a {
	color: #22ac38;
	text-decoration: underline;
}
#table_business1 {
	margin: 0 auto;
	padding: 0;
	width: 100%;
	border-top: 2px solid #317f63;
	border-bottom: 2px solid #317f63;
}
#table_business1 tr {
	background-color: #fff;
	padding: .35rem;
}
#table_business1 th,
#table_business1 td {
	padding: 1rem 10px 1rem 1rem;
}
#table_business1 th {
	text-align: center;
}
#table_business1 td {
	border-top: 1px solid #ccc;
	max-width: 800px;
}
#table_business1 td.td_head {
	font-weight: 700;
}
@media screen and (max-width: 768px) {
	.table_business1_wrap {
		overflow-x: hidden;
		overflow-y: hidden;
		white-space: wrap;
	}
	#table_business1 th {
		display: none;
	}
	#table_business1 td {
		display: inline-block;
		padding: 10px;
		width: 100%;
	}
	#table_business1 td::before {
		content: attr(data-label);
		display: block;
		font-weight: 700;
		text-align: left;
	}
	#table_business1 td.td_head {
		display: block;
		width: 100%;
	}
}
/*事業案内*/
.bnr_business_wrap {
	display: flex;
	justify-content: space-around;
	flex-wrap: wrap;
}
.bnr_business {
	width: 500px;
	border: 1px solid #ddd;
	border-radius: 5px;
	margin-bottom: 10px;
	height: fit-content;
	min-height: 200px;
	padding: 30px;
	transition: all .3s;
}
.bnr_business:hover {
	background-color: #d9e9e1;
	transition: all .3s;
}

/*
.bnr_f_management {
	background: url("../images/bg_btn_management_s001.jpg")no-repeat center center / cover;
	background-blend-mode: luminosity;
	color: #fff;
	text-shadow: 1px 1px 3px #111, 1px 1px 3px #111, 1px 1px 3px #111;
}
.bnr_f_maintenance {
	background: url("../images/bg_btn_maintenance_c001.jpg")no-repeat center center / cover;
	background-blend-mode: luminosity;
	color: #fff;
	text-shadow: 1px 1px 3px #111, 1px 1px 3px #111, 1px 1px 3px #111;
}
.bnr_f_felling {
	background: url("../images/bg_btn_felling_bassaicrane1-4.jpg")no-repeat center center / cover;
	background-blend-mode: luminosity;
	color: #fff;
	text-shadow: 1px 1px 3px #111, 1px 1px 3px #111, 1px 1px 3px #111;
}
.bnr_f_jcredit {
	background: url("../images/bg_btn_jcredit_m_takehara001.jpg")no-repeat center center / cover;
	background-blend-mode: luminosity;
	color: #fff;
	text-shadow: 1px 1px 3px #111, 1px 1px 3px #111, 1px 1px 3px #111;
}
.bnr_f_woodproducts {
	background: url("../images/bg_btn_woodproducts_sugibashi2.jpg")no-repeat center center / cover;
	background-blend-mode: luminosity;
	color: #fff;
	text-shadow: 1px 1px 3px #111, 1px 1px 3px #111, 1px 1px 3px #111;
}
.bnr_f_stihlshop {
	background: url("https://xs017455.xsrv.jp/wp-content/uploads/2025/11/bg_btn_stihlshop_152043retouch-1.jpg")no-repeat center center / cover;
	background-blend-mode: luminosity;
	color: #fff;
	text-shadow: 1px 1px 3px #111, 1px 1px 3px #111, 1px 1px 3px #111;
}
*/

@media screen and (max-width: 768px) {
	.bnr_business_wrap {
		display: block;
	}
	.bnr_business{
		width: 100%;
	}
}

/*部署*/
.dept {
	margin-left: 10px;
	padding: 0 5px 2px 5px;
	font-size: 0.9rem;
	font-weight: 700;
	vertical-align: 4px;
	border: solid 2px #303e31;
}
@media screen and (max-width: 768px) {
	.dept {
		margin-left: 5px;
		padding: 0 3px 1px 3px;
		font-size: 0.8rem;
		vertical-align: 2px;
		border: solid 1px #303e31;
	}
}
/*木製品-画像サイズ*/
.vimg_l {
	display: block;
	max-height: 480px;
}
.product_img {
	text-align: center;
}
.product_img img {
	height: 175px;
	width: auto;
}
.product_img img.vimg_m {
	height: 233px;
	width: auto;
}
.product_img p {
	text-align: left;
}
@media screen and (max-width: 768px) {
	.vimg_l {
		width: 75%;
	}
	.product_img img {
		height: auto;
		width: 100%;
	}
	.product_img img.vimg_s {
		width: 75%;
	}
	.product_img img.vimg_m {
		height: auto;
		width: 75%;
	}
}
/*スチールショップ-QRコード*/
.stihl_qr {
	text-align: center;
}
.stihl_qr img {
	max-width: 200px;
}
@media screen and (max-width: 768px) {
	.stihl_qr img {
		max-width: 150px;
	}
}
/*組合案内-アクセス*/
.access_base_wrap {
	width: 100%;
	margin: 20px auto;
	padding-bottom: 0;
	display: grid;
	grid-template-columns: 33% 33% 33%;
}
.access_base_wrap div.card {
	padding: 10px;
	margin: 0 10px 30px 10px;
	transition: all .3s;
}
.access_base_wrap div.card_content {
	margin-top: 10px;
}
.access_base_wrap p.base_name {
	font-size: 1rem;
	font-weight: 700;
	text-align: center;
}
.access_base_wrap p.base_info {
	font-size: 0.8rem;
	line-height: 1.5;
	text-align: center;
}
.map_container {
	width: 100%;
	aspect-ratio: 16 / 9; /* アスペクト比を16:9に設定 */
	max-width: 1280px;
}
@media screen and (max-width: 768px){
	.access_base_wrap {
		grid-template-columns: 100%;
	}
	.access_base_wrap div.card {
		margin: 0;
		margin-bottom: 30px;
		text-align: center;
	}
	.access_base_wrap div.card img {
		width: 75%;
	}
	.access_base_wrap div.card_content {
		margin-top: 0;
		background: #fff;
		padding: 5px;
	}
}
/*組合案内-リンク集*/
.link_image_wrap {
	width: 100%;
	margin: 20px auto;
	padding-bottom: 0;
	display: grid;
	grid-template-columns: 25% 25% 25% 25%;
}
.link_image_wrap div {
	padding: 10px;
	margin-bottom: 30px;
	margin-right: 20px;
	transition: all .3s;
	display: flex;
	align-items: center;
}
.link_image_wrap img {
	transition: all .3s;
}
.link_image_wrap img:hover {
	transition: all .3s;
	opacity: 0.6;
}
.link_text_wrap {
	width: 100%;
	margin: 20px auto;
}
.link_text_wrap li {
	display: inline-block;
	justify-content: flex-start;
	margin-right: 2rem;
	list-style: none;
}
@media screen and (max-width: 768px) {
	.link_image_wrap {
		grid-template-columns: 50% 50%;
	}
	.link_image_wrap img {
		width: 100%;
	}
	.link_text_wrap li {
		display: block;
		padding-left: 10px;
		margin-right: 0;
	}
}

/*組合員の方へ------------------------------------------------------------------------------------------------------------------*/
/*組合員の方へ*/
a.anchor {
	display: block;
	padding-top: 100px;
	margin-top: -100px;
}
.btn_pdf_dl {
	padding: 20px;
	text-align: left;
	font-size: 1.4rem;
	font-weight: 700;
	line-height: 1;
	color: #fff;
	background-color: #303e31;
	border: 1px solid #303e31;
	margin-bottom: 20px;
}
.btn_pdf_dl:hover {
	color: #303e31;
	background-color: #fff;
	border: 1px solid #303e31;
	transition: all .3s;
}
@media screen and (max-width: 768px){
	.btn_pdf_dl {
		width: 100%;
		padding: 10px;
		font-size: 1rem;
	}
}
.color_red {
	color: #FF0000;
}
.color_purple {
	color: #330033;
}
.list_memapp li {
	margin: 0 0 10px 20px;
	line-height: 1.5;
}
@media screen and (max-width: 768px){
	.list_memapp li {
		font-size: 0.9rem;
	}
}

/*お問い合わせ------------------------------------------------------------------------------------------------------------------*/
/*問い合わせ*/
.contact_tel_box {
	margin: 20px 0;
	padding-bottom: 30px;
}
.contact_tel_box h4 {
	font-size: 1.8rem;
}
.contact_tel_bnr {
	width: fit-content;
	border-radius: 100px;
	display: inline-block;
	margin: 20px auto;
	padding: 20px 30px;
	text-align: center;
	font-size: 2rem;
	font-weight: 700;
	line-height: 1;
	color: #fff;
	background-color: #303e31;
	border: 1px solid #303e31;
}
@media screen and (max-width: 768px){
	.contact_tel_box h4 {
		font-size: 1.5rem
	}
	.contact_tel_bnr {
		font-size: 1.5rem;
	}
}
/*問い合わせフォーム*/
.contact_form_box h4 {
	font-size: 2rem;
	margin-top: 40px;
}
@media screen and (max-width: 768px){
	.contact_form_box h4 {
		font-size: 1.5rem
	}
}
.form {
	margin: 40px auto;
	max-width: 900px;
}
@media screen and (max-width: 768px) {
	.form {
		margin: 40px auto;
	}
}
.form-item {
	border-top: 1px solid #ddd;
	padding-top: 24px;
	padding-bottom: 24px;
	width: 100%;
	display: flex;
	align-items: center;
}
@media screen and (max-width: 768px) {
	.form-item {
		padding-left: 14px;
		padding-right: 14px;
		padding-top: 16px;
		padding-bottom: 16px;
		flex-wrap: wrap;
	}
}
.form-item:nth-child(8) {
	border-bottom: 1px solid #ddd;
}
.form-item-label {
	width: 100%;
	max-width: 420px;
	letter-spacing: 0.05em;
	font-weight: bold;
	font-size: 18px;
	text-align: left;
	margin: 0 auto;
}
@media screen and (max-width: 768px) {
	.form-item-label {
		max-width: inherit;
		display: flex;
		align-items: center;
		font-size: 15px;
	}
}
.form-item-label.ismsg {
  margin-top: 8px;
  margin-bottom: auto;
}
@media screen and (max-width: 768px) {
	.form-item-label.ismsg {
		margin-top: 0;
	}
}
.form-item-label-required {
	border-radius: 6px;
	margin: 8px;
	width: 48px;
	display: inline-block;
	text-align: center;
	background: #e83828;
	color: #fff;
	font-size: 14px;
}
@media screen and (max-width: 768px) {
	.form-item-label-required {
		border-radius: 4px;
		margin: 0 8px 0 0;
		padding-top: 4px;
		padding-bottom: 4px;
		width: 32px;
		font-size: 10px;
	}
}
.form-item-label-optional {
	border-radius: 6px;
	margin: 8px;
	width: 48px;
	display: inline-block;
	text-align: center;
	border: 1px solid #e83828;
	background: #fff;
	font-size: 14px;
}
@media screen and (max-width: 768px) {
	.form-item-label-optional {
		border-radius: 4px;
		margin: 0 8px 0 0;
		padding-top: 4px;
		padding-bottom: 4px;
		width: 32px;
		font-size: 10px;
	}
}
.form-item-radio-group {
	width: 100%;
	max-width: 480px;
	text-align: left;
	margin: 0 auto;
}
.form-item-radio-group li {
	display: inline-block;
	margin-right: 20px;
}
.form-item-radio {
	border: 1px solid #ddd;
	border-radius: 100%;
	width: 20px;
	height: 20px;
	margin-right: 5px;
	background: #fff;
	font-size: 18px;
}
@media screen and (max-width: 768px) {
	.form-item-radio {
		font-size: 15px;
	}
}
.form-item-input {
	border: 1px solid #ddd;
	border-radius: 6px;
	margin: 0 auto;
	padding-left: 1em;
	padding-right: 1em;
	height: 48px;
	flex: 1;
	width: 100%;
	max-width: 480px;
	background: #fff;
	font-size: 18px;
	text-align: left;
}
@media screen and (max-width: 768px) {
	.form-item-input {
		margin-left: 0;
		/*margin-top: 18px;*/
		height: 40px;
		flex: inherit;
		font-size: 15px;
	}
}
.form-item-textarea {
	border: 1px solid #ddd;
	border-radius: 6px;
	margin: 0 auto;
	padding-left: 1em;
	padding-right: 1em;
	height: 216px;
	flex: 1;
	width: 100%;
	max-width: 480px;
	background: #fff;
	font-size: 18px;
	text-align: left;
}
@media screen and (max-width: 768px) {
	.form-item-textarea {
		margin-top: 18px;
		margin-left: 0;
		height: 200px;
		flex: inherit;
		font-size: 15px;
	}
}
.form-item-checkbox {
	border: 1px solid #ddd;
	width: 20px;
	height: 20px;
	margin-right: 5px;
	background: #fff;
	font-size: 18px;
}
@media screen and (max-width: 768px) {
	.form-item-checkbox {
		font-size: 15px;
	}
}
.form-btn {
	border-radius: 6px;
	margin-top: 32px;
	margin-left: auto;
	margin-right: auto;
	padding-top: 20px;
	padding-bottom: 20px;
	width: 280px;
	display: block;
	letter-spacing: 0.05em;
	background: #317f63;
	color: #fff;
	font-weight: bold;
	font-size: 20px;
}
@media screen and (max-width: 768px) {
	.form-btn {
		margin-top: 24px;
		padding-top: 8px;
		padding-bottom: 8px;
		width: 160px;
		font-size: 16px;
	}
}
input::placeholder, textarea::placeholder {
	color: #dedede;
}
input[type="radio"]:checked {
	background-color: #e83828;
	border: 3px solid #fff;
	outline: 1px solid #ddd;
}
input[type="checkbox"] {
	position: relative;
	border: 3px solid #fff;
	outline: 1px solid #ddd;
}
input[type="checkbox"]:checked:before {
	position: absolute;
	top: -1px;
	left: -1px;
	content: '';
	border: 1px solid #ddd;
    border-radius: 100%;
    width:15px;
    height: 15px;
    margin-right: 5px;
    background: #e83828;
    font-size: 18px;
}

.contact_agree_box {
	margin: 40px auto;
	max-width: 900px;
	border-bottom: solid 1px #ddd;
}
.contact_agree_box p.title_agree {
	font-size: 24px;
	font-weight: 700;
}
.contact_agree_box_inner {
	margin: 20px auto;
	padding: 0 40px;
	max-width: 100%;
	text-align: left;
}
.contact_agree_box_inner iframe {
	margin-bottom: 10px;
}
@media screen and (max-width: 768px) {
	.contact_agree_box_inner {
		padding: 0 20px;
	}
}

/*プライバシーポリシー*/
.contact_pp_box {
	padding: 0 10px 10px 10px;
}
.pp_title {
	font-size: 14px;
	font-weight: 700;
	text-align: center;
	margin-bottom: 20px;
}
.contact_pp_box p {
	font-size: 14px;
	line-height: 1.5;
	margin: 20px auto 10px;
}
@media screen and (max-width: 768px) {
	.contact_pp_box p {
		font-size: 12px;
	}
}

/*footerまわり------------------------------------------------------------------------------------------------------------------*/
/* パンくずリスト */
.breadcrumblist {
	background-color: #fff;
	margin: 0;
}
.breadcrumblist a {
	color: #22ac38;
	text-decoration: underline;
}
.breadcrumblist ul {
	max-width: 100%;
	margin: 0;
	list-style: none;
	padding: 0 0 10px 15px;
}
.breadcrumblist li {
	display: inline;
	color: #303e31;
	font-size: 0.8rem;
}
.breadcrumblist li:after {
	content: ' > ';
	color: #ccc;
	padding: 0 0.5rem;
}
.breadcrumblist li:last-child:after {
	content: '';
	padding: 0;
}
@media screen and (max-width: 768px) {
	.breadcrumblist {
	}
	.breadcrumblist ul {
		padding: 0 0 10px 15px;
	}
	.breadcrumblist li {
		font-size: 0.8rem;
		letter-spacing: 0;
	}
}

/* トップへ戻る */
#page-top {
	margin:0 auto;
	position: fixed;
	bottom: 20px;
	right: 20px;
	z-index: 1;
}
#page-top a {
	display: block;
	text-decoration: none;
	text-align: center;
	padding: 0;
	transition: all .3s;
}
#page-top img {
	width: 60px;
	height: 60px;
	margin: 0;
	padding: 8;
	background: #CCC;
	background-color: #303e31;
	transition: all .3s;
}
#page-top img:hover {
	background: #22ac38;
	transition: all .3s;
}
@media screen and (max-width: 768px){
	#page-top {
		bottom: 10px;
		right: 10px;
	}
	#page-top a {
		padding: 0;
		display: block;
	}
	#page-top img {
		width:40px;
		height:40px;
	}
}
/* コンタクト */
.contact_container {
	width: 100%;
	margin: 0 auto;
	padding-top: 30px;
	display: grid;
	grid-template-columns: 100%;
}
.contact_container_wrap {
	width: 100%;
	margin: 20px auto;
	padding-bottom: 0;
	display: grid;
	grid-template-columns: 30% 35% 35%;
}
.contact_container_box {
	margin: 10px 20px;
	text-align: center;
}
.contact_container p.contact_title {
	font-size: 1rem;
	font-weight: 700;
	line-height: 2;
}
.contact_container p.contact_cap {
	font-size: 1rem;
	line-height: 3;
}
.btn_contact_mail, .btn_contact_tel {
	padding: 20px;
	text-align: center;
	font-size: 1.4rem;
	font-weight: 700;
	line-height: 1;
	color: #fff;
	background-color: #303e31;
	border: 1px solid #303e31;
}
.btn_contact_mail:hover {
	color: #303e31;
	background-color: #fff;
	border: 1px solid #303e31;
	transition: all .3s;
}
.contact_tel {
	margin-top: 20px;
	padding: 20px;
	font-size: 1.4rem;
	font-weight: 700;
	line-height: 1;
}
@media screen and (max-width: 1024px){
	.contact_container_wrap {
		display: grid;
		grid-template-columns: 100%;
		margin-bottom: 10px;
		padding: 0;
	}
	.contact_container {
		padding: 20px;
	}
	.contact_container_box {
		margin: 0;
	}
	.contact_container p.contact_title {
		font-size: 0.8rem;
	}
	.contact_container p.contact_cap {
		font-size: 0.8rem;
	}
	.btn_contact_mail, .btn_contact_tel {
		padding: 20px;
		font-size: 1.4rem;
		width: 50%;
		margin: 0 auto;
	}
}
@media screen and (max-width: 768px){
	.btn_contact_mail, .btn_contact_tel {
		width: 100%;
		font-size: 1.2rem;
	}
	.contact_tel {
		width: 100%;
		padding: 0;
		font-size: 1.2rem;
	}
}

/* フッター */
footer {
	background: #fff;
}
.l_footer {
	margin: 0 auto;
	padding: 20px 20px 0;
	min-height: 80px;
}
.l_footer_body, .l_footer_foot {
	display: flex;
	justify-content: space-between;
}
.l_footer_address {
	padding: 10px 0;
}
.l_footer_address p {
	font-size: 0.8rem;
}
@media screen and (max-width: 1024px){
	.l_footer_body {
		flex-direction: column-reverse;
	}
	.l_footer_foot {
		flex-direction: column;
	}
	.l_footer_address p {
		font-size: 0.7rem;
		line-height: 1.5rem;
		text-align: center;
	}
}
/* フッターロゴ */
footer .logo {
}
footer .logo img {
	width: 330px;
	height: auto;
}
@media screen and (max-width: 1024px){
	footer .logo {
		text-align: center;
	}
	footer .logo img {
		max-width: 60%;
		height: auto;
	}
}
/* フッターSNS */
footer .sns {
	position: absolute;
	right: 100px;
}
footer .sns img {
	width: auto;
	height: 31px;
	margin: 0 15px;
	opacity: 0.8;
}
footer .sns img:hover {
	opacity: 1;
	transition: all .3s;
}
@media screen and (max-width: 1024px){
	footer .sns {
		right: 0;
		position: relative;
		padding: 20px 0;
		margin-bottom: 20px;
		text-align: center;
	}
}
/* コピーライト */
.copyright {
	position: absolute;
	right: 100px;
	font-size: 0.6rem;
	text-align: right;
	padding: 10px 0;
}
@media screen and (max-width: 1024px){
	.copyright {
		position:  static;
		text-align: center;
	}
}
