/*----------------------------------------------------------
   Leia
-----------------------------------------------------------*/
@charset "utf-8";
/* setting
------------------------------------*/

body{
font-size: 12px;
line-height: 150%;
height:100%;
color: #444444;
}

html{
height:100%;
}

a { outline: none; }

#main_content a:hover img,
#side_content a:hover img,
#campaign_main a:hover img{
opacity:0.7;
filter: alpha(opacity=70);
}


ul li{
list-style: none;
}
table, table td, table th{
border: 0;
}

* html #header img,
* html #menu img,
* html #footer img,
* html #navi_up img{
behavior: expression(IEPNGFIX.fix(this));
}

/* common
------------------------------------*/
p,ul,ol,li,div,dt,dd{
font-size: 12px;
}


/* Link Color
--------------------------------*/
a:link {/*未訪問のリンク*/
color:#4a4740;
text-decoration:underline;
}
a:visited {/*訪問後のリンク*/
color:#4a4740;
text-decoration:underline;
}
a:hover {/*マウスをのせたとき*/
color:#ea4740;
text-decoration:underline;
}
a:active {/*クリック中*/
color:#ea4740;
text-decoration:none;
}

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

dl{
margin-bottom: 5px;
}
dt{
}
dd{
margin: 0 0 10px 0;
}

h2{
margin-top: 0;
}


h3.common{
margin-top: 0;
color: #4b472e;
background: url('/images/common/bg_h3.jpg');
width: 563px;
height: 28px;
padding: 4px 0 0 17px;
font-size: 14px;
}

h4.common{
border-bottom: 1px solid #cccccc;
border-left: 5px solid #b31e17;
color: #b31e17;
font-weight: bold;
padding: 3px;
padding-left: 10px;
font-size: 12px;
margin-top: 3px;
margin-bottom: 8px;
}
h5.common{
font-size: 12px;
border-bottom: 1px solid #cccccc;
border-top: 1px solid #cccccc;
padding: 5px 0 5px 12px;
background: #FFF5ED;
margin-bottom: 10px;
color: #555555;
}
.center{
margin: 0 auto;
}
span.red{
color: #cc5555;
}
span.orange{
color: #cc9955;
}
span.blue{
color: #5555cc;
}
span.green{
color: #55cc55;
}
.bold{
font-weight: bold;
}

p{
padding: 1px 20px 5px 12px;
margin: 3px 0;
}


img.img_right{
float: right;
margin: 0px 15px 10px 10px;
}
img.img_left{
float: left;
margin: 0px 10px 10px 15px;
}


.textalign_center{
text-align: center;
}
.textalign_right{
text-align: right;
}
.textalign_left{
text-align: left;
}

img.photo{
padding: 3px;
background: #ffffff;
border: 1px solid #cccccc;
}

p.clear{
clear: both;
height: 10px;
}
div.clear{
clear: both;
height: 0px;
padding: 0;
margin: 0;
}

strong{
font-weight: normal;
}

.small{
font-size: 10px;
}
.big{
font-size: 14px;
}

.red{
color: #991111;
}

.pink{
color: #e83672;
}

.purple{
color: #a55da7;
}

.lightgreen{
color: #92ce4a;
}

.lightblue{
color: #799ecb;
}
.nomargin{
margin: 0;
}

.border{
border: 1px solid #dddddd;
}

.float_left{
float: left;
}
.float_right{
float: right;
}


.notice{
color: #9a0026;
}
.fs_14{
font-size: 14px;
}
.fs_16{
font-size: 16px;
}
.fs_18{
font-size: 18px;
}
.fs_20{
font-size: 20px;
}
.fs_22{
font-size: 22px;
}
.fs_24{
font-size: 24px;
}
.mb_5{
margin-bottom: 5px;
}
.mb_10{
margin-bottom: 10px;
}
.ml_5{
margin-left: 5px;
}
.ml_8{
margin-left: 8px;
}
.ml_10{
margin-left: 10px;
}
.ml_15{
margin-left: 15px;
}
.ml_20{
margin-left: 20px;
}
.ml_30{
margin-left: 30px;
}
.mr_10{
margin-right: 10px;
}
.mr_20{
margin-right: 20px;
}
.mr_30{
margin-right: 30px;
}
.mb_10{
margin-bottom: 10px;
}
.mt_5{
margin-top: 5px;
}
.mt_10{
margin-top: 10px;
}
.mt_15{
margin-top: 15px;
}
.mt_20{
margin-top: 15px;
}
.ps_10{
padding: 0 10px;
}
.ps_15{
padding: 0 15px;
}
.ps_20{
padding: 0 20px;
}
.ps_30{
padding: 0 30px;
}
.pl_10{
padding-left: 10px;
}
.pl_15{
padding-left: 15px;
}
.pl_20{
padding-left: 20px;
}
.pl_30{
padding-left: 30px;
}
.pr_10{
padding-right: 10px;
}
.pr_15{
padding-right: 15px;
}
.pr_20{
padding-right: 20px;
}
.pr_30{
padding-right: 30px;
}






