@charset "UTF-8";
/* CSS Document */
html {
  scroll-behavior: smooth;
}
body {
  background: url(../img/bg.gif) repeat;
}
body {
	color: #fff;
	text-align: center;
	font-size:14px;
	font-family: "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, Lato, "Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	line-height: 1.4;
}
body {
	display:none
}

.f_l{
	float:left;
}
.f_r{
	float:right;
}

#wrapper{
	width: 100%;
	padding-top:20px;
	background: url(../img/topimg_bg.png) no-repeat center top;
}



/* =============================================================================
   Header
   ========================================================================== */

#header{
	width: 1000px;
	margin:0 auto 0;
	text-align:left;
	overflow:hidden;
}
h1{
	float:left;
}
h1 img{
	width:50%;
}

#menu_box{
	width: 800px;
	margin:0 0 0 200px;
	padding-top:22px;
}
#menu_box ul{
	float:right;
}
#menu_box li{
	display:inline-block;
	padding:0 0 0 10px;
	color: #fff;
	font-size:15px;
	letter-spacing:2px;
	text-align:right;
}
/*#menu_box li.menu_entry{
	border:1px solid #FFF;
}*/
#menu_box li.blank img{
	padding:0 0 5px 5px;
}
.menu_hover{
	color: #fff;
	padding:10px 5px;
	display: inline-block;
	vertical-align: middle;
	-webkit-transform: perspective(1px) translateZ(0);
	transform: perspective(1px) translateZ(0);
	box-shadow: 0 0 1px transparent;
	position: relative;
	overflow: hidden;
}
.menu_hover:before {
	content: "";
	position: absolute;
	z-index: -1;
	left: 50%;
	right: 50%;
	bottom: 0;
	background: #21B6B9;
	height: 3px;
	-webkit-transition-property: left, right;
	transition-property: left, right;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
	-webkit-transition-timing-function: ease-out;
	transition-timing-function: ease-out;
}
.menu_hover:hover:before, .menu_hover:focus:before, .menu_hover:active:before {
	left: 0;
	right: 0;
}

.menu_hover02,.menu_hover03 {
	color: #fff;
	border:1px solid #FFF;
	display: inline-block;
	vertical-align: middle;
	-webkit-transform: perspective(1px) translateZ(0);
	transform: perspective(1px) translateZ(0);
	box-shadow: 0 0 1px transparent;
	position: relative;
	overflow: hidden;
}
.menu_hover02 {
	padding:10px;
}
.menu_hover03 {
	padding:2px;
}
.menu_hover02:hover,.menu_hover03:hover{
	border-color: #21B6B9;
}
.menu_hover02:before,.menu_hover03:before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	border-color: #21B6B9;
	border-style: solid;
	border-width: 0;
	-webkit-transition-property: border-width;
	transition-property: border-width;
	-webkit-transition-duration: 0.2s;
	transition-duration: 0.2s;
	-webkit-transition-timing-function: ease-out;transition-timing-function: ease-out;
}
.menu_hover02:hover:before, .menu_hover02:focus:before, .menu_hover02:active:before,
 .menu_hover03:hover:before, .menu_hover03:focus:before, .menu_hover03:active:before{
	-webkit-transform: translateY(0);
	transform: translateY(0);
	border-width: 2px;
}

/* =============================================================================
   Body
   ========================================================================== */
#intro{
	width: 100%;
	max-width:1500px;
	margin:300px auto 100px;
	text-align:center;
	/*background: url(../img/intro_bg.png) no-repeat  left top;*/
}

#intro h3{
	padding-top:330px;
	margin-bottom:20px;
}
#intro p{
	font-size:18px;
	line-height:2;
	margin-bottom:30px;
}

.intro_pr{
	width:500px;
	padding:50px;
	margin:0 auto 0;
	border:#666 1px solid;
	background-color: rgba(255,255,255,0.1);
}
.intro_pr h4 img{
	text-align:center !important;
	margin-bottom:30px;
}
.intro_pr p{
	text-align: left !important;
	margin-bottom:0 !important;
}

