@charset "utf-8";

/* sub page
================================================================*/

/* car detail
----------------------------------------------------------------*/
#cardetail_leftbox {
    float: left;
    width: 720px;
}

#cardetail_leftbox .f_left_img {
    float: left;
    margin-top: 10px;
}

#cardetail_option {
    width: 400px;
    margin: 10px 0 0 20px;
    float: left;
    font-size: 95%;
}

#cardetail_option h4 {
    color: #df7500;
    font-size: 131%;
    border-bottom: #b3b3b3 dashed 1px;
    margin-bottom: 12px;
    padding-bottom: 10px;
}

#cardetail_option ul {
    border-top: #b3b3b3 dashed 1px;
    margin-top: 10px;
    padding-top: 10px;
}

#cardetail_leftbox table {
    width: 100%;
}

#cardetail_leftbox th, #cardetail_leftbox td {
    padding: 8px 15px 6px;
    border: #c6c6c6 1px solid;
}

.request_page #cardetail_leftbox th {
    background-color: #F2FFF2;
}

#cardetail_leftbox th {
    vertical-align: top;
    background: #f2fbff;
    width: 160px;
}

#cardetail_leftbox td.ttl_detail_01, #cardetail_leftbox td.ttl_detail_02 {
    color: #fff;
    line-height: 30px;
    height: 30px;
    padding: 0 15px;
}

#cardetail_leftbox td.ttl_detail_01 {
    background: url(../img/detail/ttl_detail_01.gif) repeat-x;
}

#cardetail_leftbox td.ttl_detail_pink {
    background: url(../img/common/bg/bg_grade_green.jpg) repeat-x;
    color: #fff;
    line-height: 30px;
    height: 30px;
    padding: 0 15px;
    background-color: #7ECF44;
}

#cardetail_leftbox td.ttl_detail_02 {
    background: #f70009;
    text-align: center;
    width: 100px;
}

#cardetail_leftbox td.ttl_detail_03 {
    background: #ffebec;
    text-align: right;
}

#cardetail_leftbox .detail_total {
    color: #f12929;
    font-size: 138.5%;
    text-align: right;
    font-weight: bold;
    border: #f12929 solid 5px;
    padding: 8px 15px 6px;
}

#cardetail_leftbox #member_login, #cardetail_leftbox #login_none {
    width: 331px;
    height: 200px;
    margin-bottom: 10px;
    padding: 18px 10px;
    float: left;
}

#cardetail_leftbox #member_login {
    background: #ecfbff;
    border: #b5d7f2 solid 1px;
}

#cardetail_leftbox #login_none {
    background: #f3feed;
    margin-left: 13px;
    _margin-left: 7px;
    border: #b7e676 solid 1px;
}

#cardetail_leftbox .login_btn {
    width: 241px;
    margin: 10px auto;
}

#cardetail_leftbox #member_login table {
    width: 320px;
    margin: 10px auto 0;
}

#cardetail_leftbox #member_login table td {
    padding: 3px;
    border: none;
}

#cardetail_rightbox {
    float: left;
    width: 210px;
    margin-left: 20px;
    _margin-left: 10px;
}

#cardetail_rightbox h3 {
    text-indent: -999em;
    background: url(../img/detail/ttl_detail_right.jpg) no-repeat;
    height: 28px;
}

#other_box {
    background: #fff2c5;
    padding: 5px 9px;
    border: #b3b3b3 solid 1px;
}

#other_box .other {
    background: #FFF;
    margin: 4px 0;
    padding: 6px;
    border: #b3b3b3 solid 1px;
}

#other_box .other h4 {
    font-size: 85%;
    background: url(../img/detail/icon_detail_right.jpg) no-repeat;
    margin-bottom: 10px;
    padding-left: 12px;
}

#other_box .other p {
    font-size: 85%;
    margin: 2px 3px;
}

#cardetail_leftbox .shop_hours li {
    margin: 1px 5px;
}

.request {
    float: right;
    width: 200px;
}

/* reserve 
----------------------------------------------------------------*/
#reserve .progress_img {
    text-align: center;
    margin: 0px 0 20px;
}

#reserve .progress_image {
    text-align: center;
    margin: 8px 0 20px;
}

#reserve table {
    width: 950px;
    margin-top: 2px;
    margin-bottom: 16px;
}

#reserve th, #reserve td {
    padding: 10px;
    border: 1px solid #BEBEBE;
}

#reserve th {
    color: #333;
    background: #EAEAEA;
    width: 200px;
}

#reserve table table {
    width: auto;
    margin: 0;
}

