@charset "utf-8";

/*----------------------------------------------------------------------------------------------------


 default reset


----------------------------------------------------------------------------------------------------*/

* {
	margin: 0;
	padding: 0;
	font-size: 12px;
	font-family: "Meiryo", "メイリオ", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", "ＭＳ ゴシック", "Osaka－等幅", Osaka-mono, monospace;
	font-weight: normal;
	font-style: normal;
	color: #4ebfcb;
	text-decoration: none;
	border: 0;
	word-wrap: break-word;
}

body,div,h1,h2,h3,h4,h5,h6,div,p,ul,ol,li,dl,dt,dd,form,input,textarea,pre,fieldset,blockquote,table,thead,tbody,tfoot,caption,th,td,
section,article,aside,nav,menu,canvas,details,figure,figcaption,footer,header,hgroup,summary { margin: 0; padding: 0; line-height: 1; }
p { margin: 0 0 1em 0; line-height: 26px; }
ul, li, dl, dt, dd { list-style-type: none; line-height: 1; }

a {
	cursor: pointer;
	color: #4ebfcb;
	text-decoration: none;
	outline: 0;
	transition: all 0.1s ease-in-out;
	-webkit-transition: all 0.1s ease-in-out;
	-moz-transition: all 0.1s ease-in-out;
	-o-transition: all 0.1s ease-in-out;
	-ms-transition: all 0.1s ease-in-out;
}

