@charset "UTF-8";

html {
    font-size: 62.5%;
}

body {
    font-size: 1.0rem;
    font-family: "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
    background: #e1e1e1;
}

header {
    display: none;
}

.spnav {
    display: none;
}

.spbr {
    display: none;
}

.pagetop {
    position: fixed;
    right: 20px;
    bottom: -100px;
}

.pagetop img {
    width: 50px;
    height: 50px;
}

.wrap {
    display: -webkit-flex;
    display: flex;
    max-width: 1400px;
    margin: 0 auto;
}

.side {
    width: 210px;
    min-width: 210px;
    text-align: left;
    background: #fff;
}

.side .fix {
    width: 210px;
    position: fixed;
    top: 0;
    left: 50%;
    margin-left: -700px;
    z-index: 1000;
}

@media screen and (max-width: 1400px) {
    .side .fix {
        left: 0;
        margin-left: 0;
    }
}

.side h1 {
    line-height: 0;
    padding: 20px 18px 18px 18px;
    text-align: center;
}

.side h1 img {
    width: 95%;
    height: auto;
}

.side .menu li {
    font-family: 'Open Sans', sans-serif;
    font-size: 1.7rem;
    line-height: 1.4rem;
}

.side .menu li span {
    font-size: 1.0rem;
    font-family: "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
}

.side .menu li a {
    display: block;
    color: #222;
    text-decoration: none;
    padding: 6px 18px;
}

.side .menu li a:hover,
.side .menu li a:active {
    color: #2283d8;
}

.side .menu li.hotels {
    border-top: 1px dotted #cbcbcb;
    border-bottom: 1px dotted #cbcbcb;
    margin-top: 5px;
}

.side .menu li.hotels .fa-circle-o:before {
    color: #ac99cc;
}

.side .menu li.wedding {
    border-bottom: 1px dotted #cbcbcb;
}

.side .menu li.wedding .fa-circle-o:before {
    color: #f0a0c6;
}

.side .menu li.diving {
    border-bottom: 1px dotted #cbcbcb;
}

.side .menu li.diving .fa-circle-o:before {
    color: #a8ded4;
}

.side .menu li.contacts .fa-circle-o:before {
    color: red;
}

.side .menu li.hotels span,
.side .menu li.wedding span,
.side .menu li.diving span {
    margin-left: 10px;
}

.side .menu li .inmenu {
    position: absolute;
    top: 0;
    left: 210px;
    width: auto;
    height: auto;
    min-height: 100vh;
    background: #eeeeee;
    font-size: 1.2rem;
    z-index: 1000;
}

.side .menu li .inmenu {
    display: none;
    width: 650px;
}

.side .menu li:hover > .inmenu {
    display: block;
}

.side .menu li .inmenu .inhead {
    background: #e2e2e2;
    display: -webkit-flex;
    display: flex;
    flex-direction: row-reverse;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
    -webkit-align-items: center;
    align-items: center;
    padding: 15px 23px;
}

.side .menu li .inmenu .inhead .info h2 {
    font-family: 'Open Sans';
    font-size: 3.0rem;
    margin-bottom: 25px;
}

.side .menu li .inmenu .inhead .info p {
    font-family: 'Open Sans';
    font-size: 1.6rem;
    white-space: nowrap;
}

.side .menu li .inmenu .inhead .pic {
    margin-right: 20px;
}

.side .menu li .inmenu .inbody {
    padding: 10px 15px;
}

.side .menu li .inmenu .time {
    font-weight: bold;
    font-size: 2.4rem;
    vertical-align: text-bottom;
    margin-bottom: 15px;
    min-height: 25px;
    text-align: right;
    font-family: "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
}

.side .menu li .inmenu .time span {
    font-size: 1.4rem;
    font-weight: normal;
    vertical-align: text-bottom;
    background: url(../../images/icon-clock.png) left center no-repeat;
    display: inline-block;
    min-height: 20px;
    padding-top: 6px;
    background-size: 20px 20px;
    padding-left: 25px;
}

.side .menu li .inmenu .inbody a:hover {
    color: #555;
}

.side .menu li .inmenu .inbody h3 {
    height: 18px;
    line-height: 18px;
    margin: 0 0 15px 10px;
}

.side .menu li .inmenu .inbody h3 a {
    padding: 0;
}

.side .menu li .inmenu .inbody h3 span {
    font-family: "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
    font-weight: bold;
    font-size: 1.8rem;
    background: url(../../images/icon-arrblack.png) right center no-repeat;
    background-size: 18px 18px;
    padding-right: 25px;
}

.side .menu li .inmenu .inbody .links {
    display: -webkit-flex;
    display: flex;
    margin-bottom: 60px;
    margin-left: 10px;
}

.side .menu li .inmenu .inbody .links p {
    margin-right: 20px;
    height: 14px;
    line-height: 14px;
    white-space: nowrap;
}

.side .menu li .inmenu .inbody .links p span {
    font-family: "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
    font-weight: bold;
    font-size: 1.4rem;
    background: url(../../images/icon-arrblack.png) right center no-repeat;
    background-size: 14px 14px;
    padding-right: 18px;
}

.side .menu li .inmenu .inbody .links a {
    padding: 0;
}

.side .menu li .inmenu .inbody ul {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    flex-direction: row;
    padding: 0 !important;
}

.side .menu li .inmenu .inbody ul > li {
    width: 33.3333333%;
}

.side .menu li .inmenu .inbody ul > li > div {
    padding: 0 10px;
}

.side .menu li .inmenu .inbody ul li h4 {
    font-weight: bold;
    font-size: 1.4rem;
    padding: 0 0 8px 0;
    border-bottom: 1px solid #333;
    margin-bottom: 10px;
}

.side .menu li .inmenu .inbody ul li ul {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    padding: 0;
    margin: 0;
}

.side .menu li .inmenu .inbody ul li ul li {
    font-size: 1.4rem;
    white-space: nowrap;
    padding: 0;
    margin: 0 0 10px 0 !important;
}

.side .menu li .inmenu .inbody ul li ul li a {
    padding: 0;
    margin: 0;
    font-size: 1.4rem;
}

.side .menu li .inmenu .inbody ul li i {
    color: #b5b5b5;
}

.side .sidefoot {
    width: 210px;
}

.side .sidefoot ul {
    border-top: 1px solid #cbcbcb;
    padding: 5px 0 14px 0;
}

.side .sidefoot li {
    font-size: 1.3rem;
    padding: 1px 10px;
}

.side .sidefoot li.ctc {
    padding-left: 18px;
}

.side .sidefoot li.ctc a {
    background: url(/images/icon-arrctc.png) left center no-repeat;
    background-size: 13px 13px;
    padding-left: 16px;
}

.side .sidefoot li a {
    color: #222;
}

.side .sidefoot li i {
    margin-right: 4px;
}

.main {
    text-align: left;
    flex: 1;
    background: #efefef;
}

.head {
    background: #d6d6d6;
    display: -webkit-flex;
    display: flex;
    height: 41px;
    font-family: "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif !important;
}

.head .srch {
    padding-left: 45px;
    background: url(../../images/icon-search.png) 11px 9px no-repeat #0b599d;
    background-size: 24px 24px;
    cursor: pointer;
    margin-right: auto;
}

.head .srch a {
    display: block;
    height: 41px;
    line-height: 41px;
    background: #5da0d8;
    font-size: 1.6rem;
    color: #fff;
    padding: 0 15px;
    text-decoration: none !important;
}

.head .rsrv {
    height: 41px;
}

.head .rsrv dl {
    display: -webkit-flex;
    display: flex;
    height: 41px;
}

.head .rsrv dt {
    position: relative;
    background: #5da0d8;
    color: #fff;
    font-size: 1.2rem;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    padding: 0 9px;
}

.head .rsrv dt:after {
    left: 100%;
    top: 50%;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
    border-color: rgba(93, 160, 216, 0);
    border-left-color: #5da0d8;
    border-width: 8px;
    margin-top: -8px;
}

.head .rsrv dd {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    font-size: 2.0rem;
    font-weight: bold;
    padding: 0 15px 0 20px;
}

.head .rsrv dd a {
    color: #111;
}

.head .times {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    font-size: 1.3rem;
    line-height: 1.4em;
    border-left: 1px solid #afafaf;
    margin: 4px 0;
    padding: 0 8px;
}

.head .web {
    height: 41px;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    font-size: 1.5rem;
    padding-right: 10px;
}

.head .web i {
    font-size: 2.0rem;
}

.head .web a {
    color: #000;
    text-decoration: none;
}

.head .web a:hover {
    color: #555;
}

.sns {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}

.sns ul {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
    -webkit-align-items: center;
    align-items: center;
    height: 50px;
    font-size: 1.2rem;
    margin-left: auto;
}

.sns ul.crumbs {
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    padding-left: 15px;
    margin-left: 0;
    overflow: hidden;
}

.sns ul.crumbs li {
    padding: 0;
    white-space: nowrap;
}

.sns ul.crumbs li:last-child {
    white-space: normal;
}

.sns ul.crumbs li:after {
    content: "＞";
    padding-left: 5px;
    margin-right: 5px;
}

.sns ul.crumbs li:last-child:after {
    content: "";
    padding-left: 0;
    margin-right: 0;
}

.sns ul.crumbs li a {
    color: #333;
}

.sns li {
    padding: 0 7px;
}

.sns li:last-child {
    padding-left: 15px;
}

.sns li dl {
    display: -webkit-flex;
    display: flex;
}

.sns li dt button {
    border: none;
    background: none;
    cursor: pointer;
}

.sns li dd input {
    border-radius: 26px;
    border: 1px solid #333;
    height: 26px;
    font-size: 1.4rem;
    padding: 0 15px;
}

#home .contents {
    padding: 0 5px 10px 5px;
}

.contents {
    padding: 0 0 0px 0;
}

.bx-wrapper .bx-viewport {
    background: none;
    border: none;
    box-shadow: none;
    left: 0;
}

.contents .topvisual {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    margin: 0 5px;
    max-width: 1180px;
}

.contents .topvisual .picwrap {
    width: 66.4%;
    flex: 1;
    background-position: center bottom;
    background-repeat: none;
    background-size: cover;
    z-index: 100;
}

.contents .topvisual .infowrap {
    width: 34.33333%;
    min-width: 230px;
    display: -webkit-flex;
    display: flex;
    display: -ms-flex;
}

.contents .topvisual .bxinfo li .info {
    width: 100%;
    background: #fff;
}

.contents .topvisual .bxinfo li .info h2 {
    margin-bottom: 15px;
    border-left: 5px solid #2283d8;
    padding-left: 10px;
    font-weight: bold;
}

.contents .topvisual .bxinfo li .info h3 {
    font-size: 1.5rem;
    font-weight: bold;
    text-align: center;
    padding-bottom: 5px;
    margin-top: 15px;
    margin-bottom: 15px;
}

.contents .topvisual .bxinfo li .info h3 span {
    border-bottom: 1px solid #000;
    padding-bottom: 5px;
}

.contents .topvisual .bxinfo li .info > div {
    padding: 15px 20px 0px 20px;
}

.contents .topvisual .bxinfo li .info p {
    margin: 0 0px 5px 0px;
    font-size: 1.3rem;
    line-height: 1.5em;
}

.contents .topvisual .bxinfo li .info p.points {
    margin-bottom: 15px;
}

.contents .topvisual .bxinfo li .info p.points img {
    width: 100%;
    height: auto;
}

.contents .topvisual .bxinfo li .info .btns {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    padding-top: 10px;
}

.contents .topvisual .bxinfo li .info .btns p {
    font-size: 1.4rem;
    width: 48%;
    margin: 0px auto 0 auto;
    height: 32px;
    line-height: 32px;
    border: 1px solid #2283d8;
    border-radius: 32px;
    text-align: center;
    font-weight: bold;
}

@media screen and (max-width: 1050px) {
    .contents .topvisual .bxinfo li .info .btns p {
        font-size: 1.3rem;
    }
}

.contents .topvisual .bxinfo li .info .btns p a {
    display: block;
    text-decoration: none;
    color: #2283d8;
    background-size: 12px 12px;
}

.contents .topvisual .bxinfo li .info .btns p a:hover {
    color: #fff;
    background: #2283d8;
    background-size: 12px 12px;
    border-radius: 32px;
}

.contents .topvisual .bx-wrapper {
    margin-bottom: 40px;
}

.contents .topvisual .bx-wrapper .bx-controls-direction a {
    margin-top: -10px;
    width: 20px;
    height: 20px;
}

.contents .topvisual .bx-wrapper .bx-prev {
    background: url(../../images/icon-sliderprev.png) 0 0 no-repeat;
    background-size: 20px 20px;
    left: -40px;
}

.contents .topvisual .bx-wrapper .bx-next {
    background: url(../../images/icon-slidernext.png) 0 0 no-repeat;
    background-size: 20px 20px;
    right: -40px;
}

.contents .topvisual .bx-wrapper .bx-pager.bx-default-pager a {
    background: #cbcbcb;
}

.contents .topvisual .bx-wrapper .bx-pager.bx-default-pager a:hover, .contents .topvisual .bx-wrapper .bx-pager.bx-default-pager a.active {
    background: #2283d8;
}

.contents .topvisual .infowrap .spinfo {
    display: none;
}

.contents .visual .bx-wrapper {
    margin-bottom: 40px;
}

.contents .visual .bx-wrapper .bx-controls-direction a {
    margin-top: -10px;
    width: 20px;
    height: 20px;
}

.contents .visual .bx-wrapper .bx-prev {
    background: url(../../images/icon-sliderprev.png) 0 0 no-repeat;
    background-size: 20px 20px;
    left: -40px;
}

.contents .visual .bx-wrapper .bx-next {
    background: url(../../images/icon-slidernext.png) 0 0 no-repeat;
    background-size: 20px 20px;
    right: -40px;
}

.contents .visual .bx-wrapper .bx-pager.bx-default-pager a {
    background: #cbcbcb;
}

.contents .visual .bx-wrapper .bx-pager.bx-default-pager a:hover, .contents .visual .bx-wrapper .bx-pager.bx-default-pager a.active {
    background: #2283d8;
}

.contents .visual li > img {
    width: 100%;
    height: auto;
}

.contents .visual li {
    display: -webkit-flex;
    display: flex;
}

.contents .visual li .pic {
    width: 67%;
    flex: 1;
    background-position: left bottom !important;
}

.contents .visual li .info {
    width: 33%;
    background: #fff;
}

.contents .visual li .info h2 {
    margin-bottom: 15px;
}

.contents .visual li .info h3 {
    font-size: 1.5rem;
    font-weight: bold;
    text-align: center;
    padding-bottom: 5px;
    margin-top: 15px;
    margin-bottom: 15px;
}

.contents .visual li .info h3 span {
    border-bottom: 1px solid #000;
    padding-bottom: 5px;
}

.contents .visual li .info > div {
    padding: 15px;
}

.contents .visual li .info p {
    margin: 0 15px 5px 15px;
    font-size: 1.2rem;
    line-height: 1.5em;
}

.contents .visual li .info p.points {
    margin-bottom: 10px;
}

.contents .visual li .info .btns {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    padding-top: 10px;
    padding-bottom: 10px;
}

.contents .visual li .info .btns p {
    font-size: 1.4rem;
    width: 48%;
    margin: 0px auto 0 auto;
    height: 32px;
    line-height: 32px;
    border: 1px solid #2283d8;
    border-radius: 32px;
    text-align: center;
    font-weight: bold;
}

.contents .visual li .info .btns p a {
    display: block;
    text-decoration: none;
    color: #2283d8;
    background: url(../../images/icon-arrblue.png) right 10px center no-repeat;
    background-size: 12px 12px;
}

.contents .visual li .info .btns p a:hover {
    color: #fff;
    background: url(../../images/icon-arrlwhite.png) right 10px center no-repeat #2283d8;
    background-size: 12px 12px;
    border-radius: 32px;
}

.contents .blocks {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    margin-top: 10px;
    font-size: 1.6rem;
}

.contents .blocks > div {
    background: #fff;
    text-align: center;
    padding-bottom: 25px;
    width: 33.33333%;
    margin: 0 5px;
}

.contents .blocks p img {
    width: 100%;
    height: auto;
}

.contents .blocks h2 {
    font-size: 2.0rem;
    width: 120px;
    margin: 15px auto 10px auto;
    padding-bottom: 10px;
    border-bottom: 1px solid #333;
    line-height: 1em;
    font-family: "Open Sans", "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif !important;
}

.contents .blocks .hotels h2 {
    color: #563e8a;
    border-color: #563e8a;
}

.contents .blocks .wedding h2 {
    color: #e577ab;
    border-color: #e577ab;
}

.contents .blocks .diving h2 {
    color: #17ad93;
    border-color: #17ad93;
}

.contents .blocks .btn {
    font-size: 1.5rem;
    width: 50%;
    margin: 15px auto 0 auto;
    height: 36px;
    line-height: 36px;
    border: 1px solid #333;
    border-radius: 36px;
}

.contents .blocks .btn a {
    display: block;
    text-decoration: none;
}

.contents .blocks .hotels .btn {
    border-color: #8c74b4;
}

.contents .blocks .hotels .btn a {
    color: #8c74b4;
    background: url(../../images/icon-arrpurple.png) right 10px center no-repeat;
    background-size: 14px 14px;
}

.contents .blocks .hotels .btn a:hover {
    color: #fff;
    background: url(../../images/icon-arrlwhite.png) right 10px center no-repeat #8c74b4;
    background-size: 14px 14px;
    border-radius: 36px;
}

.contents .blocks .wedding .btn {
    border-color: #e577ab;
}

.contents .blocks .wedding .btn a {
    color: #e577ab;
    background: url(../../images/icon-arrpink.png) right 10px center no-repeat;
    background-size: 14px 14px;
}

.contents .blocks .wedding .btn a:hover {
    color: #fff;
    background: url(../../images/icon-arrlwhite.png) right 10px center no-repeat #e577ab;
    background-size: 14px 14px;
    border-radius: 36px;
}

.contents .blocks .diving .btn {
    border-color: #17ad93;
}

.contents .blocks .diving .btn a {
    color: #17ad93;
    background: url(../../images/icon-arrgreen.png) right 10px center no-repeat;
    background-size: 14px 14px;
}

.contents .blocks .diving .btn a:hover {
    color: #fff;
    background: url(../../images/icon-arrlwhite.png) right 10px center no-repeat #17ad93;
    background-size: 14px 14px;
    border-radius: 36px;
}

.block {
    padding-top: 0px;
}

.block.white {
    background: #fff;
}

.block h2 {
    font-size: 2.2rem !important;
    letter-spacing: 0.2em !important;
    text-align: center;
    overflow: hidden;
    font-family: 'Open Sans';
}

.block h2 span {
    display: inline-block;
    position: relative;
}

.block h2 span:before,
.block h2 span:after {
    content: "";
    border-bottom: 1px solid #333;
    width: 30px;
    margin: 0 10px;
    position: absolute;
    bottom: 18px;
}

.block h2 span:before {
    right: 100%;
}

.block h2 span:after {
    left: 100%;
}

.block h3 {
    margin: 8px 0 25px 0;
    text-align: center;
    font-size: 1.5rem;
}

#home .block.campaign {
    margin: 10px 5px 0 5px;
}

.block.campaign {
    margin-top: 10px;
}

.campaign > div {
    width: 90%;
    margin: 0 auto 40px auto;
}

.campaign li {
    background: #fff;
    font-size: 1.3rem;
    padding-bottom: 10px;
}

.campaign li p {
    padding: 0 5px;
    margin-bottom: 10px;
    line-height: 1.5em;
}

.campaign li p.tag {
    font-size: 1.2rem;
    color: #fff;
    background: #69aae4;
    height: 20px;
    border-radius: 20px;
    display: inline;
    margin-left: 5px;
    padding: 3px 10px;
}

.campaign li p.tag a {
    color: #fff;
    text-decoration: none;
}

.campaign li p:first-child {
    padding: 0;
    margin-bottom: 5px;
}

.campaign li p:last-child a {
    color: #333;
}

.campaign .bx-wrapper {
    margin-bottom: 0;
}

.campaign .bx-wrapper .bx-controls-direction a {
    margin-top: -30px;
    width: 20px;
    height: 20px;
}

.campaign .bx-wrapper .bx-prev {
    background: url(../../images/icon-sliderprev.png) 0 0 no-repeat;
    background-size: 20px 20px;
    left: -4%;
}

.campaign .bx-wrapper .bx-next {
    background: url(../../images/icon-slidernext.png) 0 0 no-repeat;
    background-size: 20px 20px;
    right: -4%;
}

.campaign .bx-wrapper .bx-pager.bx-default-pager a {
    background: #cbcbcb;
}

.campaign .bx-wrapper .bx-pager.bx-default-pager a:hover, .campaign .bx-wrapper .bx-pager.bx-default-pager a.active {
    background: #2283d8;
}

.toursrch {
    background: #fff;
    padding: 10px;
    display: -webkit-flex;
    display: flex;
    margin-bottom: 10px;
}

.toursrch .ttl {
    background: #2283d8;
    padding: 30px;
    color: #fff;
    text-align: center;
}

.toursrch .ttl img {
    width: 45px;
    height: auto;
}

.toursrch .ttl h2 {
    font-size: 2.6rem;
    font-weight: normal;
    line-height: 0.8em;
    margin-top: 20px;
    font-family: 'Open Sans';
}

.toursrch .ttl span {
    font-size: 1.4rem;
}

.toursrch .srcharea {
    background: #e1f1ff;
    font-size: 1.4rem;
    padding: 15px 28px;
    -webkit-flex-grow: 3;
    flex-grow: 3;
}

.toursrch .srcharea table {
    width: 100%;
    margin-bottom: 20px;
}

.toursrch .srcharea th {
    font-weight: normal;
    vertical-align: middle;
    padding-right: 15px;
    padding-bottom: 20px;
}

.toursrch .srcharea td {
    vertical-align: middle;
    padding-bottom: 20px;
}

.toursrch .srcharea td input.short {
    border: 1px solid #ccc;
    width: 50px;
    padding: 5px;
}

.toursrch .srcharea td input.mid {
    border: 1px solid #ccc;
    width: 80px;
    padding: 5px;
}

.toursrch .srcharea td input.long {
    border: 1px solid #ccc;
    width: 180px;
    padding: 5px;
}

.toursrch .btn {
    padding-right: 150px;
}

.toursrch .btn a {
    display: block;
    background: url(../../images/icon-arrdown.png) right 40px center no-repeat #2283d8;
    background-size: 20px 20px;
    font-size: 1.6rem;
    font-weight: bold;
    color: #fff;
    text-align: center;
    text-decoration: none;
    margin: 0 auto;
    width: 200px;
    height: 40px;
    border-radius: 40px;
    line-height: 40px;
}

#home .block.recm {
    margin: 10px 5px;
}

#home .block.white {
    padding-top: 20px;
}

.tours {
    padding-bottom: 15px;
}

.tours ul.tags {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    margin-bottom: 25px;
}

.tours ul.tags li {
    margin-right: 5px;
}

.tours ul.tags li:last-child {
    margin-right: 0;
}

