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

html, body{font-size: 14px; font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif"; line-height:1.7;}
	h1{font-size:2rem; margin:0;}
	h2{font-size:1.7rem; margin:0;}
	h3{font-size:1.5rem; margin:0;}
	h4{font-size:2rem; line-height:1;}
	h5{font-size:1.2rem; margin:0;}
	a{text-decoration:none;}
	a:hover{text-decoration:underline;}

ul{padding: 0;}
p{color: #666;}
.bottom10{margin-bottom:10px;}
.bottom15{margin-bottom:15px;}
.bottom20{margin-bottom:20px;}
.bottom25{margin-bottom:25px;}
.bottom30{margin-bottom:30px;}
.bottom35{margin-bottom:35px;}
.bottom50{margin-bottom:50px;}
.top5{margin-top:5px;}
.top10{margin-top:10px;}
.top15{margin-top:15px;}
.top20{margin-top:20px;}
.top25{margin-top:25px;}
.top30{margin-top:30px;}
.top35{margin-top:35px;}
.top50{margin-top:50px;}
.top150{margin-top:150px;}
.pa_bottom5{padding-bottom:5px;}
.pa_bottom10{padding-bottom:10px;}
.pa_bottom15{padding-bottom:15px;}
.pa_bottom20{padding-bottom:20px;}
.pa_bottom25{padding-bottom:25px;}
.pa_bottom30{padding-bottom:30px;}
.pa_bottom35{padding-bottom:35px;}
.pa_bottom50{padding-bottom:50px;}
.pa_top5{padding-top:5px;}
.pa_top10{padding-top:10px;}
.pa_top15{padding-top:15px;}
.pa_top20{padding-top:20px;}
.pa_top25{padding-top:25px;}
.pa_top30{padding-top:30px;}
.pa_top35{padding-top:35px;}
.pa_top50{padding-top:50px;}
.taLeft{text-align:left;}
.taRight{text-align:right;}
.taCenter{text-align:center;}
.left5{padding-left:5px}
.left10{padding-left:10px}
.left20{padding-left:20px}
.left30{padding-left:30px}
.left50{padding-left:50px}
.right5{padding-right:5px}
.right10{padding-right:10px}
.right20{padding-right:20px}
.right30{padding-right:30px}
.right50{padding-right:50px}
.fwBold{font-weight:bold;}
.fcRed{color:#93176F;}
.fcGrey{color:#666;}
.fcBlue{color:#054A97}
.fcSkyblue{color:#6699cc}
.fcYGrn{color:#99cc33}
.fcWhite{color:#FFFFFF;}
.fcWhite07{color:rgba(255, 255, 255, 0.7);}
.fs50{font-size:50%;}
.fs60{font-size:60%;}
.fs70{font-size:70%;}
.fs80{font-size:80%;}
.fs90{font-size:90%;line-height:1.1;}
.fs95{font-size:95%;}
.fs110{font-size:110%;}
.fs120{font-size:120%;}
.fs130{font-size:130%;}
.fs140{font-size:140%;}
.fs150{font-size:150%;}
.fs160{font-size:160%;}
.fs170{font-size:170%;}
.l-space{letter-spacing: -.4px;}
.bottom4{margin-bottom:4rem;}
.border1px{padding:2px; border:1px solid #CCC;}
/*a[href$=".pdf"]:before {font-family: Font Awesome\ 5 Free; content: "\f1c1"; margin: 5px; position: relative; color: #fff; cursor: pointer; font-size: 1.2rem; padding-right: 5px;}
a[href$=".pdf"]:hover {	content: ""; text-decoration: none;}*/
.pdf_cap{font-size: .78rem; padding-left: 3px;}
body,html {height: 100%; margin: 0 auto;}
.header-wrapper{max-width:1140px; display:flex; justify-content:space-between; align-items:center; margin: 0 auto; height:90px; padding: 0 20px;}
.wrapper{max-width:1140px; margin: 0 auto;}

	#pageTop {
    position: fixed;
    bottom: 20px;
    right: 3%;
    z-index: 4;
}
	#pageTop a {
    display: block;
    background: #fff;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    font-size: 2.5rem;
    opacity: .6;
    text-decoration: none;
    color: #999;
    text-align: center;
    padding: 3px;
    border: solid 1px #ccc;
}
	.logo-j1{display: none;}

#nav-drawer {display: none;}
.footer-wrap {
    margin: 0 auto;
    max-width: 1140px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 150px;
}
.sns-container {
    color: #fff;
    font-size: 3rem;
    margin: 20px 50px;
    cursor: pointer;
    text-align: right;
}
header{position: relative; top: 0;}
        header, footer {background:#418438;}
        .logo-j2{width: 350px; height: auto;}
        h2, h3, h4{line-height: .8; background: rgba(65, 132, 56, .7); padding: 20px 10px 10px;color:#fff;}
        h2{font-size: 80px; margin-top:150px;}
        h3{font-size: 40px; width: 70%;margin: 0 auto; padding-top: 10px;}
        h4{font-size: 30px; width: 80%;margin: 50px auto; padding-top: 15px;}
        .main-title{display: flex; justify-content: center; align-items: center; text-align: center;}
        footer p{color: #fff;}
        .hero{background: url(../img/bg2.jpg) no-repeat top / cover; width: 100%; min-height: 780px;}
        .flex-3{display: flex; justify-content: center; align-items: flex-start; flex-wrap: wrap;}
        .flex-3 div{flex-basis: 350px; margin: 0 10px 30px }
        .flex-3 div p{font-size: 12px;}
        .flex-3 div img{border: 1px solid #999; width: 100%; height: auto;}
        .bottom80{margin-bottom: 80px;}
        .arrow{width: 180px; height: 30px; margin-top:200px; animation: key1 .5s ease infinite alternate;}
.language {
    background: #fff;
    padding: 3px 20px;
    border-radius: 20px;
    color: #414141;
}
 .en-title{width: auto; margin-left: 8rem;}
          .en h2{right:30%; margin-right: 8rem;}
          .en h2, .en-title{margin-bottom: 0; font-size: 65px; white-space: nowrap; padding: 20px 10px 10px;}
 .footer-logo{width: 330px; height: auto;}
@keyframes key1{
  0% {transform: translateY(0px);}
  100% {transform: translateY(-10px);}
}
.site-link{text-align: center; position: relative;}
.site-link:after{text-align: center; font: normal normal normal 16px/1 FontAwesome;  content: "\f138"; margin-left: 5px; position: absolute; bottom: 3px;}

@media only screen and (max-width:1240px){
.wrapper, .footer-wrap,.nav-wrapper, .header-wrapper { margin: 0 3%;}
	.header-wrapper { padding: 0;}
	.footer-wrap{font-size: .9rem;}
.bg-gly img {width: 100%; height: auto;}
	.sns-container {font-size: 2.3rem; margin: 20px 30px; }
	.circle,.circle-e { border: 3px solid #61b7d9; height: 75px; width: 75px; font-size: 1rem;}
		.big-num-e {font-size: 2.4rem;}
}
@media only screen and (max-width:767px){
.en-title{margin-left: 0;}
.en h2{margin-right: 0;}
.en h2, .en-title{font-size: 35px; padding: 20px 10px 10px;}
.hero{background: url(../img/bg2.jpg) no-repeat top / cover; width: 100%; min-height: 550px;}
        h2{font-size: 35px;}
        h3{font-size: 20px;}
        h4{font-size: 16px; width: 95%;}
        .sns-container {display: none;}
            .footer-wrap img{width: 280px;}
            .footer-wrap {text-align: center; display: block;}
            .arrow{ width: 120px; height: auto;
                margin-top:60px;}
            .bottom80{margin-bottom: 40px;}
	.pdf-button {    margin: 0 auto;}
	.hero {height: 200px; }
	html, body{font-size:12px;}
	.nav-language{display: none;}
	.top-language {margin-top: -120px;}
#nav-drawer {display: block; margin-right: 24px;}
#nav-open {  display: inline-block;  width: 30px;  height: 22px;  vertical-align: middle; border: 1px solid rgba(70, 56, 103, .3); padding: 12px 7px 10px 12px; border-radius: 5px; cursor: pointer;}
#nav-open span, #nav-open span:before, #nav-open span:after {
  position: absolute;
  height: 3px;
  width: 25px;
  border-radius: 3px;
  background: #798a77;
  display: block;
  content: '';
  cursor: pointer;}
	.hero #nav-open span, .hero #nav-open span:before, .hero #nav-open span:after {background: #fff;}
	.hero #nav-drawer{margin-top: 0;}
	.hero #nav-open{ border: 1px solid rgba(255, 255, 255, .3); padding: 12px 7px 10px 12px; border-radius: 5px; cursor: pointer;}
#nav-open span:before {  bottom: -8px;}
#nav-open span:after {  bottom: -16px;}
#nav-close {
  display: none;
  position: fixed;
  z-index: 99;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: black;
  opacity: 0;
  transition: .3s ease-in-out;}
#nav-content {
  overflow: auto;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  width: 70%;
  max-width: 330px;
  height: 100%;
  background: rgba(70, 84, 66, .9);
  transition: .3s ease-in-out;
  -webkit-transform: translateX(-105%);
  transform: translateX(-105%);text-align: left;}
	#nav-content a{color:#fff; display: block;}
#nav-input:checked ~ #nav-close {  display: block;  opacity: .5;}
#nav-input:checked ~ #nav-content {  -webkit-transform: translateX(0%);  transform: translateX(0%);  box-shadow: 6px 0 25px rgba(0,0,0,.15);}	
	#nav-content ul{margin-top: 85px; margin-left: 15px; font-size: 1.3rem; list-style: none;}
	#nav-content li{margin-bottom: 15px; border-left: 5px solid #fff; padding-left: 15px; width: 90%;}
	#pageTop a {width: 45px;height: 45px;font-size: 2.1rem;}
	.logo-j1{display: block;  height: 90px; width: auto;}
	.logo-j2{display: none;}
	.bg-gly{display: none;}
}