a:visited  { color: #4ebfcb; outline: 0; }
a:hover    { color: #4ebfcb; text-decoration: none; }
a:active   { color: #4ebfcb; text-decoration: none; }

a.blank[target=_blank] {
	margin: 0;
	padding: 0 20px 0 0;
	position: relative;
	top: 0;
	left: 0;
}

a.blank[target=_blank]:before {
	content: "";
	margin: 0;
	padding: 0;
	width: 10px;
	height: 6px;
	position: absolute;
	top: 3px;
	right: 3px;
	border: 1px solid #9165b8;
	border-top: 3px solid #9165b8;
	background: rgba(0, 0, 0, 0.3);
}

a.blank[target=_blank]:after {
	content: "";
	margin: 0;
	padding: 0;
	width: 10px;
	height: 6px;
	position: absolute;
	top: 0;
	right: 0;
	border: 1px solid #482563;
	border-top: 3px solid #482563;
	background: rgba(0, 0, 0, 0.3);
}

em, address { font-style: normal; }
strong      { line-height: 26px; font-size: 20px; font-weight: bold; color: #fff; }
del         { text-decoration: line-through; }
abbr        { cursor: help; border-bottom: 1px dotted #999; }
img         { vertical-align: text-bottom; border: 0; }
section,article,aside,nav,menu,canvas,details,figure,figcaption,footer,header,hgroup,summary { display: block; }

mark { display: inline; font-size: inherit; font-weight: inherit; background: #ff0; }

label { cursor: pointer; }

::selection      { color: #fff; background: #900; }
::-moz-selection { color: #fff; background: #900; }
				
:-moz-placeholder           { color: #a9a9a9; }
::-webkit-input-placeholder { color: #a9a9a9; }

ruby {
	display: inline-table;
	margin: 0;
	padding: 0;
	border: none;
	white-space: nowrap;
	text-indent: 0;
	vertical-align: text-bottom !important;
	text-decoration: none;
	text-align: center;
	line-height: 100%;
}

ruby rt, a:link ruby rt, a:visited ruby rt {
	display: table-header-group;
	margin: 0;
	padding: 0;
	border: none;
	font: inherit;
	font-size: 70%;
	line-height: 100%;
	text-decoration: none;
}

ruby rp { display: none; }

span.bold { font-weight: bold; }

.txt-center { text-align: center; }
.txt-right  { text-align: right; }

.txt-ind    { padding: 0 10px; }
.txt-fRight { float: right; }
.txt-fLeft  { float: left; }

.fL-img { float: left; margin: 0 20px 20px 0; padding: 0; }
.fR-img { float: right; margin: 0 0 20px 20px; padding: 0; }

/* clearfix start ------------------------------------------*/
.clearfix:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
}
* html .clearfix             { zoom: 1; } /* IE6 */
*:first-child+html .clearfix { zoom: 1; } /* IE7 */
/* clearfix end --------------------------------------------*/

/*----------------------------------------------------------------------------------------------------


 common


----------------------------------------------------------------------------------------------------*/
html     { margin: 0; padding: 0;	overflow-y: scroll; }
body     { margin: 0; padding: 0; }
#wrapper { margin: 0; padding: 0; border-top: 2px solid #4ebfcb; }

/*------------------------------------------------------------ 
 
 header
 
------------------------------------------------------------*/
#wrapper header { margin: 0 auto; padding: 0; width: 100%; height: 120px; background: #fff; }
#wrapper header h1 { margin: 30px auto; padding: 0; width: 950px; }
#wrapper header nav { margin: 0 auto; padding: 0; width: 950px; }

#wrapper header nav ul { float: right; clear: both; margin: 0; padding: 0; }
#wrapper header nav ul:after              { visibility: hidden; display: block; font-size: 0; content: " "; clear: both; height: 0; }
* html #wrapper header nav ul             { zoom: 1; } /* IE6 */
*:first-child+html #wrapper header nav ul { zoom: 1; } /* IE7 */

#wrapper header nav ul li { margin: 0; padding: 0; float: left; }
#wrapper header nav ul li a { display: block; margin: 0 0 0 -40px; padding: 0; width: 200px; height: 50px; line-height: 50px; text-align: center; }
#wrapper header nav ul li a:hover { color: #fff; text-decoration: none; background: url(../images/nav_on.png) 0 0 no-repeat; }

/*------------------------------------------------------------ 
 
 #content
 
------------------------------------------------------------*/
#wrapper #content { margin: 0; padding: 30px 0; background: #f6f6f6; }

/*------------------------------------------------------------ 
 
 footer
 
------------------------------------------------------------*/
#wrapper footer {
	margin: 0 auto;
	padding: 0;
	width: 950px;
	height: 100px;
	background: #fff;
}
#wrapper footer:after,
#wrapper footer:before {
	content: '';
	display: table;
}
#wrapper footer:after {
	clear: both;
}
#wrapper footer {
	zoom: 1;
}

#copyright { float: left; margin: 0 auto; padding: 10px 0 0; }
#wrapper footer p small { margin: 0; padding: 0; font-size: 10px; }

#footer-bnr a {
	display: block;
	float: right;
	width: 220px;
	margin: 10px 0 0;
}

#footer-bnr a:hover {
	filter: alpha(opacity=60);
	-moz-opacity: 0.60;
	opacity: 0.60;
	transition: all .25s ease-in-out;
	-webkit-transition: all .25s ease-in-out;
	   -moz-transition: all .25s ease-in-out;
		-ms-transition: all .25s ease-in-out;
		 -o-transition: all .25s ease-in-out;
			transition: all .25s ease-in-out;
}




/*----------------------------------------------------------------------------------------------------


 index.php


----------------------------------------------------------------------------------------------------*/
#content #main-visual { margin: 0 auto; padding: 0; width: 950px; height: 570px; }

/*----------------------------------------------------------------------------------------------------


 about


----------------------------------------------------------------------------------------------------*/
#about { margin: 0 auto; padding: 30px; width: 890px; min-height: 650px; position: relative; top:0; left: 0; background: #fff; background: url(../images/about_bg.jpg) 0 0 no-repeat; }
#about h1 { margin: 0 0 30px; padding: 0; }

#about dl * {
	font-family: "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
	font-size: 16px;
	color: #1ca7bc;
  -webkit-transform-origin: 0 0;
  -webkit-transform: scale(1, 1.01);
	-moz-transform-origin: 0 0;
	-moz-transform: scale(1, 1.01);
	-ms-transform-origin: 0 0;
	-ms-transform: scale(1, 1.02);
	-o-transform-origin: 0 0;
	-o-transform: scale(1, 1.01);
}


#about dl { margin: 0; padding: 0; width: 380px; }
#about dl:after { visibility: hidden; display: block; font-size: 0; content: " "; clear: both; height: 0; }
* html #about dl             { zoom: 1; } /* IE6 */
*:first-child+html #about dl { zoom: 1; } /* IE7 */

#about dl dt { float: left; margin: 0 0 10px; padding: 0; width: 80px; }
#about dl dd { float: right; margin: 0 0 10px; padding: 0; width: 300px; position: relative; top: 0; left: 0; }
#about dl dd:before { content: ":"; margin: 0; padding: 0; position: absolute; top: 0; left: -20px; }

#about #map_canvas { position: absolute; bottom: 70px; right: 30px; }
#about p { margin: 0; padding: 0; position: absolute; bottom: 30px; right: 30px; }
#about p small {
	margin: 0;
	padding: 0;
	font-family: "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
	font-size: 14px;
	color: #1ca7bc;
  -webkit-transform-origin: 0 0;
  -webkit-transform: scale(1, 1.01);
	-moz-transform-origin: 0 0;
	-moz-transform: scale(1, 1.01);
	-ms-transform-origin: 0 0;
	-ms-transform: scale(1, 1.02);
	-o-transform-origin: 0 0;
	-o-transform: scale(1, 1.01);
}

/*----------------------------------------------------------------------------------------------------


 photo


----------------------------------------------------------------------------------------------------*/
#photo { margin: 0 auto; padding: 30px; width: 890px; background: #fff; }
#photo h1 { margin: 0 0 30px; padding: 0; }

#photo ul { margin: 0; padding: 0; }
#photo ul:after { visibility: hidden; display: block; font-size: 0; content: " "; clear: both; height: 0; }
* html #photo ul             { zoom: 1; } /* IE6 */
*:first-child+html #photo ul { zoom: 1; } /* IE7 */

#photo ul li { float: left; margin: 0 10px 10px 0; padding: 0; width: 170px; height: 170px; background: #4ebfcb; }
#photo ul li:nth-of-type(5n) { margin-right: 0; }

/*----------------------------------------------------------------------------------------------------


 contact


----------------------------------------------------------------------------------------------------*/

#contact { margin: 0 auto; padding: 30px; width: 890px; min-height: 650px; position: relative; top:0; left: 0; background: #fff; }
#contact h1 { margin: 0 0 120px; padding: 0; }

#contact > ul * {
	font-family: "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
	font-size: 16px;
	color: #1ca7bc;
  -webkit-transform-origin: 0 0;
  -webkit-transform: scale(1, 1.01);
	-moz-transform-origin: 0 0;
	-moz-transform: scale(1, 1.01);
	-ms-transform-origin: 0 0;
	-ms-transform: scale(1, 1.02);
	-o-transform-origin: 0 0;
	-o-transform: scale(1, 1.01);
}

