/*!
Theme Name:  Tsukasa
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: LICENSE
*/

h1,h2,h3,h4,h5 {
	box-sizing: border-box;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 1px;
	margin: 0px;
	padding: 0px;
	border: 0;
	outline: 0;
	font-size: 100%;
	font-weight: normal;
	vertical-align: baseline;
	background: transparent;
	border: none;
	font-style: normal;
	zoom: 1;
}
  
html,body {
	box-sizing: border-box;
	width: 100%;
	height: 100%;
	padding: 0;
	margin: 0;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 400;
	font-style: normal;
	-webkit-text-size-adjust: 100%;
	position: relative;
	font-size:10px;
	background:#f7f7f7!important;
	text-autospace: no-autospace;
	text-spacing-trim: trim-auto;
	min-height:100vh;
    display: flex;
    flex-direction: column;
}
  
body {
	overflow-x: hidden;
}
.wrapper {
	position: relative;
    flex: 1; /* コンテンツエリアが残りの高さを占めるようにする */
}
  
img {
	box-sizing: border-box;
	width: 100%;
	height: auto;
	display: block;
}
* {
	box-sizing: border-box;
}

.link_absolute {
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
	z-index:11;
}
.forpc {display: block;}
.forsp {display: none;}

@media screen and (max-width: 599px) {
	.forpc {display: none;}
	.forsp {display: block;}
}

.test {
	border:1px solid #000;
}

.width1280{
	max-width:1280px;
	padding: 0 40px;
	margin: 0 auto;
}
@media screen and (max-width: 1280px) {
	.width1280{
		padding: 0 30px;
	}
}
@media screen and (max-width: 768px) {
	.width1280{
		padding: 0 20px;
	}
}
@media screen and (max-width: 599px) {
	.width1280{
		padding: 0 10px;
	}
}

.width980{
	max-width:980px;
	padding: 0 40px;
	margin: 0 auto;
}
@media screen and (max-width: 1280px) {
	.width980{
		padding: 0 30px;
	}
}
@media screen and (max-width: 768px) {
	.width980{
		padding: 0 20px;
	}
}
@media screen and (max-width: 599px) {
	.width980{
		padding: 0 10px;
	}
}
*:focus {
  outline: none!important;
}

.bg1 {
	background:#00A051;
}
.bg2 {
	background:#5F5E5E;
}
.bg3 {
	background:#EDEDED;
}
.bg4 {
	background:#f7f7f7;
}
.bgwh {
	background:#FFF;
}
.cent_box {
	padding: 0 20px;
	position:absolute;
	width:100%;
	top:50%;
	left:0;
    transform: translateY(-50%);
}

.pagetop {
  position: fixed;
  right: 2.5%;
  bottom: -400px;
  transition: .3s ease-out;
	background:#00A051;
	width:60px;
	height:60px;
	z-index:66;
	padding:10px;
}
.pagetop.is-active {
  bottom: 30px;
}
.pagetop a {
	display:block;
}


.fixed_menu {
	width:100%;
	height:60px;
	position:fixed;
	top:0;
	left:0;
	z-index:66;
	transition: .3s;
	background:#FFF;
	filter:drop-shadow(0 2px 5px rgba(0, 0, 0, 0.1));
    transform: translateY(-150%);
	opacity:0;
}
.fixed_menu.is-active2 {
    transform: translateY(-0%);
	opacity:1;
}
.fixed_menu .menu_box {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items:center;	
}
.fixed_menu .logo_box{
	height:60px;
	padding:0;
	display: flex;
	flex-wrap: wrap;
	align-items:center;
}
.fixed_menu .right_box {
	width:calc(100% - 200px);
	flex-basis:calc(100% - 200px);
	display: flex;
	flex-wrap: wrap;
	align-items:center;
	justify-content: flex-end;
}
.fixed_menu .main_menu_fixed {
	width:100%;
	flex-basis:100%;
	display: flex;
	flex-wrap: wrap;
	align-items:center;
	justify-content: flex-end;
}
.fixed_menu ul.main_menu_fixed li {
	font-size:16px;
	font-weight:400;
	color:#656565;
	padding:0 20px;
	list-style:none;
	line-height:60px;
	position:relative;
}
.fixed_menu ul.main_menu_fixed li a {
	color:#656565;
	text-decoration:none;
	display:block;
}
ul.main_menu_fixed li.current {
	background:#00A051;
}
ul.main_menu_fixed li.current a {
	color:#FFF;
}
ul.main_menu_fixed li::after {
	content:'';
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background:#00A051;
	z-index:-1;
	transform-origin:bottom;
	transform:scaley(0);
	transition:0.15s;
}
ul.main_menu_fixed li.current::after {
	transform:scaley(1);
}
@media screen and (max-width: 1280px) {
	.fixed_menu ul.main_menu_fixed li {
	padding:0 15px;
	}
}
@media screen and (max-width: 1120px) {
	.fixed_menu ul.main_menu_fixed li {
		font-size:14px;
		padding:0 10px;
	}
}
@media screen and (max-width: 925px) {
	.fixed_menu {
		display:none;
	}
}

@media(hover: hover) {
	ul.main_menu_fixed li:hover a {
		color:#FFF;
	}
	ul.main_menu_fixed li:hover::after {
		transform:scaley(1);
	}
}
/***************************************************/
  
@font-face {
	src: url("font/NotoSansJP-Bold.woff") format("woff");
	font-family: "Fieldwork Geo";
	font-style: bold;
	font-weight: 600;
	font-display: swap;
}
@font-face {
	src: url("font/NotoSansJP-Medium.woff") format("woff");
	font-family: "Noto Sans JP";
	font-style: medium;
	font-weight: 500;
	font-display: swap;
}
@font-face {
	src: url("font/NotoSansJP-Regular.woff") format("woff");
	font-family: "Noto Sans JP";
	font-style: normal;
	font-weight: 400;
	font-display: swap;
}
@font-face {
	src: url("font/din-condensed-regular.woff") format("woff");
	font-family: "din-condensed";
	font-style: normal;
	font-weight: 400;
	font-display: swap;
}
@font-face {
	src: url("font/DIN 2014 Demi.woff") format("woff");
	font-family: "DIN 2014";
	font-style: normal;
	font-weight: 500;
	font-display: swap;
}
/***************************************************/
/* MENU */

.menu_box {
	width: 100%;
	z-index: 99;
	margin:0 auto;
	display: flex;
	flex-wrap: wrap;
	align-items:center;	
	justify-content: space-between;
	position:relative;
}
.logo_box {
	width:200px;
	flex-basis:200px;
    padding: 10px 0;
}
.right_box {
	width:calc(100% - 200px);
	flex-basis:calc(100% - 200px);
	display: flex;
	flex-wrap: wrap;
	align-items:center;
	justify-content: flex-end;
}
.head_itme {
	font-size:14px;
	font-weight:400;
	line-height:1.5;
	color:#FFF;
	padding:3px 0;
	width:120px;
	text-align:center;
}
.head_itme2 {
	font-size:16px;
	font-weight:400;
	line-height:1.5;
	color:#656565;
	padding:3px 20px 3px 0px;
}
.head_itme2 img {
	width:25px;
	height:25px;
	display:block;
}
.head_itme a {
	color:#FFF;
	text-decoration:none;
	display:block;
}
.head_itme2 a {
	color:#656565;
	text-decoration:none;
	display:block;
	opacity:1;
	transition:0.3s;
}
@media(hover: hover) {
	.head_itme2:hover a {
		opacity:0.5;
	}
}
.head_itme3 {
	font-size:16px;
	font-weight:400;
	line-height:1.5;
	color:#656565;
	padding-right: 20px;
}
.head_itme a {
	color:#FFF;
	text-decoration:none;
}

.main_menu_box {
	width:100%;
	flex-basis:100%;
	display: flex;
	flex-wrap: wrap;
	align-items:center;
	justify-content: space-between;
}
ul.main_menu {
	display: flex;
	flex-wrap: wrap;
	align-items:center;
	width:calc(100% - 250px);
	flex-basis:calc(100% - 250px);
	list-style:none;
}
ul.main_menu li {
	font-size:16px;
	font-weight:400;
	color:#656565;
	padding:0 20px;
	margin-top:5px;
	line-height:50px;
	position:relative;
}
ul.main_menu li::after {
	content:'';
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background:#00A051;
	z-index:-1;
	transform-origin:bottom;
	transform:scaley(0);
	transition:0.15s;
}
ul.main_menu li a {
	color:#656565;
	text-decoration:none;
	opacity:1;
	transition:0.3s;
}
ul.main_menu li.current a {
	color:#FFF;
}
ul.main_menu li.current::after {
	transform:scaley(1);
}
@media(hover: hover) {
	ul.main_menu li:hover a {
		color:#FFF;
	}
	ul.main_menu li:hover::after {
		transform:scaley(1);
	}
}
ul.main_menu li:last-of-type {
	margin-right:0;
}
.spfix {
	position:relative;
}
@media screen and (max-width: 1280px) {
	ul.main_menu li {
	padding:0 15px;
	}
}
@media screen and (max-width: 1120px) {
	ul.main_menu li {
		font-size:14px;
		padding:0 7px;
	}
	.head_itme {
		width:100px;
	}
	.head_itme2, .head_itme3 {
		font-size:14px;
		padding-right: 10px;
	}
}
@media screen and (max-width: 925px) {
	.menu_box {
		display:none;
	}
	.logo_box {
		width:180px;
		flex-basis:180px;
	}
}
@media screen and (max-width: 399px) {
	.logo_box img {
		width:150px;
		padding:3.5px 0;
	}
}


@media screen and (max-width: 599px) {
	.head_itme_sp {
	text-align:center
	}
	.head_itme_sp img {
		margin:0 auto
	}
}

/***************************************************/

ul.submenu_classname {
    position: absolute;
    width: max-content;
    top: 50px;
    left: 0;
	padding:0;
	margin:0;
    transform: scaleY(0);
    transform-origin: center top;
	transition:0.2s;
}
ul.submenu_classname li {
	color:#232323;
	height:auto;
	font-size:16px;
	height:45px;
	line-height:45px;
	margin: 0;
	padding:0;
	border-bottom:0.5px solid #00A051;
	background:#FFF;
	transition:0.3s;
}

ul.submenu_classname_fixed {
    position: absolute;
    width: max-content;
    top: 60px;
    left: 0;
	padding:0;
	margin:0;
    transform: scaleY(0);
    transform-origin: center top;
	transition:0.2s;
}
ul.submenu_classname_fixed_right {
    left: auto;
	right:0;
}
ul.submenu_classname_fixed li {
	color:#00A051;
	height:auto;
	font-size:16px!important;
	height:45px;!important;
	line-height:45px!important;
	margin: 0!important;
	padding:0!important;
	border-bottom:0.5px solid #00A051;
	background:#FFF;
	transition:0.3s;
}

.submenu_box {
	width:480px;
	top:50px;
	left:0;
	margin:0 auto;
    transform: scaleY(0);
    transform-origin: center top;
	transition:0.3s;
	position:absolute;	
}
.submenu_box_fixed {
	width:480px;
	top:60px;
	left:0;
	margin:0 auto;
    transform: scaleY(0);
    transform-origin: center top;
	transition:0.3s;
	position:absolute;	
}
.submenu_company {
	width:430px;
}
ul.submenu_classname2 {
	width:100%;
	flex-basis:100%;
	position:absolute;
	top:0;
    transform-origin: center top;
	transition:0.2s;
	padding:0!important;
	margin:0!important;
	display: flex;
	flex-wrap: wrap;
}
ul.submenu_classname2 li {
	width:50%;
	flex-basis:50%;
	color:#232323;
	height:auto;
	font-size:16px!important;
	height:45px!important;
	line-height:45px!important;
	margin: 0!important;
	padding:0!important;
	border-bottom:0.5px solid #00A051;
	background:#FFF;
	transition:0.3s;
}
ul.submenu_classname li a,
ul.submenu_classname2 li a,
ul.submenu_classname_fixed li a {
	color:#656565!important;
	transition:0.3s;
	display:block;
	padding:0 20px;
}
@media screen and (max-width: 1280px) {
ul.submenu_classname li a,
ul.submenu_classname2 li a,
ul.submenu_classname_fixed li a {
	padding:0 15px;
}
	.submenu_box,
	.submenu_box_fixed {
	width:450px;
	}
}
@media screen and (max-width: 980px) {
ul.submenu_classname li a,
ul.submenu_classname2 li a,
ul.submenu_classname_fixed li a {
		font-size:14px;
	padding:0 10px;
}
	.submenu_box,
	.submenu_box_fixed {
	width:380px;
	}
}

ul.submenu_classname li:last-child,
ul.submenu_classname_fixed li:last-child{
	border-bottom:0px solid #00A051;
}

ul.submenu_classname2 li:last-child,
ul.submenu_classname2 li:nth-last-child(2){
	border-bottom:0px solid #00A051;
}
ul.submenu_classname2 li:nth-child(2n){
	border-left:0.5px solid #00A051;
}
@media screen and (max-width: 1280px) {
	.submenu_box {
	font-size:16px;
	}
}
@media screen and (max-width: 900px) {
	.submenu_box {
	font-size:14px;
	}
}

@media(hover: hover) {
ul.submenu_classname li:hover,
ul.submenu_classname_fixed li:hover,
ul.submenu_classname2 li:hover {
	background:#00A051;
}
ul.submenu_classname li:hover a,
ul.submenu_classname_fixed li:hover a,
ul.submenu_classname2 li:hover a{
	color:#FFF!important;
}
ul.main_menu li:hover .submenu_classname,
ul.main_menu li:hover .submenu_box {
    transform: scaleY(1);
}
ul.main_menu_fixed li:hover .submenu_classname_fixed,
ul.main_menu_fixed li:hover .submenu_box_fixed {
    transform: scaleY(1);
}
}
/*スマホ*/
/***************************************************/

.menu_box_sp {
	width: 100%;
	z-index: 999;
	margin:0 auto;
	display: flex;
	flex-wrap: wrap;
	align-items:center;	
	justify-content: space-between;
	position:fixed;
	display:none;
	padding:0 10px;
	background:#FFF;
}
.menu_box_sp .logo_box {
	width:180px;
	flex-basis:180px;
}
.sp_box {
    width: 60px;
	flex-basis:60px;
    height:60px;
    position:absolute;
    top:0;
    right:0;
	background:#00A051;
}
@media screen and (max-width: 925px) {
	.menu_box_sp {
		display:block;
	}
	.wrapper {
		padding-top:60px;
	}
	.right_box {
		width:100px;
		flex-basis:100px;
		position:absolute;
		top:15px;
		right:60px;
	}
}
.sp_menu1, .sp_menu2, .sp_menu3 {
	transition:0.3s;
	background:#FFF;
    width:40px;
    height:3px;
    position:absolute;
	display:none;
}

.sp_menu1 {
	top: 15px;
	left: 10px;
	display:block;
}
.sp_menu2 {
	top: 28.5px;
	left: 10px;
	display:block;
}
.sp_menu3 {
	top: 42px;
	left: 10px;
	display:block;
}


.menuclick1 {
	width:45px;
	top:29px;
	left:8px;
	-moz-transform: rotate(225deg);
	-webkit-transform: rotate(225deg);
	-o-transform: rotate(225deg);
	-ms-transform: rotate(225deg);
	transform: rotate(225deg);
}
.menuclick2 {
  left: 50%;
  opacity: 0;
  animation: active-menu-bar02 .8s forwards;
}
@keyframes active-menu-bar02 {
  100% {
    height: 0;
  }
}
.menuclick3 {
	width:45px;
	top:29px;
	left:8px;
	-moz-transform: rotate(-225deg);
	-webkit-transform: rotate(-225deg);
	-o-transform: rotate(-225deg);
	-ms-transform: rotate(-225deg);
	transform: rotate(-225deg);
}


.menuBoxoff {
	box-sizing:border-box;
	width: 100%;
	height: 100%;
	display:block;
	display:none;
	overflow:hidden;
	position:fixed;
	z-index:99;
	top:0px;
	padding: 100px 50px;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
	background: rgba(0, 0, 0, 0);
	background:#00A051;
}


.menuBoxoff ul.spmenu {
	width:100%;
	list-style:none;
}
.menuBoxoff ul.spmenu li.menusp_box {
	width:100%;
	border-top:1px solid #FFF;
}
.menu_inner_sp,.menu_inner_sp2{
	width:100%;
	font-size:18px;
	font-weight:500;
	color:#FFF;
	padding:20px 5px;
	position:relative;
}

.menu_inner_sp a {
	color:#FFF;
	text-decoration:none;
}
.menu_inner_sp2 a  {
	color:#FFF;
	text-decoration:none;
	display:block;
}
.menuBoxoff ul.spmenu li.menusp_box:last-child {
	border-bottom:1px solid #FFF;
}
@media screen and (max-width: 599px) {
	.menuBoxoff {
		padding: 90px 15px;
	}
	.menu_inner_sp,.menu_inner_sp2 {
		font-size:4.5vw;
		padding:15px 5px;
	}
}

