/* CSS Document */
/*COMMON-CSS*/
ul,
ol,
dl,
dd,
dt,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
body,
html,
p,
blockquote,
textarea,
table,
td,
th,
li {
	margin: 0px;
	padding: 0px;
	border: 0px;
	text-decoration: none;
	font: 12px/22px "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color: #333;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

img {
	border: none;
	vertical-align: bottom;
}

strong {
	font-style: normal;
}

em {
	font-weight: normal;
	font-style: normal;
}

form {
	margin: 0px;
	padding: 0px;
}

ol,
ul,
li,
dl,
dd,
dt {
	list-style: none;
	margin: 0px;
	padding: 0px;
}

input {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
}

a {
	color: #0066CC;
}

a:hover {
	color: #F03;
}

img {
	border: none;
	vertical-align: bottom;
}

p.page_title {
	margin: 15px 0px 0px 0px;
}

a:hover img {
	filter: alpha(opacity=50);
	opacity: 0.5;
}

/*レイアウト----------------------------------------------- */
body {
	background: url(../common_img/body_back.jpg) repeat-x;
}

#wrapper {
	margin: 0 auto;
	width: 950px;
	text-align: left;
}

.top_left,
.top_right {
	margin: 10px 0px 0px 0px;
}

.top_left {
	float: left;
	width: 690px;
	overflow: hidden;
}

.top_right {
	float: right;
	width: 230px;
	overflow: hidden;
}

#top_pagecell {
	clear: both;
	padding: 5px 0px 15px 0px;
	overflow: hidden;
}

#pagecell {
	overflow: hidden;
	margin: 0px auto;
	padding: 15px 85px 20px 85px;
	width: 780px;
	clear: both;
	background: #FFFFFF;
}

#pagecell.reason {
	overflow: hidden;
	margin: 0px auto;
	padding: 15px 0px 20px 0px;
	width: 950px;
	clear: both;
	background: none;
}

/*HEAD------------------------------------------------------------*/
h1 {
	clear: both;
	padding: 5px 0px 0px 0px;
	color: #fff;
	font-size: 12px;
	line-height: 12px;
	font-weight: bold;
	text-align: left;
}

h2 {
	margin: 0px 0px 10px 0px;
}

/*HEADER----------------------------------------------------------*/
#header {
	height: 65px;
	padding: 10px 0px 0px 0px;
	text-align: left;
}

/*GNAVI------------------------------------------------------------*/
#gnavi {
	clear: both;
	text-align: center;
	height: 65px;
}

#gnavi ul li {
	float: left;
}

#sub_navi ul li a:hover img {
	filter: alpha(opacity=60);
	opacity: 0.6;
}

/*GNAVI-END------------------------------------------------------------*/
.intro {
	width: 690px;
	margin: 0px 0px 10px 0px;
	overflow: hidden;
	height: 230px;
	background: url(../common_img/navigator_back.jpg) no-repeat;
}

.intro p {
	padding: 10px 0px 0px 10px;
	font-size: 13px;
	line-height: 21px;
}

.intro p span {
	font-weight: bold;
	color: #CC0000;
}

/*CONTENS-------------------------------------------------------------*/
.coupon {
	clear: both;
	margin: 0px 0px 20px 0px;
	overflow: hidden;
}

.coupon a:hover img,
.contents_coupon a:hover img {
	filter: alpha(opacity=60);
	opacity: 0.6;
}

.contents_coupon {
	clear: both;
	margin: 0px 35px 20px 35px;
	overflow: hidden;
}

#topicpath {
	overflow: hidden;
	margin: 0px 0px 10px 0px;
	height: 20px;
}

#topicpath li {
	float: left;
	margin: 0px 10px 0px 0px;
}

/*TOP_RIGHT----------------------------------------------------------*/
.top_right h5 {
	padding: 5px 5px 5px 5px;
	background: url(../common_img/side_title_back.gif) repeat-x;
	font-weight: bold;
	font-size: 120%;
}

a.case {
	margin-bottom: 15px;
	padding: 10px;
	border-radius: 5px;
	background: #11468f;
	font-size: 140%;
	color: #fefd1c;
	display: block;
	position: relative;
}

