@charset "utf-8";

/* =======================================
	Browser Reset
========================================== */
ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

li {
    margin: 0;
    padding: 0;
}

/* base-set
--------------------------------------------------------- */
html {
    font-size: 62.5%;
}

body {
    border-top: 7px solid #32250c;
    background: #fff;
    font-size: 1.3rem;
    color: #260d04;
    -webkit-text-size-adjust: 100%;
}

body,
input,
select,
textarea {
    font-family: "Helvetica Neue", Helvetica, Arial, Roboto, "Droid Sans", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", sans-serif;
}

form {
    margin: 0;
}

input {
    font-size: 100%;
}

.wrap {
    width: 94%;
    max-width: 1170px;
    margin: auto;
}

/* =======================================
	Others
========================================== */
/*box-sizing
--------------------------------------------------------- */
*,
*:before,
*:after {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

/*margin
--------------------------------------------------------- */
.mb0 {
    margin-bottom: 0 !important;
}

/*link
--------------------------------------------------------- */
a {}

a:hover {}

a:hover img {
    opacity: 0.7;
    filter: alpha(opacity=70);
    -ms-filter: "alpha( opacity=70 )";
}

/* =======================================
	Structure
========================================== */
/*header
--------------------------------------------------------- */
/* -------------------------------------
hd_box
------------------------------------- */
.hd_box {
    padding: 7px 0 9px;
    background: url(../images/common/bg_header.png);
    color: #fff;
}

.hd_box span {
    font-size: 2rem;
    font-weight: bold;
}

/* -------------------------------------
hd_inner
------------------------------------- */
.hd_inner {
    width: 100%;
    max-width: 1170px;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    align-items: center;
}

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

.hd_inner .contact {
    margin: 0;
    font-size: 1.2rem;
}

/* -------------------------------------
search_box
------------------------------------- */
.search_box {
    margin-top: 4px;
    margin-left: auto;
    display: flex;
    justify-content: center;
    align-items: center;
}

.search_box form {
    display: flex;
    justify-content: center;
    align-items: center;
}

.search_box dl,
.search_box dt,
.search_box dd {
    margin: 0;
    line-height: 1;
}

.date_489ban {
    height: 36px;
    margin: 0 8px 0 0;
}

.date_489ban dd {
    margin-left: 0;
    padding: 0;
    border: none;
    display: flex;
    justify-content: center;
    align-items: center;
}

.date_489ban dd select {
    height: 20px;
    margin: 0 5px 0 0;
    border: none;
    background: #fff;
}

.date_489ban dd input {
    height: 20px;
    margin: 1px 0 0;
    padding: 0 10px 2px;
    cursor: pointer;
    border: none;
    background: #336666;
    line-height: 1;
    color: #fff;
    vertical-align: top;
}

.inbox_489ban {
    margin-left: 20px;
}

.hd_box form button,
.hd_box form button:active,
.hd_box form button:focus {
    width: 100px;
    height: 24px;
    margin-left: 20px;
    padding: 0;
    cursor: pointer;
    border: 0 solid transparent;
    border-radius: 0;
    background: #988123;
    box-shadow: none;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    font-family: inherit;
    font-size: 12px;
    font-weight: 500;
    line-height: 1.2;
    color: rgba(255, 255, 255, 0.95);
    text-align: center;
    vertical-align: middle;
    text-decoration: none;
    text-transform: none;
    -webkit-appearance: none;
}

.lang {
    margin: 5px 0 0 7px;
    float: left;
}

.cancell {
    margin: 5px 10px 0 7px;
    float: left;
}

.cancell a {
    font-size: 12px;
    color: #fff;
}

.reservation {
    width: 120px;
    height: 33px;
    margin: 0 20px 0 20px;
    background: url(../images/common/btn_reservation.png) no-repeat;
    float: left;
}

.reservation:hover {
    opacity: 0.8;
    filter: alpha(opacity=80);
    -ms-filter: "alpha( opacity=80 )";
}

.reservation a {
    width: 120px;
    height: 33px;
    margin: 0;
    display: block;
    color: #333;
    text-decoration: none;
}

.reservation a:hover {
    opacity: 0.8;
    filter: alpha(opacity=80);
    -ms-filter: "alpha( opacity=80 )";
}

.reservation p {
    margin: 0;
    padding: 0;
    font-size: 1.8rem;
    text-align: center;
}

/* -------------------------------------
hd_box02
------------------------------------- */
.hd_box02 {
    padding: 24px 0;
    background: url(../images/common/bg_hd_box02.gif) repeat-x;
}

/* -------------------------------------
hd_inner02
------------------------------------- */
.hd_inner02 {
    width: 100%;
    max-width: 1170px;
    margin: 0 auto;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}

/* -------------------------------------
hd_left
------------------------------------- */
.hd_left {
    display: flex;
    justify-content: center;
    align-items: center;
}

.hd_left h1 {
    margin: 0;
}

.hd_left h1 a {
    display: block;
}

.hd_left p {
    margin: 0 0 0 24px;
}

/*nav
--------------------------------------------------------- */
nav {
    display: flex;
    justify-content: flex-end;
}

nav ul {
    margin: 0 0 0 -32px;
    display: flex;
    flex-wrap: wrap;
}

nav li {
    margin: 0 0 0 32px;
}

nav a {
    padding: 0;
    font-size: 1.4rem;
    font-weight: bold;
    color: #410b0e;
    text-decoration: none;
}

/*contents
--------------------------------------------------------- */
.contents h1 {
    max-width: 1200px;
    margin: 0 auto;
}

/*footer
--------------------------------------------------------- */
footer {
    padding: 20px 0 0;
    background: url(../images/common/bg_header.png);
}

.foot_ban {
    width: 100%;
    max-width: 1170px;
    margin: 0 auto 20px;
    padding: 0;
    text-align: center;
}

.foot_inner {
    background: #fff;
}

.foot_box {
    width: 100%;
    max-width: 1170px;
    margin: 0 auto;
    padding: 24px 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.foot_box h1 {
    margin: 0;
}

.foot_box ul {
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.foot_box li {
    margin: 0 0 0 32px;
}

.foot_box a {
    font-size: 1.4rem;
    font-weight: bold;
    color: #410b0e;
    text-decoration: none;
}

.foot_box a:hover {
    color: #de2c3b;
}

footer p {
    margin: 0;
    padding: 18px 0 13px;
    background: #32250c url(../images/common/bg_hd_box02.gif) repeat-x;
    font-size: 1.2rem;
    line-height: 1;
    color: #fff;
    text-align: center;
}

/* =======================================
	top
========================================== */
/*viewer
--------------------------------------------------------- */
.viewer {
    width: 100%;
    margin: 0 auto 3%;
    position: relative;
    overflow: hidden;
}

.viewer ul {
    width: 100%;
    position: relative;
    overflow: hidden;
}

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

.viewer ul li {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

.viewer ul li img {
    width: 100%;
}

/*mov
--------------------------------------------------------- */
.mov {
    background: url(../images/top/bg_mov.jpg);
}

.mov_inner {
    background: url(../images/top/bg_movie.jpg) repeat-x center 0;
}

.mov_box {
    max-width: 900px;
    margin: 0 auto;
    padding: 2% 0 1%;
    background: url(../images/top/bg_mov02.png) no-repeat center 0;
}

.mov_box .units-row {
    max-width: 1200px;
    margin: 0 auto;
}

.mov_box .box {
    width: 83%;
    padding: 8px;
    background: #fff;
    box-shadow: 0px 30px 23px 0px rgba(0, 0, 0, 0.4);
    float: right;
}

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

.movie-wrap {
    height: 0;
    padding-top: 0;
    padding-bottom: 56.25%;
    position: relative;
    overflow: hidden;
}

.movie-wrap iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

.mov_box .txt_box {
    min-height: 345px;
    background: url(../images/top/bg01.png) no-repeat right 0;
}

.mov_box .txt_box p {
    width: 60%;
    margin: 0;
}

/*intro
--------------------------------------------------------- */
.intro {
    background: url(../images/top/bg02.png) no-repeat center top;
    background-size: contain;
}

.intro h2 {
    margin: 0;
    text-align: center;
}

.intro_inner {
    max-width: 1681px;
    margin: 0 auto;
    padding: 2% 0 0;
}

.intro .units-row {
    max-width: 1681px;
    margin: 0 auto 2%;
}

.intro .unit-50r {
    width: 48.5%;
    margin-right: 3%;
    padding: 0 0 0 13%;
    float: right;
}

.intro .unit-50r:first-child {
    margin-right: 0;
    padding: 0;
}

.intro .unit-50r h3 {
    margin-left: 20%;
}

.intro .unit-50r h4 {
    margin-left: 20%;
}

.intro .unit-50r p {
    margin-left: 20%;
}

.intro .unit-50r:first-child h3 {
    margin-left: 0;
}

.intro .unit-50r:first-child h4 {
    margin-left: 0;
}

.intro .unit-50r:first-child p {
    margin-left: 0;
}

.intro .unit-55 {
    width: 55%;
    float: left;
    text-align: right;
}

.intro .unit-45 {
    width: 42%;
    margin-left: 3%;
    float: left;
}

.intro .unit-45 h2 {
    margin: 0 0 29px;
    text-align: left;
}

.intro h3 {
    margin: 0 0 1.65em;
    text-align: left;
}

.intro h4 {
    font-weight: normal;
    font-style: 2rem;
    color: #999;
}

.hos01 p {
    width: 60%;
    color: #4e4e4e;
}

.hos01 .btn01 {
    margin: 0 0 3em;
}

.hos01 .unit-50:first-child {
    text-align: right;
}

.hos02 h3 {
    margin-left: 30%;
}

.hos02 h4 {
    margin-left: 30%;
}

.hos02 p {
    margin-left: 30%;
}

.hos02 .btn01 {
    margin: 0 0 10px 30%;
}

/*tourist
--------------------------------------------------------- */
.tourist {
    margin: 0 0 33px;
    padding: 3% 0 17px;
    background: url(../images/common/back.png);
}

.tourist h2 {
    margin: 0 0 20px;
}

.tourist .sightseeing_box {
    padding: 0 0 2%;
}

/*gallery
--------------------------------------------------------- */
.gallery_box {
    padding: 3% 0;
    background: url(../images/top/bg_mov.jpg);
    text-align: center;
}

.gallery_box ul {
    max-width: 980px;
    margin: 16px auto 0;
    font-size: 0;
}

.gallery_box li {
    display: inline;
}

.gallery_box img {
    width: 25%;
}

/*information
--------------------------------------------------------- */
.information {
    padding: 3% 0;
    background: url(../images/common/back.png);
}

.social {
    width: 100%;
    max-width: 980px;
    margin: 0 auto;
}

.s_box01 {
    display: table-cell;
    vertical-align: top;
}

.s_box02 {
    padding: 0 0 0 3%;
    display: table-cell;
    vertical-align: top;
}

/*.s_box03 {
	display: table-cell;
	padding: 0 0 0 3%;
	vertical-align: top;
}*/
.s_box03 {
    width: 390px;
    height: 390px;
    padding: 0 0 0 3%;
    display: table-cell;
    vertical-align: top;
}

.s_box03 iframe {
    width: 100%;
    height: 100%;
    border: none;
    overflow: hidden;
}

.map {
    max-width: 980px;
    margin: 2% auto 0;
    padding: 0 1%;
    display: table;
}

.map_box01 {
    width: 50%;
    display: table-cell;
    text-align: right;
    vertical-align: top;
}

.map_box02 {
    width: 50%;
    padding: 10% 0 0;
    display: table-cell;
    vertical-align: top;
}

.ggmap {
    height: 0;
    padding-top: 30px;
    padding-bottom: 56.25%;
    border: 1px solid #36160a;
    position: relative;
    overflow: hidden;
}

.ggmap iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

@media only screen and (max-width: 767px) {
    .map {
        max-width: 95%;
    }

    .map_box01 {
        width: 50%;
        display: table-cell;
        text-align: right;
        vertical-align: top;
    }

    .map_box01 img {
        width: 100%;
    }

    .map_box02 {
        width: 50%;
        padding: 5% 0 2%;
        display: table-cell;
        vertical-align: top;
    }

    .map_box02 p {
        margin-bottom: 5px;
        font-size: 1.3rem;
    }
}

/* =======================================
	stay
========================================== */
/*stay_inner
--------------------------------------------------------- */
.stay_inner {
    max-width: 1566px;
    margin: 0 auto;
    background: url(../images/stay/bg01.jpg) repeat-y 50% 0;
}

.stay_inner .units-row {
    margin: 0;
}

.stay_inner .unit-50 {
    width: 47.7%;
    margin: 0 0 0 1.55%;
}

.stay_inner .unit-50:first-child {
    margin: 0;
}

.stay_inner h2 {
    margin: 0 0 5%;
}

.stay_inner p {
    margin: 0 0 5%;
    font-size: 2rem;
    color: #999;
}

.stay_inner .f13 {
    font-size: 1.3rem;
    color: #4e4e4e;
}

.stay_inner .rbox {
    width: 42%;
}

.stay_inner .box01 {
    padding: 3% 0 0;
}

.stay_inner .box01 .lbox {
    text-align: right;
}

.stay_inner .box01 .rbox p {
    padding: 0 0 0 6.8%;
}

.stay_inner .box02 .lbox {
    text-align: right;
}

.stay_inner .box02 .rbox h2 {
    padding: 7% 0 0;
}

.stay_inner .box02 .rbox p {
    padding: 0 0 0 6.8%;
}

.stay_inner .box03 .lbox {
    text-align: right;
}

.stay_inner .box03 .rbox p {
    padding: 0 0 0 6.8%;
}

.stay_inner .access {
    max-width: 980px;
    margin: -1% auto 0;
    padding: 2% 1.5% 0;
    border: 1px solid #3b170a;
    background: #fff;
}

.stay_inner .access .units-row {
    margin: 0 0 2%;
}

.stay_inner .access .unit-50 {
    width: 48.5%;
    margin: 0 0 0 3%;
}

.stay_inner .access .unit-50:first-child {
    margin: 0;
}

.stay_inner .ac_box {
    padding: 2% 2% 0;
    border-radius: 5px;
    background: #ede8e6;
    text-align: center;
}

.stay_inner .ac_box h3 {
    margin: 0 0 5%;
    font-size: 1.6rem;
    color: #3b170a;
}

.stay_inner .ac_box p {
    margin: 0 0 5%;
    font-size: 1.3rem;
    color: #3b170a;
    text-align: left;
}

.stay_inner .ac_box img {
    margin: 0 0 5%;
}

.stay_inner .ac_box02 {
    padding: 2%;
    border-radius: 5px;
    background: #e0ecc6;
}

.stay_inner .ac_box02 h3 {
    margin: 0 0 5%;
    padding: 2.5% 0 2%;
    border-radius: 5px;
    background: #8fc31f;
    font-size: 1.8rem;
    color: #fff;
    text-align: center;
}

.stay_inner .access02 {
    max-width: 980px;
    margin: 0 auto;
    padding: 2% 1.5%;
    border: 1px solid #3b170a;
    background: #fff;
}

.stay_inner .ac_box03 {
    padding: 2% 2%;
    border-radius: 5px;
    background: #ede8e6;
    text-align: center;
}

.stay_inner .ac_box03 h3 {
    margin: 0 0 5%;
    font-size: 1.6rem;
    color: #3b170a;
}

.stay_inner .ac_box03 p {
    margin: 0;
}

.timetable {
    width: 100%;
}

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

.timetable dl {
    width: 49%;
    margin: 0 0 0 1px;
    padding: 3% 0;
    border-left: 1px solid #543827;
    float: left;
    text-align: center;
}

.timetable dl:first-child {
    margin: 0 1px 0 0;
    border-right: 1px solid #543827;
    border-left: none;
}

.timetable dt {
    padding: 0 0 3%;
    border-bottom: 1px dashed #543827;
    font-weight: bold;
}

.timetable dd {
    margin: 0;
    padding: 3% 0 0;
}

.timetable li {
    text-align: center;
}

.coupon {
    min-height: 372px;
    margin: 0 0 0 -22px;
    padding: 21% 0 0 11%;
    background: url(../images/stay/bg01.png) no-repeat;
}

/*stay_plan
--------------------------------------------------------- */
.stay_plan {
    margin: 3% 0 0;
    padding: 3% 0;
    background: url(../images/common/back.png);
}

.stay_box {
    max-width: 980px;
    margin: 0 auto;
    text-align: center;
}

.stay_box p {
    padding: 0 20%;
    font-size: 1.6rem;
    font-weight: bold;
}

/* =======================================
	spa
========================================== */
.spa h2 {
    margin: -60px 0 20px;
    padding: 0 10px;
    text-align: center;
}

/*loopslider
--------------------------------------------------------- */
.loopslider {
    width: 100%;
    max-width: 1920px;
    height: 320px;
    margin: 0 auto;
    position: relative;
    overflow: hidden;
    text-align: left;
}

.loopslider ul {
    height: 320px;
    display: inline;
    float: left;
    overflow: hidden;
}

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

.loopslider ul li {
    width: 480px;
    height: 320px;
    display: inline;
    float: left;
    overflow: hidden;
}

.loopslider_wrap {
    z-index: -1;
}

/*tit_box
--------------------------------------------------------- */
.tit_box {
    max-width: 1300px;
    margin: -20px auto 0;
    background: url(../images/spa/bg01.png) no-repeat 0 0;
    z-index: 0;
}

.tit_box h1 {
    margin: 0;
    text-align: right;
    z-index: 0;
}

.tit_box p {
    padding: 0 25%;
}

.spa-page .tit_box p {
    padding: 80px 0;
}

@media screen and (max-width: 767px) {
    .spa-page .tit_box p {
        padding: 0;
    }
}

/*bath
--------------------------------------------------------- */
.bath {
    margin: 0 0 3%;
    text-align: center;
}

.bath p {
    margin: 0;
}

/*spa_box
--------------------------------------------------------- */
.spa_box {
    padding: 0 10px 3%;
}

.spa_box p {
    font-size: 1.5rem;
    color: #736c69;
    text-align: center;
}

/*precautionary
--------------------------------------------------------- */
.precautionary {
    padding: 3% 0;
    background: url(../images/common/back.png);
}

.precautionary_inner {
    max-width: 992px;
    margin: 0 auto;
    padding: 0 1%;
}

.precautionary h3 {
    margin: 0 0 25px;
}

.precautionary .box01 p {
    margin: 0;
}

.precautionary ul {
    margin: 0 0 35px;
    padding: 33px 36px 13px;
    background: #d6e6b6;
}

.precautionary li {
    margin: 0 0 20px;
}

.precautionary .box02 {
    padding: 46px 0 0;
    border-bottom: 5px solid #cee2a5;
    background: #fff;
    text-align: center;
}

/* =======================================
	rooms
========================================== */
.rooms {
    padding: 1.65em 0 32px;
}

.rooms h2 {
    margin: 0 0 28px;
    padding: 100px 0 0;
    text-align: center;
}

@media (max-width: 767px) {
    .rooms h2 {
        padding: 20px 0 0;
    }
}

.rooms p {
    margin: 0;
    text-align: center;
}

/*guest_room
--------------------------------------------------------- */
.guest_room {
    margin: 0;
    background: #260d04;
}

/*hospitality
--------------------------------------------------------- */
.hospitality {
    max-width: 954px;
    margin: -15px auto 0;
}

.hospitality h3 {
    margin: 0 0 34px;
}

.hospitality p {
    margin: 0 0 1.65em;
    font-size: 1.6rem;
    color: #999;
    text-align: left;
}

.hospitality .btn01 {
    margin: 89px 0 0;
}

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

.hospitality .box01 .lbox {
    width: 43.3%;
    float: left;
}

.hospitality .box01 .rbox {
    width: 56.7%;
    padding: 145px 0 0;
    float: left;
}

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

.hospitality .box02 .lbox {
    width: 54.5%;
    padding: 58px 0 0 20%;
    float: left;
}

.hospitality .box02 .rbox {
    width: 45.5%;
    margin: -178px 0 0;
    float: left;
}

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

.hospitality .box03 .lbox {
    width: 43.3%;
    margin: -42px 0 0;
    float: left;
}

.hospitality .box03 .rbox {
    width: 56.7%;
    float: left;
}

/* =======================================
	dish
========================================== */
.dish {
    padding: 2% 0 0;
}

.dish h2 {
    margin: 0 0 20px;
    padding: 0 10px;
    text-align: center;
}

.dish h4 {
    margin: 0 0 75px;
    font-size: 2rem;
    color: #999;
}

.dish p {
    margin: 0;
    text-align: center;
}

.dish-page .youtube-wrap {
    padding: 30px;
    background-image: url(../images/dish/youtube-wrap.png);
    background-repeat: no-repeat;
    background-position: center top;
}

.dish-page .youtube {
    width: 94%;
    max-width: 560px;
    margin: auto;
}

/*dish_inner
--------------------------------------------------------- */
.dish_inner {
    max-width: 1348px;
    margin: 0 auto;
    padding: 4% 10px 0;
}

.dish_inner .unit-50 h3 {
    margin: 40px 0;
}

.dish_inner p {
    margin: 0 0 28px;
    text-align: left;
}

.dish_inner p img {
    margin: 0 0 15px;
}

.dish_inner p span {
    margin: -45px 0 0;
    display: block;
}

.dish_inner .w50 {
    max-width: 475px;
}

.dish_inner .units-row {
    margin: 0;
}

/*res_box
--------------------------------------------------------- */
.res_box {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 0 0 3%;
    text-align: center;
}

.res_box h4 {
    margin: 0 0 -40px;
}

/*plan_list
--------------------------------------------------------- */
.plan_list {
    margin: 30px 0 0;
    padding: 5% 0;
    background: url(../images/common/back.png);
}

.plan_list h2 {
    margin: 0 0 38px;
}

.plan_list .box {
    max-width: 980px;
    margin: 0 auto;
    padding: 0 1%;
}

.plan_list .box01 {
    border-bottom: 5px solid #cee2a5;
    background: #fff;
}

.plan_list .box01 h3 {
    margin: 67px 0 10px;
}

.plan_list .box01 ul {
    padding: 0 6% 0 0;
}

.plan_list .box01 li {
    width: 100%;
    padding: 20px 0;
    display: table;
}

.plan_list .box01 li:first-child {
    border-bottom: 1px solid #262626;
}

.plan_list .box01 li span {
    width: 50%;
    display: table-cell;
    vertical-align: middle;
}

.plan_list .box01 li a {
    width: 36%;
    display: table-cell;
    text-align: right;
    vertical-align: middle;
}

.plan_list .box02 {
    padding: 0 0 20px;
    border-bottom: 5px solid #cee2a5;
    background: #fff;
}

.plan_list .box02 img {
    margin: 0 0 1em;
}

.plan_list .box02 .js-matchHeight {
    padding: 0 8%;
    text-align: left;
}

.plan_list .box02 .btn01 {
    margin: 40px 0 0;
}

/* =======================================
	facilities
========================================== */
/*esthetic
--------------------------------------------------------- */
.esthetic {
    padding: 4% 0 0;
    background: url(../images/facilities/bg.png);
    background-size: contain;
}

.esthetic h2 {
    margin: 0 0 59px;
    padding: 0 10px;
    text-align: center;
}

.esthetic p {
    margin: 0;
    text-align: center;
}

/*facilitie
--------------------------------------------------------- */
.facilitie {
    padding: 3% 0;
    background: url(../images/common/back.png);
}

.facilitie_inner {
    max-width: 980px;
    margin: 0 auto;
    padding: 0 1%;
    text-align: center;
}

.facilitie .units-row {
    margin: 0 0 3%;
}

.facilitie_box {
    width: 100%;
    padding: 0 0 7px;
    border-bottom: 5px solid #cee2a5;
    background: #fff;
}

.facilitie_box p {
    margin: 20px 0;
}

/* =======================================
	sightseeing
========================================== */
.sightseeing {
    padding: 3% 0 4%;
}

.sightseeing h2 {
    padding: 0 10px;
    text-align: center;
}

.sightseeing p {
    padding: 0 10px;
    font-size: 2rem;
    color: #999;
    text-align: center;
}

/*access
--------------------------------------------------------- */
.sightseeing .access {
    max-width: 980px;
    margin: -1% auto 0;
    padding: 1.5% 1.5% 0.5%;
    border: 1px solid #3b170a;
    background: #fff;
}

.sightseeing .units-row {
    margin: 0;
}

.sightseeing .unit-40 {
    text-align: right;
}

.access_box {
    margin: 0 0 3%;
    padding: 2%;
    border-radius: 5px;
    background: #ede8e6;
    text-align: center;
}

.access_box h3 {
    margin: 0 0 5%;
    font-size: 1.6rem;
    color: #3b170a;
}

.access_box p {
    margin: 0;
    font-size: 1.3rem;
    color: #3b170a;
    text-align: left;
}

.access_box img {
    margin: 0 0 5%;
}

.ac_inner {
    width: 100%;
    margin: 0 0 3%;
    padding: 2%;
    background: #e0ecc6;
}

.ac_inner h3 {
    margin: 0 0 5%;
    padding: 2.5% 0 2%;
    border-radius: 5px;
    background: #8fc31f;
    font-size: 1.8rem;
    color: #fff;
    text-align: center;
}

/*area
--------------------------------------------------------- */
.sightseeing .sightseeing_box {
    padding: 3.5% 0 2%;
}

.sightseeing_box h2 {
    margin: 0 0 3%;
    padding: 0 0 45px;
    background: url(../images/sightseeing/bg02.png) no-repeat center bottom;
    font-size: 1.8rem;
    color: #3b170a;
}

.area_box {
    max-width: 980px;
    margin: 0 auto;
    background: url(../images/sightseeing/bg03.png) no-repeat center top;
}

.area_box h4 {
    font-size: 1.8rem;
    color: #d1a706;
}

.area_box p {
    padding: 0;
    font-size: 1.3rem;
    color: #3b170a;
    text-align: left;
}

.osaka_box h3 {
    padding: 0 0 0 13%;
}

.kobe_box {
    margin: 40% 0 0;
}

.kyoto_box p {
    padding: 0 0 0 30%;
}

.kyoto_box h3 {
    padding: 0 0 0 13%;
}

.nara_box h3 {
    padding: 0 0 0 15%;
}

.nara_box p {
    padding: 0 0 0 5%;
}

/*recommend
--------------------------------------------------------- */
.recommend {
    max-width: 900px;
    margin: 0 auto;
    padding: 2% 2% 0;
    border: 1px solid #356801;
    border-radius: 5px;
}

.recommend h3 {
    border-bottom: 1px solid #3b170a;
}

.recommend p {
    padding: 0;
    font-size: 1.3rem;
    color: #3b170a;
    text-align: left;
}

/* =======================================
	Responsible
========================================== */
/* -------------------------------------
980px
------------------------------------- */
@media screen and (max-width: 980px) {
    .hd_left {
        width: 100%;
        float: none;
    }

    .hd_left h1 {
        margin: 0 0 0 0;
        padding: 0 37px 0 0;
        float: left;
    }

    .hd_left p {
        margin: 0 0 0 0;
        padding: 29px 0 0 0;
        float: none;
    }

    .hd_box02 nav ul {
        margin: 24px 0 0 -16px;
        justify-content: center;
    }

    .hd_box02 nav ul li {
        margin: 0 0 0 16px;
    }

    .hd_box02 nav ul a {
        padding: 8px 4px;
        display: block;
    }

    .hd_inner {
        padding: 0 10px;
    }

    .hd_inner02 {
        padding: 0 10px;
    }

    .foot_box {
        padding: 21px 10px;
        flex-direction: column;
    }

    .foot_box ul {
        margin: 24px 0 0 -24px;
        justify-content: center;
    }

    .foot_box ul li {
        margin: 0 0 0 24px;
    }

    .foot_box ul li a {
        padding: 8px;
        display: block;
    }
}

/* -------------------------------------
767px
------------------------------------- */
@media screen and (max-width: 767px) {
    .mov_box .box {
        width: 98%;
        margin: 0 auto;
        float: none;
    }

    .mov_box .txt_box {
        width: 98%;
        margin: 0 auto;
    }

    .intro_inner {
        width: 98%;
    }

    .intro h3 {
        text-align: center;
    }

    .intro .units-row p {
        width: 100%;
    }

    .intro .units-row .unit-50 {
        padding: 0 1%;
        text-align: center;
    }

    .intro .units-row .unit-50:first-child {
        text-align: center;
    }

    .intro .unit-50r {
        width: 100%;
        margin-right: 0;
        padding: 0 1%;
        float: none;
        text-align: center;
    }

    .intro .unit-50r:first-child {
        padding: 0 0 3%;
    }

    .intro .unit-50r h3 {
        margin-left: 0;
    }

    .intro .unit-50r h4 {
        margin-left: 0;
    }

    .intro .unit-50r p {
        margin-left: 0;
    }

    .hos02 h3 {
        margin-left: 0;
    }

    .hos02 h4 {
        margin-left: 0;
    }

    .hos02 p {
        margin-left: 0;
    }

    .hos02 .btn01 {
        margin: 0 0 10px;
    }

    .intro .unit-55 {
        width: 100%;
        padding: 0 1%;
        float: none;
        text-align: center;
    }

    .intro .unit-45 {
        width: 100%;
        margin-left: 0;
        padding: 0 1%;
        float: none;
        text-align: center;
    }

    .intro .unit-45 h2 {
        text-align: center;
    }

    .tourist .sightseeing_box {
        padding: 0 1% 2%;
    }

    .gallery_box ul {
        width: 98%;
    }

    .s_box01 {
        padding: 1%;
        display: block;
        text-align: center;
    }

    .s_box02 {
        width: 235px;
        margin: 0 auto;
        padding: inherit;
        display: block;
    }

    .s_box03 {
        width: 95%;
        margin: 0 auto;
        padding: 2% 0 0 0;
        display: block;
    }

    .stay_inner {
        background: none;
    }

    .stay_inner .lbox {
        width: 100%;
        padding: 0 10px;
        text-align: center;
    }

    .stay_inner .rbox {
        width: 100%;
        padding: 0 10px;
        text-align: center;
    }

    .stay_inner .box01 .lbox {
        width: 100%;
        text-align: center;
    }

    .stay_inner .box01 .rbox p {
        padding: 0;
    }

    .stay_inner .box02 .lbox {
        width: 100%;
        text-align: center;
    }

    .stay_inner .box02 .rbox p {
        padding: 0;
    }

    .stay_inner .box03 .lbox {
        width: 100%;
        text-align: center;
    }

    .stay_inner .box03 .rbox p {
        padding: 0;
    }

    .stay_inner .access {
        width: 98%;
    }

    .stay_inner .access .unit-50 {
        width: 100%;
        margin: 0;
    }

    .stay_inner .access .unit-50:first-child {
        margin: 0 0 2%;
    }

    .stay_inner .access .unit-60 {
        width: 100%;
        margin: 0 0 2%;
    }

    .stay_inner .access .unit-40 {
        width: 100%;
        margin: 0;
    }

    .coupon {
        margin: 0;
    }

    .tit_box {
        background: none;
    }

    .tit_box p {
        padding: 0 10px;
    }

    .hospitality {
        text-align: center;
    }

    .hospitality p {
        text-align: center;
    }

    .hospitality .btn01 {
        margin: 0;
    }

    .hospitality .box01 .lbox {
        width: 100%;
        float: none;
    }

    .hospitality .box01 .rbox {
        width: 100%;
        padding: 0;
        float: none;
    }

    .hospitality .box02 .lbox {
        width: 100%;
        padding: 0;
        float: none;
    }

    .hospitality .box02 .rbox {
        width: 100%;
        margin: 0;
        float: none;
    }

    .hospitality .box03 .lbox {
        width: 100%;
        margin: 0;
        float: none;
    }

    .hospitality .box03 .rbox {
        width: 100%;
        float: none;
    }

    .dish_inner .unit-50 h3 {
        text-align: center;
    }

    .dish_inner .unit-50 h4 {
        text-align: center;
    }

    .dish_inner p {
        text-align: center;
    }

    .res_box {
        padding: 0;
    }

    .access {
        width: 98%;
    }

    .plan_list .box01 {
        padding: 0 10px;
        text-align: center;
    }

    .plan_list .box01 ul {
        padding: 0 6%;
    }

    .plan_list .box02 .js-matchHeight {
        text-align: center;
    }

    .sightseeing .sightseeing_box {
        padding: 3.5% 1% 2%;
    }

    .area_box h3 {
        text-align: center;
    }

    .osaka_box {
        padding: 43% 5% 0;
    }

    .osaka_box h3 {
        padding: 0;
    }

    .kobe_box {
        margin: 5% 0 0;
        padding: 0 5%;
    }

    .kyoto_box {
        padding: 0 5%;
    }

    .kyoto_box h3 {
        padding: 0;
    }

    .kyoto_box p {
        padding: 0;
    }

    .nara_box {
        padding: 0 5%;
    }

    .nara_box h3 {
        padding: 0;
    }

    .nara_box p {
        padding: 0;
    }

    .recommend {
        width: 98%;
    }

    .recommend h3 {
        text-align: left;
    }
}

/* -------------------------------------
700px
------------------------------------- */
@media screen and (max-width: 700px) {
    .hd_inner .contact {
        width: 100%;
        margin: 0 0 10px;
        float: none;
        text-align: center;
    }

    .search_box {
        width: 100%;
        float: none;
    }

    .search_box table {
        margin: 0 auto;
        float: none;
    }

    .lang {
        margin: 0 0 10px;
        float: none;
        text-align: center;
    }

    .reservation {
        margin: 10px auto 5px;
        float: none;
    }

    .cancell {
        margin: 0 0 10px;
        float: none;
        text-align: center;
    }
}

/* -------------------------------------
600px
------------------------------------- */
@media screen and (max-width: 600px) {
    .stay_inner .box01 {
        padding: 25px 0 20px;
    }

    .dish h2 {
        margin: 0 0 30px;
    }

    .res_box h4 {
        margin: 0 0 -20px;
    }

    .plan_list {
        margin: 15px 0 0;
        padding: 39px 0 35px;
    }

    .esthetic h2 {
        margin: 0 0 30px;
    }
}

/* -------------------------------------
480px
------------------------------------- */
@media screen and (max-width: 480px) {
    .search_box th {
        width: 100%;
        display: block;
    }

    .search_box td {
        width: 100%;
        padding: 10px 0 0;
        display: block;
        text-align: center;
    }

    .search_box select.year_month_489ban {
        margin: 0;
    }

    #search_button_489ban {
        margin: 10px auto 0;
        display: block;
    }

    .dish_inner p span {
        margin: -25px 0 0;
    }
}

/* -------------------------------------
320px
------------------------------------- */
@media screen and (max-width: 320px) {
    .hd_inner {
        padding: 0 10px;
    }

    .hd_inner02 {
        padding: 0;
    }
}

iframe {
    width: 100%;
}