@charset "utf-8";


/* ---------------------------------------
* common
------------------------------------------ */

.btn.sp,.sp{
	display: none;
}

svg{
	width: 100%;
	height: 100%;
}

:root {
	--primary: #008E66;
	--primary02: #004B36;
	--accent: #F95743;
	--col-baige: #F9F4EC;
	--col-gray: #F7FAFC;
	--border: #EBEFF0;
	--font-gray: #adadad;
}

.tac{
	text-align: center;
}

.bg-baige{
	background-color: var(--col-baige);
}

.t-event::after,.p-activity::after,.p-district::after{
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background-color: var(--col-gray);
	position: absolute;
	left: 0;
	top: 0;
	transform: rotate(-4deg);
	border-radius: 20px;
}

.p-district::after{
	background-color: var(--primary);
}

.t-eventWrap,.p-activitywrap,.p-districtWrap{
	position: relative;
	z-index: 2;
}


/* ---------------------------------------
* TOP
------------------------------------------ */
.t-fv {
	padding-top: 10rem;
	overflow: hidden;
	position: relative;
}

.fvparts{
	width: 15.5%;
	position: absolute;
	right: 6rem;
	top: 11rem;
	z-index: -1;
}

.t-fvTtl p span {
	display: inline-block;
	padding: .4rem 2rem;
	border: solid 1px var(--primary);
	color: var(--primary);
	font-size: clamp(14px, 2rem, 24px);
	font-weight: 700;
}

.t-fvTtl h2 {
	font-family: "Dela Gothic One", sans-serif;
	color: var(--primary);
	font-size: clamp(24px, 5.6rem, 64px);
	line-height: 1;
	padding-top: 1rem;
}

.t-fvCont {
	width: 100%;
	padding-top: 4rem;
	overflow: visible;
}

.fv-swiper {
	overflow: visible;
}

.fv-list {
	align-items: flex-start;
}

.fv-listItem {
	width: 72rem;
}

.fv-listItem a {
	display: block;
	position: relative;
}

.fv-listImg {
	position: relative;
	overflow: hidden;
	border-radius: 20px;
}

.fv-listImg .img {
	transition: all .3s;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
}

.fv-listImg .img::after {
	content: "";
	display: block;
	padding-top: 56.25%;
}

.fv-listImg .img::before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,.4);
	position: absolute;
	left: 0;
	top: 0;
}

.fv-listItem a:hover .fv-listImg .img {
	transform: scale(1.05);
}

.fvBottom {
	position: absolute;
	left: 0;
	right: 0;
	bottom: -.1rem;
	margin: 0 auto;
	width: 27.5%;
}

.fv-listTxtWrap {
	width: 100%;
	padding: 0 4rem;
	align-items: flex-end;
	position: absolute;
	left: 0;
	bottom: 4rem;
}

.fv-listTxt .day {
	font-size: clamp(12px, 1.4rem, 16px);
	font-weight: 700;
	padding-bottom: .2rem;
}

.fv-listTxt p:last-of-type {
	font-weight: 700;
	font-size: clamp(12px, 1.8rem, 20px);
	line-height: 1.4;
}

.fv-listBtn {
	width: fit-content;
}

.fv-listBtn p {
	margin-right: 1.6rem;
}

.fv-listBtn p span {
	position: relative;
	display: inline-block;
	font-size: clamp(10px, 1.4rem, 16px);
	font-weight: 700;
}

.fv-listBtn p span::after {
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background-color: #fff;
	position: absolute;
	left: 0;
	bottom: 0;
}

.fv-listIcon {
	position: relative;
	width: 2rem;
	height: 2rem;
}

.fv-listIcon svg {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
}

.fv-category {
	color: var(--primary);
	font-size: clamp(12px, 1.4rem, 16px);
	font-weight: 700;
	opacity: 0;
	transform: translateY(1.6rem);
	transition: opacity .45s ease, transform .45s ease;
}

.fv-listItem.swiper-slide-active .fv-category {
	opacity: 1;
	transform: translateY(0);
}

.fv-listItem.is-cat-hide .fv-category {
	opacity: 0;
	transform: translateY(1.6rem);
}


.t-about{
	padding: 30rem 0 12rem;
}

.t-aboutWrap{
	padding: 24rem 0;
	position: relative;
}

.abparts{
	position: absolute;
}

.abparts01,
.abparts02,
.abparts03,
.abparts04{
	position: absolute;
	will-change: transform;
	transform-origin: center center;
	animation: floatSwing 1s ease-in-out infinite alternate;
}

.abparts01{
	width: 23.8%;
	left: 4rem;
	top: 18rem;
	animation-delay: 0s;
}

.abparts02{
	width: 16.6%;
	right: 12rem;
	top: 18rem;
	animation-delay: -.2s;
}

.abparts03{
	width: 18.4%;
	left: 22rem;
	bottom: 8rem;
	animation-delay: -.4s;
}

.abparts04{
	width: 23.7%;
	right: 19rem;
	bottom: 8rem;
	animation-delay: -.8s;
}

@keyframes floatSwing {
	0% {
		transform: rotate(-3deg);
	}

	100% {
		transform: rotate(3deg);
	}
}

.t-aboutTtl{
	position: absolute;
	left: 11.2rem;
	top: -5rem;
	width: 44.6%;
	transform: rotate(-10deg);
}

.t-aboutBg{
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	margin: 0 auto;
	width: 75.4%;
	z-index: -1;

	animation: rotateBg 80s linear infinite;
	transform-origin: center center;
}

@keyframes rotateBg {
	from {
		transform: rotate(0deg);
	}
	to {
		transform: rotate(360deg);
	}
}