.menuBoxoff ul.spmenu2 {
	width:100%;
	list-style:none;
	display: flex;
	flex-wrap: wrap;
	align-items:center;
	justify-content: space-between;
	margin:0;
	padding:0;
	margin-top:20px;
}
.menuBoxoff ul.spmenu2 li {
	width:50%;
	flex-basis:50%;
	font-size:18px;
	font-weight:500;
	color:#FFF;
	list-style:none;
	margin:0;
	padding:0;
	padding-left:15px;
	position:relative;
}
.menuBoxoff ul.spmenu2 li::before {
	content:'';
	position:absolute;
	top:50%;
	left:0;
	width:7px;
	height:7px;
	background:#FFF;
	border-radius:10px;
    transform: translateY(-50%)
}
.menuBoxoff ul.spmenu2 li a {
	color:#FFF;
	text-decoration:none;
	display:block;
	padding:10px 0;
}
@media screen and (max-width: 599px) {	
	.menuBoxoff ul.spmenu2 li {
	width:100%;
	flex-basis:100%;
	}
}
@media screen and (max-width: 399px) {	
	.menuBoxoff ul.spmenu2 li {
	font-size:4vw;
	}
}


.sp_flex {
	width: 100%;
	flex-basis:100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items:center;	
}
.sp_btn {
	width:calc(50% - 10px);
	flex-basis:calc(50% - 10px);
	margin:0 auto;
	background:#FFF;
	padding:20px;
	margin-top:20px;
	text-align:center;
	font-size:21px;
	font-weight:500;
	cursor:pointer;
	position:relative;
}
.sp_btn a {
	color:#00A051;
	text-decoration:none;
	display:block;
}
@media screen and (max-width: 800px) {
	.sp_btn {
		padding:15px;
	}
}
@media screen and (max-width: 599px) {
	.sp_btn {
		width:100%;
		flex-basis:100%;
		font-size:18px;
	}
}
@media screen and (max-width: 399px) {
	.sp_btn {
	font-size:4.5vw;
	}
}



.about_child {
	box-sizing: border-box;
	width: 100%;
	margin:0;
}

.about_child li {
	width:100%;
	font-size:16px;
	font-weight:500;
	color:#FFF;
	border-top:1px dashed #FFF;
	padding:15px;
	padding-left:20px;
	position:relative;
}
@media screen and (max-width: 599px) {
	.about_child li {
		font-size: 4vw;
	}
}

.about_child li a {
	color: #FFF;
	text-decoration: none;
	display:block;
}

.menu_inner_sp, .menu_inner_sp2 {
	position:relative;
}
.menu_inner_sp::after {
    content: '';
    display: block;
    width: 10px;
    height: 10px;
    border-top: 2px solid #FFF;
    border-left: 2px solid #FFF;
    position: absolute;
    right: 7px;
    top: 50%;
    transform: translateY(-50%) rotate(-135deg);
	margin-top:-4px;
}
.menu_inner_sp2::after {
}
.ac_open {
	background: rgba(255,255,255,0.1);
}
.ac_open::after {
	margin-top:5px;
    transform: translateY(-50%) rotate(45deg);
}
/*ボタン*/
/***************************************************/
.btn_box {
	width:100%;
	padding:20px 0;
	display: flex;
	flex-wrap: wrap;
	align-items:center;	
	justify-content: center;
}
@media screen and (max-width: 768px) {
	.btn_box {
		padding:10px 0;
	}
}
.btn_box2 {
	padding:0;
}
.btn_text {
	width:100%;
	flex-basis:100%;
	text-align:center;
}
.main_btn {
	width:300px;
	flex-basis:300px;
	margin:10px;
	color:#FFF;
	background:#00A051;
	border:1px solid #00A051;
	padding:18px!important;
	text-align:center;
	position:relative;
	transition:0.3s;
}
@media screen and (max-width: 768px) {
	.main_btn {
	padding:15px!important;
	}
}
.main_btn a {
	color:#FFF;
	text-decoration:none;
	display:block;
}
.main_btn::after {
    content: '';
    display: block;
    width: 10px;
    height: 10px;
    border-top: 2px solid #FFF;
    border-left: 2px solid #FFF;
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%) rotate(135deg);
}
@media(hover: hover) {
	.main_btn:hover {
		background:#FFF;
	}
	.main_btn:hover::after {
		border-top: 2px solid #00A051;
		border-left: 2px solid #00A051;
	}
	.main_btn:hover,
	.main_btn:hover a {
		color:#00A051;
	}
}
/*検索*/
/***************************************************/
.serch_itme {
	background:#EDEDED;
	margin:0;
	width:240px;
	flex-basis:240px;
	position:relative;
}
@media screen and (max-width: 980px) {
	.serch_itme {
		width:200px;
		flex-basis:200px;
	}
}
.serchInner {
	box-sizing:border-box;
	width:100%;
	height:auto;
	border:none;
	padding:6px 10px;
	font-size:14px;
	line-height:1.5;
	font-weight:400;
	color:#acacac;
	background:#EDEDED;
	text-align:left;
}
.serchIcon {
	width:35px;
	height:100%;
	position:absolute;
	top:0;
	right:0;
}

/*言語選択*/
/***************************************************/

.head_itme3 select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	box-sizing: border-box;
	border-radius: 0;
	background:#FFF;
}
#lang_choice_1,
#lang_choice_2 {
	padding:3px 20px 3px 0px;
 	color:#656565;
	font-family: "Noto Sans JP", sans-serif;
	font-weight:400;
	border:none;
	font-size:16px;
	font-weight:400;
	line-height:1.5;
	background:#FFF;
	background-image: url(img/icon_arrow.svg);
	background-repeat: no-repeat;
	background-size: 15px 15px;
	background-position: right 0px center;
	position:relative;
	z-index:2;
}
@media screen and (max-width: 980px) {
	#lang_choice_1,
	#lang_choice_2 {
		font-size:14px;
	}
}
/***************************************************/

ul.product_menu {
	width: 100%;
	margin:0 auto;
	list-style:none;
	display: flex;
	flex-wrap: wrap;
	align-items:center;	
	justify-content: space-between;
}

ul.product_menu li {
	display: flex;
	flex-wrap: wrap;
	align-items:center;	
	width: calc(25% - 20px);
	padding:5px;
	position:relative;
	border:1px solid #FFF;
	background:#FFF;
	margin-bottom:10px;
}
@media(hover: hover) {
	ul.product_menu li:hover {
		border:1px solid #00A051;
	}
}
ul.product_menu li.spaces {
	width: calc(25% - 20px);
	padding:0;
	background:transparent;
	border:1px solid transparent;
	opacity:0;
}

@media(hover: hover) {
	ul.product_menu li.spaces:hover {
		border:1px solid transparent;
	}
}

@media screen and (max-width: 1080px) {
	ul.product_menu li, ul.product_menu li.spaces {
		width: calc(33.33333% - 10px);
		margin-bottom:10px;
	}
}
@media screen and (max-width: 768px) {
	ul.product_menu li, ul.product_menu li.spaces {
		width: calc(50% - 10px);
	}
}
@media screen and (max-width: 599px) {
	ul.product_menu li, ul.product_menu li.spaces {
		width: calc(50% - 4px);
		margin-bottom:8px;
		padding: 3px;
	}
}
.cat_img {
	width:40px;
	flex-basis:40px;
	height:40px;
	position:relative;
}
.cat_img img {
	width:100%;
	height:auto;
	position:absolute;
	top:50%;
	left:0;
    transform: translateY(-50%);
}
.cat_name {
	width:calc(100% - 40px);
	flex-basis:calc(100% - 40px);
	padding-left:10px;
	font-size:14px;
	font-weight:400;
	color:#656565;
	line-height:1.3;
}
@media screen and (max-width: 599px) {
	.cat_img {
		width:30px;
		flex-basis:30px;
		height:30px;
	}
	.cat_name {
		font-size:12px;
		width:calc(100% - 30px);
		flex-basis:calc(100% - 30px);
		padding-left:5px;
	}
}
.cat_name a {
	color:#656565;
	text-decoration:none;
}

ul.product_menu li.current {
	border:1px solid #00A051;
}

/***************************************************/
.product_box {
	width: 100%;
	margin:0 auto;
	display: flex;
	flex-wrap: wrap;
	align-items:center;
}
.product_box2 {
	width: 100%;
	margin:0 auto;
	display: flex;
	flex-wrap: wrap;
	align-items:stretch;
}
.single_inner {
	width: calc(100% - 300px);
	flex-basis:calc(100% - 300px);
}
@media screen and (max-width: 768px) {
	.single_inner {
		width: 100%;
		flex-basis: 100%;
	}
}
.cat_title_box {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	align-items:center;
	margin-top:10px;
}
.cat_img_big {
	width:80px;
	flex-basis:80px;
	height:80px;
}
.cat_name_box_100 {
	width:calc(100% - 80px);
	flex-basis:calc(100% - 80px);
	padding-left:20px;
}
.cat_name_box {
	width:calc(100% - 380px);
	flex-basis:calc(100% - 380px);
	padding-left:20px;
}
.cat_zukai {
	width:280px;
	flex-basis:280px;
	text-align:center;
	margin-left:20px;
	font-weight:400;
	font-size:18px;
	line-height:1.5;
	padding:10px 35px;
	position:relative;
}
.cat_zukai::after {
    content: '';
    display: block;
    width: 10px;
    height: 10px;
    border-top: 2px solid #FFF;
    border-left: 2px solid #FFF;
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%) rotate(135deg);
}

@media screen and (max-width: 850px) {
	.cat_img_big {
		width:70px;
		flex-basis:70px;
		height:70px;
	}
	.cat_name_box,.cat_name_box_100 {
		width:calc(100% - 70px);
		flex-basis:calc(100% - 70px);
		padding-left:10px;
	}
	.cat_zukai {
		width:100%;
		flex-basis:100%;
		max-width:280px;
		margin: 0 auto;
		margin-top:10px;
	}
}
@media screen and (max-width: 599px) {
	.cat_img_big {
		width:50px;
		flex-basis:50px;
		height:50px;
	}
	.cat_name_box,.cat_name_box_100 {
		width:calc(100% - 50px);
		flex-basis:calc(100% - 50px);
		padding-left:10px;
	}
}
.cat_zukai a {
	color:#FFF;
	text-decoration:none;
	display:block;
}
.cat_detail {
	width:100%;
	flex-basis:100%;
	font-size:14px;
	line-height:1.8;
	color:#656565;
	padding-top:10px;
}

.cat_name_big {
	width:100%;
	font-size:40px;
	line-height:1.4;
	font-weight:600;
	color:#00A051;
}
@media screen and (max-width: 768px) {
	.cat_name_big {
		font-size:32px;
	}
}
@media screen and (max-width: 599px) {
	.cat_name_big {
		font-size:24px;
	}
}
.cat_descriptionA, .cat_descriptionB {
	width:100%;
	font-size:18px;
	line-height:1.4;
	font-weight:400;
	padding:5px 0;
}
.cat_descriptionB {
	font-size:16px;
	display:none;
}
@media screen and (max-width: 768px) {
	.cat_descriptionA {
		display:none;
	}
	.cat_descriptionB {
		display:block;
	}
}
.cat_name_big_sub {
	width: 100%;
	font-size:30px;
	line-height:1.3;
	font-weight:500;
	color:#00A051;
}
.cat_name_big_sub span {
	display:inline-block;
	white-space: nowrap;
}
@media screen and (max-width: 768px) {
	.cat_name_big_sub {
		font-size:26px;
	}
}
@media screen and (max-width: 599px) {
	.cat_name_big_sub {
		font-size:21px;
	}
}
ul.product_items {
	width:100%;
	list-style:none;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding-top:10px;
}
@media screen and (max-width: 599px) {
	.product_items {
		padding-top:5px;
	}
}
ul.product_items li {
	width:calc(25% - 10px);
	flex-basis:calc(25% - 10px);
	background:rgba(255,255,255,1);
	position:relative;
	padding-bottom:30px;
	margin-bottom:12px;
}
ul.product_items li.spaces {
	width:calc(25% - 10px);
	flex-basis:calc(25% - 10px);
	padding:0;
	margin:0;
	background:transparent;
}
ul.product_items li.box33 {
	width:calc(33.3333% - 10px);
	flex-basis:calc(33.3333% - 10px);
	background:rgba(255,255,255,1);
	position:relative;
	margin-bottom:15px;
}
ul.product_items li.spaces33 {
	width:calc(33.3333% - 10px);
	flex-basis:calc(33.3333% - 10px);
	padding:0;
	margin:0;
	background:transparent;
}
@media screen and (max-width: 1280px) {
	ul.product_items li, ul.product_items li.spaces {
		width:calc(33.3333% - 10px);
		flex-basis:calc(33.3333% - 10px);
	}
	ul.product_items li {
		margin-bottom:15px;
	}
}
@media screen and (max-width: 768px) {
	ul.product_items li, ul.product_items li.spaces {
		width:calc(50% - 10px);
		flex-basis:calc(50% - 10px);
	}
	ul.product_items li.box33, ul.product_items li.spaces33 {
		width:calc(50% - 10px);
		flex-basis:calc(50% - 10px);
	}
	ul.product_items li, ul.product_items li.box33 {
		margin-bottom:20px;
	}
}
@media screen and (max-width: 599px) {
	ul.product_items li {
		width:calc(50% - 5px);
		flex-basis:calc(50% - 5px);
		padding-bottom:20px;
	}
	ul.product_items li.spaces {
		width:calc(50% - 5px);
		flex-basis:calc(50% - 5px);
	}
	ul.product_items li.box33 {
		width:calc(50% - 5px);
		flex-basis:calc(50% - 5px);
		padding-bottom:20px;
	}
	ul.product_items li.spaces33 {
		width:calc(50% - 5px);
		flex-basis:calc(50% - 5px);
	}
	ul.product_items li, ul.product_items li.box33 {
		margin-bottom:10px;
	}
}

.invalid-url-message {
	width:100%;
	padding:20px;
	text-align:center;
	line-height:1.6;
	position:absolute;
	top:50%;
    transform: translateY(-50%);
	margin:0 auto;
}

.product_item_image {
	width:100%;
	position:relative;
	overflow:hidden;
	background:#D5E1E8;
}
.product_item_image img {
	position:relative;
	z-index:1;
}
.product_item_box {
	width:100%;
	padding:10px;
}
.product_item_boxB {
	padding-bottom:30px!important;
}
.product_item_box2 {
	border:1px solid #ccc;
}
.product_item_name {
	width:100%;
	font-size:16px;
	line-height:1.4;
	font-weight:500;
	color:#000;
	padding-bottom:10px;
}
.product_item_subtitle {
	width:100%;
	font-size:14px;
	line-height:1.5;
	font-weight:400;
	color:#656565;
}
.more {
	padding-top:10px;
	font-size:11px;
	color:#000;
	text-align:right;
	position:absolute;
	right:10px;
	bottom:10px;
}
@media screen and (max-width: 599px) {
	.product_item_name {
	font-size:14px;
	padding-bottom:5px;
	}
	.product_item_subtitle {
	font-size:12px;
	}
	.more {
	padding-top:0;
	}
}


@media(hover: hover) {
	ul.product_items li:hover .product_item_image img {
		transform:scale(1.1);
		transition:0.3s;
	}
	ul.product_items li:hover .bgBK {
		background:rgba(0,0,0,0.0);
	}
}

@media screen and (max-width: 599px) {
	.bgBK {
		background:rgba(0,0,0,0.0);
		display:none;
	}
}
/***************************************************/
.product_contact {
	width:100%;
	padding:10px;
	padding-top:20px;
	background:#D5E1E8;
	background:rgba(0,160,81,0.1);
	margin-bottom:40px;
	display: flex;
	flex-wrap: wrap;
	align-items:center;	
	justify-content: center;
}
@media screen and (max-width: 768px) {
	.product_contact {
		padding-top:10px;
	}
}



.product_contact_text {
	width:100%;
	flex-basis:100%;
	max-width:980px;
	margin:0 auto;
	text-align:center;
	color:#000;
	padding:10px;
	font-size:16px;
	line-height:1.4;
}
@media screen and (max-width: 1010px) {
	.product_contact_text {
	text-align:left;
	}
}
.product_contact_btn {
	width:300px;
	flex-basis:300px;
	margin:10px;
	color:#FFF;
	background:#00A051;
	border:1px solid #00A051;
	padding:20px 20px;
	text-align:center;
	position:relative;
	transition:0.3s;
}
.product_contact_btn a {
	color:#FFF;
	text-decoration:none;
	display:block;
}
.product_contact_btn::after {
    content: '';
    display: block;
    width: 10px;
    height: 10px;
    border-top: 2px solid #FFF;
    border-left: 2px solid #FFF;
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%) rotate(135deg);
}

