@charset "utf-8";
/* CSS Document */

html{
	font-size:14px;
	line-height:1.7;
	color:#333;
	}

/*
"源柔ゴシック" licensed under the SIL Open Font License 1.1
http://jikasei.me/font/genjyuu/
*/

@font-face { font-family:"GenJyuu_R"; src:url(../font/GenJyuuGothicX-Regular.woff) format("woff"); }
@font-face { font-family:"GenJyuu_B"; src:url(../font/GenJyuuGothicX-Heavy.woff) format("woff"); }


body{
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	margin:0;
	min-width:1200px;
	-webkit-text-size-adjust:none;
	background:url(../img/bg01.jpg);
	}


/*common
------------------------------------------*/
ul,li,dl,dt,dd,table,figure{
	border-collapse:collapse;
	list-style:none;
	margin:0;
	padding:0;
	}

*{ box-sizing:border-box;}

img{
	border:none;
	vertical-align:middle;
	max-width:100%;
	}

a img{ 
	-webkit-transition:0.3s ease-out;
	-moz-transition:0.3s ease-out;
	-ms-transition:0.3s ease-out;
	transition:0.3s ease-out;
	}

a:hover img{ 
	opacity:0.6;
	-webkit-opacity:0.6;
	-moz-opacity:0.6;
	filter:alpha(opacity=60);
	-ms-filter:"alpha(opacity=60)";
	}

a{
	color:#407080;
	text-decoration:none;
	-webkit-transition:background-color .3s;
	transition:background-color .3s;
	}

a:hover{ text-decoration:underline;}

a.btn01,a.modal_btn{
	display:inline-block;
	background:#13777c;
	border-radius:5px;
	box-shadow:0px 3px 0px 0px #045458;
	color:#FFF;
	text-align: center;
	padding:10px 20px;
	transition:.3s;
	}

a.btn01:hover,a.modal_btn:hover{
	background:#2f989d;
	border-bottom:0;
	box-shadow:none;
	text-decoration:none;
	position:relative;
	transform: translateY(3px);
	}

a.btn01.blue{
	background:#2f7cb2;
	box-shadow:0px 3px 0px 0px #195884;
	}

a.btn01.blue:hover{
	background:#195884;
	box-shadow:none;
	}

a.btn02{
	display:block;
	background:#000;
	overflow:hidden;
	position:relative;
	text-decoration:none;
	box-shadow:0px 0px 5px -1px rgba(0,0,0,0.3);
	}

a.btn02 p{
	z-index:2;
	position:absolute;
	top:0;
	bottom:0;
	margin:auto;
	color:#FFF;
	text-align:center;
	width:100%;
	}

a.btn02 span{
	display:inline-block;
	border:1px solid #FFF;
	border-radius:5px;
	padding:2px 10px;
	font-size:70%;
	}

a.btn02 img{
	opacity:0.7;
	}

a.btn02:hover{
	box-shadow:none;
	}

a.btn02:hover span{
	background:#FFF;
	color:#333;
	}

a.btn02:hover img{
	opacity:0.5;
	}

i{ margin-right:5px;}

.inner{ width:1100px; margin:0 auto; position:relative; }
.scrEvent { position:relative; }
.fl{ float:left;}
.fr{ float:right;}
img.fl{ margin:0 20px 20px 0;}
img.fr{ margin:0 0 20px 20px;}
img.w300{ width:300px;}
.fs80{ font-size:80%;}
.fs90{ font-size:90%;}
.fs110{ font-size:110%;}
.fs120{ font-size:120%;}
.orange{ color:#ebab3c;}
.red{ color:#d45e5e;}
.blue{ color:#13777c;}
.mt0{ margin-top:0 !important;}
.mt10{margin-top: 10px !important;}
.mt-10{ margin-top:-10px !important;}
.mt30{ margin-top:30px !important;}
.mt50{ margin-top:50px !important;}
.mb0{ margin-bottom:0 !important;}
.photo img{ border:5px solid #FFF;}
.spacer{display:block;}
ul.disc li{ list-style:disc; margin:0 0 10px 20px;}
ul.decimal li{ list-style:decimal; margin:0 0 0 25px;}
.pc_none{display: none;}

.alignL{ text-align:left !important;}
.alignC{ text-align:center !important;}
.alignR{ text-align:right !important;}

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

.clear{ clear:both;}

.cf:after {
  content:"."; 
  display:block; 
  height:0; 
  clear:both; 
  visibility:hidden;
}

.cf { display:inline-table; }

/* Hides from IE-mac \*/
* html .cf { height:1%; }
.cf { display:block; }
/* End hide from IE-mac */

br.sp{
	display: none;
	}


/* loader
------------------------------------------*/
#loading{
	position:absolute;
	left:50%;
	top:40%;
	margin-left:-32px;
	width:88px;
	height:75px;
	background:url(../img/loader_bg.png) no-repeat bottom;
	}

#loader-bg {
	position:fixed;
	width:100%;
	height:100%;
	top:0px;
	left:0px;
	background:#fff;
	z-index:1000;
	}

.fs12{
    font-size: 12px;
}

/*header
------------------------------------------*/
header{
	background-color: #fff;
	box-shadow: 0px 2px 0px 0px #13777c inset;
	display: flex;
	justify-content: space-between;
	align-items: end;
	padding: 0 20px 16px;
	position: fixed;
	width: 100%;
	z-index: 12;
	}

header > *{
	margin: 0;
	}

header h1 img{
	height: 42px;
	width: 280px;
	}

header nav{
	position: relative;
	padding-top: 16px;
	}

header nav ul{
	display: flex;
	}

header nav ul.global li{
	margin-left: 30px;
	}

header nav ul.global li a{
	display: inline-block;
	font-size: 16px;
	font-family:GenJyuu_R;
	font-weight: bold;
	line-height: 1;
	letter-spacing: -1px;
	color: #333;
	transition: .3s;
	}

header nav ul.global li a:hover,
header nav ul.global li.ac a{
	opacity: 0.6;
	text-decoration: none;
	}

header nav ul.global li a img{
	height: 15px;
	margin-right: 5px;
	margin-bottom: 3px;
	vertical-align:text-bottom;
	}

/*header nav ul.ex{
	position: absolute;
	top: 0;
	right: 0;
	} */

header nav ul.ex li{
	line-height: 20px;
	font-size: 12px;
	margin-left: 7px;
	}

header nav ul.ex li a img{
	height: 20px;
	}

header nav ul.ex li a.btn{
	display: inline-block;
	background-color: #000;
	border-radius: 3px;
	color: #fff;
	padding: 0 5px;
	transition: .3s;
	}

header nav ul.ex li a.btn:hover{
	text-decoration: none;
	opacity: 0.6;
	}

header nav ul.ex li a.btn.toB{ background-color: #f18900;}
header nav ul.ex li a.btn.toH{ background-color: #00729d;}

.navBtn,
input#open{
	display:none;
	}

header nav p{
	display: none;
	}


/*footer
------------------------------------------*/
footer{
	background:#13777c;
	font-size:12px;
	position: relative;
	z-index: 10;
	}

footer a{
	color:#FFF;
	}

footer a:hover{
	text-decoration:none;
	opacity:0.6;
	}

footer .upper{
    background: #0e696e;
	}

footer .upper > .inner{
	padding: 20px 0;
	align-items: center;
	}

footer p{
	margin: 0;
	}

footer .snsIcon{
	display: flex;
	justify-content: flex-start;
	align-items: center;
	color: #fff;
	}

footer .snsIcon a{
	margin-left: 10px;
	width: 30px;
	}

footer ul{
	margin: 40px 0;
	display: flex;
	flex-wrap: wrap;
	}

footer ul li{
	width: 20%;
	border-left: 1px dotted #fff;
	padding-left: 10px;
	}

footer ul li:last-child{
	border-right: 1px dotted #fff;
	}

footer dl dt,
footer ul li > p{
	font-weight:bold;
	font-size: 14px;
	}

footer dl dt small{
	display: block;
	}

footer dl dd{
	font-size:10px;
	position: relative;
	}

footer dl dd:before{
	content:"-";
	margin-right: 5px;
	color:#FFF;
	}

footer .copyright{
	padding:15px;
	background:#FFF;
	color:#999;
	text-align:center;
	}

.pageup{
	position:fixed;
	right:20px;
	bottom:260px;
	z-index: 30;
	}

.pageup a{
	display: block;
	width: 70px;
	line-height:70px;
	color:#FFF;
	background-color:rgba(0,0,0,0.3);
	font-size:30px;
	text-align: center;
	}

.pageup a i{
	margin: 0;
	}

.pageup a:hover{
	opacity:0.6;
	}


/*top
------------------------------------------*/
#kv{
	position: relative;
	overflow: hidden;
	border-top: 88px solid transparent;
	}

#kv .catch{
	position: absolute;
	left: 30px;
	top: 30px;
	z-index: 10;
	width: 30%;
	}

#kv .senseBtn{
	position: absolute;
	left: 25%;
	top: 50px;
	z-index: 11;
	width: 9%
	}

#kv .kv_news{
	position: absolute;
	right: 30px;
	bottom: 60px;
	z-index: 10;
	background: rgba(255,255,255,0.8);
	border-radius: 999px;
	padding: 16px 40px;
	}

#kv .kv_news span{
	display: block;
	font-family:GenJyuu_R;
	font-weight: bold;
	font-size: 130%;
	color: #4d5196;
	line-height: 1;
	margin-bottom: 5px;
	}

#kv figure{
	position: absolute;
	width: 2000px;
	bottom: 0;
	left: 50%;
	margin-left: -1000px;
	z-index: 2;
	}

.top{
	padding: 80px 0;
	}

.top h2{
	font-size:44px;
	font-family:GenJyuu_R;
	line-height: 1;
	text-align: center;
	margin:0;
	}

.top ul.flex li{
	width: 330px;
	box-shadow: 0 0 5px 0 rgba(0,0,0,0.1);
	background-color: #fff;
	}

.top ul.flex li figure img{
	width: 100%;
	}

.top ul.flex li div{
	padding: 20px;
	}

.top ul.flex li div p{
	margin: 0;
	}

.top p.alignC{
	margin: 0;
	}

.top a.btn01{
	width: 350px;
	}

.top ul.linkBox li a{
	display: block;
	text-decoration: none;
	color: #333;
	}

.top ul.linkBox li a figure{
	overflow: hidden;
	}

.top ul.linkBox li a:hover img{
	transform: scale(1.03);
	}

.top01 .title{
	background: url(../img/tit_bg01.png) no-repeat center;
	height: 155px;
	position: relative;
	}

.top01 .title > *{
	position: absolute;
	bottom: 40px;
	left: 0;
	width: 100%
	}

.top01 ul.flex{
	margin: 50px 0;
	}

.top01 ul.flex li a{
	display: block;
	height: 415px;
	}

.top01 ul.flex li a figure{
	overflow: hidden;
	}

.top01 ul.flex li a p{
	color: #333;
	}

.top01 ul.flex li a:hover{
	text-decoration: none;
	}

.top01 ul.flex li a:hover img{
	transform: scale(1.03);
	}

.top01 ul.flex li h3{
	font-size: 15px;
	margin: 0 0 10px 0;
	}

.top02{
	background-color: #efeae0;
	}

.top02 h3{
	font-size: 23px;
	text-align: center;
	color: #13777c;
	}

.top02 h3 + p{
	font-size: 17px;
	text-align: center;
	}

.top02 ul.flex{
	margin: 50px 0;
	}

.top02 ul.flex li h4{
	font-size: 16px;
	color:#13777c;
	margin: 0;
	}

.top02 ul.flex li p{
	font-size: 12px;
	margin: 0;
	}

.top03{
	padding-top:50px;
	}

.top03 .title{
	background: url(../img/tit_bg02.png) no-repeat center;
	height: 180px;
	position: relative;
	margin-bottom: -70px;
	}

.top03 .title > *{
	position: absolute;
	top: 30px;
	left: 0;
	width: 100%;
	}

.top03 .title + p{
	text-align: center;
	}

.top03 ul.flex{
	margin: 50px 0;
	}

.top03 ul.flex li h3{
	font-size: 16px;
	line-height: 1.3;
	color: #13777c;
	margin: 10px 0;
	}

.top03 ul.flex li span{
	display: inline-block;
	color: #fff;
	font-size: 13px;
	line-height: 1;
	padding: 5px;
	background-color: #4480be;
	}

.top03 ul.flex li:first-child span{ background-color: #bea644; }
.top03 ul.flex li:last-child span{ background-color: #da6591; }

.top03 ul.flex li p{
	font-size: 12px;
	}

.top04{
	background-color: #efeae0;
	}

.top04 h3{
	font-size:26px;
	font-family:GenJyuu_R;
	line-height: 1;
	text-align: center;
	margin:50px 0 30px;
	}

.top04 ul.topics li time{
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 20px;
	}

.top04 dl.newsTop{
	border-top: 1px dotted #ccc;
	padding-top: 10px;
	margin-bottom: 30px;
	}

.top04 dl.newsTop dt{
	float: left;
	}

.top04 dl.newsTop dd{
	padding: 0 0 10px 200px;
	margin-bottom: 10px;
	border-bottom: 1px dotted #ccc;
	}

span.newsLabel{
	display:inline-block;
	color:#FFF;
	font-size:10px;
	width:80px;
	text-align:center;
	margin-left:20px;
	padding:2px;
	border-radius:15px;
	}

span.newsLabel.products{ background:#779be5; }
span.newsLabel.news{ background:#eb7594; }

.top05 ul.bnrs li{
	width: 250px;
	}

.top06{
	padding-top: 0;
	}

.top06 p strong{
	display: block;
	text-align: center;
	font-size: 140%;
	font-family:GenJyuu_R;
	}

.top06 ul{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin: 30px 0;
	}

.top06 ul li{
	width: 24%;
	}

.top06 ul li a{
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	font-weight: bold;
	font-size: 110%;
	color: #f5a74a;
	border: 4px solid #f5a74a;
	border-radius: 999px;
	padding: 10px;
	height: 80px;
	transition: .3s;
	}

.top06 ul li a:hover{
	background-color: #f5a74a;
	color: #fff;
	text-decoration: none;
	}

ul.bnrs li{
	margin-bottom: 15px;
	}

#side ul.bnrs li{
	text-align: center;
	}

#cta{
	padding: 100px 0;
	text-align:center;
	background-color: #13777c;
	position: relative;
	z-index: 10;
	}

#cta .inner{
	width: 960px;
	color: #fff;
	}

#cta .inner h3{
	font-size: 30px;
	font-weight: bold;
	line-height: 1;
	margin: 0 auto 30px;
	}

#cta .inner > p{
	font-weight: bold;
	font-size:20px;
	margin-bottom: 50px;
	}