.tours ul.tags li a {
    background: #e3e3e3;
    font-size: 1.3rem;
    font-weight: bold;
    padding: 4px 15px;
    color: #555;
    text-decoration: none;
    display: block;
}

.tours ul.tags li a.is_active {
    background: #69aae4;
    color: #fff;
    overflow: hidden;
}

.tours .tabrel {
    position: relative;
    min-height: 257px;
    width: 95% !important;
}

#home .block.campaign h3,
#home .tours.recm h3 {
    margin-bottom: 21px;
}

.tours.recm .tab-content {
    display: block;
    visibility: hidden;
    position: absolute;
    top: 0;
    left: 0;
}

.tours.recm .tabrel .tab-content {
    left: 22px;
}

.tours.recm .tab-content.is_show {
    visibility: visible;
}

.tours.recm + .tours {
    padding-top: 40px;
}

.tours .tab-contentop {
    display: none;
}

.tours .tab-contentop.is_show {
    display: block;
}

.tours > div {
    width: 90%;
    margin: 0 auto;
}

.tours > div.opcont {
    width: 100%;
}

.tours .bxtour li {
    background: url(../../images/icon-trianglecorner.png) right bottom no-repeat #f1f8ff;
    background-size: 16px 16px;
    font-size: 1.4rem;
    font-weight: bold;
    padding-bottom: 25px;
}

.tours .bxtour li a {
    color: #333;
    font-weight: normal !important;
}

.tours .bxtour li p {
    padding: 0 10px;
}

.tours .bxtt li p.price {
    color: #f08629;
    font-size: 1.9rem;
    font-weight: bold;
}

.tours .bxtour li p:first-child {
    padding: 0 0 6px 0;
}

.tours .tab-content ul {
    display: -webkit-flex;
    display: flex;
}

.tours .tab-content li {
    background: url(../../images/icon-trianglecorner.png) right bottom no-repeat #f1f8ff;
    background-size: 16px 16px;
    font-size: 1.4rem;
    font-weight: bold;
    padding-bottom: 15px;
    float: none;
}

.tours .tab-content li a {
    color: #333;
    font-weight: bold;
}

.tours .tab-content li p {
    padding: 0 10px;
}

.tours .tab-content li p:first-child {
    padding: 0 0 6px 0;
}

.tours .content_wrap ul {

}

.tours .content_wrap li {
    background: url(../../images/icon-trianglecorner.png) right bottom no-repeat #f1f8ff;
    background-size: 16px 16px;
    font-size: 1.4rem;
    font-weight: bold;
    padding-bottom: 15px;
    float: none;
}

.tours .content_wrap li a {
    color: #333;
    font-weight: bold;
}

.tours .content_wrap li p {
    padding: 0 10px;
}

.tours .content_wrap li p:first-child {
    padding: 0 0 6px 0;
}

.tours .content_wrap .bx-wrapper {
    margin-bottom: 0;
}

.tours .bx-wrapper .bx-controls-direction a {
    margin-top: -10px;
    width: 20px;
    height: 20px;
}

.tours .bx-wrapper .bx-prev {
    background: url(../../images/icon-sliderprev.png) 0 0 no-repeat;
    background-size: 20px 20px;
    left: -4%;
}

.tours .tabrel .bx-wrapper .bx-prev {
    left: -4%;
}

.tours .bx-wrapper .bx-next {
    background: url(../../images/icon-slidernext.png) 0 0 no-repeat;
    background-size: 20px 20px;
    right: -4%;
}

.tours .tabrel .bx-wrapper .bx-next {
    right: -4%;
}

.tours .bx-wrapper .bx-pager.bx-default-pager a {
    background: #cbcbcb;
}

.tours .bx-wrapper .bx-pager.bx-default-pager a:hover, .tours .bx-wrapper .bx-pager.bx-default-pager a.active {
    background: #2283d8;
}

.tours .bx-wrapper .bx-pager, .tour .bx-wrapper .bx-controls-auto {
    bottom: -45px;
}

.tours .whitebg {
    background: #fff;
    width: auto;
    padding-top: 40px;
}

#home .tours .whitebg {
    margin: 0 5px;
    padding-top: 30px;
}

#home .tours .whitebg h3 {
    margin-bottom: 21px;
}

.tours .whitebg ul.tags {
    margin-bottom: 10px;
    padding-bottom: 13px;
}

.tours ul.optional {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    margin-bottom: 20px;
}

.tours ul.optional li {
    background: url(../../images/icon-trianglecorner.png) right bottom no-repeat #fff;
    background-size: 16px 16px;
    width: 33.33333%;
    margin: 0 5px;
}

.tours ul.optional li p:first-child img {
    width: 100%;
    height: auto;
}

.tours ul.optional li > div {
    padding: 20px;
}

.tours ul.optional li h4 {
    font-size: 1.5rem;
    font-weight: bold;
    margin-bottom: 5px;
}

.tours ul.optional li p {
    font-size: 1.3rem;
}

.tours ul.optional li .name {
    font-size: 1.4rem;
    margin-bottom: 5px;
}

.tours ul.optional li .price {
    font-size: 1.5rem;
    font-weight: bold;
    color: #f08629;
    margin-bottom: 10px;
}

.tours .btn {
    font-size: 1.5rem;
    font-weight: bold;
    width: 40%;
    margin: 20px auto 5px auto;
    height: 36px;
    line-height: 36px;
    border: 1px solid #333;
    border-radius: 36px;
    border-color: #2283d8;
    background: #fff;
    text-align: center;
}

.tours .btn a {
    display: block;
    text-decoration: none;
    color: #2283d8;
    background: url(../../images/icon-arrblue.png) right 10px center no-repeat;
    background-size: 14px 14px;
}

.tours .btn a:hover {
    color: #fff;
    background: url(../../images/icon-arrlwhite.png) right 10px center no-repeat #2283d8;
    background-size: 14px 14px;
    border-radius: 36px;
}

.original {
    margin-bottom: 10px;
}

#home .original {
    margin: 0 5px 10px 5px;
}

.original .lead {
    text-align: center;
    font-size: 1.5rem;
    margin-bottom: 30px;
}

.original .lead p:first-child {
    margin-bottom: 10px;
    padding-top: 8px;
}

.original .btns {
    width: 95%;
    margin: 0 auto 40px auto;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
}

.original .btns p {
    width: 50%;
    margin: 0 10px;
    font-size: 1.8rem;
    line-height: 1.7em;
    font-weight: bold;
    text-align: center;
    background: #fff;
    border: 1px solid #f08629;
    height: 80px;
    border-radius: 80px;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: center;
    justify-content: center;
}

.original .btns p:last-child {
    background: #145493;
    border: 1px solid #145493;
    color: #fff;
}

.original .btns p:last-child:hover {
    background: #145493;
}

.original .btns p span {
    font-size: 2.4rem;
}

.original .btns p span.num {
    font-size: 3.0rem;
}

.original .btns p a {
    display: block;
    color: #f08629;
    background: url(../../images/icon-arrctc.png) right 20px center no-repeat;
    background-size: 26px 26px;
    text-decoration: none;
}

.original .btns p span.num a {
    color: #fff;
    background: none;
}

.original .btns p:hover {
    background: #f08629;
}

.original .btns p a:hover {
    background: url(../../images/icon-arrlwhite.png) right 20px center no-repeat #f08629;
    background-size: 26px 26px;
    color: #fff;
    border-radius: 80px;
}

.original h3 {
    font-weight: bold;
    font-size: 1.8rem;
    margin-bottom: 15px;
}

.original h3 span {
    padding-bottom: 10px;
    border-bottom: 1px solid #333;
}

.original .oritxt {
    background: url(../../images/icon-downarr.png) center bottom no-repeat;
    background-size: 20px 13px;
    padding-bottom: 30px;
    text-align: center;
    font-size: 1.5rem;
    margin-bottom: 15px;
}

.original ul {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    padding: 10px;
}

.original ul li {
    background: url(../../images/icon-trianglecorner.png) right bottom no-repeat #f1f8ff;
    background-size: 16px 16px;
    max-width: 376px;
}

.original ul li > div {
    padding: 20px 15px;
}

.original ul li p {
    font-size: 1.4rem;
}

.original ul li p:first-child img {
    width: 100%;
    height: auto;
}

.original ul li:nth-child(2) {
    margin: 0 10px;
}

.original ul li p.name {
    font-size: 1.6rem;
    font-weight: bold;
    margin-bottom: 15px;
}

.original ul li p.name span {
    font-size: 1.4rem;
    font-weight: normal;
}

.original ul li p.name a {
    color: #111;
}

.cntct {
    padding-bottom: 30px;
    padding-top: 0;
    background: #fff;
    margin: 0 10px 10px 10px;
}

#home .cntct {
    margin: 0 5px;
}

.cntct .pic img {
    width: 100%;
    height: auto;
}

.cntct .lead {
    text-align: center;
    font-size: 1.6rem;
    padding: 30px 0 0 0;
    position: relative;
}

.cntct > div {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-around;
    justify-content: space-around;
    padding-top: 45px;
}

.cntct .tel {
    text-align: center;
}

.cntct .tel .ttl {
    font-size: 1.6rem;
    font-weight: bold;
    background: url(../../images/line-cntct.png) center bottom no-repeat;
    padding-bottom: 8px;
    margin-bottom: 8px;
}

.cntct .tel .num {
    font-size: 3.0rem;
    font-weight: bold;
    margin-bottom: 8px;
}

.cntct .tel .time {
    font-size: 1.4rem;
    line-height: 1.5em;
}

.cntct .btns p {
    font-size: 2.2rem;
    text-align: center;
    margin-bottom: 20px;
}

.cntct .btns p a {
    height: 60px;
    border-radius: 60px;
    line-height: 60px;
    display: block;
    color: #fff;
    font-weight: bold;
    text-decoration: none;
    padding: 0 80px;
}

.cntct .btns p.mail a {
    background: url(../../images/icon-arrctc.png) right 30px center no-repeat #fff;
    background-size: 26px 26px;
    border: 1px solid #f08629;
    color: #f08629;
}

.cntct .btns p.mail a:hover {
    background: url(../../images/icon-arrlwhite.png) right 30px center no-repeat #f08629;
    background-size: 26px 26px;
    color: #fff;
}

.cntct .btns p.form a {
    background: url(../../images/icon-search.png) right 30px center no-repeat #145493;
    background-size: 24px 24px;
    border: 1px solid #145493;
}

.cntct .btns p.form a:hover {
    background: url(../../images/icon-search.png) right 30px center no-repeat #2b6bab;
    background-size: 24px 24px;
}

footer {
    padding: 0 5px;
}

footer .social {
    display: -webkit-flex;
    display: flex;
    margin-bottom: 60px;
}

footer .social > div {
    width: 33.3333%;
    -webkit-flex-grow: 1;
    flex-grow: 1;
    display: -webkit-flex;
    display: flex;
}

footer .social > div > div {
    padding: 20px 20px;
    margin: 0 5px;
    background: #fff;
    -webkit-flex: 1;
    flex: 1;
}

footer .social h3 {
    font-family: 'Open Sans';
    font-size: 2.2rem;
    margin-bottom: 20px;
}

footer .social h3 a {
    color: #333;
    display: block;
    background: url(../../images/icon-arrblack.png) right center no-repeat;
    background-size: 20px 20px;
    text-decoration: none;
}

footer .social h3 i {
    margin-right: 15px;
}

footer .social .footnews ul {
    height: 350px;
    overflow: auto;
}

footer .social .footnews li {
    font-size: 1.3rem;
    margin-bottom: 15px;
    overflow: hidden;
}

footer .social .footnews li a {
    text-decoration: none;
    color: #333;
    overflow: hidden;
}

footer .social .footnews li a:hover {
    text-decoration: underline;
}

footer .social .footnews li p.pic {
    width: 65px;
    margin-right: 15px;
    float: left;
}

footer .social .footnews li p.txt {
    word-break: break-word;
}

footer .social .footnews li a > div {
    overflow: hidden;
}

footer .social .footnews li div {
    overflow: hidden;
}

footer .social .footnews li p img {
    width: 65px;
    height: auto;
}

footer .social .footnews li .date {
    background: url(../../images/line-footnews.png) left bottom no-repeat;
    padding-bottom: 3px;
    margin-bottom: 5px;
}

footer .social .inst img {
    width: 100%;
    height: auto;
}

footer .social .blogs {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
}

footer .social > div.blogs > div {
    background: url(/images/blogpic.jpg) center bottom no-repeat #fff;
    background-size: contain;
}

footer .social .blogs h3 {
    margin-bottom: 12px;
}

@media screen and (max-width: 1190px) {
    footer .social .blogs h3 {
        line-height: 1.1em;
        margin-bottom: 2px;
    }
}

footer .social .blogs h3 span {
    font-size: 1.2rem;
}

footer .social .blogs h3 span a {
    display: inline-block;
    background: none;
    margin-left: 15px;
}

footer .social .blogs h3 span i {
    margin-right: 2px;
}

footer .social .blogs .pic {
    margin-top: auto;
}

footer .social .blogs .pic img {
    width: 100%;
    height: auto;
}

footer .social .blogs ul {
}

footer .social .blogs li {
    font-size: 1.2rem;
    padding-left: 5%;
    margin-bottom: 10px;
}

footer .social .blogs li i {
    margin-right: 10px;
}

footer .social .blogs li a {
    color: #333;
    font-size: 1.5rem;
}

footer .links {
    margin: 0 5px 50px 5px;
}

footer .links > div {
    background: #fff;
    padding: 10px;
}

footer .links .link ul {
    background: rgb(208, 235, 255);
    padding: 20px;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;

}

footer .links .link li {
    background: #fff;
    height: 70px;
    border-radius: 70px;
    border: 2px solid #2283d8;
    text-align: center;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    width: 48%;
}

footer .links .link li a {
    text-align: center;
    background: url(../../images/icon-arrblue.png) right 30px center no-repeat;
    background-size: 26px 26px;
    text-decoration: none;
    display: block;
    width: 100%;
    color: #2283d8;
    font-weight: bold;
    font-size: 1.8rem;
}

footer .links .link li a span {
    font-size: 1.6rem;
}

footer .bnrs {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 50px;
}

footer .bnrs li {
    margin: 0 7px 10px 7px;
}

footer .bnrs li img {
    width: 230px;
    height: auto;
}

footer .footlinks {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: center;
    justify-content: center;
    margin: 0 auto 40px auto;
    padding-left: 10px;
    width: 80%;
}

@media screen and (max-width: 1050px) {

    footer .footlinks {
        width: 95%;
    }

}

footer .footlinks li {
    margin-right: 20px;
    margin-bottom: 10px;
}

footer .footlinks li a {
    font-size: 1.3rem;
    color: #333;
}

footer .footlinks li a i {
    margin-right: 8px;
}

footer .copy {
    text-align: center;
    font-size: 1.3rem;
    padding-bottom: 10px;
}

footer .copy p:last-child {
    font-size: 1.1rem;
    margin-top: 15px;
}

footer .copy ul {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
}

footer .copy ul li {
    margin: 0 10px;
}

footer .copy ul li img {
    height: 60px;
    width: auto;
}

.contents .flblock {
    display: -webkit-flex;
    display: flex;
}

.contents .flblock .pic {
    display: table;
    vertical-align: middle;
    max-width: 250px;
    min-width: 120px;
    height: 120px;
    border: 1px solid #ccc;
    text-align: center;
}

.contents .flblock .pic .middle {
    display: table-cell;
    vertical-align: middle;
}

.contents .flblock .pic img {
    max-width: 220px;
    max-height: 120px;
}

.contents .hoteldtl > h2 {
    background: #fff;
    font-family: 'Open Sans', sans-serif;
    font-size: 3.5rem;
    font-weight: normal;
    padding-left: 15px;
    display: -webkit-flex;
    display: flex;
    height: 68px;
    line-height: 68px;
}

.contents .hoteldtl .visual {
    margin-bottom: 10px;
}

.hoteldtl .tabs {
    margin: 10px 10px 0 10px;
    display: -webkit-flex;
    display: flex;
}

.hoteldtl .tabs li {
    font-size: 1.6rem;
    margin-right: 5px;
}

.hoteldtl .tabs li a {
    border-bottom: none;
    background: #fff;
    padding: 5px 20px;
    display: block;
    text-decoration: none;
}

.hoteldtl .tabs li a.is_active {
    background: #2283d8;
    color: #fff;
}

.tab-content {
    display: none;
}

.tab-content.is_show {
    display: block;
    padding-bottom: 0px;
}

.hoteldtl .maychange {
    font-size: 1.4rem;
    padding: 0 10px;
    margin-top: 10px;
    margin-bottom: 10px;
}

.hoteldtl .visual {
    margin: 0px 10px 0 10px;
    background: #fff;
    padding: 20px;
    padding-top: 20px;
}

.hoteldtl .visual img {
    width: 100%;
    height: auto;
}

.hoteldtl .headinfo {
    padding: 40px 50px;
    background: #fff;
    margin: 10px 10px 0 10px;
}

.hoteldtl .headinfo .pic {
    margin-right: 30px;
}

.hoteldtl .headinfo .ttl {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: space-around;
    justify-content: space-around;
}

.hoteldtl .headinfo h3 {
    font-family: 'Open Sans', sans-serif;
    font-size: 3.6rem;
    font-weight: normal;
    line-height: 1.0em;
}

.hoteldtl .headinfo h3 span {
    font-size: 2.0rem;
}

.hoteldtl .headinfo .link {
    font-size: 1.8rem;
    text-align: left;
}

.hoteldtl .headinfo .link a {
    color: #333;
}

.hoteldtl .headinfo h4 {
    font-size: 2.0rem;
    margin-bottom: 15px;
    margin-top: 10px;
    font-weight: bold;
    color: #1487d8;
}

.hoteldtl .headinfo .lead {
    font-size: 1.4rem;
    margin-bottom: 20px;
}

.hoteldtl .headinfo .btns {
    -webkit-align-items: center;
    align-items: center;
}

.hoteldtl .headinfo p.tour {
    width: 280px;
    margin-right: 20px;
}

.hoteldtl .headinfo p.tour a {
    height: 36px;
    border-radius: 36px;
    line-height: 36px;
    display: block;
    color: #fff;
    font-weight: bold;
    text-decoration: none;
    padding: 0 50px 0 30px;
    font-size: 1.5rem;
    text-align: center;
}

.hoteldtl .headinfo p.tour a {
    background: url(../../images/icon-search.png) right 18px center no-repeat #2283d8;
    background-size: 17px 17px;
}

.hoteldtl .headinfo p.wed {
    width: 320px;
    margin-right: 20px;
}

.hoteldtl .headinfo p.wed a {
    height: 36px;
    border-radius: 36px;
    line-height: 36px;
    display: block;
    color: #fff;
    font-weight: bold;
    text-decoration: none;
    padding: 0 50px 0 30px;
    font-size: 1.5rem;
    text-align: center;
}

.hoteldtl .headinfo p.wed a {
    background: url(../../images/icon-arrlwhite.png) right 18px center no-repeat #e577ab;
    background-size: 14px 14px;
}

.hoteldtl .block.present {
    margin-top: 35px;
}

.hoteldtl .block.present li .pic {
    width: 50%;
}

.hoteldtl .block.present li .txt {
    padding: 0 15px;
}

.hoteldtl .block.present ul {
    margin-top: 15px;
}

.hoteldtl .block.present li .txt h4 {
    font-weight: bold;
    font-size: 1.8rem;
    margin-bottom: 15px;
}

.hoteldtl .block.present li {
    justify-content: flex-start;
}

.hoteldtl .block.gallery {
    padding: 0 5px;
    margin-top: 35px;
}

.hoteldtl .block.gallery ul {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    background: #fff;
    padding: 20px 15px 10px 15px;
    margin: 15px 5px 0px 5px;
}

.hoteldtl .block.gallery ul p {
    margin: 0 5px;
}

.hoteldtl .block.gallery ul li {
    width: 12.5%;
    background: none;
    padding: 0;
    margin: 0 0 10px 0;
    display: block;
}

.hoteldtl .block.gallery ul li a {
    padding-top: 56.25%;
    width: 100%;
    display: block;
    background-position: center center;
    background-size: cover;
    position: relative;
}

.hoteldtl .block.movie {
    padding: 0 10px;
    margin-top: 35px;
    margin-bottom: 10px;
}

.hoteldtl .block.movie ul {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    margin: 15px 0px 0 0px;
    background: #fff;
    padding: 0 5px;
}

.hoteldtl .block.movie ul li {
    background: none;
    width: 66.6666%;
    display: block;
    padding: 0;
    margin: 0;
}

.hoteldtl .block.movie ul li > div {
    margin: 0 5px;
    padding: 20px 0;
    background: #fff;
}

.embed-container {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    max-width: 100%;
}

.embed-container iframe, .embed-container object, .embed-container embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.weddingtop .video iframe {
    width: 100% !important;
    height: 100%;
}

.hoteldtl .multimedia {
    overflow: hidden;
}

.hoteldtl .multimedia > div {
    width: 400px;
    float: left;
    margin-right: 20px;
}

.hoteldtl .multimedia ul {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}

.hoteldtl .multimedia ul li {
    margin-left: 1px;
    margin-bottom: 1px;
    height: 90px;
}

.hoteldtl .block {
    margin-top: 60px;
    padding: 0 10px;
}

.hoteldtl .block h2 {
    background: none;

}

.hoteldtl .block ul {
    margin-top: 30px;
}

.hoteldtl .block ul li {
    background: #fff;
    padding: 20px;
    margin-bottom: 10px;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    font-size: 1.4rem;
}

.hoteldtl .block ul li.reverse {
    flex-direction: row-reverse;
}

.hoteldtl .block ul li.reverse .pic {
    margin-left: 20px;
    margin-right: 0;
}

.hoteldtl .block ul li.reverse .info {
    padding: 0px 10px 10px 0px;
}

.hoteldtl .block.activity ul li:last-child {
    margin-bottom: 0;
}

.hoteldtl .block.activity h2 + p {
    margin-top: 30px;
}

.hoteldtl .block.activity .type {
    background: #fff;
    padding: 20px 10px 10px 10px;
}

.hoteldtl .block.activity .type + ul {
    margin-top: 10px;
}

.hoteldtl .block.activity .type p {
    font-size: 1.4rem;
    margin-bottom: 30px;
    padding-left: 15px;
}

.hoteldtl .block.activity .type p:last-child {
    margin-bottom: 15px;
}

.hoteldtl .block.activity p.vis {
    margin-top: 30px;
}

.hoteldtl .block.activity p.schedule {
    width: 50%;
    margin: 20px auto 20px auto;
}

.hoteldtl .block.activity p.schedule a {
    height: 44px;
    border-radius: 44px;
    line-height: 44px;
    display: block;
    color: #fff;
    font-weight: bold;
    text-decoration: none;
    padding: 0 50px 0 30px;
    font-size: 1.4rem;
    text-align: center;
}

.hoteldtl .block.activity p.schedule a {
    background: url(../../images/icon-arrlwhite.png) right 22px center no-repeat #2283d8;
    background-size: 22px 22px;
}

.hoteldtl .block.activity p.schedule a:hover {
    background: url(../../images/icon-arrlwhite.png) right 22px center no-repeat #499ce4;
    background-size: 22px 22px;
}

