@charset "UTF-8";

html {
    font-size: 62.5%; /* 約10px */
}

body {
    font-family: Arial, Roboto, "Droid Sans", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
    background-color: #f8f8f8;
    font-size: 1.6em;
    color: #333;
}

/*head image*/
.head-img {
    box-shadow: 0 0 3px 1px #ddd;
    border-radius: 4px;
    display: block;
    margin: 0 auto;
}

/*table*/
table {
    font-size: 1.5rem
}

th {
    background-color: #eee;
    vertical-align: middle !important;
}

.table-fixed {
    table-layout: fixed
}

.table-center th, .table-center td {
    text-align: center;
    word-break: break-all;
    width: 50%;
}

/*vertical-align*/
.vmiddle {
    vertical-align: middle !important;
}

/*box-shadow*/
.box-shadow {
    box-shadow: 0 1px 3px rgba(0, 0, 0, .25)
}

/*form-group*/
.form-group {
    margin-bottom: 22px
}

/*help-block*/
.help-block {
    margin-bottom: 0;
    font-size: 1.3rem;
}

.double-help {
    margin: -20px 0 22px 8px;
}

/*inline block*/
.inline-block {
    display: inline-block !important
}

.radio-inline:first-child {
    margin-left: 10px
}

.checkbox-inline:first-child {
    margin-left: 10px
}

@media screen and (min-width: 992px) {
    .control-label {
        text-align: right !important;
        margin-left: 20px;
        margin-right: -5px;
    }

    .nowrap {
        white-space: nowrap;
    }
}

/*smartphone*/
@media screen and (max-width: 991px) {
    .control-label {
        text-align: left !important;
    }

    .double-help {
        margin: -20px 0 22px 0;
    }

    .double-help div {
        padding-left: 0;
    }
}

/*margin*/
.m0 {
    margin: 0
}

.m3 {
    margin: 3px
}

.m5 {
    margin: 5px
}

.m10 {
    margin: 10px
}

.m15 {
    margin: 15px
}

.m20 {
    margin: 20px
}

.mt0 {
    margin-bottom: 0
}

.mt3 {
    margin-top: 3px
}

.mt5 {
    margin-top: 5px
}

.mt10 {
    margin-top: 10px
}

.mt15 {
    margin-top: 15px
}

.mt20 {
    margin-top: 20px
}

.mt30 {
    margin-top: 30px
}

.mb0 {
    margin-bottom: 0 !important
}

.mb3 {
    margin-bottom: 3px
}

.mb5 {
    margin-bottom: 5px
}

.mb10 {
    margin-bottom: 10px
}

.mb15 {
    margin-bottom: 15px
}

.mb20 {
    margin-bottom: 20px
}

.mb30 {
    margin-bottom: 30px
}

/*padding*/
.p0 {
    padding: 0
}

.p3 {
    padding: 3px
}

.p5 {
    padding: 5px
}

.p10 {
    padding: 10px
}

.p15 {
    padding: 15px
}

.p20 {
    padding: 20px
}

.p30 {
    padding: 30px
}

/*width*/
.w100p {
    width: 100%
}

.w50p {
    width: 50% !important
}

/*2分割*/
.w33p {
    width: 33%
}

/*3分割*/
.w25p {
    width: 25%
}

/*4分割*/

/*color*/
.color-dp {
    color: deeppink
}

.color-blue {
    color: blue
}

.color-red {
    color: red
}

.color-w {
    color: #fff
}

.color-gc {
    color: #ccc;
}

/*background-color*/
.bgc-w {
    background-color: #fff
}

.bgc-gc {
    background-color: #ccc
}

/*number横のボタン非表示*/
input[name="zip01"]::-webkit-inner-spin-button,
input[name="zip01"]::-webkit-outer-spin-button,
input[name="zip02"]::-webkit-inner-spin-button,
input[name="zip02"]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Sticky footer styles
-------------------------------------------------- */
html {
    position: relative;
    min-height: 100%;
}

body {
    /* Margin bottom by footer height */
    margin-bottom: 25px;
}

.footer {
    position: absolute;
    bottom: 0;
    width: 100%;
    /* Set the fixed height of the footer here */
    height: 25px;
}