#cta ul li{
	border:1px solid #fff;
	border-radius: 5px;
	width: 460px;
	overflow: hidden;
	}

#cta ul li.tel{
	font-size: 13px;
	font-weight: bold;
	display: flex;
	justify-content: center;
	align-items: center;
	}

#cta ul li.tel span{
	font-size: 30px;
	line-height: 1.2;
	display: block;
	}

#cta ul li.tel span a{
	color: #fff;
	}

#cta ul li.mail a{
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: left;
	background-color: #fff;
	border-radius: 3px;
	color: #13777c;
	height: 130px;
	transition: .3s;
	}

#cta ul li.mail a:hover{
	opacity: 1;
	transform: translate(3px,3px);
	text-decoration: none;
	}

#cta ul li.mail a svg{
	fill:#13777c;
	width: 43px;
	height: 32px;
	margin-right: 20px;
	}

#cta ul li.mail a span{
	font-size: 20px;
	font-weight: bold;
	line-height: 1.5;
	}

#cta2{
	border:2px solid #13777c;
	background-color:#FFF;
	position:fixed;
	bottom:-2px;
	right:-2px;
	width:370px;
	display: flex;
	flex-wrap: wrap;
	z-index: 100;
	}

#cta2 .bnr {
	position: absolute;
    top: -150px;
    left: 0;
    margin: 0;
    width: 100% !important;
	}

#cta2 .bnr a {
	display: block;
	width: 80%;
	margin: 0 auto;
	}

#cta2 > *{
	width: 50%;
	}

#cta2 p{
	margin: 0;
	}

#cta2 > .tel{
	width: 100%;
	}

#cta2 > .tel div{
	display: flex;
	justify-content: center;
	align-items: baseline;
	background-color: #fff;
	color: #13777c;
	font-weight: bold;
	font-size: 10px;
	line-height: 1;
	padding: 7px;
	width: 100%;
	}

#cta2 > .tel div span{
	font-size: 16px;
	line-height: 1;
	margin-right: 5px;
	}

#cta2 > .tel div svg{
	fill:#13777c;
	height: 17px;
	margin-right: 5px;
	}

#cta2 > .mail{
	background-color: #0d6569;
	overflow: hidden;
	}

#cta2 > .mail a{
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #13777c;
	color: #fff;
	font-weight: bold;
	font-size: 18px;
	width: 100%;
	padding: 5px;
	transition: .3s;
	}

#cta2 > .mail a:hover{
	opacity: 1;
	transform: translate(3px,3px);
	text-decoration: none;
	}

#cta2 > .mail a svg{
	fill:#fff;
	height: 15px;
	margin-right: 10px;
	}

#cta2 > .mail.catalog{
	background-color: #ddd;
	border-top: 1px solid #13777c;
	}

#cta2 > .mail.catalog a{
	background-color: #fff;
	color: #13777c;
	}

#cta2 > .mail.catalog a svg{
	fill:#13777c;
	}



/*sub
------------------------------------------*/
#subpage{
	background:url(../img/bg03.gif) no-repeat 20% bottom;
	border-top: 88px solid transparent;
	padding-bottom: 340px;
	}

#main{
	float:left;
	width:790px;
	padding-bottom: 100px;
	}

#side{
	float:right;
	width:280px;
	padding-bottom: 100px;
	}

div#snav{
	padding:25px 20px;
	margin-bottom:30px;
	background:url(../img/bg04.png) center #FFF;
	border-radius:10px;
	box-shadow:0px 0px 5px -1px rgba(0,0,0,0.3);
	-moz-box-shadow:0px 0px 5px -1px rgba(0,0,0,0.3);
	-webkit-box-shadow:0px 0px 5px -1px rgba(0,0,0,0.3);
	}

div#snav h2{
	text-align:center;
	border-bottom:1px dashed #ccc;
	padding-bottom:20px;
	margin-bottom:10px;
	}

div#snav h2 img{
	height:76px;
	}

div#snav h2 span{
	display: block;
	margin-top: 10px;
	font-family:GenJyuu_R;
	}

div#snav h2 a{
	display: block;
	transition: .3s;
	}

div#snav dl{
	font-size:12px;
    color: #407080;
	}

div#snav dl dt{
	font-size:14px;
	font-weight:bold;
	margin-top:10px;
	}

div#snav a{
	color:#407080;
	}

div#snav a:hover{
	color:#b2b2b2;
	text-decoration:none;
	}

div#snav .ac a{
	color:#b2b2b2;
	}

div#snav li a span{
	display: block;
	margin-left: 10px;
	font-size: 80%;
	}


ul#pankuzu{
	font-size:10px;
	color:#999;
	background:url(../img/icon03.gif) no-repeat left center;
	padding-left:20px;
	margin: 15px 0 40px;
	display: flex;
	}

ul#pankuzu li:not(:first-child):before{
	content:">";
	margin: 0 7px;
	}

ul#pankuzu li a{
	color:#999;
	}


#title{
	background:rgba(0,0,0,0.03);
	height:160px;
	overflow:hidden;
	}

#title h2{
	font-family:GenJyuu_R;
	font-size:40px;
	line-height:160px;
	letter-spacing:2px;
	color:#13777c;
	width:1100px;
	margin:0 auto;
	}

#title h2 small{
	font-size:50%;
	margin-left:20px;
	}

#title h2.works{ background:url(../works/img/title.jpg) no-repeat; }
#title h2.example{ background:url(../example/img/title.jpg) no-repeat; }
#title h2.products{ background:url(../products/img/title.jpg) no-repeat; }
#title h2.company{ background:url(../company/img/title.jpg) no-repeat; }
#title h2.safety{ background:url(../safety/img/title.jpg) no-repeat; }
#title h2.topics{ background:url(../topics/img/title.jpg) no-repeat; }
#title h2.column{ background:url(../column/img/title.jpg) no-repeat; }


#main h3{
	font-size:25px;
	color:#407080;
	background:url(../img/line01.gif) repeat-x;
	}

#main h3 span{
	display:block;
	padding:20px 0;
	background:url(../img/line01.gif) repeat-x bottom;
	}

#main > h3:first-child{
	margin-top: 0;
	}

#main h4{
	font-size:20px;
	color:#407080;
	border-bottom:3px double #407080;
	position:relative;
	margin-bottom:10px;
	}

#main h4 span{
	border-bottom:3px solid #407080;
	}

#main h4 span small{
	font-size:80%;
	margin-left:50px;
	}

#main h5{
	font-size:17px;
	color:#407080;
	margin:10px 0;
	}

#main h5.bb{
	border-bottom: 1px solid #407080;
	}

.pageUp{
	clear:both;
	text-align:right;
	font-size:10px;
	}


ul.x2{
	margin-right:-25px;
	}

ul.x2 li{
	float:left;
	width:382px;
	margin:0 25px 20px 0;
	}

ul.x2 li a.btn02 p{
	font-size:20px;
	font-weight:bold;
	height:60px;
	}

ul.x3{
	margin-right:-14px;
	overflow:hidden;
	}

ul.x3 li{
	float:left;
	width:253px;
	margin:0 14px 15px 0;
	}

ul.x3 li a.btn02 p{
	font-size:16px;
	font-weight:bold;
	height:50px;
	}

ul.x4{
	margin-right:-15px;
	overflow:hidden;
	}

ul.x4 li{
	float:left;
	width:185px;
	margin:0 15px 15px 0;
	}

ul.x4 li a.btn01{
	width:100%;
	text-align:center;
	}


/* works */

#workFlow{
	position: relative;
	}

#workFlow figure{
	border: 5px solid #fff;
	margin-bottom: 10px;
	}

#workFlow .flex{
	flex-wrap: wrap;
	}

#workFlow .flex > *{
	width: 47%;
	}

#workFlow p{
	margin: 0;
	}

#workFlow .flow{
	border-radius:10px;
	background:rgba(0,0,0,0.03);
	padding:30px;
	margin-top:40px;
	position:relative;
	}

#workFlow .step01 ul li{
	width: 230px;
	}

#workFlow .step01 ul li p{
	font-size: 12px;
	}

#workFlow .step01 ul li span{
	font-weight:bold;
	font-size: 12px;
	display:block;
	}

#workFlow .step01 strong{
	font-size:17px;
	color:#756344;
	display:block;
	padding:0 0 10px 70px;
	}

#workFlow .txt{
    font-size: 16px;
    font-weight: bold;
    color: #df6363;
	margin-top: 20px;
	}

#workFlow .step{
	position:absolute;
	top:-30px;
	left:10px;
	}

#workFlow .line1,
#workFlow .line2,
#workFlow .line3{
	position:absolute;
	z-index:2;
	}

#workFlow .line1{ top:330px; left:160px;}
#workFlow .line2{ top:570px; left:350px;}
#workFlow .line3{ top:700px; left:610px;}

ul.play_basic li{
	border-radius:10px;
	background:rgba(0,0,0,0.03);
	padding:30px;
	margin-top:30px;
	}

ul.play_basic li h4{
	font-size:25px !important;
	line-height:1;
	margin:0 0 20px;
	border:none !important;
	}

ul.play_basic li p{
	width:400px;
	float:left;
	}

ul.play_basic li img{
	float:right;
	margin-top:-45px;
	width:300px;
	}

ul.play_basic li h4 span img{
	width:30px !important;
	float:none;
	margin:-6px 5px 0 0;
	border:none;
	}

ul.play_element li{
	border-radius:10px;
	background:rgba(0,0,0,0.03);
	padding:20px;
	}

ul.play_element li h4{
	font-size:18px !important;
	line-height:1;
	margin:0 0 20px;
	border:none !important;
	}

ul.nursery li{
	border-radius:10px;
	background:rgba(0,0,0,0.03);
	padding:20px;
	}

ul.nursery li h4{
	font-size:18px !important;
	line-height:1;
	margin:0 0 10px;
	border:none !important;
	}

ul.nursery dl{
	font-size:11px;
	}

ul.nursery dt{
	float:left;
	background:#000;
	border-radius:3px;
	color:#FFF;
	padding:1px;
	width:70px;
	text-align:center;
	}

ul.nursery dd{
	padding:1px 0 1px 80px;
	margin-bottom:5px;
	}

ul.nursery .color1{ background-color:#ecae55;}
ul.nursery .color2{ background-color:#54bdd3;}
ul.nursery .color3{ background-color:#e38cad;}

ul.garden_element li p{
	margin:20px 0 0;
	}

ul.garden_element li img.fr{
	width:140px;
	margin-top:-20px;
	}

#gardenMap{
	position:relative;
	margin-bottom:30px;
	}

#gardenMap ul li{
	position:absolute;
	}

#gardenMap ul li.no01{left:60px;top:245px;}
#gardenMap ul li.no02{left:156px;top:197px;}
#gardenMap ul li.no03{left:154px;top:332px;}
#gardenMap ul li.no04{left:234px;top:270px;}
#gardenMap ul li.no05{left:330px;bottom:240px;}
#gardenMap ul li.no06{left:400px;bottom:30px;}
#gardenMap ul li.no07{right:287px;bottom:137px;}
#gardenMap ul li.no08{right:239px;bottom:89px;}
#gardenMap ul li.no09{right:156px;bottom:308px;}
#gardenMap ul li.no10{right:20px;bottom:160px;}

#gardenMap ul li span{
    display:none;
    padding:10px;
    margin:10px 0 0 -5px;
	width:200px;
    position:absolute;
	bottom:50px;
	left:-80px;
	color:#13777c;
	font-weight:bold;
    background:#fff;
	border:2px solid #13777c;
	border-radius:5px;
	box-shadow:3px 3px 0px 0px rgba(0,0,0,0.2);
	-moz-box-shadow:3px 3px 0px 0px rgba(0,0,0,0.2);
	-webkit-box-shadow:3px 3px 0px 0px rgba(0,0,0,0.2);
    z-index:2;
	-webkit-animation:fadein 0.4s linear 0s 1;
	}

#gardenMap ul li:hover span{
    display:block;
	}

@-webkit-keyframes fadein {
	0%{ opacity:0;}
	100% {opacity:1;}
}

#gardenMap ul li span:after,
#gardenMap ul li span:before{
	top:100%;
	left:50%;
	border:solid transparent;
	content:" ";
	height:0;
	width:0;
	position:absolute;
	pointer-events:none;
	}

#gardenMap ul li span:after{
	border-color:rgba(255, 255, 255, 0);
	border-top-color:#fff;
	border-width:10px;
	margin-left:-10px;
	}

#gardenMap ul li span:before{
	border-color:rgba(0, 0, 0, 0);
	border-width:13px;
	margin-left:-13px;
	border-top-color:#13777c;
	}

#gardenMap ul li span img{
	margin-top:5px;
	}

.gardenStoryBtn{
	margin-top:30px;
	}

.gardenStoryBtn p{
	font-size:26px;
	font-weight:bold;
	line-height:1.5;
	height:130px;
	}

.gardenStoryBtn span{
	margin-top:10px;
	}

.garden_story li strong{
	display:inline-block;
	font-size:16px;
	margin-bottom:10px;
	border-bottom:3px solid #13777c;
	color:#13777c;
	}

.garden_story2{
	border-radius:10px;
	background:rgba(0,0,0,0.03);
	padding:30px;
	margin-top:30px;
	}

.garden_story2 h4{
	font-size:20px !important;
	line-height:1;
	margin:0 0 20px !important;
	border:none !important;
	}

.garden_story2 dt{
	float:left;
	width:480px;
	}

.garden_story2 dd{
	display:block;
	width:230px;
	float:right;
	}

.garden_story2 dd img:first-child{
	margin-bottom:12px;
	}

.jabike dl{
	position:relative;
	}

.jabike dt{
	float:none;
	width:100%;
	}

.jabike dd{
	position:absolute;
	width:auto;
	float:none;
	top:-50px;
	right:-10px;
	}

.jabike dd img{
	border:none;
	}


dl.aijien dt{
	width:380px;
	}

dl.aijien dd{
	width:326px;
	}

ul.brand li > a,
ul.brand li > div{
	display:block;
	background:#FFF;
	box-shadow:0px 0px 5px -1px rgba(0,0,0,0.3);
	position: relative;
	}

ul.brand li div .snsLink{
	position: absolute;
	bottom: 10px;
	right: 10px;
	}

ul.brand li div .snsLink img{
	height: 25px;
	margin-left: 5px;
	}

ul.brand li > a:hover{
	text-decoration:none;
	box-shadow:none;
	}

ul.brand li figure{
	text-align: center;
	padding: 10px 10px 0;
	overflow: hidden;
	}

ul.brand li a:hover figure img{
	transform: scale(1.02);
	}