.t-aboutPara p{
	font-weight: 500;
}

.t-aboutPara p:not(:last-of-type){
	padding-bottom: 2.4rem;
}

.t-activity{
	background-color: var(--primary);
	padding: 22rem 0 20rem;
	position: relative;
}

.bar{
	position: absolute;
	left: 0;
}

.barTop{
	top: 0;
}

.barBottom{
	bottom: 0;
}

.t-activityCoont{
	position: relative;
}

.acparts{
	position: absolute;
	right: 8rem;
	top: 12rem;
	width: 20%;
}

.t-activity_l{
	width: 23.8%;
}

.t-activity_r{
	width: 74.6%;
}

.t-activity_listItem{
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	border-radius: 20px;
	position: relative;
}

.t-activity_listItem::after{
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, .6);
	position: absolute;
	left: 0;
	top: 0;
	border-radius: 20px;
}

.t-activity_listItem:not(:last-of-type){
	margin-bottom: 4rem;
}

.t-activity_listItem a{
	position: relative;
	display: block;
	padding: 6rem 4.8rem 4rem;
	border-radius: 20px;
}

.t-activity-listIcon{
	position: absolute;
	width: 8rem;
	height: 8rem;
	right: 4.8rem;
	bottom: 4rem;
	z-index: 2;
	transition: all .3s;
}

.t-activity_listItem:hover a .t-activity-listIcon{
	right: 4rem;
}

.t-activity-listIcon svg{
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
}

.t-activity_listTtl,.t-activity_listPara{
	position: relative;
	z-index:2;
}

.t-activity_listTtl h3{
	font-size: clamp(32px, 5.6rem, 64px);
	line-height: 1;
	font-family: "Dela Gothic One", sans-serif;
}

.t-activity_listPara{
	padding-top: 14rem;
	width: 90%;
}

.t-activity_listPara h4{
	font-size: clamp(16px, 3.2rem, 40px);
	line-height: 1.2;
	font-family: "Dela Gothic One", sans-serif;
	padding-bottom: 2.4rem;
}

.t-activity_listPara p{
	font-weight: 500;
}

.t-areaWrap,.t-reportWrap {
	position: relative;
}

.t-areaparts{
	width: 25%;
	position: absolute;
	right: 0;
	top: -14rem;
	z-index: -1;
}

.reparts{
	width: 24%;
	position: absolute;
	right: 0;
	top: -1rem;
	z-index: -1;
}

.evparts{
	width: 30%;
	position: absolute;
	right: 0;
	top: -6rem;
}

.t-area-l{
	width: 18.5%;
}

.t-area-r{
	width: 69.4%;
}

.t-areaList{
	padding-top: 8rem;
}

.t-areaListItem:not(:last-of-type){
	margin-bottom: 3rem;
}

.t-areaListImgWrap{
	width: 36.7%;
}

.t-areaListTxt{
	width: 56.7%;
}

.t-areaListTtl{
	padding-bottom: 2rem;
}

.t-areaListTtl p{
	display: inline-block;
	padding-left: 1.4rem;
	position: relative;
	font-size: clamp(12px,1.4rem,16px);
}

.t-areaListTtl p::before{
	content: "";
	display: block;
	width: 0.6rem;
	height: 0.6rem;
	border-radius: 100px;
	background-color: var(--accent);
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}

.t-areaListTtl h3{
	font-size: clamp(12px,2.4rem,32px);
	font-weight: 700;
}

.t-areaListTtlWrap.sp{
	display: none;
}

.t-areaListItem a{
	padding: 4rem;
	border-radius: 20px;
	background-color: var(--primary02);
}

.t-areaListItem:last-of-type a{
	background-color: var(--primary);
}

.t-areaListTtlIcon{
	width: 4rem;
	height: 4rem;
	position: relative;
	transition: all .3s;
}

.t-areaListTtlIcon circle,.t-areaListTtlIcon path{
	transition: all .3s;
}

.t-areaListItem:hover .t-areaListTtlIcon circle{
	fill: var(--primary02);
	stroke: #fff;
}

.t-areaListItem:last-of-type:hover .t-areaListTtlIcon circle{
	fill: var(--primary);
	stroke: #fff;
}

.t-areaListItem:hover .t-areaListTtlIcon path{
	stroke: #fff;
}


.t-areaListTtlIcon svg{
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
}

.t-areaListTxt>p{
	font-size: clamp(12px,1.4rem,16px);
}

.t-event{
	position: relative;
	margin-top: 16rem;
	padding: 14rem 0 12rem;
	background-color: var(--primary);
}

.t-admission{
	overflow: hidden;
	padding-top: 20rem;
	background: #008E66;
	background: linear-gradient(180deg, rgba(0, 142, 102, 1) 0%, rgba(0, 142, 102, 1) 85%, rgba(255, 255, 255, 1) 85%, rgba(255, 255, 255, 1) 100%);
}

.p-admission{
	overflow: hidden;
	background-color: var(--primary);
	padding: 16rem 0 8rem;
}

.t-admissionWrap{
	position: relative;
	padding-left: 11.2rem;
}

.t-admissionTtl{
	position: relative;
}

.admissionparts{
	position: absolute;
}

.admissionparts01{
	width: 38.3%;
	right: 3rem;
	top: -12rem;
}

.admissionparts02{
	width: 28.5%;
	left: 12rem;
	top: 18rem;
}

.admissionparts03{
	width: 14.8%;
	top: -9rem;
	left: 36rem;
}

.t-admissionTtl h2{
	font-family: "Dela Gothic One", sans-serif;
	line-height: 1;
	font-size: clamp(32px, 7.2rem, 80px);
}

