/*
  HomestayWeb Style
  update : 2022-11-11
*/

html {
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
}

body {
    margin: 0;
    background: #f4f4f4;
    font-family: 'Montserrat', "Hiragino Kaku Gothic Pro", Meiryo, sans-serif;
    color: #3f3f3f;
}

a:not(.list-group-item, .btn) {
    color: #428bca;
}
/*.bbw a:not(.list-group-item, .btn) {
    color: #cb82a8;
}*/

a {
    color: #428bca;
}
/*.bbw a {
    color: #cb82a8;
}*/

.card a:hover {
    text-decoration: none;
}

.list-group a:hover {
    text-decoration: none;
}

a.btn-primary {
    color: #fff;
}

a[target="_blank"]:not(.internal)::after {
    margin-left: 3px;
    content: "\f08e";
    font-family: FontAwesome;
    display: inline-block;
    font-size: 0.8rem;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: 'Montserrat', sans-serif;
    font-weight: bold;
}

h1 {
    font-size: 2.0rem;
}

h3 {
    font-size: 20px;
    margin: 0 0 10px;
}

h4 {
    font-size: 1.0rem;
}

h5 {
    font-size: 0.9rem;
}

p.header {
    font-size: 1.0rem;
    font-weight: bold;
    margin: 0;
}

.footer_pc h4 {
    margin: 0 0 10px;
    color: #336699;
}
.bbw .footer_pc h4 {
    color: #7D2854;
}

a h4 {
    color: #336699;
}
.bbw a h4 {
    color: #7D2854;
}

a p {
    color: #3f3f3f;
}

.list ul>li,
.list ol>li {
    margin-bottom: 10px;
}

main h2 {
    margin: 0 0 10px;
    color: #336699;
    font-size: 2.0rem;
    font-weight: normal;
}
main h2 {
    color: #7D2854;
}

@media (max-width: 767px) {
    main h2 {
        font-size: 1.7rem;
    }
}

p {
    font-size: 1.0rem;
}

p.small {
    font-size: 0.8rem;
}

p:last-child {
    margin-bottom: 0;
}

.flex-space-between {
    display: flex;
    -webkit-justify-content: space-between;
    /* Safari */
    justify-content: space-between;
}

.responsive {
    flex-direction: column;
}

@media (min-width: 992px) {

    /* Large devices (desktops, 992px and up) */
    .responsive {
        flex-direction: row;
    }
}

img.fluid {
    max-width: 100%;
    height: auto;
    display: block;
    margin: 0 auto;
}

.premium {
    font-weight: bold;
    color: #FF9900;
    margin: 0;
}

/* モバイル用のチェックボックス */
label.block {
    display: block;
    color: #495057;
    background-color: #fff;
    border: 1px solid #ced4da;
    border-radius: .25rem;
    padding: 5px;
}

label.block input {
    margin: 0 5px;
}

.mobileonly {
    display: block;
}

@media (min-width: 768px) {

    /* PC */
    .mobileonly {
        display: none;
    }
}

/* ---------- FAQ ---------- */

#accordion .card-header {
    background-color: #fff;
    border-top: none;
    border-bottom: none;
    color: #495057;
    cursor: pointer;
}

#accordion .card-header:hover {
    background-color: #f8f9fa;
    color: #428bca;
}
/*.bbw #accordion .card-header:hover {
    background-color: #f8f9fa;
    color: #cb82a8;
}*/

.payment-errors {
    display: block;
    color: red;
}

/* ---------- reboot overwite ---------- */

@media (max-width: 767px) {

    dl,
    ol,
    ul {
        padding-left: 1.2rem;
    }
}

/* ---------- main ---------- */

main {
    margin-top: 20px;
    margin-bottom: 20px;
}

@media (min-width: 768px) {
    main {
        margin-top: 30px;
    }
}

/* ---------- footer ---------- */

footer {
    background: #d6e4ea;
    padding-top: 10px;
}
.bbw footer {
    background: #e8d8de;
}

.footer_sp {
    padding-bottom: 10px;
}

.footer_pc a {
    color: #3f3f3f;
}

.footer_pc ul {
    padding-left: 0;
    list-style: none;
    margin-bottom: 20px;
}

.footer_pc ul li a {
    display: block;
    font-size: 0.9rem;
}

.copyright p {
    font-size: 0.8rem;
    color: #3f3f3f;
    margin-bottom: 10px;
}

.footer_pc {
    display: none;
}

@media (min-width: 768px) {
    .footer_pc {
        display: block;
        margin-top: 25px;
    }

    .footer_sp {
        display: none;
    }
}

.list-group p,
.list-group h5,
.list-group h4 {
    margin: 0;
}

/*overwrite*/
.list-group {
    margin-bottom: 1rem;
}

.list-group-item {
    padding: .55rem .75rem;
}

.ellipsis {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ellipsis p,
.ellipsis h4 {
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
}

.overflowhidden {
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
}

.agency_area {
    color: #b18088;
    margin: 0;
    word-break: break-all;
}

/* ---------- menu ---------- */

.menu_btn {
    background-color: #a4c9db;
    background-color: #fff;
    overflow: hidden;
    padding: 0 10px;
}
.bbw .menu_btn {
    /*background-color: #B76385;*/
}

.menu_btn>a {
    width: 100%;
    font-weight: bold;
    line-height: 3em;
    text-align: center;
    color: #428bca;
    text-decoration: none;
    white-space: nowrap;
}
/*.bbw .menu_btn>a {
    width: 100%;
    font-weight: bold;
    line-height: 3em;
    text-align: center;
    color: #cb82a8;
    text-decoration: none;
    white-space: nowrap;
}*/

/* GalaxyS5が360pxなので */
@media (max-width: 360px) {
    .menu_btn>a {
        font-size: 0.8rem;
    }
}

#menu {
    height: 48px;
    z-index: 999;
    position: sticky;
    left: 0;
    top: 0;
}

