@charset "utf-8";
/*--------------------------------------------------------
	共通
--------------------------------------------------------*/
*{
	margin: 0;
	padding: 0;
}
*,
*::before, *::after{
	box-sizing: inherit;
}

html {
	scroll-behavior: smooth;
    scroll-padding-top: 100px;
}
@media (min-width:950px){
    html {
        scroll-padding-top: 150px;
    }
}

body{
	box-sizing: border-box;
	color: #231815;
	font-family: "Noto Sans JP", sans-serif;
	font-optical-sizing: auto;
	font-weight: normal;
	font-style: normal;
	font-size: clamp(15px,1.1vw, 18px);
	line-height: 1.6;
	margin: 0!important;
	overflow-x: hidden!important;
}
body.active{
	width: 100%;
	touch-action: none;
	-webkit-overflow-scrolling: none;
	overflow: hidden!important;
	overscroll-behavior: none;
}
p,ul,ol{
	line-height: 1.8;
}
img{
	max-width: 100%;
	height: auto;
	display: block;
	margin: 0 auto;
}
a{
	color: #231815;
	text-decoration: none;
	transition: .3s;
}
a:hover{
	opacity: .6;
}
ul,ol{
	list-style: none;
}
@media (min-width:950px){
	p,ul,ol{
		line-height: 2;
	}
	p{
		margin-bottom: 20px;
	}
}

/*--------------------------------------------------------
	共通 ボタン
--------------------------------------------------------*/
.bl_btn {
	width: 100%;
	margin: 0 auto;
}
/* 緑 */
.el_btn{
	position: relative;
	background-color: #008E66;
	border: 1px solid #008E66;
	display: inline-block;
	margin: max(20px,1.25vw,35px) auto;
	border-radius: 60px;
	color: #fff!important;
	font-weight: bold;
	text-align: center;
	padding: .5rem min(60px,calc(4vw + 20px)) .5rem min(60px,4vw);
	max-width: 650px;
	line-height: 1.7;
	text-decoration:none!important; 
}
.el_btn::after{
	position: absolute;
	top: 50%;
	right: 1em;
	transform: translateY(-50%);
	display: block;
	width: 15px;
	height: 15px;
	content: '';
	background-image: url("../images/icon_btn-arrow-w.svg");
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}
.el_btn:hover{
	background-color: #fff;
	color: #008E66!important;
	opacity: 1;
}
.el_btn:hover::after{
	background-image: url("../images/icon_btn-arrow-g.svg");
}

/* 白 */
.el_btn.white{
	background-color: #fff;
	border: 1px solid #008E66;
	color: #008E66!important;
}
.el_btn.white:hover{
	background-color: #008E66;
	border: 1px solid #008E66;
	color: #fff!important;
}
.el_btn.white::after{
	background-image: url("../images/icon_btn-arrow-g.svg")
}
.el_btn.white:hover::after{
	background-image: url("../images/icon_btn-arrow-w.svg")
}

/* 濃い緑 */
.el_btn.dgreen{
	background-color: #003627;
	border: 1px solid #003627;
	color: #fff!important;
}
.el_btn.dgreen:hover{
	background-color: #fff;
	color: #003627!important;
}
.el_btn.dgreen::after{
	background-image: url("../images/icon_btn-arrow-w.svg")
}
.el_btn.dgreen:hover::after{
	background-image: url("../images/icon_btn-arrow-dg.svg")
}
@media (min-width:950px){
	.el_btn{
		line-height: 2.2;
	}
}