#reserve .res_number {
    text-align: center;
    padding-top: 5px;
    padding-bottom: 5px;
    border-top: #CCC solid 1px;
    border-bottom: #CCC solid 1px;
}

#reserve .res_number h4 {
    text-align: center;
    font-size: 21px;
    font-weight: bold;
}

#reserve table table th, #reserve table table td {
    border: none;
    padding: 5px 0;
}

#reserve th.note {
    background: #EAEAEA url(../img/common/pic_note_01.gif) right center no-repeat;
}

#reserve .check_box {
    vertical-align: middle;
    margin: 10px 10px 0;
}

#reserve.thanks p {
    margin-bottom: 20px;
    text-align: center;
}

#reserve .print_only {
    display: none;
}

#reserve .table_quote .price_td {
    background: #FDF2F4;
    text-align: right;
    width: 200px;
}

#reserve .quote_total {
    color: #F00;
    font-weight: bold;
    text-align: right;
    padding: 10px;
    border: #F00 solid 1px;
}

#reserve .quote_total span {
    font-size: 138.5%;
    margin-bottom: 8px;
    border-bottom: #F00 solid 2px;
    display: block;
}

#reserve .point_use, #reserve fieldset {
    float: left;
}

/* customer
----------------------------------------------------------------*/
#customer table {
    width: 100%;
}

#customer th, #customer td {
    padding: 5px;
    border: #CCC solid 1px;
}

#customer th {
    background: #FFF5EC;
}

#customer tr:hover {
    background: #EDEDED;
}

.info_change {
    margin-bottom: 15px;
    margin-left: 10px;
}

.info_change li {
    background: url(../img/icon/arrow_01.gif) left 50% no-repeat;
    margin-right: 10px;
    padding: 5px 12px;
    float: left;
}

/* shop
----------------------------------------------------------------*/
#company {
    background: #f2f2f2;
    padding: 10px;
    border-left: #B3B3B3 solid 1px;
    border-right: #B3B3B3 solid 1px;
    border-bottom: #B3B3B3 solid 1px;
    margin-bottom: 30px;
    position: relative;
}

#company .inner {
    background: #ffffff;
    background: url(../img/company/bg_inner.gif) no-repeat;
    padding: 10px 15px 13px;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: #B3B3B3;
}

#company .inner .title {
    padding-bottom: 20px;
    font-size: 136%;
    font-weight: bold;
}

#company .local_navi {
    position: absolute;
    top: 8px;
    right: 6px;
}

#company .local_navi li {
    float: left;
    margin-right: 5px;
}

#company_info {
    width: 440px;
    float: left;
}

#company_info dt, #company h5 {
    padding-left: 30px;
    background: #DDE7F0 url(../img/company/ttl/ttl_squea.gif) no-repeat;
    border: 1px solid #CCC;
    padding-bottom: 7px;
    padding-top: 7px;
}

#company_info dd {
    margin-bottom: 10px;
    padding: 10px 20px 20px;
}

#company_info dd .shop_btn {
    margin-right: -20px;
    _margin-right: -10px;
    float: right;
}

#company_info dd ul {
    margin: 10px 0;
}

#company_info dd ul.shop_hours {
    margin: 10px 0px;
}

#company_info dd ul.shop_hours li {
    border-bottom: #b2b2b2 dotted 1px;
    margin: 5px 0;
    padding: 5px 0;
}

#company_info dd ul.list_float li {
    float: left;
    margin-right: 6px;
}

#map {
    width: 440px;
    margin-left: 15px;
    float: left;
}

#map ul.shop_img_list {
    margin: 15px 0;
}

#map ul.shop_img_list li {
    float: left;
    margin-right: 5px;
}

#map .shop_pr {
    background: #fff;
    margin: 10px 0;
    padding: 12px;
    border-top: #b3b3b3 solid 1px;
    border-bottom: #b3b3b3 solid 1px;
}

#map .shop_btn {
    margin: 10px auto;
}

#map .shop_campaign h3 {
    background: url(../img/company/ttl/ttl_company_cam.gif) no-repeat;
    height: 37px;
    line-height: 37px;
    padding-left: 25px;
}

#map .shop_campaign ul {
    margin-top: 10px;
}

#map .shop_campaign li {
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: #CCC dotted 1px;
}

#map .shop_campaign img {
    float: left;
    margin-right: 8px;
}

#map .shop_campaign .txt_box {
    width: 230px;
    float: left;
}

#map .shop_campaign h4 a {
    font-size: 93%;
    text-decoration: underline;
}

#map .shop_campaign p {
    font-size: 85%;
    margin: 3px 3px 0px 0px;
    line-height: 14px;
}