.hoteldtl .block ul li .pic {
    min-width: 44%;
    max-width: 44%;
    margin-right: 20px;
}

.hoteldtl .block ul li.fullpic .pic {
    margin: 0;
    width: 100%;
}

.hoteldtl .block ul li .pic img {
    width: 100%;
    height: auto;
}

.hoteldtl .block ul li .info {
    padding: 0px 20px 10px 10px;
    -webkit-flex: 1;
    flex: 1;
}

.hoteldtl .block ul li.up {
    display: block;
}

.hoteldtl .block ul li .info_up {
    padding: 0px 20px 10px 10px;
    display: block;
}

.hoteldtl .block ul li .pic_up {
    min-width: 44%;
    margin-bottom: 20px;
    display: block;
    text-align: center;
}

.hoteldtl .block ul li.up .pic_up img {
    width: 100%;
    height: auto;
}

.hoteldtl .block ul li .info h4 {
    font-size: 2.0rem;
    line-height: 1.3em;
}

.hoteldtl .block ul li.up .info_up h4 {
    font-size: 2.0rem;
    line-height: 1.3em;
}

.hoteldtl .block ul li .info h4 + p {
    margin-top: 15px;
}

.hoteldtl .block ul li.up .info_up h4 + p {
    margin-top: 15px;
}

.hoteldtl .block ul li .info p + p {
    margin-top: 10px;
}

.hoteldtl .block ul li.up .info_up p + p {
    margin-top: 10px;
}

.hoteldtl .block ul li .info h4 span {
    font-size: 1.4rem;
}

.hoteldtl .block ul li.up .info_up h4 span {
    font-size: 1.4rem;
}

.hoteldtl .block ul li a.pdf {
    background: url(../../images/icon-pdf.png) left center no-repeat;
    padding-left: 30px;
    display: inline-block;
    text-decoration: underline;
    color: #333;
    height: 30px;
    line-height: 30px;
}

.hoteldtl .block ul li a.pdf:hover {
    text-decoration: none;
}

.hoteldtl .block > p {
    font-size: 1.4rem;
    margin-bottom: 30px;
    padding-left: 15px;
}

.hoteldtl .block > p strong {
    font-size: 1.6rem;
}

.hoteldtl .block p.vis {
    padding: 0;
    margin: 0 0 30px 0;
    line-height: 0;
}

.hoteldtl .block p.vis img {
    width: 100%;
    height: auto;
}

.hoteldtl .block.data .vis {
    margin-bottom: 0;
}

.hoteldtl .block .white {
    background: #fff;
    padding: 40px 30px 30px 30px;
    margin-bottom: 10px;
}

.hoteldtl .block.data,
.hoteldtl .block.restaurant,
.hoteldtl .block.spa,
.hoteldtl .block.activity {
    margin-top: 0;
}

.hoteldtl .block.restaurant ul:first-child,
.hoteldtl .block.spa ul:first-child {
    margin-top: 0;
}

.hoteldtl .block.activity ul:first-child {
    margin-top: 0;
}

.hoteldtl .block.restaurant ul:first-child li:first-child,
.hoteldtl .block.spa ul:first-child li:first-child {
    padding-top: 20px;
}

.hoteldtl .block.spa .menupdf {
    margin-top: 6px !important;
}

.hoteldtl .block.data .white {
    margin-top: 0px;
    padding-top: 20px;
}

.hoteldtl .block.data .access {
    display: -webkit-flex;
    display: flex;
    font-size: 1.4rem;
    margin-bottom: 15px;
}

.hoteldtl .block.data .access > div p {
    margin-bottom: 10px;
}

.hoteldtl .block.data h4 {
    font-size: 1.5rem;
    margin-bottom: 15px;
    font-weight: bold;
}

.hoteldtl .block.data .access .map {
    margin-left: auto;
}

.hoteldtl .block.data .map a {
    height: 44px;
    border-radius: 44px;
    line-height: 44px;
    display: block;
    color: #fff;
    font-weight: bold;
    text-decoration: none;
    padding: 0 100px 0 100px;
    font-size: 1.5rem;
    text-align: center;
    min-width: 150px;
}

.hoteldtl .block.data .map a {
    background: url(../../images/icon-arrlwhite.png) right 22px center no-repeat #2283d8;
    background-size: 22px 22px;
}

.hoteldtl .block.data .map a:hover {
    background: url(../../images/icon-arrlwhite.png) right 22px center no-repeat #499ce4;
    background-size: 22px 22px;
}

.hoteldtl .block.data table {
    width: 100%;
    font-size: 1.4em;
    margin-bottom: 10px;
}

.hoteldtl .block.data table:first-of-type {
    margin-bottom: 30px;
}

.hoteldtl .block.data table th,
.hoteldtl .block.data table td {
    padding: 10px 20px;
    border: 1px solid #cccccc;
    border-collapse: collapse;
}

.hoteldtl .block.data table th {
    background: #f3f3f3;
    font-weight: normal;
    vertical-align: top;
}

.hoteldtl .block.data table td {
    background: #fff;
}

.hoteldtl .block.data table td.mark {
    text-align: center;
}

.hoteldtl .block.data table.chart th {
    width: 40%;
}

p.table_bottom:first-of-type {
    font-size: 12px;
    margin-bottom: 20px;
}

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

.hoteldtl .block.data ul.pics {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    margin: 0;
}

.hoteldtl .block.data ul.pics li {
    width: 32.5%;
    padding: 0;
    margin: 0;
    margin-bottom: 20px;
    margin-top: 0;
}

.hoteldtl .block.data ul.pics li img {
    width: 100%;
    height: auto;
}

.hoteldtl .block.data table:last-child {
    margin-bottom: 0;
}

.contents ul.submenu {
    position: relative;
    padding: 0;
    list-style: none;
    background: #5da0d8;
    font-size: 1.6rem;
    z-index: 500;
}

.contents ul.submenu + ul.submenu {
    z-index: 499;
    background: #0b599d;
    font-size: 1.4rem;
}

.contents ul.submenu + ul.submenu li a {
    padding: 10px 18px;
}

.contents ul.submenu + ul.submenu li.active,
.contents ul.submenu + ul.submenu li:hover {
    background: #3079b9;
}

.contents ul.submenu + ul.submenu ul {
    background: #0b599d;
}

.contents ul.submenu::after {
    display: block;
    clear: both;
    content: '';
}

.contents ul.submenu li {
    position: relative;
    float: left;
}

.contents ul.submenu li:not(:first-child) {
    border-left: none;
}

.contents ul.submenu li.active,
.contents ul.submenu li:hover {
    background: #0b599d;
}

.contents ul.submenu li a {
    display: inline-block;
    padding: 15px 18px;
    color: #fff;
    line-height: 1;
    text-align: center;
    text-decoration: none;
    white-space: nowrap;
}

.contents ul.submenu ul {
    position: absolute;
    top: 100%;
    left: 0px;
    background: #5da0d8;
    font-size: 1.2rem;
    min-width: 100%;
    z-index: 501;
}

.contents ul.submenu ul li {
    float: none;
    margin: 0;
}

.contents ul.submenu ul li a {
    padding: 8px 18px;
    display: block;
    text-align: left;
}

.contents ul.submenu ul li:not(:first-child) {

}

.contents ul.submenu ul ul {
    position: absolute;
    top: 0px;
    left: 100%;
}

.contents ul.submenu ul {
    visibility: hidden;
    opacity: 0;
    transition: .2s ease-in-out;
}

.contents ul.submenu li:hover > ul {
    visibility: visible;
    opacity: 1;
}

.contents ul.submenu.diving,
.contents ul.submenu.diving ul {
    background: #6ac1a6;
}

.contents ul.submenu.diving li:hover,
.contents ul.submenu.diving li.active a,
.contents ul.submenu.diving li a:hover {
    background: #23a58d;
}

.contents ul.submenu.wedding,
.contents ul.submenu.wedding ul {
    background: #e696be;
}

.contents ul.submenu.wedding li:hover,
.contents ul.submenu.wedding li.active a,
.contents ul.submenu.wedding li a:hover {
    background: #e374a9;
}

.contents .hotelsrch > h2 {
    background: #fff;
    font-family: 'Open Sans', sans-serif;
    font-size: 3.5rem;
    font-weight: normal;
    padding-left: 15px;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    height: 68px;
    line-height: 68px;
}

.contents .hotelsrch > h2 + #resultWrap {
    padding-top: 30px;
}

.contents .hotelsrch .mainvis img {
    width: 100%;
    height: auto;
}

.contents .hotelsrch .block.srchlead {
    margin: 10px 10px 0 10px;
    background: #fff;
    font-size: 1.4rem;
    padding-top: 0px;
}

.contents .hotelsrch .block.srchlead .lead {
    padding: 30px 150px;
}

.contents .hotelsrch .block.srchlead .lead p {
    font-size: 1.4rem;
    margin-bottom: 15px;
}

.contents .hotelsrch .block.srchlead .cntcttel {
    text-align: center;
    font-size: 1.5rem;
}

.contents .hotelsrch .block.srchlead .cntcttel span {
    font-size: 2.0rem;
}

.contents .hotelsrch .block.srchlead .btn {
    font-size: 1.5rem;
    font-weight: bold;
    width: 280px;
    margin: 20px auto 0 auto;
    height: 36px;
    line-height: 36px;
    border: 1px solid #333;
    border-radius: 36px;
    border-color: #2283d8;
    background: #fff;
    text-align: center;
}

.contents .hotelsrch .block.srchlead .btn a {
    display: block;
    text-decoration: none;
    color: #2283d8;
    background: url(../../images/icon-arrblue.png) right 10px center no-repeat;
    background-size: 14px 14px;
}

.contents .hotelsrch .block.srchlead .btn a:hover {
    color: #fff;
    background: url(../../images/icon-arrlwhite.png) right 10px center no-repeat #2283d8;
    background-size: 14px 14px;
    border-radius: 36px;
}

.contents .hotelsrch .block.srchlead .lead p:last-child {
    margin-bottom: 0;
}

.contents .hotelsrch .block {
    margin: 0 0px;
}

.contents .hotelsrch .block.recommend {
    margin: 20px 5px 10px 5px;
    padding-top: 0px;
}

.contents .hotelsrch .block.srchrslts {
    padding-top: 20px;
}

.contents .hotelsrch .block.results {
    padding-top: 10px;
    margin: 0 5px;
}

.contents .hotelsrch .block.results p {
    font-size: 1.5rem;
    padding-left: 10px;
}

.contents .hotelsrch .block.results p.pic {
    padding-left: 0;
}

.contents .hotelsrch .block.results p.conditions {
    font-size: 1.2rem;
}

.contents .hotelsrch .block.results p.price {
    font-size: 1.2rem;
    color: #f08629;
    margin-top: 5px;
}

.contents .hotelsrch .block.results p.dtl {
    margin-top: 10px;
}

.contents .hotelsrch .block.recommend h3 {
    margin-bottom: 20px;
}

.contents .hotelsrch .block.recommend ul {
    display: -webkit-flex;
    display: flex;
    justify-content: unset;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}

.contents .hotelsrch .block.recommend.results ul {
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    justify-content: unset;
}

.contents .hotelsrch .block.recommend ul li {
    width: 24%;
    padding-bottom: 15px;
    background: url(../../images/icon-trianglecorner.png) right bottom no-repeat #fff;
    background-size: 16px 16px;
    margin: 10px 5px 0 5px;
}

.contents .hotelsrch .block.recommend.results ul li {
    margin: 0 5px 10px;
}

.contents .hotelsrch .block.recommend ul li img {
    width: 100%;
    height: auto;
}

.contents .hotelsrch .block.recommend li .area {
    background: #fff;
    color: #333;
    font-family: "Open Sans", sans-serif;
    padding: 5px 10px;
    font-size: 1.8rem;
}

.contents .hotelsrch .block.recommend li h4 {
    font-size: 1.5rem;
    font-weight: bold;
    padding: 5px 10px;
    line-height: 1.5em;
}

.contents .hotelsrch .block.recommend .rec li h4 a {
    color: #f08629;
}

.contents .hotelsrch .block.recommend li p.dtl {
    font-size: 1.3rem;
    padding: 0px 10px;
    line-height: 1.5em;
}

.contents .hotelsrch .block.srchbox {
    margin: 10px 10px 0 10px;
    padding-bottom: 30px;
    margin-bottom: 10px;
    padding-top: 30px !important;
}

.contents .hotelsrch .block.srchbox .selects {
    text-align: center;
}

.contents .hotelsrch .block.srchbox h2 + .selects {
    margin-top: 20px;
}

.contents .hotelsrch .block.srchbox .selects option {
    font-family: "FontAwesome", "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
}

.contents .hotelsrch .block.srchbox p.btn {
    width: 280px;
    margin: 30px auto 0 auto;
}

.contents .hotelsrch .block.srchbox p.btn a {
    height: 36px;
    border-radius: 36px;
    line-height: 36px;
    display: block;
    color: #fff;
    font-weight: bold;
    text-decoration: none;
    padding: 0 50px 0 30px;
    font-size: 1.5rem;
    text-align: center;
}

.contents .hotelsrch .block.srchbox p.btn a {
    background: url(../../images/icon-search.png) right 18px center no-repeat #2283d8;
    background-size: 17px 17px;
}

.contents .hotelsrch .block.srchbox p.btn a:hover {
    background: url(../../images/icon-search.png) right 18px center no-repeat #5ba7e9;
    background-size: 17px 17px;
}

.contents .hotelsrch p.conditions {
    font-size: 1.2rem;
    padding: 5px 10px 0;
}

.contents .hotelsrch p.number {
    font-size: 1.2rem;
    padding: 0 10px 5px;
}

.contents .hotelsrch ul.pager {
    margin: 0;
    padding: 10px 10px 5px;
    background: #eee;
    text-align: center;
    font-size: 1.5rem;
}

.contents .hotelsrch ul.pager li {
    display: inline;
    margin: 0 2px;
    padding: 0;
}

.contents .hotelsrch ul.pager li span,
.contents .hotelsrch ul.pager li a {
    display: inline-block;
    margin-bottom: 5px;
    padding: 1px 8px;
    background: #fff;
    border: 1px solid #aaa;
    text-decoration: none;
    vertical-align: middle;
}

.contents .hotelsrch ul.pager li a:hover {
    background: #eeeff7;
}

.contents .hotelsrch .cntct {
    background: #fff;
    padding: 0 70px 45px 70px;
    margin-top: 10px;
    margin-bottom: 10px;
}

.contents .hotelsrch .cntct > div {
    -webkit-align-items: center;
    align-items: center;

}

.contents .hotelsrch .keyword {
    border: 10px solid #e9e9e9;
    background: #fff;
    margin: 0 10px 10px 10px;
    font-size: 1.4rem;
}

.contents .hotelsrch .keyword p {
    padding: 10px 15px;
    border: 1px solid #ddd;
}

.contents .hotelsrch .block.recommend.sitesrch ul li {
    width: 25%;
    margin: 0 0 10px 0;
    padding: 0;
    background: none;
    display: -webkit-flex;
    display: flex;
}

.contents .hotelsrch .block.recommend.sitesrch ul li > div {
    margin: 0 5px;
    background: url(../../images/icon-trianglecorner.png) right bottom no-repeat #fff;
    background-size: 16px 16px;
    padding-bottom: 10px;
}

.contents .hotelsrch .block.recommend.sitesrch ul li p.dtl {
    margin-top: 0;
}

.contents .hotelsrch .block.recommend.sitesrch .tags {
    display: -webkit-flex;
    display: flex;
    padding: 10px 10px 0 10px;
}

.contents .hotelsrch .block.recommend.sitesrch .tags p {
    background: #5ba7e9;
    color: #fff;
    font-size: 1.1rem;
    border-radius: 15px;
    margin: 0 5px 0 0;
    padding: 0px 8px;
}

.contents .hotelsrch .block.recommend.sitesrch .tags p.camp {
    background: #dc2424;
}

.contents .hotelsrch .block.recommend.sitesrch .tags p.hotel {
    background: #30a949;
}

.contents .hotelsrch .block.recommend.sitesrch .tags p.optional {
    background: #b53939;
}

.contents .hotelsrch .block.recommend.sitesrch .tags p.diary {
    background: #964db8;
}

.contents .hotelsrch .block.recommend.sitesrch .tags p.rectour {
    background: #bc6f3b;
}

.contents .hotelsrch .block.recommend.sitesrch h4 a {
    color: #333;
}

.contents .hotelsrch .btmpager {
    padding-bottom: 10px;
}

div#searchBox.block {
    padding-top: 0px;
}

div#searchResults.block {
    padding-top: 0px;
}