/*--------------------------------------------------------
	ヘッダー
	　＞グローバルメニュー
--------------------------------------------------------*/
.ly_header{
	background-color: #fff;
	position: fixed;
	top: 0;
	z-index: 999;
	transition: .5s;
	width: 100%;
	height: 60px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
@media (min-width:950px){
	.ly_header{
		height: 110px;
	}
}
/*========= グローバルメニュー 共通 ==========*/
.bl_globalMenu li a{
	display: block;
	font-weight: bold;
	transition: .3s;
}

/*========= 左側 同友会ロゴ ==========*/
.el_headerLogo{
	display: block;
	margin-left: clamp(13px,2vw,50px);
	width: auto;
	height: clamp(35px,2.5vw,60px);
}
.el_headerLogo a{
	color: #000;
	display: block;
	width: auto;
	height: 100%;
	text-decoration: none;
	transition: .3s;
}
.el_headerLogo a:hover{
	opacity: .6;
}
.el_headerLogo img{
	width: auto;
	height: 100%;
}

/*========= 右側 ==========*/
.bl_headerR{
	display: flex;
	align-items: center;
}

/*========= 右側 ハンバーガーメニュー開閉ボタン ==========*/
.el_headerBtn{
	position: relative;
	z-index: 999999;
	width: 60px;
	height: 32px;
	margin-right: clamp(13px,2vw,50px);
	background-color: #008E66;
	border: 1px solid #008E66;
	border-radius: 30px;
	cursor: pointer;
	transition: .3s;
}
.el_headerBtn .el_headerBtnCont{
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
	width: 24px;
	height: 16px;
}
.el_headerBtn span{
	background-color: #fff;
	border-radius: clamp(10px,1.25vw,20px);
	position: absolute;
	left: 0;
	width: 100%;
	height: 2px;
}
.el_headerBtn span{
	display: inline-block;
	transition: all .5s;
	box-sizing: border-box;
}
.el_headerBtn span:nth-of-type(1){
	top: 0;
}
.el_headerBtn span:nth-of-type(2){
	top: 50%;
	transform: translateY(-50%);
}
.el_headerBtn span:nth-of-type(3){
	bottom: 0;
}
.el_headerBtn:hover{
	background-color: #fff;
}
.el_headerBtn:hover span{
	background-color: #008E66;
}
@media (min-width:950px){
	.el_headerBtn{
		width: 80px;
		height: 40px;
	}
	.el_headerBtn .el_headerBtnCont{
		width: 40px;
	}
}
/* ハンバーガーボタン動作用 */
.el_headerBtn.active span:nth-of-type(1){
	-webkit-transform: translateY(7px) rotate(-20deg);
	transform: translateY(7px) rotate(-20deg);
}
.el_headerBtn.active span:nth-of-type(2){
	opacity: 0;
}
.el_headerBtn.active span:nth-of-type(3){
	-webkit-transform: translateY(-7px) rotate(20deg);
	transform: translateY(-7px) rotate(20deg);
}
@media (min-width:950px){
	.el_headerBtn.active span:nth-of-type(1){
		-webkit-transform: translateY(6.5px) rotate(-20deg);
		transform: translateY(6.5px) rotate(-20deg);
	}
	.el_headerBtn.active span:nth-of-type(3){
		-webkit-transform: translateY(-6.5px) rotate(20deg);
		transform: translateY(-6.5px) rotate(20deg);
	}
}

/*========= 右側 グローバルメニュー※PCのみ表示 ==========*/
.bl_globalMenu.pc{
	display: none;
}
@media (min-width:1180px){
	.bl_globalMenu.pc{
		display: flex;
		justify-content: flex-end;
		align-items: center;
		margin-right: max(10px,.65vw);
		padding: 0;
		height: 100%;
		width: auto;
		z-index: 999;
	}
	.bl_globalMenu.pc li{
		display: flex;
		justify-content: center;
		align-items: center;
		position: relative;
		height: 100%;
		margin-right: max(1.125vw,15px);
	}
	.bl_globalMenu.pc li:last-child{
		margin-right: 0;
	}
	.bl_globalMenu.pc li:hover .bl_subMenu{
		visibility: visible;
		opacity: 1;
	}
	.bl_globalMenu.pc li+li{
		margin-top: 0;
	}
	.bl_globalMenu.pc li a{
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		height: auto;
	}
	
	/*========= 入会案内 ==========*/
	.bl_globalMenu.pc li .el_join{
		display: flex;
		justify-content: center;
		align-items: center;
		margin: 0;
		padding: 0 2em;
		height: 40px;
		background-color: #DF4B40;
		border: 1px solid #DF4B40;
		border-radius: 30px;
		color: #fff;
		opacity: 1;
	}
	.bl_globalMenu.pc li .el_join:hover{
		background-color: #fff;
		color: #DF4B40;
	}
	
	/*========= 下表示 サブメニュー ==========*/
	.bl_globalMenu.pc .bl_subMenu{
		position: absolute;
		top: 40px;
		left: -20px;
		width: 280px;
		padding: 30px;
		visibility: hidden;
		opacity: 0;
		background-color: #003627;
		border-radius: clamp(10px,1.25vw,20px);
		transition: .3s;
	}
	.bl_globalMenu.pc .bl_subMenu li{
		width: 100%;
		height: auto;
	}
	.bl_globalMenu.pc .bl_subMenu li+li{
		margin-top: 10px;
	}
	.bl_globalMenu.pc .bl_subMenu a{
		color: #fff;
		display: block;
		font-size: 18px;
		position: relative;
		height: auto;
	}
	.bl_globalMenu.pc .bl_subMenu a::after{
		background-image: url("../images/icon_gm-menu-w.svg");
		background-position: center;
		background-repeat: no-repeat;
		background-size: contain;
		content: '';
		display: block;
		position: absolute;
		top: 50%;
		right: 0;
		transform: translateY(-50%);
		width: 15px;
		height: 15px;
	}
	.bl_globalMenu.pc .bl_subMenu a[href$=".pdf"] span::after{
		background-image: url("../images/icon_gm-pdf-pc.svg");
		background-position: center;
		background-repeat: no-repeat;
		background-size: contain;
		content: '';
		display: inline-block;
		margin-left: 10px;
		width: 18px;
		height: 18px;
		vertical-align: middle;
	}
}

/*--------------------------------------------------------
	ヘッダー
	　＞ハンバーガーメニュー
--------------------------------------------------------*/
.bl_hamburgerMenuCont{
	position: fixed;
	top: 0;
	left: 0;
	z-index: 999990;
	background-color: #fff;
	display: none;
	overflow-x: hidden!important;
	overflow-y: scroll!important;
	padding: 15px;
	width: 100vw;
	height: 100vh;
}
.bl_hamburgerMenuCont .bl_inner{
	margin: 18px auto max(30px,2vw);
}
/*========= メニュー画面 ロゴ ==========*/
.bl_hamburgerMenuCont .el_headerLogo{
	width: fit-content;
	margin-left: 0;
	margin-bottom: max(25px,1.75vw);
}
/*========= メニュー画面 ==========*/
.bl_hamburgerMenuCont .bl_globalMenu li:first-child,
.bl_hamburgerMenuCont .bl_globalMenu li+li{
	margin-top: max(15px,1vw);
}
.bl_hamburgerMenuCont .bl_globalMenu li{
	border-bottom: 1px solid #B9C4C9;
	padding-bottom: max(15px,1vw);
}
.bl_hamburgerMenuCont .bl_globalMenu li a small{
	color: #666262;
	display: block;
	font-size: clamp(12px,.75vw, 16px);
	font-weight: normal;
	font-family: "Montserrat", sans-serif;
}
.bl_hamburgerMenuCont .bl_globalMenu li a:hover{
	opacity: .6;
}
.bl_hamburgerMenuCont .bl_globalMenu li a{
	font-size: clamp(20px,1.5vw, 32px);
	position: relative;
}
.bl_hamburgerMenuCont .bl_globalMenu li a::after{
	background-image: url("../images/icon_gm-menu.svg");
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	content: '';
	display: block;
	position: absolute;
	top: 15px;
	right: 0;
	width: 15px;
	height: 15px;
}
.bl_hamburgerMenuCont .bl_globalMenu .el_e-doyu{
	border: 0;
}
.bl_hamburgerMenuCont .bl_globalMenu .el_e-doyu a{
	background-color: #003627;
	border: 1px solid #003627;
	border-radius: clamp(10px,1.25vw,20px);
	color: #fff;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	padding: 0 15px 0 90px;
	width: 100%;
	height: 60px;
}
.bl_hamburgerMenuCont .bl_globalMenu .el_e-doyu small{
	color: #fff;
}
.bl_hamburgerMenuCont .bl_globalMenu .el_e-doyu a::before{
	background-image: url("../images/icon_e-doyu.png");
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	left: 15px;
	transform: translateY(-50%);
	width: 60px;
	height: 60px;
}
.bl_hamburgerMenuCont .bl_globalMenu .el_e-doyu a::after{
	background-image: url("../images/icon_btn-arrow-w.svg");
	top: 50%;
	right: 15px;
	transform: translateY(-50%);
}
.bl_hamburgerMenuCont .bl_globalMenu .el_e-doyu a:hover{
	background-color: #fff;
	color: #003627;
	opacity: 1;
}
.bl_hamburgerMenuCont .bl_globalMenu .el_e-doyu a:hover small{
	color: #003627;
}
.bl_hamburgerMenuCont .bl_globalMenu .el_e-doyu a:hover::after{
	background-image: url("../images/icon_btn-arrow-dg.svg");
}
@media (min-width:950px){
	.bl_hamburgerMenuCont .bl_inner{
		margin-top: max(30px,2vw);
		width: 94vw;
		max-width: 1500px;
		padding: 0 0 max(80px,5vw);
	}
	.bl_hamburgerMenuCont .bl_globalMenuCont{
		display: flex;
		justify-content: space-between;
		align-items: stretch;
		flex-wrap: wrap;
		padding-bottom: 60px;
		width: 100%;
	}
	.bl_hamburgerMenuCont .bl_globalMenu{
		margin: 0;
		padding: 0;
		width: 30%;
	}
	.bl_hamburgerMenuCont .bl_globalMenu .el_e-doyu a{
		padding: 0 15px 0 120px;
		height: 100px;
	}
	.bl_hamburgerMenuCont .bl_globalMenu .el_e-doyu a::before{
		width: 90px;
		height: 90px;
	}
	.bl_hamburgerMenuCont .bl_globalMenuCont{
		padding: 0;
	}
}
/* 入会案内 */
.bl_hamburgerMenuCont .el_join{
	margin: 0 auto max(15px,1vw);
	padding: 5px;
}
.bl_hamburgerMenuCont .el_join a{
	background-color: #DF4B40;
	border: 1px solid #DF4B40;
	border-radius: clamp(10px,1.25vw,20px);
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: clamp(14px,.85vw, 17px);
	font-weight: bold;
	opacity: 1;
	width: 100%;
	height: 40px;
}
.bl_hamburgerMenuCont .el_join a:hover{
	background-color: #fff;
	color: #DF4B40;
}
@media (min-width:950px){
	.bl_hamburgerMenuCont .el_join{
		display: none;
	}
}
/* サブメニュー */
.bl_hamburgerMenuCont .bl_globalMenu .bl_subMenu{
	display: block;
	margin-top: max(18px,1.125vw);
}
.bl_hamburgerMenuCont .bl_globalMenu .bl_subMenu li{
	border-bottom: 0;
	padding-bottom: 0;
}
.bl_hamburgerMenuCont .bl_globalMenu .bl_subMenu li:last-of-type{
	border-bottom: 0;
	padding-bottom: 0;
}
.bl_hamburgerMenuCont .bl_globalMenu .bl_subMenu li+li{
	margin-top: max(5px,.25vw);
}
.bl_hamburgerMenuCont .bl_globalMenu .bl_subMenu li a{
	font-size: clamp(14px,.85vw, 17px);
	font-weight: 500;
	position: relative;
	padding-left: 15px;
}
.bl_hamburgerMenuCont .bl_globalMenu .bl_subMenu li a[href$=".pdf"] span::after{
	background-image: url("../images/icon_gm-pdf.svg");
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	content: '';
	display: inline-block;
	margin-left: 10px;
	width: 18px;
	height: 18px;
	vertical-align: middle;
}
.bl_hamburgerMenuCont .bl_globalMenu .bl_subMenu li a::before{
	background-color: #009966;
	border-radius: 50%;
	content: '';
	position: absolute;
	top: 8px;
	left: 0;
	width: 5px;
	height: 5px;
}
.bl_hamburgerMenuCont .bl_globalMenu .bl_subMenu li a::after{
	display: none;
}
/*========= SNSリンク ==========*/
.bl_hamburgerMenuCont .bl_snsCont{
	margin: max(15px,1vw) auto;
	padding: 0 15px;
}
.bl_hamburgerMenuCont .bl_snsCont p{
	color: #666262;
	font-weight: normal;
	font-family: "Montserrat", sans-serif;
	text-align: center;
	margin-bottom: 10px;
}
.bl_hamburgerMenuCont .bl_snsCont p span{
	display: inline-block;
	padding-left: 15px;
	position: relative;
}
.bl_hamburgerMenuCont .bl_snsCont p span::before{
	background-color: #009966;
	border-radius: 50%;
	content: '';
	position: absolute;
	top: 10px;
	left: 0;
	width: 5px;
	height: 5px;
}
.bl_hamburgerMenuCont .bl_snsCont .bl_snsList{
	display: flex;justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	list-style: none;
	margin-left: 1.25rem;
}
.bl_hamburgerMenuCont .bl_snsCont .bl_snsList li{
	width:  clamp(30px,2vw, 40px);
}
.bl_hamburgerMenuCont .bl_snsCont .bl_snsList li+li{
	margin-left: 1rem;
}
.bl_hamburgerMenuCont .bl_snsCont .bl_snsList li img{
	width: 100%;
}
@media (min-width:950px){
	.bl_hamburgerMenuCont .bl_snsCont {
		width: fit-content;
		margin: 0 auto;
		margin-right: 0;
	}
	.bl_hamburgerMenuCont .bl_globalMenu .bl_subMenu li a::before{
		top: 15px;
	}
}


/*--------------------------------------------------------
	バナー　広告
--------------------------------------------------------*/
.bl_bannerCont{
	width: 100%;
	margin: 0 auto;
	padding: max(40px,5vw) max(13px,3vw);
}
.bl_bannerList{
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	flex-wrap: wrap;
	width: 100%;
	margin: 0 auto;
}
.bl_bannerList .el_banner{
	margin: 0;
	width: 48%;
}
.bl_bannerList .el_banner:nth-child(n+3){
	margin-top: max(20px,2.75vw);
}
.bl_bannerList .el_banner img{
	border: 1px solid #ccc;
	margin: 0;
	width: 100%;
}
@media (min-width:650px){
	.bl_bannerCont{
		width: 94vw;
		max-width: 1500px;
		padding: max(80px,5vw) 0;
	}
	.bl_bannerList .el_banner{
		width: 23%;
	}
	.bl_bannerList .el_banner:nth-child(n+3){
		margin-top: 0;
	}
	.bl_bannerList .el_banner:nth-child(n+5){
		margin-top: 30px;
	}
}

/*--------------------------------------------------------
	バナー　別サイト
--------------------------------------------------------*/
.other .bl_bannerList .el_banner img{
	border: 0;
}
@media (min-width:650px){
	.bl_bannerList.other .el_banner{
		width: 18%;
	}
	.bl_bannerList.other .el_banner:nth-child(n+5){
		margin-top: 0;
	}
}


/*--------------------------------------------------------
	追従バナー「同友会を知る会」
--------------------------------------------------------*/
.bl_shirukai-banner{
	position: fixed;
	left: 8px;
	bottom: 8px;
	width: calc(100% - 75px);
	z-index: 900;
}
.bl_shirukai-banner a{
	background: #B81205;
	border-radius: clamp(5px,1vw,15px) ;
	color: #fff;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	margin: auto;
	transition: .3s;
	padding: 0 10px;
	position: relative;
	width: 100%;
	height: 50px;
}
.bl_shirukai-banner a:hover{
	opacity: .6;
}
.bl_shirukai-banner p{
	font-size: clamp(14px,2.5vw,30px);
	font-weight: bold;
}
.bl_shirukai-banner img{
	position: absolute;
	right: max(10px,2vw);
	bottom: 0;
	height: 90%;
}
@media (min-width:540px){
	.bl_shirukai-banner p{
		width: 100%;
		text-align: center;
	}
}
@media (min-width:950px){
	.bl_shirukai-banner{
		left: auto;
		right: 10px;
		bottom: 70px;
		width: clamp(140px,8vw,180px);
		height: clamp(140px,8vw,180px);
	}
	.bl_shirukai-banner a{
		display: block;
		border-radius: clamp(5px,.75vw,10px);
		width: 100%;
		height: 100%;
	}
	.bl_shirukai-banner p{
		position: absolute;
		top: 10px;
		left: 0;
		width: 100%;
		font-size: clamp(14px,.95vw,16px);
		font-weight: inherit;
		text-align: center;
		transform: none;
		line-height: 1.4;
	}
	.bl_shirukai-banner p span{
		display: block;
		font-size: clamp(16px,1vw,20px);
		font-weight: bold;
	}
	.bl_shirukai-banner img{
		left: 50%;
		bottom: 0;
		transform: translateX(-50%);
		width: clamp(125px,5.75vw,165px);
		height: auto;
	}
}


/*--------------------------------------------------------
	ページトップに戻るボタン
--------------------------------------------------------*/
.bl_pageTop{
	position: fixed;
	right: 8px;
	bottom: 8px;
	width: 50px;
	height: 50px;
	z-index: 900;
}
.el_pageTop{
	background: #000;
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 10px;
	font-weight: bold;
	margin: auto;
	text-align: center;
	transition: .3s;
	line-height: 1.4;
	z-index: 100;
	width: 100%;
	height: 100%;
}
.el_pageTop:hover{
	opacity: .6;
}


/*--------------------------------------------------------
	フッター
--------------------------------------------------------*/
.ly_footer{
	background-color: #003627;
	width: 100%;
	margin: 0 auto;
}
.ly_footer .bl_inner{
	width: 100%;
	margin: 0 auto;
	padding: max(80px,5vw) max(20px,2.75vw);
}
.ly_footer p,
.ly_footer a{
	color: #fff;
}
.ly_footer .bl_flexCont{
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	flex-wrap: wrap;
	margin-bottom: 60px;
}
/* 左側　同友会情報 */
.ly_footer .left .el_footerLogo{
	display: block;
	max-width: 350px;
	margin-bottom: 20px;
	width: 80%;
}
.ly_footer .left .bl_snsList{
	display: flex;
	justify-content: flex-start;
	align-items: center;
	flex-wrap: wrap;
	list-style: none;
	margin-top: 30px;
}
.ly_footer .left .bl_snsList li{
	width: 30px;
}
.ly_footer .left .bl_snsList li+li{
	margin-left: 20px;
}
.ly_footer .left .bl_snsList li img{
	width: 100%;
}
/* サイトマップ */
.ly_footer .right{
	display: none;
}
.ly_footer .right .el_btn{
	margin-top: 1.5vw;
	background-color: #fff;
	border: 1px solid #fff;
	color: #003627!important;
}
.ly_footer .right .el_btn:hover{
	background-color: #003627;
	color: #fff!important;
}
.ly_footer .right .el_btn::after{
	background-image: url("../images/icon_btn-arrow-dg.svg")
}
.ly_footer .right .el_btn:hover::after{
	background-image: url("../images/icon_btn-arrow-w.svg")
}
/* コピーライト */
.ly_footer .el_copyright{
	font-size: 13px;
}
@media (min-width:950px){
	.ly_footer .bl_inner{
		width: 94vw;
		max-width: 1500px;
		padding: max(80px,5vw) 0;
	}
	.ly_footer .bl_flexCont{
		width: 100%;
		margin-bottom: max(60px,2.5vw);
	}
	.ly_footer .left{
		max-width: 400px;
		width: 35%;
	}
	.ly_footer .right{
		display: flex;
		justify-content: space-between;
		align-items: stretch;
		flex-wrap: wrap;
		width: clamp(500px,38vw,750px);
	}
	.ly_footer .right .bl_sitemap li,
	.ly_footer .right .bl_sitemap li+li{
		line-height: 1.6;
	}
	.ly_footer .right .bl_sitemap li{
		font-weight: 700;
	}
	.ly_footer .right .bl_sitemap li+li,
	.ly_footer .right .bl_sitemap li ul{
		margin-top: .5em;
	}
	.ly_footer .right .bl_sitemap li ul li a{
		font-weight: normal;
	}
	.ly_footer .right .bl_sitemap li ul li a::before{
		content: '－';
		margin-right: 5px;
	}
}


/*--------------------------------------------------------
	並列ブロック .bl_flexCol　width指定
--------------------------------------------------------*/
.bl_flexCont{
	display: block;
	flex-wrap: wrap;
}
.bl_flexCol{
	width: 100%;
}
.bl_flexCol img{
	margin: 0;
	width: 100%;
}
.bl_flexCol20{
	width: 20%;
}
.bl_flexCol30{
	width: 30%;
}
.bl_flexCol40{
	width: 40%;
}
.bl_flexCol50{
	width: 47%;
}
.bl_flexCol60{
	width: 55%;
}
.bl_flexCol70{
	width: 65%;
}
.bl_flexCol80{
	width: 75%;
}
.bl_flexCol100{
	width: 100%;
	margin: 0 auto;
}
.bl_flexCol20 img,
.bl_flexCol30 img,
.bl_flexCol40 img,
.bl_flexCol50 img,
.bl_flexCol60 img,
.bl_flexCol70 img,
.bl_flexCol80 img{
	width: 100%;
	object-fit: cover;
}
/* box揃え*/
.bl_flexCol__jcB{ justify-content: space-between!important; }
.bl_flexCol__jcC{ justify-content: center!important; }
.bl_flexCol__aiS{align-items: flex-start!important;}
.bl_flexCol__aiE{align-items: flex-end!important;}
.bl_flexCol__aiC{align-items: center!important;}

@media (min-width: 950px){
	.bl_flexCont{
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	.bl_flexColRev{
		flex-direction: row-reverse;
	}
	.bl_flexCol__mar{
		margin: 0 2vw;
	}
}
@media screen and (max-width: 950px) {
	.bl_flexCol20,
	.bl_flexCol30,
	.bl_flexCol40,
	.bl_flexCol50,
	.bl_flexCol60,
	.bl_flexCol70,
	.bl_flexCol80{
		width: 100%;
		margin: 0 0 1em!important
	}
}

/*--------------------------------------------------------
	ヘルパー
--------------------------------------------------------*/
/* フォントサイズ */
.hp_fsS{
	font-weight: 500;
	font-size: clamp(13px,.729vw,15px)!important;
}
.hp_fsM{
	font-weight: 500;
	font-size: clamp(20px,1.15vw,24px)!important;
}
.hp_fsL{
	font-weight: 500;
	font-size: clamp(27px,2.25vw,40px)!important;
}
.hp_fs2L{
	font-weight: 500;
	font-size: clamp(25px,4vw,52px)!important;
}
.hp_fs3L{
	font-weight: 500;
	font-size: clamp(32px,4.5vw,65px)!important;
}
/* フォントカラー */
.hp_fcWhite{ color: #fff!important; }
.hp_fcBlack{ color: #231815!important; }
.hp_fcGreen{ color: #008E66!important; }
.hp_fcRed{ color: #DF4B40!important; }

/* フォント太字 */
.hp_fw700,.el_fwBold{ font-weight: 700; }
a.hp_ul{text-decoration: underline!important;}

/* テキスト寄せ */
.hp_txtCenter{ text-align: center!important; }
.hp_txtRight{ text-align: right!important; }
.hp_txtLeft{ text-align: left!important; }

/* マージン */
.hp_mt0{ margin-top: 0!important; }
.hp_mt5rem{ margin-top: 2.75rem!important; }
.hp_mt3rem{ margin-top: 1.75rem!important; }
.hp_mt2rem{ margin-top: 1rem!important; }
.hp_mt1rem{ margin-top: .75rem!important; }
.hp_mb5rem{ margin-bottom: 3.5rem!important; }
.hp_mb3rem{ margin-bottom: 1.75rem!important; }
.hp_mb2rem{ margin-bottom: 1rem!important; }
.hp_mb1rem{ margin-bottom: .5rem!important; }
.hp_mb0{ margin-bottom: 0!important; }
.hp_m2rem{ margin: 1rem auto!important; }
.hp_m1rem{ margin: .75rem auto!important; }
.hp_m0{ margin: 0!important; }

/* media別表示 */
.hp_pcOnly { display: none !important; }

a.hp_linkNoUl{
	text-decoration: none!important;
}
@media (min-width: 950px) {
	/* media別表示 */
	.hp_spOnly { display: none !important; }
	.hp_pcOnly { display:block !important; }
	
	/* マージン */
	.hp_mt5rem{ margin-top: max(60px,3vw)!important; }
	.hp_mt3rem{ margin-top: 3rem!important; }
	.hp_mt2rem{ margin-top: 2rem!important; }
	.hp_mt1rem{ margin-top: 1rem!important; }
	.hp_mb5rem{ margin-bottom: max(60px,3vw)!important; }
	.hp_mb3rem{ margin-bottom: 3rem!important; }
	.hp_mb2rem{ margin-bottom: 2rem!important; }
	.hp_mb1rem{ margin-bottom: 1rem!important; }
	.hp_m2rem{ margin: 2rem auto!important; }
	.hp_m1rem{ margin: 1rem auto!important; }
}