@media(hover: hover) {
	.product_contact_btn:hover {
		background:#FFF;
	}
	.product_contact_btn:hover::after {
		border-top: 2px solid #00A051;
		border-left: 2px solid #00A051;
	}
	.product_contact_btn:hover a {
		color:#00A051;
	}
}

.btn_img {
	width:40px;
	flex-basis:40px;
	height:40px;
	position:absolute;
	top:50%;
	left:10px;
    transform: translateY(-50%);
}
/***************************************************/

.single_box {
	width: 100%;
	margin:0 auto;
	display: flex;
	flex-wrap: wrap;
}
.title_ribbon {
	font-family: "din-condensed", sans-serif;
	font-size:48px;
	color:#FFF;
	padding:10px 10px 0 0;
	display:inline-block;
	line-height:1;
}
.title_ribbon2 {
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 400;
	color:#FFF;
	font-size:14px;
	padding:10px 0 10px 0;
	display:inline-block;
	line-height:0.5;
}
@media screen and (max-width: 1280px) {
	.title_ribbon {
		font-size:42px;
	}
}
@media screen and (max-width: 768px) {
	.title_ribbon {
		font-size:38px;
	}
}
@media screen and (max-width: 499px) {
	.title_ribbon {
		font-size:28px;
	}
}
@media screen and (max-width: 350px) {
	.title_ribbon {
		font-size:8vw;
	}
}


.product_single_title {
	width:100%;
	font-size:24px;
	color:#4D4D4D;
	padding-top:20px;
}
@media screen and (max-width: 599px) {
	.product_single_title {
		font-size:21px;		
	}
}
.product_single_subtitle {
	width:100%;
	font-size:16px;
	line-height:1.5;
	font-weight:400;
	color:#4D4D4D;
	padding-top:10px;
}
/***************************************************/
.product_cate_text1 {
	width:100%;
	font-size:32px;
	line-height:1.3;
	color:#00A051;
	font-weight:500;
	text-align:left;
}
.product_cate_text2 {
	width:100%;
	font-size:16px;
	line-height:1.6;
	color:#000;
	font-weight:400;
	text-align:left;
	padding-top:10px;
}
.product_cate_text3 {
	width:100%;
	font-size:24px;
	line-height:1.3;
	color:#4D4D4D;
	font-weight:500;
	text-align:left;
}
@media screen and (max-width: 768px) {
	.product_cate_text1 {
		font-size:26px;
	}
	.product_cate_text3 {
		font-size:21px;
	}
}

@media screen and (max-width: 599px) {
	.product_cate_text1 {
		font-size:21px;
	}
	.product_cate_text2 {
		font-size:14px;
	}
	.product_cate_text3 {
		font-size:18px;
	}
}



.youtube {
  width: 100%;
	flex-basis:100%;
  aspect-ratio: 16 / 9;
}
.youtube iframe {
  width: 100%;
  height: 100%;
}




.flex_box {
	width:100%;
	display: flex;
	flex-wrap: wrap;
	align-items:stretch;
	justify-content: space-between;
}

.main_contents {
	width:100%;
	display: flex;
	flex-wrap: wrap;
	align-items:stretch;
	justify-content: space-between;
}

.content_youtube {
	width:100%;
	flex-basis:100%;
}
.start_time {
	font-size:18px;
	font-weight:500;
}

.inner100 {
	width:100%;
	flex-basis:100%;
	margin-bottom:30px;
	position:relative;
}
.inner100B {
	width:100%;
	flex-basis:100%;
	position:relative;
}
.inner400 {
	width:400px;
	flex-basis:400px;
	position:relative;
}
.inner60 {
	width:calc(100% - 400px);
	flex-basis:calc(100% - 400px);
	position:relative;
	padding-right:20px;
}
.inner50 {
	width:calc(50% - 10px);
	flex-basis:calc(50% - 10px);
	position:relative;
}
.inner50_single {
	width:calc(50% - 10px);
	flex-basis:calc(50% - 10px);
	position:relative;
}
.inner200 {
	width:180px;
	flex-basis:180px;
	padding-right:10px;
}
.inner200B {
	width:calc(100% - 180px);
	flex-basis:calc(100% - 180px);
}
@media screen and (max-width: 800px) {
	.inner400,.inner60 {
		width: 100%;
		flex-basis: 100%;
	}
}
@media screen and (max-width: 599px) {
	.inner50 {
		width: 100%;
		flex-basis: 100%;
	}
	.inner50_single {
		width: 100%;
		flex-basis: 100%;
	}
}
.bgwhite,.bgwhite2 {
	background:#FFF;
	display: flex;
	flex-wrap: wrap;
	align-items:stretch;
	justify-content: space-between;
	padding:20px 30px;
	margin-bottom:60px;
	width:100%;
	flex-basis:100%;
}
.bgwhite div {
	padding-bottom:20px;
}
.bgwhite div:last-child {
	padding-bottom:0px;
}

.bglightblue {
    background-color: #e6edf2;
	display: flex;
	flex-wrap: wrap;
	align-items:stretch;
	justify-content: space-between;
	padding:20px 30px;
	margin-bottom:60px;
	width:100%;
	flex-basis:100%;
}
.bglightblue div {
	padding-bottom:20px;
}
.bglightblue div:last-child {
	padding-bottom:0px;
}
@media screen and (max-width: 768px) {
	.bgwhite {
		padding:10px 20px;
		margin-bottom:40px;
	}
	.bgwhite div {
		padding-bottom:10px;
	}
	.bglightblue {
		padding:10px 20px;
		margin-bottom:40px;
	}
	.bglightblue div {
		padding-bottom:10px;
	}
}
@media screen and (max-width: 599px) {
	.bgwhite {
		padding:15px;
		margin-bottom:30px;
	}
	.bgwhite div {
		padding-bottom:5px;
	}
	.bglightblue {
		padding:15px;
		margin-bottom:30px;
	}
	.bglightblue div {
		padding-bottom:5px;
	}
}
.bgdefault {
	display: flex;
	flex-wrap: wrap;
	align-items:stretch;
	justify-content: space-between;
	margin-bottom:60px;
	width:100%;
	flex-basis:100%;
}
.bgdefault div {
	padding-bottom:20px;
}
.bgdefault div:last-child {
	padding-bottom:0px;
}
@media screen and (max-width: 768px) {
	.bgdefault {
		margin-bottom:40px;
	}
	.bgdefault div {
		padding-bottom:10px;
	}
}
@media screen and (max-width: 599px) {
	.bgdefault {
		margin-bottom:30px;
	}
}

.content-image {
	width:100%;
	flex-basis:100%;
}
.single-image {
	width:100%;
	flex-basis:100%;
	padding-bottom:20px!important;
	position:relative;
}
.company_box {
	width:100%;
	flex-basis:100%;
	padding-bottom:100px;
}
.content_title {
	width:100%;
	flex-basis:100%;
	color:#232323;
	font-size:24px;
	line-height:1.4;
	font-weight:500;
	padding-bottom:20px;
}
.content_subtitle {
	width:100%;
	flex-basis:100%;
	color:#00A051;
	font-size:22px;
	line-height:1.4;
	font-weight:500;
}
.content_subtitle a {
	color:#00A051;
	text-decoration:none;
}
.underline {
	border-bottom:1px solid #707070;
	padding-bottom:10px!important;
	margin-bottom:20px;
}
@media screen and (max-width: 768px) {
	.underline {
		margin-bottom:10px;
	}
}

.case_single_btn {
	display:inline-block;
	background:#00A051;
	color:#FFF;
	padding:5px 10px;
	font-size:15px;
	line-height:1.5;
	position:relative;
	margin-top:15px;
}
.case_single_btn a {
	color:#FFF;
	text-decoration:none;
	display:block;
}
.content_detail, .content_url {
	width:100%;
	flex-basis:100%;
	color:#656565;
	font-size:15px;
	line-height:1.6;
	font-weight:400;
	word-wrap: break-word;
}
.content_detail a {
	color:#656565;
	text-decoration:none;
}
.content_url:hover {
	color:#656565;
	text-decoration:underline;
}
.content_url a {
	color:#656565;
	text-decoration:none;
}
.content_detail_shomei {
	line-height:2.5;
	text-align:right;
}
.content_detail_list {
	position:relative;
	padding:0!important;
	padding-bottom:8px!important;
	padding-left:15px!important;
}
.content_detail_list::before {
	content:'';
	position:absolute;
	top:8px;
	left:0;
	width:10px;
	height:10px;
	background:#00A051;
	border-radius:10px;
}
@media screen and (max-width: 599px) {
	.content_detail_list {
		padding-bottom:6px!important;
		padding-left:12px!important;
	}
	.content_detail_list::before {
		width:8px;
		height:8px;
	}
}
.single_detail {
	width:100%;
	flex-basis:100%;
	color:#656565;
	font-size:15px;
	line-height:1.6;
	font-weight:400;
	padding-bottom:40px!important;
}
.content_stitle {
	width:100%;
	flex-basis:100%;
	color:#00A051;
	font-size:20px;
	line-height:1.4;
	font-weight:500;
}
.content_title_right {
	width:100%;
	flex-basis:100%;
	color:#4D4D4D;
	font-size:20px;
	line-height:1.4;
	font-weight:600;
}
.content_subtitle_right {
	width:100%;
	flex-basis:100%;
	color:#00A051;
	font-size:18px;
	line-height:1.4;
	font-weight:500;
}
.content_subtitle_right2 {
	width:100%;
	flex-basis:100%;
	color:#4D4D4D;
	font-size:18px;
	line-height:1.4;
	font-weight:500;
}
.content_r {
	font-weight:500;
}
@media screen and (max-width: 768px) {
	.content_title {
		font-size:22px;
	}
	.content_subtitle {
		font-size:20px;
	}
	.content_detail {
		font-size:14px;
	}
	.content_stitle {
		font-size:18px;
	}
}
@media screen and (max-width: 599px) {
	.content_title {
		font-size:20px;
	}
	.content_subtitle {
		font-size:18px;
	}
	.content_detail {
		font-size:14px;
	}
	.content_stitle {
		font-size:16px;
	}
	.single_detail {
		font-size:14px;
	}
}