#news{
	width:880px;
	height:155px;
	padding:55px 30px 30px 30px;
	margin:0 auto 50px;
	overflow:hidden;
	background:url(../img/news_bg.png) no-repeat center top rgba(255,255,255,0.1);
}
#news h3{
	margin-bottom:50px;
}
.news_list{
	height:70px;
	text-align:left;
	overflow:scroll;
}
.news_list dl{
	width:100%;
	display: inline-block;
	padding:10px 0 15px 0;
	font-size:15px;
	line-height:18px;
	}
.news_list dt{
	float:left;
	width:11%;
	letter-spacing:1.8px;
	padding:5px 5px 5px 20px;
	border-bottom:#5ABDB5 1px solid;
	display:block;
	}
.news_list dd{
	float:left;
	width:83%;
	letter-spacing:1px;
	padding:5px 5px 5px 20px;
	border-bottom:#666 1px solid;
	display:block;
	}

#mission{
	width:940px;
	margin:0 auto 100px;
}

#mission a:hover img{
  opacity: 0.7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha(opacity=70)";
}

.mission_top{
	margin-bottom:50px;
}

.mission_img{
	margin-bottom:30px;
}

.mission01,.mission02,.mission03{
	margin-bottom:50px;
}

.mission_next01,.mission_next02,.mission_next03{
	margin-bottom:20px;
}
.mission_next01:hover img,.mission_next02:hover img,.mission_next03:hover img {
  opacity: 0.7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha(opacity=70)";
}

.mission_cont01,.mission_cont02,.mission_cont03{
	display:none;
}

.mission_txt01,.mission_txt02,.mission_txt03{
	width:880px;
	padding:30px;
	background: url(../img/mission01_bg01.png) no-repeat right bottom;
}
.mission_txt01 p,.mission_txt02 p,.mission_txt03 p{
	text-align:left;
	font-size:18px;
	line-height:1.6;
	letter-spacing:2px;
	margin-bottom:20px;
}
.mission_txt01 span{
	font-weight:bold;
	color:#FFF8BF;
}
.mission_txt02 span{
	font-weight:bold;
	color:#CCACCE;
}
.mission_txt03 span{
	font-weight:bold;
	color:#CAE3B8;
}

.mission_sp{
	margin-bottom:10px;
}

.mission_memo{
	width:880px;
	margin:0 auto 100px;
	overflow:hidden;
	background: url(../img/mission_memo.png) no-repeat 80px 20px;
}
.mission_memo p{
	width:520px;
	font-size:16px;
	text-align:left;
	line-height:1.6;
	padding-top:250px;
}
.mission_memo_sp{
	display:none;
}

#business{
	margin-bottom:50px;
	background: url(../img/business_bg.png) no-repeat center 240px;
}
#business p{
	text-align:center;
	font-size:18px;
	line-height:1.6;
	letter-spacing:3px;
	margin-bottom:40px;
}
#business span{
	color:#00B4BB;
}
.business_top{
	margin-bottom:30px;
}

.business_box{
	width:755px;
	padding:70px 63px 30px 63px;
	margin:0 auto 80px;
	border:#00B5BC 1px solid;
	background:url(../img/news_bg.png) no-repeat center top rgba(0,0,0,0.6);
}
.business_box p{
	font-size:16px !important;
	text-align:left !important;
	line-height:1.6 !important;
	letter-spacing:1.5px !important;
	margin-bottom:50px;
}
.business_box img{
	text-align:center;
	margin-bottom:40px !important;
}
/* =============================================================================
   Footer
   ========================================================================== */
#footer{
	width: 1000px;
	margin:0 auto 0;
	background: url(../img/footer_bg.png) no-repeat center 50px;
}
.footer_txt{
	margin-bottom:50px;
	padding-top:190px;
}
.footer_txt img{
	width:50%;
}

