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

/*--------------------
基本設定
---------------------*/

body {
	margin:0;
	padding:0;
	font-size:15px;
	color: #222;
    font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	background-repeat:repeat;
	background-color:#FFF;
	line-height:1.6em;
}

body.stop-transitions * {
  transition: none !important;
}

ul , li , h1 , h2 , h3 ,h4 , h5 , h6 , table , tr , td , img , p , a , div , form , dl , dt , dd {
	margin:0;
	padding:0;
}

#wrap {
	position: relative;
	max-width:1800px;
    margin:0 auto;
}
@media screen and (max-width: 900px) {
  #wrap {
  }
}

a {
	color: #111;
	border:none;
	text-decoration:underline;
	background-repeat:no-repeat;
	outline:none;
}

a:link{
	color: #111;
	border:none;
	text-decoration:underline;
	background-repeat:no-repeat;
}

a:visited {
	color: #111;
	text-decoration: underline;
}
a:hover {
	color: #111;
	text-decoration:none;
}

a.link_window {
	display: inline-block;
	background-image: url(../images/link_window.png);
	background-repeat: no-repeat;
	background-size: 18px auto;
	padding-right:25px;
	background-position: center right;
}

ul , li {
	list-style-type:none;
}

img {
	border:0;
	max-width:100%;
}

a:hover img {
/*	opacity:0.9;
	filter: alpha(opacity=90);
	-ms-filter: "alpha( opacity=90 )";
	background: #fff;*/
}


table {
	border-collapse:collapse;
}

h1 , h2 {
	letter-spacing: 0.1em;
}

h1 , h2 , h3 , h4 , h5 , h6 {;
}

p {
	color:#333;
}


@media screen and (max-width: 640px) {
  iframe {
	  max-width: 100%;
  }
}

::selection {
    background-color: #111;
	color:#FFF;
}
::-moz-selection {
    background-color: #111;
	color:#FFF;
}
/*--------------------
clearfix
---------------------*/

.clearfix {
    /**zoom: 1;*/
}

.clearfix:before,
.clearfix:after {
    display: table;
    content: "";
}

.clearfix:after {
    clear: both;
}

/*--------------------
汎用設定
---------------------*/

br.clear {
	clear:both;
}

img.border {
	padding:2px;
	border:solid 1px #333;
}

a.noborder {
	text-decoration:none;
}

span.ajust {
	text-indent:-9999px;
}


span.bold {
	font-weight:bold;
}

span.bold2 {
	font-weight:bold;
	font-size:14px;
}

span.red_bold {
	font-weight:bold;
	color:#e21212;
}

span.red_bold2 {
	font-weight:bold;
	color:#e21212;
	font-size:14px;
}

span.bg {
	background-color:#000;
	color:#FFF;
	margin-left:3px;
	margin-right:3px;
}

span.bg2 {
	background-color:#e21212;
	color:#FFF;
	margin-left:3px;
	margin-right:3px;
}

.sp_only {
	display: none;
}
@media screen and (max-width: 640px) {
  .sp_only {
	  display: block;
  }
}

.pc_only {
	display: block;
}
@media screen and (max-width: 900px) {
  .pc_only {
	  display: none;
  }
}



/* fade */

.scroll_fadein {
	opacity: 0;
	transform: translate(0,60px); 
	-webkit-transform: translate(0,60px);
	    -webkit-transition: 0.8s 0s ease-in-out;
	        transition: 0.8s 0s ease-in-out;
}
.scroll_fadein2 {
	
	opacity: 0;
	transform: translateX(-40px); 
	-webkit-transform: translateX(-40px);
	    -webkit-transition: 1.5s 1s ease-in-out;
	        transition: 1.5s 1s ease-in-out;
}
@media screen and (max-width: 900px) {
  .scroll_fadein2 {
	  transform: translateX(0px); 
	  -webkit-transform: translateX(0px);
	  transform: translateY(40px); 
	  -webkit-transform: translateY(40px);
  }
}

.scroll_fadein3 {
	opacity: 0;
	transform: translate(0,0px); 
	-webkit-transform: translate(0,0px);
	    -webkit-transition: 0.8s 0s ease-in-out;
	        transition: 0.8s 0s ease-in-out;
}
.scroll_fadein4 {
	
	opacity: 0;
	transform: translateX(40px); 
	-webkit-transform: translateX(40px);
	    -webkit-transition: 1.5s 1s ease-in-out;
	        transition: 1.5s 1s ease-in-out;
}
@media screen and (max-width: 900px) {
  .scroll_fadein4 {
	  transform: translateX(0px); 
	  -webkit-transform: translateX(0px);
	  transform: translateY(40px); 
	  -webkit-transform: translateY(40px);
  }
}

.scroll_fadein5 {
	opacity: 0;
	transform: translate(0,0px); 
	-webkit-transform: translate(0,0px);
	    -webkit-transition: 1.5s 1s ease-in-out;
	        transition: 1.5s 1s ease-in-out;
}