@media (min-width: 768px) {
    #menu {
        display: none;
    }
}

.menu_filters {
    margin: 0 10px;
}

.overlay {
    position: fixed !important;
    top: 0px !important;
    right: 0px !important;
    bottom: 0px !important;
    left: 0px !important;
    overflow-y: auto;
    z-index: 1000;
    background-color: #fff;
    padding: 10px;
}

/* Always show on PC*/
@media (min-width: 768px) {
    .overlay {
        position: initial !important;
        margin-bottom: 20px;
    }
}

.menu_more {
    margin: 0 10px 20px 10px;
}

.menu_more h4 {
    display: block;
    width: 100%;
}

.menu_more a {
    display: block;
    width: 100%;
    padding: 0.5rem 0;
}

#menu_bottom {
    height: 48px;
    z-index: 999;
    left: 0;
    position: fixed;
    right: 0;
    bottom: 0;
}

.badge-filters {
    font-size: 1rem;
    padding: .3em .6em;
    background-color: #FFC107;
    color: #fff;
    cursor: pointer;
    /*for iOS*/
}

.badge-custom_pink {
    font-size: 100%;
    font-size: 0.7rem;
    padding: .3em .6em;
    font-weight: normal;
    background-color: #ff5a8f;
    color: #fff;
}

.closebtn {
    padding: 5px 20px 10px 20px;
    font-size: 1rem;
}

#menu_search h4,
#menu_more h4 {
    color: #777;
    font-weight: normal;
    font-size: 0.8rem;
    text-align: center;
}

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

::-webkit-input-placeholder::before {
    font-family: fontAwesome;
    content: '\f002  ';
    color: #69f
}

::-moz-placeholder::before {
    font-family: fontAwesome;
    content: '\f002  ';
    color: #69f
}

:-ms-input-placeholder::before {
    /* firefox 19+ */
    font-family: fontAwesome;
    content: '\f002  ';
    color: #69f
}

input:-moz-placeholder::before {
    /* ie */
    font-family: fontAwesome;
    content: '\f002  ';
    color: #69f
}

.staticform .form-group {
    margin-bottom: 0;
}

.staticform .form-group .col-form-label {
    padding-bottom: 0;
    padding-top: 0;
}

.staticformvalue {
    font-weight: bold;
}

/* ---------- boostrap overwrite ---------- */

.form-control-file {
    /*type=fileの枠*/
    display: block;
    width: 100%;
    border: 1px solid #ced4da;
    padding: 5px;
    background: #fff;
    border-radius: .25rem;
}

.badge-pill {
    margin-left: 10px;
    vertical-align: text-top;
}

/* hsw custom overwrite */
.navbar-nav .nav-link {
    color: #428bca;
    font-size: 0.8rem;
}
/*.bbw .navbar-nav .nav-link {
    color: #cb82a8;
    font-size: 0.8rem;
} */

/* min-width: 769px ipad is 768 */
@media (min-width: 1000px) {
    .navbar-nav .nav-link {
        font-size: 0.9rem;
    }
}

.bg-light {
    background-color: #fff !important;
}

.btn-primary {
    color: #fff;
    background-color: #3362bf;
    border-color: #3362bf;
}

.btn-outline-primary {
    color: #428bca;
    background-color: transparent;
    background-image: none;
    border-color: #428bca;
}

.btn-outline-primary:hover {
    color: #fff;
    background-color: #3362bf;
    border-color: #3362bf;
}

.navbar-collapse .dropdown-item {
    font-size: 0.9rem;
}

.navbar-collapse .btn {
    font-size: 0.8rem;
}

@media (min-width: 769px) {
    .navbar-collapse .btn {
        font-size: 0.9rem;
    }
}

/* overwrite */
.btn-lite {
    background: #d6e4ea;
    border: 1px solid #b1c7d0;
    color: #3f3f3f;
}
.bbw .btn-lite {
    background: #e8d8de;
    border: 1px solid #b1c7d0;
    color: #3f3f3f;
}

.text-muted {
    color: #999 !important;
}

.form-check-inline {
    padding-top: 6px;
}

label {
    margin: 0;
}

/* form radio */
.custom-control-inline {
    margin: 0.5rem 0;
}

.modal-content {
    position: relative;
    padding: 30px;
    background-color: #f4f4f4;
    border-radius: 2px;
    box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
    overflow: hidden;
}

.modal-header {
    padding: 0 0 15px 0;
    border-bottom: none;
}

nav.breadcrumb {
    padding: 10px 0 20px 0;
    margin: 0;
    background-color: initial;
    font-size: 0.9rem;
}

.breadcrumb {
    padding: 0 8px 8px 8px;
    margin: 0;
    background-color: initial;
}

.breadcrumb:first-child {
    padding-left: 0;
}

.nav>li>a {
    padding: 7px 13px;
    font-size: 13px;
}

@media (min-width: 768px) {
    .nav>li>a {
        padding: 7px;
    }
}

.navbar-default {
    padding: 0;
    /* SPヘッダの高さ低くする */
    background: #fff;
}

@media (min-width: 768px) {
    .navbar-default {
        padding-top: 25px;
        padding-bottom: 30px;
    }
}

