@charset "utf-8";
/*====== index.php対応 ======*/

/*--------------------------------------------------------
	メイン画像
--------------------------------------------------------*/
.bl_mainCont{
	padding: 60px max(13px,2vw) 0;
	position: relative;
	width: 100%;
	height: 110dvh;
}
/* スライダー画像 */
.bl_slide{
	background-repeat: no-repeat;
}
.bl_slide.no01{
	background-image: url("../images/top/img_main01.jpg");
}
.bl_slide.no02{
	background-image: url("../images/top/img_main02.jpg");
}
.bl_slide.no03{
	background-image: url("../images/top/img_main03.jpg");
}
.bl_slide.no04{
	background-image: url("../images/top/img_main04.jpg");
}

/* メイン画像 */
.bl_mvListPc{
	display: none!important;
}
.bl_mvListSp,
.bl_mvListSp .slick-list,
.bl_mvListSp .slick-track,
.bl_mvListSp .bl_slide{
	border-radius: clamp(10px,1.25vw,20px);
	width: 100%;
	height: 100%;
}
.bl_mvListSp .bl_slide{
	background-size: cover;
	background-position: center;
}
.bl_mvListSp .slick-active{
	animation: slide-animation 15s linear;
	background-position: 0% 0;
}
@keyframes slide-animation{
	/* 背景画像を右から左へ */
	from {
		background-position: 0% 0;
	}
	to {
		background-position: 100% 0;
	}
}
@media (min-width:950px){
	.bl_mvListSp,
	.bl_mvListSp .slick-list,
	.bl_mvListSp .slick-track,
	.bl_mvListSp .bl_slide{
		border-radius: clamp(10px,1.25vw,20px);
	}
	.bl_mainCont{
		padding: 110px clamp(13px,2vw,50px) 0;
	}
	.bl_mvListSp{
		display: none!important;
	}
	.bl_mvListPc{
		display: block!important;
	}
	.bl_mvListPc,
	.bl_mvListPc .slick-list,
	.bl_mvListPc .slick-track,
	.bl_mvListPc figure{
		border-radius: clamp(10px,1.25vw,20px);
		width: 100%;
		height: 100%;
	}
	.bl_mvListPc .bl_slide{
		background-size: cover;
		background-position: center;
	}
}

/*========== テキスト・SNS ==========*/
/* テキスト */
.bl_mainCont .bl_textCont{
	position: absolute;
	bottom: 13dvh;
	left: clamp(40px,5.5vw,130px);
}
.bl_mainCont .bl_textCont .el_catchCopy{
	font-size: clamp(40px,4.5vw,65px);
	font-weight: bold;
	line-height: 1.4;
}
.bl_mainCont .bl_textCont .el_en{
	font-family: "Montserrat", sans-serif;
	font-size: clamp(19px,1.5vw,30px);
	font-weight: normal;
	margin-top: 1em;
	line-height: 1;
}
/* SNSリンク */
.bl_mainCont .bl_snsCont{
	position: absolute;
	right: calc(clamp(13px,2vw,50px) + 1em);
	bottom: 1em;
	display: flex;
	justify-content: flex-end;
	align-items: center;
	flex-wrap: wrap;
	padding: 0;
}
.bl_mainCont .bl_snsCont p{
	position: relative;
	font-family: "Montserrat", sans-serif;
	font-size: clamp(16px,1vw,22px);
	padding-left: 1em;
}
.bl_mainCont .bl_snsCont p::before{
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	content: '';
	display: block;
	width: 8px;
	height: 8px;
	margin-right: 5px;
	background-color: #fff;
	border-radius: 50%;
}
.bl_mainCont .bl_snsList{
	display: flex;
	justify-content: flex-end;
	align-items: center;
	flex-wrap: wrap;
	margin-left: 1em;
}
.bl_mainCont .bl_snsList li{
	width: 30px;
}
.bl_mainCont .bl_snsList li+li{
	margin-left: .85em;
}
.bl_mainCont .bl_snsList li img{
	width: 100%;
}

/*--------------------------------------------------------
	TOP共通見出し・テキスト
--------------------------------------------------------*/
.ly_cont h2{
	font-weight: bold;
	font-size:  clamp(34px,4.5vw, 60px);
	line-height: 1.4;
	margin-bottom: clamp(30px,2.5vw, 60px);
}
.ly_cont h2 .el_en{
	color: #666262;
	display: block;
	font-family: "Montserrat", sans-serif;
	font-size:  clamp(16px,1.5vw, 20px);
	font-weight: normal;
}
.ly_cont h2 .el_en::before{
	background-color: #008E66;
	border-radius: 50%;
	content: '';
	display: inline-block;
	margin-right: 10px;
	width: 8px;
	height: 8px;
	vertical-align: 2px;
}
.ly_cont p+p{
	margin-top: max(.8vw,10px);
}


