@charset "utf-8";
/*
Theme Name: 
Theme URI:
Description:
Author:atGunGun
Author URI:https://at-gungun.com/
Version:7.7
*/
@charset "utf-8";

/*-----------------------------------------------------------
全体スタイル
-----------------------------------------------------------*/

body {
	font-weight: 500;
	width: 100% !important;
	color: #333;
	line-height: 1.714;
	overflow: hidden;
	font-size: 1.4rem;
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	font-family: "Noto Sans JP", sans-serif!important;
	background: #FAF8EB;
}

.en{
	font-family: "Barlow", sans-serif!important;
}

.serif{
	font-family: "Noto Serif JP", serif!important;
}

.sans{
	font-family: "Noto Sans JP", sans-serif!important;
}


/* color */
.white{
	color: #ffffff!important;
}
.blue{
	color: blue;
}
.red{
	color: red;
}
.green{
	color: #4D8E41;
}
.green2{
	color: #0B7C4E;
}
.green3{
	color:#87C47B;
}
.yellow{
	color: yellow;
}
.black{
	color: #333;
}

.bgwh{
	background: #ffffff;
}
.bgblu{
	background: linear-gradient(to right, #165888 , #172D6B);
}
.bgbla{
	background:#333;
}
.bgred{
	background: red;
}
.bggre{
	background: #4D8E41;
}
.bggre2{
	background: #0B7C4E;
}
.bggre3{
	background:#87C47B;
}
.bgyel{
	background: yellow;
}

/*リンク表示方法*/

a {
	text-decoration: none;	
}

a:link {
	color: #333;
}

a:visited {
	color: #333;
}

a:active {
	color: #333;
}

a:hover {
	opacity: 0.7;
}

a:hover img {
	opacity: 1;
}

.hLogo a:hover{
	opacity: 1;
}

:has( > .lista){
	position: relative;
}

.lista{
	position: absolute;
	left: 0;
	top:0;
	width:100%;
	height:100%;
	z-index: 1;
}

a[href*="tel:"] {
	pointer-events: none;
	cursor: default;
	text-decoration: none;
	}
/*-----------------------------------------------------------
PCサイズ
-----------------------------------------------------------*/

.pc,.pc2 {
	display: block;
}

.sp,.sp2, .spTel {
	display: none;
}

.pcTel {
	display: inline;
}


/*-----------------------------------------------------------
header
-----------------------------------------------------------*/

header {
	padding: 0 3.125%;
	width: 100%;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
	position: fixed;
	left: 0;
	right: 0;
	z-index: 9999;
	/* transition: .4s; */
	background: #fff;
	height: 102px;
}

header.headerScroll{
	background: #fff;
}

.hLogo{
	max-width: 134px;
	width: 25%;
}


.logo a:hover img {
	opacity: 1;
}

.headerTel {
	margin: 0 0 0 0;
	padding: 0px 0 0;
	font-weight: 900;
}

.off_img{
	display:block;
}

.on_img{
	display:none;
}

.headerScroll .off_img{
	display:none;
}

.headerScroll .on_img{
	display:block;
}

/*-----------------------------------------------------------
テーブル共通
-----------------------------------------------------------*/

table {
	border-collapse: separate;
}



/*-----------------------------------------------------------
 nav
-----------------------------------------------------------*/

.pc_nav{
	width: 72%;
	display: flex;
	max-width: 847px;
	align-items: center;
	justify-content: flex-end;
}

.nav_list1{
	display: flex;
	justify-content: flex-end;
	max-width: 647px;
	width: 77%;
}

.nav_list1 li {
	margin-left:auto;
	position: relative;
}

.nav_list1 li:before{
	position:absolute;
	content:"";
	width:30px;
	height:5px;
	left:0;
	right:0;
	margin:auto;
	background:#0B7C4E;
	bottom: -40px;
	display:none;
}

.service .nav_list1 li.service_nav:before,
.member .nav_list1 li.member_nav:before,
.facility .nav_list1 li.facility_nav:before,
.company .nav_list1 li.company_nav:before,
.website .nav_list1 li.top_nav:before{
	display:block;
}

.nav_list1 li:first-child{
	margin:0;
}

.nav_list1 a {
	display: block;
	text-decoration: none;
	font-size: 1.6rem;
	line-height: 1.5;
	font-weight: 700;
}

.sns_list{
	display:flex;
	justify-content:space-between;
	width: 88px;
	margin-left: auto;
	flex-shrink: 0;
}

.btn1{
	font-size: 1.8rem;
	display:flex;
	align-items:center;
	justify-content:center;
	color:#fff!important;
	background:#0B7C4E;
	max-width:342px;
	width:100%;
	height: 60px;
	border-radius: 60px;
	position: relative;
	font-weight: 700;
	line-height: 1;
	transition:.4s;
}

.btn1:before{
	position:absolute;
	content:"";
	width:14px;
	height: 13px;
	right: 18px;
	top:0;
	bottom:0;
	margin:auto;
	background:url(./img/common/arrow_wh.svg)no-repeat;
	background-size:contain;
}

.btn1.bggre{
	background:#4D8E41;
}



/*-----------------------------------------------------------
#slide
-----------------------------------------------------------*/

#modal {
	display: none;
}

/*-----------------------------------------------------------
#cover
-----------------------------------------------------------*/

#cover {
	width: 100%;
	margin: 102px auto 0;
	position:relative;
	z-index:1;
}

#cover:before{
	position:absolute;
	content:"";
	width:100%;
	height:100%;
	background: url(./img/common/bg_zara.png);
	left:0;
	top:0;
	z-index:-1;
	mix-blend-mode: multiply;
}

#cover:after{
	position:absolute;
	content:"";
	width:100%;
	height: 17.871%;
	background: linear-gradient(to top,#FAF8EB,#FAF8EB00);
	left:0;
	bottom: 0;
	z-index: -1;
}

.ma1920{
	max-width:1920px;
	width:100%;
	margin:0 auto;
	position:relative;
}

#cover .ma1920{
	min-height: calc(100vh - 102px);
	display: flex;
	align-items: center;
	justify-content: center;
	padding-top: 5px;
}

#cover .ma1920 .img{
	position:absolute;
}

#cover .ma1920 .img1{
	top: 6.482%;
	left: 3.125%;
	width: 13.75%;
}

#cover .ma1920 .img2{
	top: 19.815%;
	left: 11.511%;
	width: 15.99%;
}

#cover .ma1920 .img3{
	top: 66.39%;
	left: 5.0528%;
	width: 11.823%;
}

#cover .ma1920 .img4{
	top: 8.056%;
	right: 8.282%;
	width: 18.334%;
}

#cover .ma1920 .img5{
	width: 15.209%;
	top: 28.427%;
	right: 0;
}

#cover .ma1920 .img6{
	top: 53.334%;
	right: 11.094%;
	width: 10.0523%;
}

#cover .text_area{
	text-align: center;
	max-width:704px;
	margin:0 auto;
	width: 60%;
	padding: 20px 0;
	position: relative;
	z-index: 1;
}

#cover .text_area .title1{
	line-height: 1.2222;
	font-weight:600;
	font-size: clamp(3.4rem,5vw,7rem);
	letter-spacing:0.05em;
}

#cover .text_area .title1 .en_tit{
	display:block;
	line-height: 1.2222;
	font-weight:500;
	font-size: clamp(1.5rem,2vw,1.8rem);
	margin-bottom:14px;
	letter-spacing:0.1em;
}

#cover .text_area .text1{
	margin: 4.689% auto 10.229%;
	line-height: 1.66667;
	font-weight: 700;
	font-size: clamp(2rem,2.4vw,3rem);
	text-align:center;
	letter-spacing:0.1em;
}

.mv_list1{
	display:flex;
	justify-content:space-between;
	width:100%;
}

.mv_list1 li{
	width: 49%;
	max-width: 342px;
	position: relative;
}

.mv_list1 li:before{
	position:absolute;
	content:"";
	width:38px;
	height:38px;
	background:url(./img/top/mv_icon1.svg)no-repeat;
	left:15px;
	top:0;
	bottom:0;
	margin:auto;
	z-index:1;
}

.mv_list1 li:nth-child(2):before{
	background:url(./img/top/mv_icon2.svg)no-repeat;
}

/*-----------------------------------------------------------
 #main
-----------------------------------------------------------*/

#main {
	width: 100%;
	margin: 0px auto 0;
}

.flex{
	display: flex;
	justify-content: space-between;
}

.inner{
	width: 95%;
	max-width: 1400px;
	margin: 0 auto;
}
.inner2{
	width: 95%;
	max-width: 1800px;
	margin: 0 auto;
}

.mainTit{
	font-size: 4rem;
	line-height: 1.45;
	font-weight:700;
	font-size: clamp(3rem,4vw,4rem);
}

.mainTit span{line-height: 1.222;font-weight: 500;font-size: clamp(1.5rem, 2.4vw, 1.8rem);display: block;margin-bottom: 9px;}

.mainTit2{
	font-size: 1.8rem;
	line-height: 1;
	font-weight:500;
	font-size: clamp(1.6rem,4vw,1.8rem);
}

.mainTit2 span{

}

.subTit{
	font-size: 2.4rem;
	line-height:1.2;
	font-weight:700;
	font-size: clamp(2rem,4vw,2.4rem);
}

.content01{
    max-width: 1920px;
    width: 100%;
    margin: 0 auto;
}

.content01_div{
	padding: 46px 0 120px;
	display:flex;
	justify-content:space-between;
	position:relative;
	max-width: 1660px;
	width: 97.5%;
	margin-left: auto;
	align-items: flex-start;
}

.content01_div .text_area{
	max-width:690px;
	width: 47%;
	padding: 57px 0 0;
}

.content01_div .text_area .text1{
	font-size:1.6rem;
	line-height:1.5625;
	font-weight:500;
}

.content01_div .slider1_area{
	max-width:810px;
	width: 49%;
}

.slick-slider div { transition: none; }


.sld1_cont {
	padding:30px 0;
}

.sld1{
	max-width:335px;
	width: 96%;
	margin:auto;
	border-radius: 10px;
	overflow: hidden;
	box-shadow: 5px 5px 30px #00000029;
}

.content01_div .text_area .title_area{
	display:flex;
	justify-content:space-between;
	margin-bottom:36px;
	align-items:center;
}

.content01_div .text_area .title_area .title1{
	line-height: 1.44;
	font-weight:700;
	font-size: clamp(1.6rem,2.4vw,2.5rem);
}

.content01_div .text_area .title_area .title1 .en_tit{
	line-height: 1.192;
	font-weight:700;
	font-size: clamp(4rem,4vw,5.7rem);
	margin-right:8px;
}

.content01_div .text_area .title_area .text{
	line-height: 1.222;
	font-weight:500;
	font-size: clamp(1.6rem,2.4vw,1.8rem);
}



.content01_div .text_area .title_area .text1{
	font-size:1.6rem;
	font-weight:500;
	line-height:1.5625;
}

.content01_div .ab_text1 {
	position:absolute;
	bottom: 6.732%;
	line-height: 1.2;
	font-weight:500;
	font-size: clamp(5rem,7vw,12rem);
	color:#DAEFD6;
	z-index:-1;
	font-style: italic;
	right: 2.229%;
	/* width: 100%; */
}

