/*
Theme Name: KIRARA_NAVI_THEME
Author: kirara_navi_design_works
Description: original tamplate 2025/05/12
Version: 0.9
*/

/*
追加CSS ・ カスタマイズCSSはここより下に記載
※/CSS/style.cssファイルは編集不可
*/
@import url(http://fonts.googleapis.com/earlyaccess/notosansjp.css);
body {
	position:relative;
	font-family: 'Noto Sans JP', sans-serif;
	font-size:17.5px;
	font-weight:normal;
	background:#f4f0e2;
	}
.sp{
	display:block;
}
.pc{
	display:none;
}

.w100p{
	width:100%;
}
.content{
	width:100%;
}
.wrap-content{
	    width: 95%;
        max-width: 1100px;
        margin: 25px auto 0 auto;
	    padding: 0 0 25px 0;
        border-radius: 10px;
        border: 1px solid #dad6c4;
        background: #fff;
        box-sizing: border-box;
}
@media screen and (min-width:1000px){
	.wrap-content{
	    width: 100%;
        margin: 60px auto 0 auto;
	    padding: 25px 0 15px 0;
}
}


.content-width, section:not(.full), aside:not(.full) {
        padding-top: 1px;
        padding-left: 6px;
        padding-right: 6px;
}
.header_menu_item{
	cursor:pointer;
}
.box-arrow::before {
	position:absolute;
	content:"";
  display: inline-block;
  width: 14px;
  height: 14.1px;
  background: #e2691b;
  clip-path: polygon(0 35.9%, 55.8% 35.9%, 55.8% 0, 100% 50%, 55.8% 100%, 55.8% 64.1%, 0 64.1%);
}
.box-arrow{
	display:flex;
	align-items:center;
	height:14px;
	padding:18px 15px 18px 10px;
	border-left:1px solid #ccc;
}
.dot{
	position:relative;
	display:inline-block;
	width:auto;
}
.dot:before{
	position:absolute;
	left:-16px;
	content:"・";
	color:#e2691b;
}

p{
	max-width:850px;
}

/* -------------------------------------------------------- 300px */
@media screen and (min-width: 300px) {
	html,
	body{
		margin:0!important;
		padding:0!important;
	}
	main{
		margin:0;
	}
	section{
		width:90%;
		margin:25px 5% 0 5%;
	}
	.section-full{
		width:100%;
		margin:0;
		padding:0!important;
	}
	.header_title {
    max-width: 50%;
    top: 25px;
    left: 0;
    }
	.header_title_link{
	width:100%;
    }
	.box-header-icon{
		display:none;
	}
	
	
	
/* modal */
body {
  font-family: Arial, sans-serif;
  margin: 0;
  padding: 0;
  background-color: #fff;
}

/* ハンバーガーメニューのスタイル */
.hamburger {
  position: fixed;
  top: 20px;
  right: 20px;
  width: 30px;
  cursor: pointer;
  z-index: 10000; /* メニューより前に表示 */
}

.hamburger span {
  display: block;
  height: 3px;
  width: 100%;
  background-color: #333; /* ボタンの色 */
  margin: 5px 0;
  transition: 0.4s;
}

/* メニューのスタイル */
.menu {
  position: fixed;
  top: 70px;
  right: 0;
  width: 100%;
  height: 100%;
  background-color: #f5e3a2;
  opacity: 0; /* 初期状態は透明 */
  pointer-events: none; /* クリック不可 */
  transition: opacity 0.5s ease; /* フェードインのアニメーション */
  padding: 0px;
  box-sizing: border-box;
  z-index: 1000;
}

/* メニューが開いたとき */
.menu.open {
  opacity: 1; /* 不透明にする */
  pointer-events: auto; /* クリック可能にする */
}

/* バツ印に変わるハンバーガーボタン */
.hamburger.active span:nth-child(1) {
  transform: rotate(45deg) translate(5px, 5px);
}

.hamburger.active span:nth-child(2) {
  opacity: 0; /* 真ん中の線を透明にする */
	background:#fff;
}

.hamburger.active span:nth-child(3) {
  transform: rotate(-45deg) translate(6px, -6px);
}
.hamburger::before{
display:none;	
}
	.spmenu{
		width:100%;
		height:102.5%;
		overflow:scroll;
	}
	.spmenu-box{
		width:100%;
		height:calc(100% - 80px);
		margin:0;
		overflow:auto;
	}
	.spmenu-box-contents{
		width:92%;
		margin:20px 4% 15px 4%;
		padding:20px 26px 30px 26px;
		border-radius:8px;
		border:1px solid #eee;
		background:#fff;
		box-sizing:border-box;
	}
	.spmenu-box-contents-li-top{
		position:relative;
		display:block;
		width:100%;
		border-bottom:1px solid #999;
		font-size:17px;
		font-weight:bold;
		line-height:1.25;
	}
	.spmenu-box-contents-li-top a{
		display:flex;
		width:100%;
		padding:4px 10px;
		align-items:center;
		justify-content:space-between;
		box-sizing:border-box;
	}
	.spmenu-box-contents-li{
		position:relative;
		display:block;
		width:100%;
		margin:0 0 0 0;
		padding:0 0 0 5%;
		border-bottom:1px solid #999;
		font-size:16.5px;
		font-weight:bold;
		line-height:1.25;
	}
		.spmenu-box-contents-li a{
		display:flex;
		width:100%;
		padding:3px 10px;
		align-items:center;
		justify-content:space-between;
		box-sizing:border-box;
	}
	.spmenu-box-contents-li-child{
		position:relative;
		display:block;
		width:100%;
		margin:0 0 0 0;
		padding:0 0 0 10%;
		border-bottom:1px solid #999;
		font-size:16px;
		font-weight:bold;
		line-height:1.25;
	}
	.spmenu-box-contents-li-child a{
		display:flex;
		width:100%;
		margin:0 0 0 0;
		padding:3px 10px;
		align-items:center;
		justify-content:space-between;
		box-sizing:border-box;
	}
.header_title {
top:25px;
width: 75%;
max-width:100%!important;
}
	.sustainability_btns_link.btnBox_link{
		z-index:100;
	}
	
	
	
	
	
	
	
	
	
	
		.box-hcontent{
		position:relative;
		width:100%;
		height:410px;
		border-bottom:3px solid #c2ba9d;
		background:#eee;
	}
	.box-hcontent-img{
		width:100%;
		max-width:100%!important;
		height:405px;
	}
	.box-hcontent-img img{
		width:100%;
		height:470px;
		object-fit:cover;
		object-position: 50% 50%;
	}
	.box-hcontent-p{
		position:absolute;
		z-index:10;
		bottom:114px;
		left:0px;
		padding:0 0 0 10px;
		border-left:45px solid #059856;
		font-size:23px;
		font-weight:bold;
		line-height:1.0;
	}
	.box-hcontent-h{
		position:absolute;
		bottom:-3px;
		left:0;
		width:96%;
		height:172px;
		padding:70px 5px 0 20px;
		border:3px solid #c2ba9d;
		border-bottom:none;
		border-left:none;
		border-radius:0 50px 0 0;
		background:#f4f0e2;
		box-sizing:border-box;
		font-size:30.5px;
	}
	.box-hcontent-h-span{
		display:block;
		width:auto;
		height:auto;
		padding-top:10px;
		border-top:2px solid;
		border-image: linear-gradient(to right, rgba(5, 152, 86, 1) 0%, rgba(5, 152, 86, 1) 60%, rgba(90, 232, 44, 1) 100%);
  border-image-slice: 1;
		line-height:1.25;
	}

	.header_container-btn{
		display:block;
	}
	.contents-button-four{
		display:flex;
		flex-wrap:wrap;
		width:100%;
		margin:60px 0 0 0;
		padding:20px 10px 5px 10px;
		border:1px solid #aaa;
		border-radius:8px;
		box-sizing:border-box;
	}
	.contents-button-four-one{
		width:88%;
		margin:0 6% 15px 6%;
		border:1px solid #aaa;
		border-radius:0 0 10px 10px;
		box-sizing:border-box;
　　}
	.contents-button-four-one-text{
		width:100%;
		margin:12px 0 10px 0;
		text-align:center;
		font-size:17px;
		font-weight:bold;
	}
	.contents-box-greeting{
		display:flex;
		flex-wrap:wrap;
		justify-content:space-between;
		width:100%;
	}
	.contents-box-greeting-text{
		order:2;
		width:100%;
	}
	.contents-box-greeting-img{
		order:1;
		width:86%;
		margin:0 7% 0 7%;
	}
	.contents-box-greeting-ceo{
		width:100%;
		margin:15px 0 15px 0;
		font-size:19px;
		text-align:center;
	}
	.wrap-table-company{
	width:100%;
	}
	.box-table-company{
		width:100%;
		border-top:1px solid #aaa;
	}
	.box-table-company-th{
		display:block;
		padding:10px 20px 10px 20px;
		border:1px solid #aaa;
		border-top:none;
		border-bottom:none;
		background:#e5edfd;
		box-sizing:border-box;
		text-align:left;
	}
	.box-table-company-td{
		display:block;
		padding:10px 20px 10px 20px;
		border:1px solid #aaa;
		box-sizing:border-box;
		text-align:left;
	}
    .path{
		width:100%;
		text-align:right;
	}
	.path-link{
	position:relative;
	display:inline-block;	
	}
	
	.path-link a{
		display:inline-block;
		border:1px solid #0250e8;
		padding:5px 10px;
		border-radius:100px;
		font-size:15px;
		font-weight:500;
	}
	.path-text{
		display:inline-block;
		padding:5px 0px 5px 20px;
		font-size:15px;
		font-weight:500;
	}
	.path-text::after{
		content:"";
		top:19px;
		left:1px;
		width:1em;
		position:absolute;
		border-bottom:2px solid #0250e8;
	}
		.contents-box-h1{
		position:relative;
		margin:40px 0 50px 0;
		color:#059856;
		font-size:30px;
		line-height:1.25;
	}
	.contents-box-h1:after{
		position:absolute;
		content:"";
		bottom:-15px;
		left:0;
		width:180px;
		border-bottom:6px solid #4db02d;
	}
	.contents-box-h1:before{
		position:absolute;
		content:"";
		bottom:-15px;
		left:180px;
		width:70px;
		border-bottom:6px solid #e26215;
	}
	.contents-box-h2{
		position:relative;
		margin:60px 0 10px 0;
		padding:0 0 0 10px;
		color:#333;
		border-left:12px solid #dd6b22;
		font-size:29px;
		line-height:1.15;
	}
	.contents-box-h3{
		margin:0 0 15px 0;
		padding:0 0 10px 0;
		color:#333;
		border-bottom:2px solid #d07235;
		font-size:22px;
		line-height:1.15;
	}
	.content-box-text{
		margin:30px 0 0 0;
	}
	.content-box-img{
	margin-bottom:30px;
	}
	.content-box-img img{
		height:240px;
		object-position:center;
	}
	.content-box-box_green{
		display:inline-block;
		width:auto;
		max-width:900px;
		margin:30px 0 0 15px;
		padding:25px 22px;
		border:4px solid #90be9d;
		border-radius:10px;
		background:#f8fcf7;
		box-sizing:border-box;
	}
	.contents-box-ph-one{
		width:100%;
		max-width:500px;
		margin:30px auto 0 auto;
	}
	.wrap-table{
		width:100%;
	}
	.box-table{
		width:100%;
	}
	.box-table-th{
		display:block;
		padding:8px 0 8px 0;
		border:1px solid #aaa;
		background:#eee;
		box-sizing:border-box;
		text-align:center;
	}
		.box-table-td{
		display:block;
		padding:12px 0 12px 0;
		border:1px solid #aaa;
		box-sizing:border-box;
		text-align:center;
	}
		.heroImg_img img{
		width: 100%;
        height: 800px;
        object-fit: cover;
        object-position: 50% 50%;
	}
.heroImg_text {
right: 0;
position: absolute;
top: 32px;
width: auto;
aspect-ratio: 28 / 7;
max-width:95vw;
height: 100%;	
}
.heroImg_content {
font-size: 28px;
font-family: fot-tsukubrdgothic-std, sans-serif;   
color:#0066ec;
font-weight: bold;
}
	
	.box-table-history{
	display:block;
	}
	.table-history{
	display:flex;
		width:100%;
		font-size:17px;
	}
	.table-history-th{
	display:block;
		width:100%;
		padding:3px 0 3px 0;
		border-bottom:1px solid #6ba87d;
		}
	.table-history-td{
	display:block;
		width:100%;
		margin:0 0 10px 0;
		padding:3px 0 3px 10px;
		border-bottom:1px solid #f1f1f1;
		box-sizing:border-box;
	}
	
	.content-header-wrap {
		position: relative;
		display: block;
		width: 100%;
		height: 340px;
		margin-top: 30px;
		background: #eee;
		border:1px solid #f00;
	}
	.content-header-h1 {
		position: absolute;
		display: inline-block;
		bottom: 0;
		left: 10px;
		width: 90%;
		height: auto;
		margin:0 5%;
		padding: 12px 16px;
		background: #555;
		color: #fff;
		font-size: var(--32px);
		line-height: 1.5;
	}
	.content-header-img {
		position: absolute;
		right: 0;
		width: 100%;
		height: 220px;
	}
	.content-header-img img {
		border-radius: 80px;
	}
	.contents{
		margin:40px 0 0 0;
	}
	.banner_img{
		width:100%;
	}
	.contents-h2{
		font-size: var(--32px);
	}
	.content-header-h2{
		font-size: var(--30px);
		line-height:1.5;
	}
	.content-header-h3{
		border-bottom:1px solid #555;
		font-size: var(--30px);
		line-height:1.5;
	}
	.box-header-icon{
		display:none;
	}
		footer{
		margin-top:75px;
		margin-bottom:112px;
		padding:55px 0 0 0!important;
		border-top:1px solid #6ba87d;
		background:#e9f2eb!important;
	}
	.copyRight{
		background:#005f34;
		color:#fff;
		font-size:24px;
		font-weight:bold;
		line-height:50px;
	}
	.footerInfo_text{
		color:#333;
	}
	.footerNavi_item_link{
		color:#274e3d;
	}
	.footerNavi_childItem_link{
		color:#103b28!important;
	}
	.footerNavi_childItem::before{
		background:#dd6b22!important;
	}
		.sub-menu{
		display:flex;
		flex-wrap:wrap;
		justify-content:space-around;
		width:90%;
		height:auto;
		margin:45px 5% 15px 5%;
		padding:13px 13px 3px 13px;
		border:3px solid #67a179;
		border-radius:4px;
		box-sizing:border-box;
	}	
	.sub-menu-box{
		position:relative;
		width:100%;
		height:48px;
		margin:0 0 10px 0;
		padding:6px 6px 6px 6px;
		border:1px solid #57986b;
		border-radius:2px;
		box-sizing:border-box;
	}
	.sub-menu-box a{
		display:block;
		width:100%;
		height:34px;
		padding:4px 0 5px 16px;
		border-radius:2px;
		box-sizing:border-box;
	}
.sub-menu-box::before{
	position:absolute;
	z-index:100;
	content:"";
	top:18px;
	right:20px;
	width: 0;
	height: 0;
	border-style: solid;
	border-top: 8px solid transparent;
	border-bottom: 8px solid transparent;
	border-left: 14px solid #fff;
	border-right: 0;
}
	.sub-menu-box::after{
		position:absolute;
		content:"";
		top:11px;
		right:15px;
		width:28px;
		height:28px;
		border-radius:100px;
		background:#7fb08e;
}
		.banner{
		width:90%;
		margin:60px auto 0 auto;
	}
		.contents-box-flex3{
		display:flex;
		flex-wrap:wrap;
		gap:25px;
		width:100%;
	}
	.contents-box-flex3-wrap{
		width:100%;
	}
	.contents-box-flex3-wrap-img{
		margin:15px 0 15px 0;
	}
	.contents-box-flex3-wrap-txt{
		font-size:16px;
	}
	.contents-box-flex3-wrap-h2{
		width:100%;
		padding:0 0 0 11px;
		border-left:8px solid #059856;
		box-sizing:border-box;
		color:#103b28;
		font-size:22px;
		line-height:1.25;
	}
		.contents-box-flex3-wrap-4{
		width:45%;
	}
		.contents-box-flex3-wrap-download{
		display:flex;
		width:140px;
		margin:10px auto 0 auto;
	}
	.contents-box-flex3-wrap-download img{
		width:40px;
	}
	.contents-box-flex3-wrap-download span{
		width:96px;
		height:40px;
		margin:0 0 0 4px;
		padding:7px 0 0 0;
		border-radius:4px;
		background:#0a5c37;
		box-sizing:border-box;
		color:#fff;
		font-size:14px;
		font-weight:bold;
		text-align:center;
	}
	.contents-box-kiki{
		display:flex;
		flex-wrap:wrap;
		justify-content:start;
		gap:15px;
		width:100%;
		margin:30px 0 0 0;
		padding:18px 11px;
		border-radius:7px;
		background:#b6d2bf;
	}
	.contents-box-kiki-box{
		width:100%;
		border:1px solid #3e8253;
		border-radius:5px;
		background:#fff;
		
	}
	.contents-box-kiki-box a{
		display:block;
		width:100%;
		padding:13px 16px 12px 16px;
		box-sizing:border-box;
	}
	.contents-box-kiki-box-img{
		margin:0 0 10px 0;
	}
	.contents-box-kiki-box-txt{
		font-weight:bold;
		line-height:1.25;
	}
		.interview{
		display:flex;
		flex-wrap:wrap;
		width:100%;
		gap:22px;
	}
	.interview-box{
		width:100%;
		padding:0 0 16px 0;
		border:2px solid #ccc;
		border-radius:5px;
	}
	.interview-box-deoartment{
		width:88%;
		margin:16px auto 10px auto;
		padding:5px 0;
		border-top:1px solid #2878ac;
		border-bottom:1px solid #2878ac;
		color:#173b52;
		font-size:18px;
		font-weight:bold;
		text-align:center;
	}
		.toppIntro_container{
		display:flex;
		width:100%;
	}
	.topIntro_text {
		width:100%;
	}	
.topIntro_img {
	position:relative;
    width: 100%;
	transform: none;
}
	.topService_paragraphs{
		margin-bottom:30px;
		color:#222;
	}
.staff{
display:block;
width:100%;
max-width:850px;
}
.staff-hero{
position:relative;
}
.staff-hero-name{
padding:18px 35px 13px 35px;
color:#fff;
font-size:28px;
font-weight:bold;
background:#0b2c15;
line-height:1.3;
}
.staff-hero-img{
height:auto;
}
.staff-box{
display:block;
width:100%;
max-width:750px;
margin:50px auto 0 auto;
}
.staff-box-img{
display:block;
margin:0 0 30px 0;
}
.staff-box-txt{
display:block;
padding:0 0 0 0;
box-sizing:border-box;
}
.staff-box-txt-q{
margin:0 0 15px 0;
font-size:21px;
font-weight:bold;
}
.staff-box-txt-a{
margin:0 0 30px 0;
}
.p-back{
width:100%;
	max-width:100%!important;
margin:40px 0 0 0;
text-align:center;
}
.p-back a{
display:inline-block;
width:240px;
padding:10px 0;
border-radius:100px;
background:#347949;
color:#fff;
font-weight:bold;
}
.p-back img{
display:inline-block;
width:40px;
margin:0 15px 0 0;
border-radius:100px;
background:#fff;
}
.gmap{
	width:100%;
max-width:780px;
height:412px;
border:1px solid #999;
box-sizing:border-box;
}
.gmap iframe{
width:100%;
height:410px;
}

	
	
	
	
	
	
	
}


/* --------------------------------------------------------------------------------------------------------------------------------------------------------- 1000px */
@media screen and (min-width: 1000px) {
	.sp{
	display:none;
}
.pc{
	display:block;
}
		section{
		width:100%;
		margin:0 auto 0 auto;
	}
	.section-full{
	width:100%;
	padding-right: calc(50dvw - 1500px)!important;
    padding-left: calc(50dvw - 1500px)!important;
	}
	.section-contents{
	   padding-right: calc(50dvw - 1500px)!important;
       padding-left: calc(50dvw - 1500px)!important;
	}
	.contents-box{
	width:100%;
	padding:30px 90px 40px 90px;
	box-sizing:border-box;
	}
	.path{
		width:100%;
		text-align:right;
	}
	.path-link{
	position:relative;
	display:inline-block;	
	}
	
	.path-link a{
		display:inline-block;
		border:1px solid #0250e8;
		padding:5px 10px;
		border-radius:100px;
		font-size:15px;
		font-weight:500;
	}
	.path-text{
		display:inline-block;
		padding:5px 0px 5px 20px;
		font-size:15px;
		font-weight:500;
	}
	.path-text::after{
		content:"";
		top:19px;
		left:1px;
		width:1em;
		position:absolute;
		border-bottom:2px solid #0250e8;
	}
	.contents-box-h1{
		margin:40px 0 60px 0;
		font-size:44px;
	}
	.contents-box-h1:after{
		bottom:-15px;
	}
	.contents-box-h1:before{
		bottom:-15px;
	}
	.contents-box-h2{
		margin:60px 0 10px 0;
		padding:0 0 0 10px;
		font-size:36px;
	}
	.contents-box-h3{
		margin:0 0 15px 0;
		padding:0 0 10px 0;
		color:#333;
		border-bottom:2px solid #d07235;
		font-size:22px;
		line-height:1.15;
	}
	.content-box-text{
		margin:30px 0 0 0;
	}
	.content-box-box_green{
		max-width:900px;
		margin:30px 0 0 15px;
		padding:25px 45px;
	}
	.contents-box-ph-one{
		width:100%;
		max-width:500px;
		margin:30px auto 0 auto;
	}
	.wrap-table{
		width:60%;
	}
	.box-table{
		width:100%;
	}
	.box-table-th{
		padding:6px 0 6px 0;
		border:1px solid #aaa;
		background:#eee;
		box-sizing:border-box;
		text-align:center;
	}
		.box-table-td{
		padding:6px 0 6px 0;
		border:1px solid #aaa;
		box-sizing:border-box;
		text-align:center;
	}
	.header{
		position:fixed;
		width:100%;
		min-width:1200px;
		background:none;
	}
	.header_title {
	top:0!important;
	left:0;
    width: 30%;
	height:100px;
	max-width:350px;
	min-width:330px;
	padding:0 25px;
	border:1px solid #bbb;
	border-top:none;
	border-left:none;
	border-radius:0 0 30px 0;
	background:#fff;
	box-sizing:border-box;
    }
	.box-header-icon{
		display:flex;
	width:100%;
	justify-content:flex-end;
	margin:5px 0 5px 0;
	}
	.box-header{
	display:flex;
	justify-content:end;
	gap:8px;
	width:auto;
	height:44px;
	text-align:right;
	}
	.header_container-btn_link-top{
	display: flex;
	flex-wrap:wrap;
	justify-content: flex-start;
	align-items: center;	
	width: 134px;
	height: 44px;
	font-weight: bold;
	aspect-ratio: 1;
	padding: 0px 10px;
	border: 5px solid;
	text-align: center;
	background-color: white;
	flex-direction: column;
	border-radius: 10px;
	gap: 0;
	color: white;
    border: 1px solid #aaa;
	}
	.header_container-btn_icon-top{
		width:28px;
		height:auto;
		margin-top:6px;
	}
	.header_container-btn_text-top{
		height:auto;
		font-size:13px;
		width:auto;
		color:#252525;
		line-height:44px;
	}
	.header_tel{
		display:inline-block;
		height:44px;
		margin-left:59px;
		border:1px solid #bbb;
		border-radius:10px;
	}
	.header_menu{
		width:790px;
		height:60px;
		border-radius:10px;
		border:1px solid #bbb;
		background:#fff;
	}
	.header_menu_list{
		gap:4%;
		justify-content:center;
	}
	.header_menu_item{
		display:flex;
		align-items:center;
		height:60px;
	}
	.header_menu_item_link{
		display:flex;
		align-items:center;
		height:60px;
	}
	.box-hcontent{
		position:relative;
		width:100%;
		height:553px;
		border-bottom:3px solid #c2ba9d;
		background:#eee;
	}
	.box-hcontent-img{
		width:100%;
		height:550px;
	}
	.box-hcontent-img img{
		width:100%;
		height:550px;
		object-fit:cover;
		object-position: 50% 50%;
	}
	.box-hcontent-p{
		bottom:110px;
		left:0px;
		padding:0 0 0 10px;
		font-size:23px;
	}
	.box-hcontent-h{
		position:absolute;
		bottom:-3px;
		left:0;
		width:596px;
		height:190px;
		padding:94px 0 0 35px;
		border:3px solid #c2ba9d;
		border-bottom:none;
		border-left:none;
		border-radius:0 50px 0 0;
		font-size:38px;
	}
	.box-hcontent-h-span{
		width:auto;
		height:5px;
		padding-top:8px;
		border-top:2px solid;
		border-image: linear-gradient(to right, rgba(5, 152, 86, 1) 0%, rgba(5, 152, 86, 1) 60%, rgba(90, 232, 44, 1) 100%);
  border-image-slice: 1;
	}
	.content-header-wrap {
		position: relative;
		display: block;
		width: 100%;
		height: 458px;
		margin-top: 30px;
		background: #eee;
	}
	.content-header-h1 {
		position: absolute;
		display: inline-block;
		top: 0;
		bottom: 0;
		left: 200px;
		width: auto;
		height: auto;
		max-height:4em;
		padding: 12px 16px;
		background: #555;
		color: #fff;
		font-size: var(--50px);
		line-height: 1.45;
		margin-block-start: 1em;
		margin-block-end: 1em;
	}
	.content-header-img {
		position: absolute;
		right: 0;
		width: 1700px;
		height: 458px;
	}
	.content-header-img img {
		border-radius: 80px;
	}
	.header_container-btn{
		display:none;
	}
	.contents-button-four{
		display:flex;
		flex-wrap:wrap;
		width:100%;
		padding:0 10px 10px 10px;
	}
	.contents-button-four-one{
		width:24%;
		margin:15px 0.5% 10px 0.5%;
		border:1px solid #aaa;
		border-radius:0 0 10px 10px;
		box-sizing:border-box;
　　}
	.contents-button-four-one-text{
		margin:15px 0 10px 0;
		font-size:17px;
	}
	.contents-box-greeting{
		width:90%;
	}
	.contents-box-greeting-text{
		order:1;
		width:55%;
	}
	.contents-box-greeting-img{
		order:2;
		width:35%;
		margin:0;
	}
	.wrap-table-company{
	width:100%;
	}
	.box-table-company{
		width:100%;
		border:none;
	}
	.box-table-company-th{
		display:table-cell;
		width:23%;
		padding:10px 20px 10px 20px;
		border:1px solid #aaa;
		background:#e5edfd;
		box-sizing:border-box;
		text-align:left;
	}
	.box-table-company-td{
		display:table-cell;
		width:77%;
		padding:10px 20px 10px 20px;
		border:1px solid #aaa;
		box-sizing:border-box;
		text-align:left;
	}
	.table-history{
	display:flex;
		width:80%;
		margin:0 0 0 25px;
		font-size:17px;
	}
	.table-history-th{
	display:inline-block;
		width:30%;
		padding:3px 0 3px 0;
		border-bottom:1px solid #6ba87d;
		}
	.table-history-td{
	display:inline-block;
		width:70%;
		margin:0 0 10px 0;
		padding:3px 0 3px 10px;
		border-bottom:1px solid #f1f1f1;
		box-sizing:border-box;
	}
.megaMenu {
	opacity: 0;
	position: absolute;
	visibility: hidden;
}
.header_menu_item:hover .megaMenu {
	opacity: 1;
	position: fixed;
	visibility: visible;
	width: 100%;
	max-width:1000px;
	height: auto;
	right: 0;
	top: 120px;
	padding:0;
}
.megaMenu_container {
	display: flex;
	width: 100%;
	max-width:1000px;
	height: auto;
	margin:5px 2% 0 0;
	padding: 9px 8px 0 16px;
	border:3px solid #90be9d;
	border-radius:16px;
	background: #fff;
	overflow:auto;
}
.megaMenu_list {
	display: flex;
	flex-wrap: wrap;
	gap: 22px;
	width: 100%;
	flex: 1;
	margin:17px 0 0 0;
}
.megaMenu_item {
	width: 190px;
	height:auto;
	margin:0 0 5px 0;
}
.megaMenu_catTop {
	width: 240px;
	flex: none;
	border-radius:0 0 10px 10px;
	background: #fff;
}
.megaMenu_content {
	background: #fff;
	padding: 0 20px 20px 20px;
	width: 100%;
}
	.megaMenu_img{
		display:inline-block;
	}
	.megaMenu_item_title{
		display:inline-block;
		width:100%;
		font-size:15px;
		text-align:center;
	}
	.megaMenu_item_link{
		margin:50px 0 0 0;
	}
	.megaMenu_catTop_title{
		width:180px;
		height:180px;
		margin:15px 0 0 25px;
		border-radius:300px;
		background:linear-gradient(45deg, rgba(5, 152, 86, 1) 0%, rgba(5, 152, 86, 1) 66%, rgba(90, 232, 44, 1) 100%);
		/*	#059856; */
		color:#fff;
		font-size:20px;
		font-weight:bold;
		text-align:center;
		line-height:180px;
	}

	.heroImg_img img{
		width: 100%;
        height: 800px;
        object-fit: cover;
        object-position: 50% 50%;
	}
	.heroImg_text {
    right: 0;
    position: absolute;
    top: 170px;
    width: auto;
    aspect-ratio: 28 / 7;
    max-width: 90vw;
    height: 100%;
}
	.heroImg_content {
    font-size: 42px;
    font-family: fot-tsukubrdgothic-std, sans-serif;
    color: #0066ec;
    font-weight: bold;
}
	.content-box-img{
		height:460px;
	}
	.content-box-img img{
		height:460px;
	}
	.sub-menu{
		justify-content:start;
		gap:10px;
		width:100%;
		max-width:1200px;
		height:64px;
		margin:50px auto 30px auto;
		padding:5px 5px 3px 5px;
	}	
	.sub-menu-box{
		position:relative;
		width:24%;
		height:48px;
		margin:0;
		padding:6px;
		border:1px solid #57986b;
		border-radius:2px;
		box-sizing:border-box;
	}
	.sub-menu-box a{
		display:block;
		width:100%;
		height:34px;
		padding:4px 0 5px 16px;
		border-radius:2px;
		box-sizing:border-box;
	}
.sub-menu-box::before{
	position:absolute;
	z-index:100;
	content:"";
	top:18px;
	right:20px;
	width: 0;
	height: 0;
	border-style: solid;
	border-top: 8px solid transparent;
	border-bottom: 8px solid transparent;
	border-left: 14px solid #fff;
	border-right: 0;
}
	.sub-menu-box::after{
		position:absolute;
		content:"";
		top:11px;
		right:15px;
		width:28px;
		height:28px;
		border-radius:100px;
		background:#7fb08e;
}
	.contents-box-kiki{
		display:flex;
		flex-wrap:wrap;
		justify-content:start;
		gap:10px;
		width:100%;
		margin:30px 0 0 0;
		padding:18px 11px;
		border-radius:7px;
		background:#b6d2bf;
	}
	.contents-box-kiki-box{
		width:32.25%;
		border:1px solid #3e8253;
		border-radius:5px;
		background:#fff;
		
	}
	.contents-box-kiki-box a{
		display:block;
		width:100%;
		padding:13px 16px 12px 16px;
		box-sizing:border-box;
	}
	.contents-box-kiki-box-img{
		margin:0 0 10px 0;
	}
	.contents-box-kiki-box-txt{
		font-weight:bold;
		line-height:1.25;
	}
	.banner{
		width:90%;
		margin:80px auto 0 auto;
	}
	.contents-box-flex3{
		flex-wrap:wrap;
		gap:30px;
	}
	.contents-box-flex3-wrap{
		width:30%;
	}
	.contents-box-flex3-wrap-4{
		width:22.5%;
	}
	.contents-box-flex3-wrap-img{
		margin:15px 0 12px 0;
	}
	.contents-box-flex3-wrap-txt{
		font-size:16px;
	}
	.contents-box-flex3-wrap-h2{
		padding:0 0 0 11px;
		font-size:21.5px;
	}
	.contents-box-flex3-wrap-download{
		display:flex;
		width:180px;
		margin:12px auto 0 auto;
	}
	.contents-box-flex3-wrap-download img{
		width:40px;
	}
	.contents-box-flex3-wrap-download span{
		width:130px;
		height:40px;
		margin:0 0 0 10px;
		padding:10px 0 0 0;
		border-radius:4px;
		background:#0a5c37;
		box-sizing:border-box;
		color:#fff;
		font-size:14px;
		font-weight:bold;
		text-align:center;
	}
	.topService_item{
		justify-content:center;
	}
	.topIntro{
		display:flex;
		width:100%;
		max-width:1200px;
		justify-content:center;
	}
	.toppIntro_container{
		display:flex;
		width:100%;
	}
	.topIntro_text {
		width:auto;
	}	
.topIntro_img {
    width: 590px;
    position: absolute;
    top: 0;
    right: 0;
    transform: translateX(100%);
}
	
	
	
	.sustainability{
		display:flex;
		justify-content:center;
		width:100%;
		padding-bottom:90px;
	}
	.sustainability_container{
		display:flex;
		flex-wrap:wrap;
		width:100%;
		max-width:600px;
	}
    .sustainability_img {
        position: relative!important;
        right: auto!important;
        transform: none!important;
        top: 0;
        width: 720px!important;
	}
	.topGuid_list{
		justify-content:center!important;
		gap:14px!important;
	}
	.interview{
		display:flex;
		flex-wrap:wrap;
		width:100%;
		gap:15px;
	}
	.interview-box{
		width:32%;
		padding:0 0 16px 0;
		border:2px solid #ccc;
		border-radius:5px;
	}
	.interview-box-deoartment{
		width:90%;
		margin:16px auto 10px auto;
		padding:5px 0;
		border-top:1px solid #2878ac;
		border-bottom:1px solid #2878ac;
		color:#173b52;
		font-size:18px;
		font-weight:bold;
		text-align:center;
	}
	.topCamPost{
		max-width:1200px;
		margin:0 auto;
	}
	.topLinks_list,.banner_list{
		max-width:1000px;
		margin:0 auto;
	}
	.topService_list-sub{
	max-width:1260px;
		margin:150px auto 0 auto;
	}
	.topIntro_content{
		font-size:19.5px;
	}
	.sustainability_btns_list{
		margin-top:20px;
	}
.staff-hero{
position:relative;
}
.staff-hero-name{
position:absolute;
top:230px;
left:0px;
content:"";
z-index:100;
padding:18px 35px 13px 35px;
color:#fff;
font-size:32px;
font-weight:bold;
}
.staff-hero-img{
height:auto;
}
.staff-box{
display:block;
width:100%;
max-width:750px;
margin:50px auto 0 auto;
}
.staff-box-img{
display:block;
margin:0 0 30px 0;
}
.gmap{
height:442px;
}
.gmap iframe{
width:100%;
height:440px;
}	
	.sectionTitle-en{
		display:inline-block;
		width:100%!important;
	}
	
	
	
	
	.footer{
		padding:95px 0 0 0!important; 
		margin-top:100px;
		margin-bottom:0;
	}
	
}

/* -------------------------------------------------------- 1200px */
@media screen and (min-width: 1260px) {
	.header_title {
		top:0!important;
    width: 28%;
	max-width:400px;
    }
}