#contact > ul { margin: 0 auto 120px; padding: 0; width: 720px; height: 300px; background: #fff; position: relative; top: 0; left: 0; }
#contact > ul:after { visibility: hidden; display: block; font-size: 0; content: " "; clear: both; height: 0; }
* html #contact > ul             { zoom: 1; } /* IE6 */
*:first-child+html #contact > ul { zoom: 1; } /* IE7 */

#contact > ul li {
	float: left;
	margin: 0;
	padding: 160px 0 0;
	width: 240px;
	height: 240px;
	text-align: center;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	position: relative;
	top: 0;
	left: 0;
}

#contact > ul li:nth-of-type(2) { padding: 40px 0 0; }
#contact > ul li:nth-of-type(2) a { cursor: auto; }

#contact > ul li a * {
	font-size: 18px;
	line-height: 35px; 
	transition: all 0.2s ease-in-out;
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	-ms-transition: all 0.2s ease-in-out;
}
	
#contact > ul li a:hover * {
	color: #fff;
	transition: all 0.2s ease-in-out;
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	-ms-transition: all 0.2s ease-in-out;
}

#contact > ul li a:hover:before {
	content: "";
	margin: 0;
	padding: 0;
	position: absolute;
	top: 50px;
	left: -50px;
	border-left: 175px solid transparent;
	border-right: 175px solid transparent;
	border-bottom: 250px solid #4ebfcb;
}

#contact > ul li:nth-of-type(2) a p { line-height: 40px; }
#contact > ul li:nth-of-type(2) a:hover:before { top: 20px; border-bottom: none; border-top: 250px solid #4ebfcb; }

/*------------------------------------------------------------ 
 
 #mail-form
 
------------------------------------------------------------*/
#mail-form { margin: 0 auto; padding: 0; width: 620px; } 

#mail-form dl { margin: 0; padding: 0; width: 620px; }
#mail-form dl:after { visibility: hidden; display: block; font-size: 0; content: " "; clear: both; height: 0; }
* html #mail-form dl             { zoom: 1; } /* IE6 */
*:first-child+html #mail-form dl { zoom: 1; } /* IE7 */

#mail-form dl dt { float: left; clear: both; margin: 0 0 20px; padding: 0; width: 200px; line-height: 40px; }
#mail-form dl dt span { margin: 0; padding: 0 0 0 15px; font-weight: bold; }
#mail-form dl dd { float: right; margin: 0 0 20px; padding: 0; width: 420px; line-height: 40px; position: relative; top: 0; left: 0; }

#mail-form dl dd input[type=text],
#mail-form dl dd input[type=email],
#mail-form dl dd input[type=tel] {
	margin: 0;
	padding: 0 10px;
	width: 420px;
	height: 40px;
	line-height: 40px;
	color: #000;
	border: 1px solid #4ebfcb;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
}

#mail-form dl dd input::-moz-placeholder    { color: #4ebfcb; }
#mail-form dl dd textarea::-moz-placeholder { color: #4ebfcb; }



#mail-form dl dd ul { margin: 0; padding: 0; width: 420px; }

#mail-form dl dd ul.horizontal { margin: 0; padding: 0; width: 420px; }
#mail-form dl dd ul.horizontal:after { visibility: hidden; display: block; font-size: 0; content: " "; clear: both; height: 0; }
* html #mail-form dl dd ul.horizontal             { zoom: 1; } /* IE6 */
*:first-child+html #mail-form dl dd ul.horizontal { zoom: 1; } /* IE7 */