.scroll_fadein_header {
	opacity: 0;
	transform: translate(0,-60px); 
	-webkit-transform: translate(0,-60px);
	    -webkit-transition: 1.0s 3s ease-in-out;
	        transition: 1.0s 3s ease-in-out;
}

.fadein_mv{
	opacity: 1.0;
	transform: translate(0,0); 
	-webkit-transform: translate(0,0);
}

/*--------------------
header
---------------------*/


header {
		max-width:1800px;
	  position:absolute;
	  top:0px;
	  left: 0;
	  right: 0;
	  margin: auto;
	  z-index: 999;
}
@media screen and (max-width: 900px) {
  header {
	  width:100%;
	  height:50px;
  }
}
@media screen and (max-width: 640px) {
  header {
  }
}


.fadeout {
    opacity: 0;
    -webkit-transition: opacity 0.2s ease-in-out;
    transition: opacity 0.2s ease-in-out;
}
.fadein {
    opacity: 1;
    -webkit-transition: opacity 0.2s ease-in-out;
    transition: opacity 0.2s ease-in-out;
}


header nav {
	width:100%;
	height:80px;
	position: relative;
	background-color: #FFF;
}
@media screen and (max-width: 900px) {
  header nav {
	  width:100%;
	  height:50px;
  }
}
@media screen and (max-width: 640px) {
  header nav {
  }
}

div#logo {
	width:202px;
	height:44px;
	position: absolute;
	top:20px;
	left:20px;
}
@media screen and (max-width: 900px) {
  div#logo {
	  width:140px;
	  height:31px;
	top:10px;
	left:10px;
  }
}
@media screen and (max-width: 640px) {
  div#logo {
  }
}

div#logo a {
	display:block;
	width:202px;
	height:44px;
	background-image: url(../images/logo.png);
	background-size: 100% auto;
	text-indent: -9999px;
}
@media screen and (max-width: 900px) {
  div#logo a {
	  width:140px;
	  height:31px;
  }
}
@media screen and (max-width: 640px) {
  div#logo a {
	  width:140px;
	  height:31px;
  }
}


ul#navi {
	letter-spacing: -.40em;
	margin-left:auto;
	width:80%;
	height:80px;
	float:right;
	text-align: right;
	margin: 0px 0px 0px 0px;
	font-size:0;
}
@media screen and (max-width: 900px) {
  ul#navi {
	  display: none;
  }
}


ul#navi li {
	 letter-spacing: normal;
	display: inline-block;
	vertical-align: top;
	padding:0px 0px 0px 0px;
	height:90px;
	font-size:16px;
}

ul#navi .contact {
	
}


@media screen and (max-width: 1000px) {
  ul#navi li:nth-child(6) {
	  display: none;
  }
}


ul#navi li a {
	display:block;
	height:80px;
	-webkit-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
	color:#111;
	text-decoration: none;
	font-size:16px;
	line-height:22px;
	text-align: center;
	padding:30px 35px 0px 35px;
	box-sizing: border-box;
	 letter-spacing: 0.5px;
	 position: relative;
	font-weight:bold;
}
@media screen and (max-width: 1300px) {
  ul#navi li a {
		padding:30px 20px 0px 20px;
  }
}
@media screen and (max-width: 1100px) {
  ul#navi li a {
		padding:30px 15px 0px 15px;
		font-size:14px;
		letter-spacing: 0px;
  }
}



ul#navi .contact a {
	background-image: url(../images/button_bg.png);
	color:#FFF;
	background-size: 100% 100%;
	font-weight:bold;
}

ul#navi li a:hover {
	background-color: #F3F3F3;
}

ul#navi .contact a:hover {
	filter: brightness(1.1);
}


#top_body ul#navi li a {
}

#top_body .scroll_navi ul#navi li a {
}

.dropdown_button {
	position: relative;
}

.dropdown_button a {
	cursor: default;
}

ul#navi li .dropdown_lists {
    width: 240px;
    height:120px;
    position: absolute;
    top: 84px;
    left: 0;
    display: none;
    z-index: 9999;
}

ul#navi li .dropdown_lists:before {
  content: "";
  position: absolute;
  top: -30px;
  left: 28%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-bottom: 15px solid #177361;
}

ul#navi li.dropdown_button:hover .dropdown_lists {
    display: block;
 }
ul#navi li .dropdown_list {
	display: block;
    height: 80px;
    transition: all .3s;
    position: relative;
    text-align: center;
}
.dropdown_list:not(:first-child)::before{
}
.dropdown_list:hover {
}
ul#navi li .dropdown_lists .dropdown_list a {
	text-align: left;
	height: 80px;
	color:#FFF;
    background-color: #177361;
	background-image: url(../images/button_bg.png);
	background-size: cover;
	background-position: center center;
	cursor: pointer;
}
.dropdown_list a::before {
}

