@charset "UTF-8";
/*                下層共通
======================================================= */
#header:before {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    content: "";
    display: block;
    background-color: #e5e5e5;
    z-index: 1;
}

/*                bread
======================================================= */
#bread {
    float: left;
}

@media only screen and (max-width: 768px) {
    #bread {
        display: none;
    }
}

#bread ol {
    overflow: hidden;
}

#bread ol li {
    display: inline-block;
    float: left;
    font-family: FontAwesome, "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Arial, sans-serif;
    font-size: inherit;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-size: 78.6%;
}

#bread ol li:before {
    content: "\f105";
    margin: 0 1em;
}

#bread ol li:first-child:before {
    content: "";
    margin: 0;
}

/*                レイアウト
======================================================= */
body.short_page .short_page_cont {
    background-color: #f0f5f5;
}

body.short_page .short_page_cont .page_continner {
    padding-top: 160px;
    padding-bottom: 180px;
}

body.short_page .short_page_cont .page_continner .medium_cont_title,
body.short_page .short_page_cont .page_continner .main_cont_title {
    padding-top: 0;
}

@media only screen and (max-width: 1024px) {
    body.short_page .short_page_cont .page_continner {
        padding-top: 80px;
        padding-bottom: 100px;
    }
}

@media only screen and (max-width: 768px) {
    body.short_page .short_page_cont .page_continner {
        padding-top: 30px;
        padding-bottom: 30px;
    }
}

#main_area {
    position: relative;
    padding-top: 160px;
    padding-bottom: 160px;
}

#main_area.bg_page {
    background-color: #f0f5f5;
}

#main_area p, #main_area ul, #main_area ol, #main_area dl, #main_area table {
    font-size: 107.1%;
    line-height: 1.9;
}

#main_area ul.list li {
  list-style-type: initial;
}

#main_area.head_cont_page {
    padding-top: 0;
}

#main_area.bottom_cont_page {
    padding-bottom: 0;
}

@media only screen and (max-width: 1024px) {
    #main_area {
        padding-top: 120px;
        padding-bottom: 120px;
    }
}

@media only screen and (max-width: 768px) {
    #main_area {
        padding-top: 60px;
        padding-bottom: 80px;
    }
}

@media only screen and (max-width: 480px) {
    #main_area {
        padding-top: 30px;
        padding-bottom: 50px;
    }
}

@media only screen and (max-width: 350px) {
    #main_area {
        padding-top: 20px;
        padding-bottom: 30px;
    }
}

#main_area .strong_catch {
    text-align: center;
    padding-top: 25px;
    padding-bottom: 25px;
}

#main_area .strong_catch p, #main_area .strong_catch h2, #main_area .strong_catch h3 {
    font-size: 142.9%;
    font-weight: 600;
}

@media only screen and (max-width: 1024px) {
    #main_area .strong_catch p, #main_area .strong_catch h2, #main_area .strong_catch h3 {
        font-size: 128.6%;
    }
}

@media only screen and (max-width: 768px) {
    #main_area .strong_catch p, #main_area .strong_catch h2, #main_area .strong_catch h3 {
        font-size: 114.3%;
    }
}

@media only screen and (max-width: 480px) {
    #main_area .strong_catch p, #main_area .strong_catch h2, #main_area .strong_catch h3 {
        font-size: 114.3%;
    }
}

#main_area .main_cont.vertical_cont {
    padding-top: 80px;
    padding-bottom: 100px;
}

#main_area .main_cont.vertical_cont + .vertical_cont {
    margin-top: 80px;
}

@media only screen and (max-width: 768px) {
    #main_area .main_cont.vertical_cont {
        padding-top: 50px;
        padding-bottom: 60px;
    }

    #main_area .main_cont.vertical_cont + .vertical_cont {
        margin-top: 50px;
    }
}

@media only screen and (max-width: 480px) {
    #main_area .main_cont.vertical_cont {
        padding-top: 30px;
        padding-bottom: 30px;
    }

    #main_area .main_cont.vertical_cont + .vertical_cont {
        margin-top: 30px;
    }
}

#main_area .main_cont + .main_cont {
    margin-top: 80px;
}

#main_area .main_cont + .main_cont.vertical_cont {
    padding-top: 80px;
    padding-bottom: 120px;
}

@media only screen and (max-width: 1024px) {
    #main_area .main_cont + .main_cont {
        margin-top: 50px;
    }

    #main_area .main_cont + .main_cont.vertical_cont {
        padding-top: 60px;
        padding-bottom: 80px;
    }
}

@media only screen and (max-width: 768px) {
    #main_area .main_cont + .main_cont {
        margin-top: 30px;
    }

    #main_area .main_cont + .main_cont.vertical_cont {
        padding-top: 50px;
        padding-bottom: 50px;
    }
}

@media only screen and (max-width: 480px) {
    #main_area .main_cont + .main_cont {
        margin-top: 20px;
    }

    #main_area .main_cont + .main_cont.vertical_cont {
        padding-top: 30px;
        padding-bottom: 30px;
    }
}

#main_area .main_cont.bg_color {
    background-color: #e5f6fc;
}

#main_area .main_cont.bg_color_02 {
    background-color: #f1f6f6;
}

#main_area .inner_cont + .inner_cont {
    margin-top: 50px;
}

@media only screen and (max-width: 1024px) {
    #main_area .inner_cont + .inner_cont {
        margin-top: 30px;
    }
}

@media only screen and (max-width: 768px) {
    #main_area .inner_cont + .inner_cont {
        margin-top: 20px;
    }
}

@media only screen and (max-width: 480px) {
    #main_area .inner_cont + .inner_cont {
        margin-top: 20px;
    }
}

#main_area .main_read p {
    font-size: 114.3%;
    font-weight: 500;
    line-height: 1.9;
}

#main_area .main_read.center {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

#main_area .main_read.center p {
    display: inline-block;
    text-align: center;
}

#main_area .entry_detail ul li {
    padding-left: 1.1em;
    text-indent: -1.1em;
}

#main_area .entry_detail ul li + li {
    margin-top: 0.1em;
}

#main_area .entry_detail ol li {
    padding-left: 2em;
    text-indent: -2em;
}

#main_area .entry_detail ol li > span.num {
    display: inline-block;
    text-indent: 0;
    width: 2em;
}

#main_area .entry_detail ol li + li {
    margin-top: 0.1em;
}

#main_area .entry_detail p + p, #main_area .entry_detail p + ul, #main_area .entry_detail p + ol, #main_area .entry_detail p + dl, #main_area .entry_detail ul + p, #main_area .entry_detail ul + ul, #main_area .entry_detail ul + ol, #main_area .entry_detail ul + dl, #main_area .entry_detail ol + p, #main_area .entry_detail ol + ul, #main_area .entry_detail ol + ol, #main_area .entry_detail ol + dl, #main_area .entry_detail dl + p, #main_area .entry_detail dl + ul, #main_area .entry_detail dl + ol, #main_area .entry_detail dl + dl {
    margin-top: 2.25em;
}



#main_area .privacy-box-wrapper { 
    border: 1px solid #ccc;
    padding: 1.5em;
    border-radius: 6px;
    background: #fdfdfd;
    margin: 2em 0;
}

#main_area .privacy-box-title {
    text-align: center;
    font-weight: bold;
    font-size: 1.1em;
    margin-bottom: 1em;
}

#main_area .scroll-box {
    border: 1px solid #ccc;
    padding: 1em;
    height: 150px;
    overflow-y: scroll;
    background: #f9f9f9;
    font-size: 0.9em;
}

/* 横並びに整えるラッパー */
#main_area .privacy-check-wrapper {
  display: flex;
  align-items: center;
  margin-top: 1em;
}

/* ラベル：初期は無効に見せる */
#main_area .privacy-label {
  color: #aaa;
  cursor: not-allowed;
  margin-left: 0.5em;
  transition: color 0.3s ease;
}

/* ラベル：スクロール後に有効にする */
#main_area .privacy-label.active {
  color: #333;
  cursor: pointer;
}

#main_area .required {
    color: #00a3e5;
    font-size: 92.9%;
}

.req_false {
	opacity: 0.5;
	cursor: not-allowed;
}

/* 初期状態：チェックできない */
#main_area input[type="checkbox"].check-disabled {
  pointer-events: none;
  opacity: 0.5;
}

/* ラベルが active のとき：ラベル自体の見た目変更 */
#main_area .privacy-label.active {
  color: #333;
  cursor: pointer;
}

/* ラベルが active かつ checkbox（check-disabled でなくても）に適用されるように */
#main_area .privacy-label.active input[type="checkbox"] {
  pointer-events: auto;
  opacity: 1;
}


.head_cont {
    position: relative;
}

.head_cont .head_kv {
    overflow: hidden;
    width: 100%;
    height: 400px;
    position: relative;
}

.head_cont .head_kv img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 100%;
    max-width: 200%;
}

@media only screen and (max-width: 1400px) {
    .head_cont .head_kv img {
        max-width: 300%;
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        width: auto;
        height: 100%;
    }
}

@media only screen and (max-width: 1200px) {
    .head_cont .head_kv {
        height: 350px;
    }
}

@media only screen and (max-width: 768px) {
    .head_cont .head_kv {
        height: 250px;
    }
}

@media only screen and (max-width: 640px) {
    .head_cont .head_kv {
        height: 200px;
    }
}

@media only screen and (max-width: 480px) {
    .head_cont .head_kv {
        height: 150px;
    }
}

.head_cont .head_cont_inner {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-line-pack: center;
    align-content: center;
    padding-left: 20px;
    padding-right: 20px;
    text-align: center;
}

.head_cont .head_cont_inner .kv_title h1 {
    color: #fff;
    font-family: "Noto Sans Japanese", serif;
}

.head_cont .head_cont_inner .kv_title h1 > span {
    display: block;
    font-weight: 500;
    margin-bottom: 5px;
    letter-spacing: 0.2em;
}

.head_cont .head_cont_inner .kv_title h1 > span.min {
    font-size: 200%;
}

.head_cont .head_cont_inner .kv_title h1 > span.main {
    font-size: 321.4%;
}

@media only screen and (max-width: 1024px) {
    .head_cont .head_cont_inner .kv_title h1 > span.min {
        font-size: 171.4%;
    }

    .head_cont .head_cont_inner .kv_title h1 > span.main {
        font-size: 285.7%;
    }
}

@media only screen and (max-width: 768px) {
    .head_cont .head_cont_inner .kv_title h1 > span {
        margin-bottom: 5px;
    }

    .head_cont .head_cont_inner .kv_title h1 > span.min {
        font-size: 142.9%;
    }

    .head_cont .head_cont_inner .kv_title h1 > span.main {
        font-size: 214.3%;
    }
}

@media only screen and (max-width: 480px) {
    .head_cont .head_cont_inner .kv_title h1 > span {
        margin-bottom: 5px;
    }

    .head_cont .head_cont_inner .kv_title h1 > span.min {
        font-size: 114.3%;
    }

    .head_cont .head_cont_inner .kv_title h1 > span.main {
        font-size: 157.1%;
    }
}

/*               スペックアイコン
======================================================= */
.spec_icon ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    margin-left: -0.4em;
    margin-bottom: -9px;
}

@media only screen and (max-width: 640px) {
    .spec_icon ul {
        margin-left: -0.2em;
        margin-bottom: -4px;
    }
}

.spec_icon ul li {
    padding-left: 0.4em;
    padding-bottom: 10px;
}

.spec_icon ul li > span, .spec_icon ul li > a {
    display: block;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    padding: 0.1em 1em 0.05em;
    text-align: center;
    font-size: 92.9%;
    border: solid 1px #00a3e5;
    color: #00a3e5;
}

@media only screen and (max-width: 640px) {
    .spec_icon ul li {
        padding-left: 0.2em;
        padding-bottom: 5px;
    }

    .spec_icon ul li > span, .spec_icon ul li > a {
        display: block;
        border-radius: 3px;
        -webkit-border-radius: 3px;
        -moz-border-radius: 3px;
        min-width: 8em;
        line-height: 1.2;
    }
}

@media only screen and (max-width: 480px) {
    .spec_icon ul li > span, .spec_icon ul li > a {
        display: block;
        min-width: 8em;
        font-size: 85.7%;
    }
}

.spec_icon ul li > a:hover {
    text-decoration: none;
}

.spec_icon ul li.campaign > span, .spec_icon ul li.campaign > a {
    background-color: #fff;
    border: solid 1px #ed8a1a;
    color: #ed8a1a;
}

/*      「パスワードを表示する」チェックボックス
======================================================= */
#visible_password input[type=checkbox] {
    margin-top: 2em;
    display: inline;
    min-width: 3em;
    width: 3em;
    -ms-transform: scale(1.5, 1.5);
    -webkit-transform: scale(1.5, 1.5);
    transform: scale(1.5, 1.5);
}

/*                エリア一覧ページ
======================================================= */
#main_area .room_list .list_inner .room_cont {
    margin-top: 40px;
    border: solid 3px #cccccc;
    padding: 12px;
    position: relative;
}

@media only screen and (max-width: 1024px) {
    #main_area .room_list .list_inner .room_cont {
        margin-top: 30px;
    }
}

@media only screen and (max-width: 768px) {
    #main_area .room_list .list_inner .room_cont {
        margin-top: 20px;
    }
}

@media only screen and (max-width: 480px) {
    #main_area .room_list .list_inner .room_cont {
        margin-top: 10px;
    }
}

@media only screen and (max-width: 768px) {
    #main_area .room_list .list_inner .room_cont {
        border: solid 2px #cccccc;
        padding: 10px;
    }
}

#main_area .room_list .list_inner .room_cont .links_box {
    display: block;
    background-color: #fff;
    opacity: 0;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}

@media only screen and (min-width: 769px) {
    #main_area .room_list .list_inner .room_cont .links_box {
        -webkit-transition: 400ms;
        -o-transition: 400ms;
        transition: 400ms;
    }

    #main_area .room_list .list_inner .room_cont .links_box:hover {
        opacity: 0.3;
        -webkit-transition: 400ms;
        -o-transition: 400ms;
        transition: 400ms;
    }
}

#main_area .room_list .list_inner .room_cont .links_box > p {
    opacity: 0;
}

#main_area .room_list .list_inner .room_cont .room_cont_main {
    display: block;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

#main_area .room_list .list_inner .room_cont .room_cont_main .room_thumb {
    min-width: 44.32%;
    position: relative;
}

@media only screen and (min-width: 641px) {
    #main_area .room_list .list_inner .room_cont .room_cont_main .room_thumb .thumb {
        overflow: hidden;
        width: 100%;
        height: 100%;
        min-height: 270px;
        position: relative;
    }

    #main_area .room_list .list_inner .room_cont .room_cont_main .room_thumb .thumb img {
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        width: auto;
        height: 100%;
    }

    #main_area .room_list .list_inner .room_cont .room_cont_main .room_thumb img {
        width: 100%;
        max-width: 430px;
    }
}

#main_area .room_list .list_inner .room_cont .room_cont_main .room_detail {
    max-width: 55.68%;
    padding-left: 38px;
    padding-right: 38px;
}

@media only screen and (max-width: 1024px) {
    #main_area .room_list .list_inner .room_cont .room_cont_main .room_detail {
        max-width: 55.68%;
        padding-left: 30px;
        padding-right: 8px;
    }
}

@media only screen and (max-width: 640px) {
    #main_area .room_list .list_inner .room_cont .room_cont_main {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    #main_area .room_list .list_inner .room_cont .room_cont_main .room_thumb {
        min-width: 100%;
        margin-bottom: 15px;
    }

    #main_area .room_list .list_inner .room_cont .room_cont_main .room_thumb .thumb {
        width: 100%;
        margin: auto;
    }

    #main_area .room_list .list_inner .room_cont .room_cont_main .room_thumb .thumb img {
        width: 100%;
    }

    #main_area .room_list .list_inner .room_cont .room_cont_main .room_detail {
        max-width: 100%;
        margin: auto;
        width: 100%;
        padding-left: 0;
        padding-right: 0;
    }
}

#main_area .room_list .list_inner .room_cont .room_cont_main .room_detail {
    position: relative;
    padding-top: 1em;
}

@media only screen and (max-width: 850px) {
    #main_area .room_list .list_inner .room_cont .room_cont_main .room_detail {
        padding-bottom: 2.5em;
    }
}

@media only screen and (max-width: 640px) {
    #main_area .room_list .list_inner .room_cont .room_cont_main .room_detail {
        padding-top: 1.5em;
    }
}

#main_area .room_list .list_inner .room_cont .room_cont_main .room_detail .icon_kentou {
    position: absolute;
    z-index: 2;
    right: 0;
    bottom: -0.25em;
    padding: 10px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

@media only screen and (max-width: 850px) {
    #main_area .room_list .list_inner .room_cont .room_cont_main .room_detail .icon_kentou {
        bottom: -0.75em;
    }
}

@media only screen and (max-width: 640px) {
    #main_area .room_list .list_inner .room_cont .room_cont_main .room_detail .icon_kentou {
        padding: 10px 0;
    }
}

#main_area .room_list .list_inner .room_cont .room_cont_main .room_detail .icon_kentou > span, #main_area .room_list .list_inner .room_cont .room_cont_main .room_detail .icon_kentou > a {
    color: #8a8a8a;
    font-size: 92.9%;
    letter-spacing: 0.05em;
    position: relative;
}

#main_area .room_list .list_inner .room_cont .room_cont_main .room_detail .icon_kentou > span:hover, #main_area .room_list .list_inner .room_cont .room_cont_main .room_detail .icon_kentou > a:hover {
    text-decoration: none;
}

#main_area .room_list .list_inner .room_cont .room_cont_main .room_detail .icon_kentou > span:after, #main_area .room_list .list_inner .room_cont .room_cont_main .room_detail .icon_kentou > a:after {
    content: "★";
    color: #8a8a8a;
    font-size: 22px;
    position: relative;
    top: 2px;
}

#main_area .room_list .list_inner .room_cont .room_cont_main .room_detail .icon_kentou > span.kentou_on:after, #main_area .room_list .list_inner .room_cont .room_cont_main .room_detail .icon_kentou > a.kentou_on:after {
    color: #00a3e5;
}

#main_area .room_list .list_inner .room_cont .room_cont_main .room_detail .room_cont_catch {
    margin-bottom: 0.25em;
}

#main_area .room_list .list_inner .room_cont .room_cont_main .room_detail .room_cont_title {
    margin-bottom: 0.6em;
}

#main_area .room_list .list_inner .room_cont .room_cont_main .room_detail .room_cont_title h3 {
    font-size: 157.1%;
    color: #00a3e5;
    font-weight: 600;
}

@media only screen and (max-width: 1024px) {
    #main_area .room_list .list_inner .room_cont .room_cont_main .room_detail .room_cont_title {
        margin-bottom: 0.8em;
    }

    #main_area .room_list .list_inner .room_cont .room_cont_main .room_detail .room_cont_title h3 {
        font-size: 142.9%;
    }
}

@media only screen and (max-width: 768px) {
    #main_area .room_list .list_inner .room_cont .room_cont_main .room_detail .room_cont_title {
        margin-bottom: 0.8em;
    }

    #main_area .room_list .list_inner .room_cont .room_cont_main .room_detail .room_cont_title h3 {
        font-size: 128.6%;
    }
}

@media only screen and (max-width: 480px) {
    #main_area .room_list .list_inner .room_cont .room_cont_main .room_detail .room_cont_title {
        margin-bottom: 0.6em;
    }

    #main_area .room_list .list_inner .room_cont .room_cont_main .room_detail .room_cont_title h3 {
        font-size: 114.3%;
    }
}

#main_area .room_list .list_inner .room_cont .room_cont_main .room_detail .detail_comment {
    border-top: solid 1px #ccc;
    border-bottom: solid 1px #ccc;
    padding: 0.4em 0;
}

#main_area .room_list .list_inner .room_cont .room_cont_main .room_detail .detail_comment p {
    line-height: 1.9;
    position: relative;
    max-height: 3.7em;
    overflow: hidden;
    font-weight: 500;
}

@media only screen and (max-width: 640px) {
    #main_area .room_list .list_inner .room_cont .room_cont_main .room_detail .detail_comment p {
        max-height: 6em;
    }
}

@media only screen and (max-width: 480px) {
    #main_area .room_list .list_inner .room_cont .room_cont_main .room_detail .detail_comment p {
        max-height: 6em;
    }
}

#main_area .room_list .list_inner .room_cont .room_cont_main .room_detail .detail_comment p:before, #main_area .room_list .list_inner .room_cont .room_cont_main .room_detail .detail_comment p:after {
    position: absolute;
    background: #fff;
}

#main_area .room_list .list_inner .room_cont .room_cont_main .room_detail .detail_comment p:before {
    content: "･･･";
    bottom: 0;
    right: 0;
    width: 1.85em;
}

#main_area .room_list .list_inner .room_cont .room_cont_main .room_detail .detail_comment p:after {
    content: "";
    width: 100%;
    height: 100%;
}

#main_area .room_list .list_inner .room_cont .room_cont_main .room_detail .detail_info {
    padding: 0.5em 0;
    vertical-align: bottom;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
}

#main_area .room_list .list_inner .room_cont .room_cont_main .room_detail .detail_info dl {
    display: table;
}

#main_area .room_list .list_inner .room_cont .room_cont_main .room_detail .detail_info dl + dl {
    margin-top: auto;
}

#main_area .room_list .list_inner .room_cont .room_cont_main .room_detail .detail_info dl.price {
    width: 100%;
}

#main_area .room_list .list_inner .room_cont .room_cont_main .room_detail .detail_info dl dt, #main_area .room_list .list_inner .room_cont .room_cont_main .room_detail .detail_info dl dd {
    display: table-cell;
    vertical-align: baseline;
    letter-spacing: -0.05em;
    line-height: 1.55;
}

#main_area .room_list .list_inner .room_cont .room_cont_main .room_detail .detail_info dl dt {
    width: 3.25em;
}

#main_area .room_list .list_inner .room_cont .room_cont_main .room_detail .detail_info dl dt:after {
    content: "：";
}

#main_area .room_list .list_inner .room_cont .room_cont_main .room_detail .detail_info dl dd {
    position: relative;
    padding-right: 1em;
}

#main_area .room_list .list_inner .room_cont .room_cont_main .room_detail .detail_info dl dd > span.price {
    margin-top: -0.2em;
    font-size: 142.9%;
    font-weight: 600;
    color: #00a3e5;
}

#main_area .room_list .list_inner .room_cont .room_cont_main .room_detail .spec_icon ul li > span, #main_area .room_list .list_inner .room_cont .room_cont_main .room_detail .spec_icon ul li > a {
    line-height: 1.1;
    min-width: 9em;
    padding: 0.4em 0.5em 0.3em;
}

/*
 閉鎖物件上書きスタイル -----
 */

#main_area .room_list .list_inner .closed .links_box {
    background-color: gray;
    opacity: .5;
    pointer-events: none;
}

#main_area .room_list .list_inner .closed .room_cont_main .room_detail .icon_kentou {
    display: none;
    pointer-events: none;
}

#main_area .room_list .list_inner .room_cont .st_text {
    display: none;

}

#main_area .room_list .list_inner .closed .st_text {
    display: block !important;
    margin: 0 0 0 16px;
    line-height: 1;
    font-size: 16px;
    font-weight: 600;
    color: red;
}

#main_area .room_list .list_inner .closed .room_cont_main .room_detail .room_cont_title {
    display: flex;
    align-items: center;
}


/*
 ----- 閉鎖物件上書きスタイル
 */

.area_link_list ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    margin-left: -13px;
    margin-bottom: -12px;
}

.area_link_list ul li {
    padding-left: 13px;
    padding-bottom: 13px;
    width: 16.6666%;
}

@media only screen and (max-width: 1024px) {
    .area_link_list ul {
        margin-left: -10px;
        margin-bottom: -9px;
    }

    .area_link_list ul li {
        padding-left: 10px;
        padding-bottom: 10px;
        width: 20%;
    }
}