.navbar {
    /*border-top: 2px solid #a4c9db !important;*/
    /* 上の青い線 */
    /* navの下の20pxの空白なくす */
    /*padding: 0;*/
    /*border: 1px solid #e7e7e7;*/
}

@media (min-width: 768px) {
    .navbar {
        border-top: 5px solid #a4c9db !important;
        padding: 30px 0;
    }
    .bbw .navbar {
        border-top: 5px solid #B76385 !important;
    }
}

.navbar .navbar-header {
    background: #fff;
}

.navbar-brand img {
    width: 130px;
}
.bbw .navbar-brand img {
    width: 220px;/*B&B*/
}

.navbar-brand {
    margin: 0;
    /*logo center*/
    /*padding: 15px 0 15px 15px;*/
}

@media (min-width: 768px) {
    .navbar-brand img {
        width: 186px;
    }
}

@media (min-width: 992px) {
    .bbw .navbar-brand img {
        width: 267px;/*B&B*/
    }
}

.navbar-brand {
    /*overwrite*/
    margin-right: 0;
}

/* replace logo by device size */
.forpc {
    display: block !important;
}

.forsp {
    display: none !important;
}

@media only screen and (max-width: 768px) {
    .forpc {
        display: none !important;
    }

    .forsp {
        display: block !important;
    }
}

.dropdown-menu>li>a {
    color: #428bca !important;
}

.navbar-default .navbar-nav>li>a {
    color: #428bca;
}

.navbar-nav>li>a:hover {
    color: #428bca !important;
    text-decoration: underline;
}

.navbar-nav>li>.navbar-btn {
    padding: 6px 12px;
    color: #428bca;
    margin-top: 0;
    margin-bottom: 0;
}

/*
.bbw .dropdown-menu>li>a {
    color: #cb82a8 !important;
}

.bbw .navbar-default .navbar-nav>li>a {
    color: #cb82a8;
}

.bbw .navbar-nav>li>a:hover {
    color: #cb82a8 !important;
    text-decoration: underline;
}

.bbw .navbar-nav>li>.navbar-btn {
    padding: 6px 12px;
    color: #cb82a8;
    margin-top: 0;
    margin-bottom: 0;
}
*/

.navbar-nav>li>.navbar-btn:hover {
    color: #a4c9db !important;
    text-decoration: none;
    background: #294081;
    border-color: #294081;
    text-decoration: none;
}
.bbw .navbar-nav>li>.navbar-btn:hover {
    color: #B76385 !important;
    text-decoration: none;
    background: #294081;
    border-color: #294081;
    text-decoration: none;
}

@media (min-width: 768px) {
    .btn {
        max-width: 300px;
    }
}

@media (max-width: 767px) {
    .form-group .btn {
        width: 100%;
    }

    .form-group {
        margin-bottom: 0.5rem;
    }
}

.btn-primary:hover,
.btn-primary:focus {
    color: #a4c9db;
    text-decoration: none;
    background: #294081;
    border-color: #294081;
    text-decoration: none;
}
.bbw .btn-primary:hover,
.bbw .btn-primary:focus {
    color: #B76385;
    text-decoration: none;
    background: #294081;
    border-color: #294081;
    text-decoration: none;
}

.btn:disabled {
    color: #fff !important;
    background-color: #bbb !important;
    border-color: #bbb !important;
}

@media (max-width: 767px) {
    nav .btn {
        margin: 0 10px;
    }
}

blockquote {
    font-style: italic;
    font-size: 14px;
    border-left: none;
    margin: 10px 2%;
    padding: 0;
    color: #ababab;
}

.panel-footer {
    background-color: #fff;
}

.panel-heading h4 {
    margin: 0;
    color: inherit;
}

.modal-content {
    position: relative;
    padding: 30px;
    background-color: #f4f4f4;
    border-radius: 2px;
    box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
    overflow: hidden;
}

.modal-header {
    padding: 0 0 15px 0;
    border-bottom: none;
}

.media-body {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    word-wrap: break-word;
    /* 枠からはみ出したのでこれ必要 */
    min-width: 100px;
    /* 枠からはみ出したのでこれ必要 */
}

.media img.thum {
    width: 100px;
}

/* ---------- etc ---------- */

.flex-container {
    display: flex;
}

.circleimg {
    border-radius: 25px;
    -moz-border-image: border-radius:25px;
    -webkit-border-image: border-radius:25px;
    object-fit: cover;
    width: 50px;
    height: 50px;
    background-color: #ccc;
}

.card_right {
    margin-left: 10px;
}

.card_right p {
    margin: 0;
    font-size: 0.8rem;
    font-weight: bold;
    color: #629933;
}

.card_right span {
    font-size: 0.8rem;
    font-weight: normal !important;
    color: #3f3f3f;
}

/* Become a Host family? */
.narrow {
    border-radius: 0;
    border: 0px;
}

.narrow .card-body {
    padding: 0.8rem;
}

.narrow h4 {
    font-size: 1.1rem !important;
}

.border-box {
    /* padding と border の幅を要素の幅と高さに含める. */
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.clearfix:after {
    content: "";
    clear: both;
    display: block;
}

.clearboth {
    clear: both;
}

.icon {
    margin-left: 5px;
}

hr {
    border: 0;
    border-top: 1px solid #e7e7e7;
}

#modal {
    display: none;
}

.displayblock {
    display: block;
}

.displaynone {
    display: none;
}

#hide {
    display: none;
}