.content02{
	background: #4D8E41;
	padding: 150px 0;
}

.content02 .title{
	text-align:center;
	font-size: clamp(2.6rem,3vw,3rem);
	font-weight:700;
	line-height:1.46667;
	margin-bottom: 0px;
}

.content02 .title .big{
	font-size: clamp(3.6rem,4vw,4.5rem);
	font-weight:600;
	line-height:1.2;
	margin:0 5px;
}

.content02 .title .en_tit{
	display:block;
	font-size:1.5rem;
	font-weight:500;
	line-height:1.2;
}

.cont02_list1{
	margin-top:-5px;
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
}

.cont02_list1 li{
	margin-top: 3.889%;
	width:32%;
	max-width:556px;
	background:#fff;
	padding: 43px 1.556% 49px;
	position: relative;
	z-index: 1;
}

.cont02_list1 li .num{
	position: absolute;
	top: 0;
	left: 0;
	font-size: clamp(6rem,8vw,12rem);
	font-weight:500;
	line-height: 0.63;
	font-style:italic;
	color:#DAEFD6;
	z-index: -1;
}

.cont02_list1 li .title2{
	font-size: clamp(1.7rem,1.6vw,2.2rem);
	font-weight:700;
	line-height:1.4545;
	text-align: center;
}

.cont02_list1 li .title2 .en_tit{
	display: block;
	font-size: 1.3rem;
	font-weight: 500;
	line-height: 1.3;
	margin-bottom:10px;
}

.cont02_list1 li .text1{
	margin-top: 23px;
}


.content03{
	padding: 150px 0;
}

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

.top_title_area .text{
	font-size: clamp(1.6rem,2.4vw,2rem);
	font-weight:700;
	line-height:1.45;
}

.co3_list1{
	display:flex;
	flex-wrap:wrap;
}

.content03 .co3_list1{
	margin: 50px auto 0;
}

.co3_list1 > li{width: 21.786%;margin-right: 4.285333%;transition: .4s;margin-bottom: 50px;}

.co3_list1 > li:nth-child(4n+4){
	margin-right:0;
}

.co3_list1 li .img{
	width:100%;
	height: 14vw;
	max-height:190px;
	overflow:hidden;
	box-shadow: 6px 6px 25px #0000001a;
	border-radius: 10px;
}
.co3_list1 li .img img{
	width:100%;
	height:100%;
	object-fit: cover;
	box-shadow: 6px 6px 25px #0000001a;
	transition:.4s;
}

.co3_list1 li:hover .img img{
	transform:scale(1.1);
}

.co3_list1 li .name{
	display:flex;
	align-items:center;
	justify-content:space-between;
	margin:18px auto 17px;
	width:100%;
	font-size: clamp(1.6rem,2.4vw,2.2rem);
	font-weight:700;
	line-height:1.4545;
}

.co3_list1 li .name span{
	font-size:1.1rem;
	font-weight:500;
	line-height:1.18;
}

.co3_list2{
	margin-top:15px;
	display:flex;
	align-items:center;
	flex-wrap:wrap;
}

.co3_list2 li{
	margin-top:8px;
	background:#FFFFFF;
	border:1px solid #C7C7C7;
	border-radius:4px;
	padding:4px 7px;
	font-size:1.3rem;
	font-weight:500;
	line-height:1.4615;
	margin-right:7px;
}

.co3_list2 li:last-child{
	margin-right:0;
}

.content03 .btn1{
	margin:0 auto;
}

.content04{
	background:#DBE8D8;
	padding:150px 0;
}

.co4_list1{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}

.co4_list1 li{
	background:#fff;
	width: 49%;
	margin-top:62px;
	display:flex;
	box-shadow:6px 9px 32px #00000029;
	padding: 2.143% 1.286%;
	border-radius: 10px;
	max-width: 661px;
}

.co4_list1 li .left{
	display:flex;
	align-items: flex-start;
	max-width:226px;
	flex-shrink:0;
	width: 37%;
	justify-content: space-between;
	margin-right: 2%;
}

.co4_list1 li .left .img{
	margin-left:13px;
}

.co4_list1 li .right{
	text-align:center;
	width:100%;
}

.co4_list1 li .left .ab_text{
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	line-height: 1.222;
	font-weight:500;
	font-size: clamp(1.5rem,1.5vw,1.8rem);
	flex-shrink: 0;
}

.co4_list1 li .right .title1{
	font-size: clamp(1.8rem,2.4vw,2.2rem);
	font-weight:700;
	line-height:1.4545;
}

.co4_list1 li .right .text1{
	margin-top:15px;
}


.co4_list1 li .right .text1 span{
	font-size:1.2rem;
}

.co4_list1 li .right .num{
	font-size: clamp(4rem,5vw,9rem);
	font-weight:700;
	line-height:1.2;
	display:flex;
	align-items:center;
	justify-content:center;
}

.co4_list1 li .right .num span{
	margin-left:9px;
	font-size: clamp(1.8rem,2.4vw,2.2rem);
	font-weight:700;
	line-height:1.4545;
}

.content05{
	padding:150px 0;
}

.co5_list1{
	margin-top:115px;
}

.co5_list1 li{
	margin-top:100px;
	display:flex;
	justify-content:space-between;
	align-items:center;
	width: 100%;
}

.co5_list1 li:nth-child(2n){
	flex-direction:row-reverse;
}

.co5_list1 li .img{
	max-width:550px;
	width: 40%;
}

.co5_list1 li .img img{
	border-radius:10px;
	box-shadow:5px 5px 50px #00000012;
}

.co5_list1 li .text_area{
	max-width:790px;
	width: 57%;
}

.co5_list1 li .text_area .name{
	line-height: 1.45;
	font-weight:700;
	font-size: clamp(2.4rem,4vw,4rem);
	margin-bottom:18px;
}

.content06{
	padding: 150px 0 180px;
	background:#fff;
}

.col_list1{
	display:flex;
	flex-wrap:wrap;
	margin-top:50px;
}

.col_list1 li{
	width: 21.786%;
	margin-right: 4.285333%;
	margin-bottom:50px;
	border-radius:10px;
	overflow:hidden;
	background:#fff;
	box-shadow:6px 6px 25px #0000001a;
	transition: .4s;
}

.col_list1 li:nth-child(4n+4){
	margin-right:0;
}
.col_list1 li .img{
	width:100%;
	height: 13vw;
	max-height: 190px;
	overflow:hidden;
}

.col_list1 li .img img{
	width:100%;
	height:100%;
	object-fit:cover;
	transition:.4s;
}

.col_list1 li:hover .img img{
	transform:scale(1.1);
}


.col_list1 li .text_area{
	padding: 17px 4.92% 8.857%;
}

.col_list1 li .text_area .date{
	font-size:1.1rem;
	font-weight:500;
	line-height:1.1818;
}

.col_list1 li .text_area .title1{
	margin-top:5px;
	line-height:1.4444;
	font-size: clamp(1.6rem,2vw,1.8rem);
	font-weight:700;
}

.col_list1 li .text_area .text1{
	margin-top:13px;
}

.content06 .btn1{
	margin:0 auto;
}

.contact_area{
	position:relative;
	width:100%;
	padding-bottom:150px;
}

.website .contact_area{
	background:#fff;
}

.contact_area:before{
	position:absolute;
	content:"";
	width:100%;
	height: 65.3%;
	background:#0B7C4E;
	bottom:0;
	left:0;
}

.cont_area_list1{
	display:flex;
	justify-content:space-between;
}

.cont_area_list1 li{
	width:48%;
	max-width:661px;
	border-radius:10px;
	overflow:hidden;
	position:relative;
	padding:71px 10px 78px;
	z-index:2;
	text-align:center;
	color:#fff;
	box-shadow: 6px 9px 32px #00000029;
}

.cont_area_list1 li:hover:before{
	opacity:0;
}

.cont_area_list1 li:before{
	position:absolute;
	content:"";
	width:100%;
	height:100%;
	background: #333333d1;
	top:0;
	left:0;
	z-index:-1;
	transition:.4s;
}

.cont_area_list1 li .bg_img{
	position:absolute;
	content:"";
	width:100%;
	height:100%;
	top:0;
	left:0;
	z-index:-2;
}

.cont_area_list1 li .bg_img img{
	width:100%;
	height:100%;
	object-fit:cover;
}

.cont_area_list1 li .title1{
	line-height: 1.45;
	font-weight:700;
	font-size: clamp(2.4rem,4vw,4rem);
}

.cont_area_list1 li .title1 span{
	display:block;
	margin-bottom:9px;
	line-height:1.4444;
	font-size: clamp(1.6rem,2vw,1.8rem);
	font-weight:700;
}


.cont_area_list1 li .text1{
	margin-top:21px;
}

/*-----------------------------------------------------------
 footer
-----------------------------------------------------------*/

footer {
	margin: 0px auto 0;
	padding: 80px 0 40px;
	background: #fff;
}

footer .left {
	width:134px;
	flex-shrink:0;
}

footer .left .sns_list{
	margin-left:0;
	margin-top:49px;
}

footer .right{
	display:flex;
	justify-content:space-between;
	max-width:773px;
	width:80%;
}

footer .flex1{
	align-items:flex-start;
	padding-bottom:60px;
	border-bottom:1px solid #D3D0D0;
}

footer .flex2{
	padding-top:27px;
}

.copyright {
	font-size:1.3rem;
	line-height:1.461;
}

footer .flex2 a{
	font-size:1.3rem;
	line-height:1.461;
	display:block;
}

.ft_list1 li{
	margin-bottom:21px;
}

.ft_list1 li.parent{
	margin-bottom:12px;
}

.ft_list1 li.kid{
	margin-bottom:0px;
}

.ft_list1 li:last-child{
	margin-bottom:0;
}

.ft_list1 li a{
	font-size:1.6rem;
	font-weight:700;
	line-height:1.5;
}

.ft_list1 li.kid a{
	font-size:1.3rem;
	line-height:1.923;
	font-weight:500;
}


/* 全ページ共通クラス
----------------------------------------------------------- */

/*--- パンくず ---*/

.pankuzu {
    margin: 60px auto 0;
    font-size: 16px;
    font-weight: 600;
}

.pankuzu li {
    margin: 0 0 0 50px;
    display: inline;
    position: relative;
}

.pankuzu li:first-child {
    margin: 0;
}

.pankuzu li a {
    margin: 0 10px 0 0;
    color: #0B7C4E;
}

.pankuzu li + li:before{
	content: "";
	display: block;
	position: absolute;
	background: #333;
	height: 1px;
	width: 25px;
	top: 12px;
	left: -40px;
}

.art_mv01 .tit_inner{
	width: 90%;
	max-width: 1400px;
	margin: 0 auto;
	font-size: 4.5rem;
	padding: 170px 0 100px;
}

.art_mv01 .mv_tit{position: relative;}

.art_mv01 .mv_img{
	display: flex;
	justify-content: end;
	width: 90%;
	max-width: 1660px;
	margin: 0 0 0 auto;
	position: relative;
}

.art_mv01 .mv_tit p{
	font-size: 18rem;
	position: absolute;
	bottom: -4%;
	right: 0;
	line-height: 1;
	color: #DAEFD6;
	font-style: italic;
	z-index: -1;
	font-size: clamp(8rem, 20vw, 18rem);
}