#company table {
    width: 100%;
    margin-top: 10px;
    border: #ffe1b3 solid 5px;
}

#company th, #company td {
    font-size: 93%;
    vertical-align: top;
    padding: 11px 9px;
    border: #d9d9d9 solid 2px;
}

#company th {
    background: #fff7e0;
}

#company .btn_search {
    margin: 15px 0;
}

#shop_calendar .calendar_carlist {
    margin: 0 0 3px;
}

#shop_calendar .calendar_carlist li {
    background: url(../img/icon/arrow_03.gif) no-repeat left center;
    padding: 0 10px;
    float: left;
}

#shop_calendar .calendar_carlist .calendar_on a {
    color: #F33;
}

#shop_calendar p.kusya {
    color: #FFF;
    font-size: 131%;
    font-weight: bold;
    background: #555;
    margin-bottom: 15px;
    padding: 5px 5px 2px;
}

#shop_calendar .calendar_detail {
    margin-bottom: 20px;
}

#shop_calendar .calendar_detail img {
    float: left;
}

#shop_calendar .calendar_detail .text_box {
    width: 600px;
    margin-left: 10px;
    float: left;
}

#shop_calendar .calendar_detail .text_box h3 {
    background: none;
    font-weight: bold;
    margin-bottom: 3px;
    padding: 0 0 0 6px;
    border: none;
    border-left: #F93 solid 5px;
}

#shop_calendar .calendar_month_btn {
    margin: 10px 0 0;
    height: 27px;
    position: relative;
}

#shop_calendar .calendar_month_btn .btn_01 {
    position: absolute;
    top: 0;
    left: 0;
}

#shop_calendar .calendar_month_btn .btn_02 {
    position: absolute;
    top: 0;
    right: 0;
}

#shop_calendar .table_calendar {
    width: 440px;
    margin-bottom: 15px;
    border: none;
    float: left;
}

#shop_calendar .table_calendar caption {
    line-height: 28px;
    background: url(../img/common/ttl/ttl_02.jpg) no-repeat;
    height: 28px;
    padding-left: 25px;
    border: #b3b3b3 solid 1px;
    border-bottom: none;
}

#shop_calendar .table_calendar th,
#shop_calendar .table_calendar td {
    text-align: center;
    vertical-align: top;
    border: #b3b3b3 solid 1px;
    padding: 3px 0 8px;
}

#shop_calendar .table_calendar th {
    background: #F3F3F3;
}

#shop_calendar .holiday {
    background: #FFDFDF;
}

#shop_calendar .saturday {
    background: #D5EEFD;
}

#shop_calendar_search table {
    width: 99%;
    margin-top: 10px;
    margin-bottom: 10px;
    border: #ffe1b3 solid 5px;
}

#shop_calendar_search th, #shop_calendar_search td {
    font-size: 93%;
    vertical-align: top;
    padding: 11px 9px;
    border: #d9d9d9 solid 2px;
}

#shop_calendar_search th {
    background: #fff7e0;
}

/* ユーティリティ
----------------------------------------------------------------*/

/* 営業所詳細　会社概要
----------------------------------------------------------------*/
#company table.tbl_outline {
    width: 90%;
    border: none;
    margin: 0 15px;
}

#company table.tbl_outline th {
    background-color: #FFF;
    width: 120px;
    border-bottom: #CCC dotted 1px;
    margin: 10px 0;
    padding: 10px 0 10px 10px;
    vertical-align: top;
    border-top-style: none;
    border-right-style: none;
    border-left-style: none;
    font-weight: bold;
}

#company table.tbl_outline td {
    border-bottom: 1px dotted #CCC;
    margin: 10px 0;
    padding: 10px 0;
    border-top-style: none;
    border-right-style: none;
    border-left-style: none;
}

/* 営業所詳細　免責補償制度
----------------------------------------------------------------*/
#company table.tbl_menseki {
    width: 95%;
    border: 1px solid #CCC;
    margin-left: 20px;
    margin-bottom: 20px;
}

#company table.tbl_menseki th {
    background-color: #F0F0F0;
    margin-bottom: 10px;
    padding-bottom: 10px;
    font-weight: bold;
    text-align: center;
    border: 1px solid #CCC;
}

#company table.tbl_menseki td {
    margin-bottom: 10px;
    padding-bottom: 10px;
    border: 1px solid #CCC;
}

#company table.tbl_menseki .col_1 {
    background-color: #D6F3FF;
}

#company table.tbl_menseki .col_2 {
    background-color: #FFFDE6;
}

#company table.tbl_menseki .col_3 {
    background-color: #FFEBEB;
}

#company table.tbl_menseki td.price {
    font-weight: bold;
    color: #F00;
}