ul#navi li .dropdown_lists .dropdown_list a:hover {
	filter: brightness(1.1);
}

ul#navi li .dropdown_lists .dropdown_list:nth-child(1) a {
	border-bottom:solid 1px #368d7c;
}


/* スクロール */

/*

.scroll_navi {
	width:100%; 
	background-color: #FFF;
	box-shadow: 0px 3px 3px rgba(0,0,0,0.02);
	-webkit-box-shadow: 0px 3px 3px rgba(0,0,0,0.02);
	-webkit-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
	opacity: 0.98;
}
@media screen and (min-width: 1800px) {
  .scroll_navi {
		box-shadow: 0px 0px 0px rgba(0,0,0,0.02);
		-webkit-box-shadow: 0px 0px 0px rgba(0,0,0,0.02);
  }
}

.scroll_navi , .scroll_navi nav , .scroll_navi ul#navi , .scroll_navi ul#navi li , .scroll_navi ul#navi li a {
	height:60px;
}
@media screen and (max-width: 900px) {
  .scroll_navi , .scroll_navi nav , .scroll_navi ul#navi , .scroll_navi ul#navi li , .scroll_navi ul#navi li a {
	height:50px;
  }
}
@media screen and (max-width: 640px) {
  .scroll_navi , .scroll_navi nav , .scroll_navi ul#navi , .scroll_navi ul#navi li , .scroll_navi ul#navi li a {
	height:50px;
  }
}

.scroll_navi div#logo {
	width:140px;
	height:35px;
	top:14px;
	left:20px;
}
@media screen and (max-width: 900px) {
  .scroll_navi div#logo {
	top:10px;
	left:10px;
  }
}
@media screen and (max-width: 640px) {
  .scroll_navi div#logo {
  }
}

.scroll_navi div#logo a svg {
	width:140px;
	height:35px;
}
@media screen and (max-width: 900px) {
  .scroll_navi div#logo a svg {
	width:120px;
	height:30px;
  }
}


.scroll_navi ul#navi li a {
	padding-top:20px;
}
@media screen and (max-width: 1000px) {
  .scroll_navi ul#navi li a {
  }
}
@media screen and (max-width: 900px) {
  .scroll_navi ul#navi li a {
  }
}
@media screen and (max-width: 900px) {
  .scroll_navi ul#navi li a {
	  display: none;
  }
}

*/



/* メニューボタン */

#header_menu {
	width:50px;
	height:50px;
	margin:0px 0px 0px 0px;
	position: absolute;
	top:0px;
	right:0px;
	display: none;
}
@media screen and (max-width: 900px) {
  #header_menu {
	  display: block;
	  position: absolute;
	  top:0px;
	  right:0px;
  }
}

#header_menu a {
	width:50px;
	height:50px;
	position: relative;
	
}
@media screen and (max-width: 900px) {
  #header_menu a {
	  width:50px;
	  height:50px;
  }
}


#header_menu a span{
    display: inline-block;
    transition: all .4s;/*アニメーションの設定*/
    position: absolute;
    left: 20%;
    width: 60%;
    height: 1.5px;
  background: #111;
  }


#header_menu a span:nth-of-type(1) {
  top:20px; 
}
@media screen and (max-width: 900px) {
  #header_menu a span:nth-of-type(1) {
	  top:16px; 
  }
}

#header_menu a span:nth-of-type(2) {
  top:30px;
  width: 50%;
}
@media screen and (max-width: 900px) {
  #header_menu a span:nth-of-type(2) {
	  top:24px; 
  }
}

#header_menu a span:nth-of-type(3) {
  top:40px;
  width: 40%;
}
@media screen and (max-width: 900px) {
  #header_menu a span:nth-of-type(3) {
	  top:32px; 
  }
}

#header_menu .btn-close span:nth-of-type(1) {
    top: 24px;
    left: 25%;
    transform: translateY(6px) rotate(-135deg);
    width: 50%;
}

#header_menu .btn-close span:nth-of-type(2) {
  opacity: 0;
}

#header_menu .btn-close span:nth-of-type(3){
    top: 36px;
    left: 25%;
    transform: translateY(-6px) rotate(135deg);
    width: 50%;
}

.scroll_navi #header_menu a span {
	  background: #111 !important;
}


/* OPEN / CLOSE BTNS */

.menu-btn {
    z-index: 1000000;
}

.menu-btn a {
    display: inline-block;
    text-decoration: none;
    /* safari hack */
}



/* OVERLAY */

.overlay {
    position: fixed;
    top: 0;
    z-index: 100000;
    display: none;
    overflow: auto;
    width: 100%;
    height: 100%;
    background-color: #177361;
    background-image: url(../images/button_bg.png);
    background-position: center center;
    background-size: 100% auto;
}