ul.brand li p{
	font-size:12px;
	margin:0;
	padding:0 10px 10px;
	color:#333;
	}

ul.brand li h4{
	font-size: 16px !important;
	line-height: 1.5;
	border:none !important;
	margin:0 !important;
	padding:10px;
	}

ul.brand li h4 small{
	display: block;
	}

ul.brand02 li{
	margin-bottom: 20px;
	}

ul.brand02 li a{
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	padding: 10px;
	}

ul.brand02 li a > *{
	width: 49%;
	}

ul.brand02 li a figure{
	padding: 0;
	}

ul.brand02 li a p{
	font-size: inherit;
	}

ul.brand02 li a h4{
	font-size: 20px !important;
	}

ul.itemList li a{
	display:block;
	margin-bottom:20px;
	}

ul.itemList li a:hover{
	text-decoration:none;
	}

ul.itemList li a figure,ul.itemList li figure{
	padding:10px;
	border:1px solid #CCC;
	background:#FFF;
	text-align:center;
	}

ul.itemList li a figure img,ul.itemList li figure img{
	height:90px;
	}

ul.itemList li a h4,ul.itemList li h4{
	font-size:14px !important;
	line-height:1.5;
	border:none !important;
	margin:0;
	padding:5px 0 0;
	}

ul.itemList li a h4 i,ul.itemList li h4 i{
	position:static;
	margin-right:5px;
	}

ul.itemList li a:hover h4{
	text-decoration:underline;
	}

ul.itemList li a dl,ul.itemList li dl{
	font-size:13px;
	line-height:1.8;
	color:#407080!important;
	}

ul.itemList li a dl dt,ul.itemList li dl dt{
	float:left;
	}

ul.itemList li a dl dd{
	padding-left:40px;
	}

ul.haba li strong{
	display:block;
	font-size:15px;
	}

ul.haba li img{
	height:80px;
	float:left;
	margin-right:10px;
	}

.subPho{
	position:relative;
	}

.subPho figure{
	position:absolute;
	transform:rotate(5deg);
	width:40%;
	z-index:2;
	top:10px;
	right:-10px;
	}

.subPho figure img{
	border:3px solid #FFF;
	}

ul.sitemap li dl{
	margin-top: 30px;
	}

ul.sitemap li dl dt{
	font-size: 20px;
	font-weight: bold;
	color: #407080;
	border-bottom: 3px double #407080;
	margin-bottom: 10px;
	}

ul.sitemap li dl dd.categori{
	font-size: 16px;
	font-weight: bold;
	margin-top: 10px;
	}

ul.sitemap li dl dd span{
	display: block;
	font-size: 80%;
	margin-bottom: 15px;
	padding-left: 10px;
	}

ul.sitemap li dl.noBorder > dt{
	border-bottom: none;
	font-size: 16px;
	}

dl.products dt{
	float:left;
	text-align:center;
	border-radius:3px;
	background:#13777c;
	color:#FFF;
	width:80px;
	}

dl.products dd{
	padding-left:100px;
	margin-bottom:10px;
	}

.products01 > figure,
.outline > figure{
	width: 386px;
	}

.products01 > figure img{
	border: 5px solid #fff;
	}

.products01 > div,
.outline > div{
	width: 380px;
	}

ul.BERG_Page{
	margin-top:30px;
	background:url(../products/img/brand_berg_road.png) no-repeat 50px top;
	height:800px;
	position:relative;
	}

ul.BERG_Page li{
	background:#FFF;
	border-radius:10px;
	padding:20px;
	position:absolute;
	}

ul.BERG_Page li h5{
	margin-top:0 !important;
	}

ul.BERG_Page li h5 span{
	display:inline-block;
	font-size:11px;
	color:#FFF;
	border-radius:50%;
	text-align:center;
	padding-top:18px;
	margin-right:10px;
	width:50px;
	height:50px;
	}

ul.BERG_Page li img{
	margin-bottom:0;
	width:200px;
	}

ul.BERG_Page li p{ margin: 0;}
ul.BERG_Page li img{ position: absolute;}

ul.BERG_Page li.step1{width:600px;}
ul.BERG_Page li.step1 h5{ color:#2ab0d6 !important;}
ul.BERG_Page li.step1 h5 span{ background:#2ab0d6;}
ul.BERG_Page li.step1 p{ width: 335px;}
ul.BERG_Page li.step1 img{ top: 20px; right: 20px;}

ul.BERG_Page li.step2{width:450px; top:300px; right:0;}
ul.BERG_Page li.step2 h5{ color:#e06f6f !important;}
ul.BERG_Page li.step2 h5 span{ background:#e06f6f;}
ul.BERG_Page li.step2 .fukidashi{ width:auto; position:absolute; top:-30px; right:-20px;}
ul.BERG_Page li.step2 p{ width: 185px;}
ul.BERG_Page li.step2 img{ bottom: 20px; right: 20px;}

ul.BERG_Page li.step3{ bottom:0; width: 100%;}
ul.BERG_Page li.step3 h5{ color:#dda23c !important;}
ul.BERG_Page li.step3 h5 span{ background:#dda23c;}
ul.BERG_Page li.step3 p{ width: 520px;}
ul.BERG_Page li.step3 img{ top: 20px; right: 20px;}

ul.BERG_Page li.illust01{ left:0; top:250px;background:none;}
ul.BERG_Page li.illust01 img{ width:auto;}

ul.BERG_Page li.illust02{ right:0; top:100px;background:none;}
ul.BERG_Page li.illust02 img{ width:auto;}


.exampleBox strong{
	display:block;
	font-size:17px;
	color:#13777c;
	margin-bottom:15px;
	}

.exampleBox p{
	float:left;
	width:465px;
	margin:0;
	}

.exampleBox img{
	float:right;
	}

.exampleBox .btn01{
	background: #f5a74a;
	box-shadow: 0px 3px 0px 0px #f18900;
}
.exampleBox .btn01:hover{
	background: #f7b866;
}

.exampleBtn strong{
	font-size: 200%;
	}

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

.example01 > figure{
	width: 300px;
	}

.example01 > figure img{
	border: 5px solid #fff;
	}

.example01 > div{
	width: 460px;
	}

.example01 > div p{
	margin-top: 0;
	}

.example01 > div p.alignC{
	text-align: left !important;
	}

.example01 ul.bnr_vr2{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	}

.example01 ul.bnr_vr2 li{
	width: 49%;
	margin-top: 10px;
	}

ul.swedenTrimPark li{
	width:30%;
	margin:0;
	text-align:center;
	}

ul.swedenTrimPark li img{
	width:95%;
	float:none;
	}

ul.swedenTrimPark li span{
	display:block;
	font-size:12px;
	margin-top:5px;
	}

ul.swedenTrimPark li:first-child{
	width:40%;
	font-size:14px;
	text-align:left;
	}

.table_A{
	width:100%;
	}

.table_A td{
	padding:10px;
	text-align:left;
	vertical-align:top;
	border:1px dotted #999;
	}

.table_A th{
	padding:10px;
	text-align:left;
	vertical-align:top;
	border:1px dotted #999;
	width:25%;
	}

#history{
	background:url(../company/img/history_bg.png) no-repeat 300px top;
	background-size:55%;
	margin-top:-100px;
	position:relative;
	height:1170px;
	}

#history ul li{
	border:2px solid #000;
	border-radius:5px;
	background:#FFF;
	padding:10px;
	padding-top:25px;
	width:310px;
	font-size:12px;
	position:absolute;
	}

#history ul li img{
	margin-top:10px;
	}

#history ul li img.fr{
	margin:0 0 5px 10px;
	}

#history ul li strong{
	font-size:14px;
	display:block;
	}

#history ul li span{
	font-size:18px;
	font-weight:bold;
	display:inline-block;
	border-radius:5px;
	padding:0 10px;
	color:#FFF;
	position:absolute;
	top:-15px;
	}

#history ul li.his1976{ top:120px; border-color:#e2c03a;}
#history ul li.his1976 span{ background-color:#e2c03a;}
	
#history ul li.his1989{ right:0; top:150px; border-color:#3a9de2;}
#history ul li.his1989 span{ background-color:#3a9de2;}

#history ul li.his1990{ top:330px; border-color:#2fc398;}
#history ul li.his1990 span{ background-color:#2fc398;}

#history ul li.his1992{ right:0; top:470px; border-color:#19af39;}
#history ul li.his1992 span{ background-color:#19af39;}

#history ul li.his1995{ top:450px; border-color:#f67676;}
#history ul li.his1995 span{ background-color:#f67676;}

#history ul li.his2003{ right:0; top:780px; border-color:#e87da3;}
#history ul li.his2003 span{ background-color:#e87da3;}

#history ul li.his2014{ top:730px; border-color:#335f95;}
#history ul li.his2014 span{ background-color:#335f95;}

dl.safety{
	width:150px;
	margin:0 auto;
	}

dl.safety dt{
	text-align:center;
	background:#13777c;
	border:1px solid #13777c;
	color:#FFF;
	padding:5px;
	}

dl.safety dd{
	background:#FFF;
	border:1px solid #13777c;
	padding:10px;
	}

.safety01 h5{
	margin-bottom: 0 !important;
	}

.safety01 h5 + p{
	margin-top: 0 !important;
	}

.biko{
	font-size:12px;
	border:1px dotted #999;
	padding:10px;
	}

.greeting{
	margin:30px 0;
	position:relative;
	}

.greeting div{
	width:48%;
	border:1px dotted #13777c;
	padding:20px;
	}

.greeting div p{
	text-align:center;
	margin:0;
	font-size:18px;
	color:#13777c;
	}

.greeting ul{
	margin:20px 0;
	}

.greeting ul li{
	list-style-type:decimal;
	margin:10px 0 0 30px;
	}

.greeting i{
	font-size:30px;
	position:absolute;
	width:100%;
	text-align:center;
	top:130px;
	color:#13777c;
	display:block;
	}

.greeting2{
	font-size:110%;
	font-weight:bold;
	color:#008cb4;
	margin-top:20px;
	}

.greeting2 p{
	margin:10px 0 0 17px;
	}

.tabMenu{
	overflow:hidden;
	margin-bottom:20px;
	border-right:1px dotted #13777c;
	border-bottom:1px dotted #13777c;
	}

.tabMenu li{
	width:50%;
	float:left;
	padding:10px;
	padding-left:30px;
	border:1px dotted #13777c;
	border-bottom:none;
	border-right:none;
	background:url(../img/icon04.png) no-repeat 10px center;
	}

.tabMenu li.select{
	color:#fff;
	background:url(../img/icon05.png) no-repeat 10px center #13777c;
	}

.hide {
	display:none;
	}

.tabMenu li:hover {
	background:url(../img/icon04.png) no-repeat 10px center #FFF;
	cursor:pointer;
	}

.tabMenu li.select:hover{
	color:#fff;
	background:url(../img/icon05.png) no-repeat 10px center #13777c;
	}

.exampleName{
	font-size:10px;
	display:inline-block;
	background:rgba(255,255,255,0.8);
	padding:3px 10px;
	position:relative;
	top:-35px;
	left:10px;
	}

.exampleNameWrap{ margin-bottom:0 !important;}

.exampleCase01{
	margin-top:20px;
	}

.exampleCase01 dt{
	float:left;
	width:520px;
	}

.exampleCase01 dd{
	display:block;
	width:250px;
	float:right;
	}

.exampleCase01 dd p{
	margin:0 0 12px;
	position:relative;
	}

.exampleCase01 dd p .exampleName{
	position:absolute;
	top:inherit;
	bottom:10px;
	left:10px;
	}

.exampleTop{
	font-size:20px !important;
	margin-top:10px;
	}

ul.exampleList{
	width: 1110px;
	margin: 0 auto 50px;
	}

ul.exampleList li{
	width: 355px;
	margin-bottom: 20px;
	background-color: #fff;
	}

ul.exampleList li div{
	padding: 25px;
	}

ul.exampleList li div p{
	font-size: 10px;
	font-weight: bold;
	line-height: 1;
	color: rgba(35,35,35, 0.45);
	margin-top: 0;
	}

ul.exampleList li div h3{
	font-size: 17px;
	color: #232323;
	margin: 0;
	}

.bbd{ border-bottom:1px dashed #407080;}

.itemDetail{}

.itemDetail figure{
	width:430px;
	padding:20px;
	background:#FFF;
	float:left;
	text-align:center;
	}

.itemDetail figure div{
	margin-top:10px;
	}


.itemDetail figure img{
	max-height:400px;
	}

.itemDetail .data{
	width:340px;
	float:right;
	}

.itemDetail .data .bb{
	border-bottom:1px solid #999;
	}

.itemDetail table{
	width:100%;
	margin-bottom:20px;
	}

.itemDetail table th{
	border-bottom:1px solid #999;
	font-weight:bold;
	}

.itemDetail table td{
	border-bottom:1px dotted #ccc;
	text-align:center;
	}

.itemDetail table .alignR{
	padding-right:20px;
	}

.itemDetail table .price{
	padding-left: 10px;
	display: inline-block;
	}

.itemDetail table caption{
	border:1px solid #CCC;
	background:rgba(204,204,204,0.3);
	font-weight:bold;
	margin-bottom:5px;
	}

.itemDetail table small{
	font-size:10px;
	}

.itemDetail dl{
	margin-bottom:20px;
	}

.itemDetail dl dt{
	float:left;
	font-weight:bold;
	width:95px;
	position:relative;
	}

.itemDetail dl dd{
	padding:0 0 0 60px;
	}

.itemDetail dl dt:after{
	content:"：";
	position:absolute;
	right:0;
	}

.itemDetail sup{
	font-size:9px;
	}

.itemDetail2 figure{
	width:790px;
	float:none;
	}

.itemDetail2 .data{
	width:790px;
	margin-top:20px;
	float:none;
	}

.itemDetail2 ul.thumb{
	background-color:#FFF;
	padding:20px;
	padding-top:0;
	text-align:center;
	}

.itemDetail2 ul.thumb li{
	display:inline-block;
	padding:10px;
	margin:10px 5px 0;
	border:1px solid #CCC;
	}

.itemDetail2 ul.thumb li img{
	height:50px;
	cursor:pointer;
	}

.itemDetail2 dl dd{
	padding:0 0 0 100px;
	}


.itemOriginal{}

.itemOriginal .fr{
	width:40%;
	}

.itemOriginal ul li{
	margin-bottom:10px;
	}

.itemOriginal table{
	width:100%;
	margin-top:30px;
	background:#FFF;
	}

.itemOriginal .widthAuto{
	width:auto;
	margin:0 0 0 20px;
	}

.itemOriginal table th{
	border:1px solid #999;
	background:#13777c;
	color:#FFF;
	font-weight:bold;
	padding:5px;
	}

.itemOriginal table td{
	border:1px solid #999;
	text-align:center;
	padding:5px;
	}

.itemOriginal table span{
	display:block;
	line-height:1;
	}

.itemOriginal h6{
	font-size:17px;
	color:#13777c;
	border-bottom:1px dashed #13777c;
	margin-bottom:10px;
	}

.itemOriginal sup{
	font-size:9px;
	}

.itemDetail .btn01,
.itemOriginal .btn01{
	width:100%;
	text-align:center;
	}

ul.icon{
	margin:0 -10px 0 0;
	overflow:hidden;
	}

ul.icon:before{
	content:"遊び要素（アイテム）";
	display:block;
	font-weight:bold;
	margin-bottom:3px;
	}

.itemDetail2 ul.icon:before{
	content:"5つの遊び要素";
	}

ul.icon li{
	border-radius:5px;
	color:#FFF;
	margin:0 10px 5px 0;
	width:160px;
	height:29px;
	line-height:29px;
	float:left;
	}

.itemDetail2 ul.icon li{
	width:150px;
	}

ul.icon li.icon_a{ background:#7ca918; font-size:16px;}
ul.icon li.icon_b{ background:#d81f25; font-size:16px;}
ul.icon li.icon_c{ background:#e0aa00; font-size:16px;}
ul.icon li.icon_d{ background:#00b3dc; font-size:15px;}
ul.icon li.icon_e{ background:#654d97; font-size:15px;}
ul.icon li.icon_f{ background:#ec7a9b; font-size:14px;}
ul.icon li.icon_g{ background:#c44704; font-size:15px;}
ul.icon li.icon_h{ background:#00885a; font-size:14px;}
ul.icon li.icon_i{ background:#3171b8; font-size:16px;}
ul.icon li.icon_j{ background:#915441; font-size:16px;}
ul.icon li.icon_k{ background:#ab2b82; font-size:13px;}
ul.icon li.icon_l{ background:#00a4b0; font-size:12px;}
ul.icon li.icon_m{ background:#e6326f; font-size:16px;}

ul.icon li.icon_n{ background:#29a7e1; font-size:16px;}
ul.icon li.icon_o{ background:#eb6e90; font-size:16px;}
ul.icon li.icon_p{ background:#9b68aa; font-size:16px;}
ul.icon li.icon_q{ background:#90c320; font-size:16px;}
ul.icon li.icon_r{ background:#f28e1e; font-size:16px;}

ul.icon li img{
	margin:0 5px;
	height:28px;
	border-radius:5px;
	}

ul.iconDetail{}

ul.iconDetail li.wide{
	width:787px;
	margin-bottom:0;
	}

ul.iconDetail li.two{
	width:520px;
	}

ul.iconDetail li.two img{
	width:253px;
	}

ul.iconDetail li h4{
	margin:0 0 10px;
	}

ul.iconDetail li h4 img{
	width:30px !important;
	border-radius:4px;
	margin:0 10px 3px 0;
	}

ul.iconDetail figure{
	width:253px;
	}

ul.iconDetail p{
	margin:5px 0 0 0;
	text-align:center;
	}

h4 i{
	display:block;
	position:absolute;
	right:0;
	top:-3px;
	margin:0;
	}

h4 i img{
	height:27px;
	border-radius:5px;
	margin-left:5px;
	}

ul.bnr_vr{
	display: none;
	}

.cta{
	background-color: #fff;
	padding: 20px;
	text-align: center;
	}

.cta > *{
	margin: 0 !important;
	}

.cta > ul{
	display: flex;
	justify-content: space-between;
	align-items: center;
	}

.cta > ul li{
	width: 50%;
	}

.cta > ul li strong{
	font-size: 140%;
	display: block;
	color: #13777c;
	}

.rh18021_video{
	float: right;
	margin: 0 0 20px 20px;
	width: 450px;
	}

.rh18021_video p{
	font-size: 10px;
	margin-top: 0;
	text-align: right;
	}

.amazon01{
	margin-bottom: 30px;
	}

.amazon01 a.btn01{
	width: 250px;
	text-align: center;
	}

.amazon02{
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	margin-top: 50px;
	}

.amazon02 > *{
	margin: 0 20px;
	text-align: center;
	}

.amazon02 span{
	display: block;
	margin-top: 5px;
	font-size: 11px;
	}

.brand_hags{
	justify-content: center;
	}

.brand_hags > *{
	font-weight: bold;
	text-align: center;
	margin: 15px;
	}

.brand_hags > * .btn01{
	font-size: 150%;
	line-height: 1;
	}

.brand_hags > .unimini{
	color: #f18b00;
	}

.brand_hags > .unimini .btn01{
	background-color: #f18b00;
	box-shadow: 0 3px 0 0 #cf7700;
	}

.brand_hags > .uniplay{
	color: #0054a7;
	}

.brand_hags > .uniplay .btn01{
	background-color: #0054a7;
	box-shadow: 0 3px 0 0 #003b76;
	}

ul.column li p{
	padding-left:120px !important;
	}

ul.column li p i{
	float: right;
	line-height: 20px;
	}

ul.newsList li{
	border-bottom: 1px dotted #ccc;
	}

ul.newsList li a::after{
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
	}

ul.newsList li time{
	float:left;
	padding:15px 0 15px 0;
	}

ul.newsList li p{
	margin:0;
	padding:15px 15px 15px 200px;
	}

ul.newsList li img{
	width: 20px;
	vertical-align: top;
	}

.works01{
	text-align: center;
	margin-bottom: 50px;
	}

.works01 p{
	margin-top: 0;
	}

.works01 p strong{
	font-size: 140%;
	}

.works02 .btn01{
	text-align: center;
	display: block;
	}

.midashi{
	border: none !important;
	}

.midashi span{
	padding: 15px !important;
	border: none !important;
	display: block;
	}

.color01 span{ color: #7e69a5; background: #e7e3ef !important;} /*体力遊び*/
.color02 span{ color: #9eaf45; background: #eeefdf !important;} /*ごっこ遊び*/
.color03 span{ color: #408d7c; background: #deeae6 !important;} /*壁付遊具*/
.color04 span{ color: #c27089; background: #f5e6e9 !important;} /*パーテーション*/
.color05 span{ color: #da7a00; background: #f9e8d2 !important;} /*ソファ・イス・テーブル・インテリア*/
.color06 span{ color: #da7a00; background: #f9e8d2 !important;} /*キャビネット*/
.color07 span{ color: #1e688f; background: #ccdae8 !important;} /*床置型遊具*/

.sense{
	background-color: #fff;
	padding: 30px;
	}

.sense ul.disc li{
	margin: 0 0 0 20px;
	}

.sense .flex figure{
	width: 40%;
	text-align: center;
	}

dl.sense {
    font-size: 12px;
    padding: 0;
}
dl.sense dt {
    float: left;
}
dl.sense dd {
    padding-left: 60px;
}

.sense .flex dl{
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	width: 55%;
	}

.sense .flex dl dt{
	margin-right: 10px;
	}

.sense .flex dl dt p{
	border-radius: 50%;
	color: #fff;
	text-align: center;
	line-height: 80px;
	font-weight: bold;
	font-size: 120%;
	width: 80px;
	margin: 0;
	}

.sense .flex dl dt p.binkan{ background-color: #cf7e9f; }
.sense .flex dl dt p.donkan{ background-color: #77c4a2; }

.sense .flex dl dd{
	padding: 10px 0;
	width: 300px;
	}



.sense.sense01 h4{
	background-color: #0b927a;
	border: none !important;
	border-radius: 999px;
	color: #fff !important;
	text-align: center;
	line-height: 1;
	font-size: 24px !important;
	font-weight: normal;
	margin-top: 0;
	padding: 10px !important;
	}

.sense.sense01 h4 small{
	font-size: 60% !important;
	vertical-align: middle;
	margin-top: 0;
	padding: 10px !important;
	}

.sense.sense01 h5{
	color: #0b927a !important;
	margin-top: 30px !important;
	}

.sense.sense02 .flex{
	align-items: flex-start;
	}

.sense.sense02 h4{
	border-bottom: 1px solid #000 !important;
	line-height: 1;
	font-size: 24px !important;
	margin-top: 0;
	padding-bottom: 5px;
	}

.sense.sense02 h4 small{
	font-size: 50% !important;
	background-color: #000;
	border-radius: 999px;
	vertical-align: middle;
	color: #fff;
	line-height: 1;
	padding: 5px 10px !important;
	margin-right: 10px;
	position: relative;
	top: -2px;
	}

.sense.sense02 h4::after{
	font-family: "Arial Black", 'Open Sans', sans-serif;
	font-size: 5rem;
	line-height: 1;
	position: absolute;
	right: 0;
	bottom: -10px;
	transform: rotate(20deg);
	}

.sense.sense02 .balance h4{ border-color: #5294b2 !important; color: #5294b2 !important; }
.sense.sense02 .balance h4::after{ content: "B"; color: #5294b2;}
.sense.sense02 .balance h4 small{ background-color: #5294b2; }
.sense.sense02 .balance h5{ color: #5294b2 !important; }

.sense.sense02 .body h4{ border-color: #eb9a32 !important; color: #eb9a32 !important; }
.sense.sense02 .body h4 small{ background-color: #eb9a32; }
.sense.sense02 .body h4::after{ content: "B"; color: #eb9a32;}
.sense.sense02 .body h5{ color: #eb9a32 !important; }

.sense.sense02 .touch h4{ border-color: #df6a70 !important; color: #df6a70 !important; }
.sense.sense02 .touch h4 small{ background-color: #df6a70; }
.sense.sense02 .touch h4::after{ content: "T"; color: #df6a70;}
.sense.sense02 .touch h5{ color: #df6a70 !important; }





/*form
------------------------------------------*/
form b{
	font-size:10px;
	font-weight:normal;
	display:inline-block;
	background:#ff0000;
	border-radius:3px;
	color:#FFF;
	padding:1px 5px;
	}

form th b{
	float:right;
	}

form td span{
	display: block;
	margin-top: 5px;
	font-size: 11px;
	color: #666;
	}

form .textfield{
	width:100%;
	padding:10px;
	}

form .zip{
	width:150px;
	padding:10px;
	}

form .textarea{
	width:100%!important;
	height:150px!important;
	padding:2px;
	}

form .bt0{ border-top: none;}
form .bb0{ border-bottom: none;}

form ::placeholder{
	color: #999;
	}

.submit{
	width:200px;
	height:50px;
	font-size: 120%;
	font-weight: bold;
	color: #fff;
	background-color: #13777c;
	border: none;
	border-radius: 5px;
    box-shadow: 0px 3px 0px 0px #0e696e;
	cursor: pointer;
	}


.submit:hover{
	background:#878962;
	border-bottom:0;
	box-shadow:none;
	text-decoration:none;
	position:relative;
	bottom:-3px;
	}

.aco{
	position: relative;
	}

.aco_icon{
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	}

.aco_pc{
	display: inline-flex;
	align-items: center;
	gap: 0.5em;
	cursor: pointer;
	padding: 8px;
	margin: 4px 0 10px;
	background-color: #13777c;
	color: #fff;
	border-radius: 5px;
	}

.aco_pc + *{
	display: none;
	}

.aco_pc .aco_icon{
	position: static;
	transform: none;
	background: #fff;
	border-radius: 50%;
	color: #13777c;
	width: 20px;
	height: 20px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 14px;
	}

.aco_pc .aco_icon::before{
	content: "＋";
	}

.aco_pc .aco_icon.active::before{
	content: "－";
	}

.moreTxt::before{
	content: "もっと見る";
	display: inline-block;
	background-color: #407080;
	border-radius: 5px;
	box-shadow: 0px 3px 0px 0px #045458;
	color: #fff;
	line-height: 1;
	padding: 10px;
	}

.moreTxt.active::before{
	content: "閉じる";
	}

/*---------PC 230414追加 ------------- */
span.small{
	font-size: 10px;
	text-align: right;
	display: block;
	margin-top: 10px;
  }

ul.relationCatalog{
  display: -webkit-box;
  display: -ms-flexbox;display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;justify-content: center;
  gap: 20px;
  }

ul.relationCatalog li{
  width: 235px;
  background: #fff;
  box-shadow: 0px 0px 5px -1px rgba(0,0,0,0.3);
  width: calc( 25% - 10px );
  }

ul.relationCatalog li figure{
  text-align: center;
  padding: 10px 10px 0;
  overflow: hidden;
}

ul.relationCatalog li a{
  display: block;
  }

ul.relationCatalog li h4 {
  font-size: 13px !important;
  line-height: 1.5;
  border: none !important;
  margin: 0 !important;
  padding: 10px;
}

ul.relationCatalog li > a:hover{
	text-decoration: none;
	box-shadow: none;
	}

ul.relationCatalog li figure{
  text-align: center;
  padding: 10px 10px 0;
  overflow: hidden;
  height: 100%;
  width: 100%;
	}

ul.relationCatalog li a:hover figure img{
  -webkit-transform: scale(1.02);
  -ms-transform: scale(1.02);
  transform: scale(1.02);
	}

/*---------PC 230428追加 ------------- */
.top07{
  text-align:center;
  padding: 0 !important;
  }

.top07 .bx-wrapper {
  margin-bottom: 40px;
}

.top07 .bx-viewport{
  padding-bottom: 5px;
  }

.top07 .bxslider > li{
  background: #fff;
  box-shadow: 0px 0px 5px -1px rgba(0,0,0,0.3);
  }

.top07 .bxslider > li a{
  font-size: 15px;
  line-height: 1.5;
  font-weight: bold;
  display: block;
  border: none;
  cursor: pointer;
  }

.top07 .bxslider > li a:hover{
	text-decoration: none;
	box-shadow: none;
	}

.top07 .bxslider > li figure{
  text-align: center;
  padding: 10px 10px 0;
  overflow: hidden;
  height: 100%;
  width: 100%;
	}

.top07 .bxslider > li a:hover figure img{
  -webkit-transform: scale(1.02);
  -ms-transform: scale(1.02);
  transform: scale(1.02);
	}

.top07 .bxslider > li div{
	padding: 10px;
	}

.top07 .bxslider > li p{
  margin: 0;
  font-size: 14px;
  font-weight: normal;
  color: #333;
  text-align: left;
	}

.top07 .bxslider > li p.ttl{
  font-size: 15px;
  color: #407080;
  font-weight: bold;
  margin-bottom: 5px;
	}

.top07 a.btn01{
  margin: 0 !important;
  width: auto;
	}

.exampleSns {
  overflow: inherit !important;
}

.top07 .bxslider > li,
.exampleSns > li{
  position: relative;
  }

.top07 .bxslider ul.snsIcon,
.exampleSns ul.snsIcon{
  display: flex;
  position: absolute;
  bottom: 10px;
  right: 10px;
  }

.exampleSns ul.snsIcon li{
  width: auto;
  margin: 0;
  }

.top07 .bxslider ul.snsIcon li:first-child,
.exampleSns ul.snsIcon li:first-child{
  margin-right: 6px;
  }

.top07 .bxslider ul.snsIcon li a,
.exampleSns ul.snsIcon li a{
  box-shadow: none;
  }

.top07 .bxslider ul.snsIcon li img,
.exampleSns ul.snsIcon li img{
  width: 25px;
  }

/*---------PC 230621追加 ------------- */
.inlineB {
  display: inline-block;
  margin-left: 10px;
  }

.pointerNone a{
  pointer-events: none;
  }

.inner900{
  width: 900px;
  }

.contactPage header,
.requestPage header{
  height: 68px;
  }

.contactPage #subpage,
.requestPage #subpage{
  border-top: 70px solid transparent;
  padding-bottom: 100px;
  }

.contactPage ul#pankuzu,
.requestPage ul#pankuzu{
  margin-bottom: 20px;
  }

.contactPage #subpage .inner900 #main,
.requestPage #subpage .inner900 #main{
  width: 100%;
  padding-bottom: 0;
  }

.contactPage #subpage .inner900 #main .table_A th,
.requestPage #subpage .inner900 #main .table_A th{
  width: 30%;
  }

.telBox{
  text-align: center;
  margin-top: 70px;
}

.telBox p{
  font-size: 18px;
  }

.telBox .txtBold{
  font-size: 24px;
  font-weight: bold;
  }

.telBox .txtTel{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-bottom: 10px;
  }

.telBox .txtTel span{
  font-size: 38px;
  color: #13777c;
  font-weight: bold;
  line-height: 1.2;
  display: block;
  }

.telBox .txtTel svg{
	fill:#13777c;
	height: 32px;
	margin-right: 10px;
  margin-bottom: 8px;
	}

.contactPage footer,
.requestPage footer{
  background: none;
  }

/*---------230705追加 ------------- */
.history_new__kv {
	margin-bottom: 40px;
}
.history_new__list {
	height: 1890px;
	position: relative;
}
.history_new__list::before {
	content: "";
	width: 6px;
	background: rgba(19,119,124,.4);
	display: block;
	position: absolute;
	top: 0;
	left: calc(50% - 4px);
	bottom: 0;
}
.history_new__item {
	width: 100%;
	max-width: calc((100% - 80px) / 2);
	background: #fff;
	padding: 24px;
	gap: 8px;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
	border: 2px solid;
	border-radius: 10px;
	position: absolute;
}
.history_new__item > * {
	margin: 0;
}
.history_new__item::before {
	content: "";
	width: 20px;
	height: 20px;
	background: rgba(19,119,124,1);
	display: block;
	border-radius: 50%;
	position: absolute;
	top: 24px;
}
.history_new__item .balloon {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	pointer-events: none;
}
.history_new__item .balloon::before,
.history_new__item .balloon::after {
	content: "";
	top: 34px;
	border: solid transparent;
	position: absolute;
	pointer-events: none;
}
.history_new__item .balloon::before {
	border-width: 16px;
	margin-top: -16px;
}
.history_new__item .balloon::after {
	border-width: 13px;
	margin-top: -13px;
}
.history_new__item-age {
	font-size: 24px;
	font-weight: 600;
	line-height: 1.2;
}
.history_new__item-ttl {
	font-size: 16px;
	font-weight: 600;
}

/* odd */
.history_new__item:nth-child(odd)::before {
	left: calc(100% + 31px);
}
.history_new__item:nth-child(odd) .balloon::before,
.history_new__item:nth-child(odd) .balloon::after {
	left: 100%;
}
.history_new__item:nth-child(odd) .balloon::after {
	border-left-color: #fff;
}

/* even */
.history_new__item:nth-child(even)::before {
	right: calc(100% + 33px);
}
.history_new__item:nth-child(even) .balloon::before,
.history_new__item:nth-child(even) .balloon::after {
	right: 100%;
}
.history_new__item:nth-child(even) .balloon::after {
	border-right-color: #fff;
}

/* item__1976 */
.history_new__item.item__1976 {
	top: 0;
	left: 0;
	border-color: #f39800;
}
.history_new__item.item__1976 .balloon::before {
	border-left-color: #f39800;
}
.history_new__item.item__1976 .history_new__item-age {
	color: #f39800;
}

/* item__1989 */
.history_new__item.item__1989 {
	top: 80px;
	right: 0;
	border-color: #2ea7e0;
}
.history_new__item.item__1989::before {
	top: calc(40% - 10px);
}
.history_new__item.item__1989 .balloon::before {
	border-right-color: #2ea7e0;
}
.history_new__item.item__1989 .balloon::before,
.history_new__item.item__1989 .balloon::after {
	top: 40%;
}
.history_new__item.item__1989 .history_new__item-age {
	color: #2ea7e0;
}

/* item__1990 */
.history_new__item.item__1990 {
	top: 320px;
	left: 0;
	border-color: #13ae67;
}
.history_new__item.item__1990 .balloon::before {
	border-left-color: #13ae67;
}
.history_new__item.item__1990 .history_new__item-age {
	color: #13ae67;
}

/* item__1992 */
.history_new__item.item__1992 {
	top: 460px;
	right: 0;
	border-color: #ee87b4;
}
.history_new__item.item__1992 .balloon::before {
	border-right-color: #ee87b4;
}
.history_new__item.item__1992 .history_new__item-age {
	color: #ee87b4;
}

/* item__1995 */
.history_new__item.item__1995 {
	top: 490px;
	left: 0;
	border-color: #f29a76;
}
.history_new__item.item__1995::before {
	top: calc(40% - 10px);
}
.history_new__item.item__1995 .balloon::before {
	border-left-color: #f29a76;
}
.history_new__item.item__1995 .balloon::before,
.history_new__item.item__1995 .balloon::after {
	top: 40%;
}
.history_new__item.item__1995 .history_new__item-age {
	color: #f29a76;
}

/* item__2003 */
.history_new__item.item__2003 {
	top: 820px;
	right: 0;
	border-color: #8fc31f;
}
.history_new__item.item__2003 .balloon::before {
	border-right-color: #8fc31f;
}
.history_new__item.item__2003 .history_new__item-age {
	color: #8fc31f;
}

/* item__2014 */
.history_new__item.item__2014 {
	top: 860px;
	left: 0;
	border-color: #ba79b1;
}
.history_new__item.item__2014::before {
	top: calc(40% - 10px);
}
.history_new__item.item__2014 .balloon::before {
	border-left-color: #ba79b1;
}
.history_new__item.item__2014 .balloon::before,
.history_new__item.item__2014 .balloon::after {
	top: 40%;
}
.history_new__item.item__2014 .history_new__item-age {
	color: #ba79b1;
}

/* item__2018 */
.history_new__item.item__2018 {
	top: 1360px;
	right: 0;
	border-color: #00b6cc;
}
.history_new__item.item__2018 .balloon::before {
	border-right-color: #00b6cc;
}
.history_new__item.item__2018 .history_new__item-age {
	color: #00b6cc;
}

/* item__2021 */
.history_new__item.item__2021 {
	top: 1510px;
	left: 0;
	border-color: #ea617b;
}
.history_new__item.item__2021 .balloon::before {
	border-left-color: #ea617b;
}
.history_new__item.item__2021 .history_new__item-age {
	color: #ea617b;
}

/* item__txt */
.history_new__item.item__txt {
	font-weight: 600;
	background: none;
	top: inherit;
	right: 0;
	bottom: 24px;
}
.history_new__item.item__txt::before {
	display: none;
}
	
@media screen and (max-width:480px){
	.history_new__kv {
		margin-bottom: 20px;
	}
	.history_new__list {
		height: auto;
	}
	.history_new__list::before {
		display: none;
	}
	.history_new__item {
		max-width: 100%;
		padding: 16px;
		position: relative;
		top: inherit!important;
		bottom: inherit!important;
	}
	.history_new__item:not(:last-of-type) {
		margin-bottom: 16px;
	}
	.history_new__item::before {
		display: none;
	}
	.history_new__item .balloon::before,
	.history_new__item .balloon::after {
		display: none;
	}
	.history_new__item-age {
		font-size: 18px;
	}
}

/*tablet
================================================================================================================================*/
@media screen and (max-width:1200px){

.call a{color:#407080 !important;}


header nav ul li{
	margin-left: 20px;
	}

header nav ul li a{
	font-size: 15px;
	}
}

@media screen and (max-width:1280px){ 
footer ul {
	margin: 40px 0 220px;
}

}


/*SP
================================================================================================================================*/
@media screen and (max-width:480px){

/*common
------------------------------------------*/
body{
	min-width:initial;
	}

img{
	max-width:100%;
	}

.inner{ width:initial;}
img.fl{ margin:0 10px 10px 0; width:45%;}
img.fr{ margin:0 0 10px 10px; width:45%;}
.spacer{display:none;}
.sp_none{ display:none;}
.sp_clear{ clear:both;}
.pc_none{display: inherit;}
br.sp{ display: inherit;}

ul.disc li{ list-style:disc; margin:0 0 10px 20px;}
ul.decimal li{ list-style:decimal; margin:0 0 0 25px;}

a.btn01{
	padding: 10px;
	}


/*header
------------------------------------------*/
header{
	height: 70px;
	padding: 0 15px;
    align-items: center;
	}

header h1 img{
	height: 33px;
	width: auto;
	}

header nav{
	position: fixed;
	top: 0;
	left: -70%;
	width: 70%;
	height: 100%;
	transition: left .5s, right .5s;
	background-color: rgba(255,255,255,1);
	z-index: 9999;
	overflow-y: scroll;
	display: flex;
	flex-wrap: wrap;
	align-content: space-between;
	padding: 0;
	}

header nav ul.global{
	flex-wrap: wrap;
	width: 100%;
	}

header nav ul.global li{
	width: 100%;
	margin-left: 0;
	border-bottom: 1px solid #ddd;
	}

header nav ul.global li a{
	display: flex;
	align-items: center;
	padding: 10px 15px;
	}

header nav ul.global li a img{
	height: auto;
	width: 20px;
	margin-right: 10px;
	margin-bottom: 0;
	}

header nav p{
	display: block;
	font-size: 11px;
	padding: 15px;
	margin: 0;
	text-align: left;
    order: 4;
	}

header nav p a {
	display: block;
	}

header nav p a:before {
	content: "-";
	margin-right: 5px;
	}

header nav ul.ex{
	position: static;
	padding: 10px;
	flex-wrap: wrap;
	}

header nav ul.ex li:first-of-type,
header nav ul.ex li:nth-of-type(2){
	line-height: 1.5;
	margin: 0 0 10px;
	width: 100%;
	}

header nav ul.ex li a img{
	height: 20px;
	}

header nav ul.ex li a.btn{
	display: block;
	padding: 5px;
	transition: .3s;
	font-size: 12px;
	text-align: center;
	}

header nav ul.ex li a.btn:hover{
	text-decoration: none;
	opacity: 0.6;
	}

header nav ul.ex li a.btn.toB{ background-color: #f18900;}
header nav ul.ex li a.btn.toH{ background-color: #00729d;}




.navBtn{
	position:absolute;
	display:block;
	width:30px;
	height:20px;
	z-index:99999;
	top:18px;
	right:20px;
	}

.navBtn::before{
	content: "MENU";
	font-size: 10px;
	color: #fff;
	position: absolute;
	z-index: 1;
	bottom: -20px;
	}

.navBtn::after{
	content: "";
	display: block;
	width: 50px;
	height: 55px;
	background-color: #13777c;
	position: absolute;
	top: -10px;
	left: -10px;
	}

.navBtn span{
	display:inline-block;
	position:absolute;
	left:0;
	width:100%;
	height:3px;
	background-color:#fff;
	z-index: 1;
	}

.navBtn.active span{
	background-color:#fff;
	}

.navBtn	span:nth-of-type(1){
	top:-1px;
	}

.navBtn	span:nth-of-type(2){
	top:8px;
	}

.navBtn	span:nth-of-type(3){
	bottom:0;
	}

.navBtn	span:nth-of-type(1){
	-webkit-animation:menu-ber01 .75s forwards;
	animation:menu-ber01 .75s forwards;
	}
	
.navBtn	span:nth-of-type(2){
	transition:all .25s .25s;
	opacity:1;
	}

.navBtn	span:nth-of-type(3){
	-webkit-animation:menu-ber02 .75s forwards;
	animation:menu-ber02 .75s forwards;
	}

.active span:nth-of-type(1){
	-webkit-animation:active-menu-ber01 .75s forwards;
	animation:active-menu-ber01 .75s forwards;
	}

.active span:nth-of-type(2){
	opacity:0;
	}
.active span:nth-of-type(3){
	-webkit-animation:active-menu-ber03 .75s forwards;
	animation:active-menu-ber03 .75s forwards;
	}

@-webkit-keyframes menu-ber01{
	0%{-webkit-transform:translateY(8px) rotate(45deg);}
	50%{-webkit-transform:translateY(8px) rotate(0);}
	100%{-webkit-transform:translateY(0) rotate(0);}
	}

@keyframes menu-ber01{
	0%{transform:translateY(8px) rotate(45deg);}
	50%{transform:translateY(8px) rotate(0);}
	100%{transform:translateY(0) rotate(0);}
	}

@-webkit-keyframes menu-ber02{
	0%{-webkit-transform:translateY(-8px) rotate(-45deg);}
	50%{-webkit-transform:translateY(-8px) rotate(0);}
	100%{-webkit-transform:translateY(0) rotate(0);}
	}

@keyframes menu-ber02{
	0%{transform:translateY(-8px) rotate(-45deg);}
	50%{transform:translateY(-8px) rotate(0);}
	100%{transform:translateY(0) rotate(0);}
	}

@-webkit-keyframes active-menu-ber01{
	0%{-webkit-transform:translateY(0) rotate(0);}
	50%{-webkit-transform:translateY(10px) rotate(0);}
	100%{-webkit-transform:translateY(10px) rotate(45deg);}
	}

@keyframes active-menu-ber01{
	0%{transform:translateY(0) rotate(0);}
	50%{transform:translateY(10px) rotate(0);}
	100%{transform:translateY(10px) rotate(45deg);}
	}

@-webkit-keyframes active-menu-ber03{
	0%{-webkit-transform:translateY(0) rotate(0);}
	50%{-webkit-transform:translateY(-8px) rotate(0);}
	100%{-webkit-transform:translateY(-8px) rotate(-45deg);}
	}

@keyframes active-menu-ber03{
	0%{transform:translateY(0) rotate(0);}
	50%{transform:translateY(-8px) rotate(0);}
	100%{transform:translateY(-8px) rotate(-45deg);}
	}

#open{
	display:none;
	}
 
#open:checked + #navBg{
	opacity:0.8;
	z-index:9999;
	display:block;
	}

#open:checked + #navBg + nav{
	left:0;
	}

#navBg{
	background-color:#333;
	opacity:0;
	position:fixed;
	right:0;
	top:0;
	transition:all 0.3s linear 0s;
	width:100%;
	height:100%;
	z-index:-1;
	display:none;
	}


/*footer
------------------------------------------*/
footer .upper > .inner{
	padding: 0;
	}

footer .upper > .inner p{
	padding: 10px;
	order: 2;
	background-color: #13777c;
	border-top: 1px dotted #fff;
	font-weight: bold;
	text-align: center;
	width: 100%;
	}

footer .snsIcon{
	justify-content: center;
	flex-wrap: wrap;
	padding: 10px;
	}

footer .snsIcon span{
	display: block;
	width: 100%;
	text-align: center;
	}

footer .snsIcon a{
	margin: 10px;
	}

footer ul{
	margin: 0;
	}

footer ul li{
	width: 50%;
	border-top: 1px dotted #fff;
	padding-left: 0;
	margin-left: -1px;
	}

footer ul li a{
	display: block;
	padding: 10px 0;
	text-align: center;
	}

footer ul li:last-child{
	border-right: none;
	border-top: none;
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	}

footer dl dt,
footer ul li > p{
	font-size:13px;
	}

footer ul li > p{
	width: 50%;
	border-top: 1px dotted #fff;
	border-left: 1px dotted #fff;
	margin-left: -1px;
	}

footer dl dt small,
footer dl dd{
	display: none;
	}

.pageup{
	right:10px;
	bottom:90px;
	}

.pageup a{
	width: 40px;
	line-height:40px;
	font-size: 15px;
	}


/*top
------------------------------------------*/
#kv{
	position: relative;
	overflow: hidden;
	border-top: 70px solid transparent;
	}

#kv .catch{
	left: 15px;
	top: 15px;
	width: 50%;
	}

#kv .kv_news{
	right: inherit;
	left: 50%;
	bottom: 8%;
	border-radius: 10px;
	padding: 10px;
	transform: translateX(-50%);
	width: 90%;
	}

#kv figure{
	width: 120%;
	left: 0;
	bottom: -3px;
	margin-left: 0;
	}

#kv .senseBtn{
	left: 130px;
	top: 10px;
	z-index: 11;
	width: 60px;
	}

.top{
	padding: 50px 0;
	}

.top h2{
	font-size:26px;
	line-height: 1.3;
	text-align: center;
	margin:0;
	}

.top ul.flex li{
	width: 100%;
	}

.top a.btn01{
	width: 230px;
	padding: 20px 0;
	}

.top ul.linkBox li a{
	display: block;
	text-decoration: none;
	color: #333;
	}

.top01 .title{
	background-position: center bottom;
	height: 80px;
	background-size: 160%;
	}

.top01 .title > *{
	position: static;
	}

.top01 ul.flex{
	margin: 20px;
	}

.top01 ul.flex li a{
	height: auto;
	}

.top01 ul.flex li{
	margin-bottom: 15px;
	}

.top02{
	padding: 50px 20px;
	}

.top02 h3 + p{
	font-size: inherit;
	text-align: left;
	}

.top02 ul.flex{
	margin: 20px 0;
	}

.top02 ul.flex li{
	margin-bottom: 15px;
	}

.top03{
	padding-top:50px;
	}

.top03 .title{
	background-position: center bottom;
	background-size: 190%;
	height: 70px;
	margin-bottom: 0;
	}

.top03 .title > *{
	position: static;
	}

.top03 .title + p{
	text-align: left;
	margin: 0 20px;
	}

.top03 ul.flex{
	margin: 20px;
	}

.top03 ul.flex li{
	margin-bottom: 15px;
	}

.top03 ul.flex li p:first-child{
	text-align: center;
	}

.top04 h3{
	font-size:20px;
	margin:30px 0 20px;
	}

.top04 ul.topics{
	padding: 0 20px;
	}

.top04 ul.topics li{
	margin-bottom: 15px;
	}

.top04 dl.newsTop{
	padding-top: 10px;
	margin: 20px;
	}

.top04 dl.newsTop dt{
	float: none;
	font-weight: bold;
	}

.top04 dl.newsTop dd{
	padding: 0 0 10px 0;
	margin-bottom: 10px;
	border-bottom: 1px dotted #ccc;
	}

span.newsLabel{
	font-size:8px;
	width:60px;
	vertical-align: text-top;
	margin-left: 10px;
	}

.top05{
	padding: 20px;
	}

.top05 ul.bnrs li{
	width: 48%;
	}

.top06{
	padding: 15px;
	}

.top06 p strong{
	text-align: left;
	font-size: 120%;
	line-height: 1.4;
	}

.top06 ul{
	margin: 10px 0;
	}

.top06 ul li{
	width: 100%;
	margin-top: 10px;
	}

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

ul.bnrs li{
	margin-bottom: 10px;
	width: 48%;
	}

#side ul.bnrs li{
	text-align: center;
	}

#cta{
	padding: 20px;
	padding-top: 10px;
	}

#cta .inner{
	width: 100%;
	color: #fff;
	}

#cta .inner h3{
	font-size: 20px;
	margin-bottom: 15px;
	}

#cta .inner > p{
	font-size:14px;
	text-align: left;
	margin-bottom: 25px;
	}

#cta .inner > p br{
	display: none;
	}

#cta ul li{
	width: 100%;
	}

#cta ul li.tel{
	padding: 10px;
	margin-bottom: 15px;
	}

#cta ul li.tel p{
	margin: 0;
	}

#cta ul li.tel span a{
	color: #fff !important;
	}

#cta ul li.mail a{
	height: auto;
	padding: 10px;
	}

#cta ul li.mail a span{
	font-size: 16px;
	}

#cta2 {
	width: 100%;
	right: 0;
	border-left: 0;
	border-right: 0;
	}

#cta2 > *{
	width: auto;
	flex-grow: 1;
	}

#cta2 > .tel div{
	text-align: center;
	}

#cta2 > .tel div span{
	display: block;
	}

#cta2 > .tel div span a{
	color: #4e90d0;
	}

#cta2 > .tel div svg{
	height: 15px;
	}

#cta2 > .mail{
	background-color: #3d80c1;
	}

#cta2 > .mail a{
	line-height: 1;
	padding: 10px 0;
	}

#cta2 > .mail a svg{
	height: 15px;
	margin-right: 8px;
	}


/*sub
------------------------------------------*/
#subpage{
	background:none;
	border-top: 70px solid transparent;
	padding-bottom: 0;
	}

ul#pankuzu{
	display:none;
	}

#title{
	background:rgba(0,0,0,1);
	height:auto;
	margin-bottom:0;
	}

#title h2{
	text-align:center;
	font-size:26px;
	line-height:inherit;
	color:#fff;
	width:initial;
	padding:10px;
	}

#title h2 small{
	display: block;
	margin: 0;
	}

#title h2.works,
#title h2.example,
#title h2.products,
#title h2.company,
#title h2.safety,
#title h2.topics,
#title h2.column{ background:#13777c;}

#main{
	float:none;
	width:initial;
	padding:30px 20px;
	}

#side{
	float:none;
	width:initial;
	padding:30px 20px;
	}

div#snav{
	padding:10px;
	background: #fff;
	}

div#snav p{
	padding-bottom:10px;
	margin-top:0;
	}

div#snav dl{
	font-size:14px;
	}

div#snav dl dt{
	font-size:18px;
	margin: 0;
	padding: 13px 0;
	}

div#snav dd > ul{
	border-top: 1px solid #ccc;
	}

div#snav dd > ul li{
	border-bottom: 1px solid #ccc;
	}

div#snav ul li a{
	display: block;
	padding: 5px;
	}

.aco + *{
	display: none;
	}

.aco_icon{
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	background: #13777c;
	border-radius: 50%;
	color: #fff;
	width: 20px;
	line-height: 20px;
	text-align: center;
	display: block;
	}

.aco_icon::before{
	content: "＋";
	}

.aco_icon.active::before{
	content: "－";
	}

#main h3{
	font-size:20px;
	line-height:1.3;
	text-align:center;
	}

#main h3 span{
	padding:10px 0;
	}

#main h4{
	line-height:1.4;
	padding-bottom:5px;
	}

#main h4 span small{
	margin:0;
	display:block;
	}


#main h5{
	font-size:17px;
	color:#407080;
	margin:10px 0;
	}

.pageUp{
	clear:both;
	text-align:right;
	font-size:10px;
	}


ul.x2{
	margin-right:0;
	}

ul.x2 li{
	float:none;
	width:initial;
	margin:10px 0 0;
	}

ul.x2 li a.btn02 p{
	font-size:16px;
	}

ul.x3{
	margin-right:0;
	}

ul.x3 li{
	float:none;
	width:initial;
	margin:10px 0 0;
	}

ul.x3 li a.btn02 p{
	font-size:18px;
	}

ul.x4{
	margin-right:0;
	}

ul.x4 li{
	float:none;
	width:initial;
	margin:10px 0 0;
	}

ul.x4 li a.btn01{
	width:100%;
	text-align:center;
	}

#workFlow .flex > *{
	width: 100%;
	}

#workFlow p{
	margin: 0;
	}

#workFlow .flow{
	padding:10px;
	margin-top:20px;
	}

#workFlow .step01 ul li{
	width: 100%;
	margin-top: 10px;
	display: flex;
	flex-wrap: wrap;
	}

#workFlow .step01 ul li > *{
	width: 100%;
	}

#workFlow .step01 ul li span{ order: 1; font-size: 14px; margin: 10px 0;}
#workFlow .step01 ul li figure{ order: 2;}
#workFlow .step01 ul li p{ order: 3;}

#workFlow .step01 strong{
	padding-left: 90px;
	}

#workFlow .step{
	top:10px;
	}

#workFlow .line1,
#workFlow .line2,
#workFlow .line3{
	display: none;
	}

ul.play_basic li{
	padding:10px;
	margin-top:20px;
	}

ul.play_basic li h4{
	font-size:18px !important;
	}

ul.play_basic li p{
	width:initial;
	float:none;
	}

ul.play_basic li img{
	float:none;
	margin-top:0;
	width:100%;
	}

ul.play_element li{
	padding:10px;
	}

ul.play_element li h4{
	}

ul.play_element li img{
	width:100%;
	}

ul.nursery li{
	padding:10px;
	}

ul.garden_element li p{
	margin:20px 0 0;
	}

ul.garden_element li img.fr{
	width:140px;
	margin-top:-20px;
	}

#gardenMap{
	display:none;
	}

.gardenStoryBtn{
	margin-top:20px;
	}

.gardenStoryBtn p{
	font-size:11px;
	height:60px;
	}

.garden_story li strong{
	display:inline-block;
	font-size:16px;
	margin-bottom:10px;
	border-bottom:3px solid #13777c;
	color:#13777c;
	}

.garden_story2{
	padding:10px;
	margin-top:20px;
	}

.garden_story2 h4{
	font-size:18px !important;
	line-height:1;
	margin:0 0 20px !important;
	border:none !important;
	}

.garden_story2 dt{
	float:none;
	width:initial;
	}

.garden_story2 dd{
	width:initial;
	float:none;
	margin-top:10px;
	}

.garden_story2 dd img:first-child{
	margin-bottom:0;
	}

.jabike dd img{
	width:100px;
	}

dl.aijien dt{
	width:initial;
	}

dl.aijien dd{
	width:initial;
	}

ul.brand li a figure img{
	width:100%;
	}

ul.brand li a h4 small{
	display: inline;
	}

ul.brand02 li{
	margin-bottom: 20px;
	}

ul.brand02 li a > *{
	width: 100%;
	}

ul.brand02 li a p{
	padding: 0;
	}

ul.brand02 li a h4{
	font-size: 20px !important;
	padding: 10px 0 0;
	}

ul.itemList{
	border-bottom:1px solid #CCC;
	}

ul.itemList li{
	float:left;
	width:50%;
	margin:0 -1px -1px 0;
	}

ul.itemList li h4{
	margin:5px 0 !important;
	}

ul.itemList li a{
	border:1px solid #CCC;
	padding:10px;
	margin-bottom:0;
	}

ul.itemList li h4{
	margin:5px 0 !important;
	}

ul.itemList li a h4 i{
	position:static;
	margin-right:5px;
	}

ul.itemList li a:hover h4{
	text-decoration:underline;
	}

ul.itemList li a dl{
	font-size:13px;
	line-height:1.5;
	}

ul.itemList li a dl dt{
	float:left;
	}

ul.itemList li a dl dd{
	padding-left:40px;
	}

.subPho figure{
	right:0;
	}

dl.products dt{
	float:none;
	margin-top:10px;
	}

dl.products dd{
	padding:5px 0;
	margin-bottom:10px;
	}

.products01 > figure{
	width: 100%;
	}

.products01 > div{
	width: 100%;
	}

.products01 > div p + p{
	text-align: center;
	}

ul.BERG_Page{
	background:none;
	height:auto;
	position:static;
	}

ul.BERG_Page li{
	padding:10px;
	position:static;
	margin-top:10px;
	}

ul.BERG_Page li h5 span{
	display:inline-block;
	font-size:12px;
	border-radius:3px;
	text-align:center;
	padding:1px 10px;
	width:initial;
	height:auto;
	}

ul.BERG_Page li img{
	width:initial;
	margin-bottom:5px;
	}

ul.BERG_Page li.step1{width:initial;}

ul.BERG_Page li.step2{width:initial;}
ul.BERG_Page li.step2 .fukidashi{ display:none;}

ul.BERG_Page li.illust01{ display:none;}
ul.BERG_Page li.illust02{display:none;}

ul.BERG_Page li p{ margin: 0; width: initial !important;}
ul.BERG_Page li img{ position: static;}

.exampleBox p{
	float:none;
	width:initial;
	margin:0 0 10px;
	}

.exampleBox img{
	float:none;
	width:100%;
	}

.exampleBtn strong{
	font-size: 150%;
	line-height: 1.4;
	}

.example01 > figure{
	width: 100%;
	margin-bottom: 15px;
	}

.example01 > div{
	width: 100%;
	order: 2;
	}

.example01 > div p.alignC{
	text-align: center !important;
	}

.example01 ul.bnr_vr2 li{
	width: 100%;
	text-align: center;
	}

ul.swedenTrimPark li{
	width:initial;
	}

ul.swedenTrimPark li img{
	width:100%;
	}

ul.swedenTrimPark li:first-child{
	width:initial;
	margin-bottom:10px;
	}

.table_A{
	width:100%;
	}

.table_A td{
	display:block;
	margin-bottom:-1px;
	}

.table_A th{
	display:block;
	margin-bottom:-1px;
	width:initial;
	}

#history{
	background:none;
	margin-top:0;
	position:static;
	height:auto;
	}

#history ul li{
	width:initial;
	position:relative;
	margin-top:20px;
	}

#history ul li span{
	padding:0 5px;
	}

#history ul li.his1976{ top:0;}	
#history ul li.his1989{ right:0; top:0;}
#history ul li.his1990{ top:0;}
#history ul li.his1992{ right:0; top:0;}
#history ul li.his1995{ top:0;}
#history ul li.his2003{ right:0; top:0;}
#history ul li.his2014{ top:0;}

.greeting2 p{
	margin:0;
	}

.exampleName{
	display:block;
	background:#FFF;
	padding:5px;
	position:static;
	}

.exampleNameWrap{ margin-bottom:inherit !important;}

.exampleCase01{
	margin:10px 0 30px;
	}

.exampleCase01 dt{
	float:none;
	width:initial;
	margin-bottom:15px;
	}

.exampleCase01 dd{
	float:none;
	width:initial;
	}

.exampleCase01 dd p{
	margin:0 0 12px;
	position:relative;
	}

.exampleCase01 dd p .exampleName{
	padding:5px;
	position:static;
	}

.itemDetail figure{
	width:initial;
	padding:10px;
	float:none;
	margin-bottom:20px;
	}

.itemDetail .data{
	width:initial;
	float:none;
	}

.itemDetail2 figure{
	width:initial;
	margin-bottom:0;
	}

.itemDetail2 figure img{
	max-height:200px;
	}

.itemDetail2 .data{
	width:initial;
	}

.itemDetail2 ul.thumb li{
	padding:5px;
	margin:10px 2px 0;
	}

.itemOriginal table{
	display:block;
	overflow-x:auto;
	white-space:nowrap;
	-webkit-overflow-scrolling:touch;
	}

.itemDetail2 table{
	display:block !important;
	overflow-x:auto;
	white-space:nowrap !important;
	-webkit-overflow-scrolling:touch;
	}

.itemDetail2 table td{
	padding-left:10px;
	padding-right:10px;
	}

ul.icon{
	margin:0;
	}

ul.icon li{
	margin:0 5px 5px 0;
	width:48%;
	}

ul.icon li img{
	height:25px;
	vertical-align:top;
	}

ul.iconDetail li.wide{
	width:initial;
	margin-bottom:0;
	}

ul.iconDetail li.two{
	width:initial;
	}

ul.iconDetail li.two img{
	width:100%;
	}

ul.iconDetail figure{
	width:initial;
	}

.cta{
	padding: 10px;
	}

.cta > ul{
	flex-wrap: wrap;
	}

.cta > ul li{
	width: 100%;
	}

.rh18021_video{
	float: none;
	margin: 0 0 20px 0;
	width: 100%;
	}

ul.newsList li{
	margin-bottom: 15px;
	}

ul.newsList li time{
	float:none;
	font-weight: bold;
	padding:15px 0 0 0;
	}

ul.newsList li p{
	margin:0;
	padding:5px 0 15px 0;
	}

ul.column li p{
	padding-left:0 !important;
	}

.works01{
	text-align: left;
	}

.works01 p br{
	display: none;
	}

.amazon01 a.btn01{
	margin: 0 auto;
	display: block;
	}

.amazon01 a img{
	margin: 0 auto;
	display: block;
	}

.amazon02 > *{
	margin: 0 0 10px;
	text-align: center;
	}

.brandTop .fr{
	float: none;
	width: 100%;
	margin: 0 0 10px 0;
	}

ul.exampleAnchorLink{
	margin-bottom: 20px;
	}

ul.exampleAnchorLink li{
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	margin-bottom: -1px;
	}

ul.exampleAnchorLink li a{
	display: block;
	padding: 10px;
	position: relative;
	}

ul.exampleAnchorLink li a::before{
	content: "";
	display: block;
	width: 5px;
	height: 5px;
	border-bottom: 1px solid #fff;
	border-right: 1px solid #fff;	
	transform: rotate(45deg);
	position: absolute;
	top: 18px;
	right: 17px;
	z-index: 1;
	}

ul.exampleAnchorLink li a::after{
	content: "";
	display: block;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	position: absolute;
	top: 12px;
	right: 10px;
	background-color: #13777c;
	}

.sense{
	padding: 15px;
	}

.sense .flex figure{
	width: 100%;
	}

.sense .flex figure img{
	height: 150px;
	}

.sense .flex dl{
	width: 100%;
	}

.sense .flex dl dt{
	margin-right: 0;
	width: 100%;
	}

.sense .flex dl dt p{
	border-radius: 5px;
	line-height: 2;
	width: 100%;
	}

.sense .flex dl dd{
	width: 100%;
	}

.sense.sense01 h4{
	font-size: 18px !important;
	}

.sense.sense01 h4 small{
	display: block;
	padding: 0 !important;
	}

.sense.sense02 h4{
	padding-top: 25px;
	position: relative;
	}

.sense.sense02 h4 small{
	position: absolute;
	}

.sense.sense02 h4::after{
	bottom: -5px;
	}

.sense.sense02 h5{
	text-align: center;
	}



/*form
------------------------------------------*/
form span{
	display:block;
	margin:5px 0 0 0;
	}

form span br{
	display:none;
	}

form .textfield{
	width:100%;
	}

form .address{
	width:100%;
	}

form .tel{
	width:100%;
	}

form .textarea{
	width:100%;
	}

form label{
	display: block;
	}

.submit{
	-webkit-appearance: none;
	}



  /*スマホのみ調整用
  ------------------------------------------*/
  .fs10sp{ font-size: 10px !important; }
  .fs11sp{ font-size: 11px !important; }
  .fs13sp{ font-size: 13px !important; }
  .fs17sp{ font-size: 17px !important; }
  .fs18sp{ font-size: 18px !important; }
  .fs19sp{ font-size: 19px !important; }
  .w280sp{ width: 280px !important;}
  .alignCsp{ text-align: center;}
	
	
  /*---------SP 230414追加 ------------- */
  ul.relationCatalog{
    gap: 10px;
	  flex-wrap: wrap;
    }

  ul.relationCatalog li{
      width: calc( 50% - 10px );
    }

  ul.relationCatalog li h4{
    font-size: 11px !important;
    height: auto;
    }

  
  
/*---------230428追加 ------------- */
  .top07 .bxslider{
    margin-left: 85px !important;
  }
  
  .top07 .bx-wrapper{
    margin-bottom: 20px;
  }
  
/*---------230621追加 ------------- */
  .inner900{
    width: 100%;
  }

.contactPage header,
.requestPage header{
  height: 70px;
  }

.contactPage #subpage,
.requestPage #subpage{
  border-top: 70px solid transparent;
  padding-bottom: 40px;
  }

.contactPage #subpage .inner900 #main .table_A th,
.requestPage #subpage .inner900 #main .table_A th{
  width: 100%;
  }

.telBox{
  margin-top: 40px;
}

.telBox p{
  font-size: 14px;
  }

.telBox .txtBold{
  font-size: 18px;
  }

.telBox .txtTel span{
  font-size: 28px;
  }

.telBox .txtTel svg{
  height: 25px;
  margin-right: 5px;
  margin-bottom: 5px;
}
}
/*---------230818追加 ------------- */
div.bg_w{
	width: 100%;
	background: #fff;
	padding: 20px;
}
.sdgAttempt{
	padding: 10px;
	text-align: center;
	 border-top: 1px solid #000;
}
ul.sdg.x2.cf li{
	border: 1px solid #000;
    border-top: none;
}
.sdgAttempt.title{
	font-size: 17px;
    color: #fff;
	font-weight: 600;
	background-color: #407080;
} 
.sdgAttempt span{
	display: block;
	border-bottom: 1px dotted #000;
	margin-bottom: 8px;
}
.attempt.h150{
	height: 150px;
}
.sdgAttempt.goal{
	background-color: #fff;
}
.x6{
	display: flex;
	gap: 15px;
	align-items: center;
}
.sdg_icon{
	width: 12%;
}
.btn_bg{
	background: url(../img/btn_bg.png);
	background-size: contain;
	width: 269px;
	height: 76px;
	line-height: 76px;
	margin: auto;
	font-weight: 900;
	color: #0e696e;
}
.btn_bg:hover{
	opacity: 0.7;
	transform: translateY(3px);
}



/*---------240105追加 ------------- */
#kv .kv_news a{
    display: -webkit-box;
 -webkit-box-orient: vertical;
 -webkit-line-clamp: 2;
 overflow: hidden;
}
@media screen and (max-width:375px){
    #kv .kv_news{
	bottom: 3.5%;
	
	}
}

/*---------240603追加 ------------- */
.btn01.fs120{
    font-size: 100%;
    padding: 4px 20px;
    margin: 0 4px;
}

#subpage.under_cta{
    padding-bottom: 0;
}

.under_cta .cta02{
    color: #13777c;
    text-align: center;
    padding-top: 40px;
    margin-top: 60px;
}

.under_cta .cta02.inner {
    color: #13777c;
}

.under_cta .cta02.inner .flex{
    justify-content: center;
    gap: 40px;
    font-weight: bold;
    margin: 24px 0;
}

#main h3.none{
    background: none;
}

.under_cta .cta02 ul li {
    border: 1px solid #fff;
    border-radius: 5px;
    width: 460px;
    overflow: hidden;
    background: #fff;
}

.under_cta .cta02 ul li.tel{
    
    font-size: 13px;
    font-weight: bold;
    display: flex;
    justify-content: center;
    align-items: center;
}

.under_cta .cta02 ul li.tel span {
    font-size: 30px;
    line-height: 1.2;
    display: block;
}

.under_cta .cta02 ul li.mail a {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: left;
    background-color: #fff;
    border-radius: 3px;
    color: #13777c;
    height: 130px;
    transition: .3s;
}

.under_cta .cta02 ul li.mail a span {
    font-size: 20px;
    font-weight: bold;
    line-height: 1.5;
}

.under_cta .cta02 ul li.mail a svg {
    fill: #13777c;
    width: 43px;
    height: 32px;
    margin-right: 20px;
}

nav.flex{
    gap: 16px;
}

nav.flex .ex{
    align-items: end;
    display: flex;
    justify-content: end;
    margin: 0 0 0 auto;
}

nav.flex .flex{
    gap: 40px;
    align-items: baseline;
    flex-wrap: nowrap;
    width: 100%;
}

nav.flex .flex .nav_cta{
    gap: 16px;
    width: auto;
}

.nav_cta li a{
    padding: 8px 20px;
}

.nav_cta .mail.catalog{
    background: #fff;
    border-radius: 25px;
    border: 1px solid #13777c;
    box-shadow: 0px 3px 0px 0px #045458;
}

.nav_cta .mail.catalog a{
    color: #13777c;
}

.nav_cta .mail{
    background: #13777c;
    color: #fff;
    border-radius: 25px;
        box-shadow: 0px 3px 0px 0px #045458;
}

.nav_cta .mail a{
    color: #fff;
}

.nav_cta > .mail.catalog a svg {
    fill: #13777c;
    height: 15px;
    margin-right: 10px;
}

.nav_cta > .mail a svg {
    fill: #fff;
    height: 15px;
    margin-right: 10px;
}

.nav_cta li p{
    display: block;
    margin: 0;
    line-height: 16px;
}

.nav_cta > .mail a {
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: bold;
    font-size: 18px;
    transition: .3s;
}

.nav_cta > .mail a:hover{
    background: #13777c;
    border-bottom: 0;
    box-shadow: none;
    text-decoration: none;
    position: relative;
    transform: translateY(3px);
    border-radius: 25px;
}
.nav_cta > .mail.catalog a:hover{
    background: inherit;
}

a.kv_Btn{
    display: inline-block;
    background: #f18900;
    color: #fff;
    font-size: 2rem;
    font-weight: 600;
    position: absolute;
    left: 100px;
    top: 62%;
    padding: 8px 40px;
    z-index: 100;
    border-radius: 25px;
    box-shadow: 0px 3px 0px 0px #ad6405;
}

a.kv_Btn:hover{
    text-decoration: none;
    background: #13777c;
    box-shadow: 0px 3px 0px 0px #407080;
}
#main.catalog{
        width: 100%;
}

.flex.catalog{
    flex-wrap: nowrap;
    gap: 40px;
}

.flex.catalog > *{
    width: 100%;
}

.catalog form .textfield {
    padding: 8px;
}

.catalog form .table_A tr{
    display: flex;
    flex-wrap: wrap
}

.catalog form .table_A th,
.catalog form .table_A td{
    padding: 8px 8px 16px;
    width: 100%;
    border: none;
}

.catalog form .table_A th{
    padding: 0;
}

.catalog form th b{
    float: none;
    margin-left: 8px;
}

.instagram-media{
    width: 100% !important;
    margin-bottom: 0 !important;
}

.requestPage .catalog form .table_A td {
    padding: 8px 0 16px;
}

@media screen and (max-width:480px){
    nav.flex .ex{
        order: 2;
        justify-content: flex-start;
        margin: 0;
    }
    nav.flex .flex {
        gap: 40px;
        flex-wrap: wrap;
        width: 100%;
    }
    
    .nav_cta .mail{
        width: 90%;
    margin: 0 auto;
    }
    
a.kv_Btn{
   top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%)!important;
  -webkit- transform: translateY(-50%) translateX(-50%);
    font-size: 1.4rem;
    width: 80%;
    text-align: center;
    }
    
.flex.catalog{
    flex-wrap: wrap;
    gap: 40px;
}
    
    .catalog form{
        order: -1;
    }
    
    .under_cta .cta02 {
    padding-top: 0;
}
    
    .under_cta .cta02.inner .flex {
    gap: 24px;
    margin: 24px 0 0;
}
    .sp_none{
        display: none;
    }
}


/*---------240813追加 ------------- */
.btn_box{
  position: absolute;
  top: -50px;
  left: 0;
  margin: 0;
  width: 100%!important;
}

#btn_animation .btn {
  display: block;
  width: 340px;
  padding: 8px 0;
  margin: 0 auto;
  border-radius: 5px;
  text-decoration: none;
  background-color: #f18900;
  color: #fff;
  text-align: center;
  animation: btn_animation 1.5s infinite;
}

#btn_animation .btn::before {
  content: "";
  position: absolute;
  top: 99%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #f18900;
}

@keyframes btn_animation {
    0% {
        transform: scale(1.1)
    }
    5% {
        transform: scale(1)
    }
    95% {
        transform: scale(1)
    }
    100% {
        -webkit-transform: scale(1.1)
    }
}

.banner{
    width: 70%;
    margin: 40px auto 0;
}

@media screen and (max-width:480px){
    .btn_box{
  position: absolute;
        top: -58px;
    }

	#cta2 .bnr {
		top: -90px;
	}
    
	#cta2 .bnr a {
		width: 60%;
	}

    #btn_animation .btn{
        display: none;
    }
    
    .banner{
    width: 100%;
        margin-top: 24px;
}
}


/*---------241115追加 ------------- */
select {
	padding: 10px;
	height: 40px;
	background: #fff;
	border-radius: 3px;
	border: 1px solid #838382;
	color: #333;
}


/*---------250131追加 ------------- */
.modal_btn{
	margin-bottom:20px;
}

.remodal {
  position: relative;
  padding: 10px;
}
.remodal img {
  width: 90%;
  height: auto;
  vertical-align: top;
}
.remodal-cancel {
  color: #fff;
  background: #000000;
  width: 100%;
  margin-top: 25px;
}
.remodal-cancel:hover {
  background: #333;
}

ul.brand li h5{
	font-size: 13px !important;
	line-height: 1.5;
	border:none !important;
	margin:0 !important;
	padding:0px 10px 10px 10px;
	}

/*ul.x5{
	margin-right:-15px;
	overflow:hidden;
	}

ul.x5 li{
	float:left;
	width:48%;
	margin:0 15px 15px 0;
	}

ul.x5 li a.btn01{
	width:100%;
	text-align:center;
	}*/

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

li.item_list{
	width:48%;
	display:block;
	margin-bottom:30px;
	}

li.item_list:hover{
	text-decoration:none;
	}

li.item_list figure{
	padding:10px;
	border:1px solid #CCC;
	background:#FFF;
	text-align:center;
	}

li.item_list figure img{
	height:auto;
	}

li.item_list h4{
	font-size:14px !important;
	line-height:1.5;
	border:none !important;
	margin:0;
	padding:5px 0 0;
	}

li.item_list h4 i{
	position:static;
	margin-right:5px;
	}

li.iitem_list dl{
	font-size:13px;
	line-height:1.5;
	}

a.yt_link{
	display:inline!important;
	margin-bottom:0;
	text-decoration: underline;
	border: none!important;
	}

a.yt_link::after{
	content: "";
	display: inline-block;
	min-height: 24px;
	min-width: 24px;
	background: transparent url("../img/icon_open.svg") no-repeat center / 100%;
	vertical-align: bottom;
}

.itemInfo dl{
	display:flex;
	flex-wrap: wrap;
	height: 170px;
	color:#407080!important;
}

.itemInfo dl dt{
	width:30%;
}

.itemInfo dl dd{
	width:70%;
	padding-left: 1em!important;
}

.item_chart{
	width:70%;
	padding: 1em;
	background:#fff;
	margin-top: 15px;
}

.inclusive{
	position:relative;
}

.inclusive_img{
	position: absolute;
	width:80px;
	height:auto;
	right:1em;
	top:1em;
}

.inclusive_img02{
	position: absolute;
	width:60px;
	height:auto;
	right:.5em;
	top:.5em;
}

ul.x7{
	margin-right:-15px;
	overflow:hidden;
	display: flex;
	flex-wrap:wrap;
	}

ul.x7 li{
	/*float:left;*/
	width:253px;
	margin:0 15px 15px 0;
	}

ul.x7 li a.btn01{
	width:100%;
	text-align:center;
	}

/*.itemList li dl{
	height: 95px;
}*/

.itemList li dl dd{
	padding-left: 50px;
}

ul.itemList li p.list_txt{
	margin: 5px 0 0 0;
	color:#407080;
	font-size:13px;
}

.font_s{
	font-size:85%;
}

.flex_img,.flex_img02{
	display: flex;
	flex-wrap: wrap;
	grid-row-gap: 10px;
}

.flex_img{
	justify-content: space-between;
	margin: 15px auto 30px;
}

.flex_img02{
	justify-content: space-around;
	margin: 20px auto 30px;
}

.flex_img figure{
	width:250px;
	height:167px;
}

.flex_img figure.flex_imgL{
	width:120px;
	height:167px;
}

.flex_img figure img,.flex_img02 figure img{
	border:1px solid #CCC;
}

.flex_img02 figure img{
	width:auto;
	height:212px;
}

ul.itemList li figure img{
	height:150px;
}

.tc{
	text-align: center;
}

.w50p{
	width:50%;
}

.flexitem{
	display: flex;
	width:100%;
}

.flexitem dt{
	float:none!important;
}

.flexitem dd{
	padding-left: 0!important;
}

@media screen and (max-width:480px){
	.item_sec{
		display: block;
}
	li.item_list{
		width:100%;
}
	.itemInfo dl dt{
	width:35%;
}

.itemInfo dl dd{
	width:65%;
}
	ul.x7 li{
	float:none;
	width:90%;
	margin:0 15px 20px 10px;
	}
	
	.item_chart{
		margin-top: 25px;
}
	
	.flex_img,.flex_img02{
		display: block;
	}
	
	.flex_img figure,.flex_img02 figure{
		width:100%;
		height: auto;
		margin:10px auto;
		text-align: center;
	}
	
	.flex_img02 figure img{
		width:100%;
		height:auto;
}
	
	.inclusive{
		margin-top: 10px;
}
	
	.inclusive_img{
		width:70px;
		right:.5em;
}
	.inclusive_img02{
		width:65px;
		top:0;
}
	
	.fs90{
		font-size: 100%;
	}
}

/*---------250228追加 ------------- */
.inclusice_bnr{
	margin: 40px auto;
	text-align: center;
}

.inclusice_bnr a{
	width: 100%;
	height: 100%;
	display: block;
}

.library{
	margin-top: 20px;
}

.library .x4{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	-o-flex-wrap: wrap;
	flex-wrap: wrap;
	justify-content: center;
}

.library .large{
	width: 385px!important;
}

.library li{
	height: 185px;
}

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

.inclusive .inclusive_ttl{
	margin-bottom: 40px;
	position: relative;
}

.inclusive .inclusive_ttl .illust01{
	position: absolute;
	top: 10%;
	left: -10%;
}

.inclusive .inclusive_ttl .illust02{
	position: absolute;
	top: 15%;
	right: -5%;
}

.inclusive .inclusive_ttl h2{
	border-bottom: none!important;
	font-size: 28px!important;
	color: #F39700 !important;
	border-color: #F39700 !important;
	text-align: center;
}

.inclusive .inclusive_ttl h2 img{
	height: 40px;
}

.inclusive .inclusive_ttl h2 img:last-child{
	transform: scaleX(-1);
}

.inclusive .inclusive_ttl h2 span{
	border-bottom: none!important;
}

.inclusive .sense.sense02 .balance h2::after{
	display: none;
}

.inclusive .inclusive_ttl .pic_s{
	width: 80%;
	margin: 0 auto;
}

.inclusive h3{
	color: #F39700!important;
	text-align: center;
	font-size: 20px!important;
	border-bottom: 3px double #F39700;
	position: relative;
	margin-bottom: 10px;
	background: none!important;
	margin-block-start: 1.33em;
}

.inclusive h4{
	font-size: 17px!important;
	color: #407080!important;
	border-bottom: none!important;
}

.inclusive .marker{
	background: linear-gradient(transparent 92%, #F39700 1%);
	font-weight: 600;
}

.inclusive .btn01.ml20{
	margin-left: 20px;
}

#inclusive_04 p img{
	border-radius: 20px;
}

.inclusive .brand li h4{
	text-align: left;
}

.inclusive .brand li a .alignR{
	color: #F39700!important;
	padding-right: 22px;
	margin-top: 12px;
}

.inclusive .brand li a .alignR::before{
	content: "";
	border: 1px solid #F39700;
	width: 6px;
	height: 6px;
	display: inline-block;
	margin-right: 10px;
	border-top: none;
	border-left: none;
	transform: rotate(-45deg);
	bottom: 18px;
	right: 0;
	position: absolute;
}
	
.contents_bot{
	background: #fff;
	padding: 0 20px 40px;
	margin-bottom: 40px;
	border-radius: 30px;
}

.contents_bot .group{
	margin-top: 20px;
	border-bottom: 1px solid #ccc;
	padding-bottom: 20px;
}

.contents_bot .group .title{
	margin-bottom: 12px;
}

.contents_bot .group .title p{
	position: relative;
	font-size: 20px;
	font-weight: bold;
	border-bottom: none!important;
	text-align: left;
	color: #F39700!important;
}

.contents_bot .group .title p::before{
	display: block;
	content: "";
	height: 1px;
	width: 100%;
	position: absolute;
	top: calc(50% - 1px);
	left: 0;
	background-color: #ccc;
}

.contents_bot .group .title p span{
	position: relative;
	margin: 20px 0;
	display: inline-block;
	background-color: #fff;
}

.contents_bot .group .list{
	padding-left: 20px;
}

.contents_bot .group .list li:not(:last-child){
	margin-bottom: 8px;
	padding-bottom: 8px;
	border-bottom: 1px dashed #ccc;
}

.contents_bot .group .list li a{
	color: #F39700!important;
}

@media screen and (max-width:480px){
	.inclusive .inclusive_ttl p:first-child{
		margin: 0;
	}
	
	.inclusice_bnr{
			margin: 20px 0;
			width: 100%;
		}
	
	.library .x4 li{
		width: 47%!important;
		margin-right: 3%;
	}
	
	.inclusive .inclusive_ttl h2{
		font-size: 20px!important;
		line-height: 1.4;
		padding-bottom: 5px;
	}
	
	.inclusive .inclusive_ttl h2 img{
		height: 28px;
	}
	
	.inclusive .inclusive_ttl .illust01{
		top: 52%;
		left: -6%;
		margin: 0;
		width: 20%;
	}

	.inclusive .inclusive_ttl .illust02{
		top: 55%;
		margin: 0;
		width: 20%;
	}
	
	.inclusive .btn01.ml20{
		margin-top: 20px;
	}
	
	.contents_bot .group .title p{
		margin: 0;
	}
	
	.pc{
		display: none;
	}
}

/*---------250714追加 ------------- */
.ex > .tel{
	color: #13777c;
	font-weight: bold;
	margin-right: 8px;
}
.ex > .tel div span{
	font-size: 16px;
    line-height: 1;
    margin-right: 5px;
}

.ex > .tel div svg{
	fill:#13777c;
	height: 17px;
	margin-right: 5px;
}

.play-hint{
	border-top: 2px solid #13777c;
	width: 100% !important;
	overflow: hidden;
	background-color: #ce5656;
}

.play-hint a{
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #df6363;
    color: #fff;
    font-weight: bold;
    font-size: 20px;
    line-height: 1;
    padding: 12px;
    width: 100%;
	transition: .3s;
}

span.play-hint-icon{
	display: inline-block;
	width: 30px;
	height: 30px;
	background-image: url('../img/play_icon.svg');
	background-size: contain;
	background-repeat: no-repeat;
	margin-right: 8px;
	vertical-align: middle;
}


.play-hint a:hover{
	opacity: 1;
	transform: translate(6px,6px);
	text-decoration: none;
}

div.x3{
	gap: 32px 0;
}

div.x3 > *{
	width: calc((100% - 40px) / 3);
}

div.x3 > * img{
	height: 120px;
	width: auto;
}

div.x2 img{
	width: calc((100% - 8px) / 2) !important;
}

.hint_ttl{
	display: flex;
    align-items: center;
    justify-content: center;
	background-color: #d8f0eb;
	/* background-color: #fde9bf; */
	border-radius: 100%;
	font-weight: bold;
	text-align: center;
	padding: 12px 4px;
	margin: 8px auto;
	width: 220px;
	height: 120px;
	font-size: 16px;
}

.hint_txt{
	display: flex;
    align-items: center;
    justify-content: center;
	padding: 0 8px;
	margin: 8px 0;
	height: 72px;
}

@media screen and (max-width:480px){
	.call a{
		font-size: 14px;
	}

	.ex > .tel{
		font-size: 11px;
	}

	.ex > .tel div svg{
		height: 15px;
		margin-right: 3px;
	}

	#cta2{
		z-index: 9;
	}

	div.x3{
		gap: 40px;
	}

	div.x3 > *{
		width: 100%;
	}

	div.x2 img,div.x3 > * img{
		width: 100%;
		height: auto;
	}

	.hint_txt{
		height: auto;
		margin: 16px 0;
		padding: 0;
	}
}

/*---------250917追加 ------------- */
.category_list{
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	padding: 0;
	margin: 16px 0;
}

.category_list:first-of-type{
	margin-top: 12px !important;
}

.category_list.x3,.category_list.x2{
	gap: 8px;
	margin: 8px auto;
}

.category_list li{
	flex: 0 1 calc(25% - 12px);
	box-sizing: border-box;
	margin: 0 !important;
}

.category_list.x3 li,.category_list.x2 li:first-child{
	flex: 0 1 calc(32% - 8px);
}

.category_list.x2 li:last-child{
	flex: 0 1 calc(63% - 8px);
}

.category_list li.wide {
	flex: 0 0 auto;
	width: auto;
	text-align: center;
}

.category_list li a{
	display: flex;
	justify-content: center;
	width: 100%;
	position: relative;
	padding: 6px 20px 6px 8px;
	border: solid 1px #407080;
	background: #fff;
	font-size: 12px;
}

.category_list li a:hover{
	text-decoration: none;
	background: #dff2f7;
}

.category_list li a::after {
  content: '';
  width: 6px;
  height: 6px;
  border: 0;
  border-top: solid 1px #407080;
  border-right: solid 1px #407080;
  transform: rotate(45deg);
  position: absolute;
  top: 38%;
  right: 0;
  bottom: 0;
  margin-right: 1rem;
}

@media screen and (max-width:480px){
	.category_list{
		gap: 8px;
		align-items: stretch; 
	}

	.category_list li,.category_list.x3 li,.category_list.x2 li,.category_list.x2 li:first-child{
		flex: 0 1 calc(50% - 8px);
		text-align: center;
		display: flex; 
	}

	.category_list.x2 li:first-child{
		display: flex; 
		align-items: stretch;  
	}

	.category_list.x2 li:first-child a{
		display: flex;
		align-items: center;
	}

	.category_list.x2 li:last-child{
		flex: 0 1 calc(50% - 8px);
	}

	.category_list li a{
		padding: 6px 20px 6px 4px;
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		height: 100%; 
	}

	.category_list li.wide{
		width: calc(50% - 8px);
	}
}