.eventsnone {
    pointer-events: none;
}

.cursor {
    cursor: pointer;
}

.disabled {
    color: #bbb !important;
}

.bread {
    margin-bottom: 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.dummyad {
    background-color: #eee;
    height: 250px;
    width: 300px;
    width: 100%;
    text-align: center;
    color: #888;
    font-size: 14px;
}

.adslabel {
    text-align: center;
    font-size: 12px;
    margin: 15px 20px;
}

.spacer {
    /*margin: 10px 0;*/
}

/*広告をセンター寄せ*/
.adsblock {
    /*margin: auto;*/
    width: auto;
}

/* ---------- index, home ---------- */

.sns-share-buttons {
    margin: 0;
    padding: 0;
}

.sns-share-buttons li {
    display: inline-block;
    vertical-align: top;
    line-height: 0;
    margin-right: 5px;
}

.countrytitle h3 {
    margin: 0;
}

.countrytitle p {
    font-size: 12px;
}

.popular ul {
    padding: 0;
    margin: 0;
}

.popular li {
    float: left;
    list-style: none;
}

.popular a {
    display: inline-block;
    background: #e7f0f7;
    border: 1px solid #cbe3f1;
    border-radius: 3px;
    padding: 2px 5px;
    font-size: 0.9rem;
    margin: 3px;
    cursor: pointer;
}

@media (min-width: 768px) {
    .popular a {
        padding: 5px 7px;
        font-size: 1.0rem;
    }
}

.topcities {
    margin: 0 0 20px 0;
    padding: 10px 0;
    background: #fff;
    border-radius: 4px;
}

.hometitle h1 {
    font-size: 16px;
    margin: 0 0 20px 0;
}

@media (max-width: 767px) {
    .hometitle h1 {
        font-size: 22px;
        margin: 0 0 10px 0;
    }
}

br+p {
    margin-top: -20px;
}

.topselect select {
    width: auto;
    float: left;
    margin-right: 10px;
}

@media (max-width: 767px) {
    .topselect select {
        width: 100%;
    }
}

/* ---------- detail ---------- */

.tips {
    color: #999;
    text-align: center;
    font-size: 0.8rem;
}

@media (min-width: 992px) {
    .tips {
        max-width: 300px;
    }
}

.gray {
    color: #999;
    font-size: 0.8rem;
}

.guestdetail h4,
.hostdetail h4 {
    color: #336699;
}
.bbw .guestdetail h4,
.bbw .hostdetail h4 {
    color: #7D2854;
}

.hostdetail h1,
h1.hostdetail {
    color: #336699;
}
.bbw .hostdetail h1,
.bbw h1.hostdetail {
    color: #7D2854;
}

.guestdetail h1,
h1.guestdetail {
    color: #629933;
}

.agencydetail h1,
h1.agencydetail {
    color: #721c24;
}

.paragraph {
    padding-bottom: 10px;
}

.padding0 {
    padding: 0;
}

.testimo,
.testimo a {
    text-decoration: none;
    color: #e76b8a !important;
}

.area {
    color: #689A68;
    margin-bottom: 10px;
}

.planned {
    color: #62a1d4;
}

.price {
    color: #689A68;
}

.hostdetail .price {
    font-family: 'Montserrat', sans-serif;
    font-size: 23px;
    color: #689A68;
    margin-bottom: 25px;
    font-weight: bold;
}

@media (max-width: 767px) {
    .hostdetail .price {
        font-size: 20px;
    }
}

.hostdetail .price .daily {
    color: #3f3f3f;
    font-size: 14px;
    line-height: 1em;
    font-weight: normal;
}

#price {
    font-family: 'Montserrat', sans-serif;
    font-size: 23px;
    color: #689A68;
    margin-bottom: 25px;
}

@media (max-width: 767px) {
    #price {
        font-size: 20px;
    }
}

#price p {
    margin: 0;
}

#price p.daily {
    color: #3f3f3f;
    font-size: 14px;
    line-height: 1em;
}

.comment {
    color: #888;
    font-size: 0.8rem;
}

.text_bold {
    font-weight: bold;
}

.text_red {
    color: #FF0000;
}

.text_orange {
    color: #FF9900;
    margin: 0;
}

.text_sm {
    font-size: 0.9rem;
}

.text_xs {
    font-size: 0.8rem;
}

.OpenClose {
    display: block;
    background-color: #EEE;
    text-align: center;
    margin-bottom: 20px;
    padding: 5px;
}

.review .shortdesc {
    font-size: 0.9rem;
    margin-bottom: 20px;
}

/* ---------- search ---------- */

.radio-hide {
    display: none !important;
}

.radio-hide+.radio-icon:before {
    content: "\f10c";
    font-family: "FontAwesome";
    color: #ccc;
    font-size: 22px;
}

.radio-hide:checked+.radio-icon:before {
    content: "\f192";
    color: #2196f3;
}

.radio-icon {
    vertical-align: sub;
    margin-right: 5px;
}

.styled-form {
    margin: 0 5px 0 0;
    font-weight: 400;
    cursor: pointer;
}

.continents,
.countries {
    margin-bottom: 20px;
}

#continent ul>li {
    font-weight: bold;
    cursor: pointer;
}

.flag {
    margin-right: 10px;
}

.countries .list-group a {
    font-weight: bold;
    cursor: pointer;
    color: #3f3f3f;
}

.countries .list-group a:hover {
    font-weight: bold;
    cursor: pointer;
    color: #428bca;
    background-color: #f8f9fa;
}