#cover.art_mv02:after,#cover.art_mv02:before{
	display: none;
}

.art_mv02 .fv_box{
	background: #4D8E41;
	padding: 75px 0;
}

.art_mv02 .mv_tit{
	width: 90%;
	max-width: 1400px;
	margin: 0 auto;
	color: #fff;
}

.art_mv02 .pankuzu {
    margin:30px auto 0;
    font-size: 16px;
    font-weight: 600;
    width: 95%;
    max-width: 1400px;
}

/*--- ページトップ ---*/
#pageTop {
	position: fixed;
	bottom: 200px;
	right: 25px;
	z-index: 9999;
}

.company01 .txt{
	margin-top:-10px;
}

.company01 .txt p{
	font-size: 2.5rem;
	margin: 60px 0 0;
	line-height: 1.8;
	font-weight: 600;
}

/*--- 運営会社---*/
.company01{
	margin: 170px auto 160px;
}

.company02{
	background: #fff;
	width: 95%;
	max-width: 1800px;
	margin: 0 auto 180px;
	padding: 150px 0;
}

.company02 table {
	width: 100%;
	margin-top: 55px;
}
.company02 table th{
	text-align: left;
	color: #0B7C4E;
	border-bottom:1px solid #E8E5D5;
	vertical-align: baseline;
	padding: 30px 0;
	width: 16.429%;
	padding-left: 1.429%;
	font-size: 1.7rem;
	font-weight: 400;
	letter-spacing: 0.04em;
}

.company02 table td{
	padding: 30px 0 30px;
	border-bottom:1px solid #E8E5D5;
	font-size: 1.6rem;
	font-weight: 400;
	letter-spacing: 0.04em;
}

.company02 table iframe{
	margin-top: 23px;
	height: 180px;
}

/* -- お問い合わせ -- */

input {
	vertical-align: middle;
}

.btnBox1 {
	text-align: center;
}

.contact_cf .clearForm,.contact_cf .clearForm2 {
	padding: 10px 5px;
}


.clearForm,
.clearForm2,
.toHome {
	width: 100%;
	cursor: pointer;
	outline: 0;
	color: #fff!important;
	font-size: 1.8rem;
	border: none;
	font-weight: 700;
	transition: .2s;
	-moz-transition: .2s;
	-webkit-transition: .2s;
	background: none;
	margin: 0 auto!important;
	height: 100%;
	text-align: left;
	text-align: center;
}

.green .clearForm,
.green .clearForm2,
.green .toHome {
	color: #2CB573 !important;
	
}


.toHome {
	margin: 50px auto 0 !important;
	text-decoration: none;
	display: block;
	text-align: center;
}

.tb_inp.mabo{
	margin-bottom:16px;
}

textarea {
	padding: 10px;
	height: 220px;
	width: 100%;
	background: #F4F4F4;
}

input,
textarea,
button,
select,
option {
	outline: none;
}

input[type="text"],
input[type="email"],
input[type="tel"],
select{
	height: 48px;
	padding: 5px 15px;
	width: 100%;
	background: #FAF8EB;
	width: 100%;
}

::placeholder{
	color:#CCCCCC;
}

input[type="text"],
input[type="email"],
input[type="tel"],
textarea,
option,
select{
	/* border: none; */
}


select{
	max-width:340px;
}

input[type="date"]{
	width:100%;
	max-width:204px;
	height:42px;
}

button {
	border: none;
	outline: none;
	background: none;
}

.form_notice1 {
	font-size: 85.714%;
	display: block;
	margin: 5px 0 0;
}

.form_notice2 {
	font-size: 87.5%;
}

.modification_wrap {
	overflow: hidden;
}

.modification {
	width: 221px;
	float: left;
	margin: 0 0 0 246px;
}

.send_bt {
	width: 221px;
	float: right;
	margin: 0 245px 0 0;
}

.error_style {
	color: #FF0000;
	display: block;
	margin: 8px 0 0;
}


.contact_tb th, .contact_tb td {
	position: relative;
	font-weight: 500;
	display: block;
	width: 100%;
}

.contact_tb {
	width: 100%;
	margin: auto;
}


.contact_tb th {
	text-align: left;
	padding: 26px 0 15px;
	line-height: 1.45833;
	font-weight:500;
	font-size: clamp(1.8rem, 2.4vw, 2.4rem);
}

.contact_tb th.vert{
	vertical-align:top;	
}

.contact_tb td {border-bottom: 1px solid #E5E5E5;padding-bottom: 30px;}

.contact_tb td .text{
	font-size:1.4rem;
}

.contact_tb th span{
	margin-right:24px;
}

em{
	background: #E0090A;
	border-radius:2px;
	color:#fff;
	padding: 0px 8px;
	white-space: nowrap;
	font-size: clamp(1.2rem, 1.6vw, 2rem);
	margin-left:28px;
}

em.nini{
	background:#333333;
}

.contact01_div3{
	margin-top:80px;
}


.pri_div{
	padding: 20px 1.622%;
	height: 180px;
	overflow-y:scroll;
	margin: 56px auto 48px;
	background: #fff;
	-ms-overflow-style: none;
	scrollbar-width: none;
	width: 100%;
	border: 1px solid #E5E5E5;
	font-size: clamp(1.6rem,1.6vw,2rem);
}

.pri_div.pri_div2{
	padding: 24px 4%;
	height: 285px;
	overflow-y:scroll;
	margin: 24px auto 56px;
	background: #F1F4E0;
	-ms-overflow-style: none;
	scrollbar-width: none;
	border: 2px solid #F1F4E0;
	width: 100%;
	border-radius: 10px;
}

.pri_div::-webkit-scrollbar{
	display: none;
}


.pri_div h3{
	font-size: clamp(1.8rem,2.4vw,2.4rem);
	line-height: 1.46;
	margin-bottom: 30px;
}


.pri_div dt{
	font-size: 1.4rem;
	line-height: 2.057;
}

.pri_div dd{
    font-size: 1.4rem;
    line-height: 2.057;
	margin-bottom:24px;
}

.pri_div dd p.matop{
	margin-top:24px;
}

.privacy_area{
	display:flex;
	align-items:center;
	justify-content:center;
	margin: 0 auto 20px;
	width: 100%;
}

.privacy_area label{
	display:flex;
	align-items: center;
}

.privacy_area a{
	color: #009DCD;
	display: inline-flex;
	align-items: baseline;
	border-bottom: 1px solid;
}

.privacy_area a img{
	margin-left:2px;
	margin-right:4px;
}

.privacy_area input{
	width: 15px;
	height: 15px;
	border: 1px solid #ccc;
	border-radius: 0;
	accent-color: #ccc;
	margin-right: 5px;
}

.contact01{
	padding: 100px 0 180px;
}

.contact01_div1{
	background:#F7F7F7;
	border-radius:32px;
	padding: 56px 2%;
	text-align:center;
	margin-bottom:125px;
	font-weight:500;
}

.tablet{
	display:none;
}

.tb_flex{
	display:flex;
	flex-wrap:wrap;
}

.tb_flex label{
	margin-right:3%;
}


.news01{
padding: 8.334% 0;
}



.news01 .main_cont{
	max-width:1108px;
	width: 74%;
}


.news01 .side_cont{
	max-width:192px;
	width: 23%;
}

.side_div{
	width:100%;
	margin-bottom: 56%;
}

.side_div:last-child{
	margin-bottom:0px;
}

.side_div .title1{
	line-height: 1.45833;
	font-weight:500;
	font-size: clamp(1.8rem, 2.4vw, 2.4rem);
	padding-bottom:14px;
	border-bottom:1px solid #C6E0F7;
}

.cate_list li{
	margin-top:28px;
	font-weight:500;
	line-height:1.5;
}

.cate_list li a.active{
	color:#1982D8;
}



.pagination-list{
	display:flex;
	margin: 9% auto 0;
	justify-content: center;
	width: 100%;
}

.pagination-list .page-numbers{
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 2rem;
	width: 44px;
	height: 48px;
	background: #fff;
	margin: 0 0.6%;
	transition:.4s;
	font-weight: 500;
	text-decoration: none;
	color: #000000;
	border-radius: 8px;
	border: 1px solid #1982D8;
}


.pagination-list .page-numbers.current,
.pagination-list .page-numbers:hover{
	background: #1982D8;
	opacity:1;
	color: #fff;
}



.pagination-list .page-numbers.prev{
	margin: 0px 1.8% 0 0;
}

.pagination-list .page-numbers.next{
	margin: 0px 0% 0 1.8%;
}


.pagination-list .page-numbers.prev:hover,
.pagination-list .page-numbers.next:hover{
	background: #FDD85F;
}

.det_cont .title_area{
	padding-bottom:28px;
	margin-bottom:56px;
	border-bottom:1px solid #E5E5E5;
}

.det_cont .title_area .dacate{
	margin-bottom:24px;
	width:100%;
}

.det_cont .title_area .title1{
	line-height: 1.45;
	font-weight:500;
	font-size: clamp(2.4rem, 3vw, 4rem);
}

.news_list {
	width:100%;
}

.news_list li{
	display:flex;
	align-items:center;
	padding:23px 0;
	border-bottom:1px solid #E5E5E5;
}

.news_list li:hover{
	opacity:0.7;
}

.news_list li:first-child{
	padding-top:0;
}

/* .news_list li:before {
    position: absolute;
    content: "";
    width: 30px;
    height: 4px;
    background: url(./img/common/arrow.svg) no-repeat;
    background-size: contain;
    right: 0%;
    top: 0;
    bottom: 0;
    margin: auto;
} */

.dacate{
	display:flex;
	align-items:center;
	justify-content:space-between;
	width: 34%;
	flex-shrink: 0;
	margin-right: 2.2%;
	max-width: 211px;
}

 .dacate .date{
	line-height:1.5;
}

.dacate .cate{
	width:100px;
	display:flex;
	align-items:center;
	justify-content:center;
	border:1px solid;
	height: 32px;
	line-height: 1;
	border-radius: 40px;
}
.dacate .cate.cate1{
	background:#0D5AB5;
	color:#fff;
}

.dacate .cate.cate2{
	background:#51ABF4;
	color:#fff;
}

.dacate .cate.cate3{
	background:#809EBA;
	color:#fff;
}


.news_list li .title1{
	width: 70%;
	font-weight: 500;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	overflow: hidden;
}


/* wordpress 記事 */
.detail_area img{
	margin-bottom:24px;
	width: revert-layer;
}

.detail_area p:has(img){
	margin:0;
}


.alignright{
	margin-left:auto;
	display:block;
}


.aligncenter{
	margin-left: auto;
	margin-right: auto;
	display:block;
}


.detail_area p{
	margin-bottom:24px;
	font-size: clamp(1.5rem,2.3vw,1.6rem);
}

.detail_area h2{
	margin-bottom:24px;
	font-size: clamp(2.4rem,3vw,3.2rem);
}

.detail_area h3{
	margin-bottom:16px;
	font-size: clamp(1.8rem,2.3vw,2.4rem);
}

.detail_area h4{
	margin-bottom:12px;
	font-size: clamp(1.6rem,2.3vw,1.8rem);
}

/*--- 社労士一覧---*/
.member01{
	margin-bottom: 120px;
}

.member_search {
  padding: 100px 0 100px;
}
.member_search .inner {
  margin: 0 auto;
}
.search_box {
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 8px;
  padding: 50px 40px 30px;
  box-shadow: 0 2px 12px rgba(0,0,0,.06);
}
.search_box .search_label {
  font-size: 2.5rem;
  font-weight: 700;
  color: #333;
  margin-bottom: 16px;
  display: block;
}
.search_box select {
  width: 100%;
  max-width: 100%;
  height: 50px;
  border: 1px solid #ccc;
  border-radius: 6px;
  padding: 0 16px;
  font-size: 1.5rem;
  color: #555;
  background: #FAF8EB url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23888' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat right 16px center;
  appearance: none;
  -webkit-appearance: none;
  cursor: pointer;
  margin: -9px 0 0px 0;
}
.search_note {
  color: #e05555;
  margin: 16px 0 30px;
}
.search_btn_wrap {
  text-align: center;
  margin-top: 24px;
}

.member_search .btn1{
	margin: 30px auto 0;
}

.member_count_row {
  padding: 0 0 36px;
}
.member_count {
  font-size: 1.5rem;
  color: #333;
}
.member_count strong {
  font-size: 2rem;
  font-weight: 700;
  color: #2E7D32;
  margin-right: 2px;
}

.member_list_section {
    overflow: visible;
    padding-bottom: 60px;
}

.member_list {
    overflow: visible;
    position: relative;
    z-index: 0;
}

.bulk_consult_wrap {
    position: relative;
    z-index: 1;
    max-width: 1400px;
    margin: 40px auto 0;
    width: 90%;
    clear: both;
}

.member_list_section .inner {
  margin: 0 auto;
}
.member_grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 3.7%;
    isolation: isolate;
    position: relative;
    z-index: 0;
}
 
