@charset "UTF-8";

/* ===================================================================

	Setting

=================================================================== */
html {  }
body { font-size:1.5rem; font-family:'メイリオ',Meiryo,'ＭＳ Ｐゴシック','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro'; overflow-x:hidden; }
main { overflow:hidden; padding-top:85px; }
.containar { width: 1300px; margin: 0px auto; /*padding-top: 14px;*/ }
.containar:after { content:""; display:block; clear:both; }


.sp { display:none; }
.pc { display:block; }
.wrapper { width:100%; overflow:hidden;}

　　/* link set
	------------------------------------------------------------------- */
	a { color:#454545; text-decoration:none; transition:0.3s ease-in-out; }
	a img { transition:0.3s ease-in-out; }
	a:hover { color:#47676F; opacity: 0.8}

	.b_p {
	    color: #fff;
	    border-width: 2px;
	    border-style: solid;
	    border-color: #ddd;
	    position: relative;
	    margin: 1em;
	    display: inline-block;
	    padding: 1em 2em;
	    transition: all 0.3s ease-in-out;
	    text-align: center;
	    font-family: comfortaa;
	    font-weight: bold;
	    font-size: 18px;
	    background: #6cbc4f;
			cursor: pointer;
	}
.b_p:before, .b_p:after {content:'';display:block;position:absolute;border-color:#6cbc4f;box-sizing:border-box;border-style:solid;width:1em;height:1em;transition:all 0.3s ease-in-out}
.b_p:before {top:-6px;left:-6px;border-width:2px 0 0 2px;z-index:5;}
.b_p:after {bottom:-6px;right:-6px;border-width:0 2px 2px 0;}
.b_p:hover:before, button:hover:after {width:calc(100% + 12px);
  height:calc(100% + 12px);border-color:#fff}
.b_p:hover {color:#6cbc4f;background-color:#fff;border-color:#fff;}
.panel {max-width:960px;text-align:center;position:relative;margin:auto;}
.btn a:hover{
	opacity: 1;
}

.blue button {color:#6cbc4f;border-color:#6cbc4f;background: #6cbc4f;color:#fff;width: 60%;}
.blue button:before, .blue button:after  {border-color:#3bb4e5}
.blue button:hover:before, .blue button:hover:after {width:calc(100% + 12px);
  height:calc(100% + 12px);border-color:#6cbc4f;transform:rotateY(180deg)}
.blue button:hover {color:#6cbc4f;background-color:transparent;border-color:#6cbc4f;}
.blue {max-width:960px;text-align:left;position:relative;margin:auto;}
.blue a:hover{
	opacity: 1;
}

.pink button {color:#fff;border-color:#6cbc4f; width: 80%; background:#6cbc4f;}
.pink button:before, .pink button:after  {border-color:#6cbc4f}
.pink button:hover:before, .pink button:hover:after {border-color:#6cbc4f;}
.pink button:hover {color:#6cbc4f;background-color:transparent;border-color:#6cbc4f;}
.pink {max-width:960px;/*text-align:left;*/position:relative;margin:auto;}
.pink a:hover{
	opacity: 1;
}


	/* float対策：背景色表示用
	------------------------------------------------------------------- */
	.clearfix:after { display: block; clear: both; height: 0px; line-height: 0px; visibility: hidden; content: "."; }
	.clearfix {	display: block; /* for IE8 */ }
	.both { clear:both ;}
	.hidden { display: none; }

	/* 	imgホバーアクション
	------------------------------------------------------------------- */
	.imgWrap { overflow: hidden; width: 100%;　height: auto; cursor: pointer; background-color: #ffffff; }
	.imgWrap img { display: block; transition-duration: 0.3s; margin-top: -1px; }
	.imgWrap img:hover  {opacity: 0.6; transition: all .3s; }

	/* 	背景画像＆テキスト使用時
	------------------------------------------------------------------- */
	.bg { display: block; text-indent: -9999px; background-repeat: no-repeat; background-position: left top; }
　　/* 	テキスト指定
	------------------------------------------------------------------- */
　　.min { font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, serif, sans-serif; }


/* ===================================================================

	Header

=================================================================== */
body > header { width:100%; height:85px; margin:0 auto; background:#FFF; z-index:9999; position:fixed; }
body > header * { transition:0.3s ease-in-out; }
body > header:after { content:""; display:block; clear:both; }
body > header .logo { float:left; padding:18px 0px 0px 30px; margin-right: 20px;}

.header_submenu { width:1300px; margin:0 auto; height:30px; }
.header_submenu ul { float:right; margin:10px 0; }
.header_submenu ul li { font-size:0.7rem; list-style-image:url(../images/header_submenu_icon.png); float:left; margin-left:30px; }
.header_submenu ul li a { text-decoration:none; color:#000; }
.honyaku { float:right; }


	      /* h_l
		  ------------------------------------------------------------------- */
		  body > header .h_l { float:left; margin:0 auto;}
		  body > header .h_l img { margin-top:-2%; width:250px; }

	      /* h_r
		  ------------------------------------------------------------------- */
		  body > header .h_r {  float:right; margin:0 auto; }


		  /* nav
		  ------------------------------------------------------------------- */
		  body > header nav { width: 100%; }
		  body > header nav ul.ddmenu { width:100%; height:40px; /*position:relative;*/ }
		  body > header nav ul.ddmenu:after { content:""; display:block; clear:both; }
		  body > header nav ul.ddmenu li { float:left; margin-right: 0; min-width:120px; text-align:center; padding: 5px 10px; }
		  body > header nav ul.ddmenu li:last-child { padding-right: 0;/* width:380px;*/ }
		  body > header nav ul.ddmenu li a { font-size:0.8rem; display:block; height:100%; text-align:center; color:#000; letter-spacing:1px; text-decoration:none;  }
		  body > header nav ul.ddmenu li img.tel { padding-right: 3%; }
		  body > header nav ul.ddmenu li span { font-size:1rem; font-weight:bold; }


 body > header nav ul.ddmenu li.action {
  position: relative;
  display: inline-block;
  text-decoration: none;
}
 body > header nav ul.ddmenu li.action::after {
  position: absolute;
  bottom: -2px;
  left: 0;
  content: '';
  width:0%;
  height: 2px;
  background: #6cbc4f;
  transform: scale(0, 1);
  transform-origin: center top;
  transition: transform .3s;
}
 body > header nav ul.ddmenu li.action:hover::after {
  transform: scale(1, 1);
  width:100%;
}



.header_btn { position:absolute; /*top:4vw; right:16vw;*/ z-index:10; width:1300px; text-align:right; }
.header_btn img { width:150px; }




/* ===================================================================
	/
	/	smh_menu　トグルメニュー
	/
	=================================================================== */
	#smh_menu { display: none; }
	.pagetop { display:none; }



/* ===================================================================
	/
	/	Slider
	/
	=================================================================== */
	.slideshow {height: 31vw; margin-top: 74px;}
	.slideshow li { width:100%; height:100%; }
	.slideshow li a{ display:block; height:100%; background-position:center center; background-repeat:no-repeat; background-size:cover; position:relative; }


		/* js
		--------------------------------------------------------- */
		.flickity-enabled { position:relative; }
		.flickity-enabled:focus { outline:none; }
		.flickity-viewport { position:relative; height:100%; }
		.flickity-slider { position:absolute; width:100%; height:100%; }

		.flickity-enabled.is-draggable { -webkit-tap-highlight-color:transparent; tap-highlight-color:transparent; -webkit-user-select:none; -moz-user-select:none; -ms-user-select:none; user-select:none; }
		.flickity-enabled.is-draggable .flickity-viewport { cursor:move; cursor:-webkit-grab; cursor:grab; }
		.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down { cursor:-webkit-grabbing; cursor:grabbing; }

		.flickity-prev-next-button { position:absolute; top:50%; width:44px; height:44px; border:none; border-radius:50%; background:#fff; background:hsla(0,0%,100%,0.75); cursor:pointer; -webkit-transform:translateY(-50%); transform:translateY(-50%)}
		.flickity-prev-next-button:hover { background:#fff; }
		.flickity-prev-next-button:focus { outline:none; box-shadow:0 0 0 5px #09F; }
		.flickity-prev-next-button:active { opacity:.6; }
		.flickity-prev-next-button.previous { left:2%; margin-left:0; }
		.flickity-prev-next-button.next { right:2%; margin-right:0; }
		.flickity-rtl .flickity-prev-next-button.previous { left:auto; right:10px; }
		.flickity-rtl .flickity-prev-next-button.next { right:auto; left:10px; }
		.flickity-prev-next-button:disabled { opacity:.3; cursor:auto; }
		.flickity-prev-next-button svg { position:absolute; left:20%; top:20%; width:60%; height:60%; }
		.flickity-prev-next-button .arrow { fill:#0079a4; }
		.flickity-page-dots { display: none; position:absolute; width:100%; bottom:20px; padding:0; margin:0; list-style:none; text-align:center; line-height:1; z-index:100; }
		.flickity-rtl .flickity-page-dots { direction:rtl; }
		.flickity-page-dots .dot { display:inline-block; width:12px; height:12px; margin:0 8px; background:#0079a4; border-radius:50%; opacity:.45; cursor:pointer; }
		.flickity-page-dots .dot.is-selected { opacity:1; }


/* ===================================================================
	/
	/	共通
	/
	=================================================================== */




/* ===================================================================
	/
	/	メインイメージ
	/
	=================================================================== */

	.main_img { height:540px; position:relative; background-image:url(../images/top_mainimg.jpg); background-repeat:no-repeat; background-size:cover; }

	.main_img .main_h1 { position:absolute; top:5vw; left:48vw; z-index:100; /*background-color:#000;*/ width:40%; padding:70px 0; }
	.main_img .main_h1 h1 { line-height:75px; color:#fff; font-size:2.6rem; letter-spacing:3px; text-align:center; margin-bottom:40px; font-weight:bold; }
	.main_img .main_h1 p { line-height:30px; color:#fff; font-size:0.8rem; letter-spacing:2px; text-align:center; border-top:solid 2px #fff; border-bottom:solid 2px #fff; width:80%; margin:0 auto; padding:15px 0; }



/* ===================================================================
	/
	/	s1
	/
	=================================================================== */
	.s1 { background-image:url(../images/blue_bg.jpg); background-repeat:no-repeat; background-size:cover; padding:30px; }
	.s1 .containar img { width:110px; float:left; }
	.s1 .containar p { font-size:1rem; width:70%; float:left; margin:0 3%; color:#fff; line-height:30px; }
	.s1 .containar .btn { padding-top:2%; }
	.s1 .containar .btn:hover { cursor:pointer;}
	.s1 .containar .btn img { width:150px; }


/* ===================================================================
	/
	/	s2
	/
	=================================================================== */
	.s2 { position:relative; padding:50px 0; margin-bottom:100px; }
	.s2 .containar img { width:100%; }
	.s2 .containar .motto { position:relative; margin-bottom:30px; }
	.s2 .containar .motto img.ue  { width:60%; position:absolute; top:18%; left:21%; }
	.s2 .containar h3 { text-align:center; font-size:1.1rem; font-weight:bold; padding:10px 0; }
	.s2 .containar p { text-align:center; font-size:1rem; line-height:30px; width:90%; margin:0 auto; }


/* ===================================================================
	/
	/	s3
	/
	===================================================================
	.s3 { padding:0; background:url(../images/blue_bg.jpg); background-repeat:no-repeat; background-size:cover; overflow:hidden; }
	.s3 .l { width:50%; float:left; }
	.s3 .l img { width:100%; }
	.s3 .r { width:50%; float:right; }
	.s3 .r p { font-size:1rem; line-height:30px; color:#fff; padding:5% 8%; }
	.s3 .r ul { padding:0 8%;  }
	.s3 .r ul li { transition: 0.5s; float:left; width:20%; font-size:0.9rem; border:solid 1px #fff; padding:10px 10px 10px 25px; margin-right:2%; background-image:url(../images/top_s3_icon.png); background-repeat:no-repeat; background-position:10px 15px; }
	.s3 .r ul li:hover { opacity:0.6; }
	.s3 .r ul li:nth-child(3) { width:25%; }
	.s3 .r ul li a { text-decoration:none; color:#fff; }*/


/* ===================================================================
	/
	/	human
	/
	=================================================================== */
	.human { position:relative; background-image:url(../images/top_s4_bg.jpg); background-repeat:no-repeat; background-size:cover; padding:100px 0; }
	.human .containar .l { width:30%; float:left; }
	.human .containar .l .f_r { float:right; position:relative; z-index:100; }
	.human .containar .l .f_r p.square { font-size:2rem; font-weight:bold; color:#fff; background-color:#6cbc4f; padding:30px 70px 50px 30px; line-height:60px; letter-spacing:5px; }
	.human .containar .l .f_r p.small { font-size:0.8rem; font-weight:bold; color:#6cbc4f; text-align:right; margin:2%; }
	.human .containar .r { width:70%; float:right; padding:0 5%; }
	.human .containar .r h2 { font-size:1.8rem; font-weight:bold; margin-bottom:20px; letter-spacing:2px; }
	.human .containar .r p { font-size:1rem; line-height:30px; padding-bottom:50px; }
	.human .containar .r .dl_btn { margin:30px 0 60px; }
	.human .containar .r .dl_btn img { margin:10px; }
	.human .containar .r .contact_btn { margin:30px 0; background-image:url(../images/top_s3_icon.png); background-repeat:no-repeat; background-position:30px 22px; background-color:#6cbc4f; text-align:center; padding:15px; font-size:1rem; font-weight:bold; border-radius:5px; width:60%; letter-spacing:2px; }
	.human .containar .r .contact_btn a { text-decoration:none; color:#fff; }

	.human .line_l { position:absolute; top:25%; left:-1%; z-index:10; width:30%; height:10px; }
	.human .line_r { position:absolute; bottom:52%; right:-1%; z-index:10; width:70%; height:10px; }



/* ===================================================================
	/
	/	news
	/
	=================================================================== */
	.news { background-color:#fff; padding:50px 0; }
	.news .containar h2 { width: 1000px; margin: 0 auto;font-size:1.8rem; font-weight:bold; margin-bottom:20px; letter-spacing:2px; border-bottom: 1px solid #fff; }
	.news .containar h2 span { font-size:1.2rem; }
	.news .containar h2 span.r { font-size:0.8rem; float:right; padding-right:30px; padding-top:10px; font-weight:normal; }
	.news .containar h2 span.r a { color:#524e4e; text-decoration:none; }

	.news .containar ul { width:1000px; margin:0 auto; }
	.news .containar ul li { margin:2% 0; }
	.news .containar ul li a { color:#524e4e; font-size:1rem; text-decoration:none; }
	.news .containar ul li a:hover { text-decoration:underline; }
	.news .containar ul li span { background-color:#8dd05a; padding:0.5% 3%; margin-right:3%; border-radius:5px; font-weight:bold; color: #fff;}




/* ===================================================================
	/
	/	office
	/
	=================================================================== */
	.office { background-color:#f6f6f6; padding:50px 0; }
	.office .containar h2 { font-size:1.8rem; font-weight:bold; margin-bottom:20px; color:#000; text-align:center; letter-spacing:2px; }
	.office .containar .office_box { width:48%; float:left; border:solid 1px #cccccc; margin:1%; background-color:#fff; min-height: 203px; }
	.office .containar .office_box h3 { font-size:1.2rem; font-weight:bold; border-left:solid 3px #8dd05a; padding-top:3%; padding-left:2%; margin:0 5% 5% 5%; }
	.office .containar .office_box p { font-size:0.95rem; margin:0 2% 3% 7%; line-height:25px; }
	.office .containar .office_box p.depo { font-size:0.95rem; margin:0 2% 3% 7%; line-height:10px; }
	.office .containar .office_box .office_info { width:55%; float:left; }
	.office .containar .office_box .office_map { width:45%; float:left; }
	.office .containar .office_box .office_map iframe { padding:10px 10px 0; }

	#office { padding-top:85px; margin-top:-85px; }


/* ===================================================================
	/
	/	bnr_area
	/
	=================================================================== */
.bnr_area { max-width: 1000px; width: 95%; margin: 0 auto; padding: 50px 0; }
.bnr_area img { width: 100%; }



/* ===================================================================
	/
	/	footer
	/
	=================================================================== */
	footer { padding-top:50px; }
	footer .footer_menu { overflow:hidden; margin-bottom:50px;}
	footer .footer_menu .containar { width:1000px; text-align:center; }
	footer .footer_menu .f_logo { margin-bottom:40px;}
	footer .footer_menu .l { width:30%;  text-align:center; margin:0 auto; }
	footer .footer_menu .r { width:70%; float:right; }
	footer .footer_menu .r .footer_menu_box { width:25%; float:left; border-left:dashed 1px #999999; min-height:230px; padding:2%; }
	footer .footer_menu .r .no_border { border-left:none; }
	footer .footer_menu .r .footer_menu_box h3 { font-size:1.2rem; font-weight:bold; margin-bottom:20px;}
	footer .footer_menu .r .footer_menu_box ul { padding-left:5%; }
	footer .footer_menu .r .footer_menu_box ul li { font-size:0.9rem; margin-bottom:3%; }
	footer .footer_menu .r .footer_menu_box ul li a { text-decoration:none; color:#000; }
	footer .footer_menu .r .footer_menu_box p { font-size:0.9rem; margin-top:15%; }
	footer .footer_menu .r .footer_menu_box a { text-decoration:none; color:#000; }
	footer .copyright { background-color:#505050; padding:1% 0; text-align:center; }
	footer .copyright p { font-size: 0.7rem; color:#fff; text-align:center; margin:0; line-height:20px; }

	footer .footer_contact {padding:50px 0; }
	footer .footer_contact p { font-size:1rem; margin-bottom:2%; text-align:center; }
	footer .footer_contact .l { width:48%; float:left; color:#fff;  }
	footer .footer_contact .l p { font-size:1rem; color:#fff; margin-bottom:2%; }
	footer .footer_contact .l a { text-decoration:none; color:#fff; margin-right:5%;}
	footer .footer_contact .l span { font-size:1rem; }
	footer .footer_contact .l img { margin-right:2%; }
	footer .footer_contact .r { width:48%; float:right; text-align:center; }
	footer .footer_contact .r .mail_btn { margin: 30px 0; background-image: url(../images/top_s3_icon.png); background-repeat: no-repeat; background-position: 30px 22px; background-color: #6cbc4f; text-align: center; padding: 15px; font-size: 1rem; font-weight: bold; border-radius: 5px; width: 60%; letter-spacing: 2px; }
	footer .footer_contact .r .mail_btn a { text-decoration:none; color:#fff; }

	#pageTop { position: fixed; bottom: 20px; right: 20px; }
	#pageTop a { display: block; z-index: 999; padding: 8px 0 0 0px; }
	#pageTop a:hover { text-decoration: none; opacity: 0.7; }