.t-admissionTxt{
	width: 40.75%;
	margin-left: auto;
	font-weight: 500;
	padding-top: 8rem;
}

.sec03SlideImg{
	width: 201rem;
	margin-right: 3rem;
}

.t-newsWrap{
	padding: 8rem 11.1rem;
	border-radius: 20px;
	background-color: var(--col-gray);
}

.t-newsCont{
	padding: 8rem 11.1rem 0;
}



/* ---------------------------------------
* 日本木青連とは
------------------------------------------ */

.p-about{
	padding: 20rem 0 3rem;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	background-image: url(../img/about/abbg.png);
	position: relative;
}

.p-aboutBottom{
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: 2;
}

.p-aboutMain{
	padding-top: 24rem;
}

.p-aboutMain_l,.p-aboutMain_r{
	width: 49.08%;
}

.p-aboutMain_r{
	padding-top: 4rem;
}

.p-aboutMain_r p{
	line-height: 1.8;
	font-size: clamp(12px,1.6rem,18px);
}

.p-aboutMain_r p:not(:last-of-type){
	padding-bottom: 3rem;
}

.txtSlideAbout{
	padding-top: 16rem;
}

.p-member{
	position: relative;
	padding-bottom: 18rem;
	background-color: var(--primary);
}

.p-memberBottom{
	position: absolute;
	left: 0;
	bottom: 0;
}

.membermess-l{
	width: 38.8%;
}

.membermess-r{
	width: 55.6%;
}

.membermess-r h3{
	font-size: clamp(24px,4rem,48px);
	font-weight: 700;
	line-height: 1.4;
}

.membermessPara{
	padding: 2.4rem 0 4rem;
}

.membermessPara p:not(:last-of-type){
	padding-bottom: 3rem;
}

.membermessname{
	column-gap: 1rem;
}

.boardMember-l{
	width: 38%;
}

.boardMember-l p{
	padding-left: 10rem;
	position: relative;
}

.boardMember-l p::before{
	content: "";
	display: block;
	width: 8rem;
	height: 1px;
	border-radius: 10px;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translatey(-50%);
	background-color: #fff;
}

.boardMember-r{
	width: 61.1%;
}

.boardMember-defList{
	padding: 2.4rem 3rem;
	background-color: #fff;
	border-radius: 20px;
}

.boardMember-defListMore{
	cursor: pointer;
}

.boardMember-defList:not(:last-of-type){
	margin-bottom: 1rem;
}

.boardMember-defTtl{
	color: var(--primary);
	width: 26.2%;
	flex: 0 0 26.2%;
}

.boardMember-defTtl.flex{
	width: 100%;
	flex: unset;
}

.boardMemberIcon{
	width: 3.2rem;
	height: 3.2rem;
	position: relative;
	transition: all .5s;
}

.boardMember-defListMore.is-open .boardMemberIcon{
	transform: rotate(225deg);
}

.boardMemberIcon svg{
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
}

.boardMember-defDesc{
	flex: 1 1 auto;
}

.boardMember-defDesc p:first-of-type{
	width: 35.5%;
	flex: 0 0 35.5%;
	font-size: clamp(12px,1.4rem,16px);
}

.boardMember-defDesc p:last-of-type{
	flex: 1 1 auto;
	font-size: clamp(10px,1.2rem,14px);
	font-weight: 400;
}

.boardMember-subList{
	width: 73.7%;
	margin-left: auto;
	margin-top: 2rem;
	border-top: solid 1px var(--border);
	padding-bottom: 1rem;
}

.boardMember-subList02{
	width: 100%;
}

.boardMember-subListItem{
	padding: 1.6rem 0;
	border-bottom: solid 1px var(--border);
}

.boardMember-subListItem:last-of-type{
	padding-bottom: 0;
	border-bottom: unset;
}

.boardMember-defDesc .boardMember-subListItem02>p{
	font-weight: 500;
	color: #004B36;
	font-size: clamp(12px,1.4rem,16px);
	width: 26.2%;
	flex: 0 0 26.2%;
}

.boardMember-defDesc .boardMember-subListDetail{
	flex: 1 1 auto;
}

.boardMember-defDesc .boardMember-subListDetail p:first-of-type{
	width: 35.5%;
	flex: 0 0 35.5%;
	font-size: clamp(12px,1.4rem,16px);
}

.boardMember-defDesc .boardMember-subListDetail p:last-of-type{
	flex: 1 1 auto;
	font-size: clamp(10px,1.2rem,14px);
	font-weight: 400;
}

.boardMember-defListMore .boardMember-defDesc.more{
	display:none;
}

.outWrap{
	position: relative;
}

.outillust{
	position: absolute;
	left: 6rem;
	bottom: 0;
	width: 18%;
}

.outDetail{
	width: 66.1%;
	margin-left: auto;
	background-color: var(--col-gray);
	padding: 4rem;
	border-radius: 20px;
}

.out-defList:not(:last-of-type){
	padding-bottom: 2.4rem;
	margin-bottom: 2.4rem;
	border-bottom: solid 1px var(--border);
}

.out-defTtl{
	width: 12.6%;
	flex: 0 0 12.6%;
	font-weight: 500;
	color: var(--primary);
	font-size: clamp(10px,1.2rem,14px);
}

.out-defDesc{
	flex: 1 1 auto;
	font-size: clamp(10px,1.2rem,14px);
}

.out-defDesc ul{
	padding-left: 1rem;
}

.out-defDesc li{
	text-indent: -1rem;
}

/* ---------------------------------------
* 活動紹介
------------------------------------------ */