a.case::after {
	position: absolute;
	top: 50%;
	right: 20px;
	display: block;
	content: '';
	width: 8px;
	height: 8px;
	margin-top: -4px;
	border-top: 2px solid #fefd1c;
	border-right: 2px solid #fefd1c;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}


/*SHOP--------------------------------------------------*/
.shop_list {
	margin: 0px 0px 10px 0px;
	font-size: 12px;
	color: #333333;
	text-align: center;
}

.shop_list th.shop {
	width: 170px;

}

.column_left {
	float: left;
	width: 440px;
	font-size: 14px;
	line-height: 180%;
	color: #333333;
}

.column_right {
	float: right;
	margin: 0px 0 0 0px;
	width: 168px;
}

/*TOP_RESON-----------------------------------------------------*/


.top_reason_column.left {
	float: left;
}

.top_reason_column.right {
	float: right;
}

.top_reason_column {
	padding: 0px 0px 10px 0px;
	margin: 0px 0px 10px 0px;
	width: 335px;
	color: #333333;
	overflow: hidden;
}

.top_reason_column .text p {
	height: 130px;
	font-size: 12px;
	line-height: 18px;
	color: #000000;
}

.top_reaon_bottom .photo {
	float: left;
	padding: 0 0px 0 10px;
}

.top_reaon_bottom p.detail {
	padding: 0 10px 5px 10px;
	border-right: 1px solid #CCC;
	border-bottom: 1px solid #CCC;
	border-left: 1px solid #CCC;
}

.top_reaon_bottom .text img {
	margin-top: 5px;
	float: right;
}

/*SHOP_MAP------------------------------------------------------------*/
.shop_map {
	margin: 0px 0px 20px 0px;
	padding: 5px;
	border: 1px solid #999;
	clear: both;
	overflow: hidden;
}

.shop_map .photo {
	float: left;
	margin: 0px 10px 0px 0px;
	width: 190px;
}

.shop_map ul {
	margin: 0px 0px 0px 210px;
}

.shop_map ul li {
	line-height: 20px;
	font-size: 13px;
}

.to_top {
	text-align: right;
}

/*RIGHT-----------------------------------------------------------------*/
.top_contents_r {
	float: left;
	margin: 10px 0px 0px 0px;
	width: 204px;
}

/*-------------------------------------------------------------*/
/*-------------------------------------------------------------*/
table.data {
	margin: 0px 0px 10px 0px;
	width: 99%;
	text-align: center;
	border: 1px solid #BBB;
	border-collapse: collapse;
	border-spacing: 0px;
}

table.data th,
table.data td {
	padding: 5px 5px 5px 5px;
	line-height: 14px;
	vertical-align: middle;
	border: 1px solid #BBB;
	text-align: left;
	font-size: 12px;
	color: #000000;
}

table.data th {
	width: 160px;
	font-weight: bold;
}

table.data td input,
table.data td option {
	font-size: 14px;
}

table.data td input.w320 {
	width: 320px;
}

table.data td input.w160 {
	width: 160px;
}

table.data td input.w80 {
	width: 80px;
}

p.form_txt {
	margin: 0px 0px 20px 0px;
	text-align: left;
}

/*-----------------------------------------------------------------*/
.bold {
	font-weight: bold;
}

.brown {
	color: #703f0f;
}

.blue {
	color: #003cc7;
}

.red {
	color: #ff0000;
}

.green {
	color: #060;
}

.orange {
	color: #ff6600;
}

.small {
	font-size: 10px;
}

p.text {
	text-align: left;
	margin: 0px 0px 10px 0px;
}

.error {
	overflow: hidden;
	margin: 10px 0px 10px 0px;
	padding: 10px;
	background: #FFFF99;
	color: #FF0000;
	text-align: left;
	font-size: 12px;
	line-height: 18px;
	font-weight: bold;
}

.error_contact {
	text-align: center;
	color: #FF0000;
	font-size: 12px;
	font-weight: bold;
}

/*CLASS*/
.center {
	text-align: center;
}

/*CHIRASHI------------------------------------------*/
.chirashi {
	margin: 0px 0px 10px 0px;
	padding: 10px 0px;
	background: #ffffff;
	border-top: none;
	border: 1px solid #000066;
}

/*SIDE-BLOG-----------------------------------------------------------------*/
.side_blog dl dt,
.side_blog dl dd {
	font-size: 12px;
	line-height: 18px;
}

.side_blog dl dd {
	margin: 0px 0px 5px 0px;
}

/*PHOTO_BLOG------------------------------------------------*/
.photo_blog {
	clear: both;
	overflow: hidden;
	border-bottom: 1px solid #FFF;
}

.photo_blog dt {
	float: left;
	margin: 0px 5px 0px 0px;
}

.photo_blog dd {
	font-size: 11px;
}

/*SIDE_SHOP-------------------------------------------------------------*/
.side_shop ul {
	margin: 0px 0px 5px 0px;
}

.side_shop ul li.name {
	font-weight: bold;
	color: #FF3300;
}

.side_shop ul li {
	font-size: 11px;
	line-height: 14px;
}

ul.side_course {
	margin: 0px 0px 15px 0px;
}

/*CLASSS*/
.column,
.side .column {
	clear: both;
	overflow: hidden;
	margin: 0px 0px 10px 0px;
}

.left {
	float: left;
}

.right {
	float: right;
}

.small {
	font-size: 12px;
}

/*TABLE------------------------------------------------------*/
table.reason_data {
	width: 100%;
	text-align: center;
	border: 1px solid #BBB;
	border-collapse: collapse;
	border-spacing: 0px;
}

table.reason_data th,
table.reason_data td {
	padding: 3px 3px 3px 3px;
	border: 1px solid #BBB;
	font-size: 14px;
}

table.reason_data th {
	white-space: nowrap;
	vertical-align: middle;
	background: #E0EF9E;
	font-weight: bold;
}

table.reason_data td.name {
	background: #FFC;
	font-weight: bold;
}

/*price_data-----------------------------------------------------*/
table.price_data {
	width: 100%;
	margin: 15px 0px 10px 0px;
	text-align: center;
	border: 1px solid #999;
	border-collapse: collapse;
	border-spacing: 0px;
}

table.price_data th {
	font-size: 14px;
	border: 1px solid #999;
	color: #000;
	padding: 8px 2px 8px 2px;
	background: #FF9900;
}

table.price_data td {
	border: 1px solid #999;
	padding: 10px 2px 10px 2px;
	font-size: 12px;
	background: #EEE;
	font-weight: bold;
}

table.price_data td.price {
	padding: 0px 10px 0px 0px;
	font-size: 12px;
	text-align: right;
	background: #FFF;
	font-weight: bold;
}

table.price_data td.discount {
	background: #FFFFD5;
	font-size: 14px;
}

table.price_data td.max {
	padding: 8px 10px 8px 2px;
	background: #F9F36D;
	font-size: 14px;
}

table.price_data th {
	white-space: nowrap;
	font-weight: bold;
}

table.price_data td {
	line-height: 18px;
}

/*---------------------------------------------------*/
ul.tel_list li {
	float: left;
	width: 49%;
}

.side_bnr {
	margin: 0px 0px 10px 0px;
}

/*INFO--------------------------------------------------------------*/
div.info {
	clear: both;
	overflow: hidden;
	margin: 0px 0px 10px 0px;
}

div.info div.day,
div.info div.txt {
	padding: 0px 0px 5px 0px;
	border-bottom: 1px dotted #999;
}

div.info div.day {
	float: left;
	width: 100px;
}

div.info div.txt {
	margin: 0px 0px 0px 100px;
}

/**/
textarea.contact {
	border: 1px solid #999;
}

.arrow {
	text-align: center;
	clear: both;
}

.page_top {
	clear: both;
	padding: 10px 0px 15px 0px;
	text-align: right;
}

/*SHOP------------------------------------------------------------*/
table.shop_list {
	width: 100%;
	margin: 0 auto;
	border: 1px solid #999;
	border-collapse: collapse;
	border-spacing: 0px;
	clear: both;
}

table.shop_list th,
table.shop_list td {
	padding: 5px;
}

table.shop_list th {
	font-size: 14px;
	border: 1px solid #999;
	background: #FC0;
	font-weight: bold;
	text-align: left;
}

table.shop_list td {
	border: 1px solid #999;
	line-height: 20px;
	text-align: left;
}

table.shop_list td.shop {
	background: #F9F9F9;
	font-size: 14px;
	font-weight: bold;
	text-align: center;
	width: 250px;
}

table.shop_list td.shop_tel {
	width: 170px;
}

table.shop_list td.logo {
	text-align: center;
	width: 95px;
}

table.price_data th {
	white-space: nowrap;
	font-weight: bold;
}

.shop_icon ul li {
	float: left;
	height: 35px;
	width: 33%;
}

/*FLOW---------------------------------------------------------*/
.flow_column {
	overflow: hidden;
	margin: 0px auto;
	padding: 10px 0px 0px 0px;
	clear: both;
}

.flow_column h3 {
	margin: 0;
}

.flow_column h3 img {
	margin: 19px 0px 5px 0px;
}

.flow_left {
	float: left;
	width: 245px;
	padding-left: 5px;
}

.flow_right {
	float: right;
	width: 625px;
	text-align: left;
}

.flow_right p {
	padding-left: 2px;
}

/*FEATURE---------------------------------------------*/
#pagecell.feature h3 {
	margin: 0px 0px 10px 0px;
}