@media only screen and (max-width: 850px) {
    .area_link_list ul li {
        width: 25%;
    }
}

@media only screen and (max-width: 768px) {
    .area_link_list ul li {
        width: 33.3333%;
    }
}

@media only screen and (max-width: 480px) {
    .area_link_list ul {
        margin-left: -5px;
        margin-bottom: -4px;
    }

    .area_link_list ul li {
        width: 50%;
        padding-left: 5px;
        padding-bottom: 5px;
    }
}

.area_link_list ul li > a, .area_link_list ul li > div {
    border: solid 1px #00a3e5;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    background-color: #fff;
}

.area_link_list ul li > a > span, .area_link_list ul li > div > span {
    display: block;
    width: 100%;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-line-pack: center;
    align-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: #00a3e5;
    text-align: center;
    font-size: 100%;
    padding: 0.55em 0 0.45em;
    position: relative;
    z-index: 1;
}

@media only screen and (max-width: 350px) {
    .area_link_list ul li > a > span, .area_link_list ul li > div > span {
        font-size: 92.9%;
        padding: 0.35em 0 0.4em;
        letter-spacing: -0.1em;
    }
}

.area_link_list ul li > a:hover, .area_link_list ul li > div:hover {
    text-decoration: none;
}

@media only screen and (min-width: 769px) {
    .area_link_list ul li > a, .area_link_list ul li > div {
        position: relative;
    }

    .area_link_list ul li > a:before, .area_link_list ul li > div:before {
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        content: "";
        display: block;
        background: #00a3e5;
        background: -webkit-linear-gradient(225deg, #0067bc, #00a2e4);
        background: -o-linear-gradient(225deg, #0067bc, #00a2e4);
        background: linear-gradient(-135deg, #0067bc, #00a2e4);
        -webkit-transition: 400ms;
        -o-transition: 400ms;
        transition: 400ms;
        opacity: 0;
    }

    .area_link_list ul li > a > span, .area_link_list ul li > div > span {
        -webkit-transition: 400ms;
        -o-transition: 400ms;
        transition: 400ms;
    }

    .area_link_list ul li > a:hover:before, .area_link_list ul li > div:hover:before {
        opacity: 1;
        -webkit-transition: 400ms;
        -o-transition: 400ms;
        transition: 400ms;
    }

    .area_link_list ul li > a:hover > span, .area_link_list ul li > div:hover > span {
        color: #fff;
        -webkit-transition: 400ms;
        -o-transition: 400ms;
        transition: 400ms;
    }
}

.area_block {
    margin-top: 20px;
}

@media only screen and (min-width: 769px) {
    .area_block ul {
        margin-left: -10px;
        margin-bottom: -9px;
    }

    .area_block ul li {
        padding-left: 10px;
        padding-bottom: 10px;
        width: 25%;
    }

    .area_block ul li > a > span, .area_block ul li > div > span {
        padding: 0.95em 0 0.85em;
        padding: 1.15em 0 1.05em;
    }
}

.area_block + .area_block {
    margin-top: 30px;
}

body.area_list #main_area {
    padding-top: 0px;
}

body.area_list #main_area #area_map {
    padding-bottom: 20px;
}

body.area_list #main_area #area_map #map_canvas {
    height: 550px;
    width: 100%;
}

body.area_list #main_area #result_area {
    padding-bottom: 30px;
}

body.area_list #main_area #result_area .main_cont_title {
    padding-bottom: 20px;
}

body.area_list #main_area #result_area .main_cont_title > div {
    position: relative;
}

body.area_list #main_area .search_result_head {
    position: relative;
    margin-bottom: 10px;
}

body.area_list #main_area .search_result_head .result_text {
    text-align: center;
}

body.area_list #main_area .search_result_head .result_text p {
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}

body.area_list #main_area .search_result_head .result_text p > span {
    font-size: 128.6%;
    font-weight: 500;
}

body.area_list #main_area .search_result_head .result_text p > span.num {
    font-size: 142.9%;
    color: #00a3e5;
    font-weight: 600;
    margin-right: 0.1em;
}

body.area_list #main_area .search_result_head .paging {
    position: absolute;
    right: 0;
    top: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

body.area_list #main_area .search_result_head .paging .radio_cont ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding-top: 0.1em;
}

body.area_list #main_area .search_result_head .paging .radio_cont ul li {
    padding-right: 1.1em;
}

body.area_list #main_area .search_result_head .paging select, body.area_list #main_area .search_result_head .paging input[type="text"] {
    letter-spacing: 0.05em;
    font-size: 92.9%;
    line-height: 1.3;
    border: solid 1px #959595;
    border-radius: 6px;
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    background-color: #fff;
    padding: 0.5em 0.75em 0.5em;
    width: 12em;
}

@media only screen and (max-width: 480px) {
    body.area_list #main_area .search_result_head .paging select, body.area_list #main_area .search_result_head .paging input[type="text"] {
        border-radius: 2px;
        -webkit-border-radius: 2px;
        -moz-border-radius: 2px;
    }
}

@media only screen and (max-width: 400px) {
    body.area_list #main_area .search_result_head .paging select, body.area_list #main_area .search_result_head .paging input[type="text"] {
        width: auto;
        max-width: 100%;
    }
}

body.area_list #main_area .search_result_head .paging select {
    color: #666666;
    position: static;
}

@media only screen and (max-width: 768px) {
    body.area_list #main_area .search_result_head .paging {
        position: static;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
}

body.area_list.ikebukuro .area_link_list ul li.ikebukuro,
body.area_list.saitama .area_link_list ul li.saitama,
body.area_list.shibuya .area_link_list ul li.shibuya,
body.area_list.akihabara .area_link_list ul li.akihabara,
body.area_list.yotsuya .area_link_list ul li.yotsuya,
body.area_list.tokyo .area_link_list ul li.tokyo,
body.area_list.akasaka .area_link_list ul li.akasaka,
body.area_list.shinagawa .area_link_list ul li.shinagawa,
body.area_list.yokohama .area_link_list ul li.yokohama,
body.area_list.kamata-kawasaki .area_link_list ul li.kamata-kawasaki,
body.area_list.saitama .area_link_list ul li.saitama,
body.area_list.chiba .area_link_list ul li.chiba,
body.area_list.nagoya .area_link_list ul li.nagoya,
body.area_list.osaka .area_link_list ul li.osaka,
body.area_list.sapporo .area_link_list ul li.sapporo,
body.area_list.hakata .area_link_list ul li.hakata,
body.area_list.utsunomiya .area_link_list ul li.utsunomiya {
    display: none;
}

/*                詳細ページ
======================================================= */
@media only screen and (min-width: 769px) {
    #room_detail #main_area {
        padding-top: 90px;
    }
}

@media only screen and (min-width: 769px) and (max-width: 1024px) {
    #room_detail #main_area {
        padding-top: 80px;
    }
}

#room_detail #main_area #meta_head {
    padding-bottom: 100px;
}

@media only screen and (max-width: 1024px) {
    #room_detail #main_area #meta_head {
        padding-bottom: 80px;
    }
}

@media only screen and (max-width: 640px) {
    #room_detail #main_area #meta_head {
        padding-bottom: 20px;
    }
}

#room_detail #main_area #meta_head .spec_icon {
    margin-bottom: 25px;
}

#room_detail #main_area #meta_head .spec_icon ul {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

#room_detail #main_area #meta_head .head_read > div + div {
    margin-top: 1em;
}

#room_detail #main_area #meta_head .head_read p {
    font-size: 114.3%;
}

@media only screen and (max-width: 1024px) {
    #room_detail #main_area #meta_head .head_read p {
        font-size: 100%;
    }
}

#room_detail #main_area #meta_head .head_read .first_read p {
    text-align: center;
    font-weight: 600;
}

#room_detail #main_area #meta_head .head_read .more_btn {
    margin-top: 1em;
    margin-bottom: 1em;
    text-align: right;
}

#room_detail #main_area #meta_head .head_read .more_btn p, #room_detail #main_area #meta_head .head_read .more_btn > a {
    color: #00a3e5;
    font-size: 100%;
    cursor: pointer;
}

@media only screen and (min-width: 769px) {
    #room_detail #main_area #meta_head .head_read .more_btn p:hover, #room_detail #main_area #meta_head .head_read .more_btn > a:hover {
        text-decoration: underline;
    }
}

#room_detail #main_area #meta_head .head_read .more_btn.open p .open_txt, #room_detail #main_area #meta_head .head_read .more_btn.open > a .open_txt {
    display: none;
}

#room_detail #main_area #meta_head .head_read .more_btn.open p:before, #room_detail #main_area #meta_head .head_read .more_btn.open > a:before {
    content: "閉じる";
}

#room_detail #main_area #meta_head .head_read .accordion_cont {
    display: none;
}

#room_detail #main_area #meta_head #key_slides {
    padding-top: 60px;
    padding-bottom: 60px;
}

#room_detail #main_area #meta_head #key_slides .main_slide {
    text-align: center;
}

#room_detail #main_area #meta_head #key_slides .main_slide .head_cap {
    margin-bottom: 20px;
}

#room_detail #main_area #meta_head #key_slides .main_slide .head_cap p {
    color: #00a3e5;
    font-size: 142.9%;
    font-weight: 600;
}


#room_detail #main_area #meta_head #key_slides .image {
    position: relative;
    width: 100%;
    overflow: hidden;
}

#room_detail #main_area #meta_head #key_slides .image::before {
    content: '';
    display: block;
    padding-top: 67%; /* アスペクト比 SassはFunctionで算出 */
}

#room_detail #main_area #meta_head #key_slides .image img {
    position: absolute;
    top: 50%;
    left: 50%;
    max-width: none;
    width: 100%;
    object-fit: cover;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

@media only screen and (min-width: 769px) {
    #room_detail #main_area #meta_head #key_slides .image {
        max-width: 600px;
    }
}

#room_detail #main_area #meta_head #key_slides .thumb_slide {
    margin-left: -10px;
    margin-right: -10px;
}

#room_detail #main_area #meta_head #key_slides .thumb_slide .thumb_set {
    margin: 20px 10px 0;
    position: relative;
    max-width: 135px;
    overflow: hidden;
    cursor: pointer;
}

#room_detail #main_area #meta_head #key_slides .thumb_slide .thumb_set::before {
    content: '';
    display: block;
    padding-top: 67%; /* アスペクト比 SassはFunctionで算出 */
}

#room_detail #main_area #meta_head #key_slides .thumb_slide .thumb_set img {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    object-fit: cover;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

@media only screen and (min-width: 769px) {
    #room_detail #main_area #meta_head #key_slides .thumb_slide .thumb_set {
        -webkit-transition: 400ms;
        -o-transition: 400ms;
        transition: 400ms;
    }

    #room_detail #main_area #meta_head #key_slides .thumb_slide .thumb_set:hover {
        opacity: 0.7;
        -webkit-transition: 400ms;
        -o-transition: 400ms;
        transition: 400ms;
    }
}

#room_detail #main_area #meta_head #key_slides .thumb_slide .slick-arrow {
    position: absolute;
    top: 10px;
    width: 24px;
    height: 100%;
    display: block;
    background-repeat: no-repeat;
    background-position: center;
    background-color: #e5f6fc;
    text-indent: -9999px;
    z-index: 2;
}

#room_detail #main_area #meta_head #key_slides .thumb_slide .slick-arrow.slick-prev {
    left: -12px;
    -webkit-transition: 400ms;
    -o-transition: 400ms;
    transition: 400ms;
    background-image: url(/room_reserve/media/images/common/detail_arrow_prev.png);
    background-position: center left;
}

#room_detail #main_area #meta_head #key_slides .thumb_slide .slick-arrow.slick-next {
    right: -12px;
    -webkit-transition: 400ms;
    -o-transition: 400ms;
    transition: 400ms;
    background-image: url(/room_reserve/media/images/common/detail_arrow_next.png);
    background-position: right;
}

@media only screen and (max-width: 768px) {
    #room_detail #main_area #meta_head #key_slides .thumb_slide .slick-arrow {
        display: none;
        opacity: 0;
    }

    #room_detail #main_area #meta_head #key_slides .thumb_slide .slick-arrow.slick-prev {
        left: -200px;
    }

    #room_detail #main_area #meta_head #key_slides .thumb_slide .slick-arrow.slick-next {
        right: -200px;
    }
}

@media only screen and (max-width: 1024px) {
    #room_detail #main_area #meta_head #key_slides {
        padding-top: 50px;
        padding-bottom: 50px;
    }

    #room_detail #main_area #meta_head #key_slides .main_slide .head_cap {
        margin-bottom: 10px;
    }

    #room_detail #main_area #meta_head #key_slides .main_slide .head_cap p {
        font-size: 128.6%;
    }
}

@media only screen and (max-width: 768px) {
    #room_detail #main_area #meta_head #key_slides {
        padding-top: 20px;
        padding-bottom: 20px;
    }

    #room_detail #main_area #meta_head #key_slides .main_slide .head_cap {
        margin-bottom: 10px;
    }

    #room_detail #main_area #meta_head #key_slides .main_slide .head_cap p {
        font-size: 114.3%;
    }

    #room_detail #main_area #meta_head #key_slides .thumb_slide {
        margin-left: -5px;
        margin-right: -5px;
    }

    #room_detail #main_area #meta_head #key_slides .thumb_slide .thumb_set {
        margin: 10px 5px 0;
    }
}

@media only screen and (max-width: 480px) {
    #room_detail #main_area #meta_head #key_slides .thumb_slide {
        margin-left: -2px;
        margin-right: -3px;
    }

    #room_detail #main_area #meta_head #key_slides .thumb_slide .thumb_set {
        margin: 5px 3px 0 2px;
    }
}

#room_detail #main_area #meta_head .btns_cont {
    margin-top: 40px;
}

#room_detail #main_area #meta_head .btns_cont ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-left: -12px;
    margin-right: -12px;
}

#room_detail #main_area #meta_head .btns_cont ul li {
    width: 33.33333%;
    padding-left: 12px;
    padding-right: 12px;
    min-height: 47px;
}

#room_detail #main_area #meta_head .btns_cont ul li > a:hover {
    text-decoration: none;
}

#room_detail #main_area #meta_head .btns_cont ul li > a, #room_detail #main_area #meta_head .btns_cont ul li > div {
    -ms-flex-line-pack: center;
    align-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    height: 100%;
    text-align: center;
    border: solid 2px #00a3e5;
    background-color: #fff;
    position: relative;
    padding: 0.25em 1.1em;
}

#room_detail #main_area #meta_head .btns_cont ul li > a:before, #room_detail #main_area #meta_head .btns_cont ul li > div:before {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    content: "";
    background-color: #00a3e5;
    opacity: 0;
}

#room_detail #main_area #meta_head .btns_cont ul li > a:after, #room_detail #main_area #meta_head .btns_cont ul li > div:after {
    position: absolute;
    top: 50%;
    right: 1em;
    content: "";
    display: block;
    width: 5px;
    height: 5px;
    line-height: 5px;
    margin-top: -4px;
    border-top: 1px solid #00a3e5;
    border-right: 1px solid #00a3e5;
    overflow: hidden;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transition: 400ms;
    -o-transition: 400ms;
    transition: 400ms;
}

#room_detail #main_area #meta_head .btns_cont ul li > a > span, #room_detail #main_area #meta_head .btns_cont ul li > div > span {
    position: relative;
    z-index: 1;
    text-align: center;
    width: 100%;
    display: inline-block;
    line-height: 1.1;
    color: #00a3e5;
    font-weight: 600;
    font-size: 92.9%;
}

@media only screen and (min-width: 769px) {
    #room_detail #main_area #meta_head .btns_cont ul li > a > span, #room_detail #main_area #meta_head .btns_cont ul li > div > span {
        -webkit-transition: 400ms;
        -o-transition: 400ms;
        transition: 400ms;
    }

    #room_detail #main_area #meta_head .btns_cont ul li > a:before, #room_detail #main_area #meta_head .btns_cont ul li > div:before {
        -webkit-transition: 400ms;
        -o-transition: 400ms;
        transition: 400ms;
    }

    #room_detail #main_area #meta_head .btns_cont ul li > a:hover > span, #room_detail #main_area #meta_head .btns_cont ul li > div:hover > span {
        color: #fff;
        -webkit-transition: 400ms;
        -o-transition: 400ms;
        transition: 400ms;
    }

    #room_detail #main_area #meta_head .btns_cont ul li > a:hover:before, #room_detail #main_area #meta_head .btns_cont ul li > div:hover:before {
        opacity: 1;
        -webkit-transition: 400ms;
        -o-transition: 400ms;
        transition: 400ms;
    }

    #room_detail #main_area #meta_head .btns_cont ul li > a:hover:after, #room_detail #main_area #meta_head .btns_cont ul li > div:hover:after {
        position: absolute;
        border-top: 1px solid #fff;
        border-right: 1px solid #fff;
    }
}

#room_detail #main_area #meta_head .btns_cont ul li.reserv > a, #room_detail #main_area #meta_head .btns_cont ul li.reserv > div {
    background-color: #00a3e5;
}

#room_detail #main_area #meta_head .btns_cont ul li.reserv > a:before, #room_detail #main_area #meta_head .btns_cont ul li.reserv > div:before {
    background-color: #fff;
}

#room_detail #main_area #meta_head .btns_cont ul li.reserv > a:after, #room_detail #main_area #meta_head .btns_cont ul li.reserv > div:after {
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
}

#room_detail #main_area #meta_head .btns_cont ul li.reserv > a > span, #room_detail #main_area #meta_head .btns_cont ul li.reserv > div > span {
    color: #fff;
}

@media only screen and (min-width: 769px) {
    #room_detail #main_area #meta_head .btns_cont ul li.reserv > a:hover > span, #room_detail #main_area #meta_head .btns_cont ul li.reserv > div:hover > span {
        color: #00a3e5;
        -webkit-transition: 400ms;
        -o-transition: 400ms;
        transition: 400ms;
    }

    #room_detail #main_area #meta_head .btns_cont ul li.reserv > a:hover:after, #room_detail #main_area #meta_head .btns_cont ul li.reserv > div:hover:after {
        position: absolute;
        border-top: 1px solid #00a3e5;
        border-right: 1px solid #00a3e5;
        -webkit-transition: 400ms;
        -o-transition: 400ms;
        transition: 400ms;
    }
}

@media only screen and (max-width: 1024px) {
    #room_detail #main_area #meta_head .btns_cont ul {
        margin-left: -5px;
        margin-right: -5px;
    }

    #room_detail #main_area #meta_head .btns_cont ul li {
        padding-left: 5px;
        padding-right: 5px;
    }

    #room_detail #main_area #meta_head .btns_cont ul li > a, #room_detail #main_area #meta_head .btns_cont ul li > div {
        padding: 0.25em 0.6em;
    }

    #room_detail #main_area #meta_head .btns_cont ul li > a:after, #room_detail #main_area #meta_head .btns_cont ul li > div:after {
        position: absolute;
        right: 0.5em;
    }
}

@media only screen and (max-width: 768px) {
    #room_detail #main_area #meta_head .btns_cont ul {
        margin-left: -5px;
        margin-right: -5px;
    }

    #room_detail #main_area #meta_head .btns_cont ul li {
        padding-left: 5px;
        padding-right: 5px;
        min-height: 40px;
    }
}

@media only screen and (max-width: 640px) {
    #room_detail #main_area #meta_head .btns_cont ul li > a, #room_detail #main_area #meta_head .btns_cont ul li > div {
        padding: 0.25em 0.6em;
    }

    #room_detail #main_area #meta_head .btns_cont ul li > a:after, #room_detail #main_area #meta_head .btns_cont ul li > div:after {
        position: absolute;
        right: 0.5em;
    }

    #room_detail #main_area #meta_head .btns_cont ul li > a > span, #room_detail #main_area #meta_head .btns_cont ul li > div > span {
        font-size: 85.7%;
    }
}

@media only screen and (max-width: 480px) {
    #room_detail #main_area #meta_head .btns_cont ul {
        margin-bottom: -9px;
    }

    #room_detail #main_area #meta_head .btns_cont ul li {
        width: 50%;
        margin-bottom: 10px;
    }

    #room_detail #main_area #meta_head .btns_cont ul li > a, #room_detail #main_area #meta_head .btns_cont ul li > div {
        padding: 0.25em 0.6em;
    }

    #room_detail #main_area #meta_head .btns_cont ul li > a:after, #room_detail #main_area #meta_head .btns_cont ul li > div:after {
        position: absolute;
        right: 0.5em;
    }

    #room_detail #main_area #meta_head .btns_cont ul li > a > span, #room_detail #main_area #meta_head .btns_cont ul li > div > span {
        font-size: 85.7%;
    }
}

#room_detail #main_area #room_access .access_inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

#room_detail #main_area #room_access .access_inner .access_info {
    padding-right: 40px;
}

#room_detail #main_area #room_access .access_inner .access_info > ul > li {
    position: relative;
    padding-left: 40px;
}

#room_detail #main_area #room_access .access_inner .access_info > ul > li + li {
    margin-top: 1em;
}

#room_detail #main_area #room_access .access_inner .access_info > ul > li:before {
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    content: "";
    width: 22px;
    background-position: top center;
    background-repeat: no-repeat;
    background-size: contain;
}

@media only screen and (max-width: 768px) {
    #room_detail #main_area #room_access .access_inner .access_info > ul > li {
        padding-left: 30px;
    }

    #room_detail #main_area #room_access .access_inner .access_info > ul > li:before {
        width: 18px;
        height: 100%;
    }
}

#room_detail #main_area #room_access .access_inner .access_info > ul > li.price:before {
    top: 0.5em;
    content: url(/room_reserve/media/images/common/icon_yen.png);
}

#room_detail #main_area #room_access .access_inner .access_info > ul > li.address:before {
    content: url(/room_reserve/media/images/common/icon_pin.png);
}

#room_detail #main_area #room_access .access_inner .access_info > ul > li.traffic:before {
    content: url(/room_reserve/media/images/common/icon_train.png);
}

@media only screen and (max-width: 768px) {
    #room_detail #main_area #room_access .access_inner .access_info > ul > li.price:before {
        content: "";
        background-image: url(/room_reserve/media/images/common/icon_yen.png);
    }

    #room_detail #main_area #room_access .access_inner .access_info > ul > li.address:before {
        content: "";
        background-image: url(/room_reserve/media/images/common/icon_pin.png);
    }

    #room_detail #main_area #room_access .access_inner .access_info > ul > li.traffic:before {
        content: "";
        background-image: url(/room_reserve/media/images/common/icon_train.png);
    }
}

#room_detail #main_area #room_access .access_inner .access_info > ul > li.price {
    color: #00a3e5;
    font-weight: 500;
}

#room_detail #main_area #room_access .access_inner .access_info > ul > li.price > span {
    position: relative;
    font-size: 128.6%;
}

#room_detail #main_area #room_access .access_inner .access_info > ul > li.price > span.num {
    font-size: 214.3%;
    line-height: 1.1;
}

#room_detail #main_area #room_access .access_inner .access_info > ul > li.address {
    font-size: 92.9%;
    letter-spacing: -0.025em;
    font-weight: 600;
}

#room_detail #main_area #room_access .access_inner .access_info > ul > li.address > span {
    display: inline-block;
    padding-right: 1em;
}

#room_detail #main_area #room_access .access_inner .access_info > ul > li.address > span.zip {
    padding-left: 0.25em;
}

#room_detail #main_area #room_access .access_inner .access_info > ul > li.traffic ul li {
    font-size: 92.9%;
    letter-spacing: -0.025em;
    font-weight: 600;
}

#room_detail #main_area #room_access .access_inner .access_info > ul > li.traffic ul li > span {
    display: inline-block;
}

#room_detail #main_area #room_access .access_inner .access_map {
    width: 360px;
}

#room_detail #main_area #room_access .access_inner .access_map #access_map {
    min-height: 232px;
}

#room_detail #main_area #room_access .access_inner .access_map .ill_map_btn {
    margin-top: 1em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}