.select-wrap {
    position: relative;
    overflow: hidden;
    display: inline-block;
    min-width: 192px;
    min-width: 12em;
    width: 250px;
    background-color: #ffffff;
    background-image: -webkit-linear-gradient(top, #ffffff 0%, #dddddd 100%);
    background-image: linear-gradient(top, #ffffff 0%, #dddddd 100%);
    border: 1px solid #c0c0c0;
    color: #333;
    margin: 0 10px;
}

.select-wrap select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    position: relative;
    z-index: 2;
    display: block;
    width: 200%; /* fallback non calc support */
    width: -webkit-calc(100% + 5em);
    margin: 0;
    padding: 11px 35px 11px 11px;
    padding: .6875rem 2.1875rem .6875rem .6875rem;
    background: transparent;
    border: 0;
    outline: none;
    font-size: 1.6rem;
    line-height: 1.5;
}

.entypo-down-open-mini:before {
    content: '▼';
    font-family: 'entypo', sans-serif;
    position: absolute;
    z-index: 1;
    top: 50%;
    right: 12px;
    right: .75rem;
    margin-top: -8px;
    margin-top: -.5rem;
    font-size: 16px;
    font-size: 1rem;
    line-height: 1;
    color: #333;
}

.contents .optionaltour > h2,
.contents .stories > h2,
.contents .divingtop > h2,
.contents .divingpage > h2,
.contents .weddingtop > h2 {
    background: #fff;
    font-family: 'Open Sans', sans-serif;
    font-size: 3.5rem;
    font-weight: normal;
    padding-left: 15px;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    height: 68px;
    line-height: 68px;
}

.contents .divingtop > h2,
.contents .divingpage > h2 {
    background: #fff;
    font-family: 'Open Sans', sans-serif;
    font-size: 3.5rem;
    font-weight: normal;
    height: 68px;
    line-height: 68px;
}

.optionaltour > h3,
.stories > h3 {
    font-size: 2.3rem;
    font-weight: bold;
    padding: 0 20px;
    margin: 10px 0 5px 0;
}

.optionaltour > p.descr,
.stories > p.descr {
    font-size: 1.4rem;
    padding: 0 20px;
}

.optionaltour .infobox {
    margin: 10px 10px 10px 10px;
    background: #fff;
    padding: 10px;
}

.optionaltour .maininfo {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}

.optionaltour .maininfo .pics {
    width: 43%;
}

.optionaltour .maininfo .pics p img {
    width: 100%;
    height: auto;
}

.optionaltour .maininfo .pics ul.thumbs {
    margin: 5px 0 0 0;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}

.optionaltour .maininfo .pics ul.thumbs li {
    width: 24%;
}

.optionaltour .maininfo .pics ul.thumbs li img {
    width: 100%;
    height: auto;

}

.optionaltour .freebox {
    margin-bottom: 10px !important;
}

.optionaltour .freebox .fulltxt iframe {
    width: 640px !important;
}

.sp-next-arrow:before {
    content: '\f105' !important;
}

.sp-previous-arrow:before {
    content: '\f104' !important;
}

.optionaltour .maininfo .txt {
    font-size: 1.5rem;
    -webkit-flex: 1;
    flex: 1;
    word-wrap: break-word;
    margin-left: 20px;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
}

.optionaltour .maininfo .txt > p {
    margin-bottom: 15px;
}

.optionaltour .maininfo .txt > p:last-child {
    margin-bottom: 0;
}

.optionaltour .maininfo .txt > p.price {
    font-size: 1.6rem;
    font-weight: bold;
    color: #f08629;
    margin-top: auto;
}

.optionaltour .tourdata table {
    width: 100%;
    font-size: 1.4em;
    margin-bottom: 10px;
}

.optionaltour .tourdata table:last-child {
    margin-bottom: 0;
}

.optionaltour .tourdata table th,
.optionaltour .tourdata table td {
    padding: 10px 20px;
    border: 1px solid #cccccc;
    border-collapse: collapse;
}

.optionaltour .tourdata table.info1 th,
.optionaltour .tourdata table.info1 td {
    width: 25%;
    vertical-align: middle;
}

.optionaltour .tourdata table th {
    background: #f3f3f3;
    font-weight: normal;
    vertical-align: top;
    white-space: nowrap;
}

.optionaltour .tourdata table.info2 th {
    vertical-align: middle;
    width: 25%;
}

.optionaltour .tourdata table td {
    background: #fff;
}

.contents .freebox {
    margin: 10px 10px 0 10px;
    background: #fff;
    padding: 15px 15px 15px 15px;
}

.contents .freebox h4 {
    color: #0a5da7;
    font-weight: bold;
    font-size: 2.0rem;
    margin-bottom: 15px;
    margin-top: 15px;
    line-height: 1.3em;
}

.contents .freebox .pics {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    margin-bottom: 30px;
}

.contents .freebox .pics .pic {
    max-width: 40%;
    margin-right: 15px;
}

.contents .freebox .pics.right .pic {
    order: 1;
    margin: 0 0 0 15px;
}

.contents .freebox .pics .pic img {
    max-width: 100%;
    height: auto;
}

.contents .freebox .pics .txt {
    min-width: 0;
    -webkit-flex: 1;
    flex: 1;
    word-wrap: break-word;
    font-size: 1.4rem;
}

.contents .freebox .pics .txt p {
    margin-bottom: 15px;
}

.contents .freebox .fullpic img {
    width: 100%;
    height: auto;
    margin-bottom: 30px;
}

.contents .freebox .fullpic .pic:last-child img {
    margin-bottom: 0;
}

.contents .freebox .fulltxt {
    font-size: 1.4rem;
}

.contents .freebox .fulltxt p {
    margin-bottom: 15px;
}

.related-stories ul {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    padding-top: 0px;
    margin-bottom: 10px;
}

.related-stories ul li {
    background: url(../../images/icon-trianglecorner.png) right bottom no-repeat #fff;
    background-size: 16px 16px;
    max-width: 383px;
}

.related-stories ul li:nth-child(2) {
    margin: 0 10px;
}

.related-stories ul li p:first-child img {
    width: 100%;
    height: auto;
}

.related-stories ul li a {
    color: #333;
    text-decoration: none;
}

.related-stories ul li div {
    padding: 20px;
}

.related-stories ul li h4 {
    font-size: 1.5rem;
    font-weight: bold;
    margin-bottom: 5px;
}

.related-stories ul li p {
    font-size: 1.3rem;
}

.related-stories ul li .name {
    font-size: 1.4rem;
    margin-bottom: 5px;
}

.related-stories ul li .price {
    font-size: 1.5rem;
    font-weight: bold;
    color: #f08629;
    margin-bottom: 10px;
}

div.block.related-stories {
    padding-top: 30px;
}

.stories .btn {
    font-size: 1.5rem;
    font-weight: bold;
    width: 40%;
    margin: 20px auto 20px auto;
    height: 36px;
    line-height: 36px;
    border: 1px solid #333;
    border-radius: 36px;
    border-color: #2283d8;
    background: #fff;
    text-align: center;
}

.stories .btn a {
    display: block;
    text-decoration: none;
    color: #2283d8;
    background: url(../../images/icon-arrblue.png) right 10px center no-repeat;
    background-size: 14px 14px;
}

.contents .islandtop > h2 {
    background: #fff;
    font-family: 'Open Sans', sans-serif;
    font-size: 3.5rem;
    font-weight: normal;
    padding-left: 15px;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    height: 68px;
    line-height: 68px;
}

h2 span.time {
    font-size: 1.5rem;
    margin-left: auto;
    color: #444;
    margin-right: 20px;
}

h2 span.time span {
    font-size: 2.0rem;
}

.islandtop .mapvisual {
    display: -webkit-flex;
    display: flex;
}

.islandtop .mapvisual .map {
    width: 75%;
}

.islandtop .mapvisual .map img {
    width: 100%;
    height: auto;
}

.islandtop .mapvisual .campbox {
    width: 25%;
    background: #fff;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
}

.slick-prev:before,
.slick-next:before {
    color: #ccc;
}

.slick-prev {
    top: -15px;
    left: 45%;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
}

.slick-next {
    top: auto;
    bottom: -15px;
    left: 45%;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
}

.islandtop .mapvisual .campbox ul {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    padding-top: 10px;
    width: 100%;
}

.islandtop .mapvisual .campbox ul li {
    text-align: center;
    line-height: 0;
    margin-bottom: 10px;
}

.islandtop .mapvisual .campbox ul li div {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    padding: 0 15px;
    min-height: 1px;
}

.islandtop .mapvisual .campbox ul li div p.pic {
    width: 30%;
    min-height: 1px;
}

.islandtop .mapvisual .campbox ul li div p.pic img {
    width: 100%;
    height: auto;
}

.islandtop .mapvisual .campbox ul li div p {
    width: 65%;
    font-size: 1.2rem;
    line-height: 1.4em;
    text-align: left;
}

.islandtop .mapvisual .campbox ul li div p span.tag {
    display: block;
    margin-bottom: 3px;
}

.islandtop .mapvisual .campbox ul li div p span.tag span {
    text-decoration: none !important;
    background: #69aae4;
    color: #fff;
    font-size: 1.0rem;
    padding: 2px 6px;
    border-radius: 10px;
}

.islandtop .mapvisual .campbox ul li a {
    color: #333 !important;
    text-decoration: none !important;
}

.islandtop .mapvisual .campbox ul li:first-child img,
.islandtop .mapvisual .campbox ul li:last-child img {
    width: 15px;
    height: 10px;
}

.islandtop .mapvisual .campbox ul li:first-child a,
.islandtop .mapvisual .campbox ul li:last-child a {
    display: block;
}

.mapvisual .mapfull {
    width: 100%;
}

.mapvisual .mapfull img {
    width: 100%;
    height: auto;
}

.islandtop .isbnr {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    margin-top: 20px;
    margin-bottom: 10px
}

.islandtop .isbnr_tht {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    margin-top: 20px;
}

.islandtop .isbnr img {
    width: 100%;
}

.islandtop .isbnr_tht {
    margin-top: 50px;
    margin-bottom: -30px;
}

.islandtop .isbnr_tht img {
    width: auto;
}

.islandtop .isbnr + .block.island {
    margin-top: 15px;
}

.islandtop .block {
    padding: 0 5px;
    margin-top: 20px;
}

.islandtop .block tours {
    padding: 0 5px;
    margin-top: 20px;
}

.islandtop .island {
    margin-top: 50px;
}

.islandtop .block.island > p {
    font-size: 1.4rem;
    margin-bottom: 20px;
    padding: 0 60px;
}

.islandtop .block.island ul {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}

.islandtop .block.island ul li {
    width: 25%;
    margin-bottom: 10px;
    display: -webkit-flex;
    display: flex;
}

.islandtop .block.island .onlytwo ul li {
    width: 50%;
}

.islandtop .block.island ul li > div {
    -webkit-flex: 1;
    flex: 1;
    margin: 0 5px;
    background: #fff;
    background: url(../../images/icon-trianglecorner.png) right bottom no-repeat #fff;
    background-size: 16px 16px;
    padding-bottom: 10px;
    font-size: 1.3rem;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    min-height: 1px;
}

.islandtop .block.island ul li a {
    color: #333;
    text-decoration: none;
}

.islandtop .block.island ul li .pic {
    min-height: 1px;
}

.islandtop .block.island ul li .pic img {
    width: 100%;
    height: auto;
}

.islandtop .block.island ul li h4 {
    text-align: center;
    font-weight: bold;
    padding: 15px 0 10px 0;
}

.islandtop .block.island ul li h4 span {
    font-weight: normal;
    font-size: 1.1rem;
    display: block;
}

.islandtop .block.island ul li h4 + p {
    padding: 0 15px 15px 15px;
}

.islandtop .block.island ul li .btns {
    margin: auto 15px 0 15px;
    border-top: 1px dotted #111;
    padding-top: 10px;
}

.islandtop .block.island ul li .btns p:first-child {
    margin-bottom: 7px;
}

.islandtop .block.island ul li .btns p a {
    display: block;
    color: #333;
    font-weight: bold;
    text-decoration: none;
    height: 26px;
    line-height: 26px;
}

.islandtop .block.island ul li .btns p a:hover {
    color: #666;
}

.islandtop .block.island ul li .btns p:last-child a {
    background: url(../../images/icon-arrblack.png) left 5px center no-repeat;
    background-size: 26px 26px;
    padding-left: 40px;
}

.islandtop .block.island ul li .btns p:first-child a {
    background: url(../../images/icon-search-black.png) left 5px center no-repeat;
    background-size: 26px 26px;
    padding-left: 40px;
}

.islandtop .block.island ul li .hotellist {
    position: relative;
}

.islandtop .block.island ul li .hotellist label {
    background: url(../../images/icon-arrblack.png) left 5px center no-repeat;
    background-size: 26px 26px;
    padding-left: 40px;
    color: #333;
    font-weight: bold;
    display: block;
    height: 26px;
    line-height: 26px;
    cursor: pointer;
    margin: 7px 15px 0 15px;
}

.islandtop .block.island ul li .hotellist label:hover {
    color: #666;
}

.islandtop .block.island ul li .hotellist input {
    display: none;
}

.islandtop .block.island ul li .hotellist .list {
    height: 0;
    overflow: hidden;
    padding: 0;
    position: absolute;
    top: 40px;
    left: 0px;
    display: block;
    width: 140%;
}

.islandtop .block.island ul li .hotellist .list li {
    width: 100%;
}

.islandtop .block.island ul li .hotellist .list li:last-child {
    margin-bottom: 0;
}

.islandtop .block.island ul li .hotellist .list li a {
    color: #1487d8;
    text-decoration: underline;
    background: url(../../images/icon-arrblue.png) 0 2px no-repeat;
    background-size: 15px 15px;
    padding-left: 20px;
}

.islandtop .block.island ul li .hotellist .list li a:hover {
    color: #1487d8;
    text-decoration: none;
}

.islandtop .block.island ul li .hotellist input:checked + .list {
    height: auto;
    padding: 15px;
    background: #f9f9f9;
    border: 1px solid #efefef;
    z-index: 200;
}

.islandtop .block.hotels {
    margin-top: 90px;
}

.islandtop .block.hotels ul {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}

.islandtop .block.hotels ul li {
    width: 33.333%;
    margin-bottom: 10px;
    display: -webkit-flex;
    display: flex;
    text-align: center;
}

.islandtop .block.hotels ul li > div {
    -webkit-flex: 1;
    flex: 1;
    margin: 0 5px;
    background: #fff;
    padding-bottom: 20px;
    font-size: 1.3rem;
}

.islandtop .block.hotels ul li .pic img {
    width: 100%;
    height: auto;
}

.islandtop .block.hotels ul li h4 {
    font-weight: bold;
    padding: 15px 0 20px 0;
}

.islandtop .block.hotels ul li .btns {
    display: -webkit-flex;
    display: flex;
}

.islandtop .block.hotels ul li .btns p {
    width: 50%;
}

.islandtop .block.hotels ul li .btns p a {
    display: block;
    color: #333;
    font-weight: bold;
    text-decoration: none;
}

.islandtop .block.hotels ul li .btns p a:hover {
    color: #666;
}

.islandtop .block.hotels ul li .btns p:first-child {
    border-right: 1px dotted #111;
}

.islandtop .block.hotels ul li .btns p:first-child a {
    background: url(../../images/icon-arrblack.png) center top no-repeat;
    background-size: 26px 26px;
    padding-top: 35px;
}

.islandtop .block.hotels ul li .btns p:last-child a {
    background: url(../../images/icon-search-black.png) center top no-repeat;
    background-size: 26px 26px;
    padding-top: 35px;
}

.islandtop .block.hotels .more {
    width: 200px;
    text-align: center;
    margin: 20px auto 0 auto;
}

.islandtop .block.hotels .more a {
    background: url(../../images/icon-arrdown.png) no-repeat #c5c5c5;
    background-size: 20px 20px;
    background-position: right 10px center;
    display: block;
    font-weight: bold;
    font-size: 1.6rem;
    height: 40px;
    line-height: 40px;
    border-radius: 20px;
    color: #fff;
    text-decoration: none;
}

.islandtop .block.hotels .more a:hover {
    background: url(../../images/icon-arrdown.png) no-repeat #d0d0d0;
    background-size: 20px 20px;
    background-position: right 10px center;
}

.islandtop .block.activity {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 0px;
}

.islandtop .block.activity > div {
    width: 25%;
    display: -webkit-flex;
    display: flex;
}

.islandtop .block.activity > div > div {
    -webkit-flex: 1;
    flex: 1;
    background: #fff;
    margin: 0 5px;
    margin-bottom: 10px;
    padding-top: 20px;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
}

.islandtop .block.activity > div.two,
.islandtop .block.activity > div.wedding,
.islandtop .block.activity > div.diving {
    width: 50%;
}

.islandtop .block.activity .pic img {
    width: 100%;
    height: auto;
}

.islandtop .block.activity h4 {
    font-family: 'Open Sans', sans-serif;
    text-align: center;
    font-size: 2.0rem;
    color: #2283d8;
}

.islandtop .block.activity .wedding h4 {
    font-size: 2.4rem;
    color: #e577ab;
}

.islandtop .block.activity .diving h4 {
    font-size: 2.4rem;
    color: #17ad93;
}

.islandtop .block.activity .bord {
    width: 100px;
    height: 1px;
    background: #2283d8;
    margin: 5px auto 15px auto;
}

.islandtop .block.activity .wedding .bord {
    background: #e577ab;
}

.islandtop .block.activity .diving .bord {
    background: #17ad93;
}

.islandtop .block.activity h5 {
    font-size: 1.3rem;
    text-align: center;
    margin-bottom: 20px;
}

.islandtop .block.activity .descr {
    font-size: 1.3rem;
    padding: 10px;
}

.islandtop .block.activity .wedding .descr,
.islandtop .block.activity .diving .descr {
    font-size: 1.4rem;
    padding: 10px 15px;
}

.islandtop .block.activity .arr {
    margin-top: auto;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
}

.islandtop .block.activity .arr a {
    width: 40px;
    height: 20px;
    padding: 10px 0;
    background: #2283d8;
    text-align: center;
    display: block;
}

.islandtop .block.activity .arr a img {
    width: 20px;
    height: 20px;
}

.islandtop .block.activity .wedding .arr a {
    background: #f0a0c6;
}

.islandtop .block.activity .diving .arr a {
    background: #17ad93;
}

#home .toursearch {
    margin-bottom: 10px;
}

.toursearch {
    margin: 0px 5px 0 5px;
}

.toursearch form {
    width: 100%;
}

#home .toursearch > div {
    margin: 0;
}

.toursearch > div {
    background: #fff;
    margin: 0 5px;
    padding: 10px;
    display: -webkit-flex;
    display: flex;
}

.toursearch .ttl {
    background: #0b599d;
    padding: 30px;
    color: #fff;
    text-align: center;
    white-space: nowrap;
}

.toursearch .ttl img {
    width: 35px;
    height: auto;
}

.toursearch .ttl h2 {
    font-size: 2.0rem;
    font-weight: normal;
    line-height: 0.8em;
    margin-top: 20px;
    font-family: 'Open Sans';
}

.toursearch .ttl span {
    font-size: 1.3rem;
    display: block;
    margin-top: 10px;
}

.toursearch .srcharea {
    background: #e1f1ff;
    font-size: 1.4rem;
    padding: 25px 75px 25px 40px;
    -webkit-flex-grow: 3;
    flex-grow: 3;
}

.toursearch .srcharea .col {
    display: -webkit-flex;
    display: flex;
    margin-bottom: 20px;
}

.toursearch .srcharea .col dl {
    width: 25%;
    display: -webkit-flex;
    display: flex;
}

.toursearch .srcharea .col dl dt {
    width: 80px;
}

.toursearch .srcharea .col.col-2 dl,
.toursearch .srcharea .col.col-3 dl:first-child {
    width: 50%;
}

.toursearch .srcharea .col.col-1 dl {
    width: 70%;
}

.toursearch .srcharea .code {
    margin-bottom: 10px;
}

.toursearch .srcharea .code dt {
    padding-top: 5px;
    min-width: 80px;
    width: auto;
}

.toursearch .srcharea .code input {
    width: 380px;
    padding: 5px;
}

.toursearch .srcharea dl.checks {
    display: block !important;
    width: 100% !important;
    margin-bottom: 20px;
}

.toursearch .srcharea dl.checks dt {
    font-weight: bold;
    width: 100%;
    margin-bottom: 10px;
}

.toursearch .btn {
    padding-right: 90px;
}

.toursearch .btn a {
    display: block;
    background: url(../../images/icon-search.png) right 22px center no-repeat #0a5da7;
    background-size: 22px 22px;
    font-size: 1.8rem;
    font-weight: bold;
    color: #fff;
    text-align: center;
    text-decoration: none;
    margin: 0 auto;
    width: 300px;
    height: 44px;
    border-radius: 44px;
    line-height: 44px;
}

.toursearch .btn input {
    display: block;
    border: none;
    background: url(../../images/icon-search.png) right 22px center no-repeat #0a5da7;
    background-size: 22px 22px;
    font-size: 1.8rem;
    font-weight: bold;
    color: #fff;
    text-align: center;
    text-decoration: none;
    margin: 0 auto;
    width: 300px;
    height: 44px;
    border-radius: 44px;
    line-height: 44px;
}

.islandtop .block.optional {
    margin-top: 10px;
    margin-bottom: 0px;
}

.islandtop .block.optional .whitebg {
    background: #fff;
    margin: 0 5px 0px 5px;
    padding-top: 15px;
    padding-bottom: 25px;
}

.islandtop .block.optional ul.tags {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: center;
    justify-content: center;
    margin-bottom: 5px;
}

.islandtop .block.optional ul.tags li {
    margin-right: 5px;
    margin-bottom: 5px;
}

.islandtop .block.optional ul.tags li:last-child {
    margin-right: 0;
}

.islandtop .block.optional ul.tags li a {
    background: #e3e3e3;
    font-size: 1.3rem;
    font-weight: bold;
    padding: 8px 15px;
    color: #555;
    text-decoration: none;
}

.islandtop .block.optional ul.tags li a.is_active {
    background: #69aae4;
    color: #fff;
    overflow: hidden;
}

#tab,
#tabcamp {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: center;
    justify-content: center;
    margin-bottom: 8px;
}

#tab li,
#tabcamp li {
    margin-right: 5px;
    margin-bottom: 5px;
    background: #e3e3e3;
    font-size: 1.3rem;
    font-weight: bold;
    padding: 4px 15px;
    color: #555;
    text-decoration: none;
    cursor: pointer;
}

#tab li:last-child,
#tabcamp li:last-child {
    margin-right: 0;
}

#tab li.select,
#tabcamp li.select {
    background: #69aae4;
    color: #fff;
    overflow: hidden;
}

.islandtop .block.optional .opttl {
    background: #fff;
    margin: 0 5px 10px 5px;
    padding-bottom: 35px;
}

.islandtop .block.optional h4 {
    font-size: 1.8rem;
    font-weight: bold;
    margin-top: 0px;
    margin-bottom: 15px;
    text-align: center;
}

.islandtop .block.optional p.bord {
    width: 100px;
    height: 3px;
    background: #000;
    margin: 0 auto;
    padding: 0;
}

.islandtop .block.optional ul.lists {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}

.islandtop .block.optional ul.lists li {
    width: 50%;
    display: -webkit-flex;
    display: flex;
    margin-bottom: 10px;
}

.islandtop .block.optional ul.lists li > div {
    -webkit-flex: 1;
    flex: 1;
    margin: 0 5px;
    background: #fff;
}

.islandtop .block.optional ul.lists li .listhead {
    display: -webkit-flex;
    display: flex;
}

.islandtop .block.optional ul.lists li .listhead > div {
    width: 50%;
}

.islandtop .block.optional ul.lists li .listhead .ttl {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
}

.islandtop .block.optional ul.lists li .listhead .ttl h5 {
    font-size: 1.6rem;
    line-height: 1.3em;
    font-weight: bold;
    padding: 15px 20px 0 20px;
    margin-bottom: 10px;
}

.islandtop .block.optional ul.lists li .listhead .ttl h5 span {
    display: block;
    font-size: 1.4rem;
    font-weight: normal;
    margin-top: 10px;
}

.islandtop .block.optional ul.lists li .listhead .ttl .price {
    font-size: 1.6rem;
    line-height: 1.4em;
    font-weight: bold;
    color: #f08629;
    margin-top: auto;
    margin-bottom: 10px;
    margin-left: 15px;
    margin-right: 15px;
    padding-bottom: 5px;
    border-bottom: 1px solid #000;
}

.islandtop .block.optional ul.lists li .listhead .ttl .arr {
    text-align: right;
    padding-right: 15px;
    padding-bottom: 5px;
}

.islandtop .block.optional ul.lists li .listhead .ttl .arr a {
    display: block;
}

.islandtop .block.optional ul.lists li .listhead .ttl .arr img {
    width: 26px;
    height: 26px;
}

.islandtop .block.optional ul.lists li .listhead .pic img {
    width: 100%;
    height: auto;
}

.islandtop .block.optional ul.lists li .descr {
    font-size: 1.4rem;
    padding: 15px 20px;
}

.islandtop .block.culturetop > h3 {
    margin-bottom: 15px;
}

.islandtop .block.culturetop > p {
    text-align: center;
    font-size: 1.4rem;
    margin-bottom: 20px;
}

.islandtop .block.culturetop ul {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}

.islandtop .block.culturetop ul li {
    width: 33.33333%;
    display: -webkit-flex;
    display: flex;
    margin-bottom: 10px;
}

.islandtop .block.culturetop ul li > div {
    -webkit-flex: 1;
    flex: 1;
    margin: 0 5px;
    background: #fff;
    background: url(../../images/icon-trianglecorner.png) right bottom no-repeat #fff;
    background-size: 16px 16px;
    padding-bottom: 10px;
    font-size: 1.3rem;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
}

.islandtop .block.culturetop ul li a {
    color: #333;
    text-decoration: none;
}

.islandtop .block.culturetop ul li p {
    padding: 0 15px 10px 15px;
    font-size: 1.4rem;
}

.islandtop .block.culturetop ul li p.pic {
    padding: 0;
}

.islandtop .block.culturetop ul li p.pic img {
    width: 100%;
    height: auto;
}

.islandtop .block.culturetop ul li h4 {
    text-align: center;
    font-weight: bold;
    padding: 15px 0 10px 0;
    font-size: 1.6rem;
}

.islandtop .block.culturetop ul li .btn {
    margin: auto auto 0 auto;
    width: 200px;
    text-align: center;
    padding: 10px 0;
}

.islandtop .block.culturetop ul li .btn a {
    display: block;
    border: 1px solid #2283d8;
    border-radius: 36px;
    height: 36px;
    line-height: 36px;
    background: url(../../images/icon-arrblue.png) right 18px center no-repeat;
    background-size: 18px 18px;
    text-decoration: none;
    color: #2283d8;
    font-weight: bold;
    font-size: 1.5rem;
}

.islandtop .block.culturetop ul li .btn a:hover {
    color: #fff;
    background: url(../../images/icon-arrlwhite.png) right 18px center no-repeat #2283d8;
    background-size: 18px 18px;
}

.islandtop .block.areatop .lead {
    font-size: 1.4rem;
    margin-bottom: 20px;
    padding: 0 60px;
}

.islandtop .block.areatop ul {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}

.islandtop .block.areatop ul li {
    width: 25%;
    margin-bottom: 10px;
    display: -webkit-flex;
    display: flex;
}

.islandtop .block.areatop ul.two li {
    width: 50%;
}

.islandtop .block.areatop ul li > div {
    -webkit-flex: 1;
    flex: 1;
    margin: 0 5px;
    background: #fff;
    background: url(../../images/icon-trianglecorner.png) right bottom no-repeat #fff;
    background-size: 16px 16px;
    padding-bottom: 10px;
    font-size: 1.3rem;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
}

.islandtop .block.areatop ul li a {
    color: #333;
    text-decoration: none;
}

.islandtop .block.areatop ul li .pic {
    min-height: 1px;
}

.islandtop .block.areatop ul li .pic img {
    width: 100%;
    height: auto;
}

.islandtop .block.areatop ul li h4 {
    text-align: center;
    font-weight: bold;
    padding: 15px 0 10px 0;
}

.islandtop .block.areatop ul li h4 span {
    font-weight: normal;
    font-size: 1.1rem;
    display: block;
}

.islandtop .block.areatop ul li h4 + p {
    padding: 0 15px 15px 15px;
}

.islandtop .block.areatop ul li .btns {
    margin: auto 15px 0 15px;
    border-top: 1px dotted #111;
    padding-top: 10px;
}

.islandtop .block.areatop ul li .btns p:first-child {
    margin-bottom: 7px;
}

.islandtop .block.areatop ul li .btns p a {
    display: block;
    color: #333;
    font-weight: bold;
    text-decoration: none;
    height: 26px;
    line-height: 26px;
}

.islandtop .block.areatop ul li .btns p a:hover {
    color: #666;
}

.islandtop .block.areatop ul li .btns a.disable {
    background: url(../../images/icon-search-gray.png) left 5px center no-repeat;
    background-size: 26px 26px;
    padding-left: 40px;
    color: #ccc;
    cursor: default;
}

.islandtop .block.areatop ul li .btns p:first-child a.disable {
    background: url(../../images/icon-search-gray.png) left 5px center no-repeat;
    background-size: 26px 26px;
    padding-left: 40px;
    color: #ccc;
    cursor: default;
}

.islandtop .block.areatop ul li .btns p:last-child a {
    background: url(../../images/icon-arrblack.png) left 5px center no-repeat;
    background-size: 26px 26px;
    padding-left: 40px;
}

.islandtop .block.areatop ul li .btns p:first-child a {
    background: url(../../images/icon-search-black.png) left 5px center no-repeat;
    background-size: 26px 26px;
    padding-left: 40px;
}