.member_card {
    border-radius: 6px;
    position: relative;
    transition: .2s;
    cursor: pointer;
    opacity: 1;
    isolation: isolate;
}

.member_card a{
	transition: .2s;
}
 
.member_card .card_check {
  position: absolute;
  top: 10px;
  left: 10px;
  z-index: 2;
  width: 22px;
  height: 22px;
  accent-color: #2E7D32;
  cursor: pointer;
}
 
.card_photo {
  width: 100%;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  background: #e8e8e8;
  box-shadow: 0 4px 20px rgba(0,0,0,.12);
  border-radius: 5px;
}
.card_photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
 
.card_body {
  padding: 14px 0 16px;
}
.card_name_row {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  margin-bottom: 8px;
  gap: 8px;
}

.fac01 .card_name_row {
  flex-direction: column;
  gap: 0;
}

.fac01  .card_name_en {
  font-size: 1.3rem;
  color: #333;
  font-weight: 500;
  white-space: nowrap;
}

.fac01 .txt{
	text-align: center;
	max-width: 800px;
	margin: 0 auto;
}

.fac01 .txt h3{
	font-size: 2.5rem;
	color: #0B7C4E;
	position: relative;
	margin: 0 0 30px 0;
}

.fac01 .txt h3 span{
	background: url(./img/facility/aicon.svg) 0% 0% no-repeat;
	padding: 0 0 5px 60px;
	background-size: contain;
}

.fac01 .txt h3:before{
	content: "";
	display: block;
	position: absolute;
	background: #ccc;
	width: 50px;
	height: 1px;
	bottom: -14px;
	left: 0;
	right: 0;
	margin: 0 auto;
}

.card_name_ja {
  font-size: 2rem;
  font-weight: 600;
  white-space: nowrap;
}
.card_name_en {
  font-size: 1.1rem;
  color: #2E7D32;
  font-family: 'Barlow', sans-serif;
  font-weight: 500;
  white-space: nowrap;
}
.card_desc {
  font-size: 1.25rem;
  color: #555;
  line-height: 1.7;
  margin-bottom: 12px;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.card_tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.card_tag {
  display: inline-block;
  font-size: 1.3rem;
  color: #444;
  background: #fff;
  border-radius: 4px;
  padding: 5px 8px;
  line-height: 1;
  border: 1px solid #C7C7C7;
}
.card_tag::before {
  content: '#';
  color: #888;
  margin-right: 2px;
}

.bulk_consult_wrap {
    position: relative;
    z-index: 10;
    max-width: 1400px;
    margin: 40px auto 0;
    width: 90%;
}
.bulk_consult_btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    width: 100%;
    background: #0B7C4E;
    color: #fff !important;
    font-size: 1.7rem;
    font-weight: 700;
    padding: 22px 20px;
    border-radius: 6px;
    border: none;
    cursor: pointer;
    text-decoration: none;
    transition: background .2s;
    position: relative;
    z-index: 2;
}
.bulk_consult_btn:hover {
  background: #1b5e20;
}

.bulk_consult_btn:link{
	color: #fff;
}

.bulk_consult_btn .btn_icon {
  width: 28px;
  height: 28px;
  flex-shrink: 0;
}

.pagination_wrap {
  max-width: 1100px;
  margin: 48px auto 0;
  padding: 0 40px 60px;
  display: flex;
  justify-content: center;
  gap: 8px;
}
.page_btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 45px;
  height: 45px;
  font-size: 1.8rem;
  font-family: 'Barlow', sans-serif;
  color: #1A1A1A!important;
  background: #fff;
  border: 1px solid #ddd;
  cursor: pointer;
  text-decoration: none;
  transition: all .2s;
}
.page_btn:hover {
  background: #2E7D32;
  color: #fff!important;
  border-color: #2E7D32;
}
.page_btn.active {
  background: #0B7C4E;
  color: #fff!important;
  border-color: #0B7C4E;
}

/*--- 社労士詳細---*/
.mem_det01{
    margin: 150px 0 100px;
}

.mem_det01 .inner{
    display: flex;
    justify-content: space-between;
}

.mem_det01 .inner .left{
    width: 37%;
    max-width: 650px;
    width: 48%;
}

.mem_det01 .inner .right{
    width: 48%;
    max-width: 666px;
}

/* メインスライダー */
.profile_main_slider {
    margin-bottom: 12px;
}
.profile_main_slider .main_slide img {
    width: 100%;
    aspect-ratio: 3 / 3.2;
    object-fit: cover;
    border-radius: 4px;
    display: block;
}

/* サムネイルナビ */
.profile_thumb_slider .thumb_slide {
    padding: 0 4px;
    cursor: pointer;
}
.profile_thumb_slider .thumb_slide img {
    width: 100%;
    aspect-ratio: 1;
    object-fit: cover;
    border-radius: 3px;
    display: block;
    opacity: 0.6;
    transition: opacity .2s;
}
/* 選択中のサムネイル */
.profile_thumb_slider .slick-current img {
    opacity: 1;
}

.mem_det01 .inner .right h3{
	font-size: 4.5rem;
}

.mem_det01 .inner .right .name{
	margin-top: 40px;
	margin-bottom: 40px;
}

.mem_det01 .inner .right .name p,.mem_det01 .inner .right .name .no{
	font-size: 2rem;
	font-weight: 600;
}

.mem_det01 .inner .right .name .box{
	display: flex;
	align-items: baseline;
}

.mem_det01 .inner .right .name .box span{
	font-size: 2rem;
	font-weight: 600;
}

.mem_det01 .inner .right .name h4{
	font-size: 4.5rem;
	font-weight: 600;
	margin: 0 11px 0 0;
}

.mem_det01 .inner .right th{
	color: #0B7C4E;
	text-align: left;
	width: 20%;
	/* max-width: 61px; */
	border-bottom: 1px solid #E8E5D5;
	width: 100px;
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 1.5;
	vertical-align: top;
	padding: 26px 0 20px;
}

.mem_det01 .inner .right td{
	width: 70%;
	padding-left: 8%;
	border-bottom: 1px solid #E8E5D5;
	padding: 20px 0 20px 6.008%;
	width: initial;
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 2.125;
}


.mem_det01 .inner .right tr:last-child th,
.mem_det01 .inner .right tr:last-child td{
	border-bottom:none;
}

/* slick初期化前に全スライドが表示されないよう制御 */
.profile_main_slider {
    overflow: hidden;
    width: 100%;
}

.profile_main_slider .main_slide img {
    width: 100%;
    height: auto;
    display: block;
}

/* slick初期化後のスタイルリセット */
.profile_main_slider.slick-initialized .main_slide {
    display: block !important;
}

/* サムネイル */
.profile_thumb_slider {
    display: flex;
    gap: 8px;
    margin-top: 12px;
}

.profile_thumb_slider .thumb_slide {
    flex: 1;
    cursor: pointer;
}

.profile_thumb_slider .thumb_slide img {
    width: 100%;
    aspect-ratio: 1;
    object-fit: cover;
    display: block;
    opacity: 0.6;
    transition: opacity .2s;
}

.profile_thumb_slider .thumb_slide.active img {
    opacity: 1;
}

.mem_det02{
	margin-bottom: 180px;
}


.mem_det02 ul{
	margin-top:-15px;
}

.mem_det02 li{
    background: #fff;
    margin-top: 60px;
    padding: 55px 3.5% 50px;
    position: relative;
    font-size: 1.6rem;
}

.mem_det02 li p{
	line-height:2.125;
}

.mem_det02 li span{
	position: absolute;
	top: 0;
	left: 0;
	font-size: 10rem;
	line-height: 1;
	font-style: italic;
	color: #DAEFD6;
}

.mem_det02 li h4{
	font-size: 3.5rem;
	margin: 0 0 20px 0;
	position: relative;
	z-index: 1;
}

.mem_det02 li .box{
	display: flex;
	justify-content: space-between;
	padding: 0 10px;
}

.mem_det02 li .box .img{
	width: 39.002%;
}

.mem_det02 li .box .txt{
	width: 55.773%;
}

.mem_det02 .btn1{
	margin: 80px auto 0;
}


/*--- 設備一覧ー---*/
.member01.fac01{
	margin: 100px 0 120px;
}

.fac01 .member_search {
  padding: 50px 0 100px;
}

.fac01 .search_box select{
	margin-bottom: 40px;
}

/* カテゴリ3列 */
.search_category_row {
    display: flex;
    gap: 16px;
    margin-bottom: 16px;
}
.search_category_row select {
    flex: 1;
    height: 48px;
    border: 1px solid #CCC;
    border-radius: 6px;
    padding: 0 16px;
    font-size: 1.5rem;
    color: #555;
    background: #FAF8EB url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23888' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat right 16px center;
    appearance: none;
    -webkit-appearance: none;
    cursor: pointer;
}

/* フリーワード */
.search_freeword {
    width: 100%;
    height: 48px;
    border: 1px solid #ccc;
    border-radius: 6px;
    padding: 0 16px;
    font-size: 1.5rem;
    color: #333;
    background: #FAF8EB;
    box-sizing: border-box;
    margin-bottom: 0;
}
.search_freeword::placeholder {
    color: #aaa;
}
.search_freeword:focus {
    outline: none;
    border-color: #2E7D32;
}

/* search_labelの下マージン調整 */
.search_label {
    display: block;
    font-size: 1.6rem;
    font-weight: 700;
    color: #333;
    margin-bottom: 12px;
}