.sdgs_box {
	width:100%;
	flex-basis:100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.award_box {
	width:100%;
	flex-basis:100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	border-bottom:1px solid #707070;
	padding:20px 0!important;
}
.award_box:first-child {
	border-top:1px solid #707070;
}
.award_left {
	width:calc(100% - 330px);
	flex-basis:calc(100% - 330px);
}
.award_right {
	width:300px;
	flex-basis:300px;
	display: flex;
	flex-wrap: wrap;
}
@media screen and (max-width: 768px) {
	.award_left {
		width:100%;
		flex-basis:100%;
	}
	.award_right {
		width:100%;
		flex-basis:100%;
	}
	.award_right img{
		max-width:400px;
		margin: 0 auto;
	}
}
@media screen and (max-width: 599px) {
	.award_right img{
		max-width:none;
	}
}
.award_image {
	width:100%;
	flex-basis:100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.award_image_inner {
	width:calc(50% - 20px);
	flex-basis:calc(50% - 20px);
	padding:0!important;
}
@media screen and (max-width: 768px) {
	.award_image_inner {
		width:calc(50% - 10px);
		flex-basis:calc(50% - 10px);
	}
}
@media screen and (max-width: 599px) {
	.award_image_inner {
		width:100%;
		flex-basis:100%;
	}
	.award_image_inner:first-child {
		margin-top:10px;
		margin-bottom:10px;
	}
}


.sdgs_detail_box {
	width:calc(100% - 360px);
	flex-basis:calc(100% - 360px);
}
.sdgs_detail {
	width:100%;
	color:#656565;
	font-size:16px;
	line-height:1.6;
	font-weight:400;
}
.sdgs_icon_box {
	width:330px;
	flex-basis:330px;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	padding:0!important;
}
.sdgs_icon {
	width:150px;
	flex-basis:150px;
	margin-left:10px;
	margin-bottom:10px;
	padding:0!important;
}
@media screen and (max-width: 599px) {
	.sdgs_detail_box {
		width:100%;
		flex-basis:100%;
	}
	.sdgs_icon_box {
		width:100%;
		flex-basis:100%;
		justify-content: start;
	}
	.sdgs_icon {
	width: calc(31% - 10px);
	flex-basis: calc(31% - 10px);
		margin: 0 5px;
	}
}
.sdgs_b3 {
	font-size:21px;
	font-weight:600;
	padding-bottom:10px!important;
}
@media screen and (max-width: 768px) {
	.sdgs_b3 {
		font-size:18px;
	}
}
@media screen and (max-width: 599px) {
	.sdgs_b3 {
		font-size:16px;
	}
}
.effort_box {
	width:100%;
	flex-basis:100%;
}




.arrow_box {
	width:100%;
	position:relative;
	margin-top:-30px;
	margin-bottom:30px;
}
.arrow_box img {
	max-width:100px;
	margin:0 auto;
}
@media screen and (max-width: 768px) {
	.arrow_box img {
		max-width:80px;
	}
	.arrow_box {
	margin-top:-20px;
	margin-bottom:20px;
	}
}
@media screen and (max-width: 599px) {
	.arrow_box img {
		max-width:60px;
	}
	.arrow_box {
	margin-top:-15px;
	margin-bottom:15px;
	}
}




.history_box{
	width:100%;
	flex-basis:100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: stretch;
	border-bottom:1px solid #707070;
	padding:20px 0!important;
}
.history_box:first-child {
	border-top:1px solid #707070;
}
.history_date {
	width:90px;
	flex-basis:90px;
	color:#4D4D4D;
	font-size:18px;
	font-weight:500;
	line-height:1.6;
	padding-bottom:0!important;
	text-align:left;
}
.history_date2 {
	width:50px;
	flex-basis:50px;
	color:#4D4D4D;
	font-size:18px;
	font-weight:500;
	line-height:1.6;
	text-align:right;
	padding-bottom:0!important;
}
.history_text {
	width:calc(100% - 140px);
	flex-basis:calc(100% - 140px);
	color:#4D4D4D;
	font-size:18px;
	font-weight:400;
	line-height:1.6;
	padding-bottom:0!important;
	padding-left:40px;
}
@media screen and (max-width: 599px) {
	.history_text {
	width:100%;
	flex-basis:100%;
	padding-left:0px;
	padding-top:5px;
	}
}

.history_photo_box{
	width:100%;
	flex-basis:100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.history_photo_inner {
	width:calc(33.33% - 10px);
	flex-basis:calc(33.33% - 10px);
}
.history_photo_inner_none {
	width:calc(33.33% - 10px);
	flex-basis:calc(33.33% - 10px);
	padding:0px!important;
}
@media screen and (max-width: 768px) {
	.history_photo_inner, .history_photo_inner_none {
		width:calc(50% - 10px);
		flex-basis:calc(50% - 10px);
	}
}
@media screen and (max-width: 599px) {
	.history_photo_inner, .history_photo_inner_none {
		width:calc(50% - 5px);
		flex-basis:calc(50% - 5px);
	}
}




.slogan_box {
	width:100%;
	flex-basis:100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.slogan_inner {
	width:calc(50% - 10px);
	flex-basis:calc(50% - 10px);
}
@media screen and (max-width: 599px) {
	.slogan_inner {
		width:calc(50% - 5px);
		flex-basis:calc(50% - 5px);
	}
}
.slogan_board {
	border:1px solid #ccc;
}



.outline_name {
	width:200px;
	flex-basis:200px;
	color:#4D4D4D;
	font-size:18px;
	font-weight:500;
	line-height:1.6;
	padding-bottom:0!important;
}
.outline_right {
	width:calc(100% - 200px);
	flex-basis:calc(100% - 200px);
}

.outline_right a {
	color:#00A051;
}
.outline_text {
	color:#4D4D4D;
	font-size:18px;
	font-weight:400;
	line-height:1.6;
	padding-bottom:0!important;
	padding-left:40px;
	padding-bottom:20px!important;
}
.outline_text:last-child {
	padding-bottom:0px!important;
}
@media screen and (max-width: 1000px) {
	.outline_name {
		width:100%;
		flex-basis:100%;
		padding-bottom:10px!important;
	}
	.outline_right {
		width:100%;
		flex-basis:100%;
	}
	.outline_text {
	padding-left:0px;
	}
}


.link_name {
	width:360px;
	flex-basis:360px;
	color:#4D4D4D;
	font-size:18px;
	font-weight:500;
	line-height:1.6;
	padding-bottom:0!important;
}
.link_tel {
	width:160px;
	flex-basis:160px;
	color:#4D4D4D;
	font-size:18px;
	font-weight:400;
	line-height:1.6;
	padding-bottom:0!important;
}
.link_url {
	width:calc(100% - 520px);
	flex-basis:calc(100% - 520px);
	color:#4D4D4D;
	font-size:18px;
	font-weight:400;
	line-height:1.6;
	padding-bottom:0!important;
	word-wrap: break-word;
}
.link_tel a, .link_url a {
	color:#00A051;
	text-decoration:none;
}
@media screen and (max-width: 1000px) {
	.link_name {
		width:100%;
		flex-basis:100%;
		padding-bottom:10px!important;
	}
	.link_url {
		width:calc(100% - 160px);
		flex-basis:calc(100% - 160px);
	}
}
@media screen and (max-width: 768px) {
	.link_tel {
		width:100%;
		flex-basis:100%;
		padding-bottom:10px!important;
	}
	link_url {
		width:100%;
		flex-basis:100%;
	}
}

.vision_box {
	width:100%;
	flex-basis:100%;
}




.city_box {
	width:100%;
	flex-basis:100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.city_box_icon {
	width:110px;
	flex-basis:110px;
	height:110px;
	border-radius:110px;
	margin:15px;
	overflow:hidden;
}
@media screen and (max-width: 1000px) {
	.city_box_icon {
	width:90px;
	flex-basis:90px;
	height:90px;
	margin:5px;
	}
}
@media screen and (max-width: 599px) {
	.city_box_icon {
	width:75px;
	flex-basis:75px;
	height:75px;
	}
}

.profile_box {
	width:100%;
	flex-basis:100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	flex-direction: row;
}
.bgdefault:nth-child(odd) .profile_box{
	flex-direction: row-reverse;
}
.profile_left, .profile_right {
	width:calc(50% - 20px);
	flex-basis:calc(50% - 20px);
}
@media screen and (max-width: 768px) {
	.profile_left, .profile_right {
		width:calc(50% - 10px);
		flex-basis:calc(50% - 10px);
	}
}

@media screen and (max-width: 599px) {
	.profile_left, .profile_right {
		width:100%;
		flex-basis:100%;
	}
}


.smart_box {
	width:100%;
	flex-basis:100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}



.future_pad {
	padding-bottom:40px!important;
}
@media screen and (max-width: 768px) {
	.future_pad {
		padding-bottom:30px!important;
	}
}

.future_subtitle {
	width:100%;
	flex-basis:100%;
	color:#000000;
	font-size:22px;
	line-height:1.4;
	font-weight:500;
	padding:5px 20px!important;
	border-radius:100px;
	text-align:center;
	margin-top:10px;
	margin-bottom:20px;
}
.br599{display:none;}
@media screen and (max-width: 768px) {
	.future_subtitle {
		font-size:20px;
	}
}
@media screen and (max-width: 599px) {
	.future_subtitle {
		font-size:18px;
		text-align:left;
	}
	.br599{
		display:block;
	}
}
.future01 {
	border:2px solid #DCD901;
}
.future02 {
	border:2px solid #E99900;
}
.future03 {
	border:2px solid #F44207;
}

.content_subtitle span {
	display:inline-block;
	white-space: nowrap;
}




.inner50_case {
	width:calc(50% - 10px);
	flex-basis:calc(50% - 10px);
	position:relative;
}
.content_subtitle_case,
.content_subtitle_case2 {
	padding-left:15px;
	position:relative;
}
.content_subtitle_case::after {
	content:'';
	position:absolute;
	left:0;
    top: 50%;
	width:10px;
	height:10px;
	border-radius:10px;
	background:#232323;
    transform: translateY(-50%);
}
.content_subtitle_case2::after {
    content: '';
    width: 0;
    height: 0;
    border-top: 8px solid transparent;
    border-bottom: 8px solid transparent;
    border-left: 10px solid #00A051;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}
.inner_caseinner100 {
	width:100%;
	padding-bottom:20px;
}
.inner_caseinner100:last-child {
	padding-bottom:0;
}
@media screen and (max-width: 768px) {
	.content_subtitle_case::after {
		top:10px;
	}
}
@media screen and (max-width: 599px) {
	.inner50_case {
		width:100%;
		flex-basis:100%;
		margin-bottom:10px;
	}
	.content_subtitle_case::after {
		top:8px;
	}
	.inner_caseinner100 {
		padding-bottom:15px;
	}
}

.future_first {
	margin-top:10px;
}
.future_icon_box {
	width:calc(50% - 10px);
	flex-basis:calc(50% - 10px);
}
@media screen and (max-width: 599px) {
	.future_icon_box {
		width:100%;
		flex-basis:100%;
	}
}
.future_25 {
	width:calc(25% - 10px);
	flex-basis:calc(25% - 10px);
}
@media screen and (max-width: 768px) {
	.future_25 {
	width:calc(50% - 10px);
	flex-basis:calc(50% - 10px);
	}
}
.future_33 {
	width:calc(33.3333% - 10px);
	flex-basis:calc(33.3333% - 10px);
	background:#FFF;
	padding:20px!important;
}
.future_33 .content_images {
}
@media screen and (max-width: 768px) {
	.future_33 {
	width:calc(50% - 10px);
	flex-basis:calc(50% - 10px);
	padding:10px!important;
	}
}

.future_25_title {
	width:100%;
	flex-basis:100%;
	font-size:16px;
	line-height:1.6;
	color:#656565;
	font-weight:500;
	text-align:center;
}


.future33 {
	width:calc(33.3333% - 10px);
	flex-basis:calc(33.3333% - 10px);
	background:rgba(255,255,255,1);
	padding:20px;
}
@media screen and (max-width: 768px) {
	.future33 {
		padding:10px;
	}
}
@media screen and (max-width: 599px) {
	.future33 {
		width:100%;
		flex-basis:100%;
	}
}

.cs_icon {
	width:calc(33.3333% - 10px);
	flex-basis:calc(33.3333% - 10px);
}
@media screen and (max-width: 599px) {
	.cs_icon {
		width:calc(100% - 40px);
		flex-basis:calc(100% - 40px);
		margin:0 20px 10px 20px;
	}
}

.cs_contact_box {
	width:100%;
	flex-basis:100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.cs_contact {
	width:calc(50% - 20px);
	flex-basis:calc(50% - 20px);
	background:rgba(0,160,81,0.1);
	font-size:18px;
	line-height:1.6;
	font-weight:500;
	color:#00A051;
	text-align:center;
	padding:20px;
	transition:0.3s;
}
.cs_contact100 {
	width:100%;
	flex-basis:100%;
	background:rgba(0,160,81,0.1);
	font-size:18px;
	line-height:1.6;
	font-weight:500;
	color:#00A051;
	text-align:center;
	padding:20px;
	transition:0.3s;
}
@media(hover: hover) {
	.cs_contact:hover {
	background:rgba(0,160,81,0.3);
	}
}
@media screen and (max-width: 768px) {
	.cs_contact {
		width:100%;
		flex-basis:100%;
		margin-bottom:10px;
	}
}

.cs_contact span, .cs_contact100 span {
	padding:10px 0;
}
.cs_contact a, .cs_contact100 a {
	color:#00A051;
	text-decoration:none;
	display:block;
}

.content_images {
	width:100%;
	flex-basis:100%;
}
.content_images_font a {
	text-decoration:none;
	color:#656565;
}
.cs_max img {
	max-width:350px;
	margin:0 auto;
}
@media screen and (max-width: 599px) {
.cs_max img {
	max-width:300px;
	margin:0 auto;
}
}
.cs_images {
	width:100%;
	flex-basis:100%;
}
.cs_images img {
	max-width:680px;
	margin:0 auto;
	padding:0 10px;
}

.telnumber_box {
	width:100%;
	flex-basis:100%;
	text-align:center;
	font-weight:500;
	font-size:42px;
	font-family: "DIN 2014", sans-serif;
	padding:10px 0 20px 0;
	padding-bottom:0;
}
.telnumber_box span {
	font-size:18px;
}
.cs_btn {
	width:100%;
	flex-basis:100%;
	max-width:400px;
	margin:10px;
	color:#FFF;
	background:#00A051;
	border:1px solid #00A051;
	padding:20px 20px;
	text-align:center;
	position:relative;
	transition:0.3s;
	margin: 0 auto;
}
.cs_btn a {
	color:#FFF;
	text-decoration:none;
	display:block;
}
.cs_btn::after {
    content: '';
    display: block;
    width: 10px;
    height: 10px;
    border-top: 2px solid #FFF;
    border-left: 2px solid #FFF;
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%) rotate(135deg);
}

@media(hover: hover) {
	.cs_contact:hover .cs_btn {
		background:#FFF;
	}
	.cs_contact:hover .cs_btn::after {
		border-top: 2px solid #00A051;
		border-left: 2px solid #00A051;
	}
	.cs_contact:hover .cs_btn {
		color:#00A051;
	}
}


/***************************************************/

.catalog_box {
	width:100%;
	flex-basis:100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding:20px 0;
}
.catlog_inner {
	width:calc(33.3333% - 40px);
	flex-basis:calc(33.3333% - 40px);
	transition:0.3s;
}
.catlog_inner2 {
	width:calc(25% - 20px);
	flex-basis:calc(25% - 20px);
	transition:0.3s;
}
.catlog_inner2_space {
	width:calc(25% - 20px);
	flex-basis:calc(25% - 20px);
}
@media screen and (max-width: 768px) {
	.catlog_inner {
		width:calc(50% - 20px);
		flex-basis:calc(50% - 20px);
	}
	.catlog_inner2_space,
	.catlog_inner2 {
		width:calc(33.3333% - 20px);
		flex-basis:calc(33.3333% - 20px);
		margin-bottom:20px;
	}
}
@media screen and (max-width: 599px) {
	.catlog_inner {
		width:100%;
		flex-basis:100%;
		max-width:350px;
		margin:0 auto;
	}
	.catlog_inner2_space,
	.catlog_inner2 {
		width:calc(33.3333% - 20px);
		flex-basis:calc(33.3333% - 20px);
	}
}
.catalog_image {
	width:100%;
	flex-basis:100%;
	border:1px solid #656565;
	padding:0!important;
	position:relative;
}
.catalog_name {
	font-size:14px;
	line-height:1.5;
	text-align:center;
	color:#656565;
	padding-top:10px;
}

.catlog_inner:hover {
	opacity:0.6;
}
.catlog_pre {
	width:100%;
	height:100%;
	background:rgba(255,255,255,0.8);
	z-index:2;
	position:absolute;
	top:0;
	left:0;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items:center;
	color:#232323;
}


/***************************************************/
.side_box {
	width:280px;
	flex-basis:280px;
	text-align:center;
	margin-left:20px;
	position:relative;
}
@media screen and (max-width: 768px) {
	.side_off {
		display:none;
	}
	.side_box {
		width:100%;
		flex-basis:100%;
		max-width:480px;
		margin:0 auto;
	}
}
@media screen and (max-width: 599px) {
	.side_box {
		max-width:300px;
	}
}
.product_side_title {
	width:100%;
	text-align:center;
	font-weight:400;
	font-size:14px;
	line-height:1.5;
	padding:10px 0;
	position:relative;
	color:#FFF;
	margin-top:15px;
	padding-left:15px;
	padding-right:30px;
	text-align:left;
}
.product_side_bg {
	background:#00A051!important;
	color:#FFF!importan;
}
.product_side_title::after {
    content: '';
    display: block;
    width: 10px;
    height: 10px;
    border-top: 2px solid #FFF;
    border-left: 2px solid #FFF;
    position: absolute;
    right: 15px;
    top: 50%;
	margin-top:-2px;
    transform: translateY(-50%) rotate(225deg);
}
.ac_open::after {
	margin-top:2px;
    transform: translateY(-50%) rotate(45deg);
}
ul.product_side_box {
	list-style:none;
}
ul.product_side_box li {
	width:100%;
	text-align:left;
	font-weight:400;
	font-size:14px;
	line-height:1.5;
	padding:10px;
	position:relative;
	color:#000;
	padding-left:40px;
	border:1px solid #00A051;
	border-bottom:0px solid #00A051;
	background:rgba(255,255,255,1);
}
ul.product_side_box li:last-child {
	border-bottom:1px solid #00A051;
}
ul.product_side_box li a {
	color:#000;
	text-decoration:none;
	display:block;
}
ul.product_side_box li::after {
    content: '';
    display: block;
    width: 10px;
    height: 10px;
    border-top: 2px solid #00A051;
    border-left: 2px solid #00A051;
    position: absolute;
    left: 15px;
    top: 50%;
    transform: translateY(-50%) rotate(135deg); /* 右向きに回転 */
}

ul.product_side_box li.current2 {
	background:rgba(0,160,81,0.1);
}
.side_btn {
	width:100%;
	border:1px solid #00A051;
	background:#FFF;
	color:#00A051;
	margin-top:20px;
	padding:20px;
	font-size:18px;
	font-weight:500;
	text-align:center;
	position:relative;
	transition:0.3s;
}
.side_btn2 {
	width:100%;
	border:1px solid #00A051;
	background:#00A051;
	margin-top:20px;
	position:relative;
	transition:0.3s;
}
.side_btn2B {
	width:100%;
	flex-basis:100%;
	color:#FFF;
	background:#00A051;
	border:1px solid #00A051;
	padding:15px!important;
	text-align:center;
	position:relative;
	transition:0.3s;
}
@media screen and (max-width: 768px) {
	.side_btn2B {
	padding:12px!important;
	}
}
.side_btn2 a,
.side_btn2B a {
	color:#FFF;
	text-decoration:none;
	display:block;
}
.side_btn2B::after {
    content: '';
    display: block;
    width: 10px;
    height: 10px;
    border-top: 2px solid #FFF;
    border-left: 2px solid #FFF;
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%) rotate(135deg);
}


.side_btn::after {
    content: '';
    width: 10px;
    height: 10px;
    border-top: 2px solid #00A051;
    border-left: 2px solid #00A051;
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%) rotate(135deg);
	transition:0.3s;
}
.side_btn a {
	color:#00A051;
	text-decoration:none;
	display:block;
}
@media(hover: hover) {
	.side_btn:hover {
	background:#00A051;
	color:#FFF;
	}
	.side_btn:hover a {
	color:#FFF;
	}
	.side_btn:hover::after {
    border-top: 2px solid #FFF;
    border-left: 2px solid #FFF;
	}
}

/***************************************************/

.case_swipe,.knowledge_swipe {
    width: 100%;
	padding:0 40px;
	position:relative;
}







.swiper  {
	width: 100%;
	height:auto;
	position:relative;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
.swiper-slide {
	text-align: left;
	font-size: 18px;
	background: #FFF;
	display: flex;
	justify-content: center;
	align-items: center;
	position:relative;
	height:auto!important;
}
.swiper .swiper-slide-item { 
	height: 100%;
}
.swiper .swiper-slide-item1 { 
	height: 100%;
	background:#00A051;
}
.swiper-button-prev {
	left:-100px!important;
}
.swiper-button-next {
	right:-100px!important;
}
.swiper-button-prev-a,.swiper-button-prev-b {
	position:absolute;
	top:50%;
	left:0;
	width:25px;
	height:30px;
	z-index:2;
  background: #00A051;
  height: calc(tan(60deg) * 60px / 2);
  width:10px;
	clip-path: polygon(0% 50%, 100% 0%, 100% 100%);
    transform: translateY(-50%);
}
.swiper-button-next-a,.swiper-button-next-b {
	position:absolute;
	top:50%;
	right:0;
	width:25px;
	height:30px;
	z-index:2;
  background: #00A051;
  height: calc(tan(60deg) * 60px / 2);
  width:10px;
	clip-path: polygon(0% 0%, 100% 50%, 0% 100%);
    transform: translateY(-50%);
}

.swiper-slide1 {
	text-align: center;
	background:#00A051;
	padding:20px;
	width:100%;
	height:100%!important;
	min-height:400px;
}
.swiper-slide1 a {
	display:block;
}
.swiper-slide1 .viewmore {
	color:#FFF;
	font-size:21px;
	font-weight:500;
	line-height:1.5;
	position:absolute;
	top:50%;
	left:50%;
    transform: translate(-50%,-50%);
	width:100%;
}
.swiper-slide1 .viewmore a {
	color:#FFF;
	text-decoration:none;
	display:block;
}
.swiper-title {
	width:100%;
	flex-basis:100%;
	text-align:center;
	color:#FFF;
	font-family: "DIN 2014", sans-serif;
	font-size:28px;
	line-height:1.2;
	font-weight:600;
}
@media screen and (max-width: 600px) {
	.swiper-title {
		font-size:6vw;
	}
}
.swiper-image {
	width: 100%;
	height:auto;
    position: relative;
	z-index:12;
}
.swiper-image img {
    transition: opacity 0.5s;
	padding:5px 10px;
}
.swiper-image:hover img:first-of-type {
    opacity: 0;
}
.swiper-image img:last-of-type {
    position: absolute;
    top: 0px;
    left: 0px;
    opacity: 0;
}
.swiper-image:hover img:last-of-type {
    opacity: 1;
}
.swiper-title2 {
	width:100%;
	flex-basis:100%;
	text-align:center;
	color:#FFF;
	font-size:24px;
	font-weight:600;
	padding:10px 0;
}
.swiper-detail {
	width:100%;
	flex-basis:100%;
	text-align:left;
	color:#FFF;
	font-size:14px;
	line-height:1.6;
	padding-top:10px;
}



/***************************************************/
.case_box {
	width:100%;
	display: flex;
	flex-wrap: wrap;
	align-items:center;	
	justify-content: center;
}
.case_btn, .trivia_btn {
	width:300px;
	flex-basis:300px;
	margin:10px;
	color:#00A051;
	background:#FFF;
	padding:20px 0;
	padding-right:30px;
	text-align:center;
	position:relative;
	border:1px solid #00A051;
}
@media screen and (max-width: 768px) {
	.case_box {
		justify-content: space-between;
	}
	.case_btn, .trivia_btn {
		width:calc(50% - 5px);
		flex-basis:calc(50% - 5px);
		margin:0 5px;
		padding:15px 30px;
	}
}
@media screen and (max-width: 499px) {
	.case_btn, .trivia_btn {
	width:300px;
	flex-basis:300px;
		margin:0 auto;
	}
	.trivia_btn {
		margin-top:10px;
	}
}
.case_btn a , .trivia_btn a {
	color:#00A051;
	text-decoration:none;
	display:block;
}
.case_btn::after, .trivia_btn::after {
    content: '';
    display: block;
    width: 10px;
    height: 10px;
    border-top: 2px solid #00A051;
    border-left: 2px solid #00A051;
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%) rotate(135deg);
}
.case_box .current {
	color:#FFF;
	background:#00A051;
}
.case_box .current a {
	color:#FFF;
}
.case_box .current::after {
    border-top: 2px solid #FFF;
    border-left: 2px solid #FFF;
}


ul.case_items {
	width:100%;
	list-style:none;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding-top:20px;
	padding-bottom:50px;
}
@media screen and (max-width: 768px) {
	.case_items {
		padding-top:10px;
		padding-bottom:40px;
	}
}
@media screen and (max-width: 599px) {
	.case_items {
		padding-top:0px;
		padding-bottom:30px;
	}
}
ul.case_items li {
	width:calc(33.3333% - 10px);
	flex-basis:calc(33.3333% - 10px);
	background:rgba(255,255,255,1);
	position:relative;
	padding-bottom:40px;
	margin-bottom:15px;
}
ul.case_items li.spaces {
	width:calc(33.3333% - 10px);
	flex-basis:calc(33.3333% - 10px);
	padding:0;
	background:transparent;
}
@media screen and (max-width: 1280px) {
	ul.case_items li, ul.case_items li.spaces {
		width:calc(33.3333% - 10px);
		flex-basis:calc(33.3333% - 10px);
	}
}
@media screen and (max-width: 768px) {
	ul.case_items li, ul.case_items li.spaces {
		width:calc(50% - 10px);
		flex-basis:calc(50% - 10px);
	}
	ul.case_items li {
		margin-bottom:10px;
	}
}
@media screen and (max-width: 599px) {
	ul.case_items li, ul.case_items li.spaces {
		width:100%;
		flex-basis:100%;
	}
}
.case_image {
	width:100%;
}
.case_item_box {
	width:100%;
	padding:20px;
}
.case_item_name {
	width:100%;
	font-size:18px;
	line-height:1.4;
	font-weight:500;
	color:#000;
	padding-bottom:10px;
}
.case_category {
	width:100%;
    border: 1px solid #00A051;
	font-size:18px;
	line-height:1.4;
	font-weight:500;
	color:#00A051;
	background:#fff;
	text-align:center;
	padding:5px;
	z-index:11;
	transition:0.3s;
	margin-top:10px;
}
.case_category a {
	color:#00A051;
	text-decoration:none;
	display:block;
}

@media(hover: hover) {
	.case_category:hover {
	background:#00A051;
	color:#FFF;
	}
	.case_category:hover a {
	color:#FFF;
	}
}

.case_item_image {
	width:100%;
	overflow:hidden;
	position:relative;
}
.case_item_image img {
	position:relative;
	z-index:1;
}
@media(hover: hover) {
	ul.case_items li:hover .case_item_image img {
		transform:scale(1.1);
		transition:0.3s;
	}
	ul.case_items li:hover .bgBK {
		background:rgba(0,0,0,0.0);
	}
}







.case_singlebox {
	width: 100%;
	margin:0 auto;
	display: flex;
	flex-wrap: wrap;
	align-items:stretch;
	justify-content:space-between;
}
.case_single_name {
	width:100%;
	padding-bottom:30px;
	font-size:24px;
	font-weight:400;
	line-height:1.4;
	position:relative;
}
.single_cate {
	display:inline-block;
	padding:10px;
	border:1px solid #00A051;
	color:#00A051;
	background:#FFF;
	font-size:18px;
	font-weight:500;
}
.single_cate a {
	color:#00A051;
	text-decoration:none;
	display:block;
}
.single_cate:hover {
	background:rgba(0,160,81,0.1);
}
.single_first_image {
	width:100%;
}
.single_block {
	width:100%;
	padding:30px 0;
	border-bottom:1px solid #00A051;
}
.single_block2 {
	width:100%;
	padding:30px 0 0 0;;
}
.single_block0 {
	width:100%;
	padding:10px 0 30px 0;
}
@media screen and (max-width: 768px) {
	.single_block0 {
		padding:20px 0;
	}
	.single_block {
		padding:20px 0;
	}
	.single_block2 {
		padding:20px 0 0 0;
	}
}
.single_tab {
	width:100%;
	display: flex;
	flex-wrap: wrap;
	align-items:flex-start;	
	justify-content: space-between;
	padding-bottom:10px;
}
.single_tab_name {
	width:180px;
	flex-basis:180px;
	background:#00A051;
	color:#FFF;
	font-size:16px;
	line-height:1.6;
	text-align:center;
	padding-top:3px;
	padding-bottom:3px;
}
.single_tab_inner {
	width:calc(100% - 180px);
	flex-basis:calc(100% - 180px);
	color:#232323;
	font-size:16px;
	line-height:1.6;
	padding-left:10px;
	padding-top:3px;
	padding-bottom:3px;
}
@media screen and (max-width: 768px) {
	.single_tab_name, .single_tab_inner {
		font-size:14px;
	}
}
@media screen and (max-width: 599px) {
	.single_tab_name, .single_tab_inner {
		width:100%;
		flex-basis:100%;
		text-align:left;
		padding-left:5px;
	}
	.single_tab_inner {
		padding-left:0px;
	}
}



.case_side_title,
.case_side_title2 {
	width:100%;
	text-align:left;
	font-weight:400;
	font-size:14px;
	line-height:1.5;
	padding:10px;
	position:relative;
	color:#000;
	padding-left:40px;
	border:1px solid #00A051;
	background:#FFF;
	margin-bottom:15px;
}
.case_side_title2 {
	margin-bottom:0;
	border-bottom:0px solid #00A051;
}
.case_side_title2:last-child {
	border-bottom:1px solid #00A051;
}
.case_side_title::after,
.case_side_title2::after {
    content: '';
    display: block;
    width: 10px;
    height: 10px;
    border-top: 2px solid #00A051;
    border-left: 2px solid #00A051;
    position: absolute;
    left: 15px;
    top: 50%;
    transform: translateY(-50%) rotate(135deg); /* 右向きに回転 */
}
.case_side_title a,
.case_side_title2 a {
	color:#00A051;
	text-decoration:none;
	display:block;
}

.case_side_title:hover,
.case_side_title2:hover {
	background:rgba(0,160,81,0.1);
}
.case_side_current {
	background:rgba(0,160,81,0.1);
}
/***************************************************/
.news_box {
	width:100%;
	flex-basis:100%;
	display: flex;
	flex-wrap: wrap;
	align-items:center;	
	justify-content: center;
	background:#FFF;
	padding:30px;
}
@media screen and (max-width: 768px) {
	.news_box {
		padding:20px;
	}
}
@media screen and (max-width: 599px) {
	.news_box {
		padding:20px 10px;
	}
}


ul.news_items {
	width:100%;
	list-style:none;
	display: flex;
	flex-wrap: wrap;
}
ul.news_items li {
	width:100%;
	flex-basis:100%;
	position:relative;
	border-top:1px solid #000;
	padding:20px 0;
	display: flex;
	flex-wrap: wrap;
	align-items:center;	
	justify-content: space-between;
}
ul.news_items li:last-child {
	border-bottom:1px solid #000;
}

.news_date {
	color:#FFF;
	background:#00A051;
    border: 1px solid #00A051;
	font-size:14px;
	line-height:1.4;
	font-weight:500;
	text-align:center;
	padding:3px 10px;
	margin-right:5px;
	display:inline-block;
	width:90px;
	flex-basis:90px;
}
.news_category {
    border: 1px solid #707070;
	font-size:14px;
	line-height:1.4;
	font-weight:500;
	text-align:center;
	padding:3px 10px;
	margin-right:5px;
	color:#656565;
	display:inline-block;
	width:120px;
	flex-basis:120px;
}
.news_category a {
	color:#656565;
	text-decoration:none;
	display:block;
}
.new_item_name {
	width:calc(100% - 220px);
	flex-basis:calc(100% - 220px);
	text-align:left;
	padding: 0 20px;
	font-size:18px;
	font-weight:400;
	line-height:1.4;
	position:relative;
	position:relative;
}
@media screen and (max-width: 768px) {
	ul.news_items li {
		padding:15px 0;
		justify-content: stretch;
	}
	.new_item_name {
		width:100%;
		flex-basis:100%;
		padding: 0;
		padding-top:10px;
		padding-right:25px;
		font-size:16px;
	}
}
@media screen and (max-width: 599px) {
	.news_date, .news_category {
		font-size:12px;
	}
	.new_item_name {
		font-size:14px;
	}
}
.new_item_name::after {
    content: '';
    display: block;
    width: 15px;
    height: 15px;
    border-top: 2px solid #000;
    border-left: 2px solid #000;
    position: absolute;
    right: 5px;
    top: 50%;
    transform: translateY(-50%) rotate(135deg);
}
/***************************************************/
.single_news {
	width:100%;
	flex-basis:100%;
	display: flex;
	flex-wrap: wrap;
	align-items:center;	
}
.new_single_name {
	width:100%;
	padding:30px 0;
	font-size:24px;
	font-weight:400;
	line-height:1.4;
	position:relative;
}
.new_single_content {
	width:100%;
	flex-basis:100%;
	font-size:16px;
	font-weight:400;
	line-height:2;
	position:relative;
	padding-bottom:20px;
}
.new_single_content strong {
	font-weight:500;
	font-size:1.1em;
}
@media screen and (max-width: 599px) {
	.new_single_content {
		font-size:14px;
	}
}
.new_single_content p {
	padding:20px 0;
}
.new_single_content p:last-child {
	padding-bottom:0;
}
.new_single_content strong {
	font-weight:600;
}
.new_single_content a {
	display:inline;
	color:#00A051;
}


/*********************ページャー**********************/
/***************************************************/
ul.company_items {
	width:100%;
	list-style:none;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
ul.company_items li {
	width:calc(33.3333% - 40px);
	flex-basis:calc(33.3333% - 40px);
	position:relative;
	background:rgba(255,255,255,1);
	margin-bottom:40px;
}
ul.company_items li.recruite {
	width:calc(50% - 40px);
	flex-basis:calc(50% - 40px);
}
ul.company_items li.spaces {
	width:calc(33.3333% - 40px);
	flex-basis:calc(33.3333% - 40px);
	padding:0;
	background:transparent;
}
@media screen and (max-width: 1280px) {
	ul.company_items li, ul.company_items li.spaces {
		width:calc(33.3333% - 20px);
		flex-basis:calc(33.3333% - 20px);
	}
ul.company_items li.recruite {
	width:calc(50% - 20px);
	flex-basis:calc(50% - 20px);
}
}
@media screen and (max-width: 768px) {
	ul.company_items li, ul.company_items li.spaces {
		width:calc(50% - 10px);
		flex-basis:calc(50% - 10px);
		margin-bottom:20px;
	}
ul.company_items li.recruite {
	width:calc(50% - 10px);
	flex-basis:calc(50% - 10px);
}
}
@media screen and (max-width: 599px) {
	ul.company_items li, ul.company_items li.spaces {
		width:100%;
		flex-basis:100%;
	}
ul.company_items li.recruite {
		width:100%;
		flex-basis:100%;
}
}




.city_image {
	width:100%;
	position:relative;
	display: flex;
	flex-wrap: wrap;
	align-items:center;	
	justify-content: space-between;
}

.company_image2 {
	width:100%;
	overflow:hidden;
	position:relative;
}
.company_image {
	width:100%;
	overflow:hidden;
	position:relative;
	padding-top:50%;
}
.company_image img {
	position:absolute;
	z-index:1;
	top:50%;
	left:50%;
    transform: translate(-50%, -50%);
}
.top_image_text {
	position:absolute;
	top:50%;
	left:50%;
	text-align:center;
	color:rgba(255,255,255,0.7);
    transform: translate(-50%, -50%);
	z-index:5;
	font-family: "din-condensed", sans-serif;
	font-size:36px;
	transition:0.3s;
	width:100%;
}
  .UpMove {
	animation: UpAnime 0.3s 0.3s forwards;
	opacity:0;
  }
  
  @keyframes UpAnime {
	0% {
		margin-top:100px;
		opacity:0;
	}  
	100% {
		margin-top:0;
		opacity:1;
	}
  }
.bgBK {
	width:100%;
	height:100%;
	background:rgba(0,0,0,0.15);
	transition:0.3s;
	position:absolute;
	top:0;
	left:0;
	z-index:2;
	pointer-events: none;
	mix-blend-mode: multiply;
}
.company_name_box {
	width:100%;
	padding:20px;
	padding-right:40px;
	position:relative;
}
.company_name {
	width:100%;
	font-size:18px;
	line-height:1.4;
	font-weight:500;
	position:relative;
}
.company_subtitle {
	width:100%;
	font-size:14px;
	line-height:1.5;
	font-weight:400;
	color:#656565;
	padding-top:10px;
}
@media screen and (max-width: 768px) {
	.company_name_box {
	padding:15px;
	padding-right:30px;
	}
	.company_name {
	font-size:16px;
	}
	.company_subtitle {
	font-size:12px;
	}
}
.company_name_box::after {
    content: '';
    display: block;
    width: 10px;
    height: 10px;
    border-top: 2px solid #000;
    border-left: 2px solid #000;
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%) rotate(135deg);
}

@media(hover: hover) {
	ul.company_items li:hover .company_image img {
		transform: translate(-50%, -50%) scale(1.1);
		transition:0.3s;
	}
	ul.company_items li:hover .bgBK {
		background:rgba(0,0,0,0.0);
	}
	ul.company_items li:hover .top_image_text {
		color:rgba(255,255,255,0.3);
	}
}


/***************************************************/

  .feature_half1,
  .feature_half2 {
    width: 50%;
    height: 100%;
    position: absolute;
    top: 0;
    z-index: 2;
    cursor: pointer; /* カーソルをポインターに変更 */
  }
  .feature_half1 {
    left: 0;
  }
  .feature_half2 {
    right: 0;
  }
  .feature_image {
    max-width: 100%;
    height: auto;
    display: block;
    opacity: 0; /* 初期状態では透明にしておく */
    transition: opacity 0.5s; /* フェードのトランジションを追加 */
  }
  .fade-in {
    opacity: 1 !important;
  }

.justify_center {
	justify-content: center;
}
.align_center {
	align-items:center;
}
.align_end {
	align-items:flex-end;
}

.feature_case {
	text-align: center;
	background:#00A051;
	padding:20px!important;
	width:calc(33.3333% - 20px);
	flex-basis:calc(33.3333% - 20px);
	margin: 0 10px;
	position:relative;
}
@media screen and (max-width: 900px) {
	.feature_case {
	width:calc(50% - 10px);
	flex-basis:calc(50% - 10px);
	margin: 0 5px;
	}
}
@media screen and (max-width: 600px) {
	.feature_case  {
		padding:10px!important;
	}
	.feature_case .swiper-detail {
		display:none;
	}
	.feature_case .swiper-title {
		font-size:4vw;
	}
	.feature_case .swiper-title2 {
		font-size:4vw;
	}
}
/*********************ページャー**********************/
/***************************************************/
.pageBox {
	width: 100%;
	margin:0 auto;
	display: flex;
	flex-wrap: wrap;
	align-items:center;	
	justify-content: space-between;
	font-size:14px;
	line-height:1.5;
	color:#000;
	padding:10px 0;
}
.prevBox {
	width:120px;
	flex-basis:120px;
	padding:20px 0;
	padding-right:10px;
	position:relative;
	text-align:right;
}
.prevBox::after {
    content: '';
    display: block;
    width: 10px;
    height: 10px;
    border-top: 2px solid #000;
    border-left: 2px solid #000;
    position: absolute;
    left: 15px;
    top: 50%;
    transform: translateY(-50%) rotate(315deg);
}
.nextBox {
	width:120px;
	flex-basis:120px;
	padding:20px 0;
	padding-left:10px;
	position:relative;
	text-align:left;
}
.nextBox::after {
    content: '';
    display: block;
    width: 10px;
    height: 10px;
    border-top: 2px solid #000;
    border-left: 2px solid #000;
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%) rotate(135deg);
}
.listBox {
	width:calc(100% - 260px);
	flex-basis:calc(100% - 260px);
	padding:20px 0;
	text-align:center;
}
.page_space {
	width:120px;
	flex-basis:120px;
}
.prevBox a, .nextBox a, .listBox a {
	color:#000;
	text-decoration:none;
	display:block;
}
@media screen and (max-width: 599px) {
	.pageBox {
		font-size:12px;
	}
	.prevBox, .nextBox, .page_space {
		flex-basis:100px;
	}
	.listBox {
		width:calc(100% - 200px);
		flex-basis:calc(100% - 200px);
	}
}
@media screen and (max-width: 299px) {
	.listBox {
		display:none;
	}
}


/***************************************************/
.technical_box {
	width:100%;
	flex-basis:100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.technical_inner {
	width:calc(33.33% - 10px);
	flex-basis:calc(33.33% - 10px);
	padding:10px;
	display: flex;
	flex-wrap: wrap;
}
.technical_name {
	width:100%;
	flex-basis:100%;
	font-size:18px;
	line-height:1.4;
	font-weight:500;
	color:#000;
	padding-bottom:10px;
	text-align:center;
}
.technical_image {
	width:100%;
	flex-basis:100%;
}
.technical_contact {
	width:100%;
	flex-basis:100%;
	padding:20px 0 40px 0;
}
.technical_contact img {
	width:40%;
	max-width:680px;
	margin:0 auto;
}
@media screen and (max-width: 599px) {
	.technical_contact img {
		width:80%;
		max-width:600px;
	}
}
@media screen and (max-width: 599px) {
	.technical_inner {
		width:100%;
		flex-basis:100%;
		padding:0;
		margin-bottom:10px;
		flex-direction: row-reverse;
		align-items:center;
	}
	.technical_name {
		width:calc(100% - 80px);
		flex-basis:calc(100% - 80px);
		font-size:4.3vw;
		padding-bottom:5px;
		text-align:left;
		padding-left:10px;
	}
	.technical_image {
		width:80px;
		flex-basis:80px;
	}
	.technical_contact img {
		width:70%;
		max-width:300px;
	}
}
/***************************************************/


.machine_box {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	align-items:stretch;	
	justify-content: space-between;
}
.machine50 {
	width: calc(50% - 20px);
	flex-basis:calc(50% - 20px);
}
@media screen and (max-width: 768px) {
	.machine50 {
		width: 100%;
		flex-basis: 100%;
		padding:30px;
	}
	.machine50 img {
		max-width:500px;
		margin:0 auto;
	}
}

.machine_box {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items:flex-start;	
}
.machine_step {
	width:calc(25% - 30px);
	flex-basis:calc(25% - 30px);
}
.machine_step_inner {
	padding:0!important;
	width:100%;
	flex-basis:100%;
	background:#00A051;
	position:relative;
	padding:0!important;
}
.machine_step_inner::after {
    content: '';
    position: absolute;
    top: 50%;
    right: -30px;
    width: 0;
    height: 0;
    border-top: 20px solid transparent;
    border-bottom: 20px solid transparent;
    border-left: 20px solid #00A051;
    transform: translateY(-50%);
}
.machine_step:last-child .machine_step_inner::after {
	display:none;
}
.machine_step_inner_title {
	width:100%;
	position:absolute;
	top:50%;
	left:0;
	color:#FFF;
	padding:0!important;
	font-size:22px;
	text-align:center;
	line-height:1.4;
	font-weight:500;
    transform: translateY(-50%);
	padding:20px;
}
.machine_step .machine_step_inner_title span  {
	color:#FFF;
	white-space: pre;
	font-family: "din-condensed", sans-serif;
	font-size:26px;
	line-height:1.5;
	position:relative;
}
.machine_step:nth-child(2) .machine_step_inner_title span::after {
	content:'1';
}
.machine_step:nth-child(3) .machine_step_inner_title span::after {
	content:'2';
}
.machine_step:nth-child(4) .machine_step_inner_title span::after {
	content:'3';
}
.machine_step:nth-child(5) .machine_step_inner_title span::after {
	content:'4';
}
@media screen and (max-width: 1280px) {
	.machine_step {
		width:calc(25% - 20px);
		flex-basis:calc(25% - 20px);
	}
	.machine_step_inner::after {
    right: -22.5px;
    border-top: 15px solid transparent;
    border-bottom: 15px solid transparent;
    border-left: 15px solid #00A051;
	}
	.machine_step_inner_title {
		font-size:20px;
	}
}
@media screen and (max-width: 768px) {
	.machine_box {
		justify-content: flex-start;
	}
	.machine_step {
		width:100%;
		flex-basis:100%;
	}
	.machine_step img {
		display:none;
	}
	.machine_step_inner::after {
		display:none;
	}
	.machine_step_inner_title {
		position:relative;
		top:auto;
		left:auto;
		transform: translateY(0%);
		font-size:20px;
		text-align:left;
		padding:10px 10px 5px 10px!important;
	}
	.machine_step .machine_step_inner_title::before {
	white-space: pre;
	font-family: "din-condensed", sans-serif;
	font-size:24px;
	line-height:1.4;
	}
.machine_step:nth-child(2) .machine_step_inner_title::before {
	content:'STEP1 ';
}
.machine_step:nth-child(3) .machine_step_inner_title::before {
	content:'STEP2 ';
}
.machine_step:nth-child(4) .machine_step_inner_title::before {
	content:'STEP3 ';
}
.machine_step:nth-child(5) .machine_step_inner_title::before {
	content:'STEP4 ';
}
	.machine_step .content_detail {
		padding-bottom:60px!important;
		position:relative;
	}
	.machine_step .content_detail::after {
    content: '';
    position: absolute;
    bottom: 0px;
    right: 0;
	left:0;
		width:0;
		margin:0 auto;
  border-top: 20px solid #00A051;
  border-right: 40px solid transparent;
  border-bottom: 20px solid transparent;
  border-left: 40px solid transparent;
	}
	.machine_step:last-child .content_detail::after {
		display:none;
	}
}

.machine_default {
	align-content:flex-start;
}

ul.machine_items2 {
	width:calc(25% - 10px);
	flex-basis:calc(25% - 10px);
	list-style:none;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-content:flex-start;
	padding:5px!important;
}
ul.machine_items {
	width:calc(75% - 10px);
	flex-basis:calc(75% - 10px);
	list-style:none;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
@media screen and (max-width: 599px) {
	.machine_items,.machine_items2 {
		padding-top:5px;
	}
}
ul.machine_items2 li {
	width:100%;
	flex-basis:100%;
	background:rgba(255,255,255,1);
	position:relative;
}
ul.machine_items li {
	width:calc(33.3333% - 10px);
	flex-basis:calc(33.3333% - 10px);
	background:rgba(255,255,255,1);
	position:relative;
	padding-bottom:30px;
	margin-bottom:12px;
}
ul.machine_items li.spaces {
	width:calc(33.3333% - 10px);
	flex-basis:calc(33.3333% - 10px);
	padding:0;
	margin:0;
	background:transparent;
}
@media screen and (max-width: 1280px) {
	ul.machine_items {
		width:calc(66.6666% - 10px);
		flex-basis:calc(66.6666% - 10px);
	}
	ul.machine_items2 {
		width:calc(33.3333% - 10px);
		flex-basis:calc(33.3333% - 10px);
	}
	ul.machine_items li, ul.machine_items li.spaces {
		width:calc(50% - 10px);
		flex-basis:calc(50% - 10px);
	}
	ul.machine_items li {
		margin-bottom:15px;
	}
}
@media screen and (max-width: 768px) {
	ul.machine_items {
		width:100%;
		flex-basis:100%;
	}
	ul.machine_items2 {
		width:100%;
		flex-basis:100%;
		padding-bottom:20px!important;
	}
	ul.machine_items li, ul.machine_items li.spaces {
		width:calc(50% - 10px);
		flex-basis:calc(50% - 10px);
	}
	ul.machine_items li {
		margin-bottom:20px;
	}
}
@media screen and (max-width: 599px) {
	ul.machine_items li {
		padding-bottom:20px;
	}
	ul.machine_items li {
		margin-bottom:10px;
	}
}


@media(hover: hover) {
	ul.machine_items li:hover .product_item_image img {
		transform:scale(1.1);
		transition:0.3s;
	}
	ul.machine_items li:hover .bgBK {
		background:rgba(0,0,0,0.0);
	}
}

/***************************************************/

.live_image {
	width:100%
}

.live_about_box {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	align-items:stretch;	
	justify-content: space-between;
	padding:10px 0;
}
.live_about_box_white {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	align-items:stretch;	
	justify-content: space-between;
	padding:50px;
	background:#FFF;
	margin-bottom:40px;
}

.live_about_text_box {
	width: calc(55% - 20px);
	flex-basis:calc(55% - 20px);
}
.live_about_text1 {
	width:100%;
	font-size:21px;
	line-height:1.6;
	font-weight:500;
	padding-bottom:20px;
}
.live_about_text2 {
	width:100%;
	font-size:14px;
	line-height:1.6;
	font-weight:500;
	color:#656565;
}
.live_about_image {
	width: calc(45% - 20px);
	flex-basis:calc(45% - 20px);
	padding:10px;
}
@media screen and (max-width: 768px) {
	.live_about_text_box {
		width: 100%;
		flex-basis: 100%;
	}
	.live_about_image {
		width: 100%;
		flex-basis: 100%;
		padding:30px;
	}
	.live_about_image img {
		max-width:500px;
		margin:0 auto;
	}
	.live_about_text1 {
		font-size:18px;
	}
}

.col_bk {
	color:#1A1311;
}

.date_item {
	width:100%;
	flex-basis:100%;
	border:1px solid #00A051;
	display: flex;
	flex-wrap: wrap;
	align-items:stretch;
	padding:0!important;
	margin-bottom:20px;
}
.date_item:last-child {
	margin-bottom:0;
}
.date_item_inner {
	width:100%;
	flex-basis:100%;
	padding: 10px!important;
}
.date_item_inner2 {
	width:100%;
	flex-basis:100%;
	padding:10px!important;
	display: flex;
	flex-wrap: wrap;
}
.livereport_name_before {
	width:60px;
	flex-basis:60px;
	color:#00A051;
	padding:7px 0!important;
	font-size:18px;
}
.livereport_name {
	width:calc(100% - 60px);
	flex-basis:calc(100% - 60px);
	padding:7px 0!important;
	font-size:18px;
	font-weight:500;
}
.live_date {
	width:100%;
	flex-basis:100%;
	background:#00A051;
	color:#FFF;
	font-size:21px;
	font-weight:500;
	padding:10px!important;
	line-height:1;
}
/***************************************************/
.tel_box {
	font-family: "DIN 2014", sans-serif;
	color:#00A051;
	font-size:60px;
	line-height:1;
	padding:10px;
	letter-spacing:2px;
}
@media screen and (max-width: 768px) {
	.tel_box {
		font-size:52px;
	}
}
@media screen and (max-width: 499px) {
	.tel_box {
		font-size:11vw;
		letter-spacing:0;
	}
}
.tel_box a {
	color:#00A051;
	text-decoration:none;
}
.tel_box2 {
	font-family: "Noto Sans JP", sans-serif;
	font-size:14px;
	color:#656565;
	display:inline-block;
}
.form_text_text {
	font-family: "Noto Sans JP", sans-serif;
	font-size:15px;
	line-height:1.8;
	color:#1A1311;
	text-align:center;
	padding:20px 0 30px 0;
	width:100%;
	flex-basis:100%;
}
@media screen and (max-width: 768px) {
	.form_text_text {
	text-align:left;
	}
}
.form_text_text span {
	color:#ff0000;
}
/***************************************************/
.breadcrumb {
	width:100%;
	font-size:14px;
	line-height:1.6;
	color: #656565;
	padding:15px 0;
}
@media screen and (max-width: 768px) {
	.breadcrumb {
	font-size:12px;
	}
}
@media screen and (max-width: 599px) {
	.breadcrumb {
	font-size:10px;
	}
}
ol.breadcrumb__list {
	width:100%;
	list-style:none;
	display: flex;
	flex-wrap: wrap;
}
.breadcrumb__item {
	padding-right:10px;
}
.breadcrumb__item::after {
	content:'＞';
	padding-left:10px;
}
@media screen and (max-width: 599px) {
	.breadcrumb__item {
	padding-right:5px;
	}
	.breadcrumb__item::after {
	content:'/';
	padding-left:5px;
	}
}
.breadcrumb__item:last-child::after {
	display:none;
}
.breadcrumb__item a {
  color: #656565;
  transition: opacity .6s;
}

@media(hover: hover) {
	.breadcrumb__item a:hover {
		opacity: .6;
	}
}


ol.breadcrumb__list li {
	padding-right:10px;
}
ol.breadcrumb__list li::after {
	content:'＞';
	padding-left:10px;
}
@media screen and (max-width: 599px) {
	ol.breadcrumb__list li {
	padding-right:5px;
	}
	ol.breadcrumb__list li::after {
	content:'/';
	padding-left:5px;
	}
}
ol.breadcrumb__list li:last-child::after {
	display:none;
}
ol.breadcrumb__list li a {
  color: #656565;
  transition: opacity .6s;
}

ol.breadcrumb__list li a:hover {
  opacity: .6;
}

  /***************************************************/
.textC {
	text-align:center;
}
.textR {
	text-align:right;
}

  /***************************************************/
.form_content {
	width:100%;
}
.form_box {
	width:100%;
	display: flex;
	flex-wrap: wrap;
	align-items:center;
	justify-content: space-between;
	padding:15px 5px;
	border-bottom:0.5px solid #535454;
	line-height:1.4;
}
.form_content .form_box:first-child {
	border-top:0.5px solid #535454;
}
.form_box_with_script {
}

.form_text1 {
	width: 200px;
	flex-basis:200px;
	color:#656565;
	font-size:14px;
	position:relative;
}
.form_text1 span {
	font-size:0;
}
.form_text1 span::after {
	content:'※';
	color:#e93f3f;
	font-size:14px;
	margin-left:3px;
	font-weight:500;
}
.form_text2 {
	width: calc(100% - 200px);
	flex-basis:calc(100% - 200px);
}
@media screen and (max-width: 768px) {
	.form_text1 {
		padding:7px 0;
		width: 100%;
		flex-basis:100%;
	}
	.form_text2 {
		padding-top:10px;
		width: 100%;
		flex-basis:100%;
	}
}

.form_text2 .error {
	padding:10px 5px!important;
	margin-top:5px;
	font-size:12px!important;
	color:#e93f3f!important;
	font-weight:500;
}


.mwform-checkbox-field {
	padding:3px 0;
}
.mwform-checkbox-field-text {
	font-size: 14px;
	line-height: 1.5;
	color: #535454;
}

input[type="checkbox"] {
  position: relative;
  width: 18px;
  height: 18px;
  border: 0.5px solid #535454;
	background:#FFF;
  vertical-align: -6px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

input[type="checkbox"]:checked:before {
  position: absolute;
  top: 0px;
  left: 4px;
  transform: rotate(50deg);
  width: 6px;
  height: 11px;
  border-right: 2.5px solid #00A051;
  border-bottom: 2.5px solid #00A051;
  content: '';
}


.form_box select[name="contact_types"] {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	box-sizing: border-box;
	border-radius: 0;
	background:#FFF;
}
.form_box select[name="contact_types"] {
	width: 100%;
	font-size: 16px;
	line-height: 1.4;
	color: #535454;
	padding:10px;
	padding-top:7px!important;
	padding-right:25px!important;
	padding-bottom:7px!important;
	border: 0.5px solid #535454;
	background-image: url(img/icon_arrow.svg);
	background-repeat: no-repeat;
	background-size: 15px 15px;
	background-position: right 5px center;
	position:relative;
}
.form_box input[name="username"],
.form_box input[name="company_name"],
.form_box input[name="department"],
.form_box input[name="byname"],
.form_box input[name="byname2"],
.form_box input[name="birth"],
.form_box input[name="education"],
.form_box input[name="billing_address_1"],
.form_box input[name="user_email"],
.form_box input[name="user_email-confirm"],
.form_box input[name="billing_postcode"],
.form_box input[name="billing_phone"],
.form_box input[name="faxnumber"],
.form_box input[name="seminar_date"] ,
.form_box input[name="seminar_name"] 
{
	width: 100%;
	font-size: 16px;
	line-height: 1.4;
	color: #535454;
	padding:10px;
	padding-top:7px!important;
	padding-bottom:7px!important;
	border: 0.5px solid #535454;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 400;
}
.form_box input[name="billing_postcode"] {
	width: 200px;
}
.form_box textarea[name="questions"],
.form_box textarea[name="appeal"],
.form_box textarea[name="career"],
.form_box textarea[name="qualification"],
.form_box textarea[name="contact_content"],
.form_box textarea[name="testdatetime"] {
	width: 100%;
	height: 120px !important;
	font-size: 16px;
	line-height: 1.4;
	color: #535454;
	padding:10px;
	padding-top:7px!important;
	padding-bottom:7px!important;
	border: 0.5px solid #535454;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 400;
}
.form_box textarea[name="testdatetime"] {
	height: 80px !important;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 400;
}

.form_btn_box_outer {
	width:100%;
	flex-basis:100%;
	display: flex;
	flex-wrap: wrap;
	align-items:center;
	justify-content: center;
	padding-top:40px;
}
.form_btn_box {
	position:relative;
	margin-left:10px;
	margin-right:10px;
	overflow:hidden;
}
.form_btn_box [type=submit] {
	width:300px;
	flex-basis:300px;
	margin:10px;
	color:#FFF;
	background:#00A051;
	padding:20px;
	text-align:center;
	border: 0; /* ボタンの枠線の設定 */
	margin:0 auto;
	position:relative;
	font-size:16px;
	line-height:1.4;
}
.form_btn_box::after {
    content: '';
    width: 10px;
    height: 10px;
    border-top: 2px solid #FFF;
    border-left: 2px solid #FFF;
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%) rotate(135deg);
}





  /***************************************************/
#wpmem_reg {
	width: 100%!important;
	flex-basis:100%!important;
}
#wpmem_register_form{
	width: 100%!important;
	flex-basis:100%!important;
}
#_wpmem_register_nonce {
	width: 100%!important;
	flex-basis:100%!important;
}

.register_box {
	display: flex;
	flex-wrap: wrap;
	margin: 0 auto;
	line-height:1.8;
}
.register_box fieldset {
	width:100%!important;
	flex-basis:100%!important;
	display: flex!important;
	flex-wrap: wrap!important;
	align-items:center!important;
	justify-content: center!important;
}
.wpmem_msg {
	width: 100%!important;
	flex-basis:100%!important;
	color:#1A1311!important;
	font-size:16px!important;
	line-height:1.6;
	text-align:center!important;
	padding-bottom:20px;
}
@media screen and (max-width: 768px) {
	.wpmem_msg {
	font-size:14px!important;		
	text-align:left;
	}
}

.register_box .form_text_text {
	border-bottom:0.5px solid #535454;
}
.register-tittle,.register_status {
	width: 100%!important;
	flex-basis:100%!important;
	font-size:30px!important;
	line-height:1.3!important;
	font-weight:500!important;
	text-align:center!important;
	color:#00A051;
	padding:0!important;
	margin:0px!important;
	font-family: "Noto Sans JP", sans-serif!important;
}
@media screen and (max-width: 768px) {
	.register-tittle {
		font-size:26px!important;
	}
}
@media screen and (max-width: 599px) {
	.register-tittle {
		font-size:22px!important;
	}
}
.link-text {
	width: 100%!important;
	flex-basis:100%!important;
	text-align:center;
}

.register_box .req-text {
	font-family: "Noto Sans JP", sans-serif!important;
	font-size:15px!important;
	line-height:1.8!important;
	color:#1A1311!important;
	text-align:center!important;
	margin:0px!important;
	width: 100%!important;
	flex-basis:100%!important;
}
@media screen and (max-width: 768px) {
	.register_box .req-text {
	text-align:left!important;
	}
}
.register_box .req-text span {
	color:#FF0000!important;
}
.register_box .req-text:last-child {
	display:none;
}


.register_box .req-text span.req,
.register_box label span.req {
	font-size:0!important;
}
.register_box .req-text span::after,
.register_box label span::after {
	content:'※';
	color:#ff0000;
	font-size:14px;
	margin-left:3px;
	font-weight:500;
}

.register_box .div_text {
	width: calc(100% - 200px);
	flex-basis:calc(100% - 200px);
	position:relative;
	margin:0px!important;
}

::placeholder {
  color: #acacac;
	font-size:14px;
}

.register_box label {
	width: 200px;
	flex-basis:200px;
	color:#656565;
	font-size:14px!important;
	position:relative;
	padding:0;
	margin:0;
}

@media screen and (max-width: 768px) {
	.register_box label {
		width: 100%;
		flex-basis:100%;
	}
	.register_box .div_text {
		width: 100%;
		flex-basis:100%;
	}
}



.register_box input[name="log"],
.register_box input[name="pwd"],
.register_box input[name="username"],
.register_box input[name="company_name"],
.register_box input[name="department"],
.register_box input[name="byname"],
.register_box input[name="billing_address_1"],
.register_box input[name="user_email"],
.register_box input[name="billing_postcode"],
.register_box input[name="billing_phone"],
.register_box input[name="faxnumber"] {
	width: 100%;
	font-size: 16px;
	line-height: 1.4;
	color: #535454;
	padding:10px;
	padding-top:7px!important;
	padding-bottom:7px!important;
	border: 0.5px solid #535454;
}

.register_box .button_div {
	width:100%;
	padding:40px 0!important;
	margin: 0 auto;
	position:relative;
	max-width:300px;
}
.register_box .button_div2 {
	padding-bottom:80px!important;
}
.button_div2 label {
	padding:0!important;
	line-height:1!important;
}
.register_box .button_div3 {
	width:100%;
	margin-top:-60px;
	text-align:center;
	padding:0!important;
}
.button_div4 {
	width:300px;
	flex-basis:300px;
	margin:10px;
	color:#FFF;
	background:#00A051;
	border:1px solid #00A051;
	padding:18px!important;
	text-align:center;
	position:relative;
	transition:0.3s;
	margin:0 auto;
}
.button_div4 a {
	color:#FFF;
	text-decoration:none;
	display:block;
}
.register_box [type=submit] {
	width:100%;
	margin:10px;
	color:#FFF;
	background:#00A051;
	padding:20px;
	text-align:center;
	border: 0; /* ボタンの枠線の設定 */
	margin:0 auto;
	position:relative;
	font-size:16px;
	line-height:1.4;
	margin-top:10px;
}
.register_box .button_div::after {
    content: '';
    width: 10px;
    height: 10px;
    border-top: 2px solid #FFF;
    border-left: 2px solid #FFF;
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%) rotate(135deg);
}
.register_box .button_div4::after {
    content: '';
    width: 10px;
    height: 10px;
    border-top: 2px solid #FFF;
    border-left: 2px solid #FFF;
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%) rotate(135deg);
}
.register_links {
	width:100%;
	padding:20px 0;
	display: flex;
	flex-wrap: wrap;
	align-items:center;	
	justify-content: center;
	list-style:none;
}
@media screen and (max-width: 768px) {
	.register_links {
		padding:10px 0;
	}
}
.register_links li {
	width:300px;
	flex-basis:300px;
	margin:10px;
	color:#FFF;
	background:#00A051;
	border:1px solid #00A051;
	padding:20px!important;
	text-align:center;
	position:relative;
	transition:0.3s;
}
@media screen and (max-width: 768px) {
	.register_links li {
	padding:15px!important;
	}
}
.register_links li a {
	color:#FFF;
	text-decoration:none;
	display:block;
}
.register_links li::after {
    content: '';
    display: block;
    width: 10px;
    height: 10px;
    border-top: 2px solid #FFF;
    border-left: 2px solid #FFF;
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%) rotate(135deg);
}
@media(hover: hover) {
	.register_links li:hover {
		background:#FFF;
	}
	.register_links li:hover::after {
		border-top: 2px solid #00A051;
		border-left: 2px solid #00A051;
	}
	.register_links li:hover a {
		color:#00A051;
	}
}
/***************************************************/
.foot_box {
	width:100%;
	display: flex;
	flex-wrap: wrap;
	align-items:stretch;
	justify-content: space-between;
}
.logo_foot_box {
	width:200px;
	flex-basis:200px;
    padding: 0 0 10px 0;
}
.add_box {
	font-size:14px;
	font-weight:500;
	line-height:1.6;
	color:#FFF;
	padding-top:20px;
}
.add_box a {
	color:#FFF;
	text-decoration:none;
}
.telfax {
	padding-top:10px;
	font-family: "DIN 2014", sans-serif;
}
.telfax a {
	color:#FFF;
	text-decoration:none;
}