.islandtop .block.islandact {
    margin-top: 0;
}

.islandtop .block.islandact h2 {
    background: #fff;
    padding-top: 20px;
    margin-left: 5px;
    margin-right: 5px;
}

.islandtop .block.islandact h3 {
    margin: 0px 5px 0px 5px;
    background: #fff;
    padding-top: 8px;
    padding-bottom: 20px;
}

.islandtop .block.islandact ul {
    margin: 0 5px 0 5px;
}

.islandtop .block.islandact ul li {
    background: #fff;
    padding: 10px;
    margin-bottom: 10px;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    font-size: 1.4rem;
}

.islandtop .block.islandact ul li .pic {
    min-width: 44%;
    max-width: 44%;
    margin-right: 15px;
}

.islandtop .block.islandact ul li .pic_cook {
    min-width: 22%;
    max-width: 22%;
    margin-right: 15px;
}

.islandtop .block.islandact ul li .pic_cook img {
    width: 100%;
}

.islandtop .block.islandact ul li.fullpic .pic {
    margin: 0;
    width: 100%;
}

.islandtop .block.islandact ul li .pic img {
    width: 100%;
    height: auto;
}

.islandtop .block.islandact ul li .info {
    padding: 5px 20px 10px 10px;
    -webkit-flex: 1;
    flex: 1;
}

.islandtop .block.islandact ul li.up {
    display: block;
}

.islandtop .block.islandact ul li .info_up {
    padding: 5px 20px 10px 10px;
    display: block;
}

.islandtop .block.islandact ul li .pic_up {
    min-width: 44%;
    margin-bottom: 20px;
    display: block;
    text-align: center;
}

.islandtop .block.islandact ul li.up .pic_up img {
    width: 100%;
    height: auto;
}

.islandtop .block.islandact ul li .info h4 {
    font-size: 2.0rem;
    line-height: 1.3em;
}

.islandtop .block.islandact ul li.up .info_up h4 {
    font-size: 2.0rem;
    line-height: 1.3em;
}

.islandtop .block.islandact ul li .info h4 + p {
    margin-top: 15px;
}

.islandtop .block.islandact ul li.up .info_up h4 + p {
    margin-top: 15px;
}

.islandtop .block.islandact ul li .info p + p {
    margin-top: 10px;
}

.islandtop .block.islandact ul li.up .info_up p + p {
    margin-top: 10px;
}

.islandtop .block.islandact ul li .info h4 span {
    font-size: 1.4rem;
}

.islandtop .block.islandact ul li.up .info_up h4 span {
    font-size: 1.4rem;
}

.islandtop .options {
    font-size: 1.5rem;
    font-weight: bold;
    width: 40%;
    margin: 20px auto 20px auto;
    height: 36px;
    line-height: 36px;
    border: 1px solid #333;
    border-radius: 36px;
    border-color: #2283d8;
    background: #fff;
    text-align: center;
}

.islandtop .options a {
    display: block;
    text-decoration: none;
    color: #2283d8;
    background: url(../../images/icon-arrblue.png) right 10px center no-repeat;
    background-size: 14px 14px;
}

.islandtop .options a:hover {
    display: block;
    text-decoration: none;
    color: #fff;
    border-radius: 36px;
    background: url(../../images/icon-arrlwhite.png) right 10px center no-repeat #2283d8;
    background-size: 14px 14px;
}

.islandtop .opbtn {
    font-size: 1.5rem;
    font-weight: bold;
    width: 40%;
    margin: 10px auto 20px auto;
    height: 36px;
    line-height: 36px;
    border: 1px solid #333;
    border-radius: 36px;
    border-color: #2283d8;
    background: #fff;
    text-align: center;
}

.islandtop .opbtn a {
    display: block;
    text-decoration: none;
    color: #2283d8;
    background: url(../../images/icon-arrblue.png) right 10px center no-repeat;
    background-size: 14px 14px;
}

.islandtop .opbtn a:hover {
    color: #fff;
    background: url(../../images/icon-arrlwhite.png) right 10px center no-repeat #2283d8;
    background-size: 14px 14px;
    border-radius: 36px;
}

.islandtop .block.culturelow p.lead {
    text-align: center;
    font-size: 1.4rem;
    margin-bottom: 20px;
    padding: 0 60px;
}

.islandtop .block.culturelow ul {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}

.islandtop .block.culturelow ul li {
    width: 33.333333%;
    margin-bottom: 10px;
    display: -webkit-flex;
    display: flex;
}

.islandtop .block.culturelow ul li > div {
    -webkit-flex: 1;
    flex: 1;
    margin: 0 5px;
    background: #fff;
    background-size: 16px 16px;
    padding-bottom: 10px;
    font-size: 1.3rem;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
}

.islandtop .block.culturelow ul li .pic img {
    width: 100%;
    height: auto;
}

.islandtop .block.culturelow ul li .info {
    padding: 10px;
}

.islandtop .block.souvenirblock {
    margin-top: 30px;
}

.islandtop .block.souvenirblock .lead {
    font-size: 1.4rem;
    text-align: center;
}

.islandtop .block.souvenirblock h4 {
    font-size: 1.7rem;
    font-weight: bold;
    text-align: center;
    margin: 20px 0 10px 0;
}

.islandtop .block.souvenirblock h4 span {
    font-size: 1.3rem;
    font-weight: normal;
    display: block;
}

.islandtop .block.souvenirblock .expl {
    font-size: 1.4rem;
    margin-bottom: 15px;
    padding: 0 80px;
}

.islandtop .block.souvenirblock ul {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}

.islandtop .block.souvenirblock ul li {
    width: 16.666666%;
    display: -webkit-flex;
    display: flex;
    margin-bottom: 10px;
}

.islandtop .block.souvenirblock ul li > div {
    background: #fff;
    margin: 0 5px;
    -webkit-flex: 1;
    flex: 1;
}

.islandtop .block.souvenirblock ul li.long {
    width: 100%;
}

.islandtop .block.souvenirblock ul li.long > div {
    display: -webkit-flex;
    display: flex;
    padding: 10px;
}

.islandtop .block.souvenirblock ul li .pic img {
    width: 100%;
    height: auto;
}

.islandtop .block.souvenirblock ul li h4 {
    font-size: 1.4rem;
    font-weight: bold;
    text-align: left;
    margin: 0;
    padding: 10px 10px 5px 10px;
}

.islandtop .block.souvenirblock ul li .descr {
    padding: 0 10px 10px 10px;
    font-size: 1.2rem;
}

.islandtop .block.souvenirblock ul li.long .info {
    padding: 5px 20px 10px 10px;
    font-size: 1.3rem;
}

.islandtop .block.souvenirblock ul li.long .info strong {
    font-size: 1.5rem;
}

.islandtop .block.souvenirblock ul li.long .pic {
    width: 44%;
    min-width: 44%;
    max-width: 44%;
    margin-right: 15px;
}

.islandtop .block.vat {
    background: #fff;
    margin: 0 10px 10px 10px;
    padding-top: 30px;
}

.islandtop .block.vat .lead {
    padding: 20px 100px;
    font-size: 1.4rem;
}

.islandtop .block.vat .lead p {
    margin-bottom: 15px;
}

.islandtop .block.vat .btns {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
}

.islandtop .block.vat .btns p {
    font-size: 1.5rem;
    font-weight: bold;
    width: 225px;
    margin: 0 15px 0 15px;
    height: 36px;
    line-height: 36px;
    border: 1px solid #333;
    border-radius: 36px;
    border-color: #2283d8;
    background: #fff;
    text-align: center;
    margin-bottom: 30px;
}

.islandtop .block.vat .btns p a {
    display: block;
    text-decoration: none;
    color: #2283d8;
    background: url(../../images/icon-arrblue.png) right 10px center no-repeat;
    background-size: 14px 14px;
}

.islandtop .block.vat .btns p a:hover {
    color: #ffffff;
    background: url(../../images/icon-arrlwhite.png) right 10px center no-repeat #2283d8;
    background-size: 14px 14px;
    border-radius: 36px;
}

.islandtop .block.recstore {
    background: #fff;
    margin: 0 10px 10px 10px;
    padding-top: 30px;
}

.islandtop .block.recstore h2 span {
    letter-spacing: 0;
}

.islandtop .block.recstore > div {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 30px 5px 10px 5px;
}

.islandtop .block.recstore > div .site {
    width: 44%;
    margin-right: 15px;
}

.islandtop .block.recstore > div .site img {
    width: 100%;
    height: auto;
}

.islandtop .block.recstore > div .info {
    font-size: 1.4rem;
    text-align: left;
    -webkit-flex: 1;
    flex: 1;
}

.islandtop .block.recstore > div .info p {
    margin-bottom: 15px;
}

.islandtop .tabs {
    margin: 10px 10px 0 10px;
    display: -webkit-flex;
    display: flex;
}

.islandtop .tabs li {
    font-size: 1.6rem;
    margin-right: 5px;
}

.islandtop .tabs li a {
    border-bottom: none;
    background: #fff;
    padding: 5px 20px;
    display: block;
    text-decoration: none;
}

.islandtop .tabs li a.is_active {
    background: #2283d8;
    color: #fff;
}

.islandtop .block.info {
    padding: 0 10px;
    margin-top: 0;
}

.islandtop .block.info h3 {
    font-size: 1.8rem;
    font-weight: bold;
    margin: 25px 0 10px 0;
}

.islandtop .block.info ul {
    margin-top: 0;
}

.islandtop .block.info ul li {
    background: #fff;
    padding: 20px;
    margin-bottom: 10px;
    display: -webkit-flex;
    display: flex;
    font-size: 1.4rem;
    text-align: left;
}

.islandtop .block.info ul li > div {
    -webkit-flex: 1;
    flex: 1;
}

.islandtop .block.info ul li h4 {
    font-size: 2.0rem;
    margin-bottom: 10px;
}

.islandtop .block.info ul li .pic {
    margin-right: 15px;
}

.islandtop .block.info ul li.holiday .pic {
    width: 40%;
    -webkit-flex: none;
    flex: none;
}

.islandtop .block.info ul li.holiday .pic img {
    width: 100%;
    height: auto;
}

.islandtop .block.info ul li.twopic {
    width: 100;
    display: block;
    margin-bottom: 10px;
}

.islandtop .block.info ul li.twopic .ovfl {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}

.islandtop .block.info ul li.twopic .ovfl > div {
    width: 49%;
}

.islandtop .block.info ul li.twopic .ovfl > div img {
    width: 100%;
    height: auto;
}

.islandtop .block.info ul li.twopic .ovfl > div h5 {
    font-size: 1.5rem;
    font-weight: bold;
    text-align: center;
    margin-bottom: 5px;
}

.islandtop .block.info table {
    width: 100%;
    font-size: 1.3rem;
    margin-bottom: 0px;
}

.islandtop .block.info table th,
.islandtop .block.info table td {
    padding: 8px 10px;
    border: 1px solid #cccccc;
    border-collapse: collapse;
}

.islandtop .block.info table th {
    background: #f3f3f3;
    font-weight: normal;
    vertical-align: top;
    white-space: nowrap;
}

.islandtop .block.info table td {
    background: #fff;
}

.islandtop .block.info ul li span {
    color: #d02d2d;
}

.islandtop .block.info p span.red {
    color: #e32323;
}

.redcolor {
    color: #e32323;
}

.islandtop .block.golftop {
    margin-top: 30px;
}

.islandtop .block.golftop p.lead {
    font-size: 1.4rem;
    padding: 0 60px 0px 60px;
}

.islandtop .block.golftop p.courses {
    padding: 10px;
    margin: 0px 5px 30px 5px;
    background: #fff;
    margin-bottom: 30px;
}

.islandtop .block.golftop p.courses img {
    width: 100%;
    height: auto;
}

.islandtop h2.jp span {
    letter-spacing: 0;
}

.islandtop .block.golftop ul {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 20px;
    margin-bottom: 20px;
}

.islandtop .block.golftop ul li {
    width: 20%;
    display: -webkit-flex;
    display: flex;
}

.islandtop .block.golftop ul.top3 {
    margin-bottom: 10px;
}

.islandtop .block.golftop ul.top3 li {
    width: 33.333333%;
}

.islandtop .block.golftop ul li > div {
    -webkit-flex: 1;
    flex: 1;
    margin: 0 5px;
    background: #fff;
    background-size: 16px 16px;
    padding-bottom: 10px;
    font-size: 1.3rem;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
}

.islandtop .block.golftop ul.others li > div {
    display: block;
}

.islandtop .block.golftop ul li a {
    color: #333;
    text-decoration: none;
}

.islandtop .block.golftop ul li p {
    padding: 0 15px 10px 15px;
    font-size: 1.4rem;
}

.islandtop .block.golftop ul li p.pic {
    padding: 0;
    min-height: 1px;
}

.islandtop .block.golftop ul li p.pic img {
    width: 100%;
    height: auto;
}

.islandtop .block.golftop ul li h4 {
    text-align: center;
    font-weight: bold;
    padding: 10px 5px 0px 5px;
    font-size: 1.3rem;
}

.islandtop .block.golftop ul.top3 li h4 {
    padding: 15px 10px 10px 10px;
    font-size: 1.6rem;
}

.islandtop .block.golftop ul li .btn {
    margin: auto auto 0 auto;
    width: 200px;
    text-align: center;
    padding: 10px 0;
}

.islandtop .block.golftop ul li .btn a {
    display: block;
    border: 1px solid #31b627;
    border-radius: 36px;
    height: 36px;
    line-height: 36px;
    background: url(../../images/icon-arrgolf.png) right 18px center no-repeat;
    background-size: 18px 18px;
    text-decoration: none;
    color: #31b627;
    font-weight: bold;
    font-size: 1.5rem;
}

.islandtop .block.golftop ul li .btn a:hover {
    color: #fff;
    background: url(../../images/icon-arrlwhite.png) right 18px center no-repeat #31b627;
    background-size: 18px 18px;
}

.islandtop .block.golfstyle {
    margin: 0px 10px 20px 10px;
    background: #fff;
    padding-top: 30px;
    padding-bottom: 15px;
}

.islandtop .block.golfstyle > p {
    font-size: 1.4rem;
    padding: 0 80px;
    margin-top: 20px;
    margin-bottom: 15px;
}

.islandtop .block.golfstyle ul {
    display: -webkit-flex;
    display: flex;
    padding: 10px 10px 0 10px;
}

.islandtop .block.golfstyle ul li {
    width: 33.33%;
    font-size: 1.4rem;
    text-align: center;
}

.islandtop .block.golfstyle ul li div {
    padding: 0 10px;
}

.islandtop .block.golfstyle ul li img {
    width: 100%;
    height: auto;
    margin-bottom: 5px;
}

.islandtop p.golfbtn a {
    height: 44px;
    width: 400px;
    margin: 20px auto;
    border-radius: 44px;
    line-height: 44px;
    display: block;
    color: #fff;
    font-weight: bold;
    text-decoration: none;
    padding: 0 100px 0 100px;
    font-size: 1.5rem;
    text-align: center;
}

.islandtop p.golfbtn a {
    background: url(../../images/icon-arrlwhite.png) right 22px center no-repeat #31b627;
    background-size: 22px 22px;
}

.islandtop p.golfbtn a:hover {
    background: url(../../images/icon-arrlwhite.png) right 22px center no-repeat #46cb3d;
    background-size: 22px 22px;
}

.islandtop p.golfbtn.contact a {
    background: url(../../images/icon-arrlwhite.png) right 22px center no-repeat #f08629;
    background-size: 22px 22px;
}

.islandtop p.golfbtn.contact a:hover {
    background: url(../../images/icon-arrlwhite.png) right 22px center no-repeat #ef9240;
    background-size: 22px 22px;
}

.islandtop .block.golftop .spec {
    margin: 20px 5px 10px 5px;
    background: #fff;
    padding: 10px;
    display: -webkit-flex;
    display: flex;
}

.islandtop .block.golftop .spec .pic {
    width: 44%;
    margin-right: 15px;
}

.islandtop .block.golftop .spec .pic img {
    width: 100%;
    height: auto;
}

.islandtop .block.golftop .spec .info {
    font-size: 1.5rem;
    text-align: left;
    padding: 5px 20px 10px 10px;
}

.islandtop .block.golftop .spec .info h4 {
    font-size: 2.0rem;
    line-height: 1.3em;
    margin-bottom: 15px;
}

.islandtop .block.golftop .course {
    margin: 0 5px 10px 5px;
    background: #fff;
    padding: 20px 5px 10px 5px;
}

.islandtop .block.golftop .course ul {
    margin-bottom: 0;
    margin-top: 15px;
}

.islandtop .block.golftop .course ul li {
    width: 20%;
    margin-top: 10px;
}

.islandtop .block.golftop .course ul li > div {
    padding-bottom: 0;
}

.islandtop .block.golftop .course ul li img {
    width: 100%;
    height: auto;
}

.islandtop .block.golftop .course ul li p {
    padding: 8px 0 0 0;
    text-align: center;
    font-size: 1.3rem;
}

.islandtop .block.golftop .oneblock {
    margin: 0 5px 10px 5px;
    background: #fff;
    padding: 10px;
    display: -webkit-flex;
    display: flex;
}

.islandtop .block.golftop .oneblock .pic {
    width: 44%;
    margin-right: 15px;
}

.islandtop .block.golftop .oneblock .pic img {
    width: 100%;
    height: auto;
}

.islandtop .block.golftop .oneblock .info {
    font-size: 1.5rem;
    text-align: left;
    padding: 5px 20px 10px 10px;
    -webkit-flex: 1;
    flex: 1;
}

.islandtop .block.golftop .oneblock .info h4 {
    font-size: 2.0rem;
    line-height: 1.3em;
    margin-bottom: 15px;
}

.islandtop .block.golftop .clubhouse {
    margin: 0 5px 10px 5px;
    background: #fff;
    padding: 20px 5px 10px 5px;
}

.islandtop .block.golftop .clubhouse .lead {
    padding-top: 20px;
    padding-bottom: 15px;
}

.islandtop .block.golftop .clubhouse > div {
    display: -webkit-flex;
    display: flex;
    margin-top: 25px;
    padding: 0 5px;
}

.islandtop .block.golftop .clubhouse .pic {
    width: 44%;
    margin-right: 15px;
}

.islandtop .block.golftop .clubhouse .pic img {
    width: 100%;
    height: auto;
}

.islandtop .block.golftop .clubhouse .info {
    font-size: 1.5rem;
    text-align: left;
    padding: 5px 20px 10px 10px;
    -webkit-flex: 1;
    flex: 1;
}

.islandtop .block.golftop .clubhouse ul {
    margin-top: 0px !important;
    margin-bottom: 0px !important;
}

.islandtop .block.golftop .clubhouse ul li {
    width: 20%;
    margin-top: 10px;
}

.islandtop .block.golftop .clubhouse ul li > div {
    padding-bottom: 0;
}

.islandtop .block.golftop .clubhouse ul li img {
    width: 100%;
    height: auto;
}

.islandtop .block.golftop .resort h2 {
    background: #fff;
    margin: 0 5px;
    padding: 20px 0 0 0;
}

.islandtop .block.golftop .resort h3 {
    background: #fff;
    margin: 0 5px;
    padding: 8px 25px;
}

.islandtop .block.golftop .resort .lead {
    background: #fff;
    margin: 0 5px;
    padding-bottom: 15px;
}

.islandtop .block.golftop .resort ul {
    margin-top: 0px;
}

.islandtop .block.golftop .resort ul li {
    width: 25%;
    margin-top: 10px;
}

.islandtop .block.golftop .resort ul li > div {
    padding-bottom: 0;
}

.islandtop .block.golftop .resort ul li h4 {
    font-size: 1.4rem;
    line-height: 1.4em;
    padding: 8px 10px;
    text-align: left;
    font-weight: bold;
}

.islandtop .block.golftop .resort ul li a {
    color: #1487d8;
}

.islandtop .block.golftop .resort ul li a:hover {
    text-decoration: underline;
}

.islandtop .block.golftop ul.other li {
    width: 100%;
    margin-top: 10px;
    margin-bottom: 0;
}

.islandtop .block.golftop ul.other li:first-child {
    margin-top: 0;
}

.islandtop .block.golftop ul.other li > div {
    margin: 0 5px 0px 5px;
    background: #fff;
    padding: 10px;
    display: -webkit-flex;
    display: flex;
    flex-direction: row !important;
}

.islandtop .block.golftop ul.other .pic {
    width: 44%;
    margin-right: 15px;
}

.islandtop .block.golftop ul.other .pic img {
    width: 100%;
    height: auto;
}

.islandtop .block.golftop ul.other .info {
    font-size: 1.5rem;
    text-align: left;
    padding: 5px 20px 10px 10px;
    -webkit-flex: 1;
    flex: 1;
}

.islandtop .block.golftop ul.other .info h4 {
    font-size: 2.0rem;
    line-height: 1.3em;
    padding: 0;
    margin-bottom: 10px;
    text-align: left;
    font-weight: normal;
}

.islandtop .block.golftop ul.other .info p {
    padding: 0;
}

.block.faq {
    margin-top: 30px;
}

.divingpage .block.faq {
    margin-top: 0;
}

.block.faq > p {
    font-size: 1.4rem;
    padding: 0px 60px 30px 60px;
    text-align: center;
}

.block.faq ul {
    padding: 0 5px;
}

.block.faq ul li {
    background: #fff;
    padding: 25px 80px;
    font-size: 1.4rem;
    margin-bottom: 10px;
}

.block.faq ul li .question {
    font-weight: bold;
    font-size: 1.6rem;
    margin-bottom: 5px;
}

.block.faq ul li .question i {
    font-size: 1.8rem;
    color: #1487d8;
    margin-right: 5px;
}

.block.faq ul li .answer p + p {
    margin-top: 15px;
}

.block.faq ul li .answer ol {
    margin-top: 15px;
}

.block.faq ul li .answer ol li {
    list-style: decimal;
    margin-left: 20px;
    padding: 0;
}

.islandtop .block.points {
    margin-top: 30px;
}

.islandtop .block.points > p {
    font-size: 1.4rem;
    padding: 0px 60px 30px 60px;
    text-align: center;
}

.islandtop .block.points ul {
    padding: 0 5px;
}

.islandtop .block.points ul li {
    background: #fff;
    padding: 20px;
    font-size: 1.4rem;
    margin-bottom: 10px;
    display: -webkit-flex;
    display: flex;
}

.islandtop .block.points ul li .pic {
    margin-right: 25px;
    width: 40%;
}

.islandtop .block.points ul li .pic img {
    width: 100%;
    height: auto;
}

.islandtop .block.points ul li .info {
    -webkit-flex: 1;
    flex: 1;
}

.islandtop .block.points ul li h4 {
    font-size: 1.8rem;
    margin-bottom: 5px;
}

.islandtop .block.language {
    margin-top: 30px;
    padding-left: 0;
    padding-right: 0;
}

.islandtop .block.language > p {
    font-size: 1.4rem;
    padding: 0px 60px 30px 60px;
    text-align: center;
}

.islandtop .block.language p + ul.tabs {
    margin-top: 0;
}

.islandtop .tblang {
    background: #fff;
    padding: 30px;
    margin: 0 10px 10px 10px;
}