#company .menseki_info {
    margin: 15px;
}

#company .menseki_info strogn {
    font-weight: bold;
}

/* 約款
----------------------------------------------------------------*/
#yakkan_info dt {
    padding-left: 30px;
    background: url(../img/company/ttl/ttl_squea.gif) no-repeat;
    border: 1px solid #CCC;
    padding-bottom: 7px;
    padding-top: 7px;
    background-color: #DDE7F0;
}

#yakkan_info dd {
    margin-bottom: 10px;
    padding: 10px 20px 20px;
}

#yakkan_info dd ul {
    padding-left: 30px;
    margin-top: 20px;
    margin-bottom: 20px;
}

/* 画像リンクスタイル
----------------------------------------------------------------*/
.hstyle_01 {
    background: url(../img/title/ttl_headline_01.gif) left bottom no-repeat;
    border: 1px solid #CCC;
    padding-left: 20px;
    margin-bottom: 15px;
    height: 33px;
    line-height: 33px;
}

.special_list {
    margin-top: 5px;
    border: 1px solid #FEF9DE;
    background-color: #FEFFDD;
    padding: 6px;
}

.special_list strong {
    display: block;
    font-size: 107%;
    color: #C60;
}

#btn_reseve {
    height: 57px;
    width: 266px;
    background: url(../img/reservation/res_btn_regist.gif) no-repeat left center;
    cursor: pointer;
    border: none;
    line-height: 89px;
}

#btn_reseve_request {
    height: 56px;
    width: 264px;
    background: url(../img/reservation/res_btn_request.gif) no-repeat left center;
    cursor: pointer;
    border: none;
    line-height: 89px;
}

#CreditPaymentSection {
    display: none;
    border: #CCC solid 1px;
    background-color: #fff !important;
    margin: 20px 0;
    padding-bottom: 10px;
}

#CreditPaymentSection #CreditTitle {
    font-size: 14px;
    font-weight: bold;
    background: url(../img/common/pic_note_01.gif) 120px center no-repeat;
}

#CreditPaymentSection dd {
    padding: 15px 20px 0 20px !important;
}

#CardInputType label {
    cursor: pointer;
}

#CreditAuthenSection {
    background: url(../img/credit/payment_step1.png) no-repeat;
    background-color: #efefef;
    background-position: 23px 12px;
}

#BookBtnSection {
    background: url(../img/credit/payment_step2.png) no-repeat;
    background-color: #efefef;
    background-position: 23px 12px;
}

#PaymentArrow {
    background: url("../img/credit/payment_step_arrow.png") no-repeat scroll center center;
    height: 35px;
}

.PaymentDetail {
    margin: 5px auto;
    border: 1px solid #efefef;
    border-radius: 22px;
    padding-bottom: 5px;
}

.PaymentDetail p {
    font-size: 14px;
    line-height: 25px;
    padding: 14px 35px 5px 80px;
}

.PaymentDetail p span {
    font-size: 18px;
    font-weight: bold;
}

#CreditAuthen {
    position: relative;
    overflow: hidden;
}

#CreditAuthen iframe {
    position: absolute;
    top: 0;
    left: 1%;
    width: 98%;
    height: 100%;
    border: none;
}

#CreditAuthenErr {
    color: #c9181d;
    font-size: 17px;
    padding: 15px;
    text-align: center;
}

#CreditAuthenErr:empty {
    display: none !important;
}

#CreditNote {
    color: #ff0000;
    width: 715px;
    margin: 0 auto;
    line-height: 21px;
}

p.CreditTxt {
    text-align: center;
    font-size: 19px;
    font-weight: bold;
}

.BtnConfirmation {
    background: url(../img/reservation/res_btn_conf.gif) no-repeat;
    width: 266px;
    height: 57px;
    border: none;
    cursor: pointer;
}

.BtnBackDetail {
    background: url(../img/reservation/res_btn_back_01.gif) no-repeat;
    width: 142px;
    height: 45px;
    border: none;
    cursor: pointer;
}

.BtnBack {
    background: url(../img/common/btn/res_btn_back_03.gif) no-repeat;
    width: 142px;
    height: 45px;
    border: none;
    cursor: pointer;
}

.BtnRegister {
    background: url(../img/common/btn/my_btn_decision.gif) no-repeat;
    width: 266px;
    height: 57px;
    border: none;
    cursor: pointer;
}

.BtnReceipt {
    background: url(../img/credit/btn_receipt.gif) no-repeat;
    width: 113px;
    height: 24px;
    margin-top: 10px;
    display: block;
    border: none;
    cursor: pointer;
}