#room_detail #main_area #room_access .access_inner .access_map .ill_map_btn > a {
    display: block;
    width: 11.5em;
    background-color: #00a3e5;
    color: #fff;
    text-align: center;
    padding: 0.65em 0.15em 0.55em;
}

#room_detail #main_area #room_access .access_inner .access_map .ill_map_btn > a:hover {
    text-decoration: none;
}

@media only screen and (min-width: 769px) {
    #room_detail #main_area #room_access .access_inner .access_map .ill_map_btn > a {
        opacity: 1;
        -webkit-transition: 400ms;
        -o-transition: 400ms;
        transition: 400ms;
    }

    #room_detail #main_area #room_access .access_inner .access_map .ill_map_btn > a:hover {
        opacity: 0.8;
        -webkit-transition: 400ms;
        -o-transition: 400ms;
        transition: 400ms;
    }
}

@media only screen and (max-width: 768px) {
    #room_detail #main_area #room_access .access_inner {
        display: block;
    }

    #room_detail #main_area #room_access .access_inner .access_info {
        padding-right: 0;
    }

    #room_detail #main_area #room_access .access_inner .access_map {
        margin-top: 20px;
        padding-left: 30px;
        width: 100%;
    }
}

#room_detail #main_area #campaign_info .campaign_inner {
    background-image: url(/room_reserve/media/images/common/campaign_inner_bg.png);
    padding: 50px;
    color: #ed8a19;
}

#room_detail #main_area #campaign_info .campaign_inner .min_title {
    margin-top: 30px;
}

#room_detail #main_area #campaign_info .campaign_inner .min_title h1, #room_detail #main_area #campaign_info .campaign_inner .min_title h2, #room_detail #main_area #campaign_info .campaign_inner .min_title h3, #room_detail #main_area #campaign_info .campaign_inner .min_title h4 {
    color: #ed8a19;
}

@media only screen and (max-width: 1024px) {
    #room_detail #main_area #campaign_info .campaign_inner {
        padding: 30px;
    }

    #room_detail #main_area #campaign_info .campaign_inner .min_title {
        margin-top: 20px;
    }
}

@media only screen and (max-width: 768px) {
    #room_detail #main_area #campaign_info .campaign_inner {
        padding: 15px;
    }

    #room_detail #main_area #campaign_info .campaign_inner .min_title {
        margin-top: 0px;
    }
}

@media only screen and (max-width: 480px) {
    #room_detail #main_area #campaign_info .campaign_inner {
        padding: 10px;
    }
}

#room_detail #main_area #price_list .price_list_inner table {
    border-top: solid 1px #ccc;
    border-right: solid 1px #ccc;
}

#room_detail #main_area #price_list .price_list_inner table tr th, #room_detail #main_area #price_list .price_list_inner table tr td {
    border-bottom: solid 1px #ccc;
    border-left: solid 1px #ccc;
    padding: 1em;
    font-size: 92.9%;
    vertical-align: middle;
}

#room_detail #main_area #price_list .price_list_inner table tr th {
    padding: 0.4em 0.5em 0.2em;
    background-color: #b2b2b2;
    text-align: center;
    color: #fff;
    white-space: nowrap;
    line-height: 1.1;
    font-weight: 600;
}

#room_detail #main_area #price_list .price_list_inner table tr td.kentou > span, #room_detail #main_area #price_list .price_list_inner table tr td.kentou > a {
    display: block;
    margin: auto;
    width: 1.5em;
}

#room_detail #main_area #price_list .price_list_inner table tr td.kentou > span > span, #room_detail #main_area #price_list .price_list_inner table tr td.kentou > a > span {
    color: #8a8a8a;
    display: block;
    font-size: 92.9%;
    letter-spacing: 0.05em;
    position: relative;
    text-indent: -9999px;
}

#room_detail #main_area #price_list .price_list_inner table tr td.kentou > span:after, #room_detail #main_area #price_list .price_list_inner table tr td.kentou > a:after {
    content: "★";
    color: #ccc;
    font-size: 22px;
    position: relative;
    top: 2px;
}

#room_detail #main_area #price_list .price_list_inner table tr td.kentou > span:hover, #room_detail #main_area #price_list .price_list_inner table tr td.kentou > a:hover {
    text-decoration: none;
}

#room_detail #main_area #price_list .price_list_inner table tr td.kentou > span.kentou_on:after, #room_detail #main_area #price_list .price_list_inner table tr td.kentou > a.kentou_on:after {
    color: #00a3e5;
}

#room_detail #main_area #price_list .price_list_inner table tr td.floor {
    text-align: center;
    min-width: 12em;
}

#room_detail #main_area #price_list .price_list_inner table tr td.floor .simulation_btn {
    margin-top: 0.2em;
}

#room_detail #main_area #price_list .price_list_inner table tr td.floor .simulation_btn > a {
    display: block;
    margin: auto;
    max-width: 7.8em;
    text-align: center;
    color: #fff;
    background-color: #66c8ef;
    font-size: 92.9%;
    padding: 0.25em;
}

#room_detail #main_area #price_list .price_list_inner table tr td.floor .simulation_btn > a:hover {
    text-decoration: none;
}

#room_detail #main_area #price_list .price_list_inner table tr td.mitori {
    text-align: center;
    padding: 0.5em 1.75em;
}

#room_detail #main_area #price_list .price_list_inner table tr td.mitori img {
    min-width: 140px;
    max-width: 140px;
}

#room_detail #main_area #price_list .price_list_inner table tr td.mitori .print {
    margin-top: 5px;
    display: block;
    text-align: center;
    color: #66c8ef;
    text-decoration: underline;
    font-weight: 600;
    font-size: 12px;
    line-height: 1.1;
}

#room_detail #main_area #price_list .price_list_inner table tr td.capa, #room_detail #main_area #price_list .price_list_inner table tr td.size, #room_detail #main_area #price_list .price_list_inner table tr td.price {
    min-width: 5.5em;
}

#room_detail #main_area #price_list .price_list_inner table tr td.capa {
    white-space: nowrap;
    text-align: center;
}

#room_detail #main_area #price_list .price_list_inner table tr td.size {
    white-space: nowrap;
    text-align: center;
}

#room_detail #main_area #price_list .price_list_inner table tr td.price {
    white-space: nowrap;
    text-align: right;
}

#room_detail #main_area #price_list .price_list_inner + .caution {
    margin-top: 1.5em;
}

@media only screen and (max-width: 1024px) {
    #room_detail #main_area #price_list .price_list_inner table tr th, #room_detail #main_area #price_list .price_list_inner table tr td {
        padding: 0.5em;
        font-size: 85.7%;
    }

    #room_detail #main_area #price_list .price_list_inner table tr th {
        padding: 0.4em 0.15em 0.2em;
    }

    #room_detail #main_area #price_list .price_list_inner table tr td.kentou > span, #room_detail #main_area #price_list .price_list_inner table tr td.kentou > a {
        width: 1.15em;
    }

    #room_detail #main_area #price_list .price_list_inner table tr td.kentou > span > span, #room_detail #main_area #price_list .price_list_inner table tr td.kentou > a > span {
        font-size: 92.9%;
    }

    #room_detail #main_area #price_list .price_list_inner table tr td.kentou > span:after, #room_detail #main_area #price_list .price_list_inner table tr td.kentou > a:after {
        font-size: 18px;
        top: 2px;
    }

    #room_detail #main_area #price_list .price_list_inner table tr td.floor {
        min-width: 10em;
    }

    #room_detail #main_area #price_list .price_list_inner table tr td.floor .simulation_btn {
        margin-top: 0.2em;
    }

    #room_detail #main_area #price_list .price_list_inner table tr td.floor .simulation_btn > a {
        padding: 0.2em;
    }

    #room_detail #main_area #price_list .price_list_inner table tr td.mitori {
        padding: 0.5em 1.75em;
    }

    #room_detail #main_area #price_list .price_list_inner table tr td.mitori img {
        min-width: 120px;
        max-width: 120px;
    }

    #room_detail #main_area #price_list .price_list_inner table tr td.capa, #room_detail #main_area #price_list .price_list_inner table tr td.size, #room_detail #main_area #price_list .price_list_inner table tr td.price {
        min-width: 3.0em;
        font-size: 85.7%;
    }

    #room_detail #main_area #price_list .price_list_inner table tr td.equipment {
        font-size: 85.7%;
    }
}

@media only screen and (max-width: 768px) {
    #room_detail #main_area #price_list .price_list_inner table tr th, #room_detail #main_area #price_list .price_list_inner table tr td {
        padding: 0.25em;
        font-size: 85.7%;
    }

    #room_detail #main_area #price_list .price_list_inner table tr th {
        padding: 0.4em 0.2em 0.2em;
        font-size: 78.6%;
    }

    #room_detail #main_area #price_list .price_list_inner table tr td.kentou > span, #room_detail #main_area #price_list .price_list_inner table tr td.kentou > a {
        width: 1.0em;
    }

    #room_detail #main_area #price_list .price_list_inner table tr td.kentou > span:after, #room_detail #main_area #price_list .price_list_inner table tr td.kentou > a:after {
        font-size: 16px;
        top: 0;
    }

    #room_detail #main_area #price_list .price_list_inner table tr td.floor {
        min-width: 8em;
    }

    #room_detail #main_area #price_list .price_list_inner table tr td.floor .simulation_btn {
        margin-top: 0.2em;
    }

    #room_detail #main_area #price_list .price_list_inner table tr td.floor .simulation_btn > a {
        max-width: 6em;
        padding: 0.1em 0.2em 0.2em;
    }

    #room_detail #main_area #price_list .price_list_inner table tr td.mitori {
        padding: 0.5em 1.75em;
    }

    #room_detail #main_area #price_list .price_list_inner table tr td.mitori .print:before {
        content: "拡大する";
    }

    #room_detail #main_area #price_list .price_list_inner table tr td.mitori .print > span {
        display: none;
    }

    #room_detail #main_area #price_list .price_list_inner table tr td.capa, #room_detail #main_area #price_list .price_list_inner table tr td.size, #room_detail #main_area #price_list .price_list_inner table tr td.price {
        min-width: 3.0em;
        font-size: 85.7%;
    }

    #room_detail #main_area #price_list .price_list_inner table tr td.equipment {
        font-size: 85.7%;
    }
}

#room_detail #main_area #price_list .caution p {
    font-size: 100%;
}

#room_detail #main_area #price_list .caution p a {
    font-weight: 600;
    text-decoration: underline;
}

#room_detail #main_area #price_list .caution p a:hover {
    text-decoration: none;
}

#room_detail #main_area #reserv {
    margin-top: 150px;
}

#room_detail #main_area #reserv .reserv_cont {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding-left: 70px;
    padding-right: 35px;
}

#room_detail #main_area #reserv .reserv_cont .reserv_calendar {
    width: 272px;
}

@media only screen and (max-width: 1024px) {
    #room_detail #main_area #reserv .reserv_cont {
        padding-left: 0px;
        padding-right: 0px;
    }

    #room_detail #main_area #reserv .reserv_cont .reserv_calendar {
        width: 272px;
    }
}

@media only screen and (max-width: 900px) {
    #room_detail #main_area #reserv .reserv_cont {
        display: block;
    }

    #room_detail #main_area #reserv .reserv_cont .reserv_calendar {
        margin-top: 20px;
        width: 100%;
    }
}

#room_detail #main_area #reserv .reserv_cont .flow_step .flow_cont {
    padding: 30px 10px;
}

#room_detail #main_area #reserv .reserv_cont .flow_step .flow_cont + .flow_cont {
    border-top: solid 2px #ebf0f0;
}

@media only screen and (max-width: 1024px) {
    #room_detail #main_area #reserv .reserv_cont .flow_step {
        margin-top: 50px;
    }

    #room_detail #main_area #reserv .reserv_cont .flow_step .flow_cont {
        padding: 30px 10px;
    }
}

@media only screen and (max-width: 768px) {
    #room_detail #main_area #reserv .reserv_cont .flow_step {
        margin-top: 30px;
    }

    #room_detail #main_area #reserv .reserv_cont .flow_step .flow_cont {
        padding: 10px 0;
    }
}

@media only screen and (max-width: 480px) {
    #room_detail #main_area #reserv .reserv_cont .flow_step {
        margin-top: 30px;
        border-top: solid 1px #ebf0f0;
    }

    #room_detail #main_area #reserv .reserv_cont .flow_step .flow_cont {
        border-bottom: solid 1px #ebf0f0;
        padding: 15px 0;
    }
}

#room_detail #main_area #reserv .reserv_cont .flow_step .flow_cont .cont_inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-line-pack: center;
    align-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

#room_detail #main_area #reserv .reserv_cont .flow_step .flow_cont .cont_inner .step_dt {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-line-pack: center;
    align-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    min-width: 7em;
    position: relative;
    min-height: 42px;
}

#room_detail #main_area #reserv .reserv_cont .flow_step .flow_cont .cont_inner .step_dt > span {
    color: #00a3e5;
    font-weight: 600;
    font-size: 142.9%;
    line-height: 1.05;
}

#room_detail #main_area #reserv .reserv_cont .flow_step .flow_cont .cont_inner .step_dt > span.num {
    font-size: 214.3%;
    margin-left: 0.2em;
}

@media only screen and (max-width: 1024px) {
    #room_detail #main_area #reserv .reserv_cont .flow_step .flow_cont .cont_inner .step_dt {
        min-width: 5.5em;
        margin-right: 1em;
    }

    #room_detail #main_area #reserv .reserv_cont .flow_step .flow_cont .cont_inner .step_dt:before {
        width: 40px;
        height: 100%;
    }

    #room_detail #main_area #reserv .reserv_cont .flow_step .flow_cont .cont_inner .step_dt > span {
        font-size: 128.6%;
    }

    #room_detail #main_area #reserv .reserv_cont .flow_step .flow_cont .cont_inner .step_dt > span.num {
        font-size: 200%;
        margin-left: 0.2em;
    }
}

#room_detail #main_area #reserv .reserv_cont .flow_step .flow_cont .cont_inner .step_dd p {
    font-size: 121.4%;
    font-weight: 600;
}

@media only screen and (max-width: 480px) {
    #room_detail #main_area #reserv .reserv_cont .flow_step .flow_cont .cont_inner {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    #room_detail #main_area #reserv .reserv_cont .flow_step .flow_cont .cont_inner .step_dt {
        margin-left: auto;
        margin-right: auto;
    }
}

#room_detail #main_area #reserv .reserv_cont .flow_step .flow_cont .link_btn {
    margin: 36px auto 0;
}

#room_detail #main_area #reserv .reserv_cont .flow_step .flow_caution p {
    font-size: 100%;
}

#room_detail #main_area #reserv .reserv_cont .reserv_calendar #calendar {
    margin-bottom: 1.5em;
}

#reserv_status {
    padding-bottom: 30px;
}

#detail_info .detail_cont .sub_cont_title {
    padding-top: 0;
    padding-bottom: 30px;
}

#detail_info .detail_cont .sub_cont_title h2 {
    color: #000000;
}

#detail_info .detail_cont + .detail_cont {
    padding-top: 50px;
}

#detail_info .detail_cont table {
    border-top: solid 2px #e0e8e8;
    border-bottom: solid 2px #e0e8e8;
}

#detail_info .detail_cont table tr + tr {
    border-top: solid 1px #e0e8e8;
}

#detail_info .detail_cont table tr th, #detail_info .detail_cont table tr td {
    padding: 1.35em 1.35em;
    font-size: 100%;
    vertical-align: top;
}

#detail_info .detail_cont table tr th a, #detail_info .detail_cont table tr td a {
    color: #00a3e5;
    text-decoration: underline;
}

#detail_info .detail_cont table tr th p, #detail_info .detail_cont table tr th ul li, #detail_info .detail_cont table tr td p, #detail_info .detail_cont table tr td ul li {
    font-size: 92.9%;
}

#detail_info .detail_cont table tr th p strong, #detail_info .detail_cont table tr th ul li strong, #detail_info .detail_cont table tr td p strong, #detail_info .detail_cont table tr td ul li strong {
    color: #d5000f;
    font-weight: 500;
}

#detail_info .detail_cont table tr th ul li, #detail_info .detail_cont table tr td ul li {
    padding-left: 1.1em;
    text-indent: -1.1em;
}

#detail_info .detail_cont table tr th {
    background-color: #f0f0f0;
    width: 11em;
    min-width: 11em;
    max-width: 11em;
}

#detail_info .detail_cont table tr th p {
    font-weight: 800;
}

@media only screen and (max-width: 768px) {
    #detail_info .detail_cont table {
        display: block;
        border-top: solid 1px #e0e8e8;
        border-bottom: solid 1px #e0e8e8;
    }

    #detail_info .detail_cont table tr th, #detail_info .detail_cont table tr td {
        display: block;
        width: 100%;
        max-width: 100%;
        padding: 10px 20px;
    }

    #detail_info .detail_cont table tr th br {
        display: none;
    }
}

#detail_info .detail_cont dl.tel_info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    padding: 0.75em 0;
}

#detail_info .detail_cont dl.tel_info dd {
    padding-left: 1em;
}

#detail_info .detail_cont dl.tel_info dd > span {
    display: block;
}

#detail_info .detail_cont dl.tel_info dd > span.tel_bg {
    font-size: 142.9%;
    color: #00a3e5;
    font-weight: 600;
    position: relative;
    padding-left: 22px;
    line-height: 1;
}

#detail_info .detail_cont dl.tel_info dd > span.tel_bg:before {
    position: absolute;
    left: 0;
    top: 0;
    width: 22px;
    height: 22px;
    display: block;
    content: "";
    background-repeat: no-repeat;
    background-size: contain;
    background-image: url(/room_reserve/media/images/common/tel_info_icon.png);
}

#detail_info .detail_cont dl.tel_info dd > span.min {
    font-size: 85.7%;
}

#main_area .status_cont .sub_cont_title {
    padding-bottom: 30px;
}

#main_area .status_cont + .status_cont {
    margin-top: 60px;
}

#main_area .status_cont .status_table table {
    border-top: solid 1px #ccc;
    border-right: solid 1px #ccc;
}

#main_area .status_cont .status_table table tr th, #main_area .status_cont .status_table table tr td {
    border-bottom: solid 1px #ccc;
    border-left: solid 1px #ccc;
}

#main_area .status_cont .status_table table thead th {
    padding: 0.3em 0.5em 0.1em;
    text-align: center;
    background-color: #66c8ef;
    color: #fff;
    text-align: center;
    white-space: nowrap;
}

@media only screen and (max-width: 768px) {
    #main_area .status_cont .status_table table thead th {
        font-size: 85.7%;
    }
}

#main_area .status_cont .status_table table tbody th {
    padding: 0.3em 0.5em 0.1em;
    text-align: center;
    background-color: #d9f1fb;
    text-align: center;
    font-size: 92.9%;
}

@media only screen and (max-width: 768px) {
    #main_area .status_cont .status_table table tbody th {
        font-size: 85.7%;
    }

    #main_area .status_cont .status_table table tbody th + th {
        white-space: nowrap;
    }
}

#main_area .status_cont .status_table table tbody td {
    text-align: center;
    position: relative;
}

#main_area .status_cont .status_table table tbody td > span, #main_area .status_cont .status_table table tbody td > a {
    padding: 0.8em 0;
    display: block;
    min-width: 1.3em;
    width: 100%;
    text-align: center;
    position: relative;
    min-height: 100%;
    margin: 0;
}

#main_area .status_cont .status_table table tbody td.afterOffice {
    background-color: #f0f0f0;
}

#main_area .status_cont .status_table table tbody td.capacity {
    background-color: #f0f0f0;
}

#main_area .status_cont .status_table table tbody td > span {
    font-size: 15px;
    font-weight: 600;
}

#main_area .status_cont .status_table table tbody td > a {
    color: #66c8ef;
    text-decoration: none;
}

@media only screen and (min-width: 769px) {
    #main_area .status_cont .status_table table tbody td > a:hover {
        background-color: #00a3e5;
        color: #fff;
    }
}

@media only screen and (max-width: 768px) {
    #main_area .status_cont .status_table table tbody td > a:active {
        background-color: #00a3e5;
        color: #fff;
    }
}

#main_area .status_cont.near_cont .sub_cont_title h2 {
    color: #ed8a19;
}

#main_area .status_cont.near_cont .status_table table thead th {
    background-color: #f2ad5e;
}

#main_area .status_cont.near_cont .status_table table tbody th {
    background-color: #fceddc;
}

#main_area .status_cont.near_cont .status_table table tbody td > a {
    color: #ed8a19;
    text-decoration: none;
}

@media only screen and (min-width: 769px) {
    #main_area .status_cont.near_cont .status_table table tbody td > a:hover {
        background-color: #ed8a19;
        color: #fff;
    }
}

@media only screen and (max-width: 768px) {
    #main_area .status_cont.near_cont .status_table table tbody td > a:active {
        background-color: #ed8a19;
        color: #fff;
    }
}

#main_area .status_cont.near_cont .status_table + .link_btn, #main_area .status_cont.near_cont .status_table + .min_link_btn {
    margin-top: 1.5em;
}

.tooltip_cont {
    position: relative;
}

.tooltip_cont .tooltip_btn {
    cursor: pointer;
}

.tooltip_cont .tooltip_btn.open > div:before {
    content: "利用可能日を閉じる";
    color: #fff;
    font-weight: 600;
}

.tooltip_cont .tooltip_btn.open > div > span {
    display: none;
}

.tooltip_cont .tooltip_main {
    display: none;
    position: absolute;
    left: 50%;
    top: 30px;
    width: 150%;
    -webkit-transform: translate(-50%, 0%);
    -ms-transform: translate(-50%, 0%);
    transform: translate(-50%, 0%);
    z-index: 9;
}

.tooltip_cont .tooltip_main table {
    margin-top: 0.5em;
    width: 100%;
    border-top: solid 1px #ccc;
    border-left: solid 1px #ccc;
}

.tooltip_cont .tooltip_main table th, .tooltip_cont .tooltip_main table td {
    border-right: solid 1px #ccc;
    border-bottom: solid 1px #ccc;
    line-height: 1.4em;
    vertical-align: middle;
    padding: 0.25em 0.5em;
}

.tooltip_cont .tooltip_main table thead th {
    background-color: #00a3e5;
    color: #fff;
    font-size: 100%;
    /*	text-align:left;*/
}

.tooltip_cont .tooltip_main table thead td {
    background-color: #fff;
    font-size: 100%;
}

.tooltip_cont .tooltip_main table tbody th {
    width: 160px;
}

.tooltip_cont .tooltip_main table tbody th > span {
    display: inline-block;
    font-size: 85.7%;
}

.tooltip_cont .tooltip_main table tbody th, .tooltip_cont .tooltip_main table tbody td {
    background-color: #fff;
    font-size: 100%;
}

/*                検索結果画面
======================================================= */
#search .search_head .search_read {
    margin-top: 1em;
}

#search .search_head .search_read p {
    text-align: center;
    font-size: 100%;
}

#search .search_head .search_read p > span {
    font-size: 114.3%;
    font-weight: 600;
}

#search .search_head .search_read p > span.num {
    font-size: 142.9%;
    margin-right: 0.25em;
    color: #00a3e5;
}

#search .search_meta > div + div {
    margin-top: 2em;
}

@media only screen and (max-width: 1024px) {
    #search .search_meta > div + div {
        margin-top: 1.5em;
    }
}

@media only screen and (max-width: 768px) {
    #search .search_meta > div + div {
        margin-top: 1.0em;
    }
}

#search .search_meta .search_conditions {
    border: solid 1px #ccc;
    padding: 0.65em 1em;
}

#search .search_meta .search_conditions dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
}

#search .search_meta .search_conditions dl dt {
    position: relative;
    padding-left: 1.1em;
    padding-right: 2em;
    display: flex;
    align-items: center;
}

#search .search_meta .search_conditions dl dt:before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    margin-top: -0.4em;
    width: 0.8em;
    height: 0.8em;
    background-color: #000000;
    display: block;
}