/*--------------------------------------------------------
	同友会ついて
--------------------------------------------------------*/
/*========== テキスト ==========*/
.bl_about .bl_flexCont{
	width: 100%;
	margin: 0 auto;
	padding: max(60px,5vw) max(20px,2.75vw);
}
.bl_about .el_btn{
	margin-bottom: 0;
}
/*========== 画像スクロール ==========*/
.bl_imgScroll {
	display: flex;
	height: max(160px,15vw);
	margin-bottom: max(60px,5vw);
	overflow: hidden;
	user-select: none;
}
.bl_imgScroll__item {
	flex: 0 0 auto;
	overflow: hidden;
	margin-top: 0;
	padding-left: 5vw;
}
.bl_imgScroll__item:nth-child(odd) {
	animation: loop 80s -40s linear infinite;
}
.bl_imgScroll__item:nth-child(even) {
	animation: loop2 80s linear infinite;
}
.bl_imgScroll__item img{
	height: 100%;
}
@keyframes loop {
	0% { transform: translateX(100%); }
	to { transform: translateX(-100%); }
}
@keyframes loop2 {
	0% { transform: translateX(0); }
	to { transform: translateX(-200%); }
}
@media (min-width:950px){
	.bl_about .bl_flexCont{
		display: flex;
		justify-content: space-between;
		align-items: stretch;
		flex-wrap: wrap;
		width: 94vw;
		max-width: 1500px;
		padding: max(60px,5vw) 0;
	}
	.bl_about .bl_flexCol{
		width: 45%;
	}
	.bl_about .bl_flexCol+.bl_flexCol{
		width: 55%;
	}
	.bl_about .bl_flexCont p{
		text-align: right;
		line-height: 2.5;
	}
	.bl_imgScroll {
		width: 100%;
		height: 100%;
	}
}
/*--------------------------------------------------------
	活動報告
--------------------------------------------------------*/
.bl_activity{
	background-color: #F1F5F7;
	width: 100%;
	margin: 0 auto;
}
.bl_activity .bl_inner{
	width: 100%;
	margin: 0 auto;
	padding: max(60px,5vw) max(20px,2.75vw);
}
/*========== 記事一覧 ==========*/
/* スライダー */
.bl_activity{
	overflow: hidden!important;
}
.bl_activityList{
	margin: max(4vw,30px) auto;
}
.bl_activityList .slick-list{
	overflow: visible!important;
	max-width: 100%;
}
/* スライダー中身 */
.bl_activityCol{
	margin: 0 max(5px,1vw);
	position: relative;
	z-index: 500;
}
.bl_activityCol a{
	display: block;
	width: 100%;
	height: 100%;
	transition: 0.3s;
}
.bl_activityCol figure{
	aspect-ratio: 6 / 4;
	margin-bottom: .5em;
}
.bl_activityCol figure img{
	border-radius: 10px;
	object-fit: cover;
	width: 100%;
	height: 100%;
}
.bl_activityCol .el_title{
	display: -webkit-box;
	font-weight: bold;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	overflow: hidden;
	line-height: 1.6;
	margin-bottom: 0;
}
.bl_activityCol .el_cat{
	background-color: #BABCC4;
	border-radius: 5px;
	display: inline-block;
	font-size: clamp(13px,1vw,16px);
	font-family: "Montserrat", sans-serif;
    margin-bottom: 0;
	padding: .5rem 1.5rem;
	line-height: 1;
}
.bl_activityCol .el_time{
	margin: .5em 0 0;
	display: block;
	line-height: 1.7;
	color: #666262;
	font-family: "Montserrat", sans-serif;
	font-size: clamp(13px,1vw,16px);
}
.bl_activityCol .el_time::before{
	background-color: #008E66;
	content: '';
	display: inline-block;
	margin-right: 10px;
	width: 20px;
	height: 1px;
	vertical-align: 5px;
}
@media (min-width:950px){
	.bl_activityCol{
		display: block;
		position: relative!important;
	}
	.bl_activityCol .el_time::before{
		width: 30px;
		vertical-align: 7px;
	}
}
/* ボタン調整 */
.bl_activity .bl_arrowCont{
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 1.5em;
}
.bl_activity .el_arrow{
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	cursor: pointer;
	transition: 0.3s;
	width: 40px;
	height: 40px;
}
.bl_activity .el_arrow:hover,
.bl_activity .el_arrow.slick-disabled{
	opacity: 0.6;
}
.bl_activity .el_arrow.prev{
	background-image: url("../images/top/icon_btn-slider-prev.svg");
}
.bl_activity .el_arrow.next{
	background-image: url("../images/top/icon_btn-slider-next.svg");
	margin-left: .5em;
}
.bl_activity .bl_btn{
	text-align: center;
}
.bl_activity .el_btn{
	margin: 0;
}
@media (min-width:950px){
	.bl_activity .bl_arrowCont{
		margin-bottom: 0;
	}
	.bl_activity .bl_inner{
		width: 94vw;
		max-width: 1500px;
		padding: max(60px,5vw) 0;
	}
	.bl_activity .bl_arrowCont{
		order: 2;
	}
	.bl_activity .el_arrow{
			width: 60px;
			height: 60px;
	}
	.bl_activity .bl_btn{
		text-align: inherit;
		margin-right: 0;
		margin-left: auto;
		width: fit-content;
	}
	.bl_activity .el_btn{
		margin-right: 1em;
		margin-left: auto;
		order: 1;
	}
}

