@charset "utf-8";

/* ------------------------------------------------------------------
 sub_common.css
 ------------------------------------------------------------------*/
/* ------------------------------------------------------------------
  共通パーツ
 ------------------------------------------------------------------*/
/* ---------- 見出し ----------*/
/* h1 */
.h1_box {
	width: 760px;
	min-height:52px;
	*height:52px;
	background-image:url(../../shared/h1_bg.jpg);
	background-repeat:no-repeat;
	background-position:top;
	background-color:#000000;
	margin-bottom:30px;
}

h1.h1_txt {
	font-size: 130%;
	line-height: 140%;
	color:#FFFFFF;
	font-weight:bold;
	padding:15px 10px 10px 25px;
}

.h1_box_920 {
	width: 920px;
	min-height:52px;
	*height:52px;
	background-image:url(../../shared/h1_bg_920.jpg);
	background-repeat:no-repeat;
	background-position:top;
	background-color:#000000;
	margin-bottom:30px;
}

/* h2 */
.h2_box1 {
	width:760px;
	min-height:36px;
	*height:36px;
	background-image:url(../../shared/h2_bg_03.gif);
	background-position:left;
	background-repeat:repeat-y;
	margin-bottom:25px;
}

.h2_box2 {
	width:760px;
	min-height:36px;
	*height:36px;
	background:url(../../shared/h2_bg_01.gif) no-repeat;
	background-position:top;
}

.h2_box3 {
	width:760px;
	min-height:36px;
	*height:36px;
	background:url(../../shared/h2_bg_02.gif) no-repeat;
	background-position:bottom;
}

h2.h2_txt {
	color:#69708b;
	font-size: 110%;
	line-height: 140%;
	font-weight:bold;
	padding:10px 20px 10px 20px;
}

/* h3 */
h3 {
}


/* ---------- 画像＆テキスト ----------*/
/* 画像左周り */
img.left{
	float:left;
	margin:0 10px 10px 0;
}

/* 画像右周り */
img.right{
	float:right;
	margin:0 0 10px 10px;
}

/* テキスト左周り */
.txt_left{
	float:left;
}

/* テキスト右周り */
.txt_right{
	float:right;
}

.txt_align_right {
	text-align:right;
}

.txt_align_center {
	text-align:center;
}


/* 周りこみ解除 */
.clear {
	clear:both;
}

/* 標準テーブル */
.g_table{
	margin-top:1px;
	border-color:#CCCCCC;
	border-style:solid;
	border-width:1px;
}

.g_table td {
	border-color:#CCCCCC;
	border-style:solid;
	border-width:1px;
	padding:4px;
}


/* ロールオーバー */
.imgover {
	max-width: 90%;
	height: auto;
}
 
/* ------------------------------------------------------------------
  HOME
 ------------------------------------------------------------------*/
/* ---------- h2 ----------*/
div#home_contents .h2_title {
	margin-bottom:5px;
}


/* ---------- ランキング ----------*/
div#home_contents div.rank_img_box,
div#home_contents div.rank_txt_box,
div#home_contents div.rank_more_box {
	width:715px;
}

div#home_contents .rank1,
div#home_contents .rank2,
div#home_contents .rank3 {
	float:left;
	width:235px;
}

div#home_contents .rank2,
div#home_contents .rank3 {
	margin-left:5px;
}

div#home_contents .txt1,
div#home_contents .txt2,
div#home_contents .txt3 {
	float:left;
	width:203px;
	padding:12px 16px;
}

div#home_contents .txt2,
div#home_contents .txt3 {
	margin-left:5px;
}

div#home_contents .more1,
div#home_contents .more2,
div#home_contents .more3 {
	float:left;
	width:203px;
	padding:0 16px;
}

div#home_contents .more2,
div#home_contents .more3 {
	margin-left:5px;
}

div#home_contents div.rank_txt_box {
	background:url(../../images/index/rank_bk.gif) repeat-y;
}

div#home_contents div.rank_more_box {
	text-align:right;
}

div#home_contents div.rank_more_box img {
	margin-left:4px;
	vertical-align:middle;
}

div#home_contents div.rank_foot {
	margin-bottom:16px;
}