/* outline
------------------------------------*/
#outline{
position:relative;
min-height: 100%;
height: auto;
}




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

#header{
background: url('/images/common/bg_header.jpg') center top no-repeat;
width: 100%;
height: 165px;
position: relative;
}
#header_inner{
margin-left: auto;
margin-right: auto;
width: 840px;
padding: 3px 0px 0px 0;
height: 162px;
}

#header h1{
margin: 0 30px 0 0;
padding: 0 0 0 10px;
color: #5a5750;
font-size: 10px;
font-weight: normal;
margin: 0 0 0 0 ;
width: 390px;
}
#logo{
margin: 0 20px 0 20px;
}

/* navi
------------------------------------*/
#navi_up{
width: 840px;
float: right;
position: absolute;
top: 61px;
text-align: right;
height:19px;
padding: 2px 0 0;
}
#navi_up img{
}

#navi_middle{
position: absolute;
top: 83px;
width: 840px;
margin: 0 auto;
height: 47px;
padding: 1px 0;
}

#navi_middle img{
margin: 0;
float: left;
}

#navi_low{
position: absolute;
top: 132px;
_top: 134px;
width: 838px;
padding-left: 2px;
margin: 0 auto;
}

#navi_low img{
margin: 3px 0 3px 0;
float: left;
}
* html #navi_low img{
margin: 1px 0 3px 0;
}


/* トップページ以外のメインイメージエリア
------------------------------------*/
#main_image{
width: 840px;
height: 170px;
}

/* パンクズ
------------------------------------*/
#pan{
margin:0 0 10px 0;
background: #fff2f4;
border-top: 1px solid #ffc0c2;
border-bottom: 1px solid #ffc0c2;
padding: 0;
}
#pan .sep{
margin:0 0.5em;
}

/* content
------------------------------------*/
#middle{
margin: 0;
padding: 0;
background: url('/images/common/bg_middle.jpg') top center repeat-y;
height: auto;
}
* html #middle{
margin: -20px 0;
}
#content{
margin-left: auto;
margin-right: auto;
width: 840px;
clear: both;
background: #ffffff;
}

#main_content{
width: 580px;
float: right;
padding: 10px 23px 10px 23px;
min-height: 1050px; /* サイドカラムとメインカラムの間の罫線の長さ 
border-left: 1px dashed #ffcccc; */
}

#index #main_content{
width: 610px;
float: right;
padding: 10px 8px 10px 8px;
min-height: 1050px; /* サイドカラムとメインカラムの間の罫線の長さ 
border-left: 1px dashed #ffcccc; */
}

/* side
-----------------*/

#side_content{
width: 200px;
float: left;
padding: 10px 0 10px 10px;
}
#side_content img{
margin-bottom: 5px;
}

#side_content img.caption{
margin-top: 26px;
}

div#onegai_side{
background: white url("/images/common/side/bg_onegai.png") center top no-repeat;
padding:20px;
height: 200px;

}


/* price
------------------------------------*/
.price table th{
text-align: center;
}
.price table td{
text-align: center;
}
.price .td1{
text-align: left;
}
.price .th1{
width: 250px;
}
.price .th2{
width: 50px;
}
.price .th3{
}
.price .th4{
width: 70px;
}
.price .td0{
background: #ffe9e9;
}
.price .td2,.price .td3,.price .td4,.price .td5{
text-align: center;
}

/* ページ内メニュー
------------------------------------*/
.page_menu{
padding: 0 0 0 10px;
margin: 0;
}
.page_menu li{
display:inline;
float:left;
background:url('/images/common/point.gif') no-repeat;
background-position:0;
width:180px;
padding:1px 0 0 5px;
margin: 0 10px 0 0;
}

/* footer
------------------------------------*/
#footer{
background: url('/images/common/bg_footer.jpg') center top no-repeat;
height: 148px;
width: 100%;
font-family: sans-serif;
clear: both;
}