.overlay .close {
	width: 50px;
    height: 50px;
	display: none;
	position: relative;
    margin-left:auto;
}
@media screen and (max-width: 900px) {
  .overlay .close {
	  display: block;
  }
}
@media screen and (max-width: 640px) {
  .overlay .close {
  }
}

.overlay .close span{
    display: inline-block;
    position: absolute;
    right: 10px;
    width: 70%;
    height: 1.5px;
  background: #fff;
  }

.overlay .close span:nth-of-type(1) {
    top: 18px;
    right: 10px;
    transform: translateY(6px) rotate(-135deg);
    width: 60%;
}

.overlay .close span:nth-of-type(2){
    top: 30px;
    right: 10px;
    transform: translateY(-6px) rotate(135deg);
    width: 60%;
}

.overlay .menu {
    margin: 0px auto 0% 0;
    width: 300px;
    height:100%;
    
	transition: .4s linear;
    transform: translateX(-100%);
	opacity: 0;
	position: relative;
}
@media screen and (max-width: 900px) {
  .overlay .menu {
	  width:100%;
	  transform: translateY(0%);
	  transition: .5s linear;
  }
}

.is-open .menu {
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
  transition: .3s linear;
  position: relative;
}

.overlay .menu .box {
	position: absolute;
	/*top:29%;
	left:10%;*/
	height:400px;
	padding-top:15px;
	top:0;
	bottom:0;
	left:10%;
	margin:auto;
}
@media screen and (max-width: 900px) {
  .overlay .menu .box {
	  width:80%;
	  position: static;
	  box-sizing: border-box;
	  padding:20px 0px 40px 0px;
	  margin:0 auto;
	  height:auto;
  }
}

.overlay .menu .menu_logo {
	width:120px;
	height:30px;
	position: absolute;
    top: 10px;
    left: 10px;
}

.overlay .menu ul {
}
@media screen and (min-width: 800px) {
  .overlay .menu ul {
  }
}

.overlay .menu ul li {
    list-style: none;
    text-transform: uppercase;
	 letter-spacing: 2px;
	 font-weight:normal;
	 text-align: left;
	 margin-bottom:10px;
	 background-image: url(../images/button_arrow.png);
	 background-repeat: no-repeat;
	 background-size: 10px auto;
	 background-position: right 16px;
}

@media screen and (min-width: 640px) {
  .overlay .menu ul li {
	 	margin-bottom:5px;
  }
}

.overlay .menu ul li a {
    padding: 15px 0;
    font-size: 16px;
    color:#fff;
    text-decoration: none;
	font-weight:bold;
	display: block;
	position: relative;
	text-shadow: 0px 0px 20px rgba(0,0,0,0.3);
	
}
@media screen and (min-width: 800px) {
  .overlay .menu ul li a {
    	font-size: 15px;
    	padding: 15px 0;
  }
}
@media screen and (max-width: 900px) {
  .overlay .menu ul li a {
    	padding: 15px 0;
  }
}
@media screen and (max-width: 640px) {
  .overlay .menu ul li a {
    	padding: 12px 0;
  }
}

.overlay .menu ul li a:hover {
	opacity: 0.9;
}

.overlay .menu ul li a span {
	display: block;
	font-size:11px;
	letter-spacing: 0.1em;
}


/*--------------------
footer
---------------------*/

footer {
}

footer #footer_wrap {
	font-size:0;
	max-width:1400px;
	margin:0 auto;
	box-sizing: border-box;
}
@media screen and (max-width: 1410px) {
  footer #footer_wrap {
	  padding:0 40px 0 40px;
  }
}
@media screen and (max-width: 640px) {
  footer #footer_wrap {
	  padding:0 20px 0 20px;
  }
}

footer #footer_wrap #footer_logo {
	display: inline-block;
	vertical-align: top;
	width:50%;
	font-size:15px;
	text-align: center;
	box-sizing: border-box;
	padding:80px 0px 95px 0px;
}
@media screen and (max-width: 900px) {
  footer #footer_wrap #footer_logo {
	  width:100%;
	  border-right:none;
	  padding:60px 0px 40px 0px;
  }
}
@media screen and (max-width: 640px) {
  footer #footer_wrap #footer_logo {
	  padding:40px 0px 20px 0px;
  }
}

footer #footer_wrap #footer_logo #footer_logo_image {
	width:200px;
	text-align: left;
	margin:0 0 20px 0;
}
@media screen and (max-width: 1000px) {
  footer #footer_wrap #footer_logo #footer_logo_image {
	  width:120px;
  }
}
@media screen and (max-width: 640px) {
  footer #footer_wrap #footer_logo #footer_logo_image {
	  width:160px;
	  
  }
}