.continents .list-group-item-action {
    font-weight: bold;
    cursor: pointer;
}

.continents .list-group-item-action:hover {
    color: #428bca;
}

#suggest {
    background: #fff;
    padding: 10px;
    color: #428bca;
    box-shadow: rgba(0, 0, 0, 0.3) 0 1px 1px;
}

/* ---------- list search ---------- */

.agencyblock img {
    width: 50px;
}

.hostblock h4 {
    color: #336699;
}
.bbw .hostblock h4 {
    color: #7D2854;
}

.guestblock h4 {
    color: #629933;
}

.tile {
    margin-bottom: 20px;
}

.card-img-top img.fit {
    object-fit: cover;
    width: 100%;
    height: 180px;
    background-color: #ccc;
}
.card-img-top img.fitpremium {
    object-fit: contain;
    width: 100%;
    height: 180px;
    margin: 10px 0;
}
.card-img-top img.fitbasic {
    object-fit: contain;
    width: 100%;
    height: 80px;
    margin: 10px;
}

.card-body h4 {
    font-size: 1.3rem;
    margin-bottom: 10px;
}

.card-body h5 {
    font-size: 1.0rem;
    color: #3f3f3f;
    margin-bottom: 5px;
}

.hostcard h5 {
    color: #428bca;
    font-weight: normal;
}

.hostcard .card-body p {
    max-height: 100px;
    overflow: hidden;
    margin: 0;
}

.guestcard h5 {
    color: #428bca;
    font-weight: normal;
}

.guestcard .card-body p {
    /*height: 80px;*/
    overflow: hidden;
    margin: 0;
}

.card-body .price {
    color: #689A68;
}

.guestcard h4 {
    color: #629933;
}

.xy_center {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    justify-content: center;
}

.y_center {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
}

.x_center {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: center;
}

.hostblock_txt {
    height: 103px;
    overflow: hidden;
    margin: 5px;
}

.guestblock_txt {
    height: 130px;
    overflow: hidden;
    margin: 5px;
}

.hostblock_txt h4 {
    margin: 2px 0 5px 0;
    font-size: 18px;
}

.guestblock_txt h4 {
    color: #629933;
    margin: 2px 0 5px 0;
    font-size: 18px;
}

.guestblock_txt h5 {
    margin: 2px 0;
}

.guestblock_txt p,
.hostblock_txt p {
    margin: 0;
}

.hostblock_txt .price {
    color: #689A68;
}

.hostblock_txt .price span {
    font-size: 14px;
    line-height: 1em;
}

.nationality {
    font-size: 14px;
    font-weight: normal;
}

/* Map area */
#toggle {
    display: none;
}

/* Member page */
.hostname {
    font-weight: bold;
    color: #336699;
}
.bbw .hostname {
    color: #7D2854;
}

/* ---------- list messageboard ---------- */

.more a {
    display: inline-block;
    padding: 5px 14px;
    background-color: #fff;
    border: 1px solid #ddd;
    border-radius: 5px;
}

.guestname {
    color: #336699;
}
.bbw .guestname {
    color: #7D2854;
}

.guestname img {
    margin: 0 3px;
}

.guestcountry {
    color: #888;
}

.guestcomment {
    margin: 0;
}

/* member Messages */
.inquiry_bk {
    background: #fff;
    padding: 5px 10px;
}

.inquiry_arc {
    background: #f4f4f4;
    padding: 5px 10px;
    color: #9E9E9E;
}

.inquiry_arc a {
    color: #9E9E9E !important;
}

a.inquiry_dummy {
    color: #495057;
}

/* ---------- button ---------- */

.btn_contact {
    margin: 0 auto 10px auto;
    width: 100%;
    padding: 10px;
    color: #fff !important;
}

.btn_favourite {
    margin: 20px auto 10px auto;
    background: #fff;
    width: 100%;
}

.btn_favourite:hover,
.btn_favourite:focus,
.btn_favourite.saved {
    color: #ff5a8f;
    text-decoration: none;
    background: #fff;
    border-color: #3362bf;
}

.btn_signup {
    margin: 0 auto 10px auto;
    width: 100%;
}

.btn_signup:hover,
.btn_signup:focus {
    color: #a4c9db;
    background: #294081;
    border-color: #294081;
    text-decoration: none;
}
.bbw .btn_signup:hover,
.bbw .btn_signup:focus {
    color: #B76385;
    background: #294081;
    border-color: #294081;
    text-decoration: none;
}

img.photo {
    padding: 4px;
    margin-right: 10px;
    background-color: white;
    box-shadow: 1px 1px 1px #CCC;
    border: 1px solid #CCC;
    margin-bottom: 5px;
}

#imageblock {
    width: 100%;
    overflow: hidden;
    margin: 0 auto;
    -webkit-transform: translateZ(0);
    /* Optional: When heavy at iOS6+ */
    margin-bottom: 20px;
}

/* ---------- Modal dialog ---------- */

#dialog {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    width: 90%;
    height: 90%;
    background-color: #fff;
    -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.4);
    -moz-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.4);
    box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.4);
    z-index: 1050;
    display: none;
}

#dialog *:focus {
    outline: none;
}

#dialog h3.title {
    background-color: #a4c9db;
    padding: 10px 15px;
    color: #fff;
    font-size: 14px;
    font-weight: normal;
    margin: 0;
    position: relative;
}
.bbw #dialog h3.title {
    background-color: #B76385;
}

#dialog h3.title a {
    position: absolute;
    top: 10px;
    right: 15px;
    color: #fff;
    text-decoration: none;
    cursor: pointer;
}