.entry_bt{
	font-size:18px;
	letter-spacing:3px;
	margin-bottom:50px;
}
.entry_bt a{
	color:#FFF;
}
.entry_bt.blank img{
	padding:0 0 8px 10px;
}
/*
.entry_bt {
	display: inline-block;
	padding: 20px 100px;
	color: #fff;
	text-align: center;
	text-decoration: none;
	outline: none;
	border: 0 solid;
	box-shadow: inset 0 0 20px rgba(255,255,255,0);
	outline: 1px solid;
	outline-color: rgba(255,255,255,1);
	outline-offset: 0;
	transition: all 1s cubic-bezier(0.19,1,.22,1);
}
.entry_bt:hover {
	border:#21B6B9 2px solid;
	box-shadow: inset 0 0 20px rgba(255,255,255,.5), 0 0 20px rgba(255,255,255,.2);
	outline-color: rgba(255,255,255,0);
	outline-offset: 15px;
}
*/
.entry_bt {
	display: inline-block;
	padding: 20px 100px;
	border: 2px solid #fff;
	color: #fff;
	text-align: center;
	text-decoration: none;
	outline: none;
	transition: all .3s;
}
.entry_bt:hover {
	border: 2px solid #21B6B9;
	box-shadow: 0 0 45px rgba(33,182,185,.6);
}

#footer ul{
	margin-bottom:30px;
}
#footer li{
	display:inline-block;
	padding:0 0 0 10px;
	color: #fff;
	font-size:15px;
	letter-spacing:2px;
	text-align:right;
}
/*#menu_box li.menu_entry{
	border:1px solid #FFF;
}*/
#footer li.blank img{
	padding:0 0 5px 5px;
}

#footer h3{
	margin-bottom:40px;
}

address{
	background:url(../img/address.png) no-repeat center bottom;
	height:50px;
	font-size:9px;
	color:#FFFFFF;
	letter-spacing:2px;
}
address p{
	padding-top:25px;
}

#pageTop {
  position: fixed;
  bottom: 50px;
  right: 50px;
}
 
#pageTop a:hover {
  text-decoration: none;
  opacity: 0.8;
}


@media screen and (max-width: 768px) {
body{
	-webkit-text-size-adjust: 100%;
}
#wrapper{
	width: 100%;
	padding-top:20px;
	background: url(../img/topimg_bg.png) no-repeat center top;
	background-size:contain;
}
#header{
	width: 95%;
	margin:0 auto 0;
}
h1{
	float:left;
	width:20%;
}
h1 img{
	width:100%;
}
#menu_box{
	float:right;
	width: 75%;
	margin:0 0 0 0;
	padding-top:22px;
}

#intro{
	width: 100%;
	max-width:100%;
	margin:100px auto 100px;
	text-align:center;
}

#intro h3{
	padding-top:150px;
	margin-bottom:20px;
}
#intro h3 img{
	width:60%;
}
#intro p{
	font-size:18px;
	line-height:2;
	margin-bottom:30px;
}

.intro_pr{
	width:50%;
	padding:50px;
	margin:0 auto 0;
	border:#666 1px solid;
	background-color: rgba(255,255,255,0.1);
}
.intro_pr h4 img{
	text-align:center !important;
	margin-bottom:30px;
}
.intro_pr p{
	text-align: left !important;
	margin-bottom:0 !important;
}

#news{
	width:80%;
	height: auto;
	padding:55px 5% 30px 5%;
	margin:0 auto 50px;
	overflow:hidden;
	background:url(../img/news_bg.png) no-repeat center top rgba(255,255,255,0.1);
}
#news h3{
	margin-bottom:20px;
}
.news_list{
	height:70px;
	text-align:left;
	overflow:scroll;
}
.news_list dl{
	width:100%;
	display: inline-block;
	padding:10px 0 15px 0;
	font-size:12px;
	line-height:18px;
	}
.news_list dt{
	float:left;
	width:13%;
	letter-spacing:1.8px;
	padding:5px 5px 5px 5px;
	border-bottom:#5ABDB5 1px solid;
	display:block;
	}