/*--------------------------------------------------------
	6つのSTEP
--------------------------------------------------------*/
.bl_6step{
	background-color: #F4F2E9;
	width: 100%;
	margin: max(80px, 6.5vw) auto;
	border-radius: clamp(10px,1.25vw,20px);
}
.bl_6step .bl_inner{
	position: relative;
	width: 100%;
	margin: 0 auto;
	padding: max(80px, 6.5vw) max(20px, 2.75vw);
}
.bl_6step h2{
	position: absolute;
	top: -5%;
	left: 50%;
	transform: translateX(-50%);
	max-width: 350px;
	width: 80%;
}
.bl_6step h2 img{
	width: 100%;
}
.bl_6step .bl_stepImg{
	width: 100%;
	margin: max(20px,2vw) auto;
}
@media (max-width:949px){
	.bl_6step .bl_stepImg{
		width: 100%;
		overflow-x: scroll;
	}
	.bl_6step .bl_stepImg img{
		max-width: none;
		width: 650px;
	}
}
@media (min-width:768px){
    .bl_6step h2{
        top: -10%;
        max-width: 450px;
    }
}
@media (min-width:950px){
	.bl_6step{
		width: calc(100% - max(20px, 2.75vw));
	}
	.bl_6step .bl_inner{
		max-width: 1500px;
		width: 94vw;
		padding: 7vw;
	}
	.bl_stepImg img{
		width: 100%;
	}
}
@media (min-width:1200px){
    .bl_6step h2{
        max-width: 550px;
    }
}
@media (min-width:1400px){
    .bl_6step h2{
        max-width: 650px;
    }
}

/* 委員会リスト */
.bl_6step .bl_block{
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	flex-wrap: wrap;
	margin: max(20px,2vw) auto ;
}
.bl_6step .bl_block ul{
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	flex-wrap: wrap;
	list-style: none;
	width: 100%;
}
.bl_6step .bl_block li{
	width: 48%;
}
.bl_6step .bl_block ul+ul,
.bl_6step .bl_block li:nth-child(n+3){
	margin-top: 5px;
}
.bl_6step .bl_block a{
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #fff;
	border-radius: 60px;
	font-weight: bold;
	font-size: clamp(11px,.85vw,18px);
	width: 100%;
	padding: 2px 1rem;
}
.bl_6step .bl_block .bl_blue a{
	border: 1px solid #2965B0;
	color: #2965B0;
}
.bl_6step .bl_block .bl_rightblue a{
	border: 1px solid #45A7B9;
	color: #45A7B9;
}
.bl_6step .bl_block .bl_red a{
	border: 1px solid #E86A69;
	color: #E86A69;
}
.bl_6step .el_btn {
	margin: 0;
}
@media (min-width:950px){
	.bl_6step .bl_block{
		align-items: flex-start;
	}
	.bl_6step .bl_block ul+ul{
		margin: 0;
	}
	.bl_6step .bl_block .bl_blue{
		width: 18%;
	}
	.bl_6step .bl_block .bl_blue li{
		width: 100%;
	}
	.bl_6step .bl_block .bl_blue li+li{
		margin-top: 10px;
	}
	.bl_6step .bl_block .bl_rightblue{
		width: 50%;
	}
	.bl_6step .bl_block .bl_rightblue li{
		width: 48%;
	}
	.bl_6step .bl_block .bl_red{
		width: 29%;
	}
	.bl_6step .bl_block .bl_red li{
		width: 100%;
	}
	.bl_6step .bl_block .bl_red li+li{
		margin-top: 5px;
	}
}