div#home_contents div.rank_foot img {
	display:block;
}


/* ---------- コースをセレクト ----------*/
div#home_contents div.course_box {
	width:715px;
	margin-bottom:16px;
}

div#home_contents .course1,
div#home_contents .course2,
div#home_contents .course3 {
	float:left;
	width:235px;
}

div#home_contents .course2,
div#home_contents .course3 {
	margin-left:5px;
}

div#home_contents .course_img {
	float:left;
	width:68px;
}

div#home_contents .course_link {
	float:left;
	width:167px;
	font-size:10px; /*IE画像余白バグ*/
}

div#home_contents .course_link img a {
	display:block;
}


/* ---------- お知らせ ----------*/
div#home_contents div.info_container {
	clear:both;
	width:715px;
	margin-bottom:15px;
}

div#home_contents .left_banner {
	float:left;
	width:240px;
}

div#home_contents .info_box {
	float:right;
}

div#home_contents .info_list {
	background-color:#262727;
	border-bottom:1px #000000 solid;
	width:465px;
}

div#home_contents .info_list .day {
	float:left;
	background:url(../../images/index/info_bk.jpg) repeat-y center;
	width:76px;
	padding:5px 3px;
	text-align:right;
	color:#999999;
	font-size: 80%;
	font-weight:bold;
	word-break:break-all;
}

div#home_contents div.info_list .txt_box {
	float:left;
	width:367px;
	padding:5px 8px;
}

div#home_contents .info_list .mark {
	float:left;
	width:25px;
	padding:1px 0;
}

div#home_contents .info_list .txt {
	float:left;
	width:331px;
	margin-left:10px;
}

div#home_contents .info_list .txt img {
	vertical-align:middle;
}

div#home_contents .info_list .txt p {
	color:#FFFFFF;
}

div#home_contents .info_foot {
	clear:both;
	width:465px;
}

/* ---------- フッタバナー ----------*/
div#footer_banner {
	width:950px;
	margin:0 auto 20px;
}


/* ---------- リンクリスト ----------*/
div#linkListBox {
	margin:0 auto;
	width: 950px;
	font-size: 80%;
	line-height: 140%;
}

div#linkListBox .linkList {
	background:url(../../images/index/footer_link_bk.jpg) top no-repeat;
	margin:0 -1px 0 0;
	padding:30px 24px 72px 24px;
	width:902px;
}

div#linkListBox .linkList .link_01 {
	float:left;
	width:240px;
	margin-right:10px;
}

div#linkListBox .linkList .link_02 {
	float:left;
	width:370px;
	margin-right:10px;
}

div#linkListBox .linkList .link_03 {
	float:left;
	width:270px
}


div#linkListBox .linkList ul.stratum02 {
	margin-left:10px;
}

div#linkListBox .linkList img {
	vertical-align:middle;
}


/* ------------------------------------------------------------------
  サブ
 ------------------------------------------------------------------*/
 /* --------------------------- サロンのご案内 --------------------------- */
/* Index */
#salon_container {
	width:920px;
}

#salon_container .salon_contents {
	float:left;
	width:718px;
}

#salon_container .map {
	width:718px;
}

#salon_container .region {
	width:690px;
	margin-top:42px;
	padding:10px;
	border:4px solid #69708B;
}

#salon_container .region img {
	margin-bottom:20px;
}

#salon_container .region td {
	padding:2px 10px 2px 4px;
	vertical-align:top;
}

#salon_container .region .prefecture {
	white-space: nowrap;
}

#salon_container .region .cologne {
	color:#927644;
}

#salon_container .salon_sidebar {
	float:right;
	width:192px;
}

#salon_container .banner_area1 {
	width:192px;
	border-bottom:2px solid #E2D9DA;
}

#salon_container .banner_area1 img {
	margin-bottom:10px;
}

#salon_container .banner_area2 {
	width:192px;
	margin-top:10px;
}

#salon_container .banner_area2 img {
	margin-bottom:10px;
}


/* 各一覧 */
.salon_p {
	margin-left:1em;
	margin-bottom:15px;
}

.salon_list {
	clear:both;
	border:#CCCCCC 1px solid;
	text-align:left;
	margin-bottom:20px;
}