#search .search_meta .search_conditions dl dt:after {
    content: "";
    position: absolute;
    right: 1em;
    top: 50%;
    margin-top: -0.4em;
    width: 1px;
    height: 0.8em;
    background-color: #000000;
    display: block;
}

#search .search_meta .search_conditions dl dd:after {
    content: "、";
}

#search .search_meta .search_conditions dl dd:last-child:after {
    content: none;
}

@media only screen and (max-width: 1024px) {
    #search .search_meta .search_conditions {
        padding: 0.45em 0.8em;
    }
}

@media only screen and (max-width: 768px) {
    #search .search_meta .search_conditions {
        padding: 5px 10px;
    }

    #search .search_meta .search_conditions dt, #search .search_meta .search_conditions dd {
        font-size: 85.7%;
    }
}

@media only screen and (max-width: 480px) {
    #search .search_meta .search_conditions dl {
        display: block;
    }

    #search .search_meta .search_conditions dl dt {
        position: relative;
        padding-left: 1.1em;
        padding-right: 2em;
    }

    #search .search_meta .search_conditions dl dt:after {
        display: none;
    }
}

#search .search_meta .search_paging {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

#search .search_meta .search_paging .select_set {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-right: 1.5em;
}

#search .search_meta .search_paging .select_set select {
    min-width: 9em;
}

#search .search_meta .search_paging .select_set > div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

#search .search_meta .search_paging .select_set .search_status {
    margin-right: 1em;
}

#search .search_meta .search_paging .select_set .search_status p {
    font-size: 85.7%;
}

@media only screen and (max-width: 600px) {
    #search .search_meta .search_paging .select_set {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        margin-right: 1.0em;
    }

    #search .search_meta .search_paging .select_set select {
        min-width: 3em;
        width: 8em;
    }

    #search .search_meta .search_paging .select_set .search_status {
        margin-right: 0.5em;
    }
}

@media only screen and (max-width: 480px) {
    #search .search_meta .search_paging {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    #search .search_meta .search_paging .select_set {
        margin: auto auto 5px;
    }

    #search .search_meta .search_paging .select_set > div {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }

    #search .search_meta .search_paging .select_set .search_status {
        margin-right: 1em;
        width: 6em;
    }

    #search .search_meta .search_paging .select_set .search_status p {
        display: block;
        width: 100%;
        text-align: right;
        font-size: 85.7%;
    }
}

#search .search_result_cont .pagenation {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

#search .search_result_cont .pagenation ul {
    margin-right: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

#search .search_result_cont .pagenation ul li {
    font-size: 114.3%;
    padding-left: 1.0em;
    font-weight: 600;
}

#search .search_result_cont .pagenation ul li.active a {
    color: #00a3e5;
    text-decoration: underline;
}

#search .search_result_cont .search_result_table table th, #search .search_result_cont .search_result_table table td {
    font-size: 100%;
    border: solid 2px #e6e6e6;
}

@media only screen and (max-width: 1024px) {
    #search .search_result_cont .search_result_table table th, #search .search_result_cont .search_result_table table td {
        font-size: 92.9%;
    }
}

#search .search_result_cont .search_result_table table thead tr th {
    text-align: center;
    background-color: #b2b2b2;
    border: solid 2px #bfbfbf;
    border-top: solid 2px #b2b2b2;
    border-bottom: solid 2px #b2b2b2;
    color: #fff;
    font-weight: 700;
}

#search .search_result_cont .search_result_table table thead tr th.kentou {
    letter-spacing: -0.05em;
    line-height: 1.3;
}

#search .search_result_cont .search_result_table table tbody tr td {
    padding: 1.15em 0.8em;
}

#search .search_result_cont .search_result_table table tbody tr td a {
    color: #00a3e5;
    text-decoration: underline;
}

#search .search_result_cont .search_result_table table tbody tr td a:hover {
    text-decoration: none;
}

#search .search_result_cont .search_result_table table tbody tr td.kentou > span, #search .search_result_cont .search_result_table table tbody tr td.kentou > a {
    display: block;
    margin: auto;
    width: 1.5em;
    text-decoration: none;
    position: relative;
}

#search .search_result_cont .search_result_table table tbody tr td.kentou > span > span, #search .search_result_cont .search_result_table table tbody tr td.kentou > a > span {
    color: #8a8a8a;
    display: block;
    font-size: 92.9%;
    letter-spacing: 0.05em;
    position: relative;
    text-indent: -9999px;
}

#search .search_result_cont .search_result_table table tbody tr td.kentou > span:after, #search .search_result_cont .search_result_table table tbody tr td.kentou > a:after {
    content: "★";
    color: #ccc;
    font-size: 22px;
    position: absolute;
    top: -5px;
}

#search .search_result_cont .search_result_table table tbody tr td.kentou > span:hover, #search .search_result_cont .search_result_table table tbody tr td.kentou > a:hover {
    text-decoration: none;
}

#search .search_result_cont .search_result_table table tbody tr td.kentou > span.kentou_on:after, #search .search_result_cont .search_result_table table tbody tr td.kentou > a.kentou_on:after {
    color: #00a3e5;
}

@media only screen and (max-width: 768px) {
    #search .search_result_cont .search_result_table table tbody tr td.kentou {
        width: 100%;
        text-align: right;
        padding: 0 10px 0 10px;
    }

    #search .search_result_cont .search_result_table table tbody tr td.kentou > span, #search .search_result_cont .search_result_table table tbody tr td.kentou > a {
        display: inline-block;
        width: auto;
        position: relative;
    }

    #search .search_result_cont .search_result_table table tbody tr td.kentou > span > span, #search .search_result_cont .search_result_table table tbody tr td.kentou > a > span {
        color: #8a8a8a;
        display: inline-block;
        font-size: 78.6%;
        letter-spacing: 0.05em;
        position: relative;
        text-indent: 0;
        position: relative;
        padding-left: 26px;
    }

    #search .search_result_cont .search_result_table table tbody tr td.kentou > span:after, #search .search_result_cont .search_result_table table tbody tr td.kentou > a:after {
        content: "★";
        color: #ccc;
        font-size: 20px;
        position: absolute;
        left: 6px;
        top: -4px;
    }

    #search .search_result_cont .search_result_table table tbody tr td.kentou > span:hover, #search .search_result_cont .search_result_table table tbody tr td.kentou > a:hover {
        text-decoration: none;
    }

    #search .search_result_cont .search_result_table table tbody tr td.kentou > span.kentou_on:after, #search .search_result_cont .search_result_table table tbody tr td.kentou > a.kentou_on:after {
        color: #00a3e5;
    }
}

@media only screen and (min-width: 769px) {
    #search .search_result_cont .search_result_table table tbody tr td.facility {
        width: 34.5%;
    }
}

#search .search_result_cont .search_result_table table tbody .name {
    font-weight: 600;
    width: 16em;
}

#search .search_result_cont .search_result_table table tbody .name .spec_icon {
    display: inline-block;
    padding-left: 0.5em;
}

#search .search_result_cont .search_result_table table tbody .name .spec_icon ul li > a, #search .search_result_cont .search_result_table table tbody .name .spec_icon ul li > span {
    font-size: 78.6%;
    padding: 0.2em 0.5em 0.05em;
    line-height: 1.2;
    font-weight: 600;
}

#search .search_result_cont .search_result_table table tbody .floor {
    width: 8.5em;
    text-align: center;
}

#search .search_result_cont .search_result_table table tbody .capa, #search .search_result_cont .search_result_table table tbody .size {
    width: 5.5em;
    text-align: center;
    white-space: normal;
}

#search .search_result_cont .search_result_table table tbody .price {
    white-space: normal;
    text-align: right;
}

#search .search_result_cont .search_result_table table tbody .facility {
    text-align: center;
}

#search .search_result_cont .search_result_table table tbody .facility ul {
    display: inline-block;
    margin: auto;
    margin-left: -10px;
    overflow: hidden;
}

#search .search_result_cont .search_result_table table tbody .facility ul li {
    float: left;
    margin-left: 10px;
    padding-top: 5px;
}

@media only screen and (max-width: 1024px) {
    #search .search_result_cont .search_result_table table tbody .name {
        width: 15em;
    }

    #search .search_result_cont .search_result_table table tbody .facility ul {
        margin-left: -5px;
    }

    #search .search_result_cont .search_result_table table tbody .facility ul li {
        float: left;
        margin-left: 5px;
        margin-top: 5px;
    }

    #search .search_result_cont .search_result_table table tbody .facility ul li img {
        width: auto;
        height: 48px;
    }
}

@media only screen and (max-width: 950px) {
    #search .search_result_cont .search_result_table table tbody .name {
        width: 13em;
    }
}

@media only screen and (max-width: 768px) {
    #search .search_result_cont .search_result_table table {
        display: block;
    }

    #search .search_result_cont .search_result_table table th, #search .search_result_cont .search_result_table table td {
        font-size: 100%;
    }

    #search .search_result_cont .search_result_table table thead {
        display: none;
    }

    #search .search_result_cont .search_result_table table tbody tr {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
        flex-flow: row wrap;
        border-bottom: solid 1px #b2b2b2;
        border-left: solid 1px #b2b2b2;
    }

    #search .search_result_cont .search_result_table table tbody tr + tr {
        margin-top: 10px;
    }

    #search .search_result_cont .search_result_table table tbody tr td {
        padding: 0;
        position: relative;
        border-top: solid 1px #b2b2b2;
        border-right: solid 1px #b2b2b2;
        border-bottom-style: none;
        border-left-style: none;
    }

    #search .search_result_cont .search_result_table table tbody tr td:before {
        position: relative;
        display: block;
        width: 100%;
        text-align: center;
        background-color: #b2b2b2;
        color: #fff;
        font-weight: 700;
    }

    #search .search_result_cont .search_result_table table tbody tr .name {
        width: 100%;
        padding: 5px 10px;
        font-size: 114.3%;
    }

    #search .search_result_cont .search_result_table table tbody tr .floor {
        width: 50%;
    }

    #search .search_result_cont .search_result_table table tbody tr .floor:before {
        content: "部屋";
    }

    #search .search_result_cont .search_result_table table tbody tr .capa {
        width: 50%;
    }

    #search .search_result_cont .search_result_table table tbody tr .capa:before {
        content: "最大人数";
    }

    #search .search_result_cont .search_result_table table tbody tr .size {
        width: 50%;
    }

    #search .search_result_cont .search_result_table table tbody tr .size:before {
        content: "広さ";
    }

    #search .search_result_cont .search_result_table table tbody tr .price {
        width: 50%;
        text-align: center;
    }

    #search .search_result_cont .search_result_table table tbody tr .price:before {
        content: "料金";
    }

    #search .search_result_cont .search_result_table table tbody tr .facility {
        width: 100%;
    }

    #search .search_result_cont .search_result_table table tbody tr .facility:before {
        content: "設備";
    }
}

/*                recommended_cont
======================================================= */
.recommended_inner.orange_recommended .recommended_list .recommended_cont > a .recommended_text .recommended_title h2, .recommended_inner.orange_recommended .recommended_list .recommended_cont > a .recommended_text .recommended_title h3, .recommended_inner.orange_recommended .recommended_list .recommended_cont > a .recommended_text .recommended_title h4, .recommended_inner.orange_recommended .recommended_list .recommended_cont > div .recommended_text .recommended_title h2, .recommended_inner.orange_recommended .recommended_list .recommended_cont > div .recommended_text .recommended_title h3, .recommended_inner.orange_recommended .recommended_list .recommended_cont > div .recommended_text .recommended_title h4 {
    color: #ed8a19;
}

.recommended_inner.orange_recommended .recommended_list .recommended_cont > a:hover {
    text-decoration: none;
    color: #ed8a19;
}

/*                mypage
======================================================= */
.kv_search_width {
    max-width: 960px;
    display: block;
    margin-left: auto;
    margin-right: auto;
}

#mypage #head_search {
    padding-bottom: 20px;
}

#mypage #head_search .kv_searchcont .freeword_cont {
    background-color: #e5f6fc;
    padding-top: 33px;
    padding-bottom: 33px;
}

#mypage #head_search .kv_searchcont .searchbox_cont {
    background-color: #ccedfa;
    padding-top: 50px;
    padding-bottom: 50px;
}

#mypage #party_info {
    padding-bottom: 40px;
}

#mypage #news_list {
    padding-top: 80px;
}

#mypage .form_message p {
    text-align: center;
    font-size: 128.6%;
    font-weight: 500;
}

@media only screen and (max-width: 1024px) {
    #mypage .form_message p {
        font-size: 121.4%;
    }
}

@media only screen and (max-width: 768px) {
    #mypage .form_message p {
        font-size: 114.3%;
    }
}

@media only screen and (max-width: 480px) {
    #mypage .form_message p {
        font-size: 107.1%;
    }
}

#mypage .single_input {
    max-width: 500px;
    margin-left: auto;
    margin-right: auto;
}

#mypage .single_input label {
    width: 100%;
}

#mypage .single_input label select, #mypage .single_input label input[type="text"], #mypage .single_input label input[type="login_id"], #mypage .single_input label input[type="mail"], #mypage .single_input label input[type="password"], #mypage .single_input label .disabled_parts {
    width: 100%;
    font-size: 128.6%;
    padding: 0.85em 0.95em 0.7em;
}

@media only screen and (max-width: 1024px) {
    #mypage .single_input label select, #mypage .single_input label input[type="text"], #mypage .single_input label input[type="login_id"], #mypage .single_input label input[type="mail"], #mypage .single_input label input[type="password"], #mypage .single_input label .disabled_parts {
        font-size: 121.4%;
        padding: 0.75em 0.95em 0.6em;
    }
}

@media only screen and (max-width: 768px) {
    #mypage .single_input label select, #mypage .single_input label input[type="text"], #mypage .single_input label input[type="login_id"], #mypage .single_input label input[type="mail"], #mypage .single_input label input[type="password"], #mypage .single_input label .disabled_parts {
        font-size: 114.3%;
        padding: 0.6em 0.95em 0.5em;
    }
}

@media only screen and (max-width: 480px) {
    #mypage .single_input label select, #mypage .single_input label input[type="text"], #mypage .single_input label input[type="login_id"], #mypage .single_input label input[type="mail"], #mypage .single_input label input[type="password"], #mypage .single_input label .disabled_parts {
        font-size: 107.1%;
        padding: 0.45em 0.95em 0.4em;
    }
}

#mypage #login_form .cont_width {
    max-width: 870px;
}

#mypage #login_form .login_form_inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 100%;
    max-width: 870px;
}

#mypage #login_form .login_form_inner .login_form_cont {
    width: 50%;
    padding-left: 18px;
    padding-right: 18px;
    position: relative;
}

#mypage #login_form .login_form_inner .login_form_cont .inner {
    position: relative;
    height: 100%;
    background-color: #fff;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    padding: 60px 45px;
}

#mypage #login_form .login_form_inner .login_form_cont .inner form {
    position: relative;
}

#mypage #login_form .login_form_inner .login_form_cont .inner form .error {
    position: absolute;
    left: 0;
    top: -2.5em;
}

@media only screen and (max-width: 1024px) {
    #mypage #login_form .login_form_inner .login_form_cont {
        width: 50%;
    }
}

@media only screen and (max-width: 768px) {
    #mypage #login_form .login_form_inner {
        display: block;
    }

    #mypage #login_form .login_form_inner .login_form_cont {
        width: 100%;
        max-width: 100%;
        margin-bottom: 50px;
    }
}

#mypage #login_form .login_form_inner .login_form_cont .medium_cont_title {
    padding-top: 0;
}

#mypage #login_form .login_form_inner .login_form_cont .medium_cont_title h1 {
    text-align: center;
}

@media only screen and (max-width: 768px) {
    #mypage #login_form .login_form_inner .login_form_cont .medium_cont_title {
        padding-bottom: 40px;
    }
}

#mypage #login_form .login_form_inner .login_form_cont .input_cont {
    margin-bottom: 25px;
}

#mypage #login_form .login_form_inner .login_form_cont .input_cont select, #mypage #login_form .login_form_inner .login_form_cont .input_cont input[type="text"], #mypage #login_form .login_form_inner .login_form_cont .input_cont input[type="login_id"], #mypage #login_form .login_form_inner .login_form_cont .input_cont input[type="mail"], #mypage #login_form .login_form_inner .login_form_cont .input_cont input[type="password"] {
    font-size: 121.4%;
}

@media only screen and (max-width: 1024px) {
    #mypage #login_form .login_form_inner .login_form_cont .input_cont {
        margin-bottom: 20px;
    }
}

@media only screen and (max-width: 768px) {
    #mypage #login_form .login_form_inner .login_form_cont .input_cont {
        margin-bottom: 1em;
    }
}

#mypage #login_form .login_form_inner .login_form_cont .login_btn {
    padding: 20px 0 15px;
    text-align: center;
}

#mypage #login_form .login_form_inner .login_form_cont .login_btn > a, #mypage #login_form .login_form_inner .login_form_cont .login_btn > button {
    margin: auto;
    display: block;
    width: 100%;
    max-width: 15.5em;
    padding: 0.6em 0.4em 0.5em;
    background-color: #00a3e5;
    text-align: center;
    position: relative;
    text-decoration: none;
    border: solid 2px #00a3e5;
}

#mypage #login_form .login_form_inner .login_form_cont .login_btn > a:hover, #mypage #login_form .login_form_inner .login_form_cont .login_btn > button:hover {
    text-decoration: none;
}

#mypage #login_form .login_form_inner .login_form_cont .login_btn > a:before, #mypage #login_form .login_form_inner .login_form_cont .login_btn > button:before {
    position: absolute;
    right: 1em;
    top: 50%;
    content: "";
    width: 10px;
    height: 13px;
    margin-top: -6px;
    display: block;
    background-image: url(/room_reserve/media/images/common/link_btn_arr.png);
    background-repeat: no-repeat;
}

#mypage #login_form .login_form_inner .login_form_cont .login_btn > a > span, #mypage #login_form .login_form_inner .login_form_cont .login_btn > button > span {
    color: #fff;
    font-size: 107.1%;
    font-weight: 600;
}

@media only screen and (min-width: 769px) {
    #mypage #login_form .login_form_inner .login_form_cont .login_btn > a:before, #mypage #login_form .login_form_inner .login_form_cont .login_btn > button:before {
        -webkit-transition: 400ms;
        -o-transition: 400ms;
        transition: 400ms;
    }

    #mypage #login_form .login_form_inner .login_form_cont .login_btn > a:hover:before, #mypage #login_form .login_form_inner .login_form_cont .login_btn > button:hover:before {
        right: 0.7em;
        -webkit-transition: 400ms;
        -o-transition: 400ms;
        transition: 400ms;
    }
}

@media only screen and (max-width: 1024px) {
    #mypage #login_form .login_form_inner .login_form_cont .login_btn {
        padding: 25px 0 10px;
    }
}

@media only screen and (max-width: 768px) {
    #mypage #login_form .login_form_inner .login_form_cont .login_btn {
        padding: 1em 0 0.5em;
    }
}

#mypage #login_form .login_form_inner .login_form_cont .btn_cont > a, #mypage #login_form .login_form_inner .login_form_cont .btn_cont > button {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-line-pack: center;
    align-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    height: 70px;
    padding: 0.6em 0.4em 0.5em;
    background-color: #66c8ef;
    text-align: center;
    position: relative;
    text-decoration: none;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    position: relative;
    overflow: hidden;
}

#mypage #login_form .login_form_inner .login_form_cont .btn_cont > a > span, #mypage #login_form .login_form_inner .login_form_cont .btn_cont > button > span {
    width: 100%;
    position: relative;
    z-index: 1;
}

#mypage #login_form .login_form_inner .login_form_cont .btn_cont > a > span > span, #mypage #login_form .login_form_inner .login_form_cont .btn_cont > button > span > span {
    display: inline-block;
}

#mypage #login_form .login_form_inner .login_form_cont .btn_cont > a:after, #mypage #login_form .login_form_inner .login_form_cont .btn_cont > button:after {
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    content: "";
    background-color: #00a3e5;
    opacity: 0;
}

#mypage #login_form .login_form_inner .login_form_cont .btn_cont > a:hover, #mypage #login_form .login_form_inner .login_form_cont .btn_cont > button:hover {
    text-decoration: none;
}

@media only screen and (min-width: 769px) {
    #mypage #login_form .login_form_inner .login_form_cont .btn_cont > a:after, #mypage #login_form .login_form_inner .login_form_cont .btn_cont > button:after {
        -webkit-transition: 400ms;
        -o-transition: 400ms;
        transition: 400ms;
    }

    #mypage #login_form .login_form_inner .login_form_cont .btn_cont > a:hover:after, #mypage #login_form .login_form_inner .login_form_cont .btn_cont > button:hover:after {
        -webkit-transition: 400ms;
        -o-transition: 400ms;
        transition: 400ms;
        opacity: 1;
    }
}

@media only screen and (max-width: 768px) {
    #mypage #login_form .login_form_inner .login_form_cont .btn_cont > a, #mypage #login_form .login_form_inner .login_form_cont .btn_cont > button {
        height: 44px;
    }

    #mypage #login_form .login_form_inner .login_form_cont .btn_cont > a > span > span, #mypage #login_form .login_form_inner .login_form_cont .btn_cont > button > span > span {
        display: inline-block;
    }
}

#mypage #login_form .login_form_inner .login_form_cont .btn_cont > a > span, #mypage #login_form .login_form_inner .login_form_cont .btn_cont > button > span {
    display: block;
    width: 100%;
    color: #fff;
    font-size: 107.1%;
    font-weight: 500;
}

#mypage #login_form .login_form_inner .login_form_cont .btn_cont + .btn_cont {
    margin-top: 40px;
}

@media only screen and (max-width: 1024px) {
    #mypage #login_form .login_form_inner .login_form_cont .btn_cont + .btn_cont {
        margin-top: 20px;
    }
}

@media only screen and (max-width: 768px) {
    #mypage #login_form .login_form_inner .login_form_cont .btn_cont + .btn_cont {
        margin-top: 1em;
    }
}

#mypage #login_form .login_form_inner .login_form_cont .btn_cont + .caution_cont {
    margin-top: 1em;
}

#mypage #login_form .login_form_inner .login_form_cont .caution_cont p {
    text-align: center;
    font-size: 100%;
}

#mypage #login_form .login_form_inner .login_form_cont .caution_cont p a {
    color: #00a3e5;
    text-decoration: underline;
}

#mypage #login_form .login_form_inner .login_form_cont .caution_cont p a:hover {
    text-decoration: none;
}

#mypage #main_area #reserve_status #reserv {
    margin-top: 150px;
}

#mypage #main_area #reserve_status #reserv .reserv_cont {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding-left: 70px;
    padding-right: 35px;
}

#mypage #main_area #reserve_status #reserv .reserv_cont .reserv_calendar {
    width: 272px;
}

@media only screen and (max-width: 1024px) {
    #mypage #main_area #reserve_status #reserv .reserv_cont {
        padding-left: 0px;
        padding-right: 0px;
    }

    #mypage #main_area #reserve_status #reserv .reserv_cont .reserv_calendar {
        width: 272px;
    }
}

@media only screen and (max-width: 900px) {
    #mypage #main_area #reserve_status #reserv .reserv_cont {
        display: block;
    }

    #mypage #main_area #reserve_status #reserv .reserv_cont .reserv_calendar {
        margin-top: 20px;
        width: 100%;
    }
}

#mypage #main_area #reserve_status #reserv .reserv_cont .flow_step .flow_cont {
    padding: 30px 10px;
}

#mypage #main_area #reserve_status #reserv .reserv_cont .flow_step .flow_cont + .flow_cont {
    border-top: solid 2px #ebf0f0;
}

@media only screen and (max-width: 1024px) {
    #mypage #main_area #reserve_status #reserv .reserv_cont .flow_step {
        margin-top: 50px;
    }

    #mypage #main_area #reserve_status #reserv .reserv_cont .flow_step .flow_cont {
        padding: 30px 10px;
    }
}