#pagecell.feature .column .left {
	width: 480px;
	overflow: hidden;
}

#pagecell.feature .column .right {
	width: 290px;
}

#pagecell.feature .column .right img {
	border: 1px solid #666;
	margin: 0px 0px 10px 0px;
}

#pagecell.feature .column .left p {
	margin: 0px 0px 20px 0px;
}

/*COURSE----------------------------------------------*/
ul.course li {
	margin: 0px 0px 10px 0px;
}


/*FOOTER-------------------------------------------------*/
#footer {
	width: 100%;
	text-align: center;
	clear: both;
	padding: 0px 0px 15px 0px;
}

.footer_txt {
	text-align: center;
	color: #FFFFFF;
	font-size: 11px;
}

ul.footer_menu li {
	font-size: 12px;
}

ul.footer_menu li {
	display: inline;
}

ul.footer_menu li a {
	text-decoration: underline;
}

/*CLASS*/
.bnr {
	text-align: center;
	margin: 0px auto 20px auto;
}

/*PULLDOWN-----------------------------------------------------------*/
ul#pulldownmenu {
	float: left;
	width: inherit;
	z-index: 1;
	*zoom: 1;
	/*forIE6,7*/
}

ul#pulldownmenu:after {
	content: "";
	display: block;
	clear: both;
}