.news_list dd{
	float:left;
	width:80%;
	letter-spacing:1px;
	padding:5px 5px 5px 20px;
	border-bottom:#666 1px solid;
	display:block;
	}

#mission{
	width:95%;
}
.mission_img{
	width:100%;
}
.mission_txt01,.mission_txt02,.mission_txt03{
	width:90%;
	padding:5%;
}
.mission_txt01 p,.mission_txt02 p,.mission_txt03 p{
	font-size:16px;
}
.mission_sp{
	margin-bottom:30px;
}
.mission_sp img{
	width:100%;
}

.mission_memo{
	width:100%;
	margin:0 auto 30px;
	background: url(../img/mission_memo.png) no-repeat 0px 0px;
}
.mission_memo p{
	width:50%;
	font-size:14px;
	padding-top:230px;
}

#business{
	margin-bottom:50px;
	background: url(../img/business_bg.png) no-repeat center 180px;
	background-size:contain;
}
.business_top{
	width:80%;
	margin-bottom:30px;
}

.business_box{
	width:85%;
	padding:70px 5% 30px 5%;
	margin:0 auto 80px;
	border:#00B5BC 1px solid;
	background:url(../img/news_bg.png) no-repeat center top rgba(0,0,0,0.6);
}
.business_box p{
	font-size:16px !important;
	text-align:left !important;
	line-height:1.6 !important;
	letter-spacing:1.5px !important;
	margin-bottom:50px;
}
.business_box img{
	text-align:center;
	margin-bottom:40px !important;
}
.business_img_c{
	width:80%;
}
.business_img_w{
	width:100%;
}

#footer{
	width: 100%;
	margin:-50px auto 0;
	background: url(../img/footer_bg.png) no-repeat center 0;
}
.footer_txt{
	margin-bottom:50px;
	padding-top:130px;
}
.footer_txt img{
	width:50%;
}

#footer ul{
	margin-bottom:30px;
}
#footer li{
	display:inline-block;
	padding:0 0 0 10px;
	color: #fff;
	font-size:15px;
	letter-spacing:2px;
	text-align:right;
}
#footer li.blank img{
	padding:0 0 5px 5px;
}

#footer h3{
	margin-bottom:40px;
}
#footer h3 img{
	width:70%;
}

address{
	background:url(../img/address.png) no-repeat center bottom;
	height:50px;
	font-size:9px;
	color:#FFFFFF;
	letter-spacing:2px;
}
address p{
	padding-top:25px;
}
#pageTop {
  position: fixed;
  bottom: 30px;
  right: 20px;
}
#pageTop img{
	width:60%;
}

@media screen and (max-width: 640px) {
#wrapper{
	width: 100%;
	padding-top:20px;
	background: url(../img/topimg_bg.png) no-repeat center 120px;
	background-size:contain;
}
h1{
	float: none;
	width:100%;
	text-align:center;
}
h1 img{
	width:35%;
}
#menu_box{
	float: none;
	width: 100%;
	margin-top:-10px;
}
#menu_box ul{
	float: none;
	font-size: 0;
	text-align: center;
}
#menu_box li{
	font-size:11px;
	letter-spacing:0.5px;
	text-align: center;
	margin:0 0 5px 0;
	padding:0 3px;
}
#menu_box li.blank img{
	padding:0 0 3px 3px;
}

#intro{
	width: 100%;
	max-width:100%;
	margin:-20px auto 0 !important;
	text-align:center;
}

#intro h3{
	padding-top:150px;
	margin-bottom:20px;
}
#intro h3 img{
	width:70%;
}
#intro p{
	font-size:12px;
	line-height:1.5;
	margin:0 auto 10px;
}
.intro_gr{
	width:75%;
	margin:0 auto 0;
}
.intro_pr{
	width:65%;
	padding:20px 5%;
	margin:0 auto 0;
	border:#666 1px solid;
	background-color: rgba(255,255,255,0.1);
}
.intro_pr h4 img{
	width:100%;
	margin-bottom:20px;
}

