@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);

body {
font-family: 'Noto Sans JP', sans-serif;
color: #000;
font-size: 14px;
background: #fff;
font-weight: 400;
margin: 0;
-webkit-text-size-adjust: 100%;
line-height: 2;
margin-top:60px;
}

h1, .h1,
h2, .h2,
h3, .h3,
h4, .h4,
h5, .h5,
h6, .h6 {
margin-top: 0;
font-weight: normal;
}

h2 {
font-size:21px;
font-weight: 500;
}

h3 {
font-size:18px;
font-weight: 500;
}

h4 {
font-size:16px;
font-weight: 500;
}

a {
color: #666;
}

a:focus, *:focus {
outline:none;
}

ol, ul {
margin: 0 0 0 15px;
padding: 0;
}

li {
margin: 0;
padding: 0;
}

b {
font-weight: 500;
}

.justify {
text-align: justify;
text-justify: inter-ideograph;
}


/* MARGIN */

.mt5 {margin-top:5px;}
.mt10 {margin-top:10px; }
.mt15 {margin-top:15px; }
.mt20 {margin-top:20px; }
.mt30 {margin-top:30px; }
.mt40 {margin-top:40px; }
.mt50 {margin-top:50px; }
.mt60 {margin-top:60px; }

.mb5 {margin-bottom:5px;}
.mb10 {margin-bottom:10px; }
.mb15 {margin-bottom:15px; }
.mb20 {margin-bottom:20px; }
.mb30 {margin-bottom:30px; }
.mb40 {margin-bottom:40px; }
.mb50 {margin-bottom:50px; }

.mr5 {margin-right:5px;}
.mr10 {margin-right:10px; }
.mr20 {margin-right:20px; }
.mr30 {margin-right:30px; }
.mr40 {margin-right:40px; }
.mr50 {margin-right:50px; }

.ml5 {margin-left:5px;}
.ml10 {margin-left:10px;}
.ml20 {margin-left:20px;}
.ml30 {margin-left:30px;}
.ml40 {margin-left:40px;}
.ml50 {margin-left:50px;}


/* TEXT */

.t10 {font-size:10px; }
.t12 {font-size:12px; }
.t14 {font-size:14px; }
.t16 {font-size:16px; }
.t18 {font-size:18px; }
.t21 {font-size:21px; }
.t24 {font-size:24px; }

.t12b {font-size:12px; font-weight: 500; }
.t14b {font-size:14px; font-weight: 500; }
.t16b {font-size:16px; font-weight: 400; }
.t18b {font-size:18px; font-weight: 400; }
.t21b {font-size:21px; font-weight: 400; }
.t24b {font-size:24px; font-weight: 400; }
.t28b {font-size:28px; font-weight: 400; }
.t32b {font-size:32px; font-weight: 400; }

a:link {
color: #666;
text-decoration: none;
}

a:visited {
color: #666;
text-decoration: none;
}

a:hover {
color: #168f57;
text-decoration: none;
}

a{
outline: none;
}

a:focus{
outline: none;
}

#container-wrap {
padding: 0;
margin-right: auto;
margin-left: auto;
max-width: 1000px;
background:#fff;
}

.top-headding{
width:100%;
text-align:center;
font-size:32px;
line-height: 1.2;
padding:20px 0 0 0;
margin: 0;
color: #168f57;
letter-spacing: 0.1em;
}

.menu-box {
text-align:center;
margin:0px 0 30px;
}

.menu-box h3 {
font-size:15px;
margin-top:20px;
}

.menu-box img {
width:100%;
}

.overview-box {
text-align:left;
margin:0px 0 30px;
}

.container-fluid {
background: none;
}

.en {
font-family: 'Montserrat', sans-serif;
font-family: 'Josefin Sans', sans-serif;
}

.green {
color: #168f57;
}

.red {
color: #cc3333;
}

.profile-wrap {
max-width: 600px;
margin-left: auto;
margin-right: auto;
}


/* BUTTON */

a.link-line-btn {
max-width: 280px;
font-size: 14px;
line-height: 1.8;
text-align: center;
color:  #fff;
display: block;
-webkit-transition: all 0.3s ease;
-moz-transition: all 0.3s ease;
-o-transition: all 0.3s ease;
transition: all  0.3s ease;
text-decoration: none;
margin: 0 auto 30px;
font-weight:400;
padding:10px 10px 10px;
border: solid 2px #168f57;
background: #168f57;
}

a.link-line-btn:hover {
background: none;
text-decoration: none;
box-sizing: border-box;
border: solid 2px #168f57;
color:  #168f57;
}


/* HEADER */

.header-navi {
text-align: center;
width: 100%;
position: fixed;
background-color: #168f57;
z-index: 2900;
top: 0;
}


