.alt {position:absolute;top:-5000px;left:-9999px;}
.nocontxt {-webkit-touch-callout: none;-webkit-user-select: none;user-select: none;-webkit-user-drag:none;}
.nocontxt img {pointer-events: none;}
.f110 { font-size:110%;}
.f120 { font-size:120%;}
.f130 { font-size:130%;}
.f140 { font-size:140%;}
.f150 { font-size:150%;}
.f160 { font-size:160%;}
.f95 { font-size:95%;}
.f90 { font-size:90%;}
.f85 {font-size:85% !important;}
.f80 {font-size:80% !important;}
.f75 {font-size:75% !important;}
.stgrn{color:#32c83c;}
@media all and (min-width: 768px) {
.nobr{display: none;	} 
}

h1#gxhd_top{max-width: 980px; margin:0 auto 3em; text-align:left; background: url(../img/main.jpg) no-repeat center top 10%; background-size:cover; height:550px; position: relative; padding:16em 0 0; box-sizing: border-box; border-radius:10px; color:#fff;}
h1#gxhd_top .logo{width:180px; height:60px; position: absolute; right:0; bottom:0; background:#fff url(../img/logomark.png) no-repeat center center; display:block; background-size:85%; border-radius:10px 0 0 0;}
h1#gxhd_top .maintxt{font-size:410%; display:inline-block; position: absolute; left:3%; top:10%; text-shadow: 0px 0px 4px rgba(51,51,51,0.5), 0px 0px 8px rgba(51,51,51,0.4);}
h1#gxhd_top .subtxt{font-size:250%; line-height:160%; display:inline-block; position: absolute; left:3%; bottom:10%; text-shadow: 0px 0px 4px rgba(51,51,51,1), 0px 0px 10px rgba(51,51,51,0.8);}
.txtbg{
  display: inline;
  background-color:rgba(50,200,60,1);
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
  }
@media all and (max-width: 767px) {
h1#gxhd_top{width:100%; height:0; padding:70% 0 0; border-radius:0px;} 
h1#gxhd_top .maintxt{font-size:6.2vw; }
h1#gxhd_top .subtxt{font-size:4.6vw; bottom:8%;  line-height:140%;}
h1#gxhd_top .logo{width:33vw; height:9.5vw; border-radius:2vw 0 0 0;}
}  

.gxtop .news{margin:2em auto 4em;}
.gxtop .news ul{list-style: none; margin:2em auto;}
.gxtop .news ul li{border-top:1px solid #32c83c; font-weight:600; position: relative;}
.gxtop .news ul li:last-of-type{border-bottom:1px solid #32c83c;}
.gxtop .news ul li a:after {
content: "";
  position: absolute;
  top:0;
  bottom:0;
margin:auto;
  right: 0;
  transition: all 0.2s;
  width:50px;
  height:100%;
  background:#fff url(../img/arrow.svg) no-repeat right center; background-size:contain;
}
.gxtop .news ul li a:hover:after {
  right:-5px;
}
.gxtop .news ul li a{text-decoration:none; color:#32c83c; display:block; padding:1.25em;}
.gxtop .news ul li span.ymd{font-size:100%;}
.gxtop .news ul li p{font-size:140%; line-height:140%; word-break: break-all;}

@media all and (max-width: 767px) {
.gxtop .news ul li a{padding:3% 0 3% 2%;}
.gxtop .news ul li a:after {width:10%;}
.gxtop .news ul li span.ymd{font-size:2.5vw;}
.gxtop .news ul li p{font-size:3.25vw; padding:.5vw 0 0 0; width:90%;}
}

.gxtop .story_top h4 {padding:2em 0 0; font-size:180%; line-height:180%;}

.gxtop .symbol img{width:300px; margin:5em auto; display:block;}
.gxtop .symbol h4 {
  font-size:150%;
  position: absolute;
  padding: 0 .6em;
  left: 20px;
  top: -10px;
  color: #32c83c;
  background-color: #ffffff;
}
.point-box {
  position: relative;
  border: 2px solid #32c83c;
  border-radius: 10px;
  margin: 3em 0;
  padding: 1.6em 1.8em 1.25em;
  font-size:140%; line-height:160%;
}

@media all and (max-width: 767px) {
.gxtop .story_top h4 {padding:5% 0 0; font-size:3.6vw; line-height:160%;}
.gxtop .story_top h4 span{font-size:120%;}
.gxtop .symbol img{width:60%; margin:10% auto;}
.gxtop .symbol h4 {font-size:4.5vw;}
.point-box {font-size:120%; margin:5% 0;}
}

.gxtop .company table{width:100%; text-align:left; margin:1em auto;}
.gxtop .company table tr {
  border-bottom: 1px solid #32c83c;
}
.gxtop .company table tr th{color:#32c83c; width:100%; display:block; padding:1.5em 0 .5em 1em; font-size:140%;}
.gxtop .company table tr td {font-size:140%; line-height:140%; width:100%; display:block; padding:0 0 1em 1em; font-size:140%;}

@media all and (max-width: 767px) {
.gxtop .company table tr th{font-size:3.5vw; padding:3% 0 1% 2%;}
.gxtop .company table tr td{font-size:3.5vw; padding:0 0 2.5% 2%;}
}

#tbsgx .ttl_1{font-size:300%; position: relative;}
#tbsgx .ttl_2{font-size:300%; position: relative; text-align:center;}
#tbsgx span.line{background:linear-gradient(transparent 70%,rgba(50,200,60,.2) 70%); padding:0 .4em .2em}
#tbsgx .ttl_1 span,#tbsgx .ttl_2 span.subttl{font-size:1.5rem; display:block; font-weight:400; padding:0 0 .4em;  color:#969696;}
.bdrd{border-radius:10px 10px 0 0; width:100%; overflow: hidden;}
.bdrd img{width:100%; border-radius:20px 0 20px 0;}

/*btn*/
#tbsgx a.btn_1 {width:40%; display:block; text-align:center; font-weight:600; font-size:180%; transition: 0.5s; position: relative; padding:1.4em 0; margin:1.5em auto; background: none; color:#32c83c; text-decoration:none;}
#tbsgx a.btn_1 span{position: relative;  z-index:2;}
#tbsgx a.btn_1:before,#tbsgx a.btn_1:after { 
  content:'';
  width:96%;
  height:96%;
  position: absolute;
  display: inline-block;
}
#tbsgx a.btn_1:before {
  border-left: solid 2px #32c83c;
  border-top: solid 2px #32c83c;
  top:0;
  left:0;
}
#tbsgx a.btn_1:after {
  border-right: solid 2px #32c83c;
  border-bottom: solid 2px #32c83c;
  bottom:0;
  right:0;
}

#tbsgx a.btn_2 {width:30%; display:block; text-align:center; font-weight:600; font-size:180%; transition: 0.5s; position: relative; padding:1.2em 0; margin:1.5em auto 0; background-color:#32c83c; color:#fff; text-decoration:none; border-radius:100vh;}

#tbsgx h1#tbsgshd{background:#fff url(../img/tbsgx.svg) no-repeat center center; background-size:250px; width:100%; height:200px; margin:0 auto 1em;}

@media all and (max-width: 767px) {
#tbsgx h1#tbsgshd{background-size:40%; height:0; padding:25% 0 0;}
#tbsgx .ttl_1,#tbsgx .ttl_2{font-size:5.5vw;}
#tbsgx .ttl_1 span,#tbsgx .ttl_2 span.subttl{font-size:3vw;}
#tbsgx a.btn_1 {width:55%; font-size:4.5vw; padding:5% 0;}
#tbsgx a.btn_2 {width:55%; font-size:4.5vw; padding:4% 0; margin:5% auto 2%;}
.bdrd img{width:100%; border-radius:4vw 0 4vw 0;}
}

/*お知らせ*/
#tbsgx .news h2.ttl_1{padding:0 0 0 2.5em;}
#tbsgx .news h2:before{
content: "";
width:2em;
height:1.8em;
background-color:#32c83c;
position: absolute;
left:0;
top:0;
z-index:1;
background: url(../img/mark.png) no-repeat center bottom; background-size:contain;
}
.newslist{margin:2em auto;}
.newslist span.ymd{font-size:100%;}
.newslist p{font-size:140%; line-height:140%; word-break: break-all;}
.toggle {
display: none;
}
.newslist .option {
position: relative;
margin-bottom:1em;
}
.newslist .title,
.newslist .txt {
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
transform: translateZ(0);
transition: all 0.3s;
}
.newslist .title {
background-color:#32c83c;
padding: 1em;
display: block;
color: #fff;
font-weight: bold;
}
.newslist .title::after,
.newslist .title::before {
content: "";
position: absolute;
right:2em;
top:0;
bottom:0;
margin:auto;
width: 2px;
height: 1.5em;
background-color: #fff;
transition: all 0.3s;
}
.newslist .title::after {
transform: rotate(90deg);
}
.newslist .txt {
height: 0;
overflow: hidden;
border: solid 1px #32c83c;
border-top:none;
padding:0 2em;
}
.newslist .title p {padding:.25em 1em 0 0;}
.newslist .txt p {
margin: 0;
line-height: 1.5;
}
.newslist .txt a{color:#32c83c;}
.newslist .toggle:checked + .title + .txt {
height: auto;
padding:2em;
transition: all .3s;
}
.newslist .toggle:checked + .title::before {
transform: rotate(90deg) !important;
}

@media all and (max-width: 767px) {
.newslist{margin:5% auto;}
.newslist span.ymd{font-size:2.5vw;}
.newslist p{font-size:3.5vw;}
.newslist .title p {padding:.5vw 5vw 0 0 !important;}
.newslist .txt {padding:0 2.5%;}
.newslist .toggle:checked + .title + .txt {
padding:2.5%;
}
}

/*ストーリー*/
#tbsgx .story h3{font-size:240%; padding:0 0 0 1.2em; color:#32c83c; position: relative; margin:1.5em 0 0;}
#tbsgx .story h3:before{
content: "";
width:1em;
height:2px;
background-color:#32c83c;
position: absolute;
left:0;
top:50%;
z-index:1;
}
#tbsgx .story .case{display: flex; flex-flow: row wrap; justify-content: space-between; margin:1.5em 0 1em;}
#tbsgx .story .caselist{width:48%; overflow:hidden; border:2px solid #32c83c; border-radius:10px;}
#tbsgx .story .caselist img{width:100%;}
#tbsgx .story .caselist p{font-size:130%; padding:1em; line-height:140%;}

#mainContents #titleTyp01.aboutTitle02 {
max-width:980px;
margin:0 auto;
  background-image: url("../img/message.jpg");
  background-position:left 0 top 20%;
}

@media all and (max-width: 767px) {
#tbsgx .story h3{font-size:4vw;}
#tbsgx .story .caselist{width:100%; border-radius:2vw; margin:0 0 4vw;}
#tbsgx .story .caselist p{font-size:120%; line-height:160%;}
}