.islandtop .tblang > p {
    font-size: 1.4rem;
    margin-bottom: 15px;
}

.islandtop .tblang > p.chuui {
    margin-bottom: 0;
    margin-top: 15px;
}

.islandtop .tblang table {
    width: 100%;
    font-size: 1.3em;
    margin-bottom: 0px;
}

.islandtop .tblang table:last-child {
    margin-bottom: 0;
}

.islandtop .tblang table th,
.islandtop .tblang table td {
    padding: 8px 10px;
    border: 1px solid #cccccc;
    border-collapse: collapse;
    width: 50%;
}

.islandtop .tblang table th {
    background: #f3f3f3;
    font-weight: normal;
    vertical-align: top;
    white-space: nowrap;
}

.islandtop .tblang table td {
    background: #fff;
}

.islandtop .block.flight {
    margin-top: 30px;
    padding-left: 0;
    padding-right: 0;
}

.islandtop .block.flight > p {
    font-size: 1.4rem;
    padding: 0px 60px 30px 60px;
    text-align: center;
}

.islandtop .tbflight {
    background: #fff;
    padding: 30px;
    margin: 0 10px 10px 10px;
}

.islandtop .tbflight .lead {
    display: -webkit-flex;
    display: flex;
    font-size: 1.4rem;
    margin-bottom: 20px;
}

.islandtop .tbflight .lead .pic {
    width: 30%;
    margin-right: 20px;
}

.islandtop .tbflight .lead .pic img {
    width: 100%;
    height: auto;
}

.islandtop .tbflight .lead .info {
    -webkit-flex: 1;
    flex: 1;
}

.islandtop .tbflight .lead .info p {
    margin-bottom: 10px;
}

.islandtop .tbflight .lead .info p:last-child {
    margin-bottom: 0;
}

.islandtop .tbflight h4 {
    font-weight: bold;
    font-size: 1.5rem;
    margin-bottom: 10px;
}

.islandtop .tbflight table {
    width: 100%;
    font-size: 1.3em;
    margin-bottom: 15px;
}

.islandtop .tbflight table:last-child {
    margin-bottom: 0;
}

.islandtop .tbflight table th,
.islandtop .tbflight table td {
    padding: 8px 10px;
    border: 1px solid #cccccc;
    border-collapse: collapse;
}

.islandtop .tbflight table th {
    background: #f3f3f3;
    font-weight: bold;
    text-align: center;
    vertical-align: top;
    white-space: nowrap;
}

.islandtop .tbflight table td {
    background: #fff;
}

.islandtop .tbflight h2 {
    font-size: 2.2rem !important;
    text-align: center;
    overflow: hidden;
    margin-bottom: 20px;
    padding-top: 30px;
}

.islandtop .tbflight h2 span {
    display: inline-block;
    position: relative;
}

.islandtop .tbflight h2 span:before,
.islandtop .tbflight h2 span:after {
    content: "";
    border-bottom: 1px solid #333;
    width: 30px;
    margin: 0 10px;
    position: absolute;
    bottom: 18px;
}

.islandtop .tbflight h2 span:before {
    right: 100%;
}

.islandtop .tbflight h2 span:after {
    left: 100%;
}

.islandtop .tbflight li {
    display: -webkit-flex;
    display: flex;
    margin-bottom: 20px;
}

.islandtop .tbflight li:last-child {
    margin-bottom: 0;
}

.islandtop .tbflight li .pic {
    width: 44%;
    margin-right: 20px;
}

.islandtop .tbflight li .pic img {
    width: 100%;
    height: auto;
}

.islandtop .tbflight li .info {
    flex: 1;
    font-size: 1.4rem;
}

.islandtop .tbflight li .info.video {
    flex: none;
    width: 50%;
    margin: 0 auto;
}

.islandtop .tbflight li h3 {
    font-weight: bold;
}

.islandtop .tbflight li.chuui {
    font-size: 1.3rem;
}

.islandtop .tbflight p.chuui {
    font-size: 1.3rem;
}

.islandtop .tbflight p.rinji {
    font-size: 1.4rem;
    margin-bottom: 10px;
}

.islandtop .tbflight p.links {
    font-size: 1.4rem;
}

.islandtop .tbflight ul.list {
    font-size: 1.4rem;
    list-style: disc !important;
    margin-left: 25px;
    margin-bottom: 15px;
}

.islandtop .tbflight ul.list li {
    display: list-item;
    list-style: disc !important;
    margin-bottom: 5px;
}

.islandtop .tbflight .btn {
    font-size: 1.5rem;
    font-weight: bold;
    width: 60%;
    margin: 30px auto 0px auto;
    height: 36px;
    line-height: 36px;
    border: 1px solid #333;
    border-radius: 36px;
    border-color: #2283d8;
    background: #fff;
    text-align: center;
}

.islandtop .tbflight .btn a {
    display: block;
    text-decoration: none;
    color: #2283d8;
    background: url(../../images/icon-arrblue.png) right 10px center no-repeat;
    background-size: 14px 14px;
}

.islandtop .tbflight .btn a:hover {
    color: #fff;
    background: url(../../images/icon-arrlwhite.png) right 10px center no-repeat #2283d8;
    background-size: 14px 14px;
    border-radius: 36px;
}

.islandtop .block.vid {
    margin: 0 10px;
    padding: 10px 0px;
}

.islandtop .block.vid ul {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
}

.islandtop .block.vid ul li {
    width: 50%;
}

/**ダイビング**/
.divingtop .mainvis img {
    width: 100%;
    height: auto;
}

.divingtop .block p.lead {
    font-size: 1.4rem;
    text-align: center;
}

.divingtop .block.marine h2,
.divingtop .block.campaign h2 {
    margin-bottom: 15px;
}

.divingtop .block {
    padding: 0 5px;
    margin-top: 30px;
}

.divingtop .block .lead {
    margin-top: 15px;
}

.divingtop .block.location ul {
    display: -webkit-flex;
    display: flex;
    margin-top: 20px;
}

.divingtop .block.location ul li {
    width: 33.3333%;
    display: -webkit-flex;
    display: flex;
}

.divingtop .block.location ul li .pic img {
    width: 100%;
    height: auto;
}

.divingtop .block.location ul li > div {
    flex: 1;
    margin: 0 5px;
    background: #fff;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
}

.divingtop .block.location ul li h4 {
    font-size: 1.6rem;
    font-weight: bold;
    text-align: center;
    margin: 15px 0;
}

.divingtop .block.location ul li .descr {
    font-size: 1.4rem;
    padding: 0 18px;
}

.divingtop .block.location ul li .btn {
    margin: auto auto 0 auto;
    width: 200px;
    text-align: center;
    padding: 20px 0;
}

.divingtop .block.location ul li .btn a {
    display: block;
    border: 1px solid #a8ded4;
    border-radius: 36px;
    height: 36px;
    line-height: 36px;
    background: url(../../images/icon-arrgreen.png) right 18px center no-repeat;
    background-size: 18px 18px;
    text-decoration: none;
    color: #17ad93;
    font-weight: bold;
    font-size: 1.5rem;
}

.divingtop .block.location ul li .btn a:hover {
    color: #fff;
    background: url(../../images/icon-arrlwhite.png) right 18px center no-repeat #17ad93;
    background-size: 18px 18px;
}

.divingtop .block.marine {
    margin-top: 10px;
}

.divingtop .block.marine > div {
    background: #fff;
    margin: 0 5px;
    padding: 30px 5px 10px 5px;
}

.divingtop .block.marine ul {
    display: -webkit-flex;
    display: flex;
    margin-top: 25px;
}

.divingtop .block.marine ul li {
    width: 33.3333%;
    display: -webkit-flex;
    display: flex;
}

.divingtop .block.marine ul li > div {
    flex: 1;
    margin: 0 5px;
    background: url(../../images/icon-trianglecorner-green.png) right bottom no-repeat #dffbf6;
    background-size: 16px 16px;
    padding-bottom: 10px;
}

.divingtop .block.marine ul li .pic img {
    width: 100%;
    height: auto;
}

.divingtop .block.marine ul li h4 {
    font-size: 1.6rem;
    font-weight: bold;
    text-align: center;
    padding: 15px 0 10px 0;
}

.divingtop .block.faq {
    margin-top: 10px;
}

.divingtop .block.faq > div {
    background: #fff;
    margin: 0 5px;
    padding: 10px 10px;
    display: -webkit-flex;
    display: flex;
}

.divingtop .block.faq .pic {
    width: 50%;
}

.divingtop .block.faq .pic img {
    width: 100%;
    height: auto;
}

.divingtop .block.faq .txt {
    width: 50%;
    overflow: hidden;
}

.divingtop .block.faq .txt h4 {
    font-weight: bold;
    text-align: center;
    font-size: 1.8rem;
    padding: 30px 0;
}

.divingtop .block.faq .txt p {
    padding-left: 35px;
    margin-bottom: 15px;
    font-size: 1.4rem;
}

.divingtop .block.faq .txt p.btn {
    width: 200px;
    text-align: center;
    padding: 30px 0;
    margin: 0 auto;
}

.divingtop .block.faq .txt p.btn a {
    display: block;
    border: 1px solid #a8ded4;
    border-radius: 36px;
    height: 36px;
    line-height: 36px;
    background: url(../../images/icon-arrgreen.png) right 18px center no-repeat;
    background-size: 18px 18px;
    text-decoration: none;
    color: #17ad93;
    font-weight: bold;
    font-size: 1.5rem;
}

.divingtop .block.faq .txt p.btn a:hover {
    color: #fff;
    background: url(../../images/icon-arrlwhite.png) right 18px center no-repeat #17ad93;
    background-size: 18px 18px;
}

.divingtop .block.campaign {
    padding-top: 30px;
    margin: 10px 10px 0 10px;
}

.divingtop .campaign > div {
    width: 90%;
    margin: 25px auto 40px auto;
}

.divingtop .campaign li p.tag {
    background: #17ad93;
}

.divingtop .campaign .bx-wrapper .bx-prev {
    background: url(../../images/icon-sliderprev-green.png) 0 0 no-repeat;
    background-size: 20px 20px;
}

.divingtop .campaign .bx-wrapper .bx-next {
    background: url(../../images/icon-slidernext-green.png) 0 0 no-repeat;
    background-size: 20px 20px;
}

.divingtop .campaign .bx-wrapper .bx-pager.bx-default-pager a:hover, .divingtop .campaign .bx-wrapper .bx-pager.bx-default-pager a.active {
    background: #17ad93;
}

.divingpage .mainvis {
    position: relative;
}

.divingpage .mainvis h3 {
    font-weight: bold;
    font-size: 3.5rem;
    color: #fff;
    position: absolute;
    top: 45%;
    text-align: center;
    width: 100%;
    text-shadow: 1px 1px 3px #000;
}

.divingpage .mainvis img {
    width: 100%;
    height: auto;
}

.divingpage .block p.lead {
    font-size: 1.4rem;
    text-align: center;
    margin-top: 20px;
}

.divingpage .block.divinglead {
    margin-bottom: 30px;
}

.divingpage .block.divinglead h3 {
    text-align: left;
    font-family: 'Open Sans', sans-serif;
    font-size: 3.0rem;
    font-weight: bold;
    padding-left: 40px;
    margin: 0 0 10px 0;
}

.divingpage .block.divinglead .flbox {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    padding: 20px 80px 0 80px;
}

.divingpage .block.divinglead .flbox .txt {
    margin-bottom: 27px;
}

.divingpage .block.divinglead .flbox .btns {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
}

.divingpage .block.divinglead .flbox .btns + .btns {
    margin-top: 20px;
}

.divingpage .block.divinglead .flbox .btns p {
    margin: 0 10px;
}

.divingpage .block.divinglead .arealead {
    margin-bottom: 20px;
    font-size: 1.4rem;
}

.divingpage .block.divinglead .ikimono {
    margin-bottom: 20px;
    font-size: 1.4rem;
    padding: 0 40px;
}

.divingpage .block.divinglead h2 + .ikimono {
    margin-top: 20px;
    text-align: center;
}

.divingpage .block.divinglead .ikimonoauth {
    margin-bottom: 0px;
    font-size: 1.3rem;
    padding: 0 40px;
}

.divingpage .block.divinglead .arealead:last-child {
    margin-bottom: 0;
}

.divingpage .block.divinglead .lead + .btn {
    margin-top: 20px;
}

.divingpage .block.divinglead .btn a {
    display: block;
    background: url(../../images/icon-search.png) right 22px center no-repeat #68cebc;
    background-size: 22px 22px;
    font-size: 1.5rem;
    font-weight: bold;
    color: #fff;
    text-align: center;
    text-decoration: none;
    margin: 0 auto;
    width: 420px;
    height: 44px;
    border-radius: 44px;
    line-height: 44px;
}

.divingpage .block.divinglead .btn a:hover {
    background: url(../../images/icon-search.png) right 22px center no-repeat #17ad93;
    background-size: 22px 22px;
}

.divingpage .block.divinglead .btnhotel {
}

.divingpage .block.divinglead .btnhotel a {
    display: block;
    background: url(../../images/icon-search.png) right 22px center no-repeat #5ba7e9;
    background-size: 22px 22px;
    font-size: 1.5rem;
    font-weight: bold;
    color: #fff;
    text-align: center;
    text-decoration: none;
    margin: 0 auto;
    width: 420px;
    height: 44px;
    border-radius: 44px;
    line-height: 44px;
}

.divingpage .block.divinglead .btnhotel a:hover {
    background: url(../../images/icon-search.png) right 22px center no-repeat #2283d8;
    background-size: 22px 22px;
}

.divingpage .block.recommend {
    margin: 10px 5px 0 5px;
    padding-top: 0;
}

.divingpage .block.recommend .whiteblock {
    background: #fff;
    padding: 30px 80px 20px 80px;
    margin: 0 5px;
}

.divingpage .block.recommend .whiteblock p {
    font-size: 1.4rem;
    margin-bottom: 15px;
}

.divingpage .block.recommend .whiteblock p:last-child {
    margin-bottom: 0;
}

.divingpage .block.recommend ul {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 10px;
}

.divingpage .block.recommend ul li {
    width: 33.3333%;
    display: -webkit-flex;
    display: flex;
    margin-bottom: 10px;
}

.divingpage .block.recommend ul.two li {
    width: 50%;
}

.divingpage .block.recommend ul li .pic {
    min-height: 1px;
}

.divingpage .block.recommend ul li .pic img {
    width: 100%;
    height: auto;
}

.divingpage .block.recommend ul li > div {
    flex: 1;
    margin: 0 5px;
    background: #fff;
    display: -webkit-flex;
    display: flex;
    min-height: 1px;
    -webkit-flex-direction: column;
    flex-direction: column;
}

.divingpage .block.recommend ul li h4 {
    font-size: 1.6rem;
    font-weight: bold;
    text-align: center;
    margin: 15px 0;
}

.divingpage .block.recommend ul li .descr {
    font-size: 1.4rem;
    padding: 0 18px;
}

.divingpage .block.recommend ul li .btn {
    margin: auto auto 0 auto;
    width: 200px;
    text-align: center;
    padding: 20px 0;
}

.divingpage .block.recommend ul li .btn a {
    display: block;
    border: 1px solid #a8ded4;
    border-radius: 36px;
    height: 36px;
    line-height: 36px;
    background: url(../../images/icon-arrgreen.png) right 18px center no-repeat;
    background-size: 18px 18px;
    text-decoration: none;
    color: #17ad93;
    font-weight: bold;
    font-size: 1.5rem;
}

.divingpage .block.recommend ul li .btn a:hover {
    color: #fff;
    background: url(../../images/icon-arrlwhite.png) right 18px center no-repeat #17ad93;
    background-size: 18px 18px;
}

.divingpage .block.recommend ul.two li {
    width: 50%;
}

.divingpage .block.recommend ul.two li .descr {
    font-size: 1.4rem;
    text-align: center;
    padding: 0;
}

.divingpage .block.recommend ul.two li .btn {
    padding: 20px 0;
}

.divingpage .block.recommend.divingpoint {
    padding-top: 30px;
}

.divingpage .block.recommend.divingpoint ul li {
    width: 50%;
}

.divingpage .block.recommend.divingpoint ul li h4 {
    text-align: left;
    padding: 0 18px;
    margin: 15px 0 5px 0;
}

.divingpage .block.recommend.divingpoint ul li .descr {
    padding-bottom: 18px;
    font-size: 1.3rem;
    line-height: 1.4em;
}

.divingpage .block.recommend.divingpoint ul.wpic li > div {
    -webkit-flex-direction: row;
    flex-direction: row;
}

.divingpage .block.recommend.divingpoint ul.wpic li .pic {
    width: 40%;
    padding: 10px 0 10px 10px;
}

.divingpage .block.recommend.divingpoint ul.wpic li .pic img {
    width: 100%;
    height: auto;
}

.divingpage .block.recommend.divingpoint ul.wpic li .info {
    flex: 1;
}

.divingpage .block.recommend.divingpoint ul.wpic li h4 {
    margin-top: 10px;
}

.divingpage .vidblock {
    margin: 10px 10px 0 10px;
    padding: 10px 20%;
    background: #fff;
}

.oneblock {
    margin: 0 10px 10px 10px;
    background: #fff;
    padding: 10px;
    display: -webkit-flex;
    display: flex;
}

.divingpage .season {
    padding: 10px;
    margin: 0 10px 10px 10px;
    background: #fff;
    text-align: center;
}

.onepick {
    padding: 10px;
    margin: 0 10px 10px 10px;
    background: #fff;
    text-align: center;
    font-size: 1.4rem;
}

.areatop .onepick {
    margin: 0 5px 10px 5px;
}

.oneblock .pic {
    width: 44%;
    margin-right: 15px;
}

.oneblock .pic.small {
    width: auto;
}

.oneblock .pic img {
    width: 100%;
    height: auto;
}

.oneblock .info {
    font-size: 1.5rem;
    text-align: left;
    padding: 5px 20px 10px 10px;
    flex: 1;
}

.oneblock .info h4 {
    font-size: 2.0rem;
    line-height: 1.3em;
    margin-bottom: 15px;
}

.divingpage .block.recommend.divingpoint .btn {
    margin-top: 10px;
}

.divingpage .block.recommend.divingpoint .btn a {
    display: block;
    background: url(../../images/icon-search.png) right 22px center no-repeat #68cebc;
    background-size: 22px 22px;
    font-size: 1.5rem;
    font-weight: bold;
    color: #fff;
    text-align: center;
    text-decoration: none;
    margin: 0 auto;
    width: 420px;
    height: 44px;
    border-radius: 44px;
    line-height: 44px;
}

.divingpage .block.recommend.divingpoint {
    padding-top: 0px;
}

.divingpage .block.recommend.divingpoint h2 {
    background: #fff;
    padding-top: 20px;
    margin-left: 5px;
    margin-right: 5px;
}

.divingpage .block.recommend.divingpoint h3 {
    margin: 0px 5px 0px 5px;
    background: #fff;
    padding-top: 8px;
    padding-bottom: 20px;
}

.divingpage .block.recommend.divingpoint ul {
    margin-top: 10px;
}

.divingpage .block.recommend.divingpoint ul li {
    width: 50%;
}

.divingpage .block.recommend.divingpoint ul li h4 {
    text-align: left;
    padding: 0 18px;
    margin: 15px 0 5px 0;
}

.divingpage .block.recommend.divingpoint ul li .descr {
    padding-bottom: 18px;
    font-size: 1.3rem;
    line-height: 1.4em;
}

.divingpage .block.recommend.divingpics {
    margin-top: 20px;
}

.divingpage .block.recommend.divingpics ul li {
    width: 25%;
}

.divingpage .block.recommend.divingpics ul li .descr {
    padding-top: 10px;
    padding-bottom: 10px;
    font-size: 1.3rem;
    line-height: 1.4em;
}

.divingpage .block.recommend.ikimonolist {
}

.divingpage .block.recommend.ikimonolist ul li {
    width: 16.666666%;
}

.divingpage .block.recommend.ikimonolist ul li h4 {
    font-size: 1.4rem;
    font-weight: bold;
    text-align: left;
    margin: 0;
    padding: 10px 10px 5px 10px;
}

.divingpage .block.recommend.ikimonolist ul li .descr {
    padding: 0 10px 10px 10px;
    font-size: 1.2rem;
}

.divingpage .block.recommend.divingpoint .btn a:hover {
    background: url(../../images/icon-search.png) right 22px center no-repeat #17ad93;
    background-size: 22px 22px;
}

.divingpage .block.gallery {
    padding: 0 5px;
    margin-top: 35px;
}

.divingpage .block.gallery ul {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    background: #fff;
    padding: 20px 15px 10px 15px;
    margin: 15px 5px 0px 5px;
}

.divingpage .block.gallery ul p {
    margin: 0 5px;
}

.divingpage .block.gallery ul li {
    width: 12.5%;
    background: none;
    padding: 0;
    margin: 0 0 10px 0;
    display: block;
}

.divingpage .block.gallery ul li a {
    padding-top: 56.25%;
    width: 100%;
    display: block;
    background-position: center center;
    background-size: cover;
    position: relative;
}

.divingpage .block.movie {
    padding: 30px 10px 0 10px;
    margin: 0px 10px 10px 10px;
}

.divingpage .block.movie ul {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    margin: 15px 0px 0 0px;
    background: #fff;
    padding: 0 5px;
}

.divingpage .block.movie ul li {
    background: none;
    width: 40%;
    display: block;
    padding: 0;
    margin: 0;
}

.divingpage .block.movie ul li > div {
    margin: 0 5px;
    padding: 0 0 20px 0;
    background: #fff;
}

.divingpage .block.experience {
    margin: 0px 10px 10px 10px;
    background: #fff;
    padding-top: 30px;
}

.divingpage .block.experience .whiteblock {
    background: #fff;
    padding: 10px 0px 20px;
    margin-top: 15px;
}

.divingpage .block.experience .whiteblock p {
    font-size: 1.4rem;
    padding: 0 80px;
    margin-bottom: 15px;
}

.divingpage .block.experience ul {
    display: -webkit-flex;
    display: flex;
    padding: 10px 10px 0 10px;
}

.divingpage .block.experience ul li {
    width: 33.33%;
}

.divingpage .block.experience ul li div {
    padding: 0 10px;
}

.divingpage .block.experience ul li img {
    width: 100%;
    height: auto;
}

.divingpage .block.ikimono {
    margin: 10px 10px;
    background: #fff;
    padding-top: 30px;
}

.divingpage .block.ikimono > div {
    padding: 20px 10px 10px 10px;
    display: -webkit-flex;
    display: flex;
    font-size: 1.4rem;
}

.divingpage .block.ikimono .pic {
    width: 50%;
}

.divingpage .block.ikimono .pic img {
    width: 100%;
    height: auto;
}

.divingpage .block.ikimono > div div {
    padding-left: 30px;
    padding-top: 30px;
}

.divingpage p.ikimono a {
    height: 44px;
    width: 400px;
    margin: 20px auto;
    border-radius: 44px;
    line-height: 44px;
    display: block;
    color: #fff;
    font-weight: bold;
    text-decoration: none;
    padding: 0 100px 0 100px;
    font-size: 1.5rem;
    text-align: center;
}

