@charset "UTF-8";



/****************reset*******************/
body,div,dl,dt,dd,h1,h2,h3,h4,h5,h6,p{
	padding:0;
	margin:0;
	width:auto;
	/*height:100%;*/
	font-size: 100%;
	line-height:150%;
	font-weight: normal;
}
ul,li{ list-style:none; padding:0; margin:0; font-size: 100%; line-height:100%; font-weight: normal; }
a img { }
a{ border: none; text-decoration:none; word-break: break-all;}
a:link{cursor:pointer;}
a:link:hover{
	-webkit-transition: all 0.5s ease-in-out;
	-o-transition: all 0.5s ease-in-out;
	transition: all 0.5s ease-in-out;
}
img{max-width:100%; height:auto; line-height:100%; font-size:0px; -webkit-backface-visibility: hidden;}
hr{	
    border: 1px solid #777;
    margin: 20px 0px;}
table{
    border-collapse: collapse;}
h1,h2,h3,h4,h5,h6,p,a,td,th,span{
	color:#222222;
	font-family: "Noto Sans JP", san-serif;
    letter-spacing: 0.1em;
	line-height:1.9;
}



main{
	background: #FFFCF6;
	overflow-x:hidden;
}
.inner1124{
	width:92%;
	max-width:1124px;
	margin:0 auto;
	line-height:1.9;
    box-sizing: border-box;
}

/* ふわっjs 　*/
.fadeUpTrigger,.fadeUpTrigger2{
	opacity: 0;
}

.fadeUp{
	animation-name:fadeUpAnime;
	animation-duration:1.5s;
	animation-fill-mode:forwards;
	opacity:0;
}
.fadeUp2{
	animation-name:fadeUpAnime2;
	animation-duration:2.5s;
	animation-fill-mode:forwards;
	opacity:0;
}