.mem_det01 .right.fac01{
	
}
.mem_det01 .inner .right.fac01 .name {
    margin-top: 0px;
}


.mem_det01 .right.fac01 dt{
	border-bottom: 1px solid #ccc;
	font-size: 1.8rem;
	font-weight: 700;
	padding: 0 0 5px 0;
	margin: 0 0 5px 0;
} 

.mem_det01 .right.fac01 dd{
	margin-bottom: 30px;
}

.mem_det01 .right.fac01 h4{
	font-size: 1.7rem;
	margin: 0 0 4px 0;
}

.mem_det01 .right.fac01 .btn_area{
	margin: 50px 0 0 0;
}

.mem_det01 .right.fac01 .btn_area .btn2{
	font-size: 1.8rem;
	display:flex;
	align-items:center;
	justify-content:center;
	color:#fff!important;
	background:#333;
	max-width:342px;
	width:100%;
	height: 60px;
	border-radius: 60px;
	position: relative;
	font-weight: 700;
	line-height: 1;
	transition:.4s;
	margin: 15px 0 0 0;
}

.mem_det01 .right.fac01 .btn_area .btn2:before{
	position:absolute;
	content:"";
	width:14px;
	height: 13px;
	left: 18px;
	top:0;
	bottom:0;
	margin:auto;
	background:url(./img/common/arrow_wh.svg)no-repeat;
	background-size:contain;
transform: rotate(180deg);
}

.mem_det02 .fac01{
	margin: 45px 0 0 0;
}


.fac_det02.mem_det02{
	margin-bottom: 60px;
}

/*--- お問い合わせ ---*/
.contact_lead {
	text-align: center;
	font-size: 1.8rem;
	font-weight: 600;
	line-height: 1.8;
	margin-bottom: 50px;
}

.contact_form_wrap {
	background: #fff;
	border-radius: 8px;
	padding: 60px 5%;
	box-shadow: 0 2px 20px rgba(0,0,0,.06);
	/* max-width: 900px; */
	margin: 0 auto;
}

/* 選択情報表示エリア */
.selected_info_area {
	background: #DBE8D8;
	border-radius: 4px;
	padding: 20px;
	text-align: center;
	font-size: 2rem;
	font-weight: 700;
	color: #333;
	margin-bottom: 40px;
}

/* フォームテーブル */
.contact_form_tb {
	width: 100%;
	border-collapse: collapse;
}

.contact_form_tb th,
.contact_form_tb td {
	display: table-cell;
	width: auto;
	padding: 30px 0;
	border-bottom: 1px solid #E8E5D5;
	vertical-align: middle;
}

.contact_form_tb tr:first-child th,
.contact_form_tb tr:first-child td {
	border-top: 1px solid #E8E5D5;
}

.contact_form_tb th {
	width: 180px;
	font-size: 1.5rem;
	font-weight: 600;
	color: #333;
	white-space: nowrap;
	vertical-align: middle;
	text-align: left;
}

.contact_form_tb td {
	padding-left: 20px;
}

.contact_form_tb input[type="text"],
.contact_form_tb input[type="tel"],
.contact_form_tb input[type="email"] {
	width: 100%;
	height: 40px;
	background: #FAF8EB;
	border: 1px solid #ddd;
	border-radius: 4px;
	padding: 0 12px;
	font-size: 1.5rem;
	box-sizing: border-box;
	max-width: 800px;
}

/* ラジオボタン */
.radio_list {
	display: flex;
	gap: 24px;
	flex-wrap: wrap;
	list-style: none;
	padding: 0;
	margin: 0;
}

.radio_list li label {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 1.5rem;
	cursor: pointer;
}

.radio_list li input[type="radio"] {
	width: 16px;
	height: 16px;
	accent-color: #0B7C4E;
	margin: 0;
	background: #FAF8EB;
}

/* 住所 */
.address_wrap {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 10px;
}

.zip_mark {
	font-size: 1.5rem;
	font-weight: 600;
	flex-shrink: 0;
}

.input_zip {
	width: 160px !important;
}

/* プライバシーポリシー */
.privacy_check_area {
	text-align: center;
	margin-top: 40px;
}

.privacy_check_label {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 1.5rem;
	cursor: pointer;
}

.privacy_check_label input[type="checkbox"] {
	width: 16px;
	height: 16px;
	accent-color: #0B7C4E;
	margin: 0;
}

.privacy_check_label a {
	color: #0B7C4E;
	text-decoration: underline;
}

/* 送信ボタン */
.submit_wrap {
	text-align: center;
	margin-top: 30px;
}

.submit_wrap .btn1 {
	/* max-width: 220px; */
	width: 100%;
	height: 60px;
	font-size: 1.8rem;
	cursor: pointer;
	margin: 0 auto;
}

/*--- プライバシーポリシー---*/
.privacy01{
	margin: 110px 0 180px;
	font-size: 1.6rem;
	letter-spacing: 0.04em;
	line-height: 2.125;
}

.privacy01 dl{
	margin-top: 75px;
}

.privacy01 dt{
	font-size: 2.5rem;
	font-weight: 700;
	position: relative;
	padding: 0 0 0 20px;
	margin: 0 0 5px 0;
}

.privacy01 dt:before{
	content: "";
	display: block;
	position: absolute;
	background: #0B7C4E;
	height: 9px;
	width: 9px;
	left: 0;
	top: 40%;
	border-radius: 10px;
}

.privacy01 dd{
	margin-bottom: 60px;
}


/*--- サービス ---*/

.service01{
	padding: 50px 0 0;
}

.service01_div1{
	max-width:676px;
	width:100%;
	margin:0 auto 60px;
	text-align:center;
	padding:39px 0 23px;
	position:relative;
}

.service01_div1:before,
.service01_div1:after{
	position:absolute;
	content:"";
	width:60px;
	height:60px;
}

.service01_div1:before{
	border-top:1px solid #333333;
	border-left:1px solid #333333;
	top:0;
	left:0;
}

.service01_div1:after{
	border-right:1px solid #333333;
	border-bottom:1px solid #333333;
	bottom:0;
	right:0;
}

.service01_div1 .text{
	line-height: 1.68889;
	font-weight:600;
	font-size: clamp(2.2rem, 5vw, 4.5rem);
	letter-spacing:0.05em;
	margin-right: -5.179%;
}