.divingpage p.ikimono.nt a {
    margin-top: 10px;
}

.divingpage p.ikimono a {
    background: url(../../images/icon-arrlwhite.png) right 22px center no-repeat #68cebc;
    background-size: 22px 22px;
}

.divingpage p.ikimono a:hover {
    background: url(../../images/icon-arrlwhite.png) right 22px center no-repeat #17ad93;
    background-size: 22px 22px;
}

.weddingtop {
    position: relative;
}

.weddingtop .mainvis {
    position: relative;
}

.weddingtop .mainvis .flbx {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
}

.weddingtop .mainvis .flbx > div {
    width: 32%;
    margin: 10px 10px 10px 0;
    background-color: rgba(255, 255, 255, 0.8);
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: space-around;
    justify-content: space-around;
}

.weddingtop .mainvis .flbx > div h3 {
    font-size: 2.4rem;
    line-height: 1.5em;
    font-weight: bold;
    color: #e04b92;
    padding: 10px 15px 0 15px;
}

.weddingtop .mainvis .flbx > div p {
    font-size: 1.5rem;
    padding: 0 20px;
}

.weddingtop .mainvis .flbx > div p:last-child {
    padding-bottom: 20px;
}

.weddingtop .mainvis img {
    width: 100%;
    height: auto;
}

.weddingtop .flowers {
    position: absolute;
    top: 120px;
    right: 0;
    z-index: 400;
    text-align: right;
}

.weddingtop .flowers img {
    width: 100%;
    height: auto;
}

.weddingtop .block p.lead {
    font-size: 1.4rem;
    text-align: center;
    padding-top: 20px;
}

.weddingtop .block.resort h3 {
    margin-bottom: 0px;
}

.weddingtop .block.resort p.lead {
    padding: 20px 80px 0 80px;
    text-align: left;
}

.weddingtop .block.resort h2 + p.lead {
    padding-top: 15px;
}

.weddingtop .block.location h2,
.weddingtop .block.photo h2,
.weddingtop .block.dress h2 {
    margin-bottom: 20px;
}

.weddingtop .block.campaign h2 {
    margin-bottom: 0;
}

.weddingtop .block {
    padding: 0 5px;
    margin-top: 30px;
}

.weddingtop .block.location p.lead {
    padding-top: 0;
}

.weddingtop .block.location ul {
    display: -webkit-flex;
    display: flex;
    margin-top: 25px;
}

.weddingtop .block.location ul li {
    width: 33.3333%;
    display: -webkit-flex;
    display: flex;
}

.weddingtop .block.location ul li .pic img {
    width: 100%;
    height: auto;
}

.weddingtop .block.location ul li > div {
    flex: 1;
    margin: 0 5px;
    background: #fff;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
}

.weddingtop .block.location ul li h4 {
    font-size: 1.6rem;
    font-weight: bold;
    text-align: center;
    margin: 15px 0;
}

.weddingtop .block.location ul li .descr {
    font-size: 1.4rem;
    padding: 0 18px;
}

.weddingtop .block.location ul li .btn {
    margin: auto auto 0 auto;
    width: 200px;
    text-align: center;
    padding: 20px 0;
}

.weddingtop .block.location ul li .btn a {
    display: block;
    border: 1px solid #f0a0c6;
    border-radius: 36px;
    height: 36px;
    line-height: 36px;
    background: url(../../images/icon-arrpink.png) right 18px center no-repeat;
    background-size: 18px 18px;
    text-decoration: none;
    color: #e577ab;
    font-weight: bold;
    font-size: 1.5rem;
}

.weddingtop .block.location ul li .btn a:hover {
    color: #fff;
    background: url(../../images/icon-arrlwhite.png) right 18px center no-repeat #e577ab;
    background-size: 18px 18px;
}

.weddingtop .block.photo {
    margin-top: 10px;
}

.weddingtop .block.photo > div {
    background: url(../../images/wedding-photovis.jpg) right top no-repeat #fff;
    margin: 0 5px;
    padding: 40px 5px 10px 5px;
}

.weddingtop .block.photo .recommend {
    border: 1px solid #f4a6cb;
    background-color: rgba(255, 255, 255, 0.502);
    padding: 25px 25px 15px 25px;
    width: 70%;
    margin: 45px auto;
}

.weddingtop .block.photo .recommend > p {
    font-size: 1.8rem;
    font-weight: bold;
    text-align: center;
    color: #f377b2;
    margin-bottom: 25px;
}

.weddingtop .block.photo .recommend ul li {
    list-style: none;
    font-size: 1.4rem;
    margin-bottom: 10px;
    margin-left: 25px;
}

.weddingtop .block.photo .recommend ul li:before {
    content: '';
    width: 8px;
    height: 8px;
    display: inline-block;
    border-radius: 100%;
    background: #f4a6cb;
    position: relative;
    left: -10px;
    top: -2px;
}

.weddingtop .block.photo ul.area {
    display: -webkit-flex;
    display: flex;
}

.weddingtop .block.photo ul.area li {
    width: 33.3333%;
    display: -webkit-flex;
    display: flex;
}

.weddingtop .block.photo ul.area li > div {
    flex: 1;
    margin: 0 5px;
    background: url(../../images/icon-trianglecorner-pink.png) right bottom no-repeat #fff5fa;
    background-size: 16px 16px;
    padding-bottom: 10px;
}

.weddingtop .block.photo ul.area li .pic img {
    width: 100%;
    height: auto;
}

.weddingtop .block.photo ul.area li h4 {
    font-size: 1.6rem;
    font-weight: bold;
    text-align: center;
    padding: 15px 0 10px 0;
}

.weddingtop .block.photo ul.area li p:last-child {
    padding: 0 20px 10px 20px;
    font-size: 1.4rem;
}

.weddingtop .block.dress {
    margin-top: 10px;
}

.weddingtop .block.dress > div {
    margin: 0 5px;
}

.weddingtop .block.dress .sp {
    display: none;
}

.weddingtop .block.dress > div > div {
    background: url(../../images/wedding-dress.jpg) 0 0 no-repeat #fff;
    min-height: 330px;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
}

.weddingtop .block.dress .txt {
    width: 45%;
    padding-top: 40px;
    font-size: 1.4rem;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    overflow: hidden;
}

.weddingtop .block.dress .txt h2 {
    text-align: center;
    margin-right: 110px;
}

.weddingtop .block.dress .btn {
    width: 200px;
    text-align: center;
    padding: 30px 110px 40px 110px;
}

.weddingtop .block.dress .btn a {
    display: block;
    border: 1px solid #f0a0c6;
    border-radius: 36px;
    height: 36px;
    line-height: 36px;
    background: url(../../images/icon-arrpink.png) right 18px center no-repeat #fff;
    background-size: 18px 18px;
    text-decoration: none;
    color: #e577ab;
    font-weight: bold;
    font-size: 1.5rem;
}

.weddingtop .block.dress .btn a:hover {
    color: #fff;
    background: url(../../images/icon-arrlwhite.png) right 18px center no-repeat #e577ab;
    background-size: 18px 18px;
}

.weddingtop .block.campaign {
    padding-top: 30px;
    margin: 10px 10px 0 10px;
}

.weddingtop .campaign > div {
    width: 90%;
    margin: 0px auto 40px auto;
}

.weddingtop .campaign p.lead {
    padding: 15px 0 25px 0;
}

.weddingtop .campaign li p.tag {
    background: #fa9cc9;
}

.weddingtop .campaign .bx-wrapper .bx-prev {
    background: url(../../images/icon-sliderprev-pink.png) 0 0 no-repeat;
    background-size: 20px 20px;
}

.weddingtop .campaign .bx-wrapper .bx-next {
    background: url(../../images/icon-slidernext-pink.png) 0 0 no-repeat;
    background-size: 20px 20px;
}

.weddingtop .campaign .bx-wrapper .bx-pager.bx-default-pager a:hover, .weddingtop .campaign .bx-wrapper .bx-pager.bx-default-pager a.active {
    background: #f377b2;
}

.islandtop .block.campaign {
    padding-top: 15px;
    margin: 10px 10px 0 10px;
}

.islandtop .campaign > div {
    width: 90%;
    margin: 0px auto 40px auto;
}

.islandtop .campaign p.lead {
    padding: 15px 0 25px 0;
    font-size: 1.4rem;
    text-align: center;
}

.islandtop .campaign li p.tag {
    background: #69aae4;
}

.islandtop .campaign .bx-wrapper .bx-prev {
    background: url(../../images/icon-sliderprev.png) 0 0 no-repeat;
    background-size: 20px 20px;
}

.islandtop .campaign .bx-wrapper .bx-next {
    background: url(../../images/icon-slidernext.png) 0 0 no-repeat;
    background-size: 20px 20px;
}

.islandtop .campaign .bx-wrapper .bx-pager.bx-default-pager a:hover, .islandtop .campaign .bx-wrapper .bx-pager.bx-default-pager a.active {
    background: #2283d8;
}

.weddingtop .mainvis .wedttl {
    position: absolute;
    bottom: 20px;
    left: 30px;
    text-align: left;
}

.weddingtop .mainvis .wedttl h3 {
    color: #fff;
    font-family: 'Open Sans';
    font-size: 4.0rem;
    line-height: 1.4em;
}

.weddingtop .mainvis .wedttl p {
    color: #fff;
    font-size: 1.6rem;
}

.weddingtop .block.resort ul {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 20px;
}

.weddingtop .block.resort ul li {
    width: 20%;
    display: -webkit-flex;
    display: flex;
    margin-bottom: 10px;
}

.weddingtop .block.resort ul li .pic {
    min-height: 1px;
}

.weddingtop .block.resort ul li .pic img {
    width: 100%;
    height: auto;
}

.weddingtop .block.resort ul li > div {
    flex: 1;
    margin: 0 5px;
    background: #fff;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    background: url(../../images/icon-trianglecorner-pink.png) right bottom no-repeat #fff;
    background-size: 16px 16px;
    padding-bottom: 10px;
}

.weddingtop .block.resort ul li h4 {
    font-size: 1.3rem;
    line-height: 1.6em;
    font-weight: bold;
    text-align: center;
    margin: 10px 5px 8px 5px;
}

.weddingtop .block.resort ul li .price {
    font-size: 1.3rem;
    color: #f08629;
    padding: 0 12px;
}

.weddingtop .block.resort ul li .descr {
    font-size: 1.3rem;
    padding: 0 12px;
}

.weddingtop .block.plans {
    margin-top: 10px;
    margin: 0px 10px 0 10px;
    background: #fff;
    padding: 10px 5px;
}

.weddingtop .block.plans ul {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}

.weddingtop .block.plans ul li {
    width: 33.3333333%;
    display: -webkit-flex;
    display: flex;
}

.weddingtop .block.plans ul li .pic {
    min-height: 1px;
}

.weddingtop .block.plans ul li .pic img {
    width: 100%;
    height: auto;
}

.weddingtop .block.plans ul li > div {
    flex: 1;
    margin: 0 5px;
    background: #fff;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    background: url(../../images/icon-trianglecorner-pink.png) right bottom no-repeat #fff5fa;
    background-size: 16px 16px;
    padding-bottom: 10px;
}

.weddingtop .block.plans ul li h4 {
    font-size: 1.6rem;
    font-weight: bold;
    text-align: center;
    margin: 10px 10px;
}

.weddingtop .block.plans ul li .descr {
    font-size: 1.4rem;
    padding: 0 12px;
}

.weddingtop .headinfo {
    padding: 40px 50px;
    background: #fff;
    margin: 10px 10px 0 10px;
}

.weddingtop .headinfo .pic {
    margin-right: 30px;
}

.weddingtop .headinfo .ttl {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: space-around;
    justify-content: space-around;
}

.weddingtop .headinfo h3 {
    font-family: 'Open Sans', sans-serif;
    font-size: 3.6rem;
    font-weight: normal;
    line-height: 1.0em;
}

.weddingtop .headinfo h3 span {
    font-size: 2.0rem;
}

.weddingtop .headinfo .link {
    font-size: 1.8rem;
    text-align: left;
}

.weddingtop .headinfo .link a {
    color: #333;
}

.weddingtop .headinfo h4 {
    font-size: 2.0rem;
    margin-bottom: 15px;
    margin-top: 10px;
    color: #1487d8;
    font-weight: bold;

}

.weddingtop .headinfo .lead {
    font-size: 1.4rem;
}

.weddingtop .headinfo .btns {
    -webkit-align-items: center;
    align-items: center;
}

.weddingtop .headinfo p.tour {
    width: 280px;
    margin-right: 20px;
}

.weddingtop .headinfo p.tour a {
    height: 36px;
    border-radius: 36px;
    line-height: 36px;
    display: block;
    color: #fff;
    font-weight: bold;
    text-decoration: none;
    padding: 0 50px 0 30px;
    font-size: 1.5rem;
    text-align: center;
}

.weddingtop .headinfo p.tour a {
    background: url(../../images/icon-search.png) right 18px center no-repeat #2283d8;
    background-size: 17px 17px;
}

.weddingtop .headinfo p.wed {
    width: 320px;
    margin-right: 20px;
}

.weddingtop .headinfo p.wed a {
    height: 36px;
    border-radius: 36px;
    line-height: 36px;
    display: block;
    color: #fff;
    font-weight: bold;
    text-decoration: none;
    padding: 0 50px 0 30px;
    font-size: 1.5rem;
    text-align: center;
}

.weddingtop .headinfo p.wed a {
    background: url(../../images/icon-arrlwhite.png) right 18px center no-repeat #f08629;
    background-size: 14px 14px;
}

.weddingtop .block.gallery {
    padding: 0 5px;
    margin-top: 10px;
}

.weddingtop .block.gallery ul {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    background: #fff;
    padding: 10px 5px 0px 5px;
    margin: 0px 5px 0px 5px;
}

.weddingtop .block.gallery ul p {
    margin: 0 5px;
}

.weddingtop .block.gallery ul li {
    width: 25%;
    background: none;
    padding: 0;
    margin: 0 0 10px 0;
    display: block;
}

.weddingtop .block.gallery.photog ul {
    margin-bottom: 10px;
    margin-top: 20px;
}

.weddingtop .block.gallery.photog ul li {
    width: 12.5%;
}

.weddingtop .block.gallery ul li a {
    padding-top: 56.25%;
    width: 100%;
    display: block;
    background-position: center center;
    background-size: cover;
    position: relative;
}

.weddingtop .block.information {
    margin: 10px 0;
    padding-top: 10px;
}

.weddingtop .block.information h2 {
    margin-bottom: 20px;
}

.weddingtop .block.information .flbox {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;

}
@media screen and (min-width:769px) {
  .weddingtop .block.information .flbox {
     margin-bottom: 10px;
   }
}

.weddingtop .block.information .flbox > div {
    width: 50%;
    display: -webkit-flex;
    display: flex;
}

.weddingtop .block.information .flbox > div > div {
    flex: 1;
    margin: 0 5px;
    background: #fff;
    padding: 10px 20px 20px 20px;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
}

.weddingtop .block.information .flbox .linedimg {
    display: block;
    overflow: hidden;
    padding: 0;
    background: none;
}

.weddingtop .block.information .flbox .linedimg img {
    float: left;
    width: 49%;
    height: auto;
}

.weddingtop .block.information .flbox .linedimg img:first-child {
    width: 100%;
    margin-bottom: 10px;
}

.weddingtop .block.information .flbox .linedimg img:last-child {
    float: right;
}

.weddingtop .block.information .flbox .oppics {
    padding: 0 !important;
    background: none !important;
}

.weddingtop .block.information .flbox .oppics > div {
    padding: 0 !important;
    background: none !important;
    display: block;
    width: 95%;
}

.weddingtop .block.information .flbox .oppics p img {
    width: 100%;
    height: auto;
}

.weddingtop .block.information .flbox .oppics ul.thumbs {
    margin: 5px 0 0 0;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}

.weddingtop .block.information .flbox .oppics ul.thumbs li {
    width: 24%;
}

.weddingtop .block.information .flbox .oppics ul.thumbs li img {
    width: 100%;
    height: auto;

}

.weddingtop .block.information .flbox > div.video > div {
    margin: 0 5px;
    background: none;
    padding: 0;
}

.weddingtop .block.information .flbox > div.pic > p {
    margin: 0 5px;
    background: none;
    padding: 0;
}

.weddingtop .block.information .flbox > div.pic > p img {
    width: 100%;
    height: auto;
}

.weddingtop .block.information .flbox > div.data > div {
    flex: 1;
    margin: 0 5px;
    background: #fff;
    padding: 10px;
    display: block;
}

.weddingtop .block.information .flbox h3 {
    text-align: left;
    font-weight: bold;
    font-size: 1.8rem;
    margin-bottom: 10px;
}

.weddingtop .block.information .flbox p {
    font-size: 1.4rem;
}

.weddingtop .block.information .flbox p.opttl {
    font-size: 1.3rem;
    margin-top: 8px;
}

.weddingtop .block.information .flbox p.opttl + h3 {
    margin-top: 0;
}

.weddingtop .block.information .flbox .btn {
    margin: auto auto 0 auto;
    width: 300px;
    text-align: center;
    padding-top: 20px;
}

.weddingtop .block.information .flbox .btn.big {
    width: 90%;
}

.weddingtop .block.information .flbox .btn a {
    display: block;
    border: 1px solid #f0a0c6;
    border-radius: 36px;
    height: 36px;
    line-height: 36px;
    background: url(../../images/icon-arrpink.png) right 18px center no-repeat;
    background-size: 18px 18px;
    text-decoration: none;
    color: #e577ab;
    font-weight: bold;
    font-size: 1.5rem;
}

.weddingtop .block.information .flbox .btn a:hover {
    color: #fff;
    background: url(../../images/icon-arrlwhite.png) right 18px center no-repeat #e577ab;
    background-size: 18px 18px;
}

.weddingtop .block.information > .btn {
    margin-top: 20px;
    margin-bottom: 20px;
}

.weddingtop .block.information > .btn a {
    display: block;
    background: url(../../images/icon-arrlwhite.png) right 22px center no-repeat #f4a6cb;
    background-size: 22px 22px;
    font-size: 1.3rem;
    font-weight: bold;
    color: #fff;
    text-align: center;
    text-decoration: none;
    margin: 0 auto;
    width: 420px;
    height: 44px;
    border-radius: 44px;
    line-height: 44px;
}

.weddingtop .block.information > .btn a:hover {
    background: url(../../images/icon-arrlwhite.png) right 22px center no-repeat #f377b2;
    background-size: 22px 22px;
}

.weddingtop .block.information table {
    width: 100%;
    font-size: 1.3em;
    margin-bottom: 0px;
}

.weddingtop .block.information table:last-child {
    margin-bottom: 0;
}

.weddingtop .block.information table th,
.weddingtop .block.information table td {
    padding: 8px 10px;
    border: 1px solid #cccccc;
    border-collapse: collapse;
}

.weddingtop .block.information table th {
    background: #f3f3f3;
    font-weight: normal;
    vertical-align: top;
    white-space: nowrap;
}

.weddingtop .block.information table td {
    background: #fff;
}

.weddingtop .maychange {
    font-size: 1.4rem;
    padding: 0 10px;
    margin-top: 10px;
}

.weddingtop .block.information > .tourbtn {
    margin-top: 20px;
    margin-bottom: 20px;
}

.weddingtop .block.information > .tourbtn a {
    display: block;
    background: url(../../images/icon-arrlwhite.png) right 22px center no-repeat #2283d8;
    background-size: 22px 22px;
    font-size: 1.5rem;
    font-weight: bold;
    color: #fff;
    text-align: center;
    text-decoration: none;
    margin: 0 auto;
    width: 420px;
    height: 44px;
    border-radius: 44px;
    line-height: 44px;
}

.weddingtop .block.information > .tourbtn a:hover {
    background: url(../../images/icon-arrlwhite.png) right 22px center no-repeat #499ce4;
    background-size: 22px 22px;
}

.weddingtop .block.information > .tourbtnwht {
    margin-top: 20px;
    margin-bottom: 20px;
}

.weddingtop .block.information > .tourbtnwht a {
    display: block;
    background: url(../../images/icon-arrblue.png) right 22px center no-repeat #fff;
    background-size: 22px 22px;
    font-size: 1.5rem;
    font-weight: bold;
    color: #2283d8;
    text-align: center;
    text-decoration: none;
    margin: 0 auto;
    border: 1px solid #2283d8;
    width: 420px;
    height: 44px;
    border-radius: 44px;
    line-height: 44px;
}

.weddingtop .block.information > .tourbtnwht a:hover {
    opacity: 0.8;/*要素の透明度を指定*/
}

.weddingtop .block.agent {
    margin: 10px;
    background: #fff;
    padding: 30px 60px;
    text-align: left;
    font-size: 1.4rem;
}



.weddingtop .block.agent p.bnr {
    margin-top: 15px;
}

.weddingtop .block.agent p {
    margin-bottom: 10px;
}

.weddingtop .block.agent p:last-child {
    margin-bottom: 0;
}

table.type09 {
    border-collapse: collapse;
    text-align: left;
    line-height: 1.5;

}

table.type09 thead th {
    padding: 10px;
    font-weight: bold;
    vertical-align: top;
    color: #369;
    border-bottom: 3px solid #036;
}

table.type09 tbody th {
    width: 150px;
    padding: 10px;
    font-weight: bold;
    vertical-align: top;
    border-bottom: 1px solid #ccc;
    background: #f3f6f7;
}

table.type09 td {
    width: auto;
    padding: 10px;
    vertical-align: middle;
    border: 1px solid #ccc;
    min-width: 200px;
}

table.type09 td.title p {
    text-align: center;
    margin-top: 10px;
}

table.type09 td.detail p {
    text-align: center;
    margin-top: 10px;
}

table.type09 td.price {
    min-width: 100px;
}

table.type09 td img {
    border: 1px solid #ccc;
    max-width: 100%;
}

table.type09 td.header {
    background-color: #336699;
    color: #FFF;
    font-weight: bold;
    font-size: 1.6rem;
}

table.type09 td.header span {
    font-weight: normal;
    font-size: 1.2rem;
}

.contents .contactbox > h2 {
    background: #fff;
    font-family: 'Open Sans', sans-serif;
    font-size: 3.5rem;
    font-weight: normal;
    padding-left: 15px;
    height: 68px;
    line-height: 68px;
}

.block.contactlead {
    padding-top: 20px;
    font-size: 1.4rem;
}

.block.contactlead > p {
    text-align: center;
}

.block.contactlead h2 {
    margin-top: 30px;
    margin-bottom: 20px;
}

.block.contactlead h2 span {
    letter-spacing: 0;
}

.block.contactlead .cnttabs {
    margin: 30px 10px 0 10px;
    display: -webkit-flex;
    display: flex;
}

.block.contactlead .cnttabs li {
    font-size: 1.6rem;
    margin-right: 5px;
}

.block.contactlead .cnttabs li a {
    border-bottom: none;
    background: #fff;
    padding: 5px 20px;
    display: block;
    text-decoration: none;
}

.block.contactlead .cnttabs li a.is_active {
    background: #2283d8;
    color: #fff;
}

.contactbox .mainvis img {
    width: 100%;
    height: auto;
}