.p-projectAbout{
	position: relative;
	padding-bottom: 4rem;
}

.pageabout{
	padding-left: 17.2rem;
	position: relative;
	z-index: 2;
}

.pageabout_admission{
	padding-left: 0;
}

.pageabout_area{
	padding-right: 6rem;
	padding-bottom: 8rem;
}

.pageaboutCont{
	width: 42.4%;
}

.pageaboutCont_admission{
	width: 49%;
}

.pageaboutPara{
	padding-top: 4rem;
}

.pageabouttImg{
	/* position: absolute;
	right: 0; */
	transform: rotate(4deg);
	margin-top: -20rem;
}

.pageabouttImg_admission{
	margin-top: -28rem;
}

.pageabouttImg_project{
	width: 55.9%;
	/* top: -6rem; */
}

.pageabouttImg_area{
	width: 50.6%;
}

.pageabouttImg_admission{
	width: 43.7%;
}

.p-activity {
	background-color: var(--primary);
	position: relative;
}

.p-activityparts{
	width: 35%;
	position: absolute;
	right: 0;
	top: -7rem;
}

.p-activitylistItem:not(:last-of-type){
	margin-bottom: 4rem;
}

.p-activitylistItem a{
	display: block;
	padding: 4.8rem 4rem 4rem;
	border-radius: 20px;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	position: relative;
}

.p-activitylistItem a::after {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, .6);
	position: absolute;
	left: 0;
	top: 0;
	border-radius: 20px;
}

.p-activity-listIcon{    
	position: absolute;
	width: 8rem;
	height: 8rem;
	right: 4rem;
	bottom: 4rem;
	z-index: 2;
	transition: all .3s;
}
.p-activitylistItem:hover a .p-activity-listIcon{
	right: 3.2rem;
}

.p-activity-listIcon svg {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
}

.p-activityTxt,.p-activityTtlWrap{
	position: relative;
	z-index:2;
}

.p-activityTxt p span{
	display: inline-block;
	background-color: #fff;
	color: var(--primary);
	font-family: "Dela Gothic One", sans-serif;
	padding: 1rem 2rem;
	font-size: clamp(16px, 2.4rem ,32px);
	line-height: 1;
}

.p-activityTtlWrap{
	padding-top: 24rem;
}

.p-activityTtl p span{
	display: inline-block;
	background-color: #fff;
	color: var(--primary);
	padding: 1rem 4rem;
	font-weight: 700;
	font-size: clamp(16px, 2.4rem ,32px);
	line-height: 1;
}

.p-activityTtl h3 p{
	display: inline-block;
	background-color: #fff;
	color: var(--primary);
	padding: 1rem 4rem;
	font-size: clamp(32px, 5.6rem, 64px);
	line-height: 1;
	font-family: "Dela Gothic One", sans-serif;
}

/* ---------------------------------------
* 各活動紹介
------------------------------------------ */

.projectFv{
	padding: 18rem 0 14rem;
	background-color: var(--primary);
	position: relative;
}

.projectFv-bottom{
	position: absolute;
	left: 0;
	bottom: 0;
}

.projectFvWrap{
	position: relative;
}

.projectFvImg img{
	border-radius: 20px;
}

.projectFvTtl,.projectFvTxt{
	position: absolute;
}

.projectFvTtl{
	right: -11.1rem;
	top: -4rem;
	transform: rotate(4deg);
}

.projectFvTtl p span,.projectFvTtl h2 span,.projectFvTxt p span{
	display: inline-block;
	background-color: #fff;
	color: var(--primary);
	padding: 1rem 3rem;
	line-height: 1;
}

.projectFvTtl p span{
	font-weight: 700;
	font-size: clamp(16px, 3.2rem, 40px);
}

.projectFvTtl h2 span{
	font-family: "Dela Gothic One", sans-serif;
	font-size: clamp(32px, 5.6rem, 64px);
}

.projectFvTxt{
	left: -11.1rem;
	bottom: 0;
	transform: rotate(-4deg);
}

.projectFvTxt p span{
	padding: 1rem 2rem;
	font-family: "Dela Gothic One", sans-serif;
	font-size: clamp(16px, 3.2rem, 40px);
}

/* ---------------------------------------
* 地区会団
------------------------------------------ */

.p-district{
	position: relative;
	background-color: var(--col-baige);
}

/* ---------------------------------------
* 入会
------------------------------------------ */

.p-how{
	position: relative;
	padding: 16rem 0 20rem;
	background-color: var(--col-baige);
}

.howTxtWrap>p{
	padding-top: 4rem;
}

.howChange{
	position: relative;
	z-index: 2;
	margin-top: 60px;
	background-color: var(--primary);
	padding: 4.8rem 11.1rem;
	border-radius: 20px;
}

.howChange-parts{
	position: absolute;
}

.howChange-parts01{
	left: 3rem;
	top: -12rem;
	width: 12.7%;
}

.howChange-parts02{
	right: -11.1rem;
	top: -23.9rem;
	width: 27%;
	z-index: -1;
}

.howChange h4,.howFlow h4{
	padding-bottom: 3rem;
	font-size: clamp(16px,2.4rem,32px);
	font-weight: 700;
}

.howFlow h4{
	color: var(--primary);
}

.howChange-listItem:not(:last-of-type){
	padding-bottom: 1.6rem;
	margin-bottom: 1.6rem;
	border-bottom: solid 1px rgba(255,255,255,.1);
}

.howchange-listIcon{
	width: 1.6rem;
	height: 1.6rem;
	position: relative;
	margin-top: 0.5rem;
}

.howchange-listIcon svg{
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
}