#dialog .isi-dialog {
    margin: 15px;
    height: 90%;
}

#dialog .button-wrapper {
    padding: 10px 15px 0px;
    border-top: 1px solid #ddd;
    margin-top: 15px;
}

#dialog .button-wrapper button {
    background-color: #a4c9db;
    border: none;
    color: #fff;
    padding: 5px 10px;
    border-radius: 3px;
    cursor: pointer;
}
.bbw #dialog .button-wrapper button {
    background-color: #B76385;
}

#dialog .button-wrapper button:hover {
    background-color: #aaa;
}

#dialog-overlay {
    position: fixed !important;
    position: absolute;
    z-index: 1040;
    top: 0px;
    right: 0px;
    bottom: 0px;
    left: 0px;
    background-color: #000;
    display: none;
}

#iframeContainer {
    height: 100%;
}

#iframeContainer iframe {
    width: 100%;
    height: 100%;
    border: none;
    overflow: auto;
}

/* ---------- flipsnap.js ---------- */

.flipsnap {
    width: 100%;
}

.flipsnap:after {
    content: '';
    display: block;
    clear: both;
    height: 0;
}

.flipsnap ul {
    margin: 0;
    padding: 0;
}

.flipsnap ul li {
    float: left;
    list-style: none;
}

.fspointer {
    text-align: center;
}

.fspointer span {
    display: inline-block;
    width: 8px;
    height: 8px;
    border-radius: 8px;
    border: 1px solid #000;
}

.fspointer span.current {
    background: #FC0;
}

/* +-----+ Flag Sprite +-----+ */

.flag {
    width: 16px;
    height: 11px;
    background: url(/images/flagsplit.gif) no-repeat top left;
}

.sprite-ad {
    background-position: 0 0;
}

.sprite-ae {
    background-position: 0 -12px;
}

.sprite-af {
    background-position: 0 -24px;
}

.sprite-ag {
    background-position: 0 -36px;
}

.sprite-ai {
    background-position: 0 -48px;
}

.sprite-al {
    background-position: 0 -60px;
}

.sprite-am {
    background-position: 0 -72px;
}

.sprite-an {
    background-position: 0 -84px;
}

.sprite-ao {
    background-position: 0 -96px;
}

.sprite-ar {
    background-position: 0 -108px;
}

.sprite-as {
    background-position: 0 -120px;
}

.sprite-at {
    background-position: 0 -132px;
}

.sprite-au,
.sprite-hm {
    background-position: 0 -144px;
}

.sprite-aw {
    background-position: 0 -156px;
}

.sprite-ax {
    background-position: 0 -168px;
}

.sprite-az {
    background-position: 0 -180px;
}

.sprite-ba {
    background-position: 0 -192px;
}

.sprite-bb {
    background-position: 0 -204px;
}

.sprite-bd {
    background-position: 0 -216px;
}

.sprite-be {
    background-position: 0 -228px;
}

.sprite-bf {
    background-position: 0 -240px;
}

.sprite-bg {
    background-position: 0 -252px;
}

.sprite-bh {
    background-position: 0 -264px;
}

.sprite-bi {
    background-position: 0 -276px;
}

.sprite-bj {
    background-position: 0 -288px;
}

.sprite-bm {
    background-position: 0 -300px;
}

.sprite-bn {
    background-position: 0 -312px;
}

.sprite-bo {
    background-position: 0 -324px;
}

.sprite-br {
    background-position: 0 -336px;
}

.sprite-bs {
    background-position: 0 -348px;
}

.sprite-bt {
    background-position: 0 -360px;
}

.sprite-bv,
.sprite-no,
.sprite-sj {
    background-position: 0 -372px;
}

.sprite-bw {
    background-position: 0 -384px;
}

.sprite-by {
    background-position: 0 -396px;
}

.sprite-bz {
    background-position: 0 -408px;
}

.sprite-ca {
    background-position: 0 -420px;
}

.sprite-catalonia {
    background-position: 0 -432px;
}

.sprite-cc {
    background-position: 0 -444px;
}

.sprite-cd {
    background-position: 0 -456px;
}

.sprite-cf {
    background-position: 0 -468px;
}

.sprite-cg {
    background-position: 0 -480px;
}

.sprite-ch {
    background-position: 0 -492px;
}

.sprite-ci {
    background-position: 0 -504px;
}

.sprite-ck {
    background-position: 0 -516px;
}

.sprite-cl {
    background-position: 0 -528px;
}

.sprite-cm {
    background-position: 0 -540px;
}

.sprite-cn {
    background-position: 0 -552px;
}

.sprite-co {
    background-position: 0 -564px;
}

.sprite-cr {
    background-position: 0 -576px;
}

.sprite-cs {
    background-position: 0 -588px;
}

.sprite-cu {
    background-position: 0 -600px;
}

.sprite-cv {
    background-position: 0 -612px;
}

.sprite-cx {
    background-position: 0 -624px;
}

.sprite-cy {
    background-position: 0 -636px;
}

.sprite-cz {
    background-position: 0 -648px;
}

.sprite-de {
    background-position: 0 -660px;
}

.sprite-dj {
    background-position: 0 -672px;
}

.sprite-dk {
    background-position: 0 -684px;
}

.sprite-dm {
    background-position: 0 -696px;
}

.sprite-do {
    background-position: 0 -708px;
}

.sprite-dz {
    background-position: 0 -720px;
}

.sprite-ec {
    background-position: 0 -732px;
}