footer #footer_wrap #footer_logo #footer_logo_adress {
	text-align: left;
	margin:0 0 0 0px;
	line-height:1.8em;
}
@media screen and (max-width: 1000px) {
  footer #footer_wrap #footer_logo #footer_logo_adress {
	  margin:0 0 0 40px;
	  font-size:14px;
  }
}
@media screen and (max-width: 900px) {
  footer #footer_wrap #footer_logo #footer_logo_adress {
	  font-size:15px;
  }
}
@media screen and (max-width: 640px) {
  footer #footer_wrap #footer_logo #footer_logo_adress {
	  margin:0 0 0 0px;
  }
}

footer #footer_wrap #footer_logo #footer_logo_adress p {
	margin:0 0 10px 0;
}


footer #footer_wrap #footer_menu {
	display: inline-block;
	vertical-align: top;
	width:50%;
	font-size:15px;
	text-align: center;
	padding:80px 0px 80px 0px;
}
@media screen and (max-width: 900px) {
  footer #footer_wrap #footer_menu {
	  width:100%;
	  border-top:solid 1px #DDD;
	  padding:40px 0px 40px 0px;
  }
}
@media screen and (max-width: 640px) {
  footer #footer_wrap #footer_menu {
	  padding:40px 0px 20px 0px;
  }
}

footer #footer_wrap #footer_menu ul {
	display: inline-block;
	vertical-align: top;
	text-align: left;
	margin:0 50px 0 50px;
}
@media screen and (max-width: 1000px) {
  footer #footer_wrap #footer_menu ul {
	  margin:0 30px 0 30px;
  }
}
@media screen and (max-width: 900px) {
  footer #footer_wrap #footer_menu ul {
	  margin:0 40px 0 40px;
  }
}
@media screen and (max-width: 640px) {
  footer #footer_wrap #footer_menu ul {
	  margin:0 0px 0 0px;
	  width:48%;
  }
}

footer #footer_wrap #footer_menu ul li {
	margin:0px 0px 20px 0px;
	font-size:15px;
}
@media screen and (max-width: 900px) {
  footer #footer_wrap #footer_menu ul li {
		margin:0px 30px 20px 30px;
  }
}
@media screen and (max-width: 640px) {
  footer #footer_wrap #footer_menu ul li {
		margin:0px 0px 20px 0px;
		font-size:14px;
  }
}

footer #footer_wrap #footer_menu ul li a {
	color:#111;
	text-decoration: none;
}

footer #footer_wrap #footer_menu ul li a:hover {
	color:#666;
}

footer #copyright {
	clear:both;
	font-size:12px;
	color:#111;
	padding:20px 10px 40px 10px;
	text-align: center;
	border-top:solid 1px #DDD;
}
@media screen and (max-width: 640px) {
  footer #copyright {
		font-size:11px;
		padding:20px 5px;
  }
}

/*--------------------
section
---------------------*/

/* section */

section {
    width: 100%;
    padding: 80px 0px 80px 0px;
}

@media all and (max-width: 800px) {
    section {
        padding: 60px 0 60px 0;
    }
}

@media all and (max-width: 640px) {
    section {
        width: 100%;
        padding: 30px 0px 30px 0px;
        box-sizing: border-box;
    }
}

.top_section {
    padding: 0px 0px 20px 0px;
}

.section_nopadding {
    padding: 0px 0px 0px 0px;
}


/* コンテンツボックス */

.contents {
    max-width: 1200px;
    margin: 0 auto;
}

@media all and (max-width: 1210px) {
    .contents {
        width: 96%;
    }
}

@media all and (max-width: 800px) {
    .contents {
	    padding:20px 0px 20px 0px;
        width: 90%;
    }
}

@media all and (max-width: 640px) {
    .contents {
        width: 90%;
    }
}

.bg_gray {
	background-color: #fbfbfb;
}

.bg_gray2 {
	background-color: #f8f8f8;
}

.section_border {
	border-bottom:solid 1px #EEE;
}

/*--------------------
パンくず
---------------------*/

.pankuzu .box {
	margin:100px auto 10px 0px;
	font-size:13px;
	text-align: right;
	padding:0px 20px;
	color:#555;
}
@media all and (max-width: 1000px) {
    .pankuzu .box  {
		padding:0px 20px;
		margin:40px auto 10px 0px;
    }
}

.pankuzu .box span {
	color:#888;
	margin-left:5px;
	margin-right:5px;
}

.pankuzu .box a {
	color: #aaa !important;
	text-decoration: none;
}

.pankuzu .box a:hover {
	text-decoration: underline;
}

/*--------------------
問い合わせエリア
---------------------*/

#contact_area {
	margin:80px 0 0 0;
	padding:0;
	background-color: #f6f6f6;
	position: relative;
	padding:100px 0;
}
@media screen and (max-width: 1200px) {
  #contact_area {
  }
}
@media screen and (max-width: 1000px) {
  #contact_area {
  }
}
@media screen and (max-width: 900px) {
  #contact_area {
  }
}
@media screen and (max-width: 640px) {
  #contact_area {
	  padding:40px 0;
  }
}