.howChange-listItem p{
	padding-left: 0.6rem;
}

.howFlow-listItem{
	width: 31.5rem;
	height: 31.5rem;
	background-color: #fff;
	border: solid 1px var(--primary);
	position: relative;
	border-radius: 500px;
}

.howFlow-listItem:not(:last-of-type)::after{
	content: "";
	display: block;
	width: 2rem;
	height: 2rem;
	background-repeat: no-repeat;
	background-size: 100% 100%;
	background-image: url(../img/admission/arrow.svg);
	position: absolute;
	right: -5rem;
	top: 50%;
	transform: translateY(-50%);
}

.howFlow-listTxt{
	padding: 0 6rem;
	position: absolute;
	left: 0;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
}

.howFlow-listTtl p,.howFlow-listTtl h5{
	color: var(--primary);
	font-weight: 700;	
}

.howFlow-listTtl p{
	font-size: clamp(12px,2rem,24px);
}

.howFlow-listTtl h5{
	font-size: clamp(12px,1.8rem,20px);
}

.howFlow-listTxt>p{
	padding-top: 1.6rem;
	font-size: clamp(12px,1.4rem,16px);
}

.howOut{
	background-color: #fff;
	border: solid 1px var(--primary);
	border-radius: 20px;
	padding: 4.8rem 11.1rem;
}

.howOut-defLit:not(:last-of-type){
	padding-bottom: 1.6rem;
	margin-bottom: 1.6rem;
	border-bottom: solid 1px var(--border);
}

.howOut-defTtl,.howOut-defDesc{
	font-size: clamp(12px,1.4rem,16px);
	line-height: 1.6;
	color: var(--primary);
}

.howOut-defTtl{
	flex: 0 0 auto;
	width: 12.8%;
	font-weight: 500;
}

.howOut-defDesc{
	flex: 1 1 auto;
	font-weight: 400;
}

.voiceWrap{
	position: relative;
}

.voiceparts{
	position: absolute;
}

.voiceparts01{
	width: 24%;
	left: -2rem;
	top: -12.5rem;
	z-index: -1;
}

.voiceparts02{
	width: 34.1%;
	right: -16rem;
	top: -19.5rem;
	z-index: -1;
}

.voice-listItem{
	padding: 4.8rem 6rem;
	background-color: #fff;
	border: solid 1px var(--primary);
	border-radius: 10px;
}

.voice-listItem:not(:last-of-type){
	margin-bottom: 2rem;
}

.voli-listImgWrap{
	width: 15.9%;
}

.voice-listTxt{
	width: 78.2%;
	padding-top: 0.8rem;
}

.voice-listTxt h3{
	font-weight: 700;
	font-size: clamp(14px,1.8rem,20px);
	color: var(--primary);
}

.voice-listTxt>p{
	font-size: clamp(12px,1.4rem,16px);
	padding: 1.6rem 0 2rem;
}

.voice-listTxt .name p{
	font-size: clamp(10px,1.2rem,14px);
	color: var(--font-gray);
}

.faq-defList{
	padding: 3rem 4rem;
	background-color: var(--col-gray);
	border-radius: 10px;
}

.faq-defList:not(:last-of-type){
	margin-bottom: 1rem;
}

.faq-defTtl p:first-of-type,.faq-defDesc p:first-of-type{
	color: var(--primary);
	font-weight: 700;
	line-height: 1.6;
	margin-right: 1rem;
}

.faq-defTtl p:last-of-type,.faq-defDesc p:last-of-type{
	font-weight: 500;
}

.faq-defDesc p:last-of-type{
	line-height: 1.8;
	font-size: clamp(12px,1.4rem,16px);
}

.faq-defDesc{
	padding-top: 1.6rem;
	margin-top: 1.6rem;
	border-top: solid 1px var(--border);
}

.entryWrap{
	position: relative;
}

.entryparts{
	width: 27.3%;
	position: absolute;
	left: 0;
	top: 16rem;
}

.entry-l{
	width: 40%;
}

.entry-r{
	width: 59.3%;
}