/*--------------------------------------------------------
	同友会を知る会
--------------------------------------------------------*/
.bl_shirukai{
	position: relative;
	width: 100%;
}
.bl_shirukai .el_img{
	width: 100%;
	height: max(250px,32vw);
}
.bl_shirukai .el_img img{
	object-fit: cover;
	width: 100%;
	height: 100%;
}
.bl_shirukai .el_catchCopy{
	position: absolute;
	top: -10vw;
	left: 50%;
	transform: translateX(-50%);
	margin-top: max(250px,36vw);
	text-orientation: upright;
	writing-mode: vertical-rl;
	line-height: 1.3;
	color: #008E66;
	font-weight: bold;
	font-size: clamp(28px,4.5vw,80px);
}
.bl_shirukai .el_catchCopy::before{
	background-image: url("../images/top/img_shirukai-fukidashi.svg");
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	content: '';
	display: block;
	width: max(90px,10vw);
	height: 100%;
	position: absolute;
	top: -60%;
	right: min(-80px,-15vw);
}
.bl_shirukai p{
	line-height: 1.8;
}
.bl_shirukai .bl_inner{
	padding: 0 max(20px,2.75vw) max(60px,5vw);
	position: relative;
	width: 100%;
	margin: max(180px,23vw) auto 0;
}
/* イラスト配置 */
.bl_shirukai .bl_inner:before {
	content: "";
	position: absolute;
	top: -65%;
	left:2%;
	background:url("../images/top/img_shirukai-bgL.png")center/ contain no-repeat;
	width: 25%;
	height: 90%;
	z-index: 0;
}
.bl_shirukai .bl_inner:after {
	content: "";
	position: absolute;
	top: -65%;
	right:2%;
	background:url("../images/top/img_shirukai-bgR.png")center/ contain no-repeat;
	width: 25%;
	height: 90%;
	z-index: 0;
}
.bl_shirukai .el_btn{
	margin-bottom: 0;
}
@media (min-width: 768px) {
    .bl_shirukai p{
        text-align: center;
    }
}
@media (min-width: 950px) {
	.bl_shirukai .bl_inner:before {
		top: 50%;
		transform: translateY(-50%);
		left:-5%;
		width: max(80px,20%);
	}
	.bl_shirukai .bl_inner:after {
		top: 50%;
		transform: translateY(-50%);
		right:-5%;
		width: max(80px,20%);
	}
	.bl_shirukai .el_catchCopy::before{
		right: -10vw;
	}
	.bl_shirukai .bl_inner{
		width: 94vw;
		max-width: 1500px;
		margin: 0 auto;
		padding: min(24vw, 400px) 0 max(80px, 6.5vw);
	}
	.bl_shirukai p{
		text-align: center;
	}
}