.salon_list td {
	border:#CCCCCC 1px solid;
	padding:5px;
}

.salon_list_th {
	border:#CCCCCC 1px solid;
	padding:5px;
	font-weight:bold;
	background-color:#DDDDDD;
	text-align:center;
}

th.salon_list_th2 {
	border:#CCCCCC 1px solid;
	padding:5px;
	font-weight:normal;
	background-color:#EEEEEE;
}

.salon_freedial {
	width:480px;
	margin:0 auto;
	margin-top:20px;
}

.salon_freedial td {
	text-align:left;
}

.salon_freedial img {
	margin-bottom:20px;
}

.salon_shop p {
	margin-left:1em;
}

.salon_content img {
	margin:0 5px;
}


/* 詳細ページ */
.salon_map_box {
	margin-bottom:20px;
	text-align:center;
}
/* --------------------------- サロンのご案内終わり --------------------------- */

/* NEWS */
.sub_news {
	width:920px;
	margin-bottom:15px;
}

.sub_news_01 {
	clear:both;
	background-image:url(../../shared/dot_760px.gif);
	background-position:bottom;
	background-repeat:repeat-x;
	margin-top:5px;
	margin-bottom:10px;
}

.sub_news_new {
	float:left;
	background-image:url(../../news/images/ico_new.gif);
	background-position:left top;
	background-repeat:no-repeat;
	color:#46507f;
	font-weight:bold;
	width:155px;
	padding-left:65px;
	padding-bottom:8px;
}

.sub_news_day {
	float:left;
	background-image:url(../../news/images/ico_arrow.gif);
	background-position:left top;
	background-repeat:no-repeat;
	color:#46507f;
	font-weight:bold;
	width:155px;
	padding-left:65px;
	padding-bottom:8px;
}

.sub_news_txt {
	float:left;
	padding-bottom:8px;
	margin-left:5px;
}

.sub_news_txt img {
	vertical-align:middle;
}


/* ------------------------------------------------------------------
  フォーム関連
 ------------------------------------------------------------------*/ 
.form {
	border: 1px solid #999999;
	margin-bottom:5px;
}

.float_l {
	float:left;
	margin-right:3px;
}

.float_l.input-label,
.float_l.select-label {
	padding: 12px 7px 0 3px;
	font-size: 13px;
	font-weight: bold;
}

.thanks {
	padding:40px 0;
	background-image:url(../img/line_g.gif);
	background-position:bottom;
	background-repeat:repeat-x;
}

.error {
	padding:40px 0;
	background-image:url(../img/line_g.gif);
	background-position:bottom;
	background-repeat:repeat-x;
}

#zip1_err,
#zip2_err {
	width:55px;
}

#postalsearch_error {
	width:128px;
	margin-left:10px;
}

#tel1_err,
#tel2_err,
#tel3_err {
	width:55px;
}

#mobile1_err,
#mobile2_err,
#mobile3_err {
	width:55px;
}


/* ---------- お問合わせ、資料請求 ----------*/
.g_frame_center {
	clear:both;
	background-color:#efefef;
	border:1px solid #cccccc;
	text-align:center;
	padding:5px;
	margin-bottom:15px;
}

.frame_all {
	background-image:url(../img/line_g.gif);
	background-position:top;
	background-repeat:repeat-x;
}

.frame_box {
	clear:both;
	background-image:url(../img/line_g.gif);
	background-position:bottom;
	background-repeat:repeat-x;
	padding-bottom:10px;
	padding-top:10px;
}

.frame_bot {
	clear:both;
	background-image:url(../img/line_g_bot.gif);
	background-position:bottom;
	background-repeat:repeat-x;
	padding-bottom:10px;
	padding-top:10px;
}

.frame_01 {
	float:left;
	width:140px;
	background-color:#cccccc;
	margin-left:1px;
	margin-right:15px;
	padding:5px;
}

.frame_01_long {
	float:left;
	width:155px;
	background-color:#cccccc;
	margin-left:1px;
	margin-right:15px;
	padding:5px;
}

.frame_02 {
	float:left;
	width:450px;
	margin-top:5px;
}

.frame_02-half {
	float:left;
	width:190px;
	margin-top:5px;
}