#footer_inner{
margin-left: auto;
margin-right: auto;
height: 118px;
width: 800px;
color: #ffffff;
padding: 30px 20px 0px 20px;
text-align: right;
vertical-align: bottom;
}

#footer_inner ul{
margin: 0;
padding: 0;
}

#footer_inner ul li{
float: right;
list-style-type: none;
margin: 0;
padding: 0;
margin-top: 15px;
}

#footer_inner img{
float: right;
margin-left: 20px;
margin-bottom: 10px;
}

#footer_inner div.copyright{
clear: both;
font-family: Arial;
color: #ffffff;
line-height: 14px;
}
#footer_inner div.copyright a{
color: #ffffff;
text-decoration: none;
}


/* footer Link Color
--------------------------------*/
#footer a:link {
color:#ffffff;
text-decoration:underline;
}

#footer a:visited {
color:#ffffff;
text-decoration:underline;
}

#footer a:hover {
color:#ea4740;
text-decoration:underline;
}

#footer a:active {
color:#ea4740;
}



/* table
-----------------*/
table.common{
border: 1px solid #dfdfdf;
font-size: 12px;
margin: 0 auto;
}
table.common th{
border: 1px solid #dfdfdf;
color: #555555;
background: #ffe9e9;
}
table.common td{
border: 1px solid #dfdfdf;
background: #ffffff;
}
table.common tr.odd th{
background: #ffe9e9;
}
table.common tr.odd td{
background: #ffffff;
}
table.common span.necessary{
color: #95003a;
font-size: 10px;
}
table.no_border{
border: 0px solid white;
}
table.no_border td{
border: 0px solid white;
}
table.no_border th{
border: 0px solid white;
}


/*login
-------------------*/
div.login{
border: 1px solid #cccccc;
background: url('/images/bg_login.gif') top left;
padding: 35px 15px 10px 15px;
margin-bottom: 10px;
width: 170px;
}

#shibo #main_content div.login, #india #main_content div.login{
float: right;
margin-right: 15px;
}
#reserve #main_content div.login{
float: right;
margin-right: 15px;
}
#reserve #main_content .textlink{
margin: 0 0 4px 16px;
}
div.login dl{
margin: 0;
padding: 0;
}

div.login dl dt{
float: left;
width: 40px;
margin-bottom: 5px;
clear: both;
font-size: 10px;
font-weight: bold;
text-align: right;
padding-right: 10px;
}

div.login dl dd{
margin-bottom: 5px;
}

div.login dl dd input{
width: 100px;
}

div.login input.bt{
clear: both;
margin-left: 50px;
}

div.login p{
padding: 0;
margin: 0;
margin-top: 5px;
display: block;
text-align: center;
}

/* info
-----------------*/
span.tel{
font-size: 24px;
color: #9d0f6c;
line-height: 130%;
font-weight: bold;
}


dl.step dt{
float: left;
clear: both;
width: 70px;
margin-bottom: 10px;
font-weight: bold;
text-align: right;
color: #777777;
}

dl.step dd{
margin-left: 90px;
margin-bottom: 10px;
border-left: 3px solid #ddcccf;
padding-left: 10px;
}

dl.step dd b{
color: #9d0f6c;
}


/* width
-----------------*/

.w50px{
width: 50px;
}
.w75px{
width: 75px;
}
.w100px{
width: 100px;
}
.w200px{
width: 200px;
}
.w230px{
width: 230px;
}

.w250px{
width: 250px;
}
.w270px{
width: 270px;
}
.w300px{
width: 300px;
}
.w360px{
width: 360px;
}
.w400px{
width: 400px;
}
.w420px{
width: 420px;
}
.w500px{
width: 500px;
}
.w600px{
width: 600px;
}

.w10per{
width: 10%;
}
.w20per{
width: 20%;
}
.w25per{
width: 25%;
}
.w30per{
width: 30%;
}
.w40per{
width: 40%;
}
.w50per{
width: 50%;
}
.w75per{
width: 75%;
}
.w100per{
width: 100%;
}

.go_pagetop{
margin-top: 30px;
text-align: right;
}

p.indent {
  text-indent:-1.0em;
  padding-left:1.0em;
}

/* media */
.media_box{
clear: both;
width: 90%;
margin: 30px auto;
padding-top: 30px;
border-top: 1px dotted #cccccc;
}
.media_box p{
float: left;
width: 170px;
}
.media_box .mr_5{
margin-right: 5px;
}
.media_box .border{
border: 1px solid #999999;
}