@media only screen and (max-width: 768px) {
    #mypage #main_area #reserve_status #reserv .reserv_cont .flow_step {
        margin-top: 30px;
    }

    #mypage #main_area #reserve_status #reserv .reserv_cont .flow_step .flow_cont {
        padding: 10px 0;
    }
}

@media only screen and (max-width: 480px) {
    #mypage #main_area #reserve_status #reserv .reserv_cont .flow_step {
        margin-top: 30px;
        border-top: solid 1px #ebf0f0;
    }

    #mypage #main_area #reserve_status #reserv .reserv_cont .flow_step .flow_cont {
        border-bottom: solid 1px #ebf0f0;
        padding: 15px 0;
    }
}

#mypage #main_area #reserve_status #reserv .reserv_cont .flow_step .flow_cont .cont_inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-line-pack: center;
    align-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

#mypage #main_area #reserve_status #reserv .reserv_cont .flow_step .flow_cont .cont_inner .step_dt {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-line-pack: center;
    align-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    min-width: 7em;
    position: relative;
    min-height: 42px;
}

#mypage #main_area #reserve_status #reserv .reserv_cont .flow_step .flow_cont .cont_inner .step_dt > span {
    color: #00a3e5;
    font-weight: 600;
    font-size: 142.9%;
    line-height: 1.05;
}

#mypage #main_area #reserve_status #reserv .reserv_cont .flow_step .flow_cont .cont_inner .step_dt > span.num {
    font-size: 214.3%;
    margin-left: 0.2em;
}

@media only screen and (max-width: 1024px) {
    #mypage #main_area #reserve_status #reserv .reserv_cont .flow_step .flow_cont .cont_inner .step_dt {
        min-width: 5.5em;
        margin-right: 1em;
    }

    #mypage #main_area #reserve_status #reserv .reserv_cont .flow_step .flow_cont .cont_inner .step_dt:before {
        width: 40px;
        height: 100%;
    }

    #mypage #main_area #reserve_status #reserv .reserv_cont .flow_step .flow_cont .cont_inner .step_dt > span {
        font-size: 128.6%;
    }

    #mypage #main_area #reserve_status #reserv .reserv_cont .flow_step .flow_cont .cont_inner .step_dt > span.num {
        font-size: 200%;
        margin-left: 0.2em;
    }
}

#mypage #main_area #reserve_status #reserv .reserv_cont .flow_step .flow_cont .cont_inner .step_dd p {
    font-size: 121.4%;
    font-weight: 600;
}

@media only screen and (max-width: 480px) {
    #mypage #main_area #reserve_status #reserv .reserv_cont .flow_step .flow_cont .cont_inner {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    #mypage #main_area #reserve_status #reserv .reserv_cont .flow_step .flow_cont .cont_inner .step_dt {
        margin-left: auto;
        margin-right: auto;
    }
}

#mypage #main_area #reserve_status #reserv .reserv_cont .flow_step .flow_cont .link_btn {
    margin: 36px auto 0;
}

#mypage #main_area #reserve_status #reserv .reserv_cont .flow_step .flow_caution p {
    font-size: 100%;
}

#mypage #main_area #reserve_status #reserv .reserv_cont .reserv_calendar #calendar {
    margin-bottom: 1.5em;
}

/*                form page
======================================================= */
body.form_page.mypage-form #main_area {
    background-color: #edf2f2;
}

body.form_page.form-owner #main_area .form_cont dl dd .unit, body.form_page.form-common #main_area .form_cont dl dd .unit {
    margin-right: 0.5em;
}

body.form_page.form-owner #main_area .form_cont dl dd label + .unit, body.form_page.form-owner #main_area .form_cont dl dd .label + .unit, body.form_page.form-common #main_area .form_cont dl dd label + .unit, body.form_page.form-common #main_area .form_cont dl dd .label + .unit {
    margin-left: 0.5em;
}

body.form_page #main_area .reserve_search_width {
    margin-left: auto;
    margin-right: auto;
    max-width: 740px;
}

body.form_page #main_area .reserve_search_wide_width {
    margin-left: auto;
    margin-right: auto;
    max-width: 800px;
}

body.form_page #main_area .account_form_width {
    margin-left: auto;
    margin-right: auto;
    max-width: 650px;
}

body.form_page #main_area .common_form_width {
    margin-left: auto;
    margin-right: auto;
    max-width: 700px;
}

body.form_page #main_area .form_cont {
    padding-top: 30px;
    padding-bottom: 30px;
}

body.form_page #main_area .form_cont dl {
    position: relative;
}

body.form_page #main_area .form_cont dl + dl {
    margin-top: 1.5em;
}

@media only screen and (max-width: 1024px) {
    body.form_page #main_area .form_cont dl + dl {
        margin-top: 1.25em;
    }
}

@media only screen and (max-width: 768px) {
    body.form_page #main_area .form_cont dl + dl {
        margin-top: 1em;
    }
}

@media only screen and (min-width: 641px) {
    body.form_page #main_area .form_cont dl dt {
        position: absolute;
        left: 0;
        top: 0.5em;
        width: 6em;
        font-weight: 600;
        line-height: 1.5;
    }

    body.form_page #main_area .form_cont dl dt > span {
        display: inline-block;
    }

    body.form_page #main_area .form_cont dl dt.line_2 {
        top: -0.2em;
    }

    body.form_page #main_area .form_cont dl dd {
        padding-left: 7em;
    }
}

body.form_page #main_area .form_cont dl dt .required {
    color: #00a3e5;
    font-size: 92.9%;
}

body.form_page #main_area .form_cont dl dd {
    width: 100%;
}

body.form_page #main_area .form_cont dl dd + dd {
    margin-top: 0.5em;
}

body.form_page #main_area .form_cont dl dd input, body.form_page #main_area .form_cont dl dd select, body.form_page #main_area .form_cont dl dd textarea, body.form_page #main_area .form_cont dl dd .disabled_parts {
    font-size: 107.1%;
    border: solid 1px #ccc;
}

body.form_page #main_area .form_cont dl dd > div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-line-pack: center;
    align-content: center;
}

body.form_page #main_area .form_cont dl dd .width100 {
    min-width: 100%;
    width: 100%;
}

body.form_page #main_area .form_cont dl dd .width100 input, body.form_page #main_area .form_cont dl dd .width100 label, body.form_page #main_area .form_cont dl dd .width100 .label, body.form_page #main_area .form_cont dl dd .width100 select, body.form_page #main_area .form_cont dl dd .width100 .disabled_parts {
    min-width: 100%;
    width: 100%;
}

body.form_page #main_area .form_cont dl dd .width11em input, body.form_page #main_area .form_cont dl dd .width11em label, body.form_page #main_area .form_cont dl dd .width11em .label, body.form_page #main_area .form_cont dl dd .width11em select, body.form_page #main_area .form_cont dl dd .width11em .disabled_parts, body.form_page #main_area .form_cont dl dd .width11em span {
    width: 11em;
}

body.form_page #main_area .form_cont dl dd .width13_4em input, body.form_page #main_area .form_cont dl dd .width13_4em label, body.form_page #main_area .form_cont dl dd .width13_4em .label, body.form_page #main_area .form_cont dl dd .width13_4em select, body.form_page #main_area .form_cont dl dd .width13_4em .disabled_parts {
    width: 13.4em;
}

body.form_page #main_area .form_cont dl dd .error {
    width: 100%;
    margin-bottom: 0.25em;
}

body.form_page #main_area .form_cont dl dd.date_select {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

body.form_page #main_area .form_cont dl dd.date_select select, body.form_page #main_area .form_cont dl dd.date_select .disabled_parts {
    min-width: 3.75em;
    text-align: center;
}

body.form_page #main_area .form_cont dl dd.date_select label:before {
    display: none;
}

body.form_page #main_area .form_cont dl dd.date_select label + .unit {
    font-weight: 600;
}

body.form_page #main_area .form_cont dl dd.date_select label + .unit + label {
    margin-left: 1.0em;
}

body.form_page #main_area .form_cont dl dd.date_select > div + div:before {
    content: "～";
    margin-left: 1em;
    margin-right: 1em;
}

body.form_page #main_area .form_cont dl dd.date_select .unit {
    padding: 0.5em 0;
    font-size: 85.7%;
    letter-spacing: -0.025em;
    font-weight: 600;
    margin-left: 0.25em;
}

body.form_page #main_area .form_cont dl dd.time_select {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-line-pack: center;
    align-content: center;
}

body.form_page #main_area .form_cont dl dd.time_select select, body.form_page #main_area .form_cont dl dd.time_select .disabled_parts {
    min-width: 11.5em;
}

@media only screen and (max-width: 480px) {
    body.form_page #main_area .form_cont dl dd.time_select select, body.form_page #main_area .form_cont dl dd.time_select .disabled_parts {
        min-width: 7.5em;
    }
}

body.form_page #main_area .form_cont dl dd.time_select label:before {
    display: none;
}

body.form_page #main_area .form_cont dl dd.time_select .unit {
    padding: 0.5em 0;
    font-size: 85.7%;
    letter-spacing: -0.025em;
    font-weight: 600;
    margin-left: 1em;
}

body.form_page #main_area .form_cont dl dd.time_select > div + div:before {
    content: "～";
    margin-left: 0.25em;
    margin-right: 0.25em;
}

body.form_page #main_area .form_cont dl dd.time_table .caution {
    margin: 0.1em auto;
}

body.form_page #main_area .form_cont dl dd.time_table .caution p {
    color: #ed8a19;
    font-size: 85.7%;
    letter-spacing: -0.025em;
    font-weight: 800;
}

body.form_page #main_area .form_cont dl dd.time_table .status_table {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    border-right: solid 1px #ccc;
}

body.form_page #main_area .form_cont dl dd.time_table .status_table table {
    border-top: solid 1px #ccc;
    width: 50%;
}

@media only screen and (max-width: 768px) {
    body.form_page #main_area .form_cont dl dd.time_table .status_table table {
        width: 100%;
    }

    body.form_page #main_area .form_cont dl dd.time_table .status_table table + table {
        border-top-style: none;
    }
}

body.form_page #main_area .form_cont dl dd.time_table .status_table table tr {
    border-bottom: solid 1px #ccc;
}

body.form_page #main_area .form_cont dl dd.time_table .status_table table tr th, body.form_page #main_area .form_cont dl dd.time_table .status_table table tr td {
    border-left: solid 1px #ccc;
    line-height: 1.1;
    text-align: center;
}

body.form_page #main_area .form_cont dl dd.time_table .status_table table tr th {
    text-align: center;
    background-color: #e5f6fc;
    text-align: center;
    white-space: nowrap;
    font-size: 11px;
    padding: 0.2em 0 0.3em;
    width: 12.5%;
}

body.form_page #main_area .form_cont dl dd.time_table .status_table table tr td {
    text-align: center;
    position: relative;
}

body.form_page #main_area .form_cont dl dd.time_table .status_table table tr td > span, body.form_page #main_area .form_cont dl dd.time_table .status_table table tr td > a {
    padding: 0.3em 0 0.3em;
    display: block;
    width: 100%;
    text-align: center;
    position: relative;
    min-height: 100%;
    margin: 0;
    font-size: 11px;
    font-weight: 600;
    background-color: #fff;
    color: #00a3e5;
}

body.form_page #main_area .form_cont dl dd.time_table .status_table table tr td.close > span, body.form_page #main_area .form_cont dl dd.time_table .status_table table tr td.close > a, body.form_page #main_area .form_cont dl dd.time_table .status_table table tr td.full > span, body.form_page #main_area .form_cont dl dd.time_table .status_table table tr td.full > a {
    background-color: #e2e2e2;
    color: #000000;
}

body.form_page #main_area .form_cont dl dd.time_table .status_table.time06to23 table {
    width: 100%;
}


body.form_page #main_area .form_cont dl dd.time_table .status_table.time06to23 .col06to14 {
    width: 5.88%;
}

body.form_page #main_area .form_cont dl dd.time_table .status_table.time06to23 .col15to23 {
    width: 4.77%;
}

@media only screen and (max-width: 768px) {
    body.form_page #main_area .form_cont dl dd.time_table .status_table.time06to23 table.time06to14, body.form_page #main_area .form_cont dl dd.time_table .status_table.time06to23 table.time15to23 {
        width: 100%;
    }
}

body.form_page #main_area .form_cont dl dd.num_select, body.form_page #main_area .form_cont dl dd.purpose_select {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-line-pack: center;
    align-content: center;
}

body.form_page #main_area .form_cont dl dd.num_select select, body.form_page #main_area .form_cont dl dd.num_select .disabled_parts, body.form_page #main_area .form_cont dl dd.purpose_select select, body.form_page #main_area .form_cont dl dd.purpose_select .disabled_parts {
    min-width: 13.5em;
}

@media only screen and (max-width: 480px) {
    body.form_page #main_area .form_cont dl dd.num_select, body.form_page #main_area .form_cont dl dd.purpose_select {
        display: block;
    }

    body.form_page #main_area .form_cont dl dd.num_select label, body.form_page #main_area .form_cont dl dd.purpose_select label {
        min-width: 100%;
    }

    body.form_page #main_area .form_cont dl dd.num_select label select, body.form_page #main_area .form_cont dl dd.num_select label .disabled_parts, body.form_page #main_area .form_cont dl dd.purpose_select label select, body.form_page #main_area .form_cont dl dd.purpose_select label .disabled_parts {
        min-width: 100%;
    }
}

body.form_page #main_area .form_cont dl dd.num_select .unit, body.form_page #main_area .form_cont dl dd.purpose_select .unit {
    padding: 0.5em 0;
    font-size: 78.6%;
    font-weight: 600;
    display: inline-block;
    line-height: 1.4;
    margin-left: 1em;
}

body.form_page #main_area .form_cont dl dd.purpose_textarea > label {
    width: 100%;
}

body.form_page #main_area .form_cont dl dd.purpose_textarea textarea, body.form_page #main_area .form_cont dl dd.purpose_textarea .disabled_parts {
    width: 100%;
    min-height: 10em;
}

body.form_page #main_area .form_cont dl dd.purpose_textarea .caution p {
    font-size: 78.6%;
    font-weight: 600;
    letter-spacing: 0.025em;
}

body.form_page #main_area .form_cont dl dd.login_password {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}

body.form_page #main_area .form_cont dl dd.login_password > div {
    padding-right: 4px;
    width: 50%;
}

@media only screen and (max-width: 480px) {
    body.form_page #main_area .form_cont dl dd.login_password > div {
        padding-right: 0px;
        width: 100%;
    }
}

body.form_page #main_area .form_cont dl dd.login_password > div .caution {
    margin-top: 0.5em;
}

body.form_page #main_area .form_cont dl dd.login_password > div .caution p {
    font-size: 78.6%;
}

body.form_page #main_area .form_cont dl dd.login_password > div + div {
    padding-right: 0;
    padding-left: 4px;
}

@media only screen and (max-width: 480px) {
    body.form_page #main_area .form_cont dl dd.login_password > div + div {
        padding-right: 0;
        padding-left: 0px;
    }
}

body.form_page #main_area .form_cont dl dd.accept_term > div input[type=checkbox] {
    display: inline;
    min-width: 3em;
    width: 3em;
    -ms-transform: scale(1.5, 1.5);
    -webkit-transform: scale(1.5, 1.5);
    transform: scale(1.5, 1.5);
}

body.form_page #main_area .form_cont dl dd.accept_term > div span a:link {
    color: #00a3e5;
    text-decoration: underline;
}

body.form_page #main_area .form_cont dl dd .address_inner {
    position: relative;
    width: 100%;
    padding-left: 5em;
}

body.form_page #main_area .form_cont dl dd .address_inner > div.text {
    padding-right: 0.5em;
    width: 4.5em;
    min-width: 4.5em;
    position: absolute;
    left: 0;
    top: 0;
}

body.form_page #main_area .form_cont dl dd .address_inner > div.text > span {
    font-size: 85.7%;
}

body.form_page #main_area .form_cont dl dd .address_inner > div.your-zip {
    max-width: 12.5em;
}

body.form_page #main_area .form_cont dl dd .address_inner + .address_inner {
    margin-top: 1.5em;
}

body.form_page #main_area .form_cont dl dd .address_inner.zip label input[type="text"] {
    min-width: 9em;
    padding: 0.35em 0.95em 0.25em;
}

body.form_page #main_area .form_cont dl dd .address_inner.zip .zip_btn {
    margin-left: 1.25em;
}

body.form_page #main_area .form_cont dl dd .address_inner.zip .zip_btn.disabled {
    position: relative;
}

body.form_page #main_area .form_cont dl dd .address_inner.zip .zip_btn.disabled:before {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    content: "";
    opacity: 0;
    display: block;
}

body.form_page #main_area .form_cont dl dd .address_inner.zip .zip_btn input[type="button"] {
    font-size: 92.9%;
    font-weight: 600;
    background-color: #00a3e5;
    color: #fff;
    border-style: none;
    padding: 0.2em 1.25em 0.2em;
}

body.form_page #main_area .form_cont dl dd .address_inner.pref label select {
    padding: 0.35em 0.95em 0.25em;
    font-size: 92.9%;
}

body.form_page #main_area .form_cont dl dd .address_inner.add01 label, body.form_page #main_area .form_cont dl dd .address_inner.add02 label, body.form_page #main_area .form_cont dl dd .address_inner.add03 label {
    width: 100%;
}

body.form_page #main_area .form_cont dl dd .address_inner.add01 label input[type="text"], body.form_page #main_area .form_cont dl dd .address_inner.add02 label input[type="text"], body.form_page #main_area .form_cont dl dd .address_inner.add03 label input[type="text"] {
    max-width: 100%;
    width: 100%;
}

@media only screen and (max-width: 640px) {
    body.form_page #main_area .form_cont dl dd .address_inner.zip label input[type="text"] {
        min-width: 6em;
        padding: 0.35em 0.5em 0.25em;
    }

    body.form_page #main_area .form_cont dl dd .address_inner.zip .zip_btn {
        margin-left: 1em;
    }

    body.form_page #main_area .form_cont dl dd .address_inner.zip .zip_btn input[type="button"] {
        padding: 0.2em 0.75em 0.2em;
    }

    body.form_page #main_area .form_cont dl dd .address_inner > div.text {
        padding-right: 1.0em;
    }
}

body.form_page #main_area .form_cont dl dd.radio_cont {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    margin-left: -1.15em;
}

body.form_page #main_area .form_cont dl dd.radio_cont > p {
    margin-left: 1.15em;
}

body.form_page #main_area .form_cont dl dd.radio_cont label {
    margin-left: 1.15em;
}

body.form_page #main_area .form_cont dl dd.radio_cont label .radio-parts {
    font-size: 85.7%;
    padding-left: 1.5em;
}

body.form_page #main_area .account_form_cont dl {
    position: relative;
}

body.form_page #main_area .account_form_cont dl + dl {
    margin-top: 1.5em;
}

@media only screen and (max-width: 1024px) {
    body.form_page #main_area .account_form_cont dl + dl {
        margin-top: 1.25em;
    }
}

@media only screen and (max-width: 768px) {
    body.form_page #main_area .account_form_cont dl + dl {
        margin-top: 1em;
    }
}

@media only screen and (min-width: 641px) {
    body.form_page #main_area .account_form_cont dl dt {
        width: 13em;
    }

    body.form_page #main_area .account_form_cont dl dt .required {
        margin-left: 0.5em;
    }
}

@media only screen and (min-width: 641px) and (max-width: 1024px) {
    body.form_page #main_area .account_form_cont dl dt {
        padding-right: 2.5em;
    }

    body.form_page #main_area .account_form_cont dl dt .required {
        position: absolute;
        right: 0;
        top: 0.125em;
        font-size: 85.7%;
    }
}

@media only screen and (min-width: 641px) {
    body.form_page #main_area .account_form_cont dl dd {
        padding-left: 13.5em;
    }
}

@media only screen and (min-width: 641px) and (max-width: 1024px) {
    body.form_page #main_area .account_form_cont dl dt {
        width: 10.5em;
    }

    body.form_page #main_area .account_form_cont dl dd {
        padding-left: 11.0em;
    }
}

body.form_page #main_area .common_form_cont dl {
    position: relative;
}

body.form_page #main_area .common_form_cont dl + dl {
    margin-top: 1.5em;
}

@media only screen and (max-width: 1024px) {
    body.form_page #main_area .common_form_cont dl + dl {
        margin-top: 1.25em;
    }
}

@media only screen and (max-width: 768px) {
    body.form_page #main_area .common_form_cont dl + dl {
        margin-top: 1em;
    }
}

@media only screen and (min-width: 641px) {
    body.form_page #main_area .common_form_cont dl dt {
        width: 16em;
    }

    body.form_page #main_area .common_form_cont dl dt .required {
        margin-left: 0.5em;
    }
}

@media only screen and (min-width: 641px) and (max-width: 1024px) {
    body.form_page #main_area .common_form_cont dl dt {
        padding-right: 2.5em;
    }

    body.form_page #main_area .common_form_cont dl dt .required {
        position: absolute;
        right: 0;
        top: 0.125em;
        font-size: 85.7%;
    }
}

@media only screen and (min-width: 641px) {
    body.form_page #main_area .common_form_cont dl dd {
        padding-left: 16.5em;
    }
}

@media only screen and (min-width: 641px) and (max-width: 1024px) {
    body.form_page #main_area .common_form_cont dl dt {
        width: 12.0em;
    }

    body.form_page #main_area .common_form_cont dl dd {
        padding-left: 13.0em;
    }
}

body.form_page #main_area .reserve_list_form dl {
    position: relative;
}

body.form_page #main_area .reserve_list_form dl + dl {
    margin-top: 1.5em;
}

@media only screen and (max-width: 1024px) {
    body.form_page #main_area .reserve_list_form dl + dl {
        margin-top: 1.25em;
    }
}

@media only screen and (max-width: 768px) {
    body.form_page #main_area .reserve_list_form dl + dl {
        margin-top: 1em;
    }
}

@media only screen and (min-width: 641px) {
    body.form_page #main_area .reserve_list_form dl dt {
        position: absolute;
        left: 0;
        top: 0.5em;
        width: 6em;
        font-weight: 600;
        line-height: 1.5;
    }

    body.form_page #main_area .reserve_list_form dl dt > span {
        display: inline-block;
    }

    body.form_page #main_area .reserve_list_form dl dt.line_2 {
        top: -0.2em;
    }

    body.form_page #main_area .reserve_list_form dl dd {
        padding-left: 7em;
    }
}

body.form_page #main_area .reserve_list_form dl dd {
    width: 100%;
}

body.form_page #main_area .reserve_list_form dl dd input, body.form_page #main_area .reserve_list_form dl dd select, body.form_page #main_area .reserve_list_form dl dd textarea, body.form_page #main_area .reserve_list_form dl dd .disabled_parts {
    font-size: 107.1%;
    border: solid 1px #ccc;
}

body.form_page #main_area .reserve_list_form dl dd > div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-line-pack: center;
    align-content: center;
}

body.form_page #main_area .reserve_list_form dl dd .width100 {
    min-width: 100%;
    width: 100%;
}

body.form_page #main_area .reserve_list_form dl dd .width100 input, body.form_page #main_area .reserve_list_form dl dd .width100 label, body.form_page #main_area .reserve_list_form dl dd .width100 .label, body.form_page #main_area .reserve_list_form dl dd .width100 select, body.form_page #main_area .reserve_list_form dl dd .width100 .disabled_parts {
    min-width: 100%;
    width: 100%;
}

body.form_page #main_area .reserve_list_form dl dd.date_select {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
}

body.form_page #main_area .reserve_list_form dl dd.date_select select, body.form_page #main_area .reserve_list_form dl dd.date_select .disabled_parts {
    min-width: 3.75em;
    text-align: center;
}

body.form_page #main_area .reserve_list_form dl dd.date_select label:before {
    display: none;
}

body.form_page #main_area .reserve_list_form dl dd.date_select label + .unit {
    margin-left: 0.5em;
    font-weight: 600;
}

body.form_page #main_area .reserve_list_form dl dd.date_select label + .unit + label {
    margin-left: 1.0em;
}