#news{
	width:80%;
	height: auto;
	padding:20px 5% 30px 5%;
	margin:-20px auto 30px;
	overflow:hidden;
	background:url(../img/news_bg.png) no-repeat center top rgba(255,255,255,0.1);
}
#news h3{
	margin-bottom:10px;
}
#news h3 img{
	width:20%;
}
.news_list{
	height:70px;
	text-align:left;
	overflow:scroll;
}
.news_list dl{
	width:100%;
	display: inline-block;
	padding:0 0 15px 0;
	font-size:12px;
	}
.news_list dt{
	float:left;
	width:35%;
	padding:5px 5px 5px 5px;
	}
.news_list dd{
	float:left;
	width:95%;
	padding:5px 5px 5px 5px;
	}

#mission{
	width:95%;
}
.mission_img{
	width:100%;
	margin-bottom:15px;
}
.mission_top{
	width:35%;
}
.mission01,.mission02,.mission03{
	margin-bottom:30px;
}
.mission_next01 img,.mission_next02 img,.mission_next03 img{
	width:70%;
}
.mission_txt01,.mission_txt02,.mission_txt03{
	width:90%;
	padding:5%;
	background: url(../img/mission01_bg01.png) no-repeat right bottom;
	background-size:80%;
}
.mission_txt01 p,.mission_txt02 p,.mission_txt03 p{
	font-size:13px;
	line-height:1.5;
}
.mission_sp{
	margin-bottom:30px;
}
.mission_sp img{
	width:100%;
}
.mission_memo{
	display:none;
}
.mission_memo_sp{
	display:block;
	width:100%;
	margin:0 auto 30px;
	background: url(../img/mission_memo.png) no-repeat top center;
	background-size:60%;
}
.mission_memo_sp p{
	width:90%;
	font-size:13px;
	line-height:1.5;
	padding-top:140px;
	margin:0 auto 20px;
}
.mission_memo_sp img{
	width:80%;
	margin:0 auto 50px;
}

#business p{
	width:90%;
	font-size:12px;
	letter-spacing:1.5px;
	margin:0 auto 30px;
}
.business_top{
	width:95%;
	margin-bottom:30px;
}
.business_box{
	width:89%;
	padding:50px 3% 30px 3%;
	margin:0 auto 50px;
}
.business_box p{
	font-size:14px !important;
	line-height:1.5 !important;
	letter-spacing:1.5px !important;
	margin-bottom:50px;
}
.business_box img{
	width:90%;
	text-align:center;
	margin-bottom:30px !important;
}

#footer{
	width: 100%;
	margin:-50px auto 0;
	background: url(../img/footer_bg.png) no-repeat center 0;
}
.footer_txt img{
	width:90%;
}

.entry_bt{
	font-size:14px;
	letter-spacing:3px;
	margin-bottom:30px;
}
.entry_bt a{
	color:#FFF;
}
.entry_bt.blank img{
	padding:0 0 5px 10px;
}
.entry_bt {
	display: inline-block;
	padding: 15px 30px;
	border: 2px solid #fff;
	color: #fff;
	text-align: center;
	text-decoration: none;
	outline: none;
	transition: all .3s;
}
#footer li{
	font-size:13px;
}
#footer li.blank img{
	padding:0 0 5px 5px;
}
#footer h3 img{
	width:90%;
}

address{
	height: 60px;
}
address p{
	width:90%;
	padding:40px 0 20px 0;
	margin:0 auto 0;
}

#pageTop {
  position: fixed;
  bottom: 30px;
  right: -20px;
}
#pageTop img{
	width:40%;
}

}
@media screen and (max-width: 320px) {
#menu_box li{
	font-size:10px;
	letter-spacing:0.5px;
	text-align: center;
	margin:0 0 5px 0;
	padding:0 1px;
}
#menu_box li.blank img{
	padding:0 0 2px 3px;
}

}