@media screen and (max-width:768px) {

	/* ---------------------------------------
	* common
	------------------------------------------ */

	.btn.sp,.sp{
		display: block;
	}

	.btn.pc,.pc{
		display: none;
	}


	.t-event::after,.p-activity::after,.p-district::after{
		transform: rotate(-2deg);
		border-radius: 20px;
	}

	/* ---------------------------------------
	* TOP
	------------------------------------------ */

	.t-fv {
		padding-top: 10rem;
	}

	.t-fvTtl p span {
		padding: .2rem 1rem;
		font-size: 1.6rem;
	}

	.t-fvTtl h2 {
		font-size: 4rem;
		padding-top: 1rem;
	}

	.t-fvCont {
		padding-top: 4rem;
		padding-left: 2rem;
		padding-right: 2rem;
		overflow: hidden;
	}

	.fv-swiper {
		overflow: hidden;
	}

	.fv-listItem {
		width: 100%;
	}

	.fv-listImg {
		border-radius: 10px;
	}

	.fv-listImg .img::after {
		padding-top: 75%;
	}

	.fvBottom {
		bottom: -.2rem;
		width: 60%;
	}

	.fv-listTxtWrap {
		padding: 0 2rem;
		bottom: 3rem;
	}

	.fv-listTxt .day {
		font-size: 1.2rem;
	}

	.fv-listTxt p:last-of-type {
		font-size: 1.6rem;
	}

	.fv-listBtn {
		padding-top: .4rem;
	}

	.fv-listBtn p span {
		font-size: 1.2rem;
	}

	.fv-listIcon {
		margin-top: .4rem;
		width: 1.6rem;
		height: 1.6rem;
	}

	.fv-category {
		font-size: 1.4rem;
	}

	.t-about{
		overflow: hidden;
		padding: 12rem 0;
	}

	.t-aboutWrap{
		padding: 12rem 0;
	}

	.t-aboutTtl{
		left: 0rem;
		top: -2rem;
		width: 71.6%;
		transform: rotate(-10deg);
	}

	.t-aboutBg {
		position: absolute;
		left: 50%;
		right: auto;
		top: 50%;
		width: 72rem;
		max-width: none;
		transform: translate(-50%, -50%);
		transform-origin: center center;
	}

	@keyframes rotateBg {
		from {
			transform: translate(-50%, -50%)　rotate(0deg);
		}
		to {
			transform: translate(-50%, -50%)　rotate(360deg);
		}
	}

	.t-aboutPara p:not(:last-of-type){
		padding-bottom: 2rem;
	}

	.t-activity{
		padding: 10rem 0;
	}

	.t-activity_l{
		display: none;
	}

	.t-activity_r{
		width: 100%;
	}

	.t-activityCont{
		padding-top: 6rem;
	}

	.t-activity_listItem,.t-activity_listItem::after{
		border-radius: 10px;
	}

	.t-activity_listItem:not(:last-of-type){
		margin-bottom: 3rem;
	}

	.t-activity_listItem a{
		border-radius: 10px;
		padding: 4rem 2.4rem 2.4rem;
	}

	.t-activity-listIcon{
		width: 3.2rem;
		height: 3.2rem;
		right: 1.6rem;
		top: 4rem;
		bottom: unset;
	}

	.t-activity_listItem:hover a .t-activity-listIcon{
		right: 4rem;
	}

	.t-activity_listTtl h3{
		font-size: 3.2rem;
	}

	.t-activity_listPara{
		padding-top: 8rem;
		width: 100%;
	}

	.t-activity_listPara h4{
		font-size: 1.8rem;
		padding-bottom: 1.6rem;
	}

	.t-reportCont{
		padding-top: 4rem;
	}

	.t-area-l{
		width: 100%;
		transform: rotate(-4deg);
	}

	.t-area-r{
		width: 100%;
		padding-top: 3rem;
	}

	.t-areaList{
		padding-top: 0;
	}

	.t-areaListItem:not(:last-of-type){
		margin-bottom: 2rem;
	}

	.t-areaListImgWrap{
		width: 100%;
		display: flex;
		align-items: center;
		justify-content: space-between;
	}

	.t-areaListImg{
		width: 33.8%;
	}

	.t-areaListTtlWrap.sp{
		display: flex;
		align-items: center;
		justify-content: space-between;
		width: 59.3%;
	}

	.t-areaListTxt{
		width: 100%;
		padding-top: 2rem;
	}

	.t-areaListTtl{
		padding-bottom: 0;
	}

	.t-areaListTtl p{
		padding-left: 1.4rem;
		font-size: 1.2rem;
		margin-bottom: 0;
	}

	.t-areaListTtl p::before{
		width: 0.6rem;
		height: 0.6rem;
	}

	.t-areaListTtl h3{
		font-size: 2rem;
	}

	.t-areaListTtlIcon{
		width: 2.8rem;
		height: 2.8rem;
	}

	.t-areaListItem a{
		padding: 3rem 2rem;
		border-radius: 10px;
	}

	.t-event{
		margin-top: 10rem;
		padding: 6rem 0 8rem;
	}

	.t-admission{
		padding-top: 8rem;
		background: linear-gradient(180deg, rgba(0, 142, 102, 1) 0%, rgba(0, 142, 102, 1) 84%, rgba(255, 255, 255, 1) 84%, rgba(255, 255, 255, 1) 100%);
	}

	.p-admission{
		padding: 8rem 0 3rem;
	}

	.t-admissionWrap{
		padding-left: 0rem;
	}

	.admissionparts01{
		width: 40%;
		top: 0rem;
		right: -2rem;
	}

	.admissionparts02{
		width: 40%;
		left: unset;
		right: 1rem;
		top: 19.5rem;
	}

	.admissionparts03{
		width: 23.8%;
		top: -4rem;
		left: 15.6rem;
	}

	.t-admissionTtl h2{
		font-size: 3.2rem;
	}

	.t-admissionTxt{
		width: 100%;
		padding-top: 3rem;
	}


	.sec03SlideImg{
		width: 120rem;
		margin-right: 1.5rem;
	}

	.t-newsWrap{
		padding: 6rem 2.4rem 4rem;
	}

	.t-newsCont{
		padding: 2rem 0rem 0;
	}

	.t-areaListTxt>p{
		font-size: 1.2rem;
	}


	.fvparts {
		width: 30.5%;
		right: 1rem;
		top: 7rem;
		z-index: -1;
	}

	.abparts01 {
		width: 38%;
		left: -2rem;
		top: 6rem;
		animation-delay: 0s;
	}

	.abparts02 {
		width: 27.6%;
		right: -1rem;
		top: -2rem;
	}

	.abparts03 {
		width: 38%;
		left: -1rem;
		bottom: -2rem;
		animation-delay: -.4s;
	}

	.abparts04 {
		width: 48%;
		right: -1rem;
		bottom: -2rem;
		animation-delay: -.8s;
	}

	.acparts {
		position: absolute;
		right: 3rem;
		top: 13rem;
		width: 30%;
	}

	.reparts {
        width: 47%;
        position: absolute;
        right: -1rem;
        top: 3rem;
        z-index: -1;

	}

	.t-areaparts {
		width: 40%;
		position: absolute;
		right: 0;
		top: -1rem;
		z-index: -1;
	}

	.evparts {
		width: 46%;
		position: absolute;
		right: 0;
		top: 0rem;
	}

	.t-activity_listPara p br{
		display: none;
	}

	/* ---------------------------------------
	* 日本木青連とは
	------------------------------------------ */

	.p-about{
		padding: 14rem 0 3rem;
	}

	.p-aboutBottom{
		position: absolute;
		left: 0;
		bottom: 0;
		z-index: 2;
	}

	.p-aboutMain{
		padding-top: 12rem;
	}

	.p-aboutMain_l,.p-aboutMain_r{
		width: 100%;
	}

	.p-aboutMain_r{
		padding-top: 4rem;
	}

	.p-aboutMain_r p{
		font-size: 1.4rem;
	}

	.p-aboutMain_r p:not(:last-of-type){
		padding-bottom: 3rem;
	}

	.txtSlideAbout{
		padding-top: 8rem;
	}

	.p-member{
		padding-bottom: 10rem;
	}

	.membermessWrap{
		padding-top: 4rem;
	}

	.membermess-l{
		width: 100%;
	}

	.membermess-l{
		display: flex;
		align-items: center;
		justify-content: space-between;
	}

	.messImg{
		width: 35.8%;
	}

	.messTxt{
		width: 58.2%;
	}

	.messTxt h3{
		font-size: 2rem;
		font-weight: 700;
		line-height: 1.4;
		padding-bottom: 1rem;
	}

	.messTxt .membermessname{
		display: block;
	}

	.messTxt .membermessname p{
		font-size: 1rem;
	}

	.membermess-r{
		width: 100%;
	}

	.membermessPara{
		padding: 2rem 0 0;
	}

	.membermessPara p:not(:last-of-type){
		padding-bottom: 2rem;
	}

	.membermessname.pc{
		display: none;
	}

	.boardMember-l{
		width: 100%;
	}

	.boardMember-l p{
		padding-left: 4rem;
	}

	.boardMember-l p::before{
		width: 3rem;
	}

	.boardMember-r{
		width: 100%;
		padding-top: 3rem;
	}

	.boardMember-defList{
		padding: 1.2rem 1.6rem;
		border-radius: 10px;
	}

	.boardMember-defList:not(:last-of-type){
		margin-bottom: 1rem;
	}

	.boardMember-defTtl{
		width: 25%;
		flex: 0 0 25%;
		font-size: 1.2rem;
	}

	.boardMember-defTtl.flex{
		width: 100%;
		flex: unset;
	}

	.boardMemberIcon{
		width: 2.4rem;
		height: 2.4rem;
	}

	.boardMember-defDesc p:first-of-type{
		width: 45%;
		flex: 0 0 45%;
		font-size: 1rem;
	}

	.boardMember-defDesc p:last-of-type{
		flex: 1 1 auto;
		font-size: 1rem;
	}

	.boardMember-subList{
		width: 73.7%;
		padding-bottom: 1rem;
	}

	.boardMember-subList02{
		width: 100%;
	}

	.boardMember-subListItem{
		padding: 1rem 0;
	}

	.boardMember-subListItem:last-of-type{
		padding-bottom: 0;
		border-bottom: unset;
	}

	.boardMember-defDesc .boardMember-subListItem02>p{
		font-size: 1rem;
		width: 26.2%;
		flex: 0 0 26.2%;
	}

	.boardMember-defDesc .boardMember-subListDetail p:first-of-type{
		width: 45%;
		flex: 0 0 45%;
		font-size: 1rem;
	}

	.boardMember-defDesc .boardMember-subListDetail p:last-of-type{
		font-size: 1rem;
	}

	.outillust{
		left: unset;
		bottom: unset;
		right: 3rem;
		top: 4rem;
		width: 24%;
	}

	.outDetail{
		width: 100%;
		padding: 3rem 2rem;
		border-radius: 10px;
	}

	.out-defList:not(:last-of-type){
		padding-bottom: 2rem;
		margin-bottom: 2rem;
	}

	.out-defTtl{
		width: 100%;
		font-size: 1.2rem;
	}

	.out-defDesc{
		font-size: 1.2rem;
		padding-top: 0.4rem;
		color: var(--font-gray);
	}

	/* ---------------------------------------
	* 活動紹介
	------------------------------------------ */

	.p-projectAbout{
		padding-bottom: 2rem;
	}

	.pageabout{
		padding-left: 0rem;
	}

	.pageabout_admission{
		padding-left: 0;
	}

	.pageabout_area,.pageabout_project{
		padding: 0 2rem 3rem;
	}

	.pageaboutCont{
		width: 100%;
	}

	.pageaboutCont_admission{
		width: 100%;
	}

	.pageaboutPara{
		padding-top: 4rem;
	}

	.pageabouttImg{
		transform: rotate(4deg);
		margin-top: 3rem;
	}

	.pageabouttImg_admission{
		margin-top: 3rem;
	}

	.pageabouttImg_project{
		width: 100%;
	}

	.pageabouttImg_area{
		width: 100%;
	}

	.pageabouttImg_admission{
		width: 100%;
	}

	.p-activity {
		padding: 8rem 0;
	}

	.p-activityparts{
		width: 32%;
		top: 2rem;
	}

	.p-activitylist{
		padding-top: 4rem;
	}

	.p-activitylistItem:not(:last-of-type){
		margin-bottom: 3rem;
	}

	.p-activitylistItem a{
		padding: 1.6rem 2rem 1.6rem 1.6rem;
		border-radius: 10px;
	}
	.p-activitylistItem a::after {
		border-radius: 10px;
	}

	.p-activity-listIcon{    
		width: 4rem;
		height: 4rem;
		right: 1.6rem;
		bottom: 2rem;
	}
	.p-activitylistItem:hover a .p-activity-listIcon{
		right: 1rem;
	}

	.p-activityTxt p span{
		padding: .6rem 1rem;
		font-size: 1.4rem;
	}

	.p-activityTtlWrap{
		padding-top: 8rem;
	}

	.p-activityTtl p span{
		padding: .6rem 1rem;
		font-size: 1.4rem;
	}

	.p-activityTtl h3 p{
		padding: .6rem 1rem;
		font-size: 2rem;
	}

	/* .p-activityTxt{
	transform: rotate(-2deg);
	margin-left: -1rem;
	margin-top: -6rem;
} */


	/* ---------------------------------------
	* 各活動紹介
	------------------------------------------ */

	.projectFv{
		padding: 14rem 0 10rem;
	}

	.projectFv-bottom{
		position: absolute;
		left: 0;
		bottom: 0;
	}

	.projectFvImg{
		width: 88%;
		margin: 0 auto;
	}

	.projectFvImg img{
		border-radius: 10px;
	}

	.projectFvTtl{
		right: -1rem;
		top: -2.8rem;
		transform: rotate(4deg);
	}

	.projectFvTtl p span,.projectFvTtl h2 span,.projectFvTxt p span{
		padding: .6rem 1rem;
	}

	.projectFvTtl p span{
		font-size: 1.6rem;
	}

	.projectFvTtl h2 span{
		font-size: 2.4rem;
	}

	.projectFvTxt{
		left: -1rem;
		bottom: -2.4rem;
		transform: rotate(-4deg);
	}

	.projectFvTxt p span{
		padding: .6rem 1rem;
		font-size: 1.6rem;
	}


	/* ---------------------------------------
	* 地区会団
	------------------------------------------ */

	.p-areaWrap{
		padding-top: 4rem;
	}

	/* ---------------------------------------
	* 入会
	------------------------------------------ */

	.p-how{
		padding: 10rem 0 10rem;
	}

	.howTxtWrap>p{
		padding-top: 3rem;
	}

	.howChange{
		margin-top: 10rem;
		padding: 3rem 2.4rem;
		border-radius: 10px;
	}

	.howChange-parts01{
		left: 1rem;
		top: -6rem;
		width: 20%;
	}

	.howChange-parts02{
		right: -1rem;
		top: -9.5rem;
		width: 35%;
	}

	.howChange h4,.howFlow h4{
		padding-bottom: 2rem;
		font-size: 1.8rem;
	}

	.howchange-listIcon{
		width: 1.2rem;
		height: 1.2rem;
		margin-top: 0.6rem;
	}

	.howFlow-listItem{
		width: 28rem;
		height: 28rem;
		margin: 0 auto;
	}

	.howFlow-listItem:not(:last-of-type){
		margin-bottom: 4rem;
		padding-bottom: 4rem;
	}

	.howFlow-listItem:not(:last-of-type)::after{
		width: 1.6rem;
		height: 1.6rem;
		right: 0;
		left: 0;
		margin: 0 auto;
		top: unset;
		bottom: -3rem;
		transform: translateY(0) rotate(90deg);
	}

	.howFlow-listTxt{
		padding: 0 3rem;
	}

	.howFlow-listTtl p{
		font-size: 1.8rem;
	}

	.howFlow-listTtl h5{
		font-size: 1.8rem;
	}

	.howFlow-listTxt>p{
		padding-top: 1.6rem;
		font-size: 1.4rem;
	}

	.howOut{
		border-radius: 10px;
		padding: 3rem 2.4rem;
	}

	.howOut-defLit:not(:last-of-type){
		padding-bottom: 1.6rem;
		margin-bottom: 1.6rem;
	}

	.howOut-defTtl,.howOut-defDesc{
		font-size: 1.4rem;
	}

	.howOut-defTtl{
		width: 100%;
	}

	.howOut-defDesc{
		padding-top: 0.4rem;
	}

	.voiceparts01{
		width: 25%;
		left: -1rem;
		top: -3.6rem;
		z-index: -1;
	}

	.p-voice{
		padding-top: 8rem;
	}

	.voiceparts02{
		width: 36.1%;
		right: -3rem;
		top: -6.6rem;
		z-index: -1;
	}

	.voice-listItem{
		padding: 3rem 2.4rem;
	}

	.voice-listItem:not(:last-of-type){
		margin-bottom: 2rem;
	}

	.voli-listImgWrap{
		width: 100%;
		display: flex;
		justify-content: space-between;
		align-items: center;
	}

	.voice-listImg{
		width: 28.1%;
	}

	.voli-listImgWrap h3{
		width: 65%;
		font-weight: 700;
		font-size: 1.6rem;
		color: var(--primary);
	}

	.voice-listTxt{
		width: 100%;
		padding-top: 1.6rem;
	}

	.voice-listTxt>p{
		font-size: 1.4rem;
		padding: 0 0 2rem;
	}

	.voice-listTxt .name p{
		font-size: 1.2rem;
	}

	.faq-defList{
		padding: 2.4rem 2rem;
	}

	.faq-defDesc p:last-of-type{
		font-size: 1.2rem;
	}

	.entryWrap{
		position: relative;
	}

	.entryparts{
		width: 37%;
		left: unset;
		right: 0;
		top: -6.4rem;
		z-index: -1;
	}

	.entry-l{
		width: 100%;
	}

	.entry-r{
		width: 100%;
	}



}