.sprite-ee {
    background-position: 0 -744px;
}

.sprite-eg {
    background-position: 0 -756px;
}

.sprite-eh {
    background-position: 0 -768px;
}

.sprite-england {
    background-position: 0 -780px;
}

.sprite-er {
    background-position: 0 -792px;
}

.sprite-es {
    background-position: 0 -804px;
}

.sprite-et {
    background-position: 0 -816px;
}

.sprite-europeanunion {
    background-position: 0 -828px;
}

.sprite-fam {
    background-position: 0 -840px;
}

.sprite-fi {
    background-position: 0 -852px;
}

.sprite-fj {
    background-position: 0 -864px;
}

.sprite-fk {
    background-position: 0 -876px;
}

.sprite-fm {
    background-position: 0 -888px;
}

.sprite-fo {
    background-position: 0 -900px;
}

.sprite-fr,
.sprite-gf,
.sprite-re {
    background-position: 0 -912px;
}

.sprite-ga {
    background-position: 0 -924px;
}

.sprite-gb {
    background-position: 0 -936px;
}

.sprite-gd {
    background-position: 0 -948px;
}

.sprite-ge {
    background-position: 0 -960px;
}

.sprite-gh {
    background-position: 0 -972px;
}

.sprite-gi {
    background-position: 0 -984px;
}

.sprite-gl {
    background-position: 0 -996px;
}

.sprite-gm {
    background-position: 0 -1008px;
}

.sprite-gn {
    background-position: 0 -1020px;
}

.sprite-gp {
    background-position: 0 -1032px;
}

.sprite-gq {
    background-position: 0 -1044px;
}

.sprite-gr {
    background-position: 0 -1056px;
}

.sprite-gs {
    background-position: 0 -1068px;
}

.sprite-gt {
    background-position: 0 -1080px;
}

.sprite-gu {
    background-position: 0 -1092px;
}

.sprite-gw {
    background-position: 0 -1104px;
}

.sprite-gy {
    background-position: 0 -1116px;
}

.sprite-hk {
    background-position: 0 -1128px;
}

.sprite-hn {
    background-position: 0 -1140px;
}

.sprite-hr {
    background-position: 0 -1152px;
}

.sprite-ht {
    background-position: 0 -1164px;
}

.sprite-hu {
    background-position: 0 -1176px;
}

.sprite-id {
    background-position: 0 -1188px;
}

.sprite-ie {
    background-position: 0 -1200px;
}

.sprite-il {
    background-position: 0 -1212px;
}

.sprite-in {
    background-position: 0 -1224px;
}

.sprite-io {
    background-position: 0 -1236px;
}

.sprite-iq {
    background-position: 0 -1248px;
}

.sprite-ir {
    background-position: 0 -1260px;
}

.sprite-is {
    background-position: 0 -1272px;
}

.sprite-it {
    background-position: 0 -1284px;
}

.sprite-jm {
    background-position: 0 -1296px;
}

.sprite-jo {
    background-position: 0 -1308px;
}

.sprite-jp {
    background-position: 0 -1320px;
}

.sprite-ke {
    background-position: 0 -1332px;
}

.sprite-kg {
    background-position: 0 -1344px;
}

.sprite-kh {
    background-position: 0 -1356px;
}

.sprite-ki {
    background-position: 0 -1368px;
}

.sprite-km {
    background-position: 0 -1380px;
}

.sprite-kn {
    background-position: 0 -1392px;
}

.sprite-kp {
    background-position: 0 -1404px;
}

.sprite-kr {
    background-position: 0 -1416px;
}

.sprite-kw {
    background-position: 0 -1428px;
}

.sprite-ky {
    background-position: 0 -1440px;
}

.sprite-kz {
    background-position: 0 -1452px;
}

.sprite-la {
    background-position: 0 -1464px;
}

.sprite-lb {
    background-position: 0 -1476px;
}

.sprite-lc {
    background-position: 0 -1488px;
}

.sprite-li {
    background-position: 0 -1500px;
}

.sprite-lk {
    background-position: 0 -1512px;
}

.sprite-lr {
    background-position: 0 -1524px;
}

.sprite-ls {
    background-position: 0 -1536px;
}

.sprite-lt {
    background-position: 0 -1548px;
}

.sprite-lu {
    background-position: 0 -1560px;
}

.sprite-lv {
    background-position: 0 -1572px;
}

.sprite-ly {
    background-position: 0 -1584px;
}

.sprite-ma {
    background-position: 0 -1596px;
}

.sprite-mc {
    background-position: 0 -1608px;
}

.sprite-md {
    background-position: 0 -1620px;
}

.sprite-me {
    background-position: 0 -1632px;
}

.sprite-mg {
    background-position: 0 -1645px;
}

.sprite-mh {
    background-position: 0 -1657px;
}

.sprite-mk {
    background-position: 0 -1669px;
}

.sprite-ml {
    background-position: 0 -1681px;
}

.sprite-mm {
    background-position: 0 -1693px;
}

.sprite-mn {
    background-position: 0 -1705px;
}

.sprite-mo {
    background-position: 0 -1717px;
}

.sprite-mp {
    background-position: 0 -1729px;
}

.sprite-mq {
    background-position: 0 -1741px;
}

.sprite-mr {
    background-position: 0 -1753px;
}

.sprite-ms {
    background-position: 0 -1765px;
}

.sprite-mt {
    background-position: 0 -1777px;
}

.sprite-mu {
    background-position: 0 -1789px;
}