.right_foot_box {
	width:calc(100% - 230px);
	padding:0 20px;
	color:#FFF;
	display: flex;
	flex-wrap: wrap;
	align-items:stretch;
}
.foot_ul {
	list-style:none;
	width:25%;
	flex-basis:25%;
}
@media screen and (max-width: 1100px) {
	.right_foot_box {
	width:100%;
	flex-basis:100%;
	}
}
@media screen and (max-width: 768px) {
	.logo_foot_box {
		margin:0 auto;
	}
	.add_box {
		text-align:center;
	}
	.right_foot_box {
		display:none;
	}
}

.foot_ul li {
	width:100%;
	flex-basis:100%;
	font-size:12px;
	line-height:1.3;
	font-weight:400;
	padding:4px 8px 4px 8px;
	position:relative;
}
@media screen and (max-width: 1100px) {
	.foot_ul li {
	font-size:12px;
	}
}
.foot_ul li::before {
	content:'';
	width:6px;
	height:1px;
	background:#FFF;
	position:absolute;
	left:0;
	top:calc(50% - 0.5px);
}
.foot_ul li a {
	color:#FFF;
	text-decoration:none;
}
.foot_ul li.main_li {
	font-weight:500;
	font-size:16px;
	padding:0;
	padding-bottom:10px;
}
.foot_ul li.main_li2 {
	padding-top:20px;
}
.foot_ul li.main_li::before {
	display:none;
}