.service01_div2{
	background:linear-gradient(to bottom ,#FAFAF8,#FFFFFF00);
	padding: 70px 5.715% 40px 6.429%;
}


.service01_div2 .mainTit{
	text-align:center;
}

.service01_list1 li{
	margin-top:45px;
	position:relative;
	max-width:1140px;
	width: 95%;
	z-index: 3;
}


.service01_list1 li:nth-child(2n){
	margin-left:auto;
}

.service01_list1 li:before{
	position:absolute;
	content:"";
	width:100%;
	height:100%;
	top:0;
	left:0;
	box-shadow:0 0 11px #00000029;
	z-index: -2;
	border-radius: 6px;
}

.service01_list1 li .fuki{
	position:absolute;
	z-index: -1;
	backdrop-filter: drop-shadow(0 0 11px #00000029);
	left: 0;
	bottom: -27px;
	left: 12px;
}

.service01_list1 li:nth-child(2n) .fuki{
	bottom: -27px;
	right: 14px;
	left: auto;
}



.service01_list1 li .text{
	width:100%;
	background:#fff;
	border-radius: 6px;
	display: flex;
	align-items: center;
	position:relative;
	line-height: 1.44;
	font-weight:700;
	font-size: clamp(1.5rem, 1.7vw, 2.5rem);
	padding: 20px 0;
}

.service01_list1 li .text .icon{
	display:flex;
	align-items:center;
	margin-right:22px;
	flex-shrink: 0;
}


.service01_list1 li .text:before{
	position:absolute;
	content:"";
	width:100%;
	height:100%;
	top:0;
	left:0;
	border: 1px solid #E6E4D0;
	z-index: -2;
	border-radius: 6px;
}

.service01_list1 li:nth-child(1) .text{
	padding-left: 6.054%;
	padding-right: 5%;
}

.service01_list1 li:nth-child(2) .text{
	padding-left: 6.246%;
	padding-right: 15%;
}

.service01_list1 li:nth-child(3) .text{
	padding-left: 9.562%;
	padding-right: 8%;
}
.service01_list1 li:nth-child(4) .text{
	padding-left: 6.246%;
	padding-right: 15%;
}
.service01_div2 .dots_img{
	margin:40px auto 0;
	text-align:center;
}


.service02{
	background:url(./img/service/bg2.jpg)no-repeat;
	background-size:cover;
	text-align:center;
}

.service02 .img1{
	position:absolute;
	width: 18.021%;
	left: 3.125%;
	top: 0%;
	bottom: 0;
	margin: auto;
	display: flex;
	align-items: center;
}

.service02 .img2{
	position:absolute;
	width: 22.24%;
	right: 3.021%;
	top: 15.903%;
}

.service02 .img3{
	position:absolute;
	width: 14.844%;
	right: -1.3028%;
	top: 51.805%;
}


.service02 .img1 img,
.service02 .img2 img,
.service02 .img3 img{
	border-radius:10px;
}

.service02 .inner{
	padding:153px 0 179px;
}

.service02 .title1{
	line-height: 1.3818;
	font-weight:700;
	font-size: clamp(2.4rem, 4vw, 5.5rem);
	color:#fff;
}

.service02 .text1{
	color:#fff;
	font-size: clamp(1.5rem,1.5vw,2rem);
	font-weight:700;
	line-height:1.8;
	margin: 3.786% auto 7.143%;
	width: 55%;
}

.service02 .mv_list1{
	max-width:704px;
	margin:0 auto 0;
}

.service02 .mv_list1 li a{
	background:#fff;
	color:#0B7C4E!important;
}

.service02 .btn1:before{
	background: url(./img/common/arrow_gre.svg) no-repeat;
	background-size: contain;
}

.service02 .mv_list1 li:last-child a{
	color:#47713F!important;
}

.service02 .mv_list1 li:last-child .btn1:before{
	background: url(./img/common/arrow_gre2.svg) no-repeat;
	background-size: contain;
}

.service03{
	padding:150px 0;
}

.service03_list1 li{
	margin-top:92px;
	display:flex;
	justify-content:space-between;
	/* align-items: flex-start; */
}

.service03_list1 li:nth-child(2){
	margin-top:80px;
	flex-direction:row-reverse;
}

.service03_list1 li:nth-child(3){
	margin-top:116px;
}

.service03_list1 li .img{
	max-width: 640px;
	width: 46%;
}

.service03_list1 li .img img{
	box-shadow:5px 5px 50px #00000012;
	border-radius:10px;
}

.service03_list1 li .text_area{
	max-width:700px;
	width: 50%;
	position:relative;
	padding-top: 6%;
}

.service03_list1 li .text_area .title1{
	line-height: 1.6;
	font-weight:700;
	font-size: clamp(2rem, 2.6vw, 4rem);
	color:#4D8E41;
}

.service03_list1 li .text_area .text1{
	margin-top: 12px;
	line-height:2.0714;
	font-size:1.4rem;
	font-weight:500;
}

.service03_list1 li .text_area .num{
	color:#DAEFD6;
	position: absolute;
	bottom: 0;
	right: 0;
	line-height: 1.198;
	font-weight:500;
	font-size: clamp(8rem, 12vw, 17.1rem);
	font-style:italic;
	z-index:-1;
}


.service03_list1 li:nth-child(2) .text_area .num{
	bottom:-10%
}


.service03_list1 li:nth-child(2) .text_area{
	padding-top: 8%;
}

.service03_list1 li:nth-child(3) .text_area{
	padding-top: 5%;
}

.service04_div{
	padding: 100px 10px 130px;
	max-width:1800px;
	width: 95%;
	margin: 0 auto 180px;
	background: #DBE8D8;
}

.service04_list1{
	display:flex;
	justify-content:space-between;
}

.service04_list1 li{
	max-width: 661px;
	width: 49%;
	margin-top: 100px;
	background: #0B7C4E;
	border-radius: 10px;
	box-shadow: 10px 10px 24px #0000003b;
	color: #fff;
	overflow: hidden;
}

.service04_list1 li:last-child{
	background:#4D8E41;
}

.service04_list1 li .img{
	width: 100%;
	max-height: 259px;
	height: 20vw;
	overflow: hidden;
}

.service04_list1 li .img img{
	width:100%;
	height:100%;
	object-fit:cover;
	transition:.4s;
}

.service04_list1 li:hover .img img{
	transform:scale(1.1);
}

.service04_list1 li .text_area{
	position:relative;
	padding:50px 20px 57px;
}

.service04_list1 li .text_area .icon{
	position:absolute;
	top: -34.32%;
	left:0;
	right:0;
	margin:auto;
	text-align: center;
	max-width: 108px;
	width: 17%;
}

.service04_list1 li .text_area .title1{
	line-height: 1.44;
	font-weight:700;
	font-size: clamp(1.8rem, 2.4vw, 2.5rem);
	text-align:center;
}

.service04_list1 li .text_area .text1{
	margin-top:13px;
	font-size:1.4rem;
	font-weight:500;
}
.col_cate_list.press_cate{
	display:flex;
	margin: 0;
	margin-right: 4px;
}
.col_cate_list li{
	margin-bottom:0;
	background: #F2F5F8;
	border: 1px solid #D1D7DD;
	border-radius: 20px;
	color: #4d8e42;
	min-width: 137px;
	text-align: center;
	font-size: 1.4rem;
	padding: 4px 10px;
	margin-right: 10px;
}

.col_list1.li a  .title {
    font-size: clamp(1.6rem, 2vw, 2rem);
}

.press01{
	/* border-bottom:1px solid #C7D1DC; */
	background: #FFF;
	padding: 0.5rem 1rem;
	margin: 30px auto;
}

.press01 .column_flex .main_cont .btn1.small{
	margin: 60px auto 0;
	max-width:370px;
	height:74px;
	font-size:2rem;
}
.column_flex .main_cont > .title1{
	padding: 18px 1rem 18px;
	border-bottom:1px solid #CECECE;
	color:#4d8e42;
	font-size: clamp(2.4rem, 2.4vw, 3rem);
	font-weight:700;
	line-height:1.46666;
}

.press01 .col_list1 li a{
	display:flex;
	align-items:center;
	justify-content:space-between;
	padding:30px 0;
	border-bottom:1px solid #CECECE;
	padding-right: 9.825%;
	position: relative;
	transition: .4s;
}


.press01  .col_list1 li a:before{
	position:absolute;
	content:"";
	width:41px;
	height:41px;
	background:url(../img/common/btn_arrow_wh.svg)no-repeat;
	background-size:contain;
	right:0px;
	top:0;
	bottom:0;
	margin:auto;
}

.press01  .col_list1 li a .img{
	max-width:268px;
	width: 31%;
	height: 13vw;
	max-height: 190px;
}

.press01  .col_list1 li a .img img{
	width:100%;
	height:100%;
	object-fit:cover;
}


.press01  .col_list1 li a .text_area{
	max-width: 571px;
	width: 66%;
}

.col_cate_list{
	display:flex;
	flex-wrap:wrap;
	margin-bottom:5px;
}
.press01 .btn1{
	margin: 30px auto 50px;
}
.dacate2{
	margin: 20px auto 0;
	display:flex;
	align-items:center;
}
.contact01 p {
    font-size: 2rem;
    margin: 0 auto 30px;
}
.contact01 a {
    margin: 0 auto 30px;
}
span.mwform-tel-field {
    display: flex;
}
span.mwform-tel-field input {
   width: 20%;
}
textarea {
   background: #faf8eb;
   border: 1px solid #ddd;
}
p#js-selected-text {
    font-size: 1.6rem;
    text-align: left;
}
/* 全体のコンテナ */
.subsidy-section {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
  padding: 0 20px 60px;
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", sans-serif;
  color: #333333;
  box-sizing: border-box;
}

/* 0. 上部バナー画像 */
.subsidy-banner {
  width: 100%;
  max-width: 1026px; /* バナーの横幅 */
  margin: 0 auto 50px; /* 下に余白を設定 */
  text-align: center;
}
.subsidy-banner img {
  width: 100%;
  height: auto; 
  max-width: 1026px;
  border-radius: 12px; 
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.08); 
  display: block;
  margin: 0 auto;
}

.subsidy-title {
  font-size: 2.6rem;
  font-weight: 700;
  text-align: center;
  margin-bottom: 24px;
  color: #333333;
  letter-spacing: 0.05em;
}
.subsidy-title span {
  display: inline-block;
  padding-bottom: 8px;
  border-bottom: 3px solid #4D8E41; 
}

.subsidy-text {
  font-size: 1.8rem;
  line-height: 1.8;
  text-align: center;
  max-width: 900px;
  margin: 0 auto 50px;
}
.subsidy-text strong {
  color: #4D8E41; 
  font-weight: bold;
}

/* 2. 活用例部分 */
.subsidy-examples {
  margin-bottom: 60px;
}
.subsidy-subtitle {
  font-size: 2.6rem;
  font-weight: 700;
  text-align: center;
  margin-bottom: 5px;
  letter-spacing: 0.05em;
}
.subsidy-subtext {
  font-size: 1.8rem;
  text-align: center;
  color: #666666;
  margin-bottom: 40px;
}

/* カード型レイアウトのグリッド */
.subsidy-card-container {
  display: flex;
  justify-content: space-between;
  gap: 24px;
  flex-wrap: wrap;
}

.subsidy-card {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  flex: 1;
  min-width: 280px;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.04);
  overflow: hidden;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.subsidy-card:hover {
  /* transform: translateY(-4px); */
  box-shadow: 0 8px 25px rgba(77, 142, 65, 0.12);
}

.subsidy-card-header {
  background-color: #fafbfc;
  padding: 24px 20px 16px;
  border-bottom: 1px solid #e2e8f0;
}

.subsidy-card-num {
  font-size: 2rem;
  font-weight: bold;
  color: #4D8E41;
  display: block;
  margin-bottom: 4px;
  letter-spacing: 0.1em;
  text-align: center;
}

.subsidy-card-header h4 {
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.4;
  margin: 0;
  color: #1a202c;
}

.subsidy-badge {
  display: inline-block;
  font-size: 1.2rem;
  font-weight: 700;
  color: #ffffff;
  background-color: #4D8E41;
  padding: 2px 8px;
  border-radius: 4px;
  margin-top: 8px;
}
.subsidy-badge-gray {
  background-color: #718096;
}

.subsidy-card-body {
  padding: 24px 20px;
}

.subsidy-card-body ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.subsidy-card-body li {
  font-size: 14px;
  line-height: 1.6;
  margin-bottom: 16px;
  position: relative;
  padding-left: 20px;
  color: #4a5568;
}

.subsidy-card-body li:last-child {
  margin-bottom: 0;
}
.subsidy-card-body li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 5px;
  width: 9px;
  height: 5px;
  border-left: 2px solid #4D8E41;
  border-bottom: 2px solid #4D8E41;
  transform: rotate(-45deg);
}

.subsidy-card-body li strong {
  color: #1a202c;
}

/* 3. なぜ今注目？部分 */
.subsidy-why-box {
  background-color: #f4faf3;
  border-left: 5px solid #4D8E41;
  border-radius: 4px;
  padding: 30px 40px;
}

.subsidy-why-title {
  font-size: 19px;
  font-weight: 700;
  color: #4D8E41;
  margin-top: 0;
  margin-bottom: 12px;
}

.subsidy-why-text {
  font-size: 15px;
  line-height: 1.8;
  margin: 0;
  color: #4a5568;
}
.subsidy-why-text strong {
  color: #4D8E41;
  font-weight: bold;
}

.subsidy-industry-section {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
  padding: 60px 20px;
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", sans-serif;
  color: #333333;
  box-sizing: border-box;
}

/* タイトル設定 */
.subsidy-subtitle {
  font-size: 26px;
  font-weight: 700;
  text-align: center;
  margin-bottom: 24px;
  color: #1a202c;
  letter-spacing: 0.05em;
}
.subsidy-subtitle span {
  display: inline-block;
  padding-bottom: 8px;
  border-bottom: 3px solid #4D8E41; /* メインカラー */
}

/* リード文 */
.subsidy-industry-lead {
  font-size: 15px;
  line-height: 1.8;
  text-align: center;
  margin: 0 auto 40px;
  color: #4a5568;
  max-width: 900px;
}

/* 業種カードのグリッド（PC・タブレットは自動折り返し、スマホは1列） */
.subsidy-industry-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: 24px;
  margin-bottom: 30px;
}

/* 個別カード */
.subsidy-ind-card {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.03);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.subsidy-ind-card:hover {
  /* transform: translateY(-3px); */
  box-shadow: 0 8px 25px rgba(77, 142, 65, 0.12);
}

/* カードのヘッダータイトル */
.subsidy-ind-title {
  background-color: #4D8E41; /* メインカラー */
  color: #ffffff;
  margin: 0;
  padding: 14px 20px;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.05em;
}

/* カードの本文 */
.subsidy-ind-body {
  padding: 20px;
}
.subsidy-ind-body dl {
  margin: 0;
}
.subsidy-ind-body dt {
  font-weight: 700;
  color: #1a202c;
  font-size: 14.5px;
  margin-bottom: 6px;
  padding-left: 14px;
  position: relative;
}
/* リスト先頭の緑色の丸ぽち */
.subsidy-ind-body dt::before {
  content: "";
  position: absolute;
  left: 0;
  top: 7px;
  width: 6px;
  height: 6px;
  background-color: #4D8E41; /* メインカラー */
  border-radius: 50%;
}
.subsidy-ind-body dd {
  margin: 0 0 18px 14px;
  font-size: 13.5px;
  color: #4a5568;
  line-height: 1.6;
}
.subsidy-ind-body dd:last-child {
  margin-bottom: 0;
}

/* カード内の注記 */
.note-small {
  font-size: 11px;
  color: #718096;
}

/* 最下部 注釈エリア */
.subsidy-notes {
  background-color: #f7fafc;
  border: 1px dashed #cbd5e0;
  padding: 18px 24px;
  border-radius: 6px;
  margin-top: 40px;
}
.subsidy-notes p {
  margin: 0 0 8px;
  font-size: 13px;
  color: #718096;
  line-height: 1.6;
}
.subsidy-notes p:last-child {
  margin-bottom: 0;
}
a.formBtn {
    margin-top: 20px;
    font-size: 1.6rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff !important;
    background: #0B7C4E;
    max-width: 342px;
    width: 100%;
    height: 30px;
    border-radius: 60px;
    position: relative;
    font-weight: 700;
    line-height: 1;
    transition: .4s;
}

