@charset "UTF-8";

/* ----------------- reset ----------------- */

body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td
{margin:0;padding:0;}
table{border-collapse:collapse;border-spacing:0;}
img{border:0;}
li
{list-style:none;}
caption,th
{text-align:left;}
h1,h2,h3,h4,h5,h6
{font-size:100%;font-weight:normal;}
q:before,q:after{content:'';}
abbr,acronym {border:0;font-variant:normal;}
sup {vertical-align:text-top;}
sub {vertical-align:text-bottom;}
/*
input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit;}
input,textarea,select{*font-size:100%;}
*/
legend{color:#000;}


/* ------------------- layout ------------------------- */

* {
    font-size:10pt;
    line-height:1.5;
    font-family : sans-serif;
}

html{
    color:#000;
    background-color:#FFF;
}


div#container {
    width:1000px;
    margin:auto;
}

div#header {
    width:1000px;
    margin:auto;
}

div#content {
    padding:20px;
    min-height:400px;
    /* IE6 */
    height: auto !important;
    height: 400px;
}

div#footer {
    width:1000px;
    margin:auto;
    text-align:center;
}

.clear {
    clear:both;
}

p.description {
    margin-bottom:20px;
}


/* ------------------- form table ---------------------- */

table.apply {
    margin:auto;
    margin-bottom:30px;
}

table.apply th {
    width:200px;
}

table.apply th, table.apply td {
    border-bottom:1px solid #ccc;
    vertical-align:top;
    padding:8px;
    word-break: break-all;
}

table.apply td {
    width:550px;
}

div.submit {
    text-align:center;
    margin-top:10px;
    margin-bottom:20px;
}

span.req {
    color:#ff0000;
}

input[type=text], textarea {
    padding:2px;
}

div.mb5 {
    margin-bottom:5px;
}

input.medium {
    width:300px;
}

textarea.medium {
    width:95%;
    height:200px;

}

div.s_left {
    float:left;
    width:230px;
    text-align:right;
}

div.s_right {
    float:left;
    padding-left:10px;
    width:230px;
    text-align:right;
}


input.zip {
    width:80px;
}

input[type=checkbox], input[type=radio] {
    margin-right:4px;
}

div.notes {
    color:#666;
}


div.mb5 {
    margin-bottom:5px;
}

table.cat-pull-noboder {
    width:100%;
}

table.cat-pull-noboder th,
table.cat-pull-noboder td{
    width:auto;
    border:none;
    padding:3px;
    vertical-align:middle;
}

table.cat-pull-noboder th.r2,
table.cat-pull-noboder td.r2 {
    background-color:#eee;
}


/* ------------------- error message ---------------------- */
div.errorMessage,
div.message {
    color:#ff0000;
    font-weight:bold;
    padding:10px;
    background-color:#ffe1ea;
    margin-bottom:10px;
}



/* ------------------- not found -------------------- */

div.err_global {
    width:500px;
    margin:auto;
    padding:40px;
    border:5px solid #ddd;

}

/* ------------------- share -------------------- */

div.share {
    text-align:center;
    margin:20px;
}


div.tw_str {
    padding:10px;
    background-color:#eee;
    margin-bottom:10px;
}



/* ----------- modal ------------- */
#modalBase {
    position:fixed;
    top:0;
    left:0;
    height:100%;
    width:100%;
    background:black;
    opacity:0.60;
    filter:alpha(opacity=60);
}

#modal{
    position: fixed;
    top:50%;
    left:50%;
    background-color:#fff;
    border:5px solid #ccc;
}

* html #modalBase{
    position:absolute;
}
* html #modal{
    position: absolute;
}

textarea.pop_small{
    width:300px;
    height:80px;
}

.modalContent {
    padding:20px;
}

.modalContent h2 {
    font-weight:bold;
    margin-bottom:10px;
}

.modalContent .close {
    text-align:right;
}

.modalContent p {
    margin-bottom:10px;
}

/* ---------------------- page ------------------------ */
div.current_page {
    font-weight:bold;
    margin:10px;
    text-align:center;
}

div.privacy_policy {
    width:650px;
    margin:auto;
    background-color:#eee;
    padding:20px;
    margin-bottom:20px;
}

div.privacy_policy div.policy_title {
    font-weight:bold;
    margin-bottom:10px;
}

div.privacy_policy div.policy_str {
    width:100%;
    height:100px;
    overflow-y:auto;
}

.falseReq {
    background:#FFFFC5;
}

/* ---------------------- 画像付き選択項目 ------------------------ */

.selectBlockImage div {
    width:200px;
    display:inline-block;
    margin-right:10px;
    margin-bottom:10px;
    text-align:center;
}

.selectBlockImage label {
    display:block;
}

.clearfix:after {
    content: ".";  /* 新しい要素を作る */
    display: block;  /* ブロックレベル要素に */
    clear: both;
    height: 0;
    visibility: hidden;
}

.clearfix {
    min-height: 1px;
}

/* ------------ リアルタイムエラーチェック ------------------ */
.alertBox {
    padding:3px 0;
    color:#ff0000;
}

/* ------------------- 期間終了 -------------------- */

.err_end .end {
    width:500px;
    margin:auto;
    padding:40px;
    border:5px solid #ddd;

}


/* ------------------- 期間終了 -------------------- */

.err_over_limit .over_limit {
    width:500px;
    margin:auto;
    padding:40px;
    border:5px solid #ddd;

}


/* -------------- カレンダー ------------------- */
.reserve-calendar-wrapper .reserve-calendar-table {
    width: 100%;
    border-top: 1px solid #ccc;
    border-left: 1px solid #ccc;
}
.reserve-calendar-wrapper .reserve-calendar-table th, .reserve-calendar-wrapper .reserve-calendar-table td {
    border-bottom: 1px solid #ccc;
    border-right: 1px solid #ccc;
    padding: 4px;
    font-weight: bold;
    text-align: center !important;
    background-color: #fff;
}
.reserve-calendar-wrapper .reserve-calendar-table th:before, .reserve-calendar-wrapper .reserve-calendar-table td:before {
    padding: 0 !important;
    content: "" !important;
    background: transparent !important;
    float: none !important;
}
.reserve-calendar-wrapper .reserve-calendar-table .sat {
    color: blue;
}
.reserve-calendar-wrapper .reserve-calendar-table .sun {
    color: red;
}
.reserve-calendar-wrapper .reserve-calendar-table .btn-reserve-ok, .reserve-calendar-wrapper .reserve-calendar-table .btn-reserve-little, .reserve-calendar-wrapper .reserve-calendar-table .btn-reserve-ng {
    border-radius: 6px;
    padding: 5px 10px;
    text-align: center;
    color: #fff;
    font-weight: bold;
    -ms-user-select: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
}
.reserve-calendar-wrapper .reserve-calendar-table .btn-reserve-ok, .reserve-calendar-wrapper .reserve-calendar-table .btn-reserve-little {
    background-color: #44a3e7;
    cursor: pointer;
}
.reserve-calendar-wrapper .reserve-calendar-table .btn-reserve-ng {
    background-color: #ccc;
    cursor: not-allowed;
}
.reserve-calendar-wrapper .reserve-calendar-table .reserve-selected {
    background-color: #fd7238;
}
.reserve-calendar-wrapper span {
    display: block;
    margin: 20px 0;
    font-weight: bold;
}