#mail-form dl dd ul.horizontal li input[type=text]#addr_01 { float: left; margin: 0 0 20px; padding: 0 10px; width: 120px; }
#mail-form dl dd ul.horizontal li input[type=text]#addr_02 { float: right; margin: 0; padding: 0 10px; width: 280px; }

#mail-form dl dd ul.vertical { margin: 0; padding: 0; width: 420px; }
#mail-form dl dd ul.vertical li { margin: 0 0 10px; padding: 0; position: relative; top: 0; left: 0; }
#mail-form dl dd ul.vertical li input[type=checkbox]  { margin: 0 10px 0 0; padding: 0; position: relative; top: 2px; left: 0; }

#mail-form dl dd textarea {
	margin: 0;
	padding: 10px;
	width: 420px;
	min-height: 330px;
	line-height: 24px;
	color: #000;
	border: 1px solid #4ebfcb;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
}

#mail-form #submit input[type=submit] {
	cursor: pointer;
	display: block;
	margin: 0 auto;
	padding: 0;
	width: 200px;
	height: 50px;
	line-height: 50px;
	text-align: center;
	background: url(../images/nav.png) 0 0 no-repeat;
	transition: all 0.1s ease-in-out;
	-webkit-transition: all 0.1s ease-in-out;
	-moz-transition: all 0.1s ease-in-out;
	-o-transition: all 0.1s ease-in-out;
	-ms-transition: all 0.1s ease-in-out;
}

#mail-form #submit input[type=submit]:hover {
	color: #fff;
	background: url(../images/nav_on.png) 0 0 no-repeat;
	transition: all 0.1s ease-in-out;
	-webkit-transition: all 0.1s ease-in-out;
	-moz-transition: all 0.1s ease-in-out;
	-o-transition: all 0.1s ease-in-out;
	-ms-transition: all 0.1s ease-in-out;
}

#mail-form dl dd strong { padding: 6px 10px; font-size: 11px; position: absolute; top: 0; right: -100px; background: #4ebfcb; }

/*------------------------------------------------------------ 
 
 confirm.php
 
------------------------------------------------------------*/
#mail-form #confirm { margin: 0; padding: 0; }
#mail-form #confirm dt { margin: 0 0 20px; padding: 0; }
#mail-form #confirm dd { display: block; float: left; width: 400px; padding: 0 10px; background: #fafafa; }
#mail-form #confirm #con-txt { width: 390px; margin: 0 0 30px; padding: 15px; line-height: 24px; }
#mail-form #confirm dd ul li { margin: 0; padding: 7px 5px 5px;}

#mail-form .submit-area { margin: 0 40px 30px auto; padding: 0; width: 400px; }
#mail-form .submit-area:after { visibility: hidden; display: block; font-size: 0; content: " "; clear: both;	height: 0; }
* html #mail-form .submit-area             { zoom: 1; } /* IE6 */
*:first-child+html #mail-form .submit-area { zoom: 1; } /* IE7 */

#mail-form .submit-area li {
	cursor: pointer;
	float: left;
	width: 200px;
	height: 50px;
	margin: 0 0 0 -41px;
	line-height: 50px;
	text-align: center;
	background: url(../images/nav.png) 0 0 no-repeat;
	transition: all 0.1s ease-in-out;
	-webkit-transition: all 0.1s ease-in-out;
	-moz-transition: all 0.1s ease-in-out;
	-o-transition: all 0.1s ease-in-out;
	-ms-transition: all 0.1s ease-in-out;
}

#mail-form .submit-area li:hover {
	background: url(../images/nav_on.png) 0 0 no-repeat;
	transition: all 0.1s ease-in-out;
	-webkit-transition: all 0.1s ease-in-out;
	-moz-transition: all 0.1s ease-in-out;
	-o-transition: all 0.1s ease-in-out;
	-ms-transition: all 0.1s ease-in-out;
}

#mail-form .submit-area li a { display: block; width: 200px; height: 50px; }
#mail-form .submit-area li input[type=submit] { display: block; width: 200px; height: 50px; background: none; }
#mail-form .submit-area li a:hover,
#mail-form .submit-area li input[type=submit]:hover { color: #fff; }

/*------------------------------------------------------------ 
 
 complete.php
 
------------------------------------------------------------*/
#contact .txt-center { margin: 30px 0 0 0 ; }

#contact .txt-center a {
	cursor: pointer;
	display: block;
	margin: 0 auto;
	padding: 0;
	width: 200px;
	height: 50px;
	line-height: 50px;
	text-align: center;
	background: url(../images/nav.png) 0 0 no-repeat;
}

#contact .txt-center a:hover { color: #fff; background: url(../images/nav_on.png) 0 0 no-repeat; }