.sprite-mv {
    background-position: 0 -1801px;
}

.sprite-mw {
    background-position: 0 -1813px;
}

.sprite-mx {
    background-position: 0 -1825px;
}

.sprite-my {
    background-position: 0 -1837px;
}

.sprite-mz {
    background-position: 0 -1849px;
}

.sprite-na {
    background-position: 0 -1861px;
}

.sprite-nc {
    background-position: 0 -1873px;
}

.sprite-ne {
    background-position: 0 -1885px;
}

.sprite-nf {
    background-position: 0 -1897px;
}

.sprite-ng {
    background-position: 0 -1909px;
}

.sprite-ni {
    background-position: 0 -1921px;
}

.sprite-nl {
    background-position: 0 -1933px;
}

.sprite-np {
    background-position: 0 -1945px;
}

.sprite-nr {
    background-position: 0 -1957px;
}

.sprite-nu {
    background-position: 0 -1969px;
}

.sprite-nz {
    background-position: 0 -1981px;
}

.sprite-om {
    background-position: 0 -1993px;
}

.sprite-pa {
    background-position: -17px 0;
}

.sprite-pe {
    background-position: -17px -12px;
}

.sprite-pf {
    background-position: -17px -24px;
}

.sprite-pg {
    background-position: -17px -36px;
}

.sprite-ph {
    background-position: -17px -48px;
}

.sprite-pk {
    background-position: -17px -60px;
}

.sprite-pl {
    background-position: -17px -72px;
}

.sprite-pm {
    background-position: -17px -84px;
}

.sprite-pn {
    background-position: -17px -96px;
}

.sprite-pr {
    background-position: -17px -108px;
}

.sprite-ps {
    background-position: -17px -120px;
}

.sprite-pt {
    background-position: -17px -132px;
}

.sprite-pw {
    background-position: -17px -144px;
}

.sprite-py {
    background-position: -17px -156px;
}

.sprite-qa {
    background-position: -17px -168px;
}

.sprite-ro {
    background-position: -17px -180px;
}

.sprite-rs {
    background-position: -17px -192px;
}

.sprite-ru {
    background-position: -17px -204px;
}

.sprite-rw {
    background-position: -17px -216px;
}

.sprite-sa {
    background-position: -17px -228px;
}

.sprite-sb {
    background-position: -17px -240px;
}

.sprite-sc {
    background-position: -17px -252px;
}

.sprite-scotland {
    background-position: -17px -264px;
}

.sprite-sd {
    background-position: -17px -276px;
}

.sprite-se {
    background-position: -17px -288px;
}

.sprite-sg {
    background-position: -17px -300px;
}

.sprite-sh {
    background-position: -17px -312px;
}

.sprite-si {
    background-position: -17px -324px;
}

.sprite-sk {
    background-position: -17px -336px;
}

.sprite-sl {
    background-position: -17px -348px;
}

.sprite-sm {
    background-position: -17px -360px;
}

.sprite-sn {
    background-position: -17px -372px;
}

.sprite-so {
    background-position: -17px -384px;
}

.sprite-sr {
    background-position: -17px -396px;
}

.sprite-st {
    background-position: -17px -408px;
}

.sprite-sv {
    background-position: -17px -420px;
}

.sprite-sy {
    background-position: -17px -432px;
}

.sprite-sz {
    background-position: -17px -444px;
}

.sprite-tc {
    background-position: -17px -456px;
}

.sprite-td {
    background-position: -17px -468px;
}

.sprite-tf {
    background-position: -17px -480px;
}

.sprite-tg {
    background-position: -17px -492px;
}

.sprite-th {
    background-position: -17px -504px;
}

.sprite-tj {
    background-position: -17px -516px;
}

.sprite-tk {
    background-position: -17px -528px;
}

.sprite-tl {
    background-position: -17px -540px;
}

.sprite-tm {
    background-position: -17px -552px;
}

.sprite-tn {
    background-position: -17px -564px;
}

.sprite-to {
    background-position: -17px -576px;
}

.sprite-tr {
    background-position: -17px -588px;
}

.sprite-tt {
    background-position: -17px -600px;
}

.sprite-tv {
    background-position: -17px -612px;
}

.sprite-tw {
    background-position: -17px -624px;
}

.sprite-tz {
    background-position: -17px -636px;
}

.sprite-ua {
    background-position: -17px -648px;
}

.sprite-ug {
    background-position: -17px -660px;
}

.sprite-um {
    background-position: -17px -672px;
}

.sprite-us {
    background-position: -17px -684px;
}

.sprite-uy {
    background-position: -17px -696px;
}

.sprite-uz {
    background-position: -17px -708px;
}

.sprite-va {
    background-position: -17px -720px;
}

.sprite-vc {
    background-position: -17px -732px;
}

.sprite-ve {
    background-position: -17px -744px;
}

.sprite-vg {
    background-position: -17px -756px;
}

.sprite-vi {
    background-position: -17px -768px;
}

.sprite-vn {
    background-position: -17px -780px;
}

.sprite-vu {
    background-position: -17px -792px;
}

.sprite-wales {
    background-position: -17px -804px;
}

.sprite-wf {
    background-position: -17px -816px;
}

.sprite-ws {
    background-position: -17px -828px;
}

.sprite-ye {
    background-position: -17px -840px;
}

.sprite-yt {
    background-position: -17px -852px;
}

.sprite-za {
    background-position: -17px -864px;
}

.sprite-zm {
    background-position: -17px -876px;
}

.sprite-zw {
    background-position: -17px -888px;
}