@keyframes fadeUpAnime{
	from {
		opacity: 0;
		transform: translateY(100px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}
@keyframes fadeUpAnime2{
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}
/* ふわっjs 　*/

.section_container{
	padding:8vw 0;
}
.btn{
	width:280px;
	margin: 24px auto 0;
	padding:12px 28px;
	font-size:16px;
	font-weight:bold;
	text-align:center;
	color:#007900;
	display:block;
	border:solid 1px #007900;
	border-radius:40px;
}
.btn:hover{
	color:#fff;
	background:#007900;
}
h2{
	margin-bottom:32px;
	font-family:"Noto serif JP",sans-serif;
	font-size:40px;
	font-weight:bold;
	line-height:1.4;
	color:#007900;
	letter-spacing:.1em;
	display:inline-block;
}
h2 span{
	font-family:"Noto serif JP",sans-serif;
	font-size:16px;
	color:#007900;
    display: flex;
    align-items: center;
	position:relative;
	overflow:hidden;
}
h2 span:after{
	content:"";
	width:100%;
	height:1px;
	margin-left:0.5em;
	display:block;
	position:relative;
	top: 49%;
	background:#007900;
}
h3{
	margin-bottom:6%;
	font-family:"Noto serif JP",sans-serif;
	font-size:40px;
	font-weight:bold;
	text-align:center;
	line-height:1.4;
	color:#007900;
	letter-spacing:.1em;
	display:inline-block;
}
h3 span{
	font-family:"Noto serif JP",sans-serif;
	font-size:16px;
	color:#007900;
    display: flex;
    align-items: center;
	justify-content:center;
	position:relative;
	overflow:hidden;
}
h3 span:before{
	content:"";
	width:80px;
	height:1px;
	margin-right:0.5em;
	display:block;
	position:relative;
	top: 49%;
	background:#007900;
}
h3 span:after{
	content:"";
	width:80px;
	height:1px;
	margin-left:0.5em;
	display:block;
	top: 49%;
	background:#007900;
}
h4{
    width: 100%;
	font-family:"Noto serif JP",sans-serif;
	font-size:24px;
	font-weight:bold;
	color:#007900;
    display: flex;
    align-items: center;
}
h4:after{
	content:"";
	height:1px;
	flex-grow: 2;
	background:#007900;
}
h5{
    width: 100%;
	margin-top:3%;
	font-size:20px;
	font-weight:bold;
    line-height: 1.2;
	color:#F39800;
}
strong{
	font-size:120%;
}
.txt_right{
	text-align:right;
}
.sp{
	display:none;
}
table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
}
table.fee {
	margin-top:3%;
}
table th{
	width: 144px;
    padding: 24px 8px 24px 24px;
    font-size: 18px;
    font-weight: bold;
    text-align: left;
    vertical-align: middle;
    border-bottom: 2px solid #007900;
}
table th span{
	font-size:85%;
	line-height:1.4;
}
table td{
    width: calc(100% - 144px);
    padding: 24px 12px 24px 24px;
    font-size: 16px;
    border-bottom: 2px solid #00790033;
}
table.fee th,
table.fee td{
	text-align:center;
}
table tr:first-child th{
    border-top: 2px solid #007900;
}
table tr:first-child td{
    border-top: 2px solid #00790033;
}
img{
    border-radius: 8px;
}



header {
	width:100%;
	padding:20px 12px;
	background-color: #fff;
	box-shadow: 0 0 12px #00000030;
	box-sizing:border-box;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 999; 
}
.head_inner{
	width:95%;
	margin:0 auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap:wrap;
}
header h1 img {
	width:200px;
}
header .head_logo img {
	width:168px;
}
header h1 a:hover , header .head_logo a:hover{
	opacity:.75;
}
header .gmenu_wrap {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 1.25em;
}
header .gmenu_wrap nav ul {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 1.25em;
}
header .gmenu_wrap nav ul img{
	width:22px;
	border-radius:0;
}
header .gmenu_wrap nav ul li a:hover{
	color: #f9660d;
	opacity:1;
}

/* ハンバーガーメニュー */
.gnav_sp{display: none;}
.hamburger{ position:fixed; z-index:999; top: 24px; right: 3vw;}
.menu-trigger,.menu-trigger span{ display:inline-block; transition:all .5s; box-sizing:border-box; margin:0 auto;}
.menu-trigger{ position:relative; width:35px; height:32px; cursor:pointer;}
.menu-trigger:hover{opacity:1;}
.menu-trigger span {position:absolute;left:0;width:100%;height:3px;border-radius:3px;background-color: #777777;}
.menu-trigger span:nth-of-type(1) { top:0;}
.menu-trigger span:nth-of-type(2) { top:15px;}
.menu-trigger span:nth-of-type(3) { bottom:0;}

.menu-trigger.active span:nth-of-type(1) { -webkit-transform:translateY(10px) rotate(-45deg); transform:translateY(10px) rotate(-45deg); width:100%; background-color: #F39700;}
.menu-trigger.active span:nth-of-type(2) { opacity:0; width:100%;}
.menu-trigger.active span:nth-of-type(3) { -webkit-transform:translateY(-18px) rotate(45deg); transform:translateY(-18px) rotate(45deg); width:100%; background-color: #F39700;}

.menu-trigger p{ position:absolute; left:25px; font-weight:bold;}

/* ハンバーガーメニュー内容 折り畳まれ部分 */
#navigation{position:relative;display:none;width:100%;height:100vh;padding: 60px 0 0;background-color: #fff;position:absolute;top:0;left:0;z-index:3;overflow-y:scroll;}
#navigation::-webkit-scrollbar {display:none;}
#navigation .navigation_inner{display: table;width:100%;height: 100%;overflow: scroll;}
#navigation .navigation_inner .navigation_menu{display:flex;flex-wrap:wrap;justify-content:space-between;}

#navigation .navigation_inner .navigation_menu li{width:100%; border-top:1px solid #ddd;}
#navigation .navigation_inner .navigation_menu li:last-child{border-bottom:1px solid #ddd;}
#navigation .navigation_inner .navigation_menu li a{padding: 3% 5%;font-size: 20px;line-height:1.25;display:block;}
#navigation .navigation_inner .navigation_menu li a.contact{background-color: #F39700; color:#fff;}


.main_img{
	width:98%;
	margin:112px auto 12px;
	display:flex;
	justify-content:space-between;
	align-items:center;
	flex-wrap:wrap;
}
.main_img_left{
	width:36%;
	max-width:512px;
	margin:auto;
	text-align:center;
}
.main_img_left img.logo{
	width:80%;
	margin:0 auto 5%;
}
.main_img_right{
	width:56%;
	position:relative;
}
.slide_img{
	width:100%;
	height:calc( 100vh - 2vw - 108px )!important;
}
.slide_img1{
	background: url("../img/main.jpg") center no-repeat;
	background-size:cover;
}
.slide_img2{
	background: url("../img/main2.jpg") center no-repeat;
	background-size:cover;
}
.slide_img3{
	background: url("../img/main3.jpg") center no-repeat;
	background-size:cover;
}
.slide_img4{
	background: url("../img/main4.jpg") center no-repeat;
	background-size:cover;
}
.koku{
	width:320px;
	padding:24px 20px;
	position:absolute;
	bottom:-12px;
	right:-12px;
	border:solid 12px #FFFCF6;
	border-radius:16px;
	background:#004530;
    box-sizing: border-box;
}
.koku p{
	font-size:14px;
	color:#fff;
	text-align:center;
    font-family: "Noto serif JP", sans-serif;
}
.koku strong{
	color:#fff;
	text-align:center;
    font-family: "Noto serif JP", sans-serif;
}
.koku_header{
	margin-bottom:4px;
	font-size:18px;
}
.koku_img{
	margin-bottom:8px;
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
    align-items: center;
}
.koku_img img{
	width:100px;
	margin-right:12px;
}
.koku_img p{
	font-size:16px;
}
.koku_img p strong{
	font-size:22px;
}
.koku_copy{
	margin-bottom:8px;
	display: block;
	font-size:17px;
	line-height:1.5;
}

.news_contents {
	display:flex;
	justify-content:space-between;
	align-items:flex-start;
	flex-wrap:wrap;
}
.news{
	background:#FFFAEF;
}
.news_box{
	width:60%;
}
.news_list{
	display:flex;
	justify-content:space-between;
	align-items:flex-start;
	flex-wrap:wrap;
}
.news_list article{
	width:48%;
}
.news_list article img{
    height: 200px;
    object-fit: cover;
	margin-bottom:4px;
	border-radius:8px;
}
.news_list article p {
    line-height:1.4;
}
.news_list article p a{
	font-size: 15px;
	line-height: 1.7;
	letter-spacing: 0.15em;
}
.news_list article a.date{
	font-size:17px;
	font-weight:bold;
	color:#007900;
}
.news_list article a.category{
	margin-left: 4px;
	margin-bottom: 5px;
	padding: 1px 8px;
	font-size:14px;
	font-weight:bold;
	display: inline-block;
	color:#007900;
	border:solid #007900 1px;
	border-radius:16px;
	line-height: 1.5;
}
.news_list article a.category:hover{
	color:#fff;
	background:#007900;
}
.bnr_area{
	width:36%;
}
.bnr_area a{
	margin-bottom:16px;
	display:block;
}
.bnr_area a:hover{
	opacity:.5;
}
.bnr_area img{
	border-radius:8px;
}

.pickup_contents{
	text-align:center;
}
.card_grid{
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
}
.card_grid a:hover{
	opacity:.64;
}
.card1{
	width: 32.3333%;
	margin-bottom:1.3333%;
	border-radius:8px;
	overflow:hidden;
}
.card1.soudan{
	background:url("../img/soudan.jpg") no-repeat center;
	background-size:cover;
}
.card1.taiken{
	background:url("../img/taiken.jpg") no-repeat center;
	background-size:cover;
}
.card1.beauty{
	background:url("../img/beauty.jpg") no-repeat center;
	background-size:cover;
}
.link_card{
	padding:100px 0 88px;
    display: block;
	background:#0002;
}
.link_card:hover{
	background:#0006;
}
.link_card p{
	font-size:28px;
	font-weight:bold;
    font-family: "Noto serif JP", sans-serif;
	letter-spacing:.6em;
	text-indent:.6em;
	color:#fff;
	text-shadow:0 0 12px #0001;
}
.link_card2{
    background: #F39800cc;
    display: flex;
    align-items: center;
    justify-content: center;
}
.link_card2 a{
	width:100%;
    height: 60px;
	color:#fff;
	font-size: 16px;
	line-height:1.25;
	text-shadow:0 0 12px #0001;
    display: flex;
	flex-wrap: wrap;
    align-items: center;
    justify-content: center;
}
.link_card2.links a{
	width:50%;
	position:relative;
}
.link_card2.links a:first-child:after{
	content:"";
	width:1px;
	height:60%;
	position:absolute;
	top:20%;
	left:calc( 100% - 0.5px );
	background: #fff;
}
.link_card2 a span{
	color:#fff;
	font-size:14px;
    display: contents;
}

.card2{
	width: 24%;
	border-radius:8px;
	overflow:hidden;
}
.card2.food{
	background:url("../img/food.jpg") no-repeat center;
	background-size:cover;
}
.card2.shopping{
	background:url("../img/shopping.jpg") no-repeat center;
	background-size:cover;
}
.card2.rental{
	background:url("../img/rental.jpg") no-repeat center;
	background-size:cover;
}
.card2.learn{
	background:url("../img/learn.jpg") no-repeat center;
	background-size:cover;
}

.card3{
	width:49%;
	margin-bottom:1.6666%;
    padding: 3.2% 0px 1.2%;
	border-radius:8px;
	overflow:hidden;
	background:#fffaef;
}
.factory_grid .card2,
.factory_grid .card1{
    margin-bottom: 1.6666%;
	background: #fffaef;
}

.link_card3{
	padding:0% 2%;
	display:flex;
	justify-content:space-between;
	align-items:stretch;
	flex-wrap:wrap;
}
.link_card3 a{
	width:49%;
}
.link_card3 a img{
	border-radius:4px;
	overflow:hidden;
}
.kaisei_kusuki_logo{
    margin-bottom:16px;
}
.kaisei_kusuki_logo img{
    max-width: 70%;
    max-height: 132px;
}
.link_card3 .factory{
	padding:2%;
}
.factory{
	padding:4%;
}
.factory p{
	font-size:14px;
}
.factory img{
	width:auto;
	height:auto;
	max-width: 70%;
	max-height:132px;
	margin-bottom:12px;
}
.factory img.img_85{
    max-width: 85%;
}
.map{
	background:#fff;
    margin: 0 auto 10%;
}
.map_contents{
	text-align:center;
}
.map_placeholder img{
	border-radius:16px;
}
.map_notes{
	margin-top:2%;
    padding: 1% 2%;
	background:#f5f5f5;
	text-align:left;
	border-radius:16px;
}
.map_shop_box{
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
}
.map_shop_box .shop_box{
	width:49%;
	margin-top:2%;
    padding: 2.5% 4%;
	border-radius:16px;
    box-sizing: border-box;
}
.map_shop_box .shop_box1{
	background:#4aa03e22;
	border:solid 2px #4aa03e;
}
.map_shop_box .shop_box2{
	background:#ff8bcd22;
	border:solid 2px #ff8bcd;
}
.map_shop_box .shop_box p{
	font-size:120%;
	font-weight:bold;
    text-align: left;
    letter-spacing: 0.1333em;
}
.map_shop_box .shop_box1 p span{
	color:#4aa03e;
}
.map_shop_box .shop_box2 p span{
	color:#ff8bcd;
}

footer{
	padding:20px 3%;
	text-align:center;
	background:#004530;
	position:relative;
}
footer:before{
	content:"";
	width:100%;
	height:200px;
	display:block;
	background:url("../img/ft_bg.png") bottom no-repeat;
	background-size:contain;
	position:absolute;
	top:-200px;
	left:0;
}
footer p{
	color:#fff;
}




.page_img{
    height:32vw;
	max-height:520px;
	min-height:360px;
	margin-top:80px;
	padding:7.2vw 0 12vw;
	box-sizing:border-box;
	display:flex;
	justify-content:center;
	align-items:center;
}
.about_bg{
    height:20vw;
	min-height:300px;
	padding:7.2vw 0;
	background:url("../img/page/bg_about.jpg") center;
	background-size:cover;
}
.outline_bg{
	background:url("../img/page/bg_outline.jpg") center;
	background-size:cover;
}
.kusuki_bg{
	background:url("../img/page/bg_kusuki.jpg") center;
	background-size:cover;
}
.reibidou_bg{
	background:url("../img/page/bg_reibidou.jpg") center;
	background-size:cover;
}
.plaza_bg{
	background:url("../img/page/bg_plaza.jpg") center;
	background-size:cover;
}
.terakoya_bg{
	background:url("../img/page/bg_terakoya.jpg") center;
	background-size:cover;
}
.restaurant_bg{
	background:url("../img/page/bg_restaurant.jpg") center;
	background-size:cover;
}
.sanpodou_bg{
	background:url("../img/page/bg_sanpodou.jpg") center;
	background-size:cover;
}
.news_bg{
	background:url("../img/page/bg_kusuki.jpg") center;
	background-size:cover;
}
.page_img h3{
	margin:0 auto;
	color:#fff;
    text-shadow: 0px 0px 6px #0005;
}
.page_img h3 span{
	color:#fff;
}
.page_img h3 span:before,
.page_img h3 span:after{
    background: #fff;
}

.page_contents{
	width:90%;
	margin:0 auto 10%;
	padding:4%;
	background:#fff;
	position:relative;
	top:-112px;
	border-radius:16px;
}

.about_contents{
	padding:80px 0 240px;
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
	align-items:center;
}
.about_contents img{
	width:47.5%;
}

.kusuki_contents_box{
	margin-top:4%;
}
.kusuki_contents_box:first-child{
	margin-top:0;
}
.kusuki_contents_img{
	margin-top:24px;
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
}
.kusuki_contents_img img{
	width:48.75%;
	margin-bottom:2%;
	border-radius:8px;
}
.kusuki_tag {
	display:flex;
	flex-wrap:wrap;
}
.kusuki_contents_box .kusuki_tag p{
	padding:6px 10px;
    margin: 0 8px 8px 0;
	font-size:14px;
	color:#004530;
	border:solid 1px #004530;
	border-radius:20px;
	display:inline-block;
	line-height:1;
}
.kusuki_contents_box p{
	margin-top:12px;
	font-size:14px;
}
.detail{
	display:flex;
	flex-wrap:wrap;
	align-items:flex-start;
	padding: 0 2% 2%;
	margin-top: 2%;
	border-radius:8px;
	background:#F3F3F3;
}
.detail_contents{
	margin-top: 2%;
	margin-right:24px;
	display:flex;
	flex-wrap:wrap;
	align-items:flex-start;
}
.detail_contents p{
	margin:0;
	display:inline-block;
    font-size: 15px;
    line-height: 1.6;
}
.detail_contents p.detail_head{
	min-width:72px;
	padding:6px 10px;
	margin-right:8px;
	font-size:14px;
	text-align:center;
	color:#fff;
	background:#333;
	line-height:1;
	border-radius:2px;
}

.taiken_contents{
	margin-top:3%;
	border-top:solid 2px #004530;
}
.taiken_area:last-child{
	padding:0;
	border:none;
}
.taiken_area{
	margin:1.6% auto 0;
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
	padding-bottom:2%;
	border-bottom:solid 2px #004530;
}
.taiken_box{
	width:48.75%;
	margin-bottom:2.5%;
}
.taiken_box img{
	border-radius:8px;
}
.taiken_box p{
	margin-top: 1%;
	font-size:15px;
}
.taiken_tag{
	padding:4px 10px;
	margin:1.6% auto 0;
	color:#fff;
	text-align:center;
	background:#007900;
	border-radius:20px;
	box-sizing:border-box;
	display:inline-block;
}
.taiken_box p.taiken_ttl{
	margin-top:3%;
	font-size:18px;
	font-weight:bold;
    line-height: 1.2;
}
.soudan_box p{
	margin-top:8px;
}

.rentalroom{
	margin-top:4%;
}
.rentalroom_box{
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
	align-items:start;
}
.rentalroom_box img{
	width:48.75%;
	border-radius:8px;
}
.rentalroom_txt{
	width:48.75%;
}
.rentalroom_txt p.rentalroom_head{
	margin-top:3%;
	font-size:20px;
	font-weight:bold;
	color:#F39800;
    line-height: 1.2;
}
.rentalroom_txt p strong{
	font-size:120%;
	font-weight:bold;
	color:#007900;
}

.restaurant_contents h5.restaurant_contents_head{
	margin:0;
	line-height:1.6;
	color:#007900; 
}

.link_btn{
	width:360px;
	max-width:100%;
	padding:16px;
	margin:3% auto 0;
	color:#fff;
	text-align:center;
	background:#007900;
	border-radius:8px;
	box-sizing:border-box;
	display:block;
}
.link_btn:hover{
	background:#007900bb;
}

.yakuboku_list{
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
	align-items:start;
}
.yakuboku_list .yakuboku_box{
	width:23.75%;
	margin-top: 12px;
}
.yakuboku_list .yakuboku_box img{
    height: 160px;
    object-fit: cover;
}
.yakuboku_list_no{
    border: 1px solid #007900;
    margin: 4% auto 0;
    padding: 8px 5px;
    line-height: 100%;
    width: 90px;
    font-size: 13px;
    text-align: center;
    color: #007900;
}
p.yakuboku_list_name{
    margin:4% 0 0;
    font-family: "Noto serif JP", sans-serif;
    text-align: center;
    font-size:130%;
    line-height: 0.9;
}
p.yakuboku_list_name .yakuboku_kana {
    font-family: "Noto serif JP", sans-serif;
    font-size: 14px;
    font-weight: normal;
}


.yakuboku_memo{
	padding:2% 3%;
	background:#f5f5f5;
    border-radius: 8px;
}
.yakuboku_memo p{
    margin-top: 0px;
}
.yakuboku_no{
    border:2px solid #007900;
    margin: 0 auto;
    padding: 15px;
    line-height: 100%;
    width: 100px;
    text-align: center;
	color:#007900;
}
p.yakuboku_name{
    margin:2% 0;
    font-family: "Noto serif JP", sans-serif;
    text-align: center;
    font-size: 250%;
    line-height: 1.3;
}
p.yakuboku_name .yakuboku_kana {
    font-family: "Noto serif JP", sans-serif;
    font-size: 15px;
    font-weight: normal;
}
.yakuboku_contents img,
.news_contents img{
	margin-bottom:4%;
    border-radius: 8px;
}
.yakuboku_contents table{
	margin-bottom:4%;
}
.news_thumb{
	width:100%;
}
.news_info{
    margin-bottom:12px;
	display:flex;
	flex-wrap:wrap;
	align-items:baseline;
}
.news_info a.date{
    font-size: 17px;
    font-weight: bold;
    color: #007900;
}
.news_info a.category {
    margin-left: 4px;
    margin-bottom: 4px;
    padding: 2px 8px;
    font-size: 14px;
    font-weight: bold;
    display: inline-block;
    color: #007900;
    border: solid #007900 1px;
    border-radius: 16px;
    line-height: 1.5;
}
.news_contents p{
    width: 100%;
	margin-bottom:4%;
}

.category_list{
	display:flex;
	justify-content:center;
	flex-wrap:wrap;
	align-items:start;
}
.category_list a{
    margin-left: 4px;
    margin-bottom: 4px;
    padding: 2px 6px;
    font-size: 14px;
    display: inline-block;
    color: #007900;
    border: solid #007900 1px;
    border-radius: 16px;
    line-height: 1.5;
}
.category_list a:hover{
	color:#fff;
	background:#007900;
}

.archive_list{
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
	align-items:start;
}

.archive_list article{
	width: 32%;
	margin: 12px 0 0;
}
.archive_list article .archive_img{
	width:100%;
}
.archive_list article img{
	margin-bottom:4px;
	width:100%;
	height: 200px;
	object-fit: cover;
}
.archive_list article p {
    line-height:1.4;
}
.archive_list article p a{
	font-size: 14px;
	line-height: 1.7;
	letter-spacing: 0.15em;
}
.archive_list article a.date{
	font-size:17px;
	font-weight:bold;
	color:#007900;
}
.archive_list article a.category{
	margin-left: 4px;
	margin-bottom: 4px;
	padding: 2px 6px;
	font-size: 12px;
	display: inline-block;
	color:#007900;
	border:solid #007900 1px;
	border-radius: 16px;
	line-height: 1.5;
}
.archive_list article a.category:hover{
	color:#fff;
	background:#007900;
}

/* ページネーション全体のスタイル */
.pagination {
    text-align: center;
    margin: 28px 0 0;
}

.pagination .nav-links {
    display: inline-flex;
    gap: 5px;
    flex-wrap: wrap;
}

/* 各ページ番号・リンクのスタイル */
.pagination .page-numbers {
    display: inline-block;
    padding: 8px 15px;
    border: 1px solid #ddd;
    text-decoration: none;
    color: #333;
    border-radius: 40px;
    line-height: 1.5;
}
/* ホバー時のスタイル */
.pagination a.page-numbers:hover {
    background-color: #f5f5f5;
}
/* 現在のページ */
.pagination .page-numbers.current {
    background-color: #007900;
    color: #fff;
    border-color: #007900;
}

@media screen and (max-width: 1280px) {
	header h1 img{
        width: 144px;
	}
	header .head_logo img{
		width:120px;
	}
	.head_inner{
		width:100%;
	}
	header .gmenu_wrap nav ul{
    	gap: 1.125em;
	}
	header .gmenu_wrap nav ul li a{
		font-size: 14px;
    	letter-spacing: .1em;
	}
}

@media screen and (max-width: 1024px) {
	.tab{display:block;}
}
@media screen and (max-width: 960px) {
	.head_inner{
		width:88%;
		margin-left:2%;
	}
	.gnav_sp{display: block;}
	header .gmenu_wrap{display:none;}
	
	.card2{
		width:49%;
		margin-bottom:2vw;
	}
	.pagination .page-numbers {
        font-size: 14px;
        padding: 7px 13px;
	}
}


@media screen and (max-width: 640px) {
	.pc{display:none;}
	.sp{display:block;}
	body{
		font-size:3.5vw;
	}
	h2{
        padding: 0 0 0 2.8%;
        margin-bottom: 4vw;
        font-size: 5.6vw;
   		border-radius: 3vw 0 3vw 0;
	}
	h2:before{
        width: 13vw;
        height: 13vw;
		margin-right:8px;
	}
	h3{
		font-size:6.8vw;
	}
	h3 span{
		font-size:3.5vw;
	}
	h3 span:before,h3 span:after{
		width:6vw;
	}
	h4{
		font-size:4.4vw;
	}
	h5{
    	margin-top:4vw;
        font-size: 3.8vw;
		line-height:1.5;
	}
	p{
		font-size:3.4vw;
	}
	header .head_logo img{
		width:28vw;
	}
	.head_inner{
		width:80%;
	}
	#navigation .navigation_inner .navigation_menu li a{
		padding: 5% 5%;
		font-size:3.8vw;
		line-height:1.25;
		display:block;
	}
	
	.section_container{
		padding:8vh 0;
	}
	
	footer{
    	padding:4vw 3%;
	}
	footer:before{
        height: 18vw;
        top: -18vw;
        background-size: 175%;
	}
	
	.main_img{
    	margin: 112px auto 8vw;
	}
	.main_img_left{
		width:90%;
	}
	.main_img_left img.logo{
		width:56%;
	}
	.main_img_right{
		width:90%;
        margin:3.2vh auto 0;
	}
	.slide_img{
		height:64vw!important;
	}
	.koku{
		width:100%;
		margin:4vw auto 0;
    	padding: 3vw 4vw;
		position:relative;
		bottom: 0;
		right: 0;
		border:none;
	}
	.koku p{
		font-size:3.1vw;
	}
	.koku_img{
		align-items:center;
	}
	.koku_img img{
		width:20vw;
	}
	.koku_img p{
		font-size:3.8vw;
        line-height: 1.5;
	}
	.koku_img p strong{
		font-size:4.8vw;
	}
	.koku_copy{
		font-size:3.8vw;
	}
	.koku_copy br{
		display:none;
	}
	
	
	.news_box{
		width:100%;
	}
	.news_list article a.date{
		font-size:3.1vw;
	}
	.news_list article a.category{
        margin-left: 3px;
        margin-bottom: 3px;
        padding: 1px 6px;
        font-size: 2.8vw;
	}
	.news_list article img{
        height: 33vw;
        border-radius: 1.2vw;
	}
	.news_list article p a{
		font-size:3.25vw;
	}
	.btn{
		width:100%;
        margin: 3.2vw auto 0;
		padding:3.2vw;
		box-sizing:border-box;
    	font-size: 3.2vw;
	}
	.bnr_area{
		width:100%;
	}
	.bnr_area{
		width:100%;
        margin: 4vh auto 0;
		display:flex;
		flex-wrap:wrap;
		justify-content:space-between;
		align-items:flex-start;
	}
	.bnr_area a{
		width:48.75%;
        margin: 0;
	}
	.bnr_area img{
		border-radius:4px;
	}
	
	.link_card{
		padding:10vw 0 6vw;
	}
	.link_card p{
		font-size:6vw;
	}
	.card1{
		width:100%;
	}
	.link_card2 a{
    	height: 12vw;
		font-size:3.5vw;
	}
	.link_card2 a span{
		font-size:3vw;
	}
	.card3{
		width:100%;
        padding: 5vw 0 1vw;
	}
	.kaisei_kusuki_logo{
    	margin-bottom: 3.2vw;
	}
	.factory_grid .card2, .factory_grid .card1{
		width:48.75%;
		margin-bottom:2vw;
		display:flex;
		flex-wrap:wrap;
		justify-content:space-between;
		align-items:flex-start;
	}
	.factory p{
        font-size: 3.05vw;
        letter-spacing: .05em;
        line-height: 1.75;
	}
	.factory img{
		max-width:80%;
		max-height: 25vw;
		margin-bottom:3vw;
	}
	.factory img.img_85{
		max-width:90%;
	}
	.map_placeholder img{
		border-radius:8px;
	}
	.map_notes{
		padding:2.4vw 3vw;
		border-radius:8px;
	}
	.map_shop_box .shop_box{
		width:100%;
		margin-top:2vw;
		padding:2.4vw 3vw;
		border-radius:8px;
	}
	.map_shop_box .shop_box p{
		font-size:3.7vw;
		letter-spacing: 0.11em;
	}
	
	
	.page_img{
        height: 56vw;
        max-height: none;
        min-height: auto;
		margin-top: 72px;
		padding: 3.2vw 0 13vw;
	}
	.page_contents{
		padding:5vw;
		top: -14vw;
	}
	.kusuki_contents_box{
		margin-top:8vw;
	}
	.kusuki_contents_img{
		margin-top:3vw;
	}
	.kusuki_contents_img img{
        margin-bottom: 2vw;
	}
	.kusuki_contents_box p{
		margin-top:2vw;
    	font-size: 3.2vw;
	}
	.kusuki_contents_box .kusuki_tag p{
        margin: 0 1.2vw 1.2vw 0;
        padding: 1.5vw 2vw;
    	font-size: 3.2vw;
	}
	.kusuki_tag p{
    	margin-right: 2vw;
        padding: 1.5vw 2vw;
	}

	.about_contents{
		padding:6vh 0 17.2vh;
		justify-content:center;
        flex-direction: column-reverse;
	}
	.about_contents img{
		width:100%;
	}
	.about_contents img:nth-child(2){
		width:68%;
		margin-bottom:4vh;
	}
	
	
	.detail{
		padding:4vw;
    	margin-top:4vw;
	}
	.detail_contents{
		margin:2vw 0 0;
    	align-items: center;
	}
	.detail_contents p.detail_head{
	    min-width: auto;
		font-size:3.3vw;
	}
	.detail_contents p {
		margin: 0;
		font-size:3.45vw;
        word-break: break-all;
	}
	
	.taiken_contents{
		margin-top:8vw;
	}
	.taiken_tag{
    	margin:2.4vh auto 0;
        padding: 1.2vw 2vw;
	}
	.taiken_area{
		margin-top:2vh;
    	padding-bottom:3.2vh;
    	border-bottom: solid 1px #004530;
	}
	.taiken_box{
		width:100%;
		margin:0 0 4vw;
	}
	.taiken_box p.taiken_ttl{
	    margin-top:3vw;
		font-size:4.24vw;
        line-height: 1.5;
	}
	.taiken_box p{
	    margin-top:2vw;
		font-size:3.3vw;
	}
	.taiken_box:last-child{
		margin:0;
	}
	
	.soudan_box p{
		margin-top:2.4vw;
	}
	
	.rentalroom{
		margin-top:6.4vw;
	}
	.rentalroom_box{
		margin-bottom:2.4vw;
	}
	.rentalroom_box img{
		width:100%;
	}
	.rentalroom_txt{
		width:100%;
	}
	.rentalroom_txt p.rentalroom_head{
		margin-top:4vw;
		font-size:4.5vw;
	}
	.rentalroom_txt p strong{
		font-size:3.8vw;
	}
	
	.link_btn{
		width:100%;
    	margin:5vw auto 0;
		padding:3.2vw;
	}
	
	table.fee{
		margin-top:3vw;
	}
	table th , 
	table td{
        padding: 4vw 1vw;
	}
	table th {
        line-height: 1.5;
        font-size: 3.4vw;
        border-bottom: 1px solid #007900;
	}
	table th br{
		display:none;
	}
	table td {
		font-size:3.45vw;
		border-bottom: 1px solid #00790033;
	}
	table tr:first-child th{
		border-top: 1px solid #007900;
	}
	table tr:first-child td{
		border-top: 1px solid #00790033;
	}
	
	.outline_contents table tr{
		display:flex;
	}
	.outline_contents table th {
		width:28%;
		padding:5vw 1vw 4vw; 
	}
	.outline_contents table td {
		width:72%;
	}
	
	.yakuboku_memo{
		padding: 5%;
	}
	.yakuboku_memo p{
        font-size: 3.2vw;
	}
	.yakuboku_no{
    	padding: 3vw;
	}
	p.yakuboku_name{
    	margin:4.4vw auto 2.4vw;
        font-size: 6vw;
        line-height: 1.1;
	}
	p.yakuboku_name .yakuboku_kana{
		font-size:3.2vw;
	}
	.yakuboku_contents table{
		margin-bottom:3vh;
	}
	.yakuboku_contents img,
	.news_contents img{
		margin-bottom:5vw;
	}
	.news_info{
		margin-bottom:1vh;
	}
	.news_info a.date{
		font-size: 3.1vw;
	}
	.news_info a.category {
		margin-left: 3px;
		margin-bottom: 3px;
		padding: 1px 6px;
		font-size: 3.1vw;
	}
	
    .category_list a {
        margin-left: 3px;
        margin-bottom: 3px;
        padding: 1px 6px;
        font-size: 3vw;
    }
	.archive_list article{
		width:48.75%;
	}
	.archive_list article img{
		height:33vw;
	}
	.archive_list article a.category{
		margin-left: 3px;
		margin-bottom: 3px;
		padding: 1px 6px;
		font-size:3vw;
	}
	.archive_list article a.date{
		font-size:3.2vw;
	}
	.archive_list article p a{
		font-size:3.2vw;
        letter-spacing: 0.1em;
	}
	
	
	.pagination .page-numbers {
        font-size: 3.2vw;
        padding: 1.2vw 2.56vw;
	}
}