/* HEADER NAVI */

.header-inner {
max-width: 1000px;
margin: 0 auto 0;
height:50px;
}

.header-logo2 {
float: left;
height:30px;
margin-top: 10px 0;
padding: 0 0 0 10px;
}

.header-logo2 img {
}

.header-logo2 h1 {
display: table-cell;
vertical-align: middle;
line-height:1.2;
display: inline;
font-size:16px;
color:#fff;
padding-left:5px;
font-weight: 500;
}

.header-menu {
float: right;
padding: 0 10px 0 0;
}

.header-menu ul{
margin-top:19px;
list-style-type: none;
}

.header-menu ul li{
float: left;
padding-left: 30px;
}

.header-menu a {
font-size: 14px;
color: #fff;
-webkit-transition: all 0.3s ease;
-moz-transition: all 0.3s ease;
-o-transition: all 0.3s ease;
transition: all  0.3s ease;
border-bottom: 2px solid #168f57;
}

.header-menu a:visited {
color: #fff;
}

.header-menu a:hover {
color: #88dfb7;
border-bottom: 2px solid #88dfb7;
}

section {
margin-top: -60px;
padding-top: 60px;
padding-bottom: 60px;
}


/* FOOTER */
.footer {
font-size: 12px;
padding: 20px 0;
color: #999;
text-align: center;
background-color: #fff;
border-top: solid 1px #ccc;
}


/* CAROUSEL =====================================*/

#Container_Carousel {
margin:0 0 0 0;
padding:0;
width:100%;
}

.item img{
width:100%; 
}

.carousel,.item,.active{
height:100%;
}

.carousel-inner{
height:100%;
}

.carousel-fade .carousel-inner .item {
-webkit-transition-property: opacity;
transition-property: opacity;
}

.carousel-fade .carousel-inner .item,
.carousel-fade .carousel-inner .active.left,
.carousel-fade .carousel-inner .active.right {
opacity: 0;
}

.carousel-fade .carousel-inner .active,
.carousel-fade .carousel-inner .next.left,
.carousel-fade .carousel-inner .prev.right {
opacity: 1;
}

.carousel-fade .carousel-inner .next,
.carousel-fade .carousel-inner .prev,
.carousel-fade .carousel-inner .active.left,
.carousel-fade .carousel-inner .active.right {
left: 0;
-webkit-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0);
}

.carousel-fade .carousel-control {
z-index: 2;
}


/* FRONT PAGE =====================================*/

.menu-box h3 {
line-height: 1.4;
}

.menu-box img {
width:100%;
}

.fas {
color: #168f57;
}

.scale {
overflow: hidden;
}

.scale img {
-moz-transition: -moz-transform 0.5s ease;
-webkit-transition: -webkit-transform 0.5s ease;
-o-transition: -o-transform 0.5s ease;
-ms-transition: -ms-transform 0.5s ease;
transition: transform 0.5s ease;
cursor: pointer;
}

.scale img:hover {
-webkit-transform: scale(3);
-moz-transform: scale(3);
-o-transform: scale(3);
-ms-transform: scale(3);
transform: scale(3);
cursor: pointer;
}


/* CONTACT =====================================*/

.input1 {
border: solid 1px #ccc;
font-size: 16px;
width:100%;
padding: 10px 10px;
line-height: 1.2;
-webkit-appearance: none; 
}

.textarea1 {
border: solid 1px #ccc;
font-size: 16px;
padding: 10px 10px;
line-height: 1.2;
width:100%;
-webkit-appearance: none; 
}

.formBtn{
-webkit-transition: all 0.3s ease;
-moz-transition: all 0.3s ease;
-o-transition: all 0.3s ease;
transition: all  0.3s ease;
background:#168f57;
padding:10px 10px;
font-size:14px;
width:280px;
text-align:center;
border: solid 2px #168f57;
color: #fff;
margin-bottom:10px;
}

.formBtn:hover {
background: none;
text-decoration: none;
box-sizing: border-box;
border: solid 2px #168f57;
background: #fff;
color:  #168f57;
}

input, button, select, textarea {
border-radius: 0;
}

hr {
border-color: #ccc;
}


/* GUTTER */

.row-0 {
margin-left:0px;
margin-right:0px;
}
.row-0 > div {
padding-right:0px;
padding-left:0px;
}

.row-10 {
margin-left:-5px;
margin-right:-5px;
}
.row-10 > div {
padding-right:5px;
padding-left:5px;
}

.row-20 {
margin-left:-10px;
margin-right:-10px;
}
.row-20 > div {
padding-right:10px;
padding-left:10px;
}