/*--------------------------------------------------------
	会員紹介
--------------------------------------------------------*/
.bl_members{
	background-color: #008E66;
	width: 100%;
	margin: 0 auto;
	border-radius: clamp(10px,1.25vw,20px);
}
.bl_members .bl_inner{
	width: 100%;
	margin: 0 auto;
	padding: max(80px, 6.5vw) max(20px, 2.75vw);
}
.bl_members .bl_flexColL br{
	display: none;
}
.bl_members .bl_flexCol.bl_textCont{
	display: block;
	width: 100%;
	margin: 0 auto;
}
.bl_members .bl_textCont,
.bl_members  h2 .el_en{
	color: #fff!important;
	text-align: center;
}
.bl_members h2 .el_en::before{
	background: #fff;
}
.bl_members .el_icnImg{
	display: block;
	margin: 0 auto;
	width: 40%;
	text-align: center;
}
.bl_members a.el_banner{
	display: block;
	width: 100%;
	max-width: 300px;
	margin: 0 auto;
}
/* 会員紹介コンテナ */
.bl_memberCol a{
	display: block;
	width: 100%;
	height: 100%;
	background-color: #F1F5F7;
	border-radius: clamp(10px,1.25vw,20px);
	padding: clamp(20px,1.5vw,30px);
	line-height: 1.4;
}
.bl_memberCol a:hover{
	opacity: 1;
}
.bl_memberCol a .bl_flexCont{
	display: block;
	align-items: center;
}
.bl_memberCol figure{
	aspect-ratio: 1 / 1;
	border-radius: clamp(10px,1.25vw,20px);
	overflow: hidden;
	width: 85%;
	max-width: 300px;
	margin: 0 auto 1.5em;
}
.bl_memberCol figure img{
	border-radius: clamp(10px,1.25vw,20px);
	object-fit: cover;
	object-position: center;
	transition: transform .6s ease;
	width: 100%;
	height: 100%;
}
.bl_memberCol a:hover img{
	transform: scale(1.1);
}
.bl_memberCol .bl_text{
	width: 80%;
	margin: 0 auto;
	text-align: center;
}
.bl_members .bl_sliderCont {
	margin-top: 2.75em;
}
.bl_memberCol .el_branch{
	font-size: clamp(15px,1.125vw,22px);
	margin-bottom: 0!important;
}
.bl_memberCol .el_branch::before{
	background-image: url("../images/icon_branch.svg");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	content: '';
	display: inline-block;
	margin-right: 10px;
	width: 15px;
	height: 15px;
}
.bl_memberCol .el_name{
	color: #008E66;
	display: inline-block;
	font-weight: bold;
	font-size: clamp(26px,2vw,36px);
	margin: 10px auto 0;
}
.bl_memberCol .el_company{
	font-weight: 500;
	font-size: 14px;
}
.bl_memberCol .bl_comment{
	display: none;
}
.bl_memberCol .el_link{
	display: none;
}
/* ボタン調整 */
.bl_members .bl_arrowCont{
	display: flex;
	justify-content: center;
	align-items: center;
}
.bl_members .bl_memberList + .bl_arrowCont{
	margin-top: 10px;
}
.bl_members .el_arrow{
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	cursor: pointer;
	transition: 0.3s;
	width: 40px;
	height: 40px;
}
.bl_members .el_arrow:hover,
.bl_members .el_arrow.slick-disabled{
	opacity: 0.6;
}
.bl_members .el_arrow.prev{
	background-image: url("../images/top/icon_btn-slider-prev.svg");
}
.bl_members .el_arrow.next{
	background-image: url("../images/top/icon_btn-slider-next.svg");
	margin-left: 20px;
}
@media (min-width:650px){
	.bl_members .bl_flexCol.bl_textCont{
		display: flex;
		align-items: flex-end;
	}
	.bl_members .bl_flexColL br{
		display: inherit;
	}
	.bl_members .bl_textCont,
	.bl_members  h2 .el_en{
		text-align: left;
	}
	.bl_members .bl_flexColL{
		width: 30%;
	}
	.bl_members .bl_btn{
		text-align: left;
	}
	.bl_members .el_btn{
		margin-bottom: 0;
	}
	.bl_members a.el_banner{
		margin-left: 2em;
		width: 67%;
		max-width: inherit;
	}
	.bl_memberCol a .bl_flexCont{
		display: flex;
		justify-content: flex-start;
		align-items: center;
	}
	.bl_memberCol figure{
		width: 35%;
		max-width: 200px;
		margin-right:2em;
		margin-bottom: inherit;
	}
	.bl_memberCol .bl_text{
		width: 55%;
		text-align: inherit;
	}
	.bl_memberCol .el_link{
		display: flex;
		align-items: center;
		justify-content: flex-end;
		font-size: 16px;
		text-align: right;
	}
	.bl_memberCol .el_link::after{
		background-image: url("../images/icon_btn-member.svg");
		background-repeat: no-repeat;
		background-position: center;
		background-size: contain;
		content: '';
		display: inline-block;
		margin-left: 10px;
		vertical-align: -11px;
		width: 40px;
		height: 40px;
	}
	.bl_memberCol .bl_comment{
		display: block;
		background-color: #fff;
		border-radius: 10px;
		font-size: 14px;
		font-weight: 500;
		margin-top: 10px;
		padding: 15px;
		line-height: 1.6;
	}
}
@media (min-width:950px){
	.bl_members{
		width: calc(100% - max(20px, 2.75vw));
	}
	.bl_members .bl_inner{
		max-width: 1500px;
		width: 94vw;
		padding: 7vw 7vw 0;
	}
	.bl_members>.bl_inner{
		display: flex;
	}
	.bl_members .bl_flexColL{
		width: 100%;
	}
	.bl_members .bl_flexCol.bl_textCont{
		position: relative;
		display: block;
		padding: 0;
		width: 42%;
		margin: 0;
		order:1;
	}
	.bl_members .bl_sliderCont {
		width: 55%;
		order:0;
		margin-top: 0;
	}
	.bl_members .bl_textCont,
	.bl_members  h2 .el_en,
	.bl_members .bl_btn{
		text-align: right;
	}
	.bl_members h2{
		margin-bottom: max(30px,1.25vw)!important;
	}
	.bl_members .el_arrow{
		width: 60px;
		height: 60px;
	}
	.bl_members .bl_arrowCont{
		display: block;
		margin-top: 0;
		position: absolute;
		bottom: auto;
		top: 0;
		left: 0;
	}
	.bl_memberCol figure{
		width: 40%;
		max-width: unset;
	}
	.bl_memberCol .bl_text{
		width: 52%;
	}
	.bl_members .el_icnImg{
		margin-right: 0;
		margin-left: auto;
	}
	.bl_members .bl_memberList + .bl_arrowCont{
		margin-top: 0;
	}
	.bl_members .el_arrow.prev{
		transform: rotate(90deg);
	}
	.bl_members .el_arrow.next{
		transform: rotate(90deg);
		margin-top: 20px;
		margin-left: 0;
	}
	.bl_memberList, .bl_memberList .slick-list {
			height: 750px !important;
		}
	.bl_memberCol {
		margin-bottom: max(20px,1vw);
	}
	.bl_members .bl_textCont .el_banner{
		margin-left: auto;
		margin-right: 0;
		margin-top: 1em;
	}
}