#contact_area .box {
	background-color: #FFF;
	width:90%;
	margin:0 auto;
	box-sizing: border-box;
	padding:70px 50px;
}
@media screen and (max-width: 640px) {
  #contact_area .box {
	  padding:50px 30px 30px 30px;
  }
}

#contact_area div {
	box-sizing: border-box;
}

#contact_area .contact_title {
	font-size:0;
	margin:0 0 60px 0;
}
@media screen and (max-width:900px) {
  #contact_area .contact_title {
	  margin:0 0 40px 0;
  }
}
@media screen and (max-width:640px) {
  #contact_area .contact_title {
	  margin:0 0 30px 0;
  }
}

#contact_area .contact_title .section_title {
	display: inline-block;
	vertical-align: middle;
	width:35%;
	font-size:16px;
	margin-bottom:0;
	border-right:solid 1px #DDD;
}
@media screen and (max-width: 1300px) {
  #contact_area .contact_title .section_title {
	  border-right:none;
  }
}
@media screen and (max-width:900px) {
  #contact_area .contact_title .section_title {
	  width:100%;
	  border-right:none;
	  margin-bottom:40px;
  }
}


@media screen and (max-width: 1300px) {
  #contact_area .contact_title .section_title .en {
	  font-size:40px;
  }
}
@media screen and (max-width: 640px) {
  #contact_area .contact_title .section_title .en {
	  font-size:32px;
	  font-weight:bold;
  }
}


#contact_area .contact_title .contact_text {
	display: inline-block;
	vertical-align: middle;
	width:65%;
	font-size:16px;
	padding:0 0 0 80px;
}
@media screen and (max-width: 900px) {
  #contact_area .contact_title .contact_text {
	  width:100%;
	  padding:0 0 0 0px;
  }
}

#contact_area .contact_button_phone {
	font-size:0;
}
@media screen and (max-width: 640px) {
  #contact_area .contact_button_phone {
	  width:100%;
	  padding:0 0 0 0px;
  }
}

#contact_area .contact_button , #contact_area .phone1 , #contact_area .phone2 , #contact_area .phone3 {
	display: inline-block;
	height:100%;
	font-size:15px;
	vertical-align: top;
	position: relative;
	text-align: center;
}
@media screen and (max-width: 1000px) {
  #contact_area .contact_button , #contact_area .phone1 , #contact_area .phone2 , #contact_area .phone3 {
	  width:50%;
	  height:50%;
  }
}

#contact_area .phone1 , #contact_area .phone2 , #contact_area .phone3 {
	width:22%;
}
@media screen and (max-width: 1300px) {
  #contact_area .phone1 , #contact_area .phone2 , #contact_area .phone3 {
	  width:33%;
  }
}
@media screen and (max-width: 900px) {
  #contact_area .phone1 , #contact_area .phone2 , #contact_area .phone3 {
	  width:50%;
	  margin-bottom:20px;
  }
}
@media screen and (max-width: 640px) {
  #contact_area .phone1 , #contact_area .phone2 , #contact_area .phone3 {
	  width:100%;
	  margin:0 0 30px 0;
  }
}

#contact_area .contact_button_phone .contact_button {
	width:34%;
	max-width:34%;
}
@media screen and (max-width: 1300px) {
#contact_area .contact_button_phone .contact_button {
	  width:100%;
	  max-width:100%;
	  margin-bottom:50px;
  }
}
@media screen and (max-width: 640px) {
#contact_area .contact_button_phone .contact_button {
	  width:100%;
	  max-width:100%;
	  margin-bottom:40px;
  }
}

#contact_area .contact_button_phone .contact_button a {
	padding:28px 25px 28px 100px;
	text-align: left;
	max-width:330px;
}
@media screen and (max-width: 900px) {
#contact_area .contact_button_phone .contact_button a {
	  padding:28px 0px 28px 100px;
	  max-width:80%;
  }
}
@media screen and (max-width: 640px) {
#contact_area .contact_button_phone .contact_button a {
	  padding:28px 0px 28px 80px;
	  max-width:100%;
	  font-size:16px;
  }
}

#contact_area .contact_button_phone .contact_button a:after {
	content:"";
	display: block;
	width:30px;
	height:30px;
	background-image: url(../images/contact_mail_icon.png);
	background-size: 30px auto;
	background-repeat: no-repeat;
	position: absolute;
	top:24px;
	left:50px;
}
@media screen and (max-width: 640px) {
#contact_area .contact_button_phone .contact_button a:after {
	  left:30px;
  }
}

#contact_area .phone1 h3 , #contact_area .phone2 h3 , #contact_area .phone3 h3 {
	font-size:16px;
	text-align: left;
	position: relative;
	padding:8px 0 0 50px;
	height:36px;
	margin:0 0 0px 0;
}