.frame_02_noleft {
	width:450px;
	margin-top:5px;
	margin-left:165px;
}

.frame_g_frame_03 {
	clear:both;
	background-color:#ffffff;
	border:1px solid #cccccc;
	padding:0 5px;
	margin-top:20px;
	margin-bottom:15px;
}

.frame_verisign {
	float:left;
	width:150px;
	height:70px;
	text-align:center;
}

.frame_ssltxt {
	float:left;
	width:580px;
	padding-top:25px;
}

/* ---------- 資料請求のみ ----------*/
.documents_table td {
	padding:5px;
}


/* ---------- 体験予約申し込み ----------*/
.reserve_header {
	width:580px;
	margin:0 auto;
	margin-bottom:5px;
}

.reserve_header_l {
	width:137px;
	float:left;
}

.reserve_header_r {
	width:440px;
	float:left;
}

.reserve_header_r_1 {
	margin-top:15px;
}

.reserve_header_r_2 {
	margin-top:10px;
	margin-bottom:5px;
}

.reserve_container {
	/*width:580px;*/
	margin:0 auto;
	background:#FFFFFF;
}

.reserve_contents_lp {
	margin:0 auto;
	/*width:550px;*/
	width: 98%;
	margin-bottom:10px;
	padding-top:10px;
}

.reserve_h1_box {
	/*width: 550px;*/
	min-height:52px;
	*height:52px;
	background-image:url(../img/reserve_h1.jpg);
	background-repeat: no-repeat;
    background-position: left top;
	background-color:#000000;
	margin-bottom:20px;
}

.reserve_h1 {
	font-size: 130%;
	line-height: 140%;
	color:#FFFFFF;
	font-weight:bold;
	padding:15px 10px 10px 25px;
}


.reserve_g_frame {
	clear:both;
	background-color:#efefef;
	border:1px solid #cccccc;
	padding:5px;
	margin-bottom:15px;
}

.reserve_caption{
	text-indent: -12px;
	margin-left:12px;
}

.reserve_contents_lp .step {
    text-align: center;
    margin: 10px 0;
}

.reserve_contents_lp .step img {
    width: 95%;
	max-width: 550px;
}

.reserve_all {
	background-image:url(../img/line_g.gif);
	background-position:top;
	background-repeat:repeat-x;
}

.reserve {
	clear:both;
	background-image:url(../img/line_g.gif);
	background-position:bottom;
	background-repeat:repeat-x;
	padding-bottom:10px;
	padding-top:10px;
}

.reserve_bot {
	clear:both;
	background-image:url(../img/line_g_bot.gif);
	background-position:bottom;
	background-repeat:repeat-x;
	padding-bottom:10px;
	padding-top:10px;
}

.reserve_01 {
	float:left;
	width:133px;
	background-color:#cccccc;
	margin-left:1px;
	margin-right:10px;
	padding:5px;
}

.reserve_02 {
	float:left;
	width:395px;
	margin-top:5px;
}

.reserve_02_noleft {
	width:395px;
	margin-top:5px;
	margin-left:154px;
}

.reserve_day_title_p {
	margin-bottom:5px;
}

.reserve_day_title {
	color:#064a8a;
	font-weight:bold;
}

.address {
	margin-left:10px;
}

.reserve_g_frame_02 {
	clear:both;
	background-color:#efefef;
	border:1px solid #cccccc;
	padding:5px;
	margin-top:15px;
	margin-bottom:15px;
	height: 164px;
    overflow: auto;
	-webkit-overflow-scrolling: touch;
}

.reserve_submit {
	clear:both;
	text-align:center;
	margin-top:20px;
}

.reserve_policy_box {
	/*width:306px;*/
	margin:0 15px 20px;
}

.reserve_policy {
	/*display:block;*/
	/*width:140px;*/
	background-image:url(../img/arrow.gif);
	background-position:top left;
	background-repeat:no-repeat;
	/*float:left;*/
	/*text-align:left;*/
	margin-right:5px;
	padding-left:10px;
}

.reserve_using {
	/*display:block;*/
	/*width:140px;*/
	background-image:url(../img/arrow.gif);
	background-position:top left;
	background-repeat:no-repeat;
	/*float:left;*/
	/*text-align:left;*/
	padding-left:10px;
}