/*--------------------------------------------------------
	お知らせ
--------------------------------------------------------*/
.bl_info{
	width: 100%;
	margin: 0 auto;
}
.bl_info .bl_inner{
	width: 100%;
	margin: 0 auto;
	padding: max(60px,5vw) max(20px,2.75vw) ;
}
.bl_info h3{
	display: flex;
	align-items: center;
	color: #008E66;
	font-weight: bold;
	font-size: clamp(25px,2.25vw,50px);
	margin-bottom: clamp(20px,1.5vw,35px);
}
.bl_info h3::before{
	display: block;
	content: '';
	width: 30px;
	height: 1px;
	margin-right: .5em;
	background-color: #008E66;
}
.bl_info h3 br{
	display: none;
}
/* 行事予定（e-doyu埋め込み） */
.bl_info .bl_e-doyu .bl_iframeCont{
	width: 100%;
	height: 380px;
}
.bl_info .bl_e-doyu iframe{
	width: 100%;
	height: 100%;
}
/* その他のお知らせ */
.bl_info .bl_other{
	background-color: #F4F2E9;
	border-radius: clamp(10px,1.25vw,20px);
	padding: clamp(35px,2.5vw,70px);
}
.bl_info .bl_otherList li{
	border-bottom: 1px dashed #969696;
	padding: clamp(10px,.85vw,25px) 0;
}
.bl_info .bl_otherList li:first-child{
	border-top: 1px dashed #969696;
}
.bl_info .bl_otherList li a{
	display: block;
	padding-right: 50px;
	position: relative;
	width: 100%;
	height: 100%;
}
.bl_info .bl_otherList li a::after{
	background-image: url("../images/top/icon_btn-news.svg");
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	content: '';
	display: block;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 30px;
	height: 30px;
}
.bl_info .bl_otherList time{
	color: #666262;
	font-family: "Montserrat", sans-serif;
}
.bl_info .bl_otherList .el_title{
	font-weight: bold;
	line-height: 1.5;
	margin-bottom: 0;
}
.bl_info .bl_other .el_btn{
	margin-bottom: 0!important;
}
@media (min-width:950px){
	.bl_info .bl_inner{
		max-width: 1500px;
		width: 94vw;
		padding: 7vw 7vw;
	}
	.bl_info h3{
		width: 30%;
		min-width: 150px;
		align-items:flex-start;
	}
	.bl_info h3::before{
		margin-top: 1em;
	}
	.bl_info h3 br{
		display: block;
	}
	.bl_info .bl_otherList{
		width: 65%;
		min-width: calc(100%- 180px);
	}
	.bl_info .bl_otherList li a{
		display: flex;
		align-items: stretch;
		flex-wrap: wrap;
	}
	.bl_info .bl_otherList time{
		width: 30%;
	}
	.bl_info .bl_otherList .el_title{
		width: 68%;
		margin-left: 1.5em;
	}
	.bl_info .bl_other{
		display: flex;
		justify-content: space-between;
		align-items: stretch;
		flex-wrap: wrap;
	}
}