#contact_area .phone1 .icon , #contact_area .phone2 .icon , #contact_area .phone3 .icon {
	display: block;
	position: absolute;
	top:0;
	left:0;
	background-image: url(../images/button_bg.png);
	background-position: center center;
	background-size: cover;
	width:40px;
	height:40px;
	border-radius: 100px;
	box-sizing: border-box;
	padding:9px;
}

#contact_area .phone1 .number , #contact_area .phone2 .number , #contact_area .phone3 .number {
	font-size:30px;
	line-height:1.2em;
	text-align: left;
	font-weight:bold;
}
@media screen and (max-width: 640px) {
#contact_area .phone1 .number , #contact_area .phone2 .number , #contact_area .phone3 .number {
	  font-size:24px;
	  margin-left:50px;
  }
}


/*--------------------
タイトル
---------------------*/

.section_title {
	margin:0 0 70px 0;
}
@media screen and (max-width: 640px) {
  .section_title {
		margin:0 0 40px 0;
  }
}

.section_title .en {
	font-size:60px;
	line-height:1.2em;
	margin:0 0 20px 0;
}
@media screen and (max-width: 640px) {
  .section_title .en {
		font-size:36px;
		margin:0 0 10px 0;
  }
}

.section_title h2 {
	font-size:18px;
	line-height:1.2em;
	color:#177361;
}

.section_title h2:before {
	content: "■";
	margin-right:10px;
}

/*--------------------
ボタン
---------------------*/

.button_more {
	max-width:300px;
	display: block;
}
@media screen and (max-width: 640px) {
  .button_more {
    	display: block;
    	width:80%;
    	margin:0 auto 20px auto;
  }
}

.button_more a {
	display: block;
	padding:20px 20px 20px 20px;
	box-sizing: border-box;
	font-size:18px;
	color:#fff;
	text-align: center;
	text-decoration: none;
	font-weight:bold;
	position: relative;
	transition: ease .2s;
	border-radius: 100px;
	background-image: url(../images/button_bg.png);
	background-size: cover;
}
@media screen and (max-width: 640px) {
  .button_more a {
	  font-size:16px;
  }
}

.button_more a:after {
	content:"";
	display: block;
	width:11px;
	height:19px;
	background-image: url(../images/button_arrow.png);
	background-size: 11px auto;
	background-repeat: no-repeat;
	position: absolute;
	top:22px;
	right:20px;
}

.button_more a:hover:after {
	background-position: 0px 0px;
}

.button_more a:hover {
	opacity: 0.9;
}


.button_center {
	margin:0 auto;
    display: block;
}
@media screen and (max-width: 640px) {
  .button_center {
    	display: block;
    	width:70%;
    	margin:0 auto 20px auto;
  }
}

.button_two {
	text-align: center;
}

.button_two .button_more {
	display: inline-block;
	width:320px;
	margin:60px 40px 40px 40px;
}
@media screen and (max-width: 900px) {
  .button_two .button_more {
	  width:40%;
	  margin:30px 4% 30px 4%;
  }
}
@media screen and (max-width: 640px) {
  .button_two .button_more {
    	display: block;
    	width:90%;
    	margin:20px auto 20px auto;
  }
}

/*--------------------
ページ送り
---------------------*/

div.page_navi {
	text-align:center;
	padding:40px 0px 40px 0px;
}

.wp-pagenavi {
	clear: both;
}

.wp-pagenavi .pages {
	display: none;
}

.wp-pagenavi a, .wp-pagenavi span {
	text-decoration: none;
	background-color:#eee;
	padding: 12px 16px;
	margin: 4px;
	color:#111;
	font-size:15px;
}
@media all and (max-width: 800px) {
    .wp-pagenavi a, .wp-pagenavi span {
	    display: inline-block;
		margin: 8px;
    }
}
@media all and (max-width: 640px) {
    .wp-pagenavi a, .wp-pagenavi span {
		padding: 10px 18px;
		margin: 5px;
    }
}


@media all and (max-width: 640px) {
    .wp-pagenavi .extend , .wp-pagenavi .last {
	    display: none;
    }
}

.wp-pagenavi a:hover, .wp-pagenavi span.current {
	background-color:#111;
	color:#FFF;
}

.wp-pagenavi span.current {
}




/*--------------------
優先的に適用させる汎用css
---------------------*/

.fl	{ float:left; }
.fr	{ float:right; }
.cb	{ clear:both; }

.tl	{ text-align:left; }
.tc	{ text-align:center; }
.tr	{ text-align:right; }

/* font管理 */

.align_left {
    text-align: left !important;
}

.align_right {
    text-align: right !important;
}

.align_center {
    text-align: center !important;
}

.fsize60per {
    font-size: 60% !important;
}

.fsize70per {
    font-size: 70% !important;
}

.fsize80per {
    font-size: 80% !important;
}

.fsize90per {
    font-size: 90% !important;
}

.fsize100per {
    font-size: 100% !important;
}

.fsize110per {
    font-size: 110% !important;
}

.fsize120per {
    font-size: 120% !important;
}