ul.co3_list1 .text1 {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 5;
}

.side_btn_area{
	position:fixed;
	bottom: 5%;
	right:0;
	z-index: 10;
}

.side_btn1{
	display:flex;
	align-items:center;
	justify-content:center;
	flex-direction:column;
	background: linear-gradient(90deg, #b7d3b2, #4d8f41);
	padding: 50px 28px 39px;
	border-radius: 28px 0 0 28px;
}

.side_btn1 > .en{
	display:flex;
	align-items:center;
	justify-content:center;
	flex-direction:column;
	line-height: 1;
	font-size: 3rem;
	letter-spacing: 0;
	font-weight: 700;
	color: #fff;
}
.side_btn1 > i{
	margin-bottom: 10px;
	font-size: 2rem;
}
/*-- 固定ここまで --*/


/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width: 1921px) {

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
	


/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

} /* min-width: 1921px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */


	

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

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

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
	.co4_list1 li .left{
		width:33%;
	}

.co4_list1 li{
	margin-top:40px;
}


.col_list1 li{
	width: 24%;
	margin-right: 1.3333%;
}

.col_list1 li .img{
	height: 14vw;
}

.art_mv01 .tit_inner{
	padding:120px 0 100px;
}


.service01_list1 li:nth-child(1) .text{
	padding-left: 3%;
	padding-right: 3%;
}

.service01_list1 li:nth-child(2) .text{
	padding-left: 3%;
	padding-right: 3%;
}

.service01_list1 li:nth-child(3) .text{
	padding-left: 3%;
	padding-right: 3%;
}

.service02 .img1{
	left:0;
	width: 17%;
	bottom: 16%;
}

.service02 .text1{
	width: 75%;
}

.service02 .img3{
	top: 40%;
}

.service02 .inner {
    padding: 120px 0;
}

.service04_list1 li .text_area .icon{
	top:-20%;
}


.mem_det01 .inner .right .name .box span{
	font-size: 1.6rem;
}

.mem_det01 .inner .right .name h4{
	font-size: 3rem;
}

.mem_det01 .inner .right .name p, .mem_det01 .inner .right .name .no{
	font-size:1.6rem;
}

.mem_det01 .inner .right h3 {
    font-size: 3.5rem;
}
	
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

} /* max-width: 1200px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
	
	
		


/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

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

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */


/*-----------------------------------------------------------
全体スタイル
-----------------------------------------------------------*/

img {
	width: auto;
	max-width: 100%;
	height: auto;
}

.content01_div .text_area{
	padding: 20px 0 0;
}

.cont02_list1 li{
	width:49%;
}

.cont02_list1 li .title2 {
    font-size: clamp(1.7rem, 2.2vw, 2.2rem);
}

.cont02_list1 li .num {
    font-size: clamp(6rem, 11vw, 12rem);
}
	
.content02 .title{
	margin-bottom:30px;
}

.co3_list1 > li {
    width: 24%;
    margin-right: 1.3333%;
}

.co4_list1 li{
	width:100%;
	margin:40px auto 0;
}

.co4_list1 li .right .title1{
	font-size: clamp(1.8rem,4vw,2.2rem);
}

.co4_list1 li .right .num{
	font-size: clamp(5rem,8vw,9rem);
}

.co4_list1 li .right .num span{
	font-size: clamp(1.8rem,4vw,2.2rem);
}

.col_list1{
	justify-content:space-between;
}

.col_list1 li{
	width: 48%;
	margin-right: 0%;
}

.col_list1 li .img{
	height: 27vw;
	max-height: initial;
}


  .co3_list1{
	  justify-content:space-between;
  }

    .co3_list1 > li {
        width: 48%;
        margin-right: 0%;
        margin-bottom: 30px;
    }
	
.co3_list1 li .img{
	max-height:initial;
	height: 29vw;
}

.service01_list1 li .text .icon{
	margin-right:8px;
	width:20px;
}

.service01_list1 li{
	width:98%;
}

.service01_div2{
	padding: 40px 20px 40px;
}	

.service03_list1 li .text_area{
	padding-top: 0%!important;
}

.service04_list1 li .text_area .icon{
	top:-15%;
	width:20%;
}

.service04_list1 li{
	margin-top:60px;
}
	
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

} /* max-width: 1000px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */




/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

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

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

.pc {
	display: none;
}

.sp {
	display: block;
}

nav li a {
	font-size: 1.5rem;
}


a[href*="tel:"] {
	pointer-events: initial;
	cursor: pointer;
	text-decoration: none;
	}

/* ヘッダー
----------------------------------------------------------- */


.headerUl{
	display: flex;
	width: 30%;
	justify-content: flex-end;
}

.menuBtn {
	/* width: 35%; */
	display: flex;
	align-items: center;
	justify-content: center;
}


/*--- modal ---*/

.menu-trigger,
.menu-trigger span {
  display: inline-block;
  transition: all .4s;
  box-sizing: border-box;
}
.menu-trigger {
  position: relative;
  width: 36px;
  height: 24px;
  z-index: 9999;
}
.menu-trigger span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #333;
  border-radius: 4px;
}
.menu-trigger span:nth-of-type(1) {
  top: 0;
}
.menu-trigger span:nth-of-type(2) {
  top: 11px;
}
.menu-trigger span:nth-of-type(3) {
  bottom: 0;
}

.menu-trigger.active span,
.headerScroll .menu-trigger span{
	background:#111;
}
	
.menu-trigger.active span:nth-of-type(1) {
  -webkit-transform: translateY(20px) rotate(-45deg);
  transform: translateY(11px) rotate(-45deg);
}
.menu-trigger.active span:nth-of-type(2) {
  opacity: 0;
}
.menu-trigger.active span:nth-of-type(3) {
  -webkit-transform: translateY(-20px) rotate(45deg);
  transform: translateY(-11px) rotate(45deg);
}

/*gnav*/
.gnav{
    background: #fff;
    display: none;
    height: 100%;
    position: fixed;
    width: 100%;
    z-index: 999;
    transition: 1s;
    left: 0;
    top: 0;
}

.gnav.active{
	display: block;
}

.gnav__menu{
    display: block;
    width: 100%;
    height: 100%;
    padding: 60px 0 60px;
    margin-bottom: 10px;
}

.gnav__wrap{
    align-items:center;
    display: flex;
    height: 100%;
    justify-content: center;
    position: fixed;
    width: 100%;
	top: 0px;
    overflow: scroll;
}

nav .gnav__menu__item{
    margin: 10px auto 0;
    width: 95%;
    border-bottom: 1px solid #ccc;
}

nav .gnav__menu__item2{
    margin: 30px auto 0;
    width: 95%;
}

	
nav .gnav__menu__item2 .sns_list{
	margin:0;
}

.gnav__menu__item a{
    font-size: 1.8rem;
    font-weight: 700;
    padding: 0;
    text-decoration: none;
    transition: .5s;
    background: none;
    width: 100%;
    padding: 0 0 10px 0;
    display: block;
}

nav .gnav__menu__item a.btn03{
    padding: 0 5%;
    font-size: 2rem;
}

.pc_nav{
	display:none;
}


.contact01_div1{
	padding:30px 10px;
	border-radius:10px;
	margin-bottom: 60px;
}

.tb_flex{
	flex-direction:column;
}

input[type="text"], input[type="email"], input[type="tel"], select{
	height:50px;
}


.news01{
padding: 80px 0;
}

.news01 .flex{
	flex-direction:column;
}

.news01 .main_cont{
	max-width:initial;
	width: 100%;
}


.pagination-list{
	margin:40px auto 0;
}

.news01 .side_cont{
	width: 100%;
	margin:60px auto 0;
	display:flex;
	justify-content:space-between;
	max-width:initial;
}

.side_div{
	margin:0;
	width:48%;
}


.det_cont .title_area .dacate{
	max-width:180px;
}

.det_cont .title_area {
    padding-bottom: 28px;
    margin-bottom: 28px;
}


.news_list li{
	flex-direction:column;
	align-items: flex-start;
}

.news_list li .title1{
	width:100%;
	margin-top:8px;
}

.news_list li .dacate{
	width:100%;
	max-width: initial;
	justify-content: flex-start;
}

.news_list li .dacate .date{
	margin-right:16px;
}

.news_list li:before{
	top: auto;
	bottom: 73px;
}

header{
	padding:0 20px;
	height:70px;
}

#cover{
	margin-top:70px;
}

#cover .text_area{
	width:89.334%;
	padding: 20% 0;
}

.mv_list1{
	flex-direction:column;
	justify-content:center;
	align-items:center;
}

#cover .text_area .text1{
	margin: 5% auto 6%;
}
	
.mv_list1 li{
	width:100%;
	margin-top:15px;
}

#cover .ma1920 .img1{
	top: 3%;
	left: 2%;
	width: 24%;
}

#cover .ma1920 .img2{
	top: 10%;
	left: 0%;
	width: 17%;
}

#cover .ma1920 .img3{
	bottom: 2%;
	left: 7%;
	width: 29%;
	top: auto;
}

#cover .ma1920 .img4{
	top: 2%;
	right: 7%;
	width: 27%;
}

#cover .ma1920 .img5{
	width: 23%;
	top: auto;
	right: 0;
	bottom: 0%;
	display: none;
}

#cover .ma1920 .img6{
	top: auto;
	right: 11%;
	width: 19%;
	bottom: 0%;
}

#cover .ma1920 {
    min-height: 600px;
}

.content01_div{
	flex-direction:column;
	width:100%;
	margin:0 auto;
	padding: 80px 0;
}

.content01_div .text_area{
	padding:0;
	width:89.334%;
	margin: 0 auto 30px;
}

.content01_div .text_area .title_area{
	margin-bottom:24px;
}

.content01_div .slider1_area{
	max-width:initial;
	width:100%;
}

.content01_div .ab_text1{
	bottom:0;
	line-height: 0.9;
	right: 5%;
	/* width: 89.334%; */
	left: auto;
	margin: auto;
}

.content02{
	padding:80px 0;
}

.cont02_list1 li{
	width:100%;
	margin-top:30px;
	padding: 30px 20px;
	max-width: initial;
}

    .cont02_list1 li .title2 {
        font-size: clamp(1.8rem, 4.8vw, 2.2rem);
    }

    .cont02_list1 li .num {
        font-size: clamp(8rem, 15vw, 12rem);
    }

.content03 {
    padding: 80px 0;
}


.top_title_area{
	flex-direction:column;
	align-items:flex-start;
}
	
.top_title_area .text{
	margin-top:14px;
}

.content04{
	padding:80px 0;
}


.content05 {
    padding: 80px 0;
}
	
.inner2,
.inner{
	width:89.334%;
}

    .content02 .title {
        margin-bottom: 20px;
    }

.co5_list1 li{
	flex-direction: column!important;
	margin-top: 50px;
}

.co5_list1 {
    margin-top: 0px;
}

.co5_list1 li .img{
	width:100%;
	margin: 0 auto 20px;
}