body.form_page #main_area .reserve_list_form dl dd.date_select > div + div:before {
    content: "～";
    margin-left: 1em;
}

@media only screen and (max-width: 850px) {
    body.form_page #main_area .reserve_list_form dl dd.date_select {
        display: block;
    }

    body.form_page #main_area .reserve_list_form dl dd.date_select > div {
        width: 20em;
        max-width: 100%;
        position: relative;
    }

    body.form_page #main_area .reserve_list_form dl dd.date_select > div + div {
        margin-top: 2em;
    }

    body.form_page #main_area .reserve_list_form dl dd.date_select > div + div:before {
        content: "～";
        width: 2em;
        position: absolute;
        left: 50%;
        top: -1.5em;
        margin-left: -1.5em;
        -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        transform: rotate(90deg);
    }
}

body.form_page #main_area .reserve_list_table {
    margin: 80px auto;
}

@media only screen and (max-width: 1024px) {
    body.form_page #main_area .reserve_list_table {
        margin: 50px auto;
    }
}

@media only screen and (max-width: 768px) {
    body.form_page #main_area .reserve_list_table {
        margin: 30px auto;
    }

    body.form_page #main_area .reserve_list_table table {
        min-width: 800px;
    }
}

@media only screen and (max-width: 480px) {
    body.form_page #main_area .reserve_list_table {
        margin: 20px auto;
    }
}

body.form_page #main_area .reserve_list_table table {
    width: 100%;
}

body.form_page #main_area .reserve_list_table table th, body.form_page #main_area .reserve_list_table table td {
    font-size: 100%;
    border: solid 2px #e6e6e6;
}

@media only screen and (max-width: 1024px) {
    body.form_page #main_area .reserve_list_table table th, body.form_page #main_area .reserve_list_table table td {
        font-size: 92.9%;
    }
}

body.form_page #main_area .reserve_list_table table thead tr th {
    text-align: center;
    background-color: #b2b2b2;
    border: solid 2px #bfbfbf;
    border-top: solid 2px #b2b2b2;
    border-bottom: solid 2px #b2b2b2;
    color: #fff;
    font-weight: 700;
    line-height: 1.2;
    padding: 0.35em 0.1em;
}

body.form_page #main_area .reserve_list_table table tbody tr td {
    padding: 1.25em 0.2em;
    text-align: center;
    font-weight: 500;
    line-height: 1.4;
}

body.form_page #main_area .reserve_list_table table tr td.date, body.form_page #main_area .reserve_list_table table tr td.time {
    width: 5.5em;
}

body.form_page #main_area .reserve_list_table table tr td.name01, body.form_page #main_area .reserve_list_table table tr td.name02 {
    width: 8.0em;
}

body.form_page #main_area .reserve_list_table table tr td.status {
    width: 5.5em;
}

body.form_page #main_area .reserve_list_table table tr td.input {
    width: 5.3em;
}

body.form_page #main_area .reserve_list_table table tr td.input label {
    position: relative;
}

body.form_page #main_area .reserve_list_table table tr td.input label .exclamationPC2 {
    display: block;
    position: absolute;
    top: -13px;
    left: -6px;
    width: 18px;
    height: 18px;
    border-radius: 18px;
    background-color: #e82a2a;
    color: #fff;
    text-align: center;
    font-weight: bold;
    line-height: 18px;
    z-index: 1;
    font-size: 12px;
    text-indent: 1px;
}

body.form_page #main_area .reserve_list_table table tr td.input input[type="submit"], body.form_page #main_area .reserve_list_table table tr td.input input[type="button"], body.form_page #main_area .reserve_list_table table tr td.input input[type="reset"] {
    background-color: #66c8ef;
    color: #fff;
    padding: 0.3em 0.25em 0.25em;
    text-align: center;
    width: 100%;
    max-width: 4em;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    cursor: pointer;
}

body.form_page #main_area .reserve_list_table table tr td.input input[type="submit"]:active, body.form_page #main_area .reserve_list_table table tr td.input input[type="submit"].active, body.form_page #main_area .reserve_list_table table tr td.input input[type="button"]:active, body.form_page #main_area .reserve_list_table table tr td.input input[type="button"].active, body.form_page #main_area .reserve_list_table table tr td.input input[type="reset"]:active, body.form_page #main_area .reserve_list_table table tr td.input input[type="reset"].active {
    background-color: #0299d6;
}

@media only screen and (min-width: 769px) {
    body.form_page #main_area .reserve_list_table table tr td.input input[type="submit"]:hover, body.form_page #main_area .reserve_list_table table tr td.input input[type="button"]:hover, body.form_page #main_area .reserve_list_table table tr td.input input[type="reset"]:hover {
        background-color: #0299d6;
    }
}

body.form_page #main_area .reserve_list_table table tr td.input input[type="submit"]:disabled, body.form_page #main_area .reserve_list_table table tr td.input input[type="button"]:disabled, body.form_page #main_area .reserve_list_table table tr td.input input[type="reset"]:disabled {
    background-color: #e2e2e2;
    color: #b0b0b0;
    cursor: default;
}

body.form_page #main_area .reserve_list_table table tr td.input.change input[type="submit"], body.form_page #main_area .reserve_list_table table tr td.input.change input[type="button"], body.form_page #main_area .reserve_list_table table tr td.input.change input[type="reset"] {
    background-color: #f1a147;
}

body.form_page #main_area .reserve_list_table table tr td.input.change input[type="submit"]:active, body.form_page #main_area .reserve_list_table table tr td.input.change input[type="submit"].active, body.form_page #main_area .reserve_list_table table tr td.input.change input[type="button"]:active, body.form_page #main_area .reserve_list_table table tr td.input.change input[type="button"].active, body.form_page #main_area .reserve_list_table table tr td.input.change input[type="reset"]:active, body.form_page #main_area .reserve_list_table table tr td.input.change input[type="reset"].active {
    background-color: #ff8700;
}

@media only screen and (min-width: 769px) {
    body.form_page #main_area .reserve_list_table table tr td.input.change input[type="submit"]:hover, body.form_page #main_area .reserve_list_table table tr td.input.change input[type="button"]:hover, body.form_page #main_area .reserve_list_table table tr td.input.change input[type="reset"]:hover {
        background-color: #ff8700;
    }
}

body.form_page #main_area .reserve_list_table table tr td.input.change input[type="submit"]:disabled, body.form_page #main_area .reserve_list_table table tr td.input.change input[type="button"]:disabled, body.form_page #main_area .reserve_list_table table tr td.input.change input[type="reset"]:disabled {
    background-color: #e2e2e2;
    color: #b0b0b0;
}

body.form_page #main_area .reserve_list_table table tr td.checkbox_cont {
    width: 2.5em;
    min-width: 2.5em;
    padding-left: 0.5em;
    padding-right: 0.75em;
}

body.form_page #main_area .reserve_list_table table tr td.checkbox_cont .check-parts {
    padding-left: 0;
}

@media only screen and (max-width: 1024px) {
    body.form_page #main_area .reserve_list_table table tr td.date, body.form_page #main_area .reserve_list_table table tr td.time {
        width: 5.0em;
    }

    body.form_page #main_area .reserve_list_table table tr td.name02 {
        width: 6.0em;
    }

    body.form_page #main_area .reserve_list_table table tr td.input {
        width: 4.85em;
        position: relative;
    }
}

body.form_page #main_area .reserve_issue_btns {
    max-width: 500px;
    margin-left: auto;
    margin-right: auto;
}

body.form_page #main_area .reserve_issue_btns .read {
    margin-bottom: 30px;
}

body.form_page #main_area .reserve_issue_btns .read p {
    font-weight: 600;
    font-size: 128.6%;
    text-align: center;
    line-height: 1.8;
}

body.form_page #main_area .reserve_issue_btns .flex_btns {
    margin-bottom: 80px;
}

body.form_page #main_area .reserve_issue_btns .flex_btns ul > li.link_btn > a, body.form_page #main_area .reserve_issue_btns .flex_btns ul > li.link_btn > div {
    padding: 0.5em 0.4em 0.45em;
}

body.form_page #main_area .reserve_issue_btns .flex_btns ul > li.link_btn > a:hover:before, body.form_page #main_area .reserve_issue_btns .flex_btns ul > li.link_btn > div:hover:before {
    right: 1em;
    width: 10px;
    height: 13px;
    margin-top: -6px;
}

body.form_page #main_area .reserve_issue_btns .flex_btns ul > li.link_btn > a > span, body.form_page #main_area .reserve_issue_btns .flex_btns ul > li.link_btn > div > span {
    color: #fff;
    font-size: 100%;
    font-weight: 600;
}

@media only screen and (min-width: 769px) {
    body.form_page #main_area .reserve_issue_btns .flex_btns ul > li.link_btn > a:before, body.form_page #main_area .reserve_issue_btns .flex_btns ul > li.link_btn > div:before {
        -webkit-transition: 400ms;
        -o-transition: 400ms;
        transition: 400ms;
    }

    body.form_page #main_area .reserve_issue_btns .flex_btns ul > li.link_btn > a:hover:before, body.form_page #main_area .reserve_issue_btns .flex_btns ul > li.link_btn > div:hover:before {
        right: 0.7em;
        -webkit-transition: 400ms;
        -o-transition: 400ms;
        transition: 400ms;
    }
}

body.form_page #main_area .reserve_caution p{
    font-weight: 600;
    font-size: 100%;
    line-height: 1.8;
}

@media screen and (max-width: 768px) {
    body.form_page #main_area.reserve_caution p{
        text-align: left;
    }
    .show-pc {
        display: none; 
    }
}

@media screen and (min-width: 768px) {
    body.form_page #main_area .reserve_caution p{
        text-align: center;
    }
    .br-sp {
        display: none; 
    }
}


body.form_page #main_area .reserve_caution p + p, body.form_page #main_area .reserve_caution p + dl {
    margin-top: 2em;
}

body.form_page #main_area .reserve_caution dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

body.form_page #main_area .reserve_caution dl + dl {
    margin-top: auto;
}

body.form_page #main_area .reserve_caution dl dt, body.form_page #main_area .reserve_caution dl dd {
    width: auto;
    position: static;
    padding: 0;
    font-weight: 600;
    font-size: 100%;
    text-align: center;
    line-height: 1.8;
}

body.form_page #main_area .reserve_caution dl dd:before {
    content: "　:　";
}

body.form_page #main_area .reserve_caution .tel_info {
    margin-top: 2.5em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

body.form_page #main_area .reserve_caution .tel_info .tel_num {
    color: #00a3e5;
    text-align: center;
    margin-bottom: 0.75em;
    padding-left: 0.5em;
    padding-right: 0.6em;
    font-size: 128.6%;
    font-weight: 600;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

body.form_page #main_area .reserve_caution .tel_info .tel_num a {
    color: #00a3e5;
    text-decoration: none;
}

body.form_page #main_area .reserve_caution .tel_info .tel_num span {
    display: block;
}

body.form_page #main_area .reserve_caution .tel_info .tel_num .icon {
    font-size: 66%;
    border: solid 1px #00a3e5;
    padding: 0.3em 0.5em 0.2em;
    margin-right: 1em;
    min-width: 4em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-line-pack: center;
    align-content: center;
    height: 1.6em;
}

body.form_page #main_area .reserve_caution .tel_info .tel_num .icon > span {
    height: 1.0em;
    line-height: 1em;
    display: block;
    width: 100%;
}

body.form_page #main_area .reserve_caution .tel_info .tel_num.main_num {
    width: 100%;
    font-size: 157.1%;
}

body.form_page #main_area .reserve_caution .tel_info .tel_num.main_num .icon {
    background-color: #00a3e5;
    color: #fff;
}

body.form_page #main_area #completed div.form_message > p a:link {
    color: #00a3e5;
    text-decoration: underline;
}

/*                サムネイルリスト
======================================================= */
.thumbs_flex_list ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    margin: -10px -13px;
}

.thumbs_flex_list ul li {
    padding: 10px 13px;
    width: 25%;
}

.thumbs_flex_list ul li > a, .thumbs_flex_list ul li > div {
    display: block;
    text-align: center;
}

.thumbs_flex_list ul li > a:hover, .thumbs_flex_list ul li > div:hover {
    text-decoration: none;
}

.thumbs_flex_list ul li > a > span, .thumbs_flex_list ul li > div > span {
    display: block;
}

.thumbs_flex_list ul li > a .thumb_image img, .thumbs_flex_list ul li > div .thumb_image img {
    display: block;
    max-width: 100%;
    margin: auto;
}

.thumbs_flex_list ul li > a .thumb_image + .cap, .thumbs_flex_list ul li > div .thumb_image + .cap {
    margin-top: 0.25em;
}

.thumbs_flex_list ul li > a .cap, .thumbs_flex_list ul li > div .cap {
    font-size: 100%;
    text-align: left;
}

/*                キャンペーンリスト
======================================================= */
#campaignfarst #main_area {
    padding-top: 0;
}

#campaignfarst .bar_campaign {
    background: #ed8a19;
    color: #fff;
    text-align: center;
    padding: 105px 40px;
    position: relative;
}

#campaignfarst .bar_campaign .inner {
    max-width: 100%;
    position: relative;
}

#campaignfarst .bar_campaign .bar_title h1, #campaignfarst .bar_campaign .bar_title > p {
    font-size: 200%;
    font-weight: 600;
    font-family: "Noto Sans Japanese", serif;
    color: #fff;
    text-align: center;
}

#campaignfarst .bar_campaign .bar_title h1 > span, #campaignfarst .bar_campaign .bar_title > p > span {
    display: inline-block;
}

#campaignfarst .bar_campaign .bar_read {
    margin-top: 0.6em;
}

@media only screen and (max-width: 1300px) {
    #campaignfarst .bar_campaign {
        padding: 80px 20px;
    }
}

@media only screen and (max-width: 1024px) {
    #campaignfarst .bar_campaign {
        padding: 50px 20px;
    }

    #campaignfarst .bar_campaign .bar_title h1, #campaignfarst .bar_campaign .bar_title > p {
        font-size: 200%;
    }

    #campaignfarst .bar_campaign .bar_read > p {
        font-size: 100%;
    }
}

@media only screen and (max-width: 768px) {
    #campaignfarst .bar_campaign {
        padding: 30px 20px;
    }

    #campaignfarst .bar_campaign .bar_title h1, #campaignfarst .bar_campaign .bar_title > p {
        font-size: 171.4%;
    }
}

@media only screen and (max-width: 480px) {
    #campaignfarst .bar_campaign {
        padding: 20px 20px;
    }

    #campaignfarst .bar_campaign .bar_title h1, #campaignfarst .bar_campaign .bar_title > p {
        font-size: 142.9%;
    }
}

#campaignfarst #campaign_detail {
    background-color: #fdf3e8;
    padding: 110px 20px;
}

@media only screen and (max-width: 1200px) {
    #campaignfarst #campaign_detail {
        padding: 80px 20px;
    }
}

@media only screen and (max-width: 1024px) {
    #campaignfarst #campaign_detail {
        padding: 60px 20px;
    }
}

@media only screen and (max-width: 768px) {
    #campaignfarst #campaign_detail {
        padding: 50px 20px;
    }
}

@media only screen and (max-width: 480px) {
    #campaignfarst #campaign_detail {
        padding: 30px 10px;
    }
}

#campaignfarst #campaign_detail .campaign_detail_inner {
    max-width: 600px;
    display: block;
    margin-left: auto;
    margin-right: auto;
}

#campaignfarst #campaign_detail .cont_key_image img {
    max-width: 100%;
    display: block;
    margin: auto;
}

#campaignfarst #campaign_detail .detail_info {
    padding-top: 1em;
}

#campaignfarst #campaign_detail .detail_info + .detail_info {
    margin-top: 1.5em;
}

#campaignfarst #campaign_detail .detail_info .detail_info_text {
    padding-top: 1.5em;
}

#campaignfarst #campaign_detail .detail_info .detail_info_text p {
    font-size: 100%;
    font-weight: 500;
    line-height: 2;
}

#campaignfarst #campaign_detail .detail_info .detail_info_text p > strong {
    font-weight: 600;
    color: #ed8a19;
}

#campaignfarst #campaign_detail .detail_info .detail_info_text.center p {
    text-align: center;
}

#campaignfarst #campaign_detail .detail_info .detail_info_btn {
    margin-top: 1.5em;
}

#campaignlong #main_area {
    padding-top: 0;
}

#campaignlong .bar_campaign {
    background: #00a3e5;
    color: #fff;
    text-align: center;
    padding: 40px 40px;
    position: relative;
    height: 360px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-line-pack: center;
    align-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

#campaignlong .bar_campaign .inner {
    max-width: 500px;
    position: relative;
    margin-left: auto;
    margin-right: auto;
}

#campaignlong .bar_campaign .bar_title {
    margin-top: 1em;
}

#campaignlong .bar_campaign .bar_title h1, #campaignlong .bar_campaign .bar_title > p {
    font-size: 228.6%;
    font-weight: 600;
    font-family: "Noto Sans Japanese", serif;
    color: #fff;
    text-align: center;
}

#campaignlong .bar_campaign .bar_title h1 > span, #campaignlong .bar_campaign .bar_title > p > span {
    display: inline-block;
}

#campaignlong .bar_campaign .bar_read {
    margin-top: 2em;
    text-align: left;
}

@media only screen and (max-width: 1300px) {
    #campaignlong .bar_campaign {
        padding: 20px;
        height: 300px;
    }
}

@media only screen and (max-width: 1024px) {
    #campaignlong .bar_campaign {
        height: 280px;
    }

    #campaignlong .bar_campaign .bar_title h1, #campaignlong .bar_campaign .bar_title > p {
        font-size: 200%;
    }

    #campaignlong .bar_campaign .bar_read > p {
        font-size: 100%;
    }
}

@media only screen and (max-width: 768px) {
    #campaignlong .bar_campaign {
        padding: 30px 20px;
        height: auto;
    }

    #campaignlong .bar_campaign .bar_title h1, #campaignlong .bar_campaign .bar_title > p {
        font-size: 171.4%;
    }
}

@media only screen and (max-width: 480px) {
    #campaignlong .bar_campaign {
        padding: 20px 20px;
    }

    #campaignlong .bar_campaign .bar_title h1, #campaignlong .bar_campaign .bar_title > p {
        font-size: 142.9%;
    }
}

#campaignlong #campaign_detail {
    background-color: #e5f6fc;
    padding: 110px 20px;
}

@media only screen and (max-width: 1200px) {
    #campaignlong #campaign_detail {
        padding: 80px 20px;
    }
}

@media only screen and (max-width: 1024px) {
    #campaignlong #campaign_detail {
        padding: 60px 20px;
    }
}

@media only screen and (max-width: 768px) {
    #campaignlong #campaign_detail {
        padding: 50px 20px;
    }
}

@media only screen and (max-width: 480px) {
    #campaignlong #campaign_detail {
        padding: 30px 10px;
    }
}

#campaignlong #campaign_detail .campaign_detail_inner {
    max-width: 600px;
    display: block;
    margin-left: auto;
    margin-right: auto;
}

#campaignlong #campaign_detail .cont_key_image img {
    max-width: 100%;
    display: block;
    margin: auto;
}

#campaignlong #campaign_detail .detail_info {
    padding-top: 1em;
}

#campaignlong #campaign_detail .detail_info + .detail_info {
    margin-top: 1.5em;
    margin-top: 2.5em;
}

#campaignlong #campaign_detail .detail_info .detail_info_text {
    padding-top: 1.5em;
}

#campaignlong #campaign_detail .detail_info .detail_info_text p {
    font-size: 100%;
    font-weight: 500;
    line-height: 2;
}

#campaignlong #campaign_detail .detail_info .detail_info_text p > strong {
    font-weight: 600;
    color: #00a3e5;
}

#campaignlong #campaign_detail .detail_info .detail_info_text p a {
    color: #00a3e5;
    text-decoration: underline;
    font-weight: 600;
}

#campaignlong #campaign_detail .detail_info .detail_info_text p a:hover {
    text-decoration: none;
}

#campaignlong #campaign_detail .detail_info .detail_info_text dl {
    width: 100%;
}

#campaignlong #campaign_detail .detail_info .detail_info_text dl dt, #campaignlong #campaign_detail .detail_info .detail_info_text dl dd {
    font-size: 92.9%;
    font-weight: 500;
    line-height: 2;
}

#campaignlong #campaign_detail .detail_info .detail_info_text dl dt a, #campaignlong #campaign_detail .detail_info .detail_info_text dl dd a {
    color: #00a3e5;
    text-decoration: underline;
}

#campaignlong #campaign_detail .detail_info .detail_info_text dl dt a:hover, #campaignlong #campaign_detail .detail_info .detail_info_text dl dd a:hover {
    text-decoration: none;
}

#campaignlong #campaign_detail .detail_info .detail_info_text dl dt {
    float: left;
}

#campaignlong #campaign_detail .detail_info .detail_info_text dl dt:after {
    content: " : ";
}

#campaignlong #campaign_detail .detail_info .detail_info_text dl dd {
    margin-left: 2.75em;
}

#campaignlong #campaign_detail .detail_info .detail_info_text.center p {
    text-align: center;
}

#campaignlong #campaign_detail .detail_info .detail_info_btn {
    margin-top: 1.5em;
}

/*                ご利用の流れ
======================================================= */
#flow #main_area a {
    color: #00a3e5;
    text-decoration: underline;
}

#flow .flow_step {
    margin-top: 80px;
    border-top: solid 2px #ebf0f0;
}

#flow .flow_step .flow_cont {
    border-bottom: solid 2px #ebf0f0;
    padding: 50px 10px;
}

@media only screen and (max-width: 1024px) {
    #flow .flow_step {
        margin-top: 50px;
    }

    #flow .flow_step .flow_cont {
        padding: 30px 10px;
    }
}

@media only screen and (max-width: 768px) {
    #flow .flow_step {
        margin-top: 30px;
    }

    #flow .flow_step .flow_cont {
        padding: 10px 0;
    }
}

@media only screen and (max-width: 480px) {
    #flow .flow_step {
        margin-top: 30px;
        border-top: solid 1px #ebf0f0;
    }

    #flow .flow_step .flow_cont {
        border-bottom: solid 1px #ebf0f0;
        padding: 15px 0;
    }
}

#flow .flow_step .flow_cont .cont_inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-line-pack: center;
    align-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

#flow .flow_step .flow_cont .cont_inner .step_dt {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-line-pack: center;
    align-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    min-width: 11em;
    margin-right: 2em;
    position: relative;
    min-height: 42px;
}

#flow .flow_step .flow_cont .cont_inner .step_dt:before {
    display: block;
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    width: 45px;
    height: 100%;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}

#flow .flow_step .flow_cont .cont_inner .step_dt > span {
    color: #00a3e5;
    font-weight: 600;
    font-size: 142.9%;
    line-height: 1.05;
}

#flow .flow_step .flow_cont .cont_inner .step_dt > span.num {
    font-size: 214.3%;
    margin-left: 0.2em;
}

@media only screen and (max-width: 1024px) {
    #flow .flow_step .flow_cont .cont_inner .step_dt {
        min-width: 8.5em;
        margin-right: 1em;
    }

    #flow .flow_step .flow_cont .cont_inner .step_dt:before {
        width: 40px;
        height: 100%;
    }

    #flow .flow_step .flow_cont .cont_inner .step_dt > span {
        font-size: 128.6%;
    }

    #flow .flow_step .flow_cont .cont_inner .step_dt > span.num {
        font-size: 200%;
        margin-left: 0.2em;
    }
}

#flow .flow_step .flow_cont .cont_inner .step_dd p {
    font-size: 107.1%;
    font-weight: 500;
}

@media only screen and (max-width: 480px) {
    #flow .flow_step .flow_cont .cont_inner {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    #flow .flow_step .flow_cont .cont_inner .step_dt {
        margin-left: auto;
        margin-right: auto;
    }
}

#flow .flow_step .flow_cont.step01 .cont_inner .step_dt:before {
    background-image: url(/room_reserve/media/images/flow/flowicon_step01.png);
}

