@charset "utf-8";

@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);

/* =============================================================================
   HTML5 display definitions
   ========================================================================== */

article, aside, details, figcaption, figure, footer, header, hgroup, nav, section { display: block; }
audio, canvas, video { display: inline-block; *display: inline; *zoom: 1; }
audio:not([controls]) { display: none; }
[hidden] { display: none; }

/* =============================================================================
   Base
   ========================================================================== */

/*
 * 1. Correct text resizing oddly in IE6/7 when body font-size is set using em units
 * 2. Prevent iOS text size adjust on device orientation change, without disabling user zoom: h5bp.com/g
 */

html { font-size: 100%; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }

html, button, input, select, textarea {
	font-family: "メイリオ", Meiryo, "游ゴシック Medium","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color: #333;
}


body {
	color: #333;
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: 0px;
	margin-left: 0px;
	padding-top: 0px;
	padding-right: 0px;
	padding-bottom: 0px;
	padding-left: 0px;
	background-color: #FFFFFF;
}
.mincho {
	font-family: "游明朝", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;
}

img, object, embed, video {
	max-width: 100%;
}
img {
	height:auto;
	vertical-align:middle;
	border:none;
}
i, em {
	font-family:"游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
p {
	margin-top: 0px;
	margin-bottom: 15px;
	padding-top: 0px;
	padding-right: 0px;
	padding-bottom: 0px;
	padding-left: 0px;
}

table {
}

h2 {
	background-image: url(images/h2_bg.png);
	background-repeat: no-repeat;
	background-position: left top;
	color: #FFFFFF;
	font-weight: bold;
	font-size: 26px;
	line-height: 28px;
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: 20px;
	margin-left: 0px;
	padding-top: 22px;
	padding-left: 60px;
	padding-bottom: 8px;
	padding-right: 5px;
	clear: both;
}

h3 {
	border-left: 3px solid #502124;
	padding-left: 10px;
	font-size: 20px;
	line-height: 22px;
	font-weight: bold;
	padding-top: 5px;
	padding-bottom: 3px;
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: 15px;
	margin-left: 0px;
	clear:both;
}

h4 {
	font-size: 16px;
	line-height: 18px;
	font-weight: bold;
	background-color: #EEEEEE;
	padding-top: 5px;
	padding-right: 5px;
	padding-bottom: 5px;
	padding-left: 5px;
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: 15px;
	margin-left: 0px;
	clear:both;
}


/* =============================================================================
   Links
   ========================================================================== */

a { color: #8C0000; }
a:visited { color: #8C0000; }
a:hover { color: #CC0000; }
a:focus { outline: thin dotted; }

/* Improve readability when focused and hovered in all browsers: h5bp.com/h */
a:hover, a:active { outline: 0; }


/* =============================================================================
   smartmenus
   ========================================================================== */


#main-menu {
	max-width:1000px;
	margin-left:auto;
	margin-right:auto;
}
#main-menu > li a {
  font-family: 'Noto Sans Japanese';
  font-weight: 500;
  font-size:14px;
  line-height:1.1em;
}
@media (min-width: 1111px) {
	#main-menu > li {
		float: none;
		display: table-cell;
		width: 1%;
		text-align: center;
	}
}




.ggmap {
position: relative;
padding-bottom: 56.25%;
padding-top: 30px;
height: 0;
overflow: hidden;
}
 
.ggmap iframe,
.ggmap object,
.ggmap embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}




/* =============================================================================
   Lists
   ========================================================================== */



/* =============================================================================
   Embedded content
   ========================================================================== */


/*
 * Correct overflow not hidden in IE9
 */

svg:not(:root) { overflow: hidden; }


/* =============================================================================
   Figures
   ========================================================================== */

figure { margin: 0; }


/* =============================================================================
   Forms
   ========================================================================== */

form { margin: 0; }


/* Indicate that 'label' will shift focus to the associated form element */
label { cursor: pointer; }

button, input[type="text"],input[type="password"],input[type="password"],input[type="number"], select, textarea {
	font-size: 100%;
	margin-top: 0px;
	margin-right: 0px;
	margin-left: 0px;
	margin-bottom: 5px;
	vertical-align: baseline;
*vertical-align: middle;
	border: 1px solid #CCCCCC;
}

input:required {
  background-color: #FFFFFF !important;
}

.btn {
	font-size: 14px;
	background-color: #006699;
	border: 1px solid #DDD;
	color: #FFF;
	padding-top: 10px;
	padding-right: 20px;
	padding-left: 20px;
	padding-bottom: 10px;
}
.btn2 {
	background-color: #666666;
	border: 1px solid #DDD;
	color: #FFF;
	padding-top: 8px;
	padding-right: 16px;
	padding-left: 16px;
	padding-bottom: 8px;
}