/*--------------------------------------------------------
	コラム
--------------------------------------------------------*/
.bl_column{
	background-color: #F1F5F7;
	margin-bottom: 0;
	padding: 80px clamp(15px,2.5vw,50px);
}
.bl_column .bl_inner{
	max-width: 1500px;
	margin: 0 auto;
}
/* コラム一覧 */
.bl_columnList{
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	flex-wrap: wrap;
}
.bl_columnCol{
	width: 48%;
}
.bl_columnCol:nth-child(n+3){
	margin-top: 40px;
}
.bl_columnCol a{
	display: block;
	width: 100%;
	height: 100%;
	transition: 0.3s;
}
.bl_columnCol figure{
	aspect-ratio: 6 / 4;
	margin-bottom: .5em;
}
.bl_columnCol figure img{
	border-radius: 10px;
	object-fit: cover;
	width: 100%;
	height: 100%;
}

.bl_columnCol .el_title{
	display: -webkit-box;
	font-weight: bold;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	overflow: hidden;
	line-height: 1.6;
	margin-bottom: 0;
}
.bl_columnCol  .el_cat{
	background-color: #BABCC4;
	border-radius: 5px;
	display: inline-block;
	font-size: clamp(13px,1vw,16px);
	font-family: "Montserrat", sans-serif;
    margin-bottom: 0;
	padding: .5rem 1.5rem;
	line-height: 1;
}
.bl_columnCol .el_time{
	margin: .5em 0 0;
	display: block;
	line-height: 1.7;
	color: #666262;
	font-family: "Montserrat", sans-serif;
	font-size: clamp(13px,1vw,16px);
}
.bl_columnCol .el_time::before{
	background-color: #008E66;
	content: '';
	display: inline-block;
	margin-right: 10px;
	width: 20px;
	height: 1px;
	vertical-align: 5px;
}
@media (min-width:950px){
	.bl_column{
		padding-top: 120px;
		padding-bottom: 160px;
	}
	.bl_columnCol{
		width: 22%;
	}
	.bl_columnCol:nth-child(n+3){
		margin-top: 0;
	}
	.bl_columnCol:nth-child(n+5){
		margin-top: 40px;
	}
}


/*--------------------------------------------------------
	入会案内
--------------------------------------------------------*/
.bl_membership{
	position: relative;
	margin: 0 auto;
	width: 100%;
}
.bl_membership .el_img{
	display: block;
	width: 100%;
	margin-top: min(-40px,-3vw);
}
.bl_membership .bl_imgCont figure{
	width: 100%;
}
.bl_membership .el_catchCopy{
	position: absolute;
	top: min(-40px,-3vw);
	left: 50%;
	transform: translateX(-50%);
	margin-top: 55vw;
	text-align: left;
	text-orientation: upright;
	writing-mode: vertical-rl;
	line-height: 1.3;
	color: #008E66;
	font-weight: bold;
	font-size: clamp(28px,4.5vw,80px);
}
.bl_membership .el_catchCopy::before{
	background-image: url("../images/top/img_membership-fukidashi.svg");
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	content: '';
	display: block;
	width: max(70px,10vw);
	height: 100%;
	position: absolute;
	top: -60%;
	right: min(-70px,-15vw);
}
.bl_membership .bl_textCont{
	width: 100%;
	margin: max(180px,23vw) auto 0;
	padding: 0 max(20px,2.75vw) max(60px,5vw);
	text-align: center;
}
/* ボタン */
.bl_membership .bl_textCont .bl_btnCont{
	display: block;
	margin: max(30px,1.25vw) auto 0;
}
.bl_membership .bl_textCont .bl_btnCont p{
	text-align: left!important;
}
.bl_membership .bl_textCont .bl_btnCont .el_btn{
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: 15px;
	margin: 0 auto 10px;
	max-width: 600px;
	height: 50px;
	border-radius: 10px;
}
.bl_membership .bl_textCont .bl_btnCont .el_btn::after{
	width: 20px;
	height: 20px;
}
.bl_membership .bl_textCont .bl_btnCont .el_btn:first-child{
	background-color: #008E66;
	border: 1px solid #008E66;
}
.bl_membership .bl_textCont .bl_btnCont .el_btn:last-child{
	background-color: #DF4B40;
	border: 1px solid #DF4B40;
}
.bl_membership .bl_textCont .bl_btnCont .el_btn:first-child:hover{
	background-color: #fff;
	color: #008E66;
}
.bl_membership .bl_textCont .bl_btnCont .el_btn:last-child:hover{
	background-color: #fff;
	color: #DF4B40!important;
}
.bl_membership .bl_textCont .bl_btnCont .el_btn:first-child::after{
	background-image: url("../images/top/icon_btn-membership-g.svg");
}
.bl_membership .bl_textCont .bl_btnCont .el_btn:last-child::after{
	background-image: url("../images/top/icon_btn-membership-r.svg");
}
.bl_membership .bl_textCont .bl_btnCont .el_btn:first-child:hover::after{
	background-image: url("../images/top/icon_btn-membership-g-hover.svg");
}
.bl_membership .bl_textCont .bl_btnCont .el_btn:last-child:hover::after{
	background-image: url("../images/top/icon_btn-membership-r-hover.svg");
}
@media (min-width:950px){
	.bl_membership .el_catchCopy::before{
		right: -10vw;
	}
	.bl_membership .bl_textCont{
		width: 94vw;
		max-width: 1500px;
		margin: 0 auto;
		padding: min(24vw,400px) 0 max(60px,5vw);
	}
	.bl_membership .bl_textCont .bl_btnCont{
		display: flex;
		align-items: center;
		justify-content: center;
		flex-wrap: wrap;
	}
	.bl_membership .bl_textCont .bl_btnCont p{
		text-align:center!important;
	}
	.bl_membership .bl_textCont .bl_btnCont .el_btn{
		font-size: 20px;
		height: 80px;
	}
	.bl_membership .bl_textCont .bl_btnCont .el_btn{
        margin: 0;
        padding: .5rem 80px .5rem 60px;
	}
	.bl_membership .bl_textCont .bl_btnCont .el_btn+.el_btn{
        margin-left: 30px;
	}
	.bl_membership .bl_textCont .bl_btnCont .el_btn::after{
		width: 40px;
		height: 40px;
	}
}