ul#pulldownmenu li {
	width: 160px;
	height: 65px;
	float: left;
	z-index: 1;
	*zoom: 1;
	/*forIE6,7*/
	white-space: nowrap;
	cursor: hand;
}

ul#pulldownmenu li ul {
	visibility: hidden;
	position: absolute;
}

ul#pulldownmenu li:hover>ul {
	visibility: visible;
}

ul#pulldownmenu li ul li {
	clear: left;
	position: relative;
	height: 40px;
}

ul#pulldownmenu li ul li a {
	height: 40px;
	background: #FFF;
}

ul#pulldownmenu li ul li ul {
	top: 0;
	left: 100%;
}

ul#pulldownmenu li a {
	display: block;
	cursor: hand;
}

* html ul#pulldownmenu li a {
	/*forIE6*/
	zoom: 1;
}

/* top_infobox */

.top_infobox {
	width: calc(100% - 60px - 2px);
	max-width: 900px;
	padding: 25px 20px;
	margin: 0px auto;
	margin-bottom: 20px;
	background-color: #FFFDF1;
	border: solid 2px red;
}

.top_infobox_title {
	font-size: 20px;
	line-height: 1;
	margin-bottom: 15px;
	text-align: center;
	color: red;
	font-weight: bold;
}

.top_infobox p {
	font-size: 16px;
	line-height: 32px;
}

.top_infobox p+p {
	margin-bottom: 10px;
}