.fsize130per {
    font-size: 130% !important;
}

.fsize140per {
    font-size: 140% !important;
}

/* 汎用margin */

.mt0 {margin-top: 0 !important;}
.mt5 {margin-top: 5px !important;}
.mt10 {margin-top: 10px !important;}
.mt15 {margin-top: 15px !important;}
.mt20 {margin-top: 20px !important;}
.mt25 {margin-top: 25px !important;}
.mt30 {margin-top: 30px !important;}
.mt35 {margin-top: 35px !important;}
.mt40 {margin-top: 40px !important;}
.mt45 {margin-top: 45px !important;}
.mt50 {margin-top: 50px !important;}
.mt60 {margin-top: 60px !important;}
.mt70 {margin-top: 70px !important;}
.mt80 {margin-top: 80px !important;}
.mt90 {margin-top: 90px !important;}
.mt100 {margin-top: 100px !important;}

.mb0 {margin-bottom: 0 !important;}
.mb5 {margin-bottom: 5px !important;}
.mb10 {margin-bottom: 10px !important;}
.mb15 {margin-bottom: 15px !important;}
.mb20 {margin-bottom: 20px !important;}
.mb25 {margin-bottom: 25px !important;}
.mb30 {margin-bottom: 30px !important;}
.mb35 {margin-bottom: 35px !important;}
.mb40 {margin-bottom: 40px !important;}
.mb45 {margin-bottom: 45px !important;}
.mb50 {margin-bottom: 50px !important;}
.mb60 {margin-bottom: 60px !important;}
.mb70 {margin-bottom: 70px !important;}
.mb80 {margin-bottom: 80px !important;}
.mb90 {margin-bottom: 90px !important;}
.mb100 {margin-bottom: 100px !important;}

.mr0 {margin-right: 0 !important;}
.mr5 {margin-right: 5px !important;}
.mr10 {margin-right: 10px !important;}
.mr15 {margin-right: 15px !important;}
.mr20 {margin-right: 20px !important;}
.mr25 {margin-right: 25px !important;}
.mr30 {margin-right: 30px !important;}
.mr35 {margin-right: 35px !important;}
.mr40 {margin-right: 40px !important;}
.mr45 {margin-right: 45px !important;}
.mr50 {margin-right: 50px !important;}
.mr60 {margin-right: 60px !important;}
.mr70 {margin-right: 70px !important;}
.mr80 {margin-right: 80px !important;}
.mr90 {margin-right: 90px !important;}
.mr100 {margin-right: 100px !important;}

.ml0 {margin-left: 0 !important;}
.ml5 {margin-left: 5px !important;}
.ml10 {margin-left: 10px !important;}
.ml15 {margin-left: 15px !important;}
.ml20 {margin-left: 20px !important;}
.ml25 {margin-left: 25px !important;}
.ml30 {margin-left: 30px !important;}
.ml35 {margin-left: 35px !important;}
.ml40 {margin-left: 40px !important;}
.ml45 {margin-left: 45px !important;}
.ml50 {margin-left: 50px !important;}
.ml60 {margin-left: 60px !important;}
.ml70 {margin-left: 70px !important;}
.ml80 {margin-left: 80px !important;}
.ml90 {margin-left: 90px !important;}
.ml100 {margin-left: 100px !important;}

/* 汎用padding */
.pt0 {padding-top: 0 !important;}
.pt5 {padding-top: 5px !important;}
.pt10 {padding-top: 10px !important;}
.pt15 {padding-top: 15px !important;}
.pt20 {padding-top: 20px !important;}
.pt25 {padding-top: 25px !important;}
.pt30 {padding-top: 30px !important;}
.pt35 {padding-top: 35px !important;}
.pt40 {padding-top: 40px !important;}
.pt45 {padding-top: 45px !important;}
.pt50 {padding-top: 50px !important;}
.pt60 {padding-top: 60px !important;}
.pt70 {padding-top: 70px !important;}
.pt80 {padding-top: 80px !important;}
.pt90 {padding-top: 90px !important;}
.pt100 {padding-top: 100px !important;}

.pb0 {padding-bottom: 0 !important;}
.pb5 {padding-bottom: 5px !important;}
.pb10 {padding-bottom: 10px !important;}
.pb15 {padding-bottom: 15px !important;}
.pb20 {padding-bottom: 20px !important;}
.pb25 {padding-bottom: 25px !important;}
.pb30 {padding-bottom: 30px !important;}
.pb35 {padding-bottom: 35px !important;}
.pb40 {padding-bottom: 40px !important;}
.pb45 {padding-bottom: 45px !important;}
.pb50 {padding-bottom: 50px !important;}
.pb60 {padding-bottom: 60px !important;}
.pb70 {padding-bottom: 70px !important;}
.pb80 {padding-bottom: 80px !important;}
.pb90 {padding-bottom: 90px !important;}
.pb100 {padding-bottom: 100px !important;}