/*--------------------------------------------------------
	TOP お問い合わせ
--------------------------------------------------------*/
.bl_contactCont{
	position: relative;
	background-image: url("../images/top/img_contact-bg.jpg");
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	width: 100%;
	margin: 0 auto;
}
.bl_contactCont::before{
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	background-color: #00362780;
	content: '';
	display: block;
	width: 100%;
	height: 100%;
}
.bl_contactCont .bl_inner{
	position: relative;
	z-index: 11;
	width: 100%;
	margin: 0 auto;
	padding: max(40px,3.5vw) max(20px,2.75vw) ;
}
.bl_contactCont a{
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	height: 110px;
	background-color: #FFFFFFD9;
	border-radius: clamp(10px,1.25vw,20px);
	padding: clamp(15px,2.5vw,70px);
}
.bl_contactCont a:hover{
	background-color: #FFFFFF;
	opacity: 1!important;
}
.bl_contactCont a img{
	max-width: 135px;
	width: 18vw;
	margin-right: 2.5em;
	margin-left: auto;
}
.bl_contactCont p.el_ttl{
	color: #008E66;
	font-weight: bold;
	font-size: clamp(22px,2.5vw,45px);
	line-height: 1.4;
}
.bl_contactCont .bl_flexCont p.el_ttl{
	font-size: clamp(22px,2.5vw,45px);
}
.bl_contactCont .el_en{
	color: #666262;
	display: block;
	font-family: "Montserrat", sans-serif;
	font-size:  clamp(12px,1.5vw, 20px);
	font-weight: normal;
}
.bl_contactCont .el_en::before{
	background-color: #003627;
	border-radius: 50%;
	content: '';
	display: inline-block;
	margin-right: 10px;
	width: 8px;
	height: 8px;
	vertical-align: 2px;
}
.bl_contactCont p{
	line-height: 1.3;
}
.bl_contactCont .bl_flexCont,
.bl_contactCont .bl_flexCont a.bl_e-doyu{
	margin-top: 20px;
}
.bl_contactCont a::after{
	content: '';
	display: block;
	right: 30px;
	width: 50px;
	height: 50px;
	background-image: url("../images/top/icon_btn-contact.svg");
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}
@media (min-width:950px){
	.bl_contactCont .bl_inner{
		max-width: 1500px;
		width: 94vw;
		padding: 7vw 0;
	}
	.bl_contactCont .bl_flexCont{
		display: flex;
		justify-content: space-between;
		align-items: stretch;
		flex-wrap: wrap;
	}
	.bl_contactCont a{
		height: unset;
	}
	.bl_contactCont a.bl_contact{
		height: 310px;
	}
	.bl_contactCont .bl_flexCont a{
		width: 48%;
	}
	.bl_contactCont .bl_flexCont a.bl_e-doyu{
		margin-top: 0;
	}
}