.reserve_g_frame_03 {
	clear:both;
	background-color:#ffffff;
	border:1px solid #cccccc;
	padding:0 5px;
	margin:20px 15px 15px;
}

.reserve_verisign {
	float:left;
	width: 30%;
	height:72px;
	text-align:center;
}

.reserve_ssltxt {
	float:left;
	width: 60%;
	padding: 25px 0;
}

.reserve_totopL {
	margin:32px auto 27px auto;
	width: 100%;
	text-align:right;
}

.reserve_footer {
	clear: both;
	width: 540px;
	margin:0 auto;
	padding:10px 20px;
	font-size: 80%;
	line-height: 140%;
	text-align:right;
	background:#000000;
	color:#FFFFFF;
}

/* - 体験予約申し込み_確認 -*/
.reserve_btn_all {
	/*width:384px;*/
	margin:0 auto;
	clear:both;
	margin-top:20px;
}
.reserve_btn_02 {
	text-align:center;
}
.reserve_btn_03 {
	text-align:center;
	margin:0 auto 40px;
}


/*-コースメニュー -*/

td.course_top_td {
	padding:10px;
}


.course_table {
	margin-left:20px;
}

.course_table_td {
	padding:5px 0;
}



/* ---------- キャンペーン下部日付共通化パーツ ----------*/

.campaign_info {
	clear:both;
	margin:0 auto;
}



/* ---------- メタックバナー ----------*/

.btn_metack {
	clear:both;
	width:920px;
	margin-top:15px;
	text-align:center;
}

/* ---------- 20141030 フォーム改修 ----------*/
#smp_reserve {
	margin: 0px auto;
	width: 100%;
	}

#smp_reserve .reserve_01 {
	margin: 0px auto;
	padding: 8px !important;
	width: 95%;
	font: normal bold 13px/13px "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif !important;
	background-color:#cccccc;
	float: none;
	box-sizing: border-box;
}

#smp_reserve .reserve_02 {
	margin: 10px auto;
	width: 95%;
	font: normal normal 12px/16px "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif !important;
	float: none;
}
#smp_reserve .confirm .reserve_02 {
	font-size: 14px !important;
	line-height: 18px !important;
}

#smp_reserve .reserve_02 select {
	font: normal normal 16px/22px "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif !important;
	padding: 8px !important;
	/*height: 50px;*/
	width: 100%;
	appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background-image: linear-gradient(45deg, transparent 50%, #000 50%), linear-gradient(135deg, #000 50%, transparent 50%);
    background-position: calc(100% - 10px) 50%, calc(100% - 5px) 50%;
    background-size: 5px 5px, 5px 5px;
    background-repeat: no-repeat;
}

#job {
    max-width: 206px;
}

#know {
    max-width: 258px;
}

#smp_reserve .reserve_02 input[type='text'],#smp_reserve .reserve_02 input[type='tel'] {
	font: normal normal 16px/22px "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif !important;
	padding: 10px !important;
	/*height: 70px;*/
	width: 100%;
	box-sizing: border-box;
}

#smp_reserve .reserve_02 input[type="radio"] {
	width: 20px;
	height: 20px;
	vertical-align: -3px;
	margin-right: 3px;
}

.eac-input-wrap {
	width: 100%;
}

.domain_set{
	color: #aaa;
	height: 44px !important;
	padding: 11px 0 !important;
}

.validate-error select,.validate-error input{
	background-color: rgb(255, 205, 180);
}

.validate-ok select,.validate-ok input{
	background-color: rgb(221, 255, 255);
}

.err_msg {
	margin: 0 0 10px;
}

.want_daytimes {
	width: 90%;
	margin: auto;
}
.want_daytimes th {
	font-size: 13px;
	padding: 5px 0;
	text-align: left;
}
.confirm .want_daytimes th {
	background: #e5e5e5;
	padding: 3px 10px;
}

.want_daytimes td {
	vertical-align: top;
}
.confirm .want_daytimes td {
	padding: 3px 10px;
}

.error-message {
	color: #CC0000;
	margin: 0 0 7px;
	font-size: 12px;
}