.term_box {
	padding:10px;
	padding-top:30px;
	width:100%;
	flex-basis:100%;
	display: flex;
	flex-wrap: wrap;
	align-items:center;
	justify-content: center;
}
.term_item {
	display:inline-block;
	color:#FFF;
	padding:0 20px;
	margin:10px 0;
	border-right:1px solid #fff;
	font-size:14px;
	font-weight:500;
	line-height:1.4;
}
.term_item:last-child {
	border-right:0px solid #fff;
}
.term_item a {
	color:#FFF;
	text-decoration:none;
}
.copy_box {
	width:100%;
	color:#FFF;
	font-size:14px;
	font-weight:500;
	line-height:1.4;
	text-align:center;
	padding-bottom:20px;
}
@media screen and (max-width: 499px) {
	.term_item {
		font-size:3vw;
		padding:0 4vw;
		margin:6px 0;
	}
	.copy_box {
		font-size:2.8vw;
	}
}

/***************************************************/


.movie_box {
	position: relative;
	width: 100%;
	height: auto;
	background:#FFF;
	z-index:0;
	overflow:hidden;
}
.movie_box video,
.movie_box img {
	width: calc(100% + 2px);
	height: auto;
	display:block;
	z-index:1;
}
.head_power {
	width:100%;
	height:100%;
	position: absolute;
	top:0;
	left:0;
	padding:50px;
	z-index:2;
	mix-blend-mode: multiply;
}
.head_power img{
	width:calc(100% - 100px);
	height:auto;
	max-width:1200px;
	margin:0 auto;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateX(-50%) translateY(-50%);
	mix-blend-mode: multiply;
}
@media screen and (max-width: 1920px) {
.head_power img{
	width:calc(100% - 80px);
	height:auto;
	margin:0 auto;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateX(-50%) translateY(-50%);
}
}


  /***************************************************/

  /***************************************************/