.co5_list1 li .text_area{
	max-width:initial;
	width:100%;
}

.co5_list1 li .text_area .name{
	font-size: clamp(3rem, 4vw, 4rem);
	margin-bottom: 12px;
}

.content06 {
    padding: 80px 0;
}

.contact_area{
	padding-bottom:80px;
}

.cont_area_list1 {
	flex-direction:column;
}

.cont_area_list1 li{
	width:100%;
	max-width:initial;
	padding:30px 20px 30px;
	margin-bottom:20px;
}
	
.cont_area_list1 li:last-child{
	margin-bottom:0;
}

footer {
    padding: 40px 0 40px;
}

footer .flex1{
	flex-direction:column;
	padding-bottom:30px;
}

footer .left{
	margin:0 auto 20px;
}

footer .left .sns_list{
	margin:30px auto 0;
}

footer .right{
	width:100%;
	flex-wrap:wrap;
	justify-content:space-between;
	max-width: 350px;
	margin: 0 auto;
}

.ft_list1{
	width:48%;
}
	
.ft_list1:nth-child(1){
	width:100%;
}

.ft_list1 li,
.ft_list1 li:last-child{
	margin-bottom:12px;
	width:100%;
}


.ft_list1 li.parent {
    margin-bottom: 8px;
}

.content01_div .text_area .title_area .title1 .en_tit{
	font-size: clamp(5rem, 5vw, 5.7rem);
}

.col_list1 li .text_area .title1{
	font-size: 1.8rem;
}

.cont02_list1 li .text1 {
    margin-top: 12px;
}

.hLogo {
    width: 100px;
}

.member_grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 55px;
  gap: 3.7%;
}
 
.search_category_row {
   flex-direction: column;
}

.search_category_row select{
	height: 45px;
	padding: 14px;
}

.mem_det01 .inner .right .name{
	margin-top: 0;
}

.mem_det01 .inner .right h3 {
    font-size: 3rem;
}

.mem_det01 .inner .left{
    width: 47%;
}

.mem_det01 .inner .right{
    width: 47%;
}

	.contact_form_tb th,
	.contact_form_tb td {
		display: block;
		width: 100%;
		padding: 10px 0 30px;
	}

	.contact_form_tb th {
		border-bottom: none;
		padding-bottom: 5px;
		padding-top: 25px;
	}

	.contact_form_tb td {
		padding-left: 0;
		padding-top: 0;
	}

	.radio_list {
		gap: 12px;
	}

	.contact_lead {
		font-size: 1.5rem;
	}

	.contact_form_tb tr:first-child td {
    border-top: none;
}

.mem_det01 .right.fac01 .btn_area .btn1,.mem_det01 .right.fac01 .btn_area .btn2{
	font-size: 1.5rem;
}

.art_mv01 .tit_inner{
	padding: 80px 0 60px;
	font-size: 3rem;
}

.service01_div1:before,
.service01_div1:after{
	width:30px;
	height:30px;
}

.service01 {
    padding: 30px 0 0;
}

.service01_div2 .mainTit{
	font-size: clamp(2.2rem, 4vw, 4rem);
}

.service01_list1 li{
	width:100%;
}

.service01_list1 li .text {
	align-items:flex-start;
	font-size: 1.5rem;
}
	
.service01_list1 li .text .icon{
	width:16px;
	padding-top: 4px;
}

.service02 .inner {
	padding:40% 0;
}
	
.service02 .text1{
	width:100%;
	font-size: clamp(1.5rem, 3.6vw, 2rem);
}


.service02 .img1{
	top:auto;
	bottom:2%;
	width:25%;
	left:auto;
	right:5%
}

.service02 .img2{
	width:35%;
	top: 3%;
	left:3%;
	right:auto;
}
	
.service02 .img3{
	top: 8%;
	width:30%;
}

.service03 {
    padding: 80px 0;
}

.service03_list1 li{
	margin-top: 50px!important;
	width:100%;
	flex-direction:column-reverse!important;
}

.service03_list1 li .text_area{
	width:100%;
	padding-top:0!important;
}


.service03_list1 li .img{
	max-width:initial;
	margin:30px auto 0;
	width:100%;
}

.service03_list1 li{
	position:relative;
}

.service03_list1 li .text_area{
	position:initial;
}

.service03_list1 li .text_area .num{
	bottom:-20px!important;
	line-height:0.7;
	z-index:1;
	right:2%;
	font-size: clamp(8rem, 16vw, 17.1rem);
}

.service04_div {
    padding: 60px 0;
    margin: 0 auto 80px;
}

.service04_list1 li{
	margin:40px 0 0;
}

.service04_list1{
	flex-direction:column;
}

.service04_list1 li{
	width:100%;
	max-width:initial;
	margin:50px auto 0;
}


.service04_list1 li .img{
	height: 33vw;
}

.service04_list1 li .text_area .icon{
	width: 70px;
	top: -40px;
}

.service04_list1 li .text_area .title1 {
    font-size: clamp(2rem, 4vw, 2.5rem);
}

.service04_list1 li .text_area {
    padding: 40px 20px 30px;
}

.service01_div1{
	padding: 30px 0 20px;
}

.art_mv01 .mv_tit p{
	
bottom: -2%;
}

.member_search {
    padding: 60px 0 60px;
}

.search_box{
	padding:30px 20px;
}

.search_box .search_label{
	font-size:2rem;
}

.fac01 .search_box select {
    margin-bottom: 20px;
}

.fac01 .txt h3 span{
	padding: 0 0 5px 45px;
}

.fac_det02.mem_det02 {
    margin-bottom: 0px;
}

.contact01 {
    padding: 80px 0;
}

.selected_info_area{
	padding:10px;
	font-size:1.8rem;
}

.privacy01 {
    margin: 80px 0;
    line-height: 1.8;
    font-size: 1.5rem;
}

.privacy01 dt {
    font-size: 2.2rem;
}

.member01 {
    margin-bottom: 80px;
}

.pagination_wrap{
	padding-bottom:0;
}

.mem_det02 {
    margin-bottom: 80px;
}

.mem_det02 .btn1 {
    margin: 40px auto 0;
}

.member01.fac01 {
    margin: 80px 0 80px;
}

.privacy01 dd{
	margin-bottom: 40px;
}

.pankuzu li + li:before{
	width: 15px;
	left: -30px;
}

.pankuzu li {
    margin: 0 0 0 30px;
}

.art_mv02 .pankuzu{
	font-size:1.5rem;
	width:89.334%;
}
  .subsidy-section {
    padding: 40px 15px;
  }
  .subsidy-banner {
    margin-bottom: 30px;
  }
  .subsidy-card-container {
    flex-direction: column;
    gap: 20px;
  }
  .subsidy-why-box {
    padding: 24px 20px;
  }
  .subsidy-title {
    font-size: 22px;
  }
  .subsidy-subtitle {
    font-size: 20px;
  }
.subsidy-industry-section {
    padding: 40px 15px;
  }
  .subsidy-subtitle {
    font-size: 22px;
  }
  .subsidy-industry-lead {
    text-align: left; /* スマホでは左寄せのほうが読みやすくなります */
    font-size: 14px;
  }
  .subsidy-industry-grid {
    grid-template-columns: 1fr; /* スマホ時は縦1列 */
    gap: 16px;
  }
  .subsidy-notes {
    padding: 16px;
  }
	.side_btn1{
	padding: 15px 15px 15px;
	border-radius:10px 0 0 10px;
}

.side_btn1 > .en{
	font-size:2rem;
}


.side_btn1 > i{
	margin-bottom:6px;
}
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

} /* max-width: 768px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */




/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

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

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

.pc2, .pcTel {
	display: none;
}

.sp2 {
	display: block;
}

.spTel  {
	display: inline;
}


/*-- テーブル --*/

table {
	width: 100%;
}


/*-- ページトップ --*/

#pageTop {
	display: none !important;
}


/* フッター
----------------------------------------------------------- */

.sp nav {
	margin: 0 auto;
}

.co4_list1 li{
	flex-direction:column;
	position: relative;
	padding:20px;
	max-width: 400px;
}

.co4_list1 li .left{
	width:100%;
	margin: 0;
	max-width: initial;
}

.co4_list1 li .left .ab_text{
	position:absolute;
	top:20px;
	left:5px;
}


.co4_list1 li .left .img{
	width:25%;
	margin:0 auto 20px;
	max-width: 100px;
}

    .co4_list1 li .right .title1 {
        font-size: 2rem;
    }


.col_list1 li{
	width: 100%;
}

.col_list1 li .img{
	height: 54vw;
}

    .co4_list1 li .right .num {
        font-size: clamp(6rem, 8vw, 9rem);
    }

.co3_list1 > li{
	width:100%;
}

.co3_list1 li .img{
	height: 53vw;
}

.co3_list1 li .name{
	font-size: clamp(1.8rem, 4vw, 2.2rem);
}

.member_grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 55px;
  gap: 3% 10%;
}	

.member_list_section {
    padding-bottom: 120px;
}

.fac01 .txt h3{
	font-size: 2rem;
	color: #0B7C4E;
	position: relative;
	margin: 0 0 30px 0;
}

.mem_det01 .inner{
	flex-direction: column;
}

.mem_det01{
    margin: 10vh 0 ;
}


.mem_det01 .inner .left{
    width: 100%;
	margin: 0 auto;
	max-width: 400px;
}

.mem_det01 .inner .right{
    width: 100%;
	margin-top: 60px;
}

.mem_det01 .right.fac01 .btn_area .btn1,.mem_det01 .right.fac01 .btn_area .btn2{
	width: 100%;
	max-width: 100%;
}

.mem_det01 .inner .right .name .box{
	margin: 20px 0 0 0;
}

.mem_det01 .inner .right th{
	display: block;
	width: 100%;
	max-width: 100%;
	border: none;
	padding: 20px 0 0 0;
}

.mem_det01 .inner .right td{
	display: block;
	width: 100%;
	padding: 6px 0 20px 0;
	font-size: 1.5rem;
}

.mem_det02 li .box{
	flex-direction: column;
	padding: 0;
}

.mem_det02 li .box .img{
	width: 100%;
}

.mem_det02 li .box .txt{
	width: 100%;
	margin: 30px 0 0 0;
}

.mem_det02 li{
	padding: 60px 5%;
	font-size: 1.5rem;
}

.company01 .txt p{
	font-size: 1.8rem;
}

.company02 table th{
	border-bottom: none;
	display: block;
	width: 100%;
	padding: 20px 0 0 0;
	font-size: 1.6rem;
}

.company02 table td{
	padding: 10px 0 20px;
	border-bottom:1px solid #E8E5D5;
	display: block;
	width: 100%;
	font-size: 1.5rem;
}

.company02 table {
	margin-top: 35px;
}

.company01{
	margin: 10vh auto;
}

.company02{
	margin: 0 auto 10vh;
	padding: 7vh 0;
}

.art_mv01 .tit_inner{
	font-size:2.8rem;
}

.bulk_consult_btn{
	line-height:1.4;
}

.mem_det02 li h4 {
    font-size: 3rem;
}
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

} /* max-width: 591px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */




/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

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

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */


/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

} /* max-width: 414px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */




/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

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

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */


/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

} /* max-width: 320px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */