@charset "utf-8";
/*----------------
[1]common
[2]headerContainer
[3]sideContainer
[4]footerContainer
[5]Container
[6]topContainer
[7]subContainer
[8]other
------------------ */

/* **********************************************************************************************
[1]common
************************************************************************************************ */
html{
	-webkit-text-size-adjust: 100%;
	font-size: 62.5%;
	margin: 0;
	padding: 0;
}
body{
	line-height: 1.5;
	width: 100%;
	margin: 0 auto;
	padding: 0;
	font-size: 1.4rem;
	font-family: 'Noto Sans JP', sans-serif;
	font-style: normal;
	font-variant: normal;
	font-weight: 400;
	color: #000;
	letter-spacing: 0.5px;
	font-weight: normal;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	overflow-x: hidden;
}

header {
	width: 100%;
	height: 40px;
	z-index: 99999999997;
	position: fixed;
	top: 0px;
	left: 0;
	box-sizing: border-box;
	background-color: rgba(255,255,255,0.8);
}


header.fixed {
	width: 100%;
	height: 40px;
	z-index: 99999999997;
	position: fixed;
	background-color: rgba(255,255,255,0.8);
	top: 0px;
	left: 0;
	box-sizing: border-box;
	/* box-shadow: 1px 2px 2px rgba(0,0,0,0.1); */
}


#trns{
	position: fixed;
	top:0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 99999999999999;
	background-image: url(images/logo-loard.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 180px 180px;
	background-color: #FFF;
}
#wrapper {
	width: 100%;
	position: relative;
	overflow: hidden;
}

/* clear
----------------------------------------------- */
.clear { clear: both; }
.clearfix:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}
.clearfix { min-height: 1px; }
* html .clearfix {
	height: 1px;
	/*\*//*/
	height: auto;
	overflow: hidden;
	/**/
}

/* a 
----------------------------------------------- */
a,a:link { text-decoration: none; }
a img, img {
	border: none;
	line-height: normal;
	vertical-align: top;
}

/* img 
----------------------------------------------- */
img{
    max-width: 100%;
    height: auto;
    width /***/:auto;
}
.imgText {
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
}
.object-fit-img {
	object-fit: cover;
	object-position: 50% 50%;
	font-family: 'object-fit: cover; object-position: 50% 50%;'
}

/* slide
----------------------------------------------- */
#topContent {
	position: relative;
	top: 0;
	left: 0;
	width: 100%;
}

#sliderbox {
	position: relative;
	width: 100%;
	/* overflow:  hidden;
	height: 60vh; */
	padding: 0;
	top: 0px;
	box-sizing: border-box;
}

#sliderbox li.box {
	position: relative;
	width: 100%;
	height: 60vh;
	overflow: hidden;
}
#sliderbox li figure{
	position: relative;
	width: 100%;
	overflow: hidden;
	height: 60vh;
}


#sliderbox li figure img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  object-fit: cover;
}


.bx-wrapper .bx-prev {
	left: 20px;
	background-image: url(images/arrow-bigleft.png);
	background-position: 0 center;
	background-repeat: no-repeat;
	transition: left .2s;
}

.bx-wrapper .bx-next {
	right: 20px;
	background-image: url(images/arrow-bigright.png);
	background-position: 0 center;
	background-repeat: no-repeat;
	transition: right .2s;
}

.bx-wrapper .bx-prev:hover {
	left: 10px;
	transition: left .5s;
}

.bx-wrapper .bx-next:hover {
	right: 10px;
	transition: right .2s;
}


.scroll {
	position: absolute;
	bottom: 100px;
	left: 15px;
	color: #fff;
	width: 10px;
	height: 90px;
	font-size: 10px;
	z-index: 999999999;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	text-align: left;
	font-family: 'Ubuntu', sans-serif;
	display: none;
}
.scroll a{
	color: #fff;
	position: relative;
	width: 10px;
	height: 90px;
	display: block;
	box-sizing: border-box;
}
.scroll a:after {
	position: absolute;
	background-color: #FFF;
	width: 1px;
	height: 30px;
	left: 0px;
	margin: 0;
	bottom: 25px;
	content: "";
	transition:bottom .3s,height .3s;
}

.slidetxt {
	position: absolute;
	top: 50%;
	text-align: center;
	width: 100%;
	height: 110px;
	margin-top: -55px;
	color: #fff;
}

.slidetxt h3 {
	font-size: 35px;
	font-weight: 700;
text-shadow:
    rgba(0,0,0,0.3) 1px 1px 5px, rgba(0,0,0,0.3) -1px 1px 5px,
    rgba(0,0,0,0.3) 1px -1px 5px, rgba(0,0,0,0.3) -1px -1px 5px;
}
.slidetxt p {margin-top: 10px;}
.slidetxt p a {
	border: 1px solid #FFF;
	color: #FFF;
	padding: 10px 20px;
	background-color: rgba(0,0,0,0.4);
	font-size: 16px;
	display: block;
	width: 160px;
	margin: 0 auto;
}

.slidetxt p a:hover {
	background-color: rgba(0,0,0,0.6);

}



/* **********************************************************************************************
[2]headerContainer
************************************************************************************************ */
header h1 {
	/* position: relative; */
	position: fixed;
	left: 5px;
	width: 113.4px;
	height: 30px;
	top: 6px;
	text-align: center;
	z-index: 999999999;
}
header h1 a {
	display: block;
	background-repeat: no-repeat;
	background-position: left top;
	text-indent: 100%;
	overflow: hidden;
	white-space: nowrap;
	position:relative;
	width: 113.4px;
	height: 30px;
	background-size: contain;
	margin: 0 auto 0;
	box-sizing: border-box;
	background-image: url(images/logo.png);
	transition: opacity .3s;
}

.headerMain {position: fixed; top: 0; left: 0; width: 100%;}
.headerMainNav {display: none;}

.mailBtn {
	position: fixed;
	top: 0;
	right: 80px;
	height: 60px;
	width: 170px;
	z-index: 99999999999999;
}

.mailBtn img {width: 25px; display: inline-block; margin-right: 5px;}
.mailBtn a {
	display: block;
	color: #FFF;
	background-color: #377142;
	height: 60px;
	width: 100%;
	font-size: 16px;
	font-weight: 500;
	padding: 17px 20px;
	box-sizing: border-box;
}

.mailBtn2 {
	position: fixed;
	top: 0;
	right: 45px;
	height: 40px;
	width: 40px;
	z-index: 99999999999999;
}

.mailBtn2 img {width: 25px; display: inline-block; margin-right: 5px;}
.mailBtn2 a {
	display: block;
	color: #FFF;
	background-color: #377142;
	height: 40px;
	width: 40px;
	font-size: 16px;
	font-weight: 500;
	padding: 7.5px;
	box-sizing: border-box;
}


#_btn {
  overflow: hidden;
  height: 40px;
  width: 40px;
  position: fixed;
  top: 0px;
  right: 0px;
  z-index: 9999999999999;
  box-sizing:  border-box;
}


#_btn_nav {
  float: left;
  cursor: pointer;
  position: relative;
}
#nav_open {
  position: absolute;
  z-index: 2;
  top: 0;
  height: 40px;
  width: 40px;
transition:width .3s, height .3s;
}
#nav_close {
  position: relative;
  z-index: 2;
  top:  0px;
  height: 40px;
  width: 40px;
  transition:width .3s, height .3s;
}

#fadeLayer {
  position:absolute;
  top:0px;
  left:0px;
  width:100%;
  height:100%;
  background-color: rgba(0,0,0,0.6);
  visibility:hidden;
  z-index: 99999999998;
  cursor: pointer;
}
#menu {
  	position: relative;
  	z-index: 0;
  	top: 13px;
	margin: 0px auto 0;
 	height: 16px;
	width: 24px;
    cursor: pointer;
    font-family: 'Ubuntu', sans-serif;
	transition:top .3s;
}
/* #menu:after {
	content:"MENU";
	color: #000;
	font-size: 10px;
	position: absolute;
	bottom: -13px;
	left: -2px;
}
#menu.active:after {
	content:"CLOSE";
	color: #000;
	font-size: 10px;
	bottom: -13px;
	left: -4px;
} */
#menu .bar {
    display: inline-block;
    width: 24px;
    height: 2px;
    background-color: #000;
    position: absolute;
    left: 50%;
	margin-left: -12px;
    transition: .15s ease-in-out;
}
#bar01 {top: 0;}
#bar02 {top: 6px;}
#bar03 {top: 12px;}
.active #bar01 {
    top: 6px;
    transform: rotate(45deg);
}
.active #bar02 {width: 0;}
.active #bar03 {
    top: 6px;
    transform: rotate(-45deg);
}

/* **********************************************************************************************
[3]sideContainer
************************************************************************************************ */
.headerNav {
	width: 100%;
	height: 100%;
	position: fixed;
	top: -100%;
	left: 0;
	z-index: 99999999999;
	padding: 0px 0 0;
	box-sizing: border-box;
	background-color: #fff;
	overflow: auto;	
}

    .humber {
        /* height: 150px;
        overflow-y: scroll; */
        height: 100%;
        overflow: auto;
        -ms-overflow-style: none;    /* IE, Edge 対応 */
        scrollbar-width: none;       /* Firefox 対応 */
    }
    .humber::-webkit-scrollbar {  /* Chrome, Safari 対応 */
        display:none;
    }

.headerNav2 {
	/*width: 296px;
	height: 266px;
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 99999999999;
	margin-top:-133px;
	margin-left:-148px;
	box-sizing: border-box;*/
	padding: 6px 5px 6px 5px;
	box-sizing: border-box;
	width: 100%;
}


.navlogo {
	position: relative;
	margin: 0 0 20px;
	width: 113.4px;
	height: 30px;
	z-index: 9999999999;
}
.navlogo a {
	display: block;
	background-repeat: no-repeat;
	background-position: left top;
	text-indent: 100%;
	overflow: hidden;
	white-space: nowrap;
	position:relative;
	width: 113.4px;
	height: 30px;
	margin: 0 auto 0;
	box-sizing: border-box;
	background-image: url(images/logo.png);
	background-size: contain;
	transition: opacity .3s;
}

.navBox ul.side001 {
	/*-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	text-align: left;
	width: 293px;
	line-height: 1.65;*/
	margin-bottom: 20px;
	text-align: left;
}


.navBox ul.side001 li li {
	margin-top: 10px;
}


.navBox ul.side001 li a{
	display: block;
	color: #000;
	padding: 5px 5px;
	box-sizing: border-box;
	font-size: 20px;
	text-align: left;
	line-height: 0.8;
	font-weight: 700;
	font-family: 'Ubuntu', sans-serif;
	border: 1px solid #CCC;
	margin-top: 5px;
}

.navBox ul.side001 li a span{
	font-size: 11px;
	font-family: 'Noto Sans JP', sans-serif;
	display: inline-block;
	position: relative;
	line-height: 0.5;
	
}

.navBox ul.side001 li ul{
	width: 100%;
	text-align: center;
	margin-bottom: 5px;
}


.navBox ul.side001 li li {/* display: inline-block; */ font-size: 14px; margin: 0 0px; /* width: 18%; */ padding: 0 10px; box-sizing: border-box;}
.navBox ul.side001 li li a{
	color: #000;
	padding: 10px 5px 10px;
	box-sizing: border-box;
	height: auto;
	display: block;
	position: relative;
	font-size: 14px;
	border-bottom: 1px solid #7f7f7f;
	border-top: none;
	border-left: none;
	border-right: none;
	margin-top: 0;
	text-align: left;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
	line-height: 1.5;
}

.navBox ul.side001 li li a::before,
.navBox ul.side001 li li a::after{
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}

.navBox ul.side001 li li a::before{
	right: 3px;
	width: 7px;
	height: 1px;
	background: #7f7f7f;
	transition: width .3s,right .3s;
}
.navBox ul.side001 li li a::after{
	right: 3px;
	width: 6px;
	height: 6px;
	border-top: 1px solid #7f7f7f;
	border-right: 1px solid #7f7f7f;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	transition: right .3s;
}


/* **********************************************************************************************
[4]footerContainer
************************************************************************************************ */
footer {
	position: relative;
	width: 100%;
	padding: 80px 20px 20px;
	box-sizing:  border-box;
	color: #000;
	background-color: #ebebeb;
}

.footerCompany h2 {
	width: 189px;
	height: 50px;
	margin: 0px auto 20px;
	box-sizing: border-box;
}
.footerCompany h2 a{
	display: block;
	text-indent: 100%;
	overflow: hidden;
	white-space: nowrap;
	background-image: url(images/logo.png);
	background-repeat: no-repeat;
	width: 189px;
	height: 50px;
}

.footerCompany {/* float: left; */}
.footerCompany ul {text-align: center; margin-bottom: 40px;}
.footerCompany li {display: inline-block; margin: 0 10px 0 0;}
.footerCompany li a {
	display: block;
	color: #000;
	font-size: 12px;
}

/* copyright
----------------------------------------------- */
.copyright {
	font-size: 10px;
	text-align: center;
	padding: 10px 0;
	position: relative;
	box-sizing: border-box;
	font-family: 'Ubuntu', sans-serif;
	color: #000;
}

/* pageTop
----------------------------------------------- */
#pageTop {
	position: fixed;
	bottom: 110px;
	right: 0;
	color: #FFF;
	width: 48px;
	height: 48px;
	text-align: center;
	font-size: 10px;
	z-index: 999999999;
}
#pageTop a{
	color: #fff;
	position: relative;
	width: 48px;
	height: 48px;
	display: block;
	box-sizing: border-box;
	font-family: 'Ubuntu', sans-serif;
	padding-top: 20px;
	border: 1px solid #377142;
	background-color: #377142;
	line-height: 1.1;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
}
#pageTop a:after {
	position: absolute;
	background-image: url(images/pagetop.png);
	background-repeat: no-repeat;
	background-size: 35px 21px;
	width: 35px;
	height: 21px;
	top: 12px;
	left: 0;
	right: 0;
	margin: 0 auto;
	content: "";
	transition: top .3s;
}

#pageTop a:hover:after {
	top: 9px;
	transition: top .3s;
}

/* **********************************************************************************************
[5]Container
************************************************************************************************ */
#container {
	width: 100%;
	box-sizing: border-box;
	padding: 0;
	position: relative;
	z-index:99999999;
	margin-top: 1px;
	top: 0px;
}

#container section{position: relative;}




/* Ttl
----------------------------------------------- */
.mainTtl {
	font-size: 25px;
	font-family: 'Ubuntu', sans-serif;
	margin-bottom: 20px;
	line-height: 1.0;
	font-weight: 700;
	text-align: left;
}

.mainTtl span{
	font-size: 13px;
	font-family: 'Noto Sans JP', sans-serif;
	display: block;
	position: relative;
}


.bgRed .mainTtl,
.bgGreen .mainTtl{color: #fff; text-align: center;}


/* Btn
----------------------------------------------- */
.btn { clear: both; text-align: right; margin: 30px auto 0; width: 100%; }
.btn a,
a .btn{
	display: inline-block;
	padding: 15px 20px;
	box-sizing: border-box;
	border: 1px solid #377142;
	color: #fff;
	width: 200px;
	background-color: #377142;
	position: relative;
	text-align: left;
	font-weight: 700;
}

.btn a::before,
.btn a:after,
a .btn::before,
a .btn::after{
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}

.btn a::before,
a .btn::before{
	right: 20px;
	width: 7px;
	height: 1px;
	background: #fff;
	transition: width .3s,right .3s;
}
.btn a::after,
a .btn::after{
	right: 20px;
	width: 6px;
	height: 6px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	transition: right .3s;
}

/* **********************************************************************************************
[6]topContainer
************************************************************************************************ */
.top001 {margin-top:1px;}
.top001 .btn {
	position: absolute;
	bottom: 120px;
	left: 50%;
	margin-left: -100px;
}


.newsBox {border-top: 1px solid #e5e5e5;}
.newsBox li {border-bottom: 1px solid #e5e5e5; padding: 10px; box-sizing: border-box;}

.newsBox dt {float: left; font-size: 12px; font-family: 'Ubuntu', sans-serif; vertical-align: top; width: 80px;}
.newsBox dd {float: left;  vertical-align: top; width: calc(100% - 200px);}
.newsBox dd.newsCat {width: 120px;}
.newsBox dd a{color: #000; display: block; position: relative;}
.newsBox dd.newsCat a{
	font-size: 12px;
	color: #7e7e7e;
	text-decoration: underline;
}
.newsBox dd.newsTxt {clear: both; width: 100%; margin-top: 5px;}
.newsBox dd.newsTxt a {padding-right: 25px; box-sizing: border-box;}
.newsBox dd.newsTxt a::before,
.newsBox dd.newsTxt a::after{
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}

.newsBox dd.newsTxt a::before{
	right: 3px;
	width: 7px;
	height: 1px;
	background: #7f7f7f;
	transition: width .3s,right .3s;
}
.newsBox dd.newsTxt a::after{
	right: 3px;
	width: 6px;
	height: 6px;
	border-top: 1px solid #7f7f7f;
	border-right: 1px solid #7f7f7f;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	transition: right .3s;
}

.newsBox dd.newsTxt a:hover::before{
width: 10px;
right: 0;
transition: width .3s,right .3s;
}




.newsBox dd.newsTxt a:hover::after{
right: 0px;
transition: right .3s;
}

.businessBox ul {}
.businessBox li{
/* width: 33.33%;
padding: 20px;
box-sizing: border-box;
float: left; */
margin-bottom: 2px;
}

.businessBox li:nth-of-type(4){
/* clear:both;
float: left;
margin-left: 16.66%; */
}
.businessBox li div {position: relative;}
.businessBox li figure {
position: relative;
width: 100%;
padding-top: 40%;
overflow: hidden;
}

.bgimg {
	background-color: rgba(0,0,0,0.4);
	width: 100%;
	height: 100%;
	overflow: hidden;
	position: absolute;
	top:0;
	left:0;
	transition: background-color .3s;
}

a:hover .bgimg {
	background-color: rgba(0,0,0,0.2);
	transition: background-color .3s;
}


.businessBox li dl {
	color: #FFF;
	position: absolute;
	top:50%;
	left:20px;
	height: 50px;
	width: calc(100% - 40px);
	margin-top: -25px; 
	padding: 0 0px;
	box-sizing: border-box;
}

.businessBox li dl dt {
font-size: 20px;
font-weight: 700;
}

.businessBox li dl dd {
font-size: 12px;
font-weight: 500;
font-family: 'Ubuntu', sans-serif;
}

.businessBox li dl::before,
.businessBox li dl::after{
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
	
}

.businessBox li dl::before{
	right: 3px;
	width: 7px;
	height: 1px;
	background: #fff;
	transition: width .3s,right .3s;
}
.businessBox li dl::after{
	right: 3px;
	width: 6px;
	height: 6px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	transition: right .3s;
	transition: right .3s;
}

.businessBox li a:hover dl::before {
width: 10px;
right: 0;
transition: width .3s,right .3s;

}
.businessBox li a:hover dl::after{
right: 0px;
transition: right .3s;
}

.bgGry {
	background-color: #ebebeb;
	position: absolute;
	bottom: 0;
	left:0;
	width: 100%;
	height: 80px;
}

.contactBtn {
	background-color: #377142;
	width: 100%;
	display: block;
	padding: 20px;
	box-sizing: border-box;
	color: #FFF;
	position: relative;
}
.sptelBox {text-align: center;}
.contactBtn dl {text-align: center;}
.contactBtn dt {/* float: left; */ padding-top: 10px; /* margin-right: 10px; */}
.contactBtn dd.contel a,
.contactBtn dd.contel span {/* float: left; */ color: #FFF; float: none; font-size: 25px; font-family: 'Ubuntu', sans-serif; font-weight: 700; line-height: 1.0;}
.contactBtn p.conmail {margin-top: 10px; text-align: center;}
.contactBtn p.conmail a img{width: 23px; display: inline-block; margin-right: 5px; vertical-align: middle;}
.contactBtn p.conmail a {
	border: 1px solid #FFF;
	padding: 10px;
	box-sizing: border-box;
	display: block;
	font-size: 16px;
	font-weight: 700;
	color: #FFF;
	width: 240px;
	margin: 0 auto;
}

/* 
.contactBtn a:before {
	position: absolute;
	background-image: url(images/email.svg);
	width: 60px;
	height: 60px;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 40px 40px;
	content:"";
	top:0;
	bottom:0;
	right: 40px;
	margin: auto 0;
	border: 1px solid #FFF;
	border-radius: 50%;
}

*/


/* **********************************************************************************************
[7]subContainer
************************************************************************************************ */
/* common
---------------------------------------------- */

#sub #sliderbox,
#sub #topContent {
	height: 280px;
}

#sub.travel #sliderbox,
#sub.travel #topContent {
	height: 430px;
}

#sub.trade #sliderbox,
#sub.trade #topContent {
	height: 340px;
}

/* #sub.company #sliderbox,
#sub.company #topContent,
#sub.contact #sliderbox,
#sub.contact #topContent,
#sub.news #sliderbox,
#sub.news #topContent {
	height: 150px;
} */

#sub.company #sliderbox,
#sub.company #topContent,
#sub.contact #sliderbox,
#sub.contact #topContent,
#sub.news #sliderbox,
#sub.news #topContent {
	height: 150px;
}


.subTtlBox {
	position: absolute;
	top: 50%;
	left:0;
	margin-top: -10px;
	width: 100%;
}


.mainTtl2 {
	font-size: 30px;
	font-family: 'Ubuntu', sans-serif;
	margin-bottom: 20px;
	line-height: 1.0;
	font-weight: 700;
	text-align: center;
	color: #377142;
}

.mainTtl2 span{
	font-size: 13px;
	
	display: block;
	position: relative;
	color: #000;
}

.subSubBox figure {
	position: relative;
	width: 100%;
	height: 280px;
	overflow: hidden;
}

.subSubBox figure span {
	position: absolute;
	top:0;
	left:0;
	background-color: rgba(0,0,0,0.3);
	width: 100%;
	height: 280px;
}

.travel .subSubBox figure,
.travel .subSubBox figure span {
	height: 430px;
}

.trade .subSubBox figure,
.trade .subSubBox figure span {
	height: 340px;
}

.subSubBox .subTtlBox {
	margin-top: -70px;
}

.company .subSubBox .subTtlBox,
.contact .subSubBox .subTtlBox,
.news .subSubBox .subTtlBox {
	margin-top: 0px;
}

.travel .subSubBox .subTtlBox {
	margin-top: -150px;
}
.trade .subSubBox .subTtlBox {
	margin-top: -80px;
}

.subSubBox .mainTtl2{color: #fff; font-family: 'Noto Sans JP', sans-serif;line-height: 1.2; margin-bottom: 10px;}
.subSubBox .mainTtl2 span {color: #fff; font-family: 'Ubuntu', sans-serif;}

.subSubBox p {width: 100%; text-align: left; color: #FFF; padding: 0 5px; box-sizing: border-box;}

#sub .top001 {margin-top:0px;}

.businessBox.businessBox2 li{
width: 100%;
padding: 5px;
box-sizing: border-box;
float: left;
}

.businessBox.businessBox2 li:nth-of-type(4){
clear:none;
float: left;
margin-left: 0;
}

.businessBox.businessBox2 li figure {
padding-top: 30%;
}

.businessBox.businessBox2 li dl {
	color: #FFF;
	position: absolute;
	top:50%;
	left:5px;
	height: 50px;
	width: calc(100% - 10px);
	margin-top: -25px; 
	padding: 0 5px;
	box-sizing: border-box;
}

.businessBox.businessBox2 li dl dt {
font-size: 16px;
}

.businessBox.businessBox2 li dl dd {
font-size: 10px;
}

.floatLeft {
	/*float: left;
	width: 40%;
	margin-right: 20px;
	margin-bottom: 20px; */
}

.floatRight {
	/* float: right;
	width: 40%;
	margin-left: 20px;
	margin-bottom: 20px; */
}

.tenplate002 {width: 100%;}
.leftGallery {/* float: left; width: 50%; */ box-sizing: border-box;}
.rightGallery {/* float: right; width: 50%; padding-left: 40px; */ box-sizing: border-box;}


.thumbnail li {float: left; width: 25%; padding: 10px 5px; box-sizing: border-box;}

.pageLink {text-align: center; margin: 80px auto 0; width: 94%}
.company .pageLink {text-align: center; margin: 0px auto 0;}
.pageLink li {display: inline-block; width: 49%;}
.pageLink li dd {font-size: 14px;}
.pageLink li a {
	display: block;
	background-color: #377142;
	color: #FFF;
	padding: 5px;
	box-sizing: border-box;
}
.pageLink li dt {
font-family: 'Ubuntu', sans-serif;
font-size: 18px;
font-weight: 700;
line-height:1.0;
margin-bottom: 10px;
}

.pageLink li dt span{
display: block;
font-weight: 500;
	font-size: 11px;
	font-family: 'Noto Sans JP', sans-serif;
}

.pageLink li h3 {
font-size: 13px;
font-weight: 700;
line-height:1.0;
}

.ggmap {
position: relative;
padding-top: 50%;
width: 100%;
height: 0;
overflow: hidden;
}
 
.ggmap iframe,
.ggmap object,
.ggmap embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
.listTable {border-top: 1px solid rgba(255,255,255,0.6);}
.listTable li{
padding: 20px;
box-sizing: border-box;
border-bottom: 1px solid rgba(255,255,255,0.6);
}
.listTable dl {color: #FFF;}
.listTable dt {/* float: left; width: 200px; */}
.listTable dd {/*float: left; width: calc(100% - 200px); */}

.contact .listTable {border-top: 1px solid #000;}
.contact .listTable li{
padding: 20px;
box-sizing: border-box;
border-bottom: 1px solid #000;
}
.contact .listTable dl {color: #000;}


.group li{
	float: left;
	width: 50%;
	padding: 5px;
	box-sizing: border-box;
}

.group li a{
	display: block;
	color: #000;
}
.group li figure{
	width: 100%;
	position: relative;
	padding-top: 40%;
	oveflow: hidden;

}

.btn_area {
	text-align: center;
	margin-top: 40px;
}

.btn_area li {display: inline-block;}
.btn_area li a,
.btn_area li input[type=submit],
.btn_area li input[type=button] {
	display: block;
	background-color: #377142;
	color: #FFF;
	padding: 15px 20px;
	box-sizing: border-box;
	border: none;
	font-size: 16px;
	cursor:pointer;
}

.telBox li{/*float: left; */}
.telBox li:first-child {
	color: #377142;
	font-size: 30px;
	font-weight: 700;
	font-family: 'Ubuntu', sans-serif;
	line-height: 1.0;
	margin-right: 20px;
}
.telBox li a {color: #377142;}
.telBox li:first-child .telmin {
	font-size: 13px;
	display: inline-block;
	font-family: 'Noto Sans JP', sans-serif;
}

.telBox li:nth-of-type(2) {margin-top: 0px; font-size: 11px;}
.company .pageLink li {display: inline-block; width: auto; margin-bottom: 3px;}

.newsSubBox h3 {
	font-size: 16px;
	font-weight: 700;
	margin-top: 40px;
	line-height: 1.3;
}

.newsdaySub {
	font-size: 11px;
	margin-bottom: 10px;
}

.newsdaySub a{
	color: #000;
	font-size: 10px;
	display: inline-block;
	text-decoration: underline;
}

.newsDetail {
	padding: 20px 0;
	box-sizing: border-box;
	border-top: 1px solid #eee;
	border-bottom: 1px solid #eee;


}

.pager,
.pager1 { text-align: center; margin: 30px auto; }
.pager1 span,
.pager span,
.pager a{
	border: 1px solid #eee;
	color: #000;
	cursor: pointer;
	padding: 2px 8px;
	font-family: 'Ubuntu', sans-serif;
	font-size: 11px;	
}

.prev{ float: left; }
.next{ float: right; }
.pager span:hover,.pager1 span:hover,.pager a:hover{
	background-color: #eee;
	color: #000;
}


/* **********************************************************************************************
[7]shop
************************************************************************************************ */

/* **********************************************************************************************
[8]other
************************************************************************************************ */
/* common
----------------------------------------------- */
.businessBox li figure img,
.subSubBox figure img,
.group li figure img {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	object-fit: cover;
	width: 100%;
	height: 100%;
}

/* form
---------------------------------------------- */
	input[type=text],textarea,input[type=password] {
			background-color: #fff;
			padding: 8px;
			width: 100%;
			-webkit-box-sizing: border-box;
			-moz-box-sizing: border-box;
			box-sizing: border-box;
			border: 1px solid #ddd;
			margin: 1px 0;
	}
	input.boxShort,input.box60 {width: 28%;}
	input.box120 {width: 38%;}
	input.box140 {width: 68%;}
	input[type=text].keyBox {
	width: calc(100% - 24px);
	border-top: none;
	border-left: none;
	border-right: none;
	font-size: 11px;
	color: #a0a0a0;
	font-family: 'Noto Sans JP', sans-serif;
	}
	input.boxMiddle,input.box380,input.box300 {width: 100%;}
	input.boxLong,input.box1000 {width: 100%;}
	.box95,textarea.box380 {width: 100%;}
	input[type=checkbox] {width: 25px; height: 25px; background-color: #fff; }
	input[type=radio] {width: 20px; height: 20px; background-color: #fff; vertical-align:middle;}
	.vertical-align input{
	vertical-align:middle;
	}
	select {
		-webkit-appearance:none;
		-moz-appearance:none;
			text-indent: .01px;
			text-overflow: "";
		appearance:none;
		width: auto;
		height: 40px;
		padding: 5px 20px 5px 5px;
		background-color: #fff;
		background-image: url(images/select.png);
		background-repeat: no-repeat;
		background-size: 7px 10px;
		background-position: right 5px center;
		cursor: pointer;
		border: 1px solid #ddd;
		margin: 0 5px 5px 0;
	}
	.detailshopping select { width: 150px; }
	.selectV select {width: 20%;}

.subHeader li select{
	background-image: url(images/icon-world.png);
	background-size: 13px 13px;
	background-position: right 2px center;
	height: 30px;
	border: none;
}

	
	@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
		select:not(:target) {
			padding-right:0;
			background-image: none;
		}
	}
	input[type="submit"],input[type=text],textarea,input[type=password]{
	-webkit-appearance: none;
	}
	
	.red {font-size: 1.0rem; color: #F00;}

	textarea.kiyaku_text {
	height: 1000px;
	width:  100%;
	overflow: auto;
	
	}

/* font 
--------------------------------------------- */
.f10 { font-size: 1.0rem; }
.f11 { font-size: 1.1rem; }
.f12 { font-size: 1.2rem; }
.f13 { font-size: 1.3rem; }
.f14 { font-size: 1.4rem; }
.f15 { font-size: 1.5rem; }
.f16 { font-size: 1.5rem; }
.f17 { font-size: 1.5rem; }
.f18 { font-size: 1.6rem; }
.f19 { font-size: 1.6rem; }
.f20 { font-size: 1.8rem; }
.f25 { font-size: 2.0rem; }
.f30 { font-size: 2.5rem; }
.f35 { font-size: 3.0rem; }
.f40 { font-size: 3.5rem; }
.f45 { font-size: 4.0rem; }
.f50 { font-size: 4.5rem; }
.f55 { font-size: 5.0rem; }
.f60 { font-size: 5.5rem; }
.f65 { font-size: 6.0rem; }
.f70 { font-size: 6.5rem; }

.txtC,.alignC { text-align: center; }
.txtR,.alignR { text-align: right; }
.txtL,.alignL { text-align: left; }

a.txtD { text-decoration: underline; color: #000; }

.pb80 { padding: 40px 0;}
.pb80t { padding: 40px 0 0;}
.pb60 { padding: 30px 0;}
.pb30 { padding: 30px 0;}
.mb30 { margin-bottom: 30px; }
.mb10 { margin-bottom: 10px; }
.mt10 { margin-top: 10px; }

.gryTxt { color: #a0a0a0; }
.borderB { border-bottom: 1px dashed #e5e5e5; }
.borderR { border-right: 1px dashed #e5e5e5; }
.borderL { border-left: 1px dashed #e5e5e5; }

.fontB { font-weight: bold; }
.notoserifjp {font-family: 'Noto Serif JP', serif;}
.lora {font-family: 'Lora', serif;}
.notosansjp {font-family: 'Noto Sans JP', sans-serif;}
.asap {font-family: 'Asap', sans-serif;}
.ubuntu {font-family: 'Ubuntu', sans-serif;}

.box10 {
	width: 100%;
	/* max-width: 1580px; */
	margin: 0 auto;
	padding: 80px 10px;
	box-sizing: border-box;
	position: relative;
}

.box10M {
	width: 100%;
	max-width: 1110px;
	margin: 0 auto;
	padding: 80px 10px;
	box-sizing: border-box;
	position: relative;
}

.box10M2 {
	width: 100%;
	max-width: 1110px;
	margin: 0 auto;
	padding: 80px 10px 0;
	box-sizing: border-box;
	position: relative;
}

.posiR {position: relative;}
.spno { display: none; }
.pcno.pcno3{ display: none; }
.dis {display: none;}

.bgRed {background-color: #377142;}
.bgGreen {background-color: #377142;}

@media all and (min-width: 480px) {
	br.pcno,
	br.spno2 { display: none;}
	br.pcno2,br.pcno.pcno2 { display: block;}
	br.pcno.pcno3 { display: block;}
	.txtC.txtLsp { text-align: center; }
	.txtC.txtSL { text-align: left; }
	

#sliderbox li.box {
	height: 100vh;
}
#sliderbox li figure{
	height: 100vh;
}
.navBox ul.side001 {max-width: 440px; margin: 0 auto;}

.subSubBox p {text-align: center;}
.floatLeft {
	float: left;
	width: 40%;
	margin-right: 10px;
	margin-bottom: 10px;
}

.floatRight {
	float: right;
	width: 40%;
	margin-left: 10px;
	margin-bottom: 10px;
}

.leftGallery {float: left; width: 50%; box-sizing: border-box;}
.rightGallery {float: right; width: 50%; padding-left: 20px; box-sizing: border-box;}

.businessBox.businessBox2 li{
width: 33.33%;
padding: 2px;
box-sizing: border-box;
float: left;
}

.businessBox.businessBox2 li:nth-of-type(4){
clear:both;
float: left;
margin-left: 16.66%;
}
.businessBox.businessBox2 li figure {
padding-top: 40%;
}

.listTable dt {float: left; width: 180px;}
.listTable dd {float: left; width: calc(100% - 180px);}
.group li{
	float: left;
	width: 33.33%;
	padding: 5px 2px;
	box-sizing: border-box;
}

#sub.travel #sliderbox,
#sub.travel #topContent {
	height: 360px;
}

.travel .subSubBox figure {
	height: 360px;
}

.travel .subSubBox figure span {
	height: 360px;
}

#sub.trade #sliderbox,
#sub.trade #topContent {
	height: 280px;
}

.trade .subSubBox figure,
.trade .subSubBox figure span {
	height: 280px;
}

.travel .subSubBox .subTtlBox {
	margin-top: -120px;
}
.trade .subSubBox .subTtlBox{
	margin-top: -70px;
}
}

@media all and (min-width: 560px) {
	.contactBtn dl,
	.contactBtn p {display: inline-block; vertical-align: middle;}
	br.pcno.pcno3 { display: none;}
	
.businessBox li{
width: 33.33%;
padding: 5px;
box-sizing: border-box;
float: left;
margin-bottom: 0;
}

.businessBox li:nth-of-type(4){
clear:both;
float: left;
margin-left: 16.66%;
}

.businessBox li figure {
padding-top: 60%;
}
.telBox li{float: left;}
.telBox li:first-child {
	margin-right: 10px;
}
.telBox li:first-child .telmin {
	font-size: 12px;
}
.telBox li:nth-of-type(2) {margin-top: 10px; font-size: 10px;}

#sub.travel #sliderbox,
#sub.travel #topContent {
	height: 320px;
}

.travel .subSubBox figure {
	height: 320px;
}

.travel .subSubBox figure span {
	height: 320px;
}
.travel .subSubBox .subTtlBox {
	margin-top: -80px;
}

.floatRight.daihyoimg {
	width: 200px;
}

}

@media all and (min-width: 660px) {
.navBox ul.side001 {max-width: 640px; margin: 0 auto;}
.navBox ul.side001 li li {display: inline-block; width: 19%; font-size: 13px;}

.group li{
	float: left;
	width: 16.666%;
	padding: 5px 2px;
	box-sizing: border-box;
}

}

@media all and (min-width: 730px) {

}



@-webkit-keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -10%, 0);
    transform: translate3d(0, -10%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -10%, 0);
    transform: translate3d(0, -10%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@-webkit-keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 10%, 0);
    transform: translate3d(0, 10%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 10%, 0);
    transform: translate3d(0, 10%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@-webkit-keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-10%, 0, 0);
    transform: translate3d(-10%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-10%, 0, 0);
    transform: translate3d(-10%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@-webkit-keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(10%, 0, 0);
    transform: translate3d(10%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(10%, 0, 0);
    transform: translate3d(10%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