.row-30 {
margin-left:-15px;
margin-right:-15px;
}

.row-30 > div {
padding-right:15px;
padding-left:15px;
}

.row-40 {
margin-left:-20px;
margin-right:-20px;
}
.row-40 > div {
padding-right:20px;
padding-left:20px;
}

.row-50 {
margin-left:-25px;
margin-right:-25px;
}
.row-50 > div {
padding-right:25px;
padding-left:25px;
}


/* XXS SIZE : iPhone Retina Display xxs*/ 
@media print, screen and (min-width : 320px) {

.container-fluid {
padding: 20px;
}

.navbar-toggle {
display: inline;
}

.profile-photo {
padding: 0 50px;
}

.visible-xxs {
display: visible;
}

.carousel-text-inner{
width:100%;
text-align: center;
z-index: 1000;
position: absolute;
padding: 0 30px;
top: 50%;
color:#fff;
transform: translateY(-50%) translateX(0%);
-webkit- transform: translateY(-50%) translateX(0%);
}

.c-text1 {
font-weight: 500;
text-indent:0.5em;
font-size: 14px;
line-height:1.2;
text-shadow: 0 0 8px rgb(100,100,100);
}

.c-text2 {
font-weight: 400;
font-size: 10px;
line-height:1.4;
text-shadow: 0 0 8px rgb(100,100,100);
}

.header-logo2 {
float:none;
margin: 10px auto 0;
}

.header-menu {
display: none;
}

.lead-text1 {
text-align: center;
font-size:20px;
margin-bottom:10px;
line-height:1.4;
font-weight: 500;
}

.lead-text2 {
text-align: center;
font-size:14px;
margin-bottom:30px;
line-height:1.4;
}

} /* END */


/* XS SIZE : Extra Small Devices, Phones xs*/ 
@media print, screen and (min-width : 480px) {

.navbar-toggle {
display: inline;
}

.profile-photo {
background: #fff;
padding: 0;
}

.visible-xxs {
display: none;
}

.c-text1 {
font-size: 18px;
line-height:1.4;
margin-bottom:5px;
}

.c-text2 {
font-size: 14px;
line-height:1.4;
}

} /* END */


/* S SIZE tablet : Small Devices, Tablets sm*/
@media print, screen and (min-width : 768px) {

.container-fluid {
padding: 30px;
}

.navbar-toggle {
display: none !important;
}


/* HEADER */

.header-logo2 {
height:40px;
padding: 0 0 0 10px;
float:left;
margin: 10px auto 10px;
}

.header-menu {
display: block;
}

.c-text1 {
font-size: 28px;
line-height:1.4;
margin-bottom:5px;
}

.c-text2 {
font-size: 14px;
line-height:1.4;
}

.lead-text1 {
text-align: center;
font-size:24px;
margin-bottom:10px;
line-height:1.6;
font-weight: 500;
}

.lead-text2 {
text-align: center;
font-size:16px;
margin-bottom:30px;
line-height:1.4;
}

} /* END */


/* M SIZE desktop : Medium Devices, Desktops md*/
@media print, screen and (min-width : 992px) {

.c-text1 {
font-size: 28px;
line-height:1.4;
margin-bottom:5px;
}

.c-text2 {
font-size: 14px;
line-height:1.4;
}

} /* END */


/* L SIZE widescreen : Large Devices, Wide Screens lg*/
@media print, screen and (min-width : 1200px) {
} /* END */


/* LOADER =====================================*/

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

#loader {
display: none;
position: fixed;
top: 50%;
left: 50%;
width: 200px;
height: 200px;
margin-top: -100px;
margin-left: -100px;
text-align: center;
color: #fff;
z-index: 3100;
}

.spinner {
margin: 100px auto 0;
width: 70px;
text-align: center;
}

.spinner > div {
width: 18px;
height: 18px;
background-color: #168f57;
border-radius: 100%;
display: inline-block;
-webkit-animation: sk-bouncedelay 1.4s infinite ease-in-out both;
animation: sk-bouncedelay 1.4s infinite ease-in-out both;
}

.spinner .bounce1 {
-webkit-animation-delay: -0.32s;
animation-delay: -0.32s;
}

.spinner .bounce2 {
-webkit-animation-delay: -0.16s;
animation-delay: -0.16s;
}

@-webkit-keyframes sk-bouncedelay {
0%, 80%, 100% { -webkit-transform: scale(0) }
40% { -webkit-transform: scale(1.0) }
}

@keyframes sk-bouncedelay {
  0%, 80%, 100% { 
    -webkit-transform: scale(0);
    transform: scale(0);
  } 40% { 
    -webkit-transform: scale(1.0);
    transform: scale(1.0);
  }
}