.pagination {
    margin-top: 20px;
    text-align: center;
}
.page-numbers {
    list-style: none;
    padding: 0;
    margin: 0;
}
.page-numbers li {
    display: inline-block;
    margin:0 4px;
	width:40px;
	height:40px;
	line-height:40px;
}
.page-numbers li a {
    display: inline-block;
    padding: 5px 10px;
    text-decoration: none;
    color: #00A051;
}
.page-numbers li.current {
    background-color: #00A051;
    color: #fff;
}
.page-numbers li.current a{
    color: #fff;
}
  /***************************************************/

.seminar_about {
	width:100%;
	display: flex;
	flex-wrap: wrap;
	align-items:center;
	justify-content:space-between;
	font-size:16px;
	font-weight:500;
	line-height:1.6;
}
@media screen and (max-width: 599px) {
	.seminar_about {
	font-size:14px;
	}
}
.seminar_about_head {
	width:100%;
	flex-basis:100%;
	background:#00A051;
	color:#FFF;
	text-align:center;
	padding:5px 10px!important;
}
.seminar_about_inner {
	width:100%;
	flex-basis:100%;
	border-bottom:1px solid #707070;
	padding:10px!important;
	display: flex;
	flex-wrap: wrap;
	align-items:center;
	justify-content:space-between;
}
.seminar_about_left {
	width:70px;
	flex-basis:70px;
	text-align:center;
	padding:0!important;
}
.seminar_about_right {
	width:calc(100% - 70px);
	flex-basis:calc(100% - 70px);
	text-align:left;
	padding:0!important;
	padding-left:30px!important;
}
  /***************************************************/
  
  /* FADEアニメーション */
  
  .anime2 {
	animation-name: fadeUpAnime2;
	animation-duration: 2s;
	animation-fill-mode: forwards;
	opacity: 0;
  }
  @keyframes fadeUpAnime2 {
	from {
	  opacity: 0;
	}
  
	to {
	  opacity: 1;
	}
  }





  .anime {
	animation-name: fadeUpAnime;
	animation-duration: 0.2s;
	animation-fill-mode: forwards;
	opacity: 0;
  }
  
  .anime:nth-child(1) {
	animation-delay: 0.1s;
  }
  
  .anime:nth-child(2) {
	animation-delay: 0.2s;
  }
  
  .anime:nth-child(3) {
	animation-delay: 0.3s;
  }
  
  .anime:nth-child(4) {
	animation-delay: 0.4s;
  }
  
  .anime:nth-child(5) {
	animation-delay: 0.5s;
  }
  
  .anime:nth-child(6) {
	animation-delay: 0.6s;
  }
  
  .anime:nth-child(7) {
	animation-delay: 0.7s;
  }
  
  .anime:nth-child(8) {
	animation-delay: 0.8s;
  }
  
  .anime:nth-child(9) {
	animation-delay: 0.9s;
  }
  
  .anime:nth-child(10) {
	animation-delay: 1.0s;
  }
  
  .anime:nth-child(11) {
	animation-delay: 1.1s;
  }
  
  .anime:nth-child(12) {
	animation-delay: 1.2s;
  }
  
  .anime:nth-child(13) {
	animation-delay: 1.3s;
  }
  
  .anime:nth-child(14) {
	animation-delay: 1.4s;
  }
  
  .anime:nth-child(15) {
	animation-delay: 1.5s;
  }
  
  .anime:nth-child(16) {
	animation-delay: 1.6s;
  }
  
  .anime:nth-child(17) {
	animation-delay: 1.7s;
  }
  
  .anime:nth-child(18) {
	animation-delay: 1.8s;
  }
  
  .anime:nth-child(19) {
	animation-delay: 1.9s;
  }
  
  .anime:nth-child(20) {
	animation-delay: 2.0s;
  }
  
  
  @keyframes fadeUpAnime {
	from {
	  opacity: 0;
	  transform: translateY(100px);
	}
  
	to {
	  opacity: 1;
	  transform: translateY(0);
	}
  }


.colBK {
	color:#232323;
}
  .grecaptcha-badge { visibility: hidden; }

/***************************************************/
.color_green {
	color:#00A051;
}
.color_green a {
	color:#00A051;
	text-decoration:underline;
}
.color_black {
	color:#4D4D4D;
}
/***************************************************/
.pad0 {
	padding:0px;
}
.padT0 {
	padding-top:0px!important;
}
.padB0 {
	padding-bottom:0px!important;
}
.paddetail {
	padding-top:8px!important;
	padding-bottom:20px!important;
}
.padB10 {
	padding-bottom:10px!important;
}
.padT20 {
	padding-top:20px!important;
}
.padB20 {
	padding-bottom:20px!important;
}
.padB30 {
	padding-bottom:30px;
}
.padB40 {
	padding-bottom:40px;
}
.padTB40 {
	padding-top:40px;
	padding-bottom:30px;
}

.padB60 {
	padding-bottom:60px;
}

.padT10 {
	padding-top:10px;
}
.padT40 {
	padding-top:40px;
}
.padT80 {
	padding-top:80px;
}