.contactbox .tab-content {
    background: #fff;
    margin: 0 10px 10px 10px;
    padding: 55px 55px 0px 55px;
}

.contactbox .tab-content.thanks {
    padding-bottom: 55px;
}

.contactbox .tab-content.thanks h2 {
    font-weight: bold;
    font-size: 2.0rem;
    margin-bottom: 15px;
}

.contactbox .tab-content.thanks p {
    font-size: 1.5rem;
}

.contactbox .tab-content .block {
    padding-top: 0;
}

.contactbox .lead {
    font-size: 1.4rem;
}

.contactbox .lead span {
    color: #d91111;
}

.contactbox .type {
    font-size: 1.4rem;
    padding: 15px 0;
    border-bottom: 1px solid #ccc;
}

.contactbox dl {
    display: -webkit-flex;
    display: flex;
    font-size: 1.5rem;
    padding: 15px 0;
    border-bottom: 1px solid #ccc;
}

.contactbox dt {
    width: 25%;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
}

.contactbox dt span {
    color: #d91111;
    padding-left: 5px;
}

.contactbox dd {
    font-size: 1.5rem;
    width: 73%;
    padding-left: 2%;
}

.contactbox .plrd dd {
    width: 100%;
    padding-left: 0;
}

.contactbox .plrd dd p {
    margin-bottom: 10px;
}

.contactbox .plrd dd li {
    list-style: disc;
    margin-left: 20px;
}

.contactbox dd input[type="text"],
.contactbox dd input[type="email"] {
    background-color: #ffffff;
    padding: 10px;
    border: 1px solid #ccc;
    margin: 0 5px 0 0;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    width: 50%;
    font-size: 100%;
}

.contactbox dd input::-webkit-input-placeholder {
    color: #ddd;
}

.contactbox dd input::-ms-input-placeholder {
    color: #ddd;
}

.contactbox dd input::-moz-placeholder {
    color: #ddd;
}

.contactbox dd input.caljs {
    width: 15% !important;
}

.contactbox dd input.num {
    width: 10% !important;
}

.contactbox h4 {
    font-size: 1.5rem;
    font-weight: bold;
}

.contactbox dd textarea {
    background-color: #ffffff;
    padding: 10px;
    border: 1px solid #ccc;
    margin: 0 5px 0 0;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    width: 95%;
    font-size: 100%;
}

.contactbox dd i {
    color: #999;
}

.contactbox dd .chuui {
    font-size: 1.2rem;
    color: #999;
    margin-top: 10px;
}

.contactbox dd p + p {
    margin-top: 5px;
}

.contactbox p.btn {
    display: -webkit-flex;
    display: flex;
}

.contactbox p.btn a {
    height: 44px;
    width: 400px;
    margin: 30px auto;
    border-radius: 44px;
    line-height: 44px;
    display: block;
    color: #fff;
    font-weight: bold;
    text-decoration: none;
    padding: 0 100px 0 100px;
    font-size: 1.5rem;
    text-align: center;
}

.contactbox p.btn a {
    background: url(../../images/icon-arrlwhite.png) right 22px center no-repeat #2283d8;
    background-size: 22px 22px;
}

.contactbox p.btn a:hover {
    background: url(../../images/icon-arrlwhite.png) right 22px center no-repeat #499ce4;
    background-size: 22px 22px;
}

.contactbox p.btn button {
    height: 44px;
    width: 400px;
    margin: 30px auto;
    border-radius: 44px;
    line-height: 44px;
    display: block;
    color: #fff;
    font-weight: bold;
    text-decoration: none;
    padding: 0 100px 0 100px;
    font-size: 1.5rem;
    text-align: center;
    border: 0;
}

.contactbox p.btn button:hover {
    background: #ccc;
}

.contactbox p.btn button + a {
    width: 400px;
}

.block.ticket p.lead {
    text-align: center;
    font-size: 1.4rem;
    margin-bottom: 20px;
    padding: 0 60px;
}

.block.ticket ul {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}

.block.ticket ul li {
    margin-bottom: 10px;
    width: 100%;
}

.block.ticket ul li > div {
    flex: 1;
    margin: 0 5px;
    background: #fff;
    background-size: 16px 16px;
    font-size: 1.3rem;
    padding: 10px;
    display: -webkit-flex;
    display: flex;
}

.block.ticket ul li .pic {
    min-width: 44%;
    max-width: 44%;
    margin-right: 15px;
}

.block.ticket ul li .pic img {
    width: 100%;
    height: auto;
}

.block.ticket ul li .info {
    padding: 5px 20px 10px 10px;
    flex: 1;
    font-size: 1.4rem;
}

.block.ticket ul li .info h4 {
    font-size: 2.0rem;
    line-height: 1.3em;
    margin-bottom: 15px;
}

.block.dresscp {
    margin-top: 20px;
}

.block.dresscp ul {
    margin: 2px 5px 0 5px;
}

.block.dresscp ul li {
    background: #fff;
    padding: 10px;
    margin-bottom: 10px;
    font-size: 1.4rem;
}

.block.dresscp ul li > div {
    display: -webkit-flex;
    display: flex;
}

.block.dresscp ul li .pic {
    min-width: 44%;
    max-width: 44%;
    margin-right: 15px;
}

.block.dresscp ul li .pic img {
    width: 100%;
    height: auto;
}

.block.dresscp ul li .info {
    padding: 5px 20px 10px 10px;
    flex: 1;
}

.block.dresscp ul li .info h4 {
    font-size: 2.0rem;
    line-height: 1.3em;
}

.block.dresscp ul li .info h4 + p {
    margin-top: 15px;
}

.block.dresscp ul li .info p + p {
    margin-top: 10px;
}

.block.dresscp .price {
    color: #f08629;
}

.onewhite {
    background: #fff;
    padding: 30px;
    margin: 0 10px 10px 10px;
    overflow: hidden;
}

.onewhite table {
    width: 100%;
    font-size: 1.4em;
    margin-bottom: 15px;
}

.onewhite table:last-child {
    margin-bottom: 0;
}

.onewhite table th,
.onewhite table td {
    padding: 8px 10px;
    border: 1px solid #cccccc;
    border-collapse: collapse;
}

.onewhite table th {
    background: #f3f3f3;
    font-weight: bold;
    vertical-align: top;
    white-space: nowrap;
    width: 25%;
}

.onewhite table td {
    background: #fff;
}

.onewhite p {
    font-size: 1.4rem;
    margin-bottom: 15px;
}

.onewhite h4 {
    font-size: 1.6rem;
    font-weight: bold;
    margin-bottom: 10px;
}

.onewhite p + h4 {
    margin-top: 25px;
}

.onewhite ul li {
    list-style: disc;
    margin-left: 20px;
    font-size: 1.4rem;
}

.onewhite ul li:last-child {
    margin-bottom: 25px;
}

.onewhite ul li ul li {
    list-style: circle;
}

.onewhite ul li ul li ul li {
    list-style: square;
}

.onewhite ul li ul li:last-child {
    margin-bottom: 0;
}

.onewhite .btn {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-around;
    justify-content: space-around;
    width: 80%;
    margin: 0 auto;
}

.onewhite .btn a {
    height: 44px;
    width: 290px;
    margin: 30px auto;
    border-radius: 44px;
    line-height: 44px;
    display: block;
    color: #fff;
    font-weight: bold;
    text-decoration: none;
    padding: 0 60px 0 60px;
    font-size: 1.5rem;
    text-align: center;
    border: 0;
    background: #2283d8;
}

.onewhite .btn a:hover {
    background: #69aae4;
}

.toursearch.pop {
    margin-bottom: 0 !important;
}

.toursearch.pop .srcharea {
    text-align: left;
    padding: 25px 40px;
}

.toursearch.pop .srcharea .col dl dt {
    white-space: nowrap;
}

.freebox ul {
    list-style: outside disc none;
    padding-left: 20px;
    margin-bottom: 20px;
}

.freebox ul li {
    list-style: outside disc none;
    margin-bottom: 10px;
    font-size: 1.2rem;
}

.disnon {
    display: none;
}

.block.special .lead {
    font-size: 1.4rem;
    text-align: center;
    padding-bottom: 20px;
}

ul.specialpoints {
    padding: 0 5px;
}

ul.specialpoints li {
    background: #fff;
    padding: 10px;
    font-size: 1.4rem;
    margin-bottom: 10px;
    display: -webkit-flex;
    display: flex;
}

ul.specialpoints li .pic {
    margin-right: 15px;
    width: 44%;
}

ul.specialpoints li .pic img {
    width: 100%;
    height: auto;
}

ul.specialpoints li .info {
    font-size: 1.5rem;
    text-align: left;
    padding: 5px 20px 10px 10px;
    flex: 1;
}

ul.specialpoints li .info p {
    margin-bottom: 10px;
}

ul.specialpoints li h4 {
    font-size: 1.8rem;
    margin-bottom: 5px;
}

.specialbtn {
    margin-top: 20px;
    margin-bottom: 20px;
}

.specialbtn a {
    display: block;
    background: url(../../images/icon-arrlwhite.png) right 22px center no-repeat #2283d8;
    background-size: 22px 22px;
    font-size: 1.5rem;
    font-weight: bold;
    color: #fff;
    text-align: center;
    text-decoration: none;
    margin: 0 auto;
    width: 420px;
    height: 44px;
    border-radius: 44px;
    line-height: 44px;
}

.specialbtn a:hover {
    background: url(../../images/icon-arrlwhite.png) right 22px center no-repeat #499ce4;
    background-size: 22px 22px;
}

.oneblock .btns {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-around;
    justify-content: space-around;
    margin-top: 20px;
}

.oneblock .btns p {
    width: 45%;
}

.oneblock .btns .dark a {
    display: block;
    background: url(../../images/icon-search.png) right 22px center no-repeat #0b599d;
    background-size: 22px 22px;
    font-size: 1.5rem;
    font-weight: bold;
    color: #fff;
    text-align: center;
    text-decoration: none;
    margin: 0 auto;
    height: 44px;
    border-radius: 44px;
    line-height: 44px;
}

.oneblock .btns .dark a:hover {
    background: url(../../images/icon-search.png) right 22px center no-repeat #2072b9;
    background-size: 22px 22px;
}

.oneblock .btns .light a {
    display: block;
    background: url(../../images/icon-search.png) right 22px center no-repeat #5da0d8;
    background-size: 22px 22px;
    font-size: 1.5rem;
    font-weight: bold;
    color: #fff;
    text-align: center;
    text-decoration: none;
    margin: 0 auto;
    height: 44px;
    border-radius: 44px;
    line-height: 44px;
}

.oneblock .btns .light a:hover {
    background: url(../../images/icon-search.png) right 22px center no-repeat #66aae1;
    background-size: 22px 22px;
}

img.fullimg,
img.pcfull {
    width: 100%;
    height: auto;
}

.stafflead {
    font-size: 1.4rem;
    margin-bottom: 25px;
    text-align: center;
}

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

table.paul {
    width: 100%;
}

table.paul th {
    background: #f3f3f3 none repeat scroll 0 0;
    font-weight: bold;
    vertical-align: top;
    white-space: nowrap;
    width: auto;
    padding: 10px;
    border: 1px solid #cccccc;
    text-align: center;
}

table.paul td.nichi {
    background: #f3f3f3 none repeat scroll 0 0;
    text-align: center;
}

table.paul td {
    border: 1px solid #cccccc;
    border-collapse: collapse;
    padding: 8px 10px;
}

table.paul th.kikou {
    min-width: 200px;
}

.block.error404 p {
    padding: 0 200px;
}

.catch_op {
    line-height: 1.4;
    font-size: 1.9rem;
    font-weight: bold;
    color: #1487d8;
}

.pcnone {
    display: none !important;
}

.weddingtop .footinfo {
    padding: 20px 20px;
    background: #fff;
    margin: 10px;
}

.weddingtop .footinfo h4 {
    color: #0a5da7;
    font-size: 2rem;
    font-weight: bold;
    line-height: 1.3em;
    margin-bottom: 15px;
    margin-top: 15px;
}

.weddingtop .footinfo ul {
    list-style: outside none disc;
    margin-bottom: 20px;
    padding-left: 20px;
}

.weddingtop .footinfo li {
    font-size: 1.2rem;
    list-style: outside none disc;
    margin-bottom: 10px;
}

.weddingtop .footinfo p {
    font-size: 1.3rem;
    padding-top: 10px;
}

.islandtop .recm {
    background: #fff;
    padding: 15px 0;
    margin-top: 10px !important;
    margin: 10px 10px;
}

.islandtop .block.vid {
    margin: 0;
    padding: 10px 0 0 0;
}

.divinglead h2 {
    margin-top: 30px;
}

.tourtag {
    padding: 2px;
    display: block;
    background-color: #0b599d;
    color: #FFF;
    text-align: center;
    font-size: 1.2rem;
    margin: 5px 0;
}

.tourtag_lb {
    padding: 2px;
    display: block;
    background-color: #5f98c3;
    color: #FFF;
    text-align: center;
    font-size: 1.2rem;
    margin: 5px 0;
}

.tourtag_pink {
    padding: 2px;
    display: block;
    background-color: #FF9AC5;
    color: #FFF;
    text-align: center;
    font-size: 1.2rem;
    margin: 5px 0;
}

.tourtag_green {
    padding: 2px;
    display: block;
    background-color: #99CC33;
    color: #FFF;
    text-align: center;
    font-size: 1.2rem;
    margin: 5px 0;
}

.tourtag_red {
    padding: 2px;
    display: block;
    background-color: #ea0621;
    color: #FFF;
    text-align: center;
    font-size: 1.2rem;
    margin: 5px 0;
}

.tourtag_orange {
    padding: 2px;
    display: block;
    background-color: #EB8B00;
    color: #FFF;
    text-align: center;
    font-size: 1.2rem;
    margin: 5px 0;
}

.tourtag_brown {
    padding: 2px;
    display: block;
    background-color: #663318;
    color: #FFF;
    text-align: center;
    font-size: 1.2rem;
    margin: 5px 0;
}

.fotorama {
    width: 65.66666%;
}

ul.voice_top {
    margin-left: 10px;
    display: -webkit-flex;
    display: flex;
    display: -ms-flex;
    flex-direction: column;
    justify-content: space-around;
    width: 100%;
}

ul.voice_top li {
    background: #fff url("../../images/icon-trianglecorner.png") no-repeat scroll right bottom / 16px 16px;
    position: relative;
    flex-grow: 1;
}

ul.voice_top li:first-of-type {
    margin-bottom: 3%;
}

ul.voice_top li span {
    font-size: 1.2rem;
    margin-bottom: 2px;
    display: block;
}

ul.voice_top li p.ttl1 {
    text-align: center;
    font-weight: bold;
    font-size: 1.4rem;
    padding-top: 8px;
}

ul.voice_top li p.ttl2 {
    text-align: center;
    font-weight: bold;
    font-size: 1.4rem;
}

ul.voice_top li p.ttl3 {
    text-align: center;
    font-weight: bold;
    font-size: 1.2rem;
}

ul.voice_top li p.ttl4 {
    text-align: center;
    font-weight: normal;
    font-size: 1.2rem;
}

ul.voice_top li p a {
    color: #333333;
}

ul.voice_top li p.btn {
    background: #fff none repeat scroll 0 0;
    border: 1px solid #2283d8;
    border-radius: 26px;
    font-size: 1.4em;
    font-weight: bold;
    height: 26px;
    line-height: 26px;
    margin: 3px auto;
    text-align: center;
    width: 85%;
    position: absolute;
    bottom: 10px;
    left: 0;
    right: 0
}

ul.voice_top li p.btn a {
    background: rgba(0, 0, 0, 0) url("../../images/icon-arrblue.png") no-repeat scroll right 10px center / 14px 14px;
    color: #2283d8;
    display: block;
    text-decoration: none;
}

ul.voice_top li p.btn a:hover {
    color: #fff;
    background: url(../../images/icon-arrlwhite.png) right 10px center no-repeat #2283d8;
    background-size: 14px 14px;
    border-radius: 26px;
}

ul.voice_top hr {
    color: #ccc;
    width: 90%;
}

.main {
    z-index: 1001;
}

.top_news_block {
    background: #FFF;
    padding: 10px auto;
    margin: 5px 5px 0;
}

.top_news {
    padding: 10px;
}

.top_news li {
    font-size: 1.5rem;
    border-bottom: 1px solid #e9e9e9;
    padding: 5px;
    /*display: flex;*/
}

.top_news li:last-child {
    border-bottom: none;
}

.top_news li p {
    /*max-width: 700px;*/
    display: block;
}

.top_news .news_label {
    background: #ccc;
    padding: 2px;
    margin: 0px 10px;
    color: #fff;
    font-size: 1.2rem;
    font-weight: bold;
    min-width: 90px;
    display: inline-block;
    text-align: center;
    height: 18px;
    line-height: 18px;
}

.footnews .news_label {
    background: #ccc;
    padding: 2px;
    margin: 0px;
    color: #fff;
    font-size: 1rem;
    font-weight: bold;
    min-width: 70px;
    display: inline-block;
    text-align: center;
    height: 15px;
}

.l_pink {
    background: #ed94bb !important;
}

.l_lb {
    background: #5f98c3 !important;
}

.l_blue {
    background: #1a538a !important;
}

.l_red {
    background: #ea0621 !important;
}

.l_green {
    background: #a8ded4 !important;
}

.fotorama__nav--dots {
    margin-top: 0px !important;
}

.infowrap {
    padding-bottom: 30px;
}

.side .menu li.contacts {
    padding: 0px 0;
}

.side .menu li.contacts span.sideC {
    padding: 5px 0 4px 0;
    font-size: 1.1rem;
    display: block;
}

.top_banner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin: 10px 5px;
}

.top_banner_ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 100%;
}

.top_banner_ul li img {
    width: 100%;
}

.sp_tex .btns {
    width: 95%;
    margin: 0 auto 40px auto;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
}

.sp_tex .btns p {
    width: 50%;
    margin: 0 10px;
    font-size: 1.8rem;
    line-height: 1.7em;
    font-weight: bold;
    text-align: center;
    background: #fff;
    border: 1px solid #f08629;
    height: 80px;
    border-radius: 80px;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: center;
    justify-content: center;
}

.sp_tex .btns p:last-child {
    background: #145493;
    border: 1px solid #145493;
    color: #fff;
}

.sp_tex .btns p:last-child:hover {
    background: #145493;
}

.sp_tex .btns p span {
    font-size: 2.4rem;
}

.sp_tex .btns p span.num {
    font-size: 3.0rem;
}

.sp_tex .btns p a {
    display: block;
    color: #f08629;
    background: url(../../images/icon-arrctc.png) right 20px center no-repeat;
    background-size: 26px 26px;
    text-decoration: none;
}

.sp_tex .btns p span.num a {
    color: #fff;
    background: none;
}

.sp_tex .btns p:hover {
    background: #f08629;
}

.sp_tex .btns p a:hover {
    background: url(../../images/icon-arrlwhite.png) right 20px center no-repeat #f08629;
    background-size: 26px 26px;
    color: #fff;
    border-radius: 80px;
}

.optext {
    font-size: 1.4rem;
    margin: -10px 30px 20px;
    text-align: center;
}

.islandtop .mapvisual .campbox ul {
    padding-bottom: 10px;
}

p.topbnr_txt {
    font-size: 1.5rem;
    text-align: left;
}

p.topbnr_txt a{
    color:#333333 !important;
}

p.is_bnr {
    margin: 40px 10px 0px 10px;
    text-align: center;
}

p.is_bnr_txt {
    margin-bottom: -20px;
    font-size: 1.6rem;
    padding: 5px 10px;
}

p.tourtitle {
    font-size: 1.7rem;
    line-height: 1.4;
    font-weight: bold;
    padding-top: 5px !important;
}

p.tourlead {
    font-size: 1.4rem;
    line-height: 1.4;
    padding: 10px 10px !important;
}

p.tourarrive {
    font-size: 1.4rem;
    text-align: center;
}

.tours .bxtt li p.price {
    text-align: center;
}

.main h1{
  font-size:1.2rem;
  padding-left: 10px;
}

.onetext_{
  font-size: 1.4rem;
  margin: 10px 60px 20px;
  text-align: left;
}

.info .layoutArea .column p{
	margin-top: 15px;
}

.info .layoutArea .column p.p1{
	margin-top: 15px;
}

.mauto{
  margin:auto;
}

@media screen and (max-width: 1400px) {
    .block.error404 p {
        padding: 0 50px;
    }
}

@media screen and (min-width: 769px) and (max-width: 1280px) {
    .wrap {
        width: 1280px;
    }

    .slick-list {
        height: 320px !important;
    }

}

@media screen and (min-width: 1281px) and (max-width: 1330px) {
    .slick-list {
        height: 330px !important;
    }
}

@media screen and (min-width: 1331px) and (max-width: 1380px) {
    .slick-list {
        height: 335px !important;
    }
}

@media screen and (min-width: 769px) and (max-width: 1390px) {
    .top_banner_ul li:first-child {
        margin: 0 10px 0 0;
    }

    .top_banner_ul li:last-child {
        margin: 0 0 0 10px;
    }
}

#ui-datepicker-div {
    z-index: 2000 !important;
}

@media screen and (min-width: 769px) {
#sidelogo {
    line-height: 0;
    padding: 20px 18px 18px 18px;
    text-align: center;
}

#sidelogo img {
    width: 95%;
    height: auto;
}
}

/*for RUSH ASP SYS*/
@media only screen and (min-width:768px){
.block.white.tours iframe {
    width: 100%;
    min-height: 430px;
    border: none;
}
    }
@media only screen and (max-width:768px){
     .block.white.tours iframe{
    width: 100%;
    min-height: 470px;
    border: none;
}
}

.topmov{
  padding:0 180px 20px;
}

@media only screen and (max-width:768px){
  .topmov{
    padding:0 10px 20px;
  }
}

/*LP用のボタンCSS*/

.anc_area{
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 10px;
}

.anc_btn {
  display: inline-block;
  width: 260px;
  height: 54px;
  text-align: center;
  text-decoration: none;
  line-height: 54px;
  outline: none;
  border:1px solid #2283d8;
  padding:0px;
  margin-bottom:20px;
  border-radius: 6px;
}
.anc_btn::before,
.anc_btn::after {
  position: absolute;
  z-index: -1;
  display: block;
}
.anc_btn,
.anc_btn::before,
.anc_btn::after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .4s;
  transition: all .4s;
}

.anc_btn {
  background-color: #fff;
  color: #2283d8;
  font-size:1.8rem;
  font-weight: bold;
}
.anc_btn:hover {
  background-color: #2283d8;
  color: #fff;
  text-decoration: none;
}

a.anc_btn.active_{
  background-color: #2283d8;
  color: #fff;
}

/*IEスクロール対策*/
@media all and (-ms-high-contrast: none) {
  .spanc {
       position: relative;
       top: -111px;
       display: block;
    }
}
@media screen and (max-width: 769px) {
.islandtop .block.island ul li .hotellist input {
    width: 50%;
    height: 100%;
    display: block;
    top: 0;
    opacity: 0;
    position: absolute;
    right: 0;
    cursor: pointer;
    z-index: 1;
    margin: 0;
}
.islandtop .block.island ul li .hotellist{
    position: unset;
}
}