/* =============================================================================
   Design
   ========================================================================== */

.text10 {
	font-size: 10px;
	line-height: 12px;
}
.text12 {
	font-size: 12px;
	line-height: 16px;
}
.text14 {
	font-size: 14px;
	line-height: 18px;
}
.text16 {
	font-size: 16px;
	line-height: 20px;
}
.text18 {
	font-size: 18px;
	line-height: 24px;
}
.text20 {
	font-size: 20px;
	line-height: 26px;
}
.text22 {
	font-size: 22px;
	line-height: 28px;
}
.text_normal {
	font-weight: normal;
}

.text_red {
	color: #F00;
}
.text_blue {
	color: #06C;
}
.text_white {
	color: #FFF;
}

.align_center {
	text-align: center;
}
.align_right {
	text-align: right;
}
.topline1 {
	border-top-width: 2px;
	border-top-style: solid;
	border-top-color: #CCC;
	padding-top: 15px;
	padding-bottom: 10px;
}
.topline2 {
	border-top-width: 1px;
	border-top-style: dashed;
	border-top-color: #CCC;
	padding-top: 8px;
	padding-bottom: 8px;
}
.underline1 {
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #CCC;
}
.underline2  {
	border-bottom-width: 1px;
	border-bottom-style: dashed;
	border-bottom-color: #CCC;
}

.waku1 {
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: 15px;
	margin-left: 0px;
	padding-bottom: 15px;
	padding-left: 2%;
	padding-right: 2%;
	width: 96% !important;
	background-repeat: repeat-x;
	padding-top: 15px;

	/* box-shadow */
	box-shadow:0px 0px 0px 1px #CCCCCC inset;
	-moz-box-shadow:0px 0px 0px 1px #CCCCCC inset;
	-webkit-box-shadow:0px 0px 0px 1px #CCCCCC inset;
}

.waku2 {
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: 15px;
	margin-left: 0px;
	padding-bottom: 5px;
	padding-left: 2%;
	padding-right: 2%;
	width: 96% !important;
	background-image: url(images/parts/waku1_bg.png);
	background-repeat: repeat-x;
	padding-top: 10px;
}

.waku3 {
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: 15px;
	margin-left: 0px;
	padding-top: 15px;
	padding-bottom: 15px;
	padding-left: 1.5%;
	padding-right: 1.5%;
	width: 97% !important;

	/* box-shadow */
	box-shadow:0px 0px 0px 2px #CCCCCC inset;
	-moz-box-shadow:0px 0px 0px 2px #CCCCCC inset;
	-webkit-box-shadow:0px 0px 0px 2px #CCCCCC inset;

}


.waku_form {
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: 15px;
	margin-left: 0px;
	padding-bottom: 10px;
	padding-left: 3%;
	padding-right: 3%;
	width: 94% !important;
	padding-top: 10px;
	background-color: #F0F0F0;
}

table {
	border-collapse:collapse;
}

.table1 table {
	display:table;
	width:100%;
	border-collapse:collapse;
}
.table1 tr {
	display:table-row;
	width:100%;
}
.table1 th {
	display: table-cell;
	padding: 9px;
	vertical-align: top;
	text-align: left;
	background-color: #EEEEEE;
	border: 1px solid #CCCCCC;
}
.table1 td {
	display:table-cell;
	padding:9px;
	vertical-align:top;
	border: 1px solid #CCCCCC;
}




/* ==|== non-semantic helper classes ========================================
   Please define your styles before this section.
   ========================================================================== */

/* For image replacement */
.ir { display: block; border: 0; text-indent: -999em; overflow: hidden; background-color: transparent; background-repeat: no-repeat; text-align: left; direction: ltr; *line-height: 0; }
.ir br { display: none; }

/* Hide from both screenreaders and browsers: h5bp.com/u */
.hidden { display: none !important; visibility: hidden; }

/* Hide only visually, but have it available for screenreaders: h5bp.com/v */
.visuallyhidden { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }

/* Extends the .visuallyhidden class to allow the element to be focusable when navigated to via the keyboard: h5bp.com/p */
.visuallyhidden.focusable:active, .visuallyhidden.focusable:focus { clip: auto; height: auto; margin: 0; overflow: visible; position: static; width: auto; }

/* Hide visually and from screenreaders, but maintain layout */
.invisible { visibility: hidden; }

/* Contain floats: h5bp.com/q */
.clearfix:before, .clearfix:after { content: ""; display: table; }
.clearfix:after { clear: both; }
.clearfix { *zoom: 1; }