.margB0 {
	margin-bottom:0!important;
}
.margT10 {
	margin-top:10px;
}
.margT40 {
	margin-top:40px;
}
.margB20 {
	margin-bottom:20px;
}
.first_marg {
	margin-top:50px;
}
.first_pad {
	padding-top:50px;
}
.padB100 {
	padding-bottom:100px;
}
.last_pad {
	padding-top:50px;
}
@media screen and (max-width: 1280px) {
	.first_marg {
		margin-top:40px;
	}
	.first_pad {
		padding-top:40px;
	}
	.before_foot {
		padding-top:40px;
	}
	.padB100 {
		padding-bottom:80px;
	}
	.padT40 {
		padding-top:30px;
	}
	.padT80 {
		padding-top:60px;
	}
	.padTB40 {
	padding-top:30px;
	padding-bottom:20px;
	}
}
@media screen and (max-width: 768px) {
	.first_marg {
		margin-top:30px;
	}
	.first_pad {
		padding-top:30px;
	}
	.before_foot {
		padding-top:30px;
	}
	.padB100 {
		padding-bottom:60px;
	}
	.padB40 {
		padding-bottom:30px;
	}
	.padTB40 {
	padding-top:30px;
	padding-bottom:10px;
	}
}
@media screen and (max-width: 599px) {
	.first_marg {
		margin-top:20px;
	}
	.first_marg2 {
		margin-top:0px;
	}
	.first_pad {
		padding-top:20px;
	}
	.before_foot {
		padding-top:20px;
	}
	.padB100 {
		padding-bottom:40px;
	}
	.padB40 {
		padding-bottom:10px;
	}
}

.no_change {
	position:relative;
}
.no_change:after {
	content:'';
	position:absolute;
	z-index:2;
	width:100%;
	height:100%;
	top:0;
	left:0;
	background:rgba(0,0,0,0);
}
.sp_none {
	display:block;
}
.sp_display {
	display:none;
}
@media screen and (max-width: 599px) {
	.sp_none {
		display:none;
	}
	.sp_display {
		display:block;
	}
}
.policy_box {
	width:100%;
	flex-basis:100%;
	padding-bottom:30px;
}
.policy_box .content_detail {
	padding-bottom:10px;
}
.policy_box ol {
	width:100%;
	padding:0;
	margin:0;
	list-style-type:decimal;
	list-style-position: inside;
	padding-top:20px;
}
.policy_box ol li {
	width:100%;
	padding:0;
	margin:0;
	padding:5px 0;
}

.sp_display select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	box-sizing: border-box;
	border-radius: 0;
	background:#FFF;
}
select.product_menu {
	margin-top:10px;
	width:100%;
	padding:10px 30px 10px 10px;
 	color:#656565;
	font-family: "Noto Sans JP", sans-serif;
	border:none;
	font-size:16px;
	font-weight:500;
	line-height:1.5;
	background:#FFF;
	background-image: url(img/icon_arrow.svg);
	background-repeat: no-repeat;
	background-size: 15px 15px;
	background-position: right 10px center;
	position:relative;
	z-index:2;
	border:1px solid #00A051;
}

.cn-text-container {
	text-align:left!important;
}
.cn-text-container a {
	color:#00A051!important;
}

.policy_btn {
	background:#00A051;
	color:#FFF;
	padding:10px 20px;
	text-decoration:none;
}
.policy_btn a {
	color:#FFF;
	text-decoration:none;
}



.recruit_box {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	flex-direction: row;
	background:#FFF;
}
.recruit_title {
	color:#00A051;
}
.recruit_box .content_subtitle {
	background:#e5eee7;
	font-size:16px;
	width:160px;
	flex-basis:160px;
	padding:15px 20px!important;
	text-align:center;
	border:1px solid #00A051;
	margin:0;
	margin-top:-1px;
	display: flex;
	flex-wrap: wrap;
	align-items:center;
	color:#232323;
}
.recruit_box .content_detail {
	font-size:16px;
	width:calc(100% - 160px);
	flex-basis:calc(100% - 160px);
	padding:15px 20px!important;
	border:1px solid #00A051;
	border-left:0px solid #00A051;
	margin:0;
	margin-top:-1px;
}
.recruit_detail {
	width:100%;
	flex-basis:100%;
	font-size:16px;
	line-height:1.8;
	color:#656565;
	background:#f7f7f7;
	margin:0;
	padding:10px 0!important;
	padding-bottom:20px!important;
}
@media screen and (max-width: 980px) {
	.recruit_box .content_subtitle {
	padding:10px!important;
	}
	.recruit_box .content_detail {
	padding:10px!important;
	}
}
@media screen and (max-width: 599px) {
	.recruit_box .content_subtitle {
	width:100%;
	flex-basis:100%;
	}
	.recruit_box .content_detail {
	width:100%;
	flex-basis:100%;
	padding:15px 10px!important;
	border-left:1px solid #00A051;
	}
}

.costruction {
	width:calc(100% - 30px);
	max-width:1280px;
	margin: 0 auto;
	color:#232323;
	background:#FFF;
	padding:50px;
	text-align:center;
	margin-top:100px;
}
@media screen and (max-width: 1280px) {
	.costruction {
		margin-left:15px;
		margin-right:15px;
	}
}
.const_text1 {
	width:100%;
	font-weight:600;
	font-size:36px;
}
.const_text2 {
	padding-top:30px;
	width:100%;
	font-weight:500
	font-size:16px;
	line-height:2;
}
@media screen and (max-width: 599px) {
	.costruction {
	padding:30px 15px;
	text-align:left;
	margin-top:60px;
	}
	.const_text1 {
	font-size:30px;
	text-align:center;
	}
	.const_text2 {
	font-size:15px;
	line-height:1.8;
}
}

.new_btn {
    display: flex;
    justify-content: center;
    width: 100%;
	position:relative;
}

.new_btn a {
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: 100%;
    text-decoration: none;
    padding: 10px 15px;
    background-color: #18994F; /* ボタンの背景色 */
    color: #fff; /* ボタン内のテキスト色 */
	transition:0.3s;
	position:relative;
	padding:0 40px;
	min-height:60px;
	border:1px solid #18994F;
	min-width:320px;
	border-radius:5px;
}
.new_arrow {
    content: '';
    display: block;
    width: 10px;
    height: 10px;
    border-top: 2px solid #FFF;
    border-left: 2px solid #FFF;
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%) rotate(135deg);
}




.new_btn_img {
    display: flex;
    align-items: center;
    justify-content: center;
	margin:0;
    margin-right: 10px;
    width: 40px;
    height: 40px;
	overflow:hidden;
    line-height: 1;
    overflow: visible;
    position: absolute; /* アイコンを絶対位置に */
    left: 10px; /* アイコンを左に配置 */
}
.new_btn_img img{
	margin-top:20px;
	display:block;
}

@media screen and (max-width: 960px) {
.new_btn_img img{
	margin-top:10px;
	display:block;
}
}
@media screen and (max-width: 499px) {
	.new_btn a {
	min-width:290px;
	}
.new_btn_img img{
	margin-top:5px;
}
}

.new_btn_span {
    display: flex;
    align-items: center;
	line-height:1.2
}


.youtube {
    position: relative;
    display: inline-block;
    cursor: pointer;
}

.youtube::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 80px;   /* 再生マークのサイズ */
    height: 80px;
    background: rgba(255, 255, 255, 0.6);  /* 背景がちょっと暗い丸 */
    border-radius: 50%;
    transform: translate(-50%, -50%);
	z-index:4;
    pointer-events: none;
}

.youtube::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 20px 0 20px 30px; /* 三角形サイズ */
    border-color: transparent transparent transparent #00A051; /* 白い再生マーク */
    transform: translate(-50%, -50%);
	margin-left:5px;
	z-index:5;
	opacity:0.8;
    pointer-events: none;
}


.youtube2::before,
.youtube2::after {
	display:none;
}

@media(hover: hover) {
.new_btn a:hover {
    background-color: #fff; /* ホバー時の背景色を白に */
    color: #18994F; /* ホバー時のテキスト色を調整（任意） */
}

	.new_btn a:hover .new_arrow {
		border-top: 2px solid #18994F;
		border-left: 2px solid #18994F;
	}
}

.br768 {
	display:block;
}
@media screen and (max-width: 768px) {
.br768 {
	display:none;
}
}

.pb10 {
	padding-bottom:10px;
}

.bg_green {
	background:#00A051;
	margin:0;
	width:100%;
	flex-basis:100%;
}
.bg_green .const_text1 {
	font-size:24px;
	color:#FFF;
}
.bg_green .const_text2 {
	color:#FFF;
}
.const_text3 {
	font-weight:500;
	font-size:18px;
}
.const_text3 a {
	color:#00A051;
}







        .top_lang_inner {
            width: 100%;
            padding: 6vw 0;
        }
@media screen and (max-width: 768px) {
        .top_lang_inner {
            padding: 8vw 0;
        }
}

        .top_lang_inner .swiper-slide img {
            width: 100%;
            height: auto;
            display: block;
        }

        .top_lang_inner .swiper {
            position: relative;
            display: flex !important;
            justify-content: center !important;
            align-items: center !important;
            align-content: center!important;
            padding: 10px !important;
			background:transparent!important;
        }

        .top_lang_inner .swiper-slide {
            transition: transform 0.3s ease;
            padding-top: 0 !important;
            padding: 0 0.5vw!important;
            position: relative;
			background:transparent;
        }
.none_padding {
  line-height: 0 !important;
  font-size: 0 !important;
}
@media(hover: hover) {
	.top_lang_inner .swiper-slide:hover {
		transform: translateY(-10px);
		background:transparent;
	}
}

        .top_lang_inner .swiper-button-prev,
        .top_lang_inner .swiper-button-next {
            background-color: white;
            transform: none!important;
            padding: 30px 0 !important;
            margin-top: -30px !important;
            box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.5);
			display:block!important;
			opacity:1!important;
        }

        .top_lang_inner .swiper-button-prev {
            border-radius: 0 3px 3px 0;
            left: -0!important;
			background-image: url("img/arrow-left.svg")!important;
			background-repeat: no-repeat;
			background-position: center;
			background-size: 80%;
        }

        .top_lang_inner .swiper-button-next {
            border-radius: 3px 0 0 3px;
            right: -0!important;
			background-image: url("img/arrow-right.svg")!important;
			background-repeat: no-repeat;
			background-position: center;
			background-size: 80%;
        }

        .top_lang_inner .swiper-button-prev::before,
        .top_lang_inner .swiper-button-next::before {
			display:none;
        }

        .top_lang_inner .swiper-button-prev::after,
        .top_lang_inner .swiper-button-next::after {
            display: none!important;
        }

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

            .top_lang_inner .swiper-button-prev,
            .top_lang_inner .swiper-button-next {
                background-color: white;
                transform: translateY(-0%) !important;
                padding: 20px 0 !important;
                margin-top: -20px !important;
            }
        }


        .main_view {
            width: 100%;
            max-width: 980px;
            margin: 0 auto;
            padding-bottom: 30px !important;
        }

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

        @media screen and (max-width: 1280px) {
            .main_view {
                padding: 5vw 7vw!important;
            }
        }

        .top_shadow img {
            box-shadow: 0 2px 7px rgba(0, 0, 0, 0.3);
        }

        .top_shadow2 {
            filter:drop-shadow(0 2px 12px rgba(0, 0, 0, 0.3));
        }

        .top_bana_text {
            width: 100%;
            height: 100%;
            text-align: center;
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            color: #FFF;
            font-size: 28px;
            text-shadow:0 2px 3px rgba(0, 0, 0, 0.5);
            font-family: "DIN 2014";
            font-weight: 500;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 0;
            line-height: 1;
        }
        .top_bana_text span {
            font-size: 0.8em;
        }
        @media screen and (max-width: 1280px) {
            .top_bana_text {
                font-size: 2vw;
            }
        }
        @media screen and (max-width: 500px) {
            .top_bana_text {
                font-size: 4vw;
            }
        }

        .main_view video {
            width: 100%;
            height: auto;
            display: block;
        }



.content_title_center {
	width:100%;
	flex-basis:100%;
	color:#00A051;
	font-size:24px;
	line-height:1.4;
	font-weight:500;
	padding-bottom:20px;
	text-align:center;
}
@media screen and (max-width: 768px) {
	.content_title_center {
		font-size:22px;
	}
}
@media screen and (max-width: 599px) {
	.content_title_center {
		font-size:20px;
	}
}


.icon_flex {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items:center;	
}
.icon_box {
	width:calc(33.33% - 10px);
	flex-basis:calc(33.33% - 10px);
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items:center;	
	padding:10px!important;
	margin:7.5px 0!important;
	background:#f0f0f0;
	border-radius:6px;
}
.icon_img {
	width:80px;
	flex-basis:80px;
	height:80px;
}
.icon_img img {
	width:100%;
	height:auto;
	display:block;
	overflow:hidden;
	border-radius:3px;
}
.icon_detail {
	width:calc(100% - 80px);
	flex-basis:calc(100% - 80px);
	font-size:18px;
	font-weight:400;
	padding-left:20px;
}

.imgmax  {
	width:100%;
	max-width:768px;
	margin: 0 auto;
}
@media screen and (max-width: 768px) {
	.imgmax  {
		padding:0 10px;
	}
}
.imgmax a {
	opacity:0.6;
}
@media screen and (max-width: 768px) {
	.icon_box {
	width:calc(50% - 5px);
	flex-basis:calc(50% - 5px);
	}
	.icon_img {
	width:60px;
	flex-basis:60px;
	height:60px;
	}
	.icon_detail {
	width:calc(100% - 60px);
	flex-basis:calc(100% - 60px);
	font-size:2.4vw;
	padding-left:2vw;
	}
}
@media screen and (max-width: 599px) {
	.icon_box {
	width:100%;
	flex-basis:100%;
	margin: 0!important;
	margin-bottom: 5px!important;
	padding:7px!important;
	}
	.icon_detail {
	font-size:4vw;
	padding-left:3vw;
	}
}







        .cat_content_wrap {
            display: flex;
            align-items: flex-start;
            gap: 20px;
            margin-top: 24px;
        }

        .cat_image_left {
            max-width: 400px;
        }

        .cat_image_left img {
            width: 100%;
            height: auto;
            border-radius: 8px;
            object-fit: cover;
        }

        .cat_content_right {
            flex: 1;
        }

        .cat_zukai {
            margin-top: 20px;
        }

        /* スマホ時は縦並び */
        @media screen and (max-width: 768px) {
            .cat_content_wrap {
                flex-direction: column;
            }

            .cat_image_left {
                width: 100%;
            }
        }

.just-white {
	background:#FFF;
	padding:20px!important;
	margin-bottom:10px!important;
}
.just-white img {
	margin-bottom:0!important;
}
.new_col1 {
	color:#91b86c;
	font-weight:700;
	font-size: clamp(20px, 3vw, 26px);
}
.new_col2 {
	color:#69a889;
	font-weight:700;
	font-size: clamp(20px, 3vw, 26px);
}
.new_col3 {
	color:#1a92a8;
	font-weight:700;
	font-size: clamp(20px, 3vw, 26px);
}
.newcol-a {
	color:#1a92a8;
	font-weight:700;
	font-size: clamp(16px, 3vw, 21px);
}
.newcol-b {
	color:#232323;
	font-weight:700;
	font-size: clamp(18px, 3vw, 26px);
}

.link-pad {
	position:relative;
	padding-bottom:50px!important;
}
.new-more {
	color:#FFF;
	text-align:center;
	position:absolute;
	right:10px;
	bottom:0;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items:center;	
	width:100%;
}
.new-more_inner {
	width:calc(50% - 20px);
	font-size: clamp(12px, 2vw, 16px);
	color:#232323;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items:center;	
    flex-direction: column;
	padding:0!important;
}
.new-more_link {
	padding:8px!important;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items:center;	
	background:#1a92a8;
	color:#FFF;
	text-decoration:none;
	line-height:1.5!important;
	width:100%;
}
.new-more_link a {
	color:#FFF;
	text-decoration:none;
	line-height:1.5!important;
}
.reverse {
	flex-direction: row-reverse;
}
.new-white {
	padding:20px!important;
	background:#FFF;
	margin-bottom:10px!important;
}
.no-imagepad img {
	padding:0!important;
	margin:0!important;
}
.new_left{
	padding-bottom:0!important;
}
.new-marg {
	padding-bottom:0!important;
	margin-bottom:10px!important;
}
.new-bg {
	background:#f2f2f2
}
.new-name {
	font-size: clamp(12px, 2vw, 16px);
	line-height:1.4;
	font-weight:500;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items:center;	
	text-align:center;
	width:100%;
	padding:0!important;
	padding-top:8px!important;
	padding-bottom:4px!important;
}
.pad10 {
	padding:5px!important;
}
.pt10 {
	padding-top:10px!important;
}

.new-future_25 {
	width:calc(25% - 10px);
	flex-basis:calc(25% - 10px);
}
.new-future_50 {
	width:calc(50% - 20px);
	flex-basis:calc(50% - 20px);
	margin-bottom:15px;
}
@media screen and (max-width: 768px) {
	.inner-pad {
		padding-top:10px;
	}
	.new-future_25 {
	width:calc(50% - 5px);
	flex-basis:calc(50% - 5px);
	}
	.new-future_50 {
	width:100%;
	flex-basis:100%;
	margin-bottom:10px;
	}
}