/* Custom page CSS
-------------------------------------------------- */
/* Not required for template or sticky footer method. */
.container .text-muted {
    margin: 5px 0;
}

.hidden_field {
    display: none;
}

.confirm_table td, .confirm_table th {
    border: solid 1px #444;
}

.hasDatepicker {
    z-index: 10000 !important;
    position: relative;
}

.car_select {
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 50px;
}

.car_select b {
    font-size: 16px;
    color: #fff;
    background: #d9363a;
    padding: 10px 18px;
    margin: 0 0 10px 0px;
    display: block;
}

.title_black b {
    font-size: 25px;
    color: #fff;
    background: #333333;
    padding: 10px 24px;
}

.title_b {
    margin: 24px 0 10px 0;
}

.title_b b {
    font-size: 26px;
}

.title_s {
    line-height: 24px;
    margin: 0 0 10px;
}

.title_s b {
    font-size: 15px;

}

.select_txt b {
    font-size: 18px;
}

.sp_only {
    display: block;
}

.pc_only {
    display: none;

}

@media (min-width: 415px) {
    /*415px 〜 959px*/
    .car_select b {
        margin: 0 0 10px 0px;
        display: block;

    }

    .sp_only {
        display: none;
    }

    .pc_only {
        display: block;
    }
}

@media (min-width: 960px) {
    /*960px 〜*/
    .car_select {
        font-size: 20px;
        font-weight: bold;
        margin-bottom: 50px;
    }
    
    .car_select b {
        font-size: 16px;
        color: #fff;
        background: #d9363a;
        padding: 10px 18px;
        margin-right: 24px;
        display: inline;
    }

    .title_black b {
        font-size: 25px;
        color: #fff;
        background: #333333;
        padding: 10px 38px;
    }

    .title_b {
        margin-top: 24px;
    }

    .title_b b {
        font-size: 32px;
    }

    .title_s {
        line-height: 24px;
    }

    .title_s b {
        font-size: 16px;
    }

    .select_txt b {
        font-size: 22px;
    }

    .sp_only {
        display: none;
    }

    .pc_only {
        display: block;
    }
}

.flex_test-box {
    display: flex; /* フレックスボックスにする */
    flex-wrap: wrap; /* 折り返し指定 */
    align-content: stretch; /* 折り返し時の配置指定 */
}

.flex_test-item {
    /*padding: 10px;*/
    color: #fff;
    margin: 10px auto;
    border-radius: 5px;
    font-size: 30px;
    text-align: center;
    width: calc((100% / 1) - 1em);
    border: solid #dddddd 1px;
    background: #fff;
}

.flex_test-item:nth-of-type(9) {
    display: none;
}

.main_label {
    margin: 10px auto;
    padding: 10px;
}

@media (min-width: 415px) {
    /*415px 〜 959px*/
    .flex_test-item {
        width: calc((100% / 2) - 1em);
    }

    .flex_test-item:nth-of-type(9) {
        display: none;
    }
}

@media (min-width: 960px) {
    /*960px 〜*/
    .flex_test-item {
        width: calc((100% / 3) - 1em);
    }

    .flex_test-item:nth-of-type(9) {
        border: none;
        display: block;
    }
}

.check_box {
    padding: 18px 0;
    background: #5bc0de;
}

.sub_label {
    display: block;
    font-size: 14px;
    /*background: #5bc0de;*/
    border-radius: 0 0 5px 5px;
}

.flex_test-item img {
    width: 100%;
}

.price {
    /*background: #5bc0de;*/
}

.panel-body {
    padding: 0 2px !important;
}

@media (min-width: 770px) {
    .panel-body {
        padding: 0 10px !important;
    }
}

.panel {
    margin-bottom: 10px;
}

.check-inline {
    margin-left: 0px !important;
    padding-left: 2px !important;
    text-align: left;
}

@media (max-width: 768px) {
    .min {
        font-size: 14px !important;
    }
}

.text-bold {
    font-weight: bold;
}


.privacy {
    padding: 1.5em;
    border: 1px solid #ccc;
    width: 100%;
    line-height: 1.42857143;
    word-break: break-all;
    background-color: #f5f5f5;
    border-radius: 4px;
    font-size: 16px;font-weight: bold;
}