#flow .flow_step .flow_cont.step02 .cont_inner .step_dt:before {
    background-image: url(/room_reserve/media/images/flow/flowicon_step02.png);
}

#flow .flow_step .flow_cont.step03 .cont_inner .step_dt:before {
    background-image: url(/room_reserve/media/images/flow/flowicon_step03.png);
}

#flow .flow_step .flow_cont.step04 .cont_inner .step_dt:before {
    background-image: url(/room_reserve/media/images/flow/flowicon_step04.png);
}

#flow .flow_step .flow_cont .link_btn {
    margin: 36px auto 0;
}

/*                ご利用事例
======================================================= */
#case #case_main .case_main_thumbs {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    margin-left: -18px;
    margin-right: -18px;
    margin-bottom: -80px;
}

#case #case_main .case_main_thumbs .case_cont {
    width: 33.3333%;
    padding-left: 18px;
    padding-right: 18px;
    padding-bottom: 80px;
}

@media only screen and (max-width: 1024px) {
    #case #case_main .case_main_thumbs {
        margin-left: -12px;
        margin-right: -12px;
        margin-bottom: -60px;
    }

    #case #case_main .case_main_thumbs .case_cont {
        padding-left: 12px;
        padding-right: 12px;
        padding-bottom: 60px;
    }
}

@media only screen and (max-width: 768px) {
    #case #case_main .case_main_thumbs {
        margin-left: -10px;
        margin-right: -10px;
        margin-bottom: -40px;
    }

    #case #case_main .case_main_thumbs .case_cont {
        width: 50%;
        padding-left: 10px;
        padding-right: 10px;
        padding-bottom: 40px;
    }
}

@media only screen and (max-width: 480px) {
    #case #case_main .case_main_thumbs {
        margin-left: -5px;
        margin-right: -5px;
        margin-bottom: -30px;
    }

    #case #case_main .case_main_thumbs .case_cont {
        width: 50%;
        padding-left: 5px;
        padding-right: 5px;
        padding-bottom: 30px;
    }
}

@media only screen and (max-width: 350px) {
    #case #case_main .case_main_thumbs .case_cont {
        width: 100%;
    }
}

#case #case_main .case_main_thumbs .case_cont .cont_inner {
    display: block;
}

#case #case_main .case_main_thumbs .case_cont .cont_inner .thumb img {
    width: 100%;
    height: auto;
    display: block;
}

#case #case_main .case_main_thumbs .case_cont .cont_inner .text {
    margin-top: 2em;
}

#case #case_main .case_main_thumbs .case_cont .cont_inner .text .case_cont_title {
    margin-bottom: 1.25em;
}

#case #case_main .case_main_thumbs .case_cont .cont_inner .text .case_cont_title h2 {
    font-size: 157.1%;
    color: #00a3e5;
    font-weight: 600;
    text-align: center;
}

@media only screen and (max-width: 1024px) {
    #case #case_main .case_main_thumbs .case_cont .cont_inner .text {
        margin-top: 1.5em;
    }

    #case #case_main .case_main_thumbs .case_cont .cont_inner .text .case_cont_title {
        margin-bottom: 1.0em;
    }

    #case #case_main .case_main_thumbs .case_cont .cont_inner .text .case_cont_title h2 {
        font-size: 142.9%;
    }
}

@media only screen and (max-width: 768px) {
    #case #case_main .case_main_thumbs .case_cont .cont_inner .text {
        margin-top: 10px;
    }

    #case #case_main .case_main_thumbs .case_cont .cont_inner .text .case_cont_title {
        margin-bottom: 5px;
    }

    #case #case_main .case_main_thumbs .case_cont .cont_inner .text .case_cont_title h2 {
        font-size: 128.6%;
    }
}

@media only screen and (max-width: 480px) {
    #case #case_main .case_main_thumbs .case_cont .cont_inner .text .case_cont_title h2 {
        font-size: 114.3%;
    }
}

#case #case_main .case_main_thumbs .case_cont .cont_inner .text > p {
    font-size: 100%;
    line-height: 1.8;
}

#case #case_main .case_main_thumbs .case_cont .cont_inner .text > p a {
    text-decoration: underline;
    color: #00a3e5;
}

@media only screen and (min-width: 769px) {
    #case #case_main .case_main_thumbs .case_cont .cont_inner .text > p a:hover {
        text-decoration: none;
    }
}

#case #case_others {
    background-color: #edf2f2;
}

@media only screen and (min-width: 1025px) {
    #case #case_others {
        padding-top: 60px;
        padding-bottom: 80px;
    }
}

#case #case_others .case_others_thumbs {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    margin-left: -10px;
    margin-right: -10px;
    margin-bottom: -50px;
}

#case #case_others .case_others_thumbs .case_cont {
    width: 25%;
    padding-left: 10px;
    padding-right: 10px;
    padding-bottom: 50px;
}

@media only screen and (max-width: 900px) {
    #case #case_others .case_others_thumbs {
        margin-left: -8px;
        margin-right: -8px;
        margin-bottom: -40px;
    }

    #case #case_others .case_others_thumbs .case_cont {
        width: 25%;
        padding-left: 8px;
        padding-right: 8px;
        padding-bottom: 40px;
    }
}

@media only screen and (max-width: 768px) {
    #case #case_others .case_others_thumbs {
        margin-left: -5px;
        margin-right: -5px;
        margin-bottom: -20px;
    }

    #case #case_others .case_others_thumbs .case_cont {
        width: 25%;
        padding-left: 5px;
        padding-right: 5px;
        padding-bottom: 20px;
    }
}

@media only screen and (max-width: 480px) {
    #case #case_others .case_others_thumbs .case_cont {
        width: 33.3333%;
    }
}

#case #case_others .case_others_thumbs .case_cont .cont_inner {
    display: block;
}

#case #case_others .case_others_thumbs .case_cont .cont_inner .thumb img {
    width: 100%;
    height: auto;
    display: block;
}

#case #case_others .case_others_thumbs .case_cont .cont_inner .text {
    margin-top: 1em;
}

#case #case_others .case_others_thumbs .case_cont .cont_inner .text .case_cont_title h3, #case #case_others .case_others_thumbs .case_cont .cont_inner .text .case_cont_title > p {
    font-size: 114.3%;
    color: #000000;
    font-weight: 600;
    text-align: center;
}

#case #case_others .case_others_thumbs .case_cont .cont_inner .text .case_cont_title h3 > span, #case #case_others .case_others_thumbs .case_cont .cont_inner .text .case_cont_title > p > span {
    display: inline-block;
}

@media only screen and (max-width: 768px) {
    #case #case_others .case_others_thumbs .case_cont .cont_inner .text .case_cont_title h3, #case #case_others .case_others_thumbs .case_cont .cont_inner .text .case_cont_title > p {
        font-size: 100%;
    }
}

/*                ご内覧の流れ
======================================================= */
#introspection #main_area.bg_page {
    background-color: #f0f5f5;
}

#introspection #main_area a {
    color: #00a3e5;
    text-decoration: underline;
}

#introspection .introspection_step {
    margin-top: 80px;
    margin-bottom: 120px;
}

#introspection .introspection_step .introspection_cont {
    background-color: #fff;
    padding: 40px 30px;
}

#introspection .introspection_step .introspection_cont + .introspection_cont {
    margin-top: 28px;
}

@media only screen and (max-width: 1024px) {
    #introspection .introspection_step {
        margin-top: 50px;
        margin-bottom: 80px;
    }

    #introspection .introspection_step .introspection_cont {
        padding: 30px 30px;
    }
}

@media only screen and (max-width: 768px) {
    #introspection .introspection_step {
        margin-top: 30px;
        margin-bottom: 50px;
    }

    #introspection .introspection_step .introspection_cont {
        padding: 20px 20px;
    }
}

@media only screen and (max-width: 480px) {
    #introspection .introspection_step {
        margin-top: 30px;
        margin-bottom: 30px;
        border-top: solid 1px #ebf0f0;
    }

    #introspection .introspection_step .introspection_cont {
        border-bottom: solid 1px #ebf0f0;
        padding: 15px 15px;
    }
}

#introspection .introspection_step .introspection_cont .cont_inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-line-pack: center;
    align-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

#introspection .introspection_step .introspection_cont .cont_inner .step_dt {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-line-pack: center;
    align-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    min-width: 11em;
    margin-right: 2em;
    position: relative;
    min-height: 42px;
}

#introspection .introspection_step .introspection_cont .cont_inner .step_dt:before {
    display: block;
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    width: 45px;
    height: 100%;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}

#introspection .introspection_step .introspection_cont .cont_inner .step_dt > span {
    color: #00a3e5;
    font-weight: 600;
    font-size: 142.9%;
    line-height: 1.05;
}

#introspection .introspection_step .introspection_cont .cont_inner .step_dt > span.num {
    font-size: 214.3%;
    margin-left: 0.2em;
}

@media only screen and (max-width: 1024px) {
    #introspection .introspection_step .introspection_cont .cont_inner .step_dt {
        min-width: 8.5em;
        margin-right: 1em;
    }

    #introspection .introspection_step .introspection_cont .cont_inner .step_dt:before {
        width: 40px;
        height: 100%;
    }

    #introspection .introspection_step .introspection_cont .cont_inner .step_dt > span {
        font-size: 128.6%;
    }

    #introspection .introspection_step .introspection_cont .cont_inner .step_dt > span.num {
        font-size: 200%;
        margin-left: 0.2em;
    }
}

#introspection .introspection_step .introspection_cont .cont_inner .step_dd p {
    font-size: 107.1%;
    font-weight: 500;
}

@media only screen and (max-width: 480px) {
    #introspection .introspection_step .introspection_cont .cont_inner {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    #introspection .introspection_step .introspection_cont .cont_inner .step_dt {
        margin-left: auto;
        margin-right: auto;
    }
}

#introspection .introspection_step .introspection_cont.step01 .cont_inner .step_dt:before {
    background-image: url(/room_reserve/media/images/introspection/introspectionicon_step01.png);
}

#introspection .introspection_step .introspection_cont.step02 .cont_inner .step_dt:before {
    background-image: url(/room_reserve/media/images/introspection/introspectionicon_step02.png);
}

#introspection .introspection_step .introspection_cont.step03 .cont_inner .step_dt:before {
    background-image: url(/room_reserve/media/images/introspection/introspectionicon_step03.png);
}

#introspection .introspection_step .introspection_cont.step04 .cont_inner .step_dt:before {
    background-image: url(/room_reserve/media/images/introspection/introspectionicon_step04.png);
}

#introspection .introspection_step .introspection_cont.step05 .cont_inner .step_dt:before {
    background-image: url(/room_reserve/media/images/introspection/introspectionicon_step05.png);
}

#introspection .introspection_step .introspection_cont.step06 .cont_inner .step_dt:before {
    background-image: url(/room_reserve/media/images/introspection/introspectionicon_step06.png);
}

#introspection .introspection_step .introspection_cont .link_btn {
    margin: 36px auto 0;
}

/*                Q＆A
======================================================= */
.qaa_category_list {
    margin-top: 1em;
}

.qaa_category_list ul {
    overflow: hidden;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    margin: -5px -5px -4px;
}

.qaa_category_list ul li {
    position: relative;
    padding: 5px;
    width: 33.333333%;
}

.qaa_category_list ul li > a, .qaa_category_list ul li > div {
    position: relative;
    width: 100%;
    height: 50px;
    padding: 0.1em 1.5em;
}

@media only screen and (max-width: 768px) {
    .qaa_category_list ul li {
        width: 50%;
    }
}

@media only screen and (max-width: 640px) {
    .qaa_category_list ul li {
        width: 100%;
    }
}

.qaa_category_list ul li > a, .qaa_category_list ul li > div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    border: solid 1px #00a3e5;
    text-align: center;
    position: relative;
}

.qaa_category_list ul li > a:hover, .qaa_category_list ul li > div:hover {
    text-decoration: none;
}

.qaa_category_list ul li > a:after, .qaa_category_list ul li > div:after {
    position: absolute;
    top: 50%;
    right: 1em;
    content: "";
    display: block;
    width: 8px;
    height: 8px;
    line-height: 8px;
    margin-top: -6px;
    border-top: 1px solid #00a3e5;
    border-right: 1px solid #00a3e5;
    overflow: hidden;
    -webkit-transform: rotate(135deg);
    -ms-transform: rotate(135deg);
    transform: rotate(135deg);
}

.qaa_category_list ul li > a > span, .qaa_category_list ul li > div > span {
    color: #00a3e5;
    font-weight: 600;
    line-height: 1.2;
}

.qaa_category_list ul li > a > span > span, .qaa_category_list ul li > div > span > span {
    display: block;
}

@media only screen and (min-width: 769px) {
    .qaa_category_list ul li > a:before, .qaa_category_list ul li > div:before {
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        content: "";
        display: block;
        background-color: #00a3e5;
        -webkit-transition: 400ms;
        -o-transition: 400ms;
        transition: 400ms;
        opacity: 0;
    }

    .qaa_category_list ul li > a > span, .qaa_category_list ul li > div > span {
        -webkit-transition: 400ms;
        -o-transition: 400ms;
        transition: 400ms;
        position: relative;
        z-index: 1;
    }

    .qaa_category_list ul li > a:hover:before, .qaa_category_list ul li > div:hover:before {
        opacity: 1;
        -webkit-transition: 400ms;
        -o-transition: 400ms;
        transition: 400ms;
    }

    .qaa_category_list ul li > a:hover:after, .qaa_category_list ul li > div:hover:after {
        border-top: 1px solid #fff;
        border-right: 1px solid #fff;
    }

    .qaa_category_list ul li > a:hover > span, .qaa_category_list ul li > div:hover > span {
        color: #fff;
        -webkit-transition: 400ms;
        -o-transition: 400ms;
        transition: 400ms;
    }
}

@media only screen and (max-width: 850px) {
    .qaa_category_list ul li {
        font-size: 92.9%;
    }

    .qaa_category_list ul li > a:after, .qaa_category_list ul li > div:after {
        right: 0.85em;
        width: 6px;
        height: 6px;
        line-height: 6px;
        margin-top: -5px;
    }
}

@media only screen and (max-width: 640px) {
    .qaa_category_list ul li {
        font-size: 92.9%;
    }

    .qaa_category_list ul li > a > span > span, .qaa_category_list ul li > div > span > span {
        display: inline-block;
    }

    .qaa_category_list ul li > a:after, .qaa_category_list ul li > div:after {
        right: 0.85em;
        width: 6px;
        height: 6px;
        line-height: 6px;
        margin-top: -5px;
    }
}

#headmenu {
    position: fixed;
    width: 100%;
    top: -60px;
    -webkit-transition: 400ms;
    -o-transition: 400ms;
    transition: 400ms;
    background-color: #66c8ef;
}

#headmenu.fix {
    top: 60px;
    -webkit-transition: 400ms;
    -o-transition: 400ms;
    transition: 400ms;
    z-index: 1;
}

#headmenu .qaa_head_list {
    margin-left: -20px;
    margin-right: -20px;
}

#headmenu .qaa_head_list ul {
    padding: 12px 0;
    overflow: hidden;
    display: table;
    width: 100%;
}

#headmenu .qaa_head_list ul li {
    display: table-cell;
    position: relative;
    text-align: center;
    vertical-align: middle;
}

#headmenu .qaa_head_list ul li > a, #headmenu .qaa_head_list ul li > div {
    position: relative;
    display: table;
    height: 38px;
    width: 100%;
    padding: 0 0.25em;
}

#headmenu .qaa_head_list ul li > a > span, #headmenu .qaa_head_list ul li > div > span {
    display: table-cell;
    vertical-align: middle;
}

#headmenu .qaa_head_list ul li > a, #headmenu .qaa_head_list ul li > div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
    width: 100%;
    position: relative;
}

#headmenu .qaa_head_list ul li > a:hover, #headmenu .qaa_head_list ul li > div:hover {
    text-decoration: none;
}

#headmenu .qaa_head_list ul li > a > span, #headmenu .qaa_head_list ul li > div > span {
    font-size: 92.9%;
    color: #fff;
    font-weight: 600;
    line-height: 1.2;
    width: 100%;
}

#headmenu .qaa_head_list ul li > a > span > span, #headmenu .qaa_head_list ul li > div > span > span {
    display: block;
}

@media only screen and (max-width: 1024px) {
    #headmenu .qaa_head_list ul {
        padding: 10px 0;
    }

    #headmenu .qaa_head_list ul li > a, #headmenu .qaa_head_list ul li > div {
        height: 30px;
        width: 100%;
        padding: 0 0.25em;
    }

    #headmenu .qaa_head_list ul li > a > span, #headmenu .qaa_head_list ul li > div > span {
        display: table-cell;
        vertical-align: middle;
        font-size: 85.7%;
    }
}

@media only screen and (max-width: 768px) {
    #headmenu .qaa_head_list ul {
        padding: 0;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
        flex-flow: row wrap;
        margin-left: -1px;
    }

    #headmenu .qaa_head_list ul li {
        border-left: solid 1px #fff;
        border-bottom: solid 1px #fff;
        display: block;
        width: 33.3333%;
    }

    #headmenu .qaa_head_list ul li > a, #headmenu .qaa_head_list ul li > div {
        height: 40px;
        width: 100%;
        padding: 0 0.25em;
    }

    #headmenu .qaa_head_list ul li > a > span, #headmenu .qaa_head_list ul li > div > span {
        display: table-cell;
        vertical-align: middle;
        font-size: 85.7%;
    }
}

@media only screen and (max-width: 480px) {
    #headmenu .qaa_head_list ul li {
        width: 50%;
    }
}

body.login #headmenu.fix {
    top: 90px;
}

#qaa_main {
    padding-top: 100px;
}

.faq_cont .faq_box + .faq_box {
    margin-top: 2.0em;
}

.faq_cont .faq_box > div {
    position: relative;
    padding-left: 23px;
}

.faq_cont .faq_box > div span.icon {
    position: absolute;
    left: 0;
    top: 0;
    width: 23px;
    min-width: 23px;
}

.faq_cont .faq_box > div.faq_dt {
    color: #00a3e5;
}

.faq_cont .faq_box > div.faq_dt span.icon {
    margin-top: 0.1em;
    font-size: 128.6%;
    font-weight: 600;
}

.faq_cont .faq_box > div.faq_dt p {
    font-size: 114.3%;
    font-weight: 600;
}

.faq_cont .faq_box > div.faq_dd {
    margin-top: 0.15em;
}

.faq_cont .faq_box > div.faq_dd span.icon {
    margin-top: 0.2em;
    font-size: 114.3%;
    font-weight: 600;
}

.faq_cont .faq_box > div.faq_dd p {
    font-size: 100%;
    font-weight: 500;
}

.faq_cont .faq_box > div.faq_dd p a {
    text-decoration: underline;
    color: #00a3e5;
}

@media only screen and (min-width: 769px) {
    .faq_cont .faq_box > div.faq_dd p a:hover {
        text-decoration: none;
    }
}

.faq_cont .faq_box > div.faq_dd ul li {
    padding-left: 1.1em;
    text-indent: -1.1em;
}

/*                ご利用規約
======================================================= */
#temrs #main_area .temrs_cont + .temrs_cont {
    padding-top: 135px;
}

@media only screen and (max-width: 1024px) {
    #temrs #main_area .temrs_cont {
        padding-top: 120px;
    }

    #temrs #main_area .temrs_cont + .temrs_cont {
        padding-top: 100px;
    }
}

@media only screen and (max-width: 768px) {
    #temrs #main_area .temrs_cont {
        padding-top: 60px;
    }

    #temrs #main_area .temrs_cont + .temrs_cont {
        padding-top: 40px;
    }
}

@media only screen and (max-width: 480px) {
    #temrs #main_area .temrs_cont {
        padding-top: 30px;
    }

    #temrs #main_area .temrs_cont + .temrs_cont {
        padding-top: 30px;
    }
}

#temrs #main_area .temrs_cont .temrs_edit p, #temrs #main_area .temrs_cont .temrs_edit ul li, #temrs #main_area .temrs_cont .temrs_edit ol li, #temrs #main_area .temrs_cont .temrs_edit table th, #temrs #main_area .temrs_cont .temrs_edit table td {
    font-size: 100%;
    line-height: 2;
}

#temrs #main_area .temrs_cont .temrs_edit p + p, #temrs #main_area .temrs_cont .temrs_edit p + ul, #temrs #main_area .temrs_cont .temrs_edit p + ol, #temrs #main_area .temrs_cont .temrs_edit p + div, #temrs #main_area .temrs_cont .temrs_edit ul + p, #temrs #main_area .temrs_cont .temrs_edit ul + ul, #temrs #main_area .temrs_cont .temrs_edit ul + ol, #temrs #main_area .temrs_cont .temrs_edit ul + div, #temrs #main_area .temrs_cont .temrs_edit ol + p, #temrs #main_area .temrs_cont .temrs_edit ol + ul, #temrs #main_area .temrs_cont .temrs_edit ol + ol, #temrs #main_area .temrs_cont .temrs_edit ol + div, #temrs #main_area .temrs_cont .temrs_edit table + p, #temrs #main_area .temrs_cont .temrs_edit table + ul, #temrs #main_area .temrs_cont .temrs_edit table + ol, #temrs #main_area .temrs_cont .temrs_edit table + div, #temrs #main_area .temrs_cont .temrs_edit > div + p, #temrs #main_area .temrs_cont .temrs_edit > div + ul, #temrs #main_area .temrs_cont .temrs_edit > div + ol, #temrs #main_area .temrs_cont .temrs_edit > div + div {
    margin-top: 2em;
}

#temrs #main_area .temrs_cont .temrs_edit p + table, #temrs #main_area .temrs_cont .temrs_edit ul + table, #temrs #main_area .temrs_cont .temrs_edit ol + table, #temrs #main_area .temrs_cont .temrs_edit table + table, #temrs #main_area .temrs_cont .temrs_edit > div + table {
    margin-top: 1em;
}

#temrs #main_area .temrs_cont .temrs_edit ol li {
    padding-left: 1.8em;
    position: relative;
    letter-spacing: -0.07em;
}

#temrs #main_area .temrs_cont .temrs_edit ol li > .num {
    position: absolute;
    left: 0;
    top: 0;
    width: 1.5em;
    display: inline-block;
}

#temrs #main_area .temrs_cont .temrs_edit table {
    margin-bottom: 1em;
    border-top: solid 1px #b3b3b3;
    border-right: solid 1px #b3b3b3;
}

#temrs #main_area .temrs_cont .temrs_edit table th, #temrs #main_area .temrs_cont .temrs_edit table td {
    border-bottom: solid 1px #b3b3b3;
    border-left: solid 1px #b3b3b3;
    padding: 0.5em 2em 0.3em;
    text-align: left;
}

#temrs #main_area .temrs_cont .temrs_edit table th {
    width: 60%;
}

@media only screen and (max-width: 1024px) {
    #temrs #main_area .temrs_cont .temrs_edit table th, #temrs #main_area .temrs_cont .temrs_edit table td {
        padding: 0.5em 1em 0.3em;
    }

    #temrs #main_area .temrs_cont .temrs_edit table th {
        width: 50%;
    }
}

@media only screen and (max-width: 768px) {
    #temrs #main_area .temrs_cont .temrs_edit table th, #temrs #main_area .temrs_cont .temrs_edit table td {
        padding: 0.5em 0.5em 0.3em;
    }
}

@media only screen and (max-width: 640px) {
    #temrs #main_area .temrs_cont .temrs_edit table {
        display: block;
    }

    #temrs #main_area .temrs_cont .temrs_edit table tbody {
        display: block;
    }

    #temrs #main_area .temrs_cont .temrs_edit table tr {
        display: block;
    }

    #temrs #main_area .temrs_cont .temrs_edit table th, #temrs #main_area .temrs_cont .temrs_edit table td {
        padding: 0.5em 0.75em 0.3em;
        display: block;
        width: 100%;
    }

    #temrs #main_area .temrs_cont .temrs_edit table th {
        padding: 0.5em 0.75em 0;
        border-bottom-style: none;
        background-color: #dddddd;
    }

    #temrs #main_area .temrs_cont .temrs_edit table td {
        padding: 0.5em 0.75em 0.3em;
    }
}

/*               オーナー募集
======================================================= */
#owner .merit_list {
    max-width: 700px;
    display: block;
    margin-left: auto;
    margin-right: auto;
}

#owner .merit_list .merit_cont {
    background-color: #d9f1fb;
    min-height: 80px;
    padding: 10px 50px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

#owner .merit_list .merit_cont + .merit_cont {
    margin-top: 20px;
}

@media only screen and (max-width: 768px) {
    #owner .merit_list .merit_cont + .merit_cont {
        margin-top: 10px;
    }
}

@media only screen and (max-width: 480px) {
    #owner .merit_list .merit_cont + .merit_cont {
        margin-top: 5px;
    }
}

#owner .merit_list .merit_cont > div {
    margin-top: 0.3em;
}

#owner .merit_list .merit_cont .merit_num p {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 9.25em;
}

#owner .merit_list .merit_cont .merit_num p > span {
    color: #00a3e5;
    font-size: 142.9%;
    font-weight: 600;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    line-height: 1.1;
}

#owner .merit_list .merit_cont .merit_num p > span.num {
    font-size: 214.3%;
}

#owner .merit_list .merit_cont .merit_detail p {
    font-size: 128.6%;
    font-weight: 600;
    line-height: 1.1;
    display: block;
}

#owner .merit_list .merit_cont .merit_detail p > span {
    display: inline-block;
}

#owner .merit_list .merit_cont .merit_detail p + p {
    margin-top: 0.5em;
}

#owner .merit_list .merit_cont .merit_detail p.sub {
    font-size: 114.3%;
}

@media only screen and (max-width: 640px) {
    #owner .merit_list .merit_cont {
        min-height: 60px;
        padding: 3px 30px 5px;
    }

    #owner .merit_list .merit_cont .merit_num p {
        width: 7em;
    }

    #owner .merit_list .merit_cont .merit_num p > span {
        color: #00a3e5;
        font-size: 114.3%;
    }

    #owner .merit_list .merit_cont .merit_num p > span.num {
        font-size: 128.6%;
    }

    #owner .merit_list .merit_cont .merit_detail p {
        font-size: 114.3%;
    }

    #owner .merit_list .merit_cont .merit_detail p + p {
        margin-top: 0.3em;
    }

    #owner .merit_list .merit_cont .merit_detail p.sub {
        font-size: 100%;
    }
}

@media only screen and (max-width: 480px) {
    #owner .merit_list .merit_cont {
        min-height: 60px;
        padding: 3px 15px 5px;
    }

    #owner .merit_list .merit_cont .merit_num p {
        width: 6em;
    }

    #owner .merit_list .merit_cont .merit_num p > span {
        color: #00a3e5;
        font-size: 100%;
    }

    #owner .merit_list .merit_cont .merit_num p > span.num {
        font-size: 114.3%;
    }

    #owner .merit_list .merit_cont .merit_detail p {
        font-size: 107.1%;
    }

    #owner .merit_list .merit_cont .merit_detail p + p {
        margin-top: 0.3em;
    }

    #owner .merit_list .merit_cont .merit_detail p.sub {
        font-size: 100%;
    }
}

#owner .contract_flow {
    overflow: hidden;
}

#owner .contract_flow .flow_inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-left: -2px;
}

#owner .contract_flow .flow_inner > div {
    width: 20%;
}

@media only screen and (max-width: 768px) {
    #owner .contract_flow .flow_inner {
        margin-left: auto;
        margin-right: auto;
    }

    #owner .contract_flow .flow_inner > div {
        width: 33.3333%;
    }
}

@media only screen and (max-width: 480px) {
    #owner .contract_flow .flow_inner {
        margin-left: auto;
        margin-right: auto;
    }

    #owner .contract_flow .flow_inner > div {
        width: 100%;
    }
}

#owner .contract_flow .flow_inner .flow_set {
    border-left: solid 2px #b8e3f3;
    text-align: center;
    padding: 10px 20px;
    color: #00a3e5;
}

#owner .contract_flow .flow_inner .flow_set > div {
    width: 100%;
}

#owner .contract_flow .flow_inner .flow_set > div + div {
    margin-top: 1.2em;
}

@media only screen and (max-width: 1024px) {
    #owner .contract_flow .flow_inner .flow_set {
        padding: 10px 10px;
    }

    #owner .contract_flow .flow_inner .flow_set > div + div {
        margin-top: 0.8em;
    }
}

@media only screen and (max-width: 768px) {
    #owner .contract_flow .flow_inner .flow_set {
        padding: 10px 5px;
        border: solid 2px #b8e3f3;
        min-height: 228px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
        flex-flow: row wrap;
        -ms-flex-line-pack: center;
        align-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }

    #owner .contract_flow .flow_inner .flow_set > div {
        width: 100%;
    }

    #owner .contract_flow .flow_inner .flow_set + div {
        border-left-style: none;
    }

    #owner .contract_flow .flow_inner .flow_set.step04 {
        border-left: solid 2px #b8e3f3;
    }

    #owner .contract_flow .flow_inner .flow_set.step04, #owner .contract_flow .flow_inner .flow_set.step05 {
        border-top-style: none;
    }
}

@media only screen and (max-width: 480px) {
    #owner .contract_flow .flow_inner .flow_set {
        min-height: 50px;
        padding: 10px 0;
        border-top: none;
        border-right: none;
        border-bottom: none;
        border-left: none;
        position: relative;
    }

    #owner .contract_flow .flow_inner .flow_set > div + div {
        margin-top: 0;
    }

    #owner .contract_flow .flow_inner .flow_set + div {
        padding-top: 60px;
    }

    #owner .contract_flow .flow_inner .flow_set + div:before {
        content: "";
        display: block;
        width: 15px;
        height: 15px;
        position: absolute;
        top: 10px;
        left: 50%;
        margin-left: -7px;
        border-top: solid 3px #00a3e5;
        border-right: solid 3px #00a3e5;
        -webkit-transform: rotate(135deg);
        -ms-transform: rotate(135deg);
        transform: rotate(135deg);
    }

    #owner .contract_flow .flow_inner .flow_set + div.step04, #owner .contract_flow .flow_inner .flow_set + div.step05 {
        border-left-style: none;
    }
}

#owner .contract_flow .flow_inner .flow_set .head_dt h3, #owner .contract_flow .flow_inner .flow_set .head_dt p {
    font-size: 114.3%;
    font-weight: 500;
}

#owner .contract_flow .flow_inner .flow_set .head_dd .step_ill img {
    height: 80px;
    width: auto;
    margin: auto;
}

@media only screen and (max-width: 1024px) {
    #owner .contract_flow .flow_inner .flow_set .head_dd .step_ill img {
        height: 60px;
    }
}

#owner .contract_flow .flow_inner .flow_set .head_dd .step_text_main {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -ms-flex-line-pack: center;
    align-content: center;
    height: 6em;
}

#owner .contract_flow .flow_inner .flow_set .head_dd .step_text_main p {
    width: 100%;
    font-size: 128.6%;
    font-weight: 600;
    line-height: 1.5;
}

@media only screen and (max-width: 1024px) {
    #owner .contract_flow .flow_inner .flow_set .head_dd .step_text_main {
        height: 5em;
    }

    #owner .contract_flow .flow_inner .flow_set .head_dd .step_text_main p {
        font-size: 114.3%;
    }
}

@media only screen and (max-width: 768px) {
    #owner .contract_flow .flow_inner .flow_set .head_dd .step_text_main {
        height: 3em;
    }

    #owner .contract_flow .flow_inner .flow_set .head_dd .step_text_main p {
        font-size: 100%;
    }
}

@media only screen and (max-width: 480px) {
    #owner .contract_flow .flow_inner .flow_set .head_dd .step_text_main {
        height: auto;
    }

    #owner .contract_flow .flow_inner .flow_set .head_dd .step_text_main p {
        font-size: 100%;
    }
}

#owner .contract_flow .flow_inner .flow_set .head_dd .step_text_sub p {
    font-size: 100%;
    font-weight: 600;
    line-height: 1.5;
}

@media only screen and (max-width: 768px) {
    #owner .contract_flow .flow_inner .flow_set .head_dd .step_text_sub p {
        font-size: 92.9%;
    }
}

@media only screen and (max-width: 480px) {
    #owner .contract_flow .flow_inner .flow_set .head_dd .step_text_sub p {
        font-size: 92.9%;
    }
}

#owner .link_btn {
    margin: 20px auto 0;
}

#main_area .thumbs_cont {
    overflow: hidden;
}

#main_area .thumbs_cont .thumbs_row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-left: -50px;
    margin-right: -50px;
}

#main_area .thumbs_cont .thumbs_row > div {
    width: 50%;
    padding-left: 50px;
    padding-right: 50px;
}

@media only screen and (max-width: 1024px) {
    #main_area .thumbs_cont .thumbs_row {
        margin-left: -25px;
        margin-right: -25px;
    }

    #main_area .thumbs_cont .thumbs_row > div {
        padding-left: 25px;
        padding-right: 25px;
    }
}

@media only screen and (max-width: 900px) {
    #main_area .thumbs_cont .thumbs_row {
        margin-left: -15px;
        margin-right: -15px;
    }

    #main_area .thumbs_cont .thumbs_row > div {
        padding-left: 15px;
        padding-right: 15px;
    }
}

@media only screen and (max-width: 480px) {
    #main_area .thumbs_cont .thumbs_row {
        margin-left: -10px;
        margin-right: -10px;
    }

    #main_area .thumbs_cont .thumbs_row > div {
        padding-left: 10px;
        padding-right: 10px;
    }
}

#main_area .thumbs_cont .thumbs_row .thumbs_col .thumbs_photo {
    position: relative;
}

#main_area .thumbs_cont .thumbs_row .thumbs_col .thumbs_photo img {
    width: 100%;
}

#main_area .thumbs_cont .thumbs_row .thumbs_col .thumbs_photo:after {
    position: absolute;
    right: -50px;
    top: 50%;
    width: 20px;
    height: 35px;
    display: block;
    content: url(/room_reserve/media/images/common/arr_before-after.png);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    -webkit-transform: translate(50%, -50%);
    -ms-transform: translate(50%, -50%);
    transform: translate(50%, -50%);
}

#main_area .thumbs_cont .thumbs_row .thumbs_col .thumbs_photo + .thumbs_text {
    margin-top: 1.85em;
}

@media only screen and (max-width: 1024px) {
    #main_area .thumbs_cont .thumbs_row .thumbs_col .thumbs_photo:after {
        position: absolute;
        right: -25px;
        width: 20px;
        height: 35px;
    }

    #main_area .thumbs_cont .thumbs_row .thumbs_col .thumbs_photo + .thumbs_text {
        margin-top: 1.65em;
    }
}

@media only screen and (max-width: 900px) {
    #main_area .thumbs_cont .thumbs_row .thumbs_col .thumbs_photo:after {
        position: absolute;
        right: -15px;
        width: 14px;
        content: "";
        background-image: url(/room_reserve/media/images/common/arr_before-after.png);
    }

    #main_area .thumbs_cont .thumbs_row .thumbs_col .thumbs_photo + .thumbs_text {
        margin-top: 1.25em;
    }
}

@media only screen and (max-width: 480px) {
    #main_area .thumbs_cont .thumbs_row .thumbs_col .thumbs_photo:after {
        position: absolute;
        right: -10px;
        width: 10px;
    }

    #main_area .thumbs_cont .thumbs_row .thumbs_col .thumbs_photo + .thumbs_text {
        margin-top: 1em;
    }
}

#main_area .thumbs_cont .thumbs_row .thumbs_text h4 {
    color: #00a3e5;
    font-weight: 600;
    font-size: 114.3%;
    margin-bottom: 0.25em;
}

#main_area .thumbs_cont .thumbs_row .thumbs_text p {
    font-size: 100%;
    line-height: 1.8;
}

#main_area .operation_cont {
    overflow: hidden;
}

#main_area .operation_cont .operation_row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-left: -20px;
    margin-right: -20px;
    margin-top: 30px;
    margin-bottom: 30px;
}

#main_area .operation_cont .operation_row > div {
    width: 50%;
    padding-left: 20px;
    padding-right: 20px;
}

@media only screen and (max-width: 1024px) {
    #main_area .operation_cont .operation_row {
        margin-left: -15px;
        margin-right: -15px;
    }

    #main_area .operation_cont .operation_row > div {
        padding-left: 15px;
        padding-right: 15px;
    }
}

@media only screen and (max-width: 900px) {
    #main_area .operation_cont .operation_row {
        margin-left: -10px;
        margin-right: -10px;
    }

    #main_area .operation_cont .operation_row > div {
        padding-left: 10px;
        padding-right: 10px;
    }
}

@media only screen and (max-width: 480px) {
    #main_area .operation_cont .operation_row {
        display: block;
    }

    #main_area .operation_cont .operation_row > div {
        width: 100%;
    }

    #main_area .operation_cont .operation_row > div + div {
        margin-top: 20px;
    }
}

#main_area .operation_cont .operation_row .operation_col {
    position: relative;
}

#main_area .operation_cont .operation_row .operation_col > .inner {
    position: relative;
    height: 100%;
    width: 100%;
    background-color: #fff;
    text-align: center;
    padding: 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

@media only screen and (max-width: 1024px) {
    #main_area .operation_cont .operation_row .operation_col > .inner {
        padding: 15px;
    }
}

@media only screen and (max-width: 900px) {
    #main_area .operation_cont .operation_row .operation_col > .inner {
        padding: 10px;
    }
}

#main_area .operation_cont .operation_row .operation_col > .inner > div {
    width: 100%;
}

#main_area .operation_cont .operation_row .operation_col > .inner .head_title .icon {
    padding: 30px 0;
}

#main_area .operation_cont .operation_row .operation_col > .inner .head_title .icon img {
    margin: auto;
}

#main_area .operation_cont .operation_row .operation_col > .inner .head_title .min_title h3 {
    text-align: center;
}

@media only screen and (max-width: 1024px) {
    #main_area .operation_cont .operation_row .operation_col > .inner .head_title .icon {
        padding: 20px 0;
    }

    #main_area .operation_cont .operation_row .operation_col > .inner .head_title .icon img {
        width: 60px;
    }
}

@media only screen and (max-width: 480px) {
    #main_area .operation_cont .operation_row .operation_col > .inner .head_title .icon {
        padding: 10px 0;
    }

    #main_area .operation_cont .operation_row .operation_col > .inner .head_title .icon img {
        width: 50px;
    }
}

#main_area .operation_cont .operation_row .operation_col > .inner .detail_text {
    padding-bottom: 1.5em;
}

#main_area .operation_cont .operation_row .operation_col > .inner .detail_text h4 {
    font-size: 135.7%;
    font-weight: 600;
    letter-spacing: -0.05em;
    margin-bottom: 0.5em;
}

#main_area .operation_cont .operation_row .operation_col > .inner .detail_text p {
    font-size: 100%;
    line-height: 1.8;
}

@media only screen and (max-width: 1024px) {
    #main_area .operation_cont .operation_row .operation_col > .inner .detail_text h4 {
        font-size: 128.6%;
    }
}

@media only screen and (max-width: 768px) {
    #main_area .operation_cont .operation_row .operation_col > .inner .detail_text h4 {
        font-size: 114.3%;
    }
}

@media only screen and (max-width: 480px) {
    #main_area .operation_cont .operation_row .operation_col > .inner .detail_text h4 {
        font-size: 100%;
    }
}

/*               会社概要
======================================================= */
#company-profile #main_area .company-profile_width {
    max-width: 650px;
    display: block;
    margin-left: auto;
    margin-right: auto;
}

#company-profile #main_area .company-profile_table table th, #company-profile #main_area .company-profile_table table td {
    font-size: 114.3%;
    padding: 0.6em 0 0.5em;
}

#company-profile #main_area .company-profile_table table th {
    font-weight: 600;
    padding-right: 1em;
    width: 6em;
}

#company-profile #main_area .company-profile_table table td > span {
    display: inline-block;
    vertical-align: top;
}

#company-profile #main_area .company-profile_table table td a {
    color: #00a3e5;
    text-decoration: underline;
}

#company-profile #main_area .company-profile_table table td a:hover {
    text-decoration: none;
}

@media only screen and (max-width: 480px) {
    #company-profile #main_area .company-profile_table table th, #company-profile #main_area .company-profile_table table td {
        font-size: 100%;
        padding: 0.6em 0 0.5em;
    }

    #company-profile #main_area .company-profile_table table th {
        width: 5em;
        vertical-align: top;
    }
}

/*                403/404
======================================================= */
#main_area .system_message p {
    font-size: 128.6%;
    text-align: center;
}

@media only screen and (max-width: 1024px) {
    #main_area .system_message p {
        font-size: 114.3%;
    }
}

@media only screen and (max-width: 768px) {
    #main_area .system_message p {
        font-size: 107.1%;
    }
}

#main_area .bye_ill {
    margin: 40px auto 0;
    width: 120px;
    height: 120px;
}

#main_area .bye_ill img {
    width: 100%;
}

@media only screen and (max-width: 1024px) {
    #main_area .bye_ill {
        width: 100px;
        height: 100px;
    }
}

@media only screen and (max-width: 768px) {
    #main_area .bye_ill {
        margin: 30px auto 0;
        width: 80px;
        height: 80px;
    }
}

@media only screen and (max-width: 480px) {
    #main_area .bye_ill {
        width: 60px;
        height: 60px;
    }
}

#main_area .bye_ill .swing {
    -moz-animation: swing linear 1s infinite;
    -moz-transform-origin: center bottom 0;
    -webkit-animation: swing linear 1s infinite;
    -webkit-transform-origin: center bottom 0;
    -ms-animation: swing linear 1s infinite;
    -ms-transform-origin: center -30px 0;
    -o-animation: swing linear 1s infinite;
    -o-transform-origin: center bottom 0;
    animation: swing linear 1s infinite;
    -ms-transform-origin: center bottom 0;
    transform-origin: center bottom 0;
    display: block;
    float: left;
}

@-moz-keyframes swing {
    0% {
        -moz-transform: rotate(0deg);
    }
    25% {
        -moz-transform: rotate(5deg);
    }
    50% {
        -moz-transform: rotate(0deg);
    }
    75% {
        -moz-transform: rotate(-5deg);
    }
    100% {
        -moz-transform: rotate(0deg);
    }
}

@-webkit-keyframes swing {
    0% {
        -webkit-transform: rotate(0deg);
    }
    25% {
        -webkit-transform: rotate(5deg);
    }
    50% {
        -webkit-transform: rotate(0deg);
    }
    75% {
        -webkit-transform: rotate(-5deg);
    }
    100% {
        -webkit-transform: rotate(0deg);
    }
}

@-o-keyframes swing {
    0% {
        -o-transform: rotate(0deg);
    }
    25% {
        -o-transform: rotate(5deg);
    }
    50% {
        -o-transform: rotate(0deg);
    }
    75% {
        -o-transform: rotate(-5deg);
    }
    100% {
        -o-transform: rotate(0deg);
    }
}

@-ms-keyframes swing {

#main_area .bye_ill

0
%
{
    -ms-transform: rotate(0deg)
;
}
#main_area .bye_ill

25
%
{
    -ms-transform: rotate(5deg)
;
}
#main_area .bye_ill

50
%
{
    -ms-transform: rotate(0deg)
;
}
#main_area .bye_ill

75
%
{
    -ms-transform: rotate(-5deg)
;
}
#main_area .bye_ill

100
%
{
    -ms-transform: rotate(0deg)
;
}
}

@keyframes swing {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    25% {
        -webkit-transform: rotate(5deg);
        transform: rotate(5deg);
    }
    50% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    75% {
        -webkit-transform: rotate(-5deg);
        transform: rotate(-5deg);
    }
    100% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
}

/*                 20190717 Add Start                  */
/*                step_nav
======================================================= */
.step_nav {
    overflow: hidden;
    border: solid 1px #4dbfed;
    margin-bottom: 40px; }
.step_nav + .main_cont_title {
    margin-top: 90px; }
@media only screen and (max-width: 1024px) {
    .step_nav {
        margin-bottom: 30px; }
    .step_nav + .main_cont_title {
        margin-top: 60px; } }
@media only screen and (max-width: 768px) {
    .step_nav {
        margin-bottom: 0px; }
    .step_nav + .main_cont_title {
        margin-top: 30px; } }
.step_nav ol {
    display: table;
    width: 100%;
    height: 38px; }
.step_nav ol li {
    height: 38px;
    display: table-cell;
    width: 25%;
    background-color: #fff;
    color: #4dbfed;
    font-weight: 600;
    padding: 0.15em 1.5em 0.05em 1em;
    text-align: center;
    vertical-align: middle;
    position: relative; }
.step_nav ol li.short {
    width: 22%; }
.step_nav ol li.wide {
    width: 34%; }
.step_nav ol li > span {
    position: relative;
    display: inline-block;
    text-align: left;
    padding-left: 1.25em;
    z-index: 2; }
.step_nav ol li > span.overword {
    margin-left: -0.25em;
    margin-right: -0.75em; }
.step_nav ol li > span:before {
    position: absolute;
    left: 0; }
.step_nav ol li:before {
    content: "";
    display: block;
    position: absolute;
    top: 6px;
    right: -13px;
    width: 25px;
    height: 25px;
    display: block;
    background-color: #fff;
    border-top: solid 1px #4dbfed;
    border-right: solid 1px #4dbfed;
    -webkit-transform: rotate(45deg) skew(calc((90deg - 80deg) / 2), calc((90deg - 80deg) / 2));
    -ms-transform: rotate(45deg) skew(calc((90deg - 80deg) / 2), calc((90deg - 80deg) / 2));
    transform: rotate(45deg) skew(calc((90deg - 80deg) / 2), calc((90deg - 80deg) / 2));
    /* calc((90deg - 欲しい角度) / 2) */
    z-index: 1; }
@media all and (-ms-high-contrast: none) {
    .step_nav ol li:before {
        -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        transform: rotate(45deg); } }
.step_nav ol li.active {
    background-color: #4dbfed;
    color: #fff;
    font-weight: bold; }
.step_nav ol li.active:before {
    background-color: #4dbfed; }
.step_nav ol li.last:before {
    display: none; }
@media only screen and (max-width: 768px) {
    .step_nav {
        padding: 0;
        margin-left: -1px;
        margin-right: -1px; }
    .step_nav ol {
        overflow: hidden;
        display: table;
        margin-right: -26px; }
    .step_nav ol li {
        padding: 0.7em 0.35em 0.8em 0.35em;
        float: left;
        display: table;
        width: 50%; }
    .step_nav ol li + li + li {
        border-top: solid 1px #4dbfed; }
    .step_nav ol li.step02:before, .step_nav ol li.step04:before {
        display: none; }
    .step_nav ol li.step01 {
        width: 48%; }
    .step_nav ol li.step02 {
        width: 52%; }
    .step_nav ol li.step03 {
        width: 52%; }
    .step_nav ol li.step04 {
        width: 48%; }
    .step_nav ol li > span {
        display: table-cell;
        text-align: left;
        vertical-align: middle;
        line-height: 1.1;
        z-index: 2;
        position: relative; }
    .step_nav ol li > span + span {
        vertical-align: middle;
        width: 100%;
        margin-left: 0;
        padding-left: 0.5em; }
    .step_nav ol li.last:before {
        display: none; } }
/*                 20190717 Add End                  */

/*                記事系
======================================================= */
/*                お問い合わせ
======================================================= */

.simulation_modal .simulation_table,
.simulation_modal .simulation_result_table {
  margin-top: 1em;
  margin-bottom: 1em;
}

.simulation_modal .simulation_table dl dt,
.simulation_modal .simulation_result_table dl dt {
  background-color: #b2b2b2;
  color: #fff;
  text-align: center;
  line-height: 1.1;
  font-weight: 600;
  padding: 0.4em 0.5em 0.2em;
  margin: 0.5em;
}
