.is-mobile a {
    -webkit-touch-callout: none;
    -webkit-tap-highlight-color: transparent
}

.sponser {
    position: fixed;
    bottom: 10px;
    right: 20px;
    box-shadow: 1px 1px 5px rgba(0, 0, 0, .3);
    display: none;
    z-index: 2
}

.sponser a {
    border-bottom: none
}

.sponser_img {
    -webkit-transform: scale(1);
    transform: scale(1);
    -webkit-transition: .15s ease-in-out;
    transition: .15s ease-in-out;
    margin: 0;
    padding: 0
}

.sponser:hover .sponser_img {
    -webkit-transform: scale(1.15);
    transform: scale(1.15);
    -webkit-backface-visibility: hidden -webkit-font-smoothing: antialiased opacity: .5
}

@media screen and (max-width:640px) {
    .sponser {
        right: 10px;
        top: 240px;
        bottom: auto;
        max-width: 50%
    }

    .sponser_img {
        max-width: 100%
    }
}

@media screen and (max-width:320px) {
    .sponser {
        top: 210px
    }
}

.pages #banner,
.pages #banner2 {
    height: 100%;
    min-height: 20em
}

.pages #banner p,
.pages #banner2 p {
    margin: 0
}

.pages .wrapper header {
    text-align: center;
    padding-bottom: 1em
}

.pages .wrapper header .ttl {
    display: inline-block;
    color: #2b9dc2;
    border-top: 1px solid #2b9dc2;
    border-bottom: 1px solid #2b9dc2;
    padding: 1em 0 1em !important;
    margin: .5em
}

.pages .wrapper header p {
    color: #2b9dc2;
    font-size: inherit
}

.pages .wrapper.nav {
    padding: 2em 0 .5em
}

.pages .wrapper.nav .flex-item {
    font-size: 13.25pt
}

.pages .wrapper.nav .flex-item a {
    padding: .5em;
    border: none;
    display: block
}

.pages .wrapper.nav .flex-item:hover {
    background-color: #ff7c00;
    color: #fff
}

@media screen and (min-width:796px) {
    .pages .wrapper.heading {
        padding: 1em 0
    }
}

#banner2 {
    display: -moz-flex;
    display: -webkit-flex;
    display: -ms-flex;
    display: flex;
    -moz-flex-direction: column;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -moz-justify-content: center;
    -webkit-justify-content: center;
    -ms-justify-content: center;
    justify-content: center;
    cursor: default;
    height: 100vh;
    min-height: 35em;
    overflow: hidden;
    position: relative;
    text-align: center
}

#banner2 h2 {
    -moz-transform: scale(1);
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    -moz-transition: -moz-transform .5s ease, opacity .5s ease;
    -webkit-transition: -webkit-transform .5s ease, opacity .5s ease;
    -ms-transition: -ms-transform .5s ease, opacity .5s ease;
    transition: transform .5s ease, opacity .5s ease;
    display: inline-block;
    font-size: 1.75em;
    color: #fff;
    opacity: 1;
    padding: .35em 1em;
    position: relative;
    z-index: 1
}

#banner2 h2:after,
#banner2 h2:before {
    -moz-transition: width .85s ease;
    -webkit-transition: width .85s ease;
    -ms-transition: width .85s ease;
    transition: width .85s ease;
    -moz-transition-delay: .25s;
    -webkit-transition-delay: .25s;
    -ms-transition-delay: .25s;
    transition-delay: .25s;
    background: #fff;
    content: '';
    display: block;
    height: 2px;
    position: absolute;
    width: 100%
}

#banner2 h2:before {
    top: 0;
    left: 0
}

#banner2 h2:after {
    bottom: 0;
    right: 0
}

#banner2 p {
    letter-spacing: .225em;
    text-transform: uppercase;
    color: #fff
}

#banner2 p a {
    color: inherit
}

.colmax>.inner {
    width: 60em;
    margin: 0 auto
}

@media screen and (max-width:894px) {
    .colmax>.inner {
        width: 98%
    }
}

.colmax .spotlight {
    background-color: rgba(0, 0, 0, 0)
}

.colmax .spotlight .content {
    padding: 2em 0;
    font-size: 12pt
}

.colmax .spotlight h3,
.colmax .spotlight h4 {
    padding-bottom: .25em;
    border-bottom: 1px solid #e5e5e5;
    text-align: left
}

.step {
    font-family: "Passion One script=all rev=1";
    font-size: 30pt;
    color: #d6d6d6;
    margin: 0 0 10px
}

.btnWrap {
    padding: 1em 0;
    text-align: center
}

.btnWrap .btn {
    width: auto;
    display: inline-block;
    margin: 0 auto
}

body.concept #page-wrapper {
    background-image: -moz-linear-gradient(top, rgba(0, 0, 0, .5), rgba(0, 0, 0, .5)), url(../../images/mv_concept.jpg);
    background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, .5), rgba(0, 0, 0, .5)), url(../../images/mv_concept.jpg);
    background-image: -ms-linear-gradient(top, rgba(0, 0, 0, .5), rgba(0, 0, 0, .5)), url(../../images/mv_concept.jpg);
    background-image: linear-gradient(top, rgba(0, 0, 0, .5), rgba(0, 0, 0, .5)), url(../../images/mv_concept.jpg);
    padding-top: 0;
    background-size: contain
}

body.concept-en #page-wrapper {
    background-image: -moz-linear-gradient(top, rgba(0, 0, 0, .1), rgba(0, 0, 0, .1)), url(../../images/en/mv_concept.jpg);
    background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, .1), rgba(0, 0, 0, .1)), url(../../images/en/mv_concept.jpg);
    background-image: -ms-linear-gradient(top, rgba(0, 0, 0, .1), rgba(0, 0, 0, .1)), url(../../images/en/mv_concept.jpg);
    background-image: linear-gradient(top, rgba(0, 0, 0, .1), rgba(0, 0, 0, .1)), url(../../images/en/mv_concept.jpg);
    padding-top: 0;
    background-size: contain
}

@media screen and (min-width:1131px) {
    body.concept-en #page-wrapper {
        background-position: 0 -10em
    }
}

@media screen and (min-width:737px) {
    body.concept-en #page-wrapper {
        background-position: 0 -5em
    }
}

@media screen and (min-width:481px) {
    body.concept-en #page-wrapper {
        background-position: 0 -3em
    }
}

body.activity #page-wrapper {
    background-image: -moz-linear-gradient(top, rgba(0, 0, 0, .5), rgba(0, 0, 0, .5)), url(../../images/mv_activity.jpg);
    background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, .5), rgba(0, 0, 0, .5)), url(../../images/mv_activity.jpg);
    background-image: -ms-linear-gradient(top, rgba(0, 0, 0, .5), rgba(0, 0, 0, .5)), url(../../images/mv_activity.jpg);
    background-image: linear-gradient(top, rgba(0, 0, 0, .5), rgba(0, 0, 0, .5)), url(../../images/mv_activity.jpg);
    padding-top: 0;
    background-size: contain
}

body.company #page-wrapper {
    background-image: -moz-linear-gradient(top, rgba(0, 0, 0, .5), rgba(0, 0, 0, .5)), url(../../images/mv_company.jpg);
    background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, .5), rgba(0, 0, 0, .5)), url(../../images/mv_company.jpg);
    background-image: -ms-linear-gradient(top, rgba(0, 0, 0, .5), rgba(0, 0, 0, .5)), url(../../images/mv_company.jpg);
    background-image: linear-gradient(top, rgba(0, 0, 0, .5), rgba(0, 0, 0, .5)), url(../../images/mv_company.jpg);
    padding-top: 0;
    background-size: contain
}

body.company .staff {
    background-image: url(../../images/mv_staff.jpg);
    background-image: url(../../images/mv_staff.jpg);
    background-image: url(../../images/mv_staff.jpg);
    background-image: url(../../images/mv_staff.jpg);
    padding-top: 0
}

.pages #banner2.staff {
    max-height: 540px;
    min-height: 36rem
}

body.facirity #page-wrapper {
    background-image: -moz-linear-gradient(top, rgba(0, 0, 0, .5), rgba(0, 0, 0, .5)), url(../../images/mv_facirity.jpg);
    background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, .5), rgba(0, 0, 0, .5)), url(../../images/mv_facirity.jpg);
    background-image: -ms-linear-gradient(top, rgba(0, 0, 0, .5), rgba(0, 0, 0, .5)), url(../../images/mv_facirity.jpg);
    background-image: linear-gradient(top, rgba(0, 0, 0, .5), rgba(0, 0, 0, .5)), url(../../images/mv_facirity.jpg);
    padding-top: 0;
    background-size: contain
}

body.access #page-wrapper {
    background-image: -moz-linear-gradient(top, rgba(232, 184, 75, .5), rgba(224, 161, 20, .5)), url(../../images/mv_access.jpg);
    background-image: -webkit-linear-gradient(top, rgba(232, 184, 75, .5), rgba(224, 161, 20, .5)), url(../../images/mv_access.jpg);
    background-image: -ms-linear-gradient(top, rgba(232, 184, 75, .5), rgba(224, 161, 20, .5)), url(../../images/mv_access.jpg);
    background-image: linear-gradient(top, rgba(232, 184, 75, .5), rgba(224, 161, 20, .5)), url(../../images/mv_access.jpg);
    padding-top: 0;
    background-size: contain
}

body.eat #page-wrapper {
    background-image: -moz-linear-gradient(top, rgba(232, 184, 75, 0), rgba(224, 161, 20, 0)), url(../../images/mv_eat.jpg);
    background-image: -webkit-linear-gradient(top, rgba(232, 184, 75, 0), rgba(224, 161, 20, 0)), url(../../images/mv_eat.jpg);
    background-image: -ms-linear-gradient(top, rgba(232, 184, 75, 0), rgba(224, 161, 20, 0)), url(../../images/mv_eat.jpg);
    background-image: linear-gradient(top, rgba(232, 184, 75, 0), rgba(224, 161, 20, 0)), url(../../images/mv_eat.jpg);
    padding-top: 0;
    background-size: contain
}

body.guide #page-wrapper {
    background-image: -moz-linear-gradient(top, rgba(232, 184, 75, 0), rgba(224, 161, 20, 0)), url(../../images/mv_guide.jpg);
    background-image: -webkit-linear-gradient(top, rgba(232, 184, 75, 0), rgba(224, 161, 20, 0)), url(../../images/mv_guide.jpg);
    background-image: -ms-linear-gradient(top, rgba(232, 184, 75, 0), rgba(224, 161, 20, 0)), url(../../images/mv_guide.jpg);
    background-image: linear-gradient(top, rgba(232, 184, 75, 0), rgba(224, 161, 20, 0)), url(../../images/mv_guide.jpg);
    padding-top: 0;
    background-size: contain
}

body.diving #page-wrapper {
    background-image: -moz-linear-gradient(top, rgba(122, 176, 232, .5), rgba(0, 63, 243, .7)), url(../../images/mv_s_diving.jpg);
    background-image: -webkit-linear-gradient(top, rgba(122, 176, 232, .5), rgba(0, 63, 243, .7)), url(../../images/mv_s_diving.jpg);
    background-image: -ms-linear-gradient(top, rgba(122, 176, 232, .5), rgba(0, 63, 243, .7)), url(../../images/mv_s_diving.jpg);
    background-image: linear-gradient(top, rgba(122, 176, 232, .5), rgba(0, 63, 243, .7)), url(../../images/mv_s_diving.jpg);
    padding-top: 0;
    background-size: contain
}

body.guestvoice #page-wrapper {
    background-image: -moz-linear-gradient(top, rgba(122, 176, 232, .5), rgba(0, 63, 243, .7)), url(../../images/mv_s_guest.jpg);
    background-image: -webkit-linear-gradient(top, rgba(122, 176, 232, .5), rgba(0, 63, 243, .7)), url(../../images/mv_s_guest.jpg);
    background-image: -ms-linear-gradient(top, rgba(122, 176, 232, .5), rgba(0, 63, 243, .7)), url(../../images/mv_s_guest.jpg);
    background-image: linear-gradient(top, rgba(122, 176, 232, .5), rgba(0, 63, 243, .7)), url(../../images/mv_s_guest.jpg);
    padding-top: 0;
    background-size: contain
}

body.is-mobile.landing #banner {
    padding: 2em 0;
    position: static
}

@media screen and (max-width:980px) {
    .home #access .spotlight br {
        display: initial
    }
}

@media screen and (max-width:736px) {
    .home #banner .inner p {
        padding: 0 10%;
        text-align: center
    }

    .facility-nav a {
        width: 48%
    }

    .facility-nav a img {
        width: 100%
    }

    #access .content dd {
        margin: 0 0 0 25%;
        height: 79px
    }
}

.form-group div {
    margin-bottom: 1.5em
}

.swiper-container {
    width: 100%;
    height: 300px;
    margin-left: auto;
    margin-right: auto
}

@media screen and (max-width:414px) {
    .swiper-container {
        width: 100vw;
        height: auto;
        margin-left: -2em
    }
}

.swiper-slide {
    background-size: cover;
    background-position: center
}

.gallery-top {
    width: 100%
}

.gallery-thumbs {
    height: 100px;
    box-sizing: border-box;
    padding: 10px 0
}

.gallery-thumbs .swiper-slide {
    width: 25%;
    height: 100%;
    opacity: .4
}

.gallery-thumbs .swiper-slide-active {
    opacity: 1;
    position: relative
}

.swiper-slide .text {
    width: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    font-size: 14px;
    line-height: 1.3;
    background-color: rgba(0, 0, 0, .7)
}

.swiper-slide .text p {
    color: #fff;
    text-align: left;
    padding: .5em;
    margin: 0
}

.icon-area {
    padding: 4% 2% 1%;
    margin: 0 2%;
    background-color: #eee
}

.icon-area h4 {
    padding: 0 0 0 2em
}

.icon-area ul {
    overflow: hidden;
    list-style: none
}

.icon-area ul li {
    float: left;
    width: 15%
}

@media screen and (max-width:894px) {
    .icon-area ul li {
        width: 30%
    }
}

.icon-area ul li img {
    width: 80%
}

.col5box.item-img {
    margin-bottom: 20px
}

.col5box.item-img .item-img--box {
    width: 19.33337%;
    margin-right: .5%;
    float: left
}

.col5box.item-img .item-img--box img {
    width: 100%
}

@media screen and (max-width:894px) {
    .col5box.item-img .item-img--box {
        width: 18.33337%
    }
}

.slick-slider {
    padding: 0
}

.slick-next,
.slick-prev {
    z-index: 99;
    width: 34px;
    height: 90px;
    box-shadow: none
}

.slick-prev {
    left: 25px
}

.slick-prev::before {
    content: '<'
}

.slick-next {
    right: 25px
}

.slick-next::before {
    content: '>'
}

.slick-next::before,
.slick-prev::before {
    color: #00c2ff;
    font-size: 60px
}

.thumb-content button {
    display: none !important
}

.slider-container {
    position: relative
}

.thumb-content .tag {
    background-color: #2b9dc2;
    border-radius: 4px;
    color: #fff;
    font-size: .8em;
    font-weight: 400;
    display: inline-block;
    letter-spacing: normal;
    margin-left: 1em;
    padding: 0 .5em
}

.slider-nav-container .slider-prev {
    position: absolute;
    top: 25%;
    left: 36px
}

@media screen and (max-width:414px) {
    .slider-nav-container .slider-prev {
        left: -4px
    }
}

.slider-nav-container .slider-next {
    position: absolute;
    top: 25%;
    right: 36px
}

@media screen and (max-width:414px) {
    .slider-nav-container .slider-next {
        right: -14px
    }
}

body.facirity .fa-angle-left:before,
body.facirity .fa-angle-right:before,
body.price .fa-angle-left:before,
body.price .fa-angle-right:before {
    color: #00c2ff;
    font-size: 60px !important;
    filter: dropshadow(color=#ffffff, offX=1, offY=1);
    text-shadow: 1px 1px 4px #fff
}

.thumb-item-nav li {
    cursor: pointer
}

.thumb-item-nav li:hover {
    opacity: .8
}

.around-lbox p {
    border-bottom: 1px dashed #ccc;
    padding-bottom: .5em
}

.is-mobile .around .row div:nth-of-type(1) p {
    border-bottom: 2px solid #ccc;
    text-align: left;
    font-size: 120%
}

@media screen and (max-width:980px) {
    .faciritysld .spotlight .image {
        margin-left: -.5em
    }
}

@media screen and (max-width:641px) {
    .faciritysld .spotlight .content {
        padding: 0 0 2em
    }
}

.roomcharge span {
    font-size: 80%
}

#googlemaps {
    width: 100%;
    height: 300px;
    position: relative
}

#googlemaps2 {
    width: 100%;
    height: 300px;
    position: relative
}

#googlemaps_lp {
    width: 100%;
    height: 560px;
    position: relative;
    margin-top: 30px
}

@media screen and (max-width:414px) {
    #googlemaps_lp {
        height: calc(100vw / 1.6)
    }
}

.is-mobile .inview-wrap--scdimg,
.scdimgN {
    display: none
}

.is-mobile .scdimgN {
    display: block;
    margin: 0 auto;
    width: 90%
}

.eat .imgresp.harf {
    text-align: center
}

.qa_list dt {
    width: 100%;
    margin: 20px 0 10px;
    padding: 10px 0 10px 60px;
    font-size: 1.4em;
    line-height: 1.4;
    color: #000;
    font-weight: 800;
    letter-spacing: .225em;
    background: url(../../images/icon_question.gif) left center no-repeat;
    border-top: none;
    box-shadow: none
}

.qa_list dd p {
    padding: 10px 0 0 60px;
    font-size: 100%;
    background: 0 0;
    margin-bottom: 1em
}

.media-wrapper {
    clear: both;
    overflow: hidden;
    margin-top: 3rem;
    border: solid 1px #ccc;
    background-color: #eee;
    padding: 1.2rem;
    box-sizing: border-box;
    transition: all 1s 0s ease
}

.media-wrapper:hover {
    opacity: .7
}

.media-wrapper::after,
.media-wrapper::before {
    content: "";
    display: table
}

.media-img {
    float: left;
    margin-right: 10px;
    margin-bottom: 10px
}

.recruit_list dt {
    width: 100%;
    margin: 20px 0 10px;
    padding: 10px 0 10px 60px;
    font-size: 1.4em;
    line-height: 1.4;
    color: #000;
    font-weight: 800;
    letter-spacing: .225em;
    border-top: none;
    box-shadow: none
}

.recruit_list dd p {
    padding: 10px 0 0 60px;
    font-size: 100%;
    background: 0 0;
    margin-bottom: 1em
}

.rec-sub {
    font-size: 1rem;
    border: solid 1px #444;
    border-radius: 5px;
    padding: 0 10px 0 10px;
    display: inline-block;
    margin-left: 2rem
}

@media screen and (max-width:480px) {
    .recruit_list dt {
        padding-left: 0
    }

    .recruit_list dd p {
        padding-left: 0
    }

    .rec-sub {
        font-size: .8rem;
        margin-left: 0
    }
}

.company dd {
    margin: 0 0 0 30%
}

.is-mobile.company dd {
    padding-left: .5em
}

.is-mobile.company .enkaku dd {
    height: 79px
}

@media screen and (max-width:736px) {
    .activity .nav .flex.staff-content .flex-item {
        width: 100%
    }
}

.activitylist {
    list-style: none;
    margin: 0 auto;
    padding: 0;
    text-align: center;
    overflow: hidden
}

.activitylist li {
    display: inline-block;
    margin: 0;
    width: 24%
}

.activitylist .btns {
    position: relative;
    display: block;
    width: 90%;
    margin: 20px auto;
    padding: 6px;
    background-color: #fff;
    border: 1px solid #ccc;
    color: #000;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    transform-style: flat;
    transition: all 250ms ease-out;
    -webkit-transition: color .4s, background-color .4s, border .4s;
    transition: color .4s, background-color .4s, border .4s
}

@media screen and (max-width:930px) {
    .activitylist .btns {
        font-size: 80%
    }
}

@media screen and (max-width:676px) {
    .pages.activity .wrapper.nav {
        padding: .5em 0
    }

    .activitylist .btns {
        margin: 10px auto
    }

    .activitylist li {
        width: 48%
    }

    .activitylist .btns:hover {
        border-color: #7fdbff
    }
}

.activitylist .btns:after,
.activitylist .btns:before {
    content: "";
    position: absolute;
    z-index: -2;
    transition: all 250ms ease-out
}

.activitylist .btns:hover {
    color: #7fdbff;
    border: 1px solid #7fdbff;
    -webkit-transition: background-color .3s, color .3s, border .3s;
    transition: background-color .3s, color .3s, border .3s
}

.activitylist .paper {
    border-color: #dedede
}

.activitylist .paper-raise-flatten {
    border-color: #f8f5f5;
    box-shadow: 0 1px 4px rgba(0, 0, 0, .3), 0 0 40px rgba(128, 128, 128, .1) inset
}

.activitylist .paper-raise-flatten:before {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    box-shadow: 0 15px 10px -10px rgba(31, 31, 31, .5)
}

.activitylist .paper-raise-flatten:hover {
    border: 1px solid #ededed !important;
    box-shadow: 0 10px 5px -5px rgba(31, 31, 31, .3)
}

body.activity #page-wrapper {
    position: relative
}

.activitynav {
    position: fixed;
    bottom: 0;
    width: 100%
}

.activitynav .bgc {
    background-color: rgba(0, 0, 0, .6);
    padding: 0 !important
}

.activitynav .activitylist .btns {
    background-color: transparent;
    color: #fff
}

.row-eq-height {
    display: flex;
    flex-wrap: wrap
}

.bdwrap-header {
    padding: 1em 0;
    text-align: center
}

.bdwrap-in {
    padding: 0;
    border-top: 1px solid #2b9dc2;
    padding: 1em 0
}

.bdwrap-last .bdwrap-in {
    border-bottom: 1px solid #2b9dc2
}

.bdwrap-in h5 {
    font-size: inherit
}

.bdwrap-in img {
    width: 100%
}

#planlist ul {
    list-style: none
}

#planlist li {
    border-bottom: 1px solid #ccc;
    padding-bottom: 1em;
    margin-bottom: 1.5em
}

#planlist li .tit {
    margin: 0 0 10px
}

#planlist h3 {
    text-align: left;
    font-size: 20px
}

#planlist .plan_info_wrap {
    float: left;
    width: 78%;
    border-right: 1px dotted #000
}

#planlist .plan_img {
    float: left;
    width: 28%;
    padding: 0 2% 0 0
}

#planlist .plan_img img {
    width: 100%
}

#planlist .plan_description {
    float: left;
    width: 70%
}

#planlist .plan_info {
    margin: 0 0 10px
}

#planlist .plan_info ul {
    overflow: hidden;
    margin-bottom: 0
}

#planlist .plan_info li {
    float: left;
    min-width: 100px;
    margin: 0;
    padding: 0 10px 0 0
}

#planlist .plan_info li .inner {
    padding: 4px;
    border: 1px solid #000;
    border-radius: 2px;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    font-size: 88%;
    line-height: 1em;
    text-align: center
}

#planlist .plan_description p,
#planlist .plan_description p a {
    line-height: 1.25;
    text-align: left
}

#planlist .repletion {
    clear: both;
    padding: 10px 0 0;
    font-size: 80%;
    line-height: 1.2
}

#planlist .price_body {
    float: right;
    width: 20%;
    font-size: 80%;
    padding: 1.25em 0 0
}

#planlist .price_body span {
    font-size: 215%;
    font-weight: 700
}

#planlist .plan_content:after {
    content: "";
    display: block;
    clear: both
}

.nextbtn a {
    position: relative;
    display: inline-block;
    height: 46px;
    line-height: 46px;
    padding: 0 2.5em;
    background-color: #f54f29;
    border-radius: 3px 0 0 3px;
    color: #fff;
    font-size: 20px;
    text-decoration: none;
    -webkit-transition: .2s;
    transition: .2s
}

.nextbtn a::after {
    position: absolute;
    top: 0;
    right: -30px;
    content: '';
    width: 0;
    height: 0;
    border-color: transparent transparent transparent #f54f29;
    border-style: solid;
    border-width: 23px 0 23px 30px;
    -webkit-transition: .2s;
    transition: .2s
}

.is-mobile #planlist .plan_description,
.is-mobile #planlist .plan_img,
.is-mobile #planlist .plan_info_wrap,
.is-mobile #planlist .price_body {
    float: none;
    width: 100%;
    border-right: 0
}

.is-mobile #planlist .plan_info_wrap {
    border-bottom: 1px dotted #000
}

.is-mobile #planlist .plan_description p {
    margin-bottom: .5em
}

.is-mobile .nextbtn {
    display: block;
    margin: 1em 0
}

.img-responsive {
    display: block;
    max-width: 100%;
    height: auto
}

.img-rounded {
    border-radius: 6px
}

.img-thumbnail {
    padding: 4px;
    line-height: 1.42857143;
    background-color: #fff;
    border: 1px solid #ddd;
    border-radius: 4px;
    -webkit-transition: all .2s ease-in-out;
    -o-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
    display: inline-block;
    max-width: 100%;
    height: auto
}

.img-circle {
    border-radius: 50%
}

hr {
    margin-top: 20px;
    margin-bottom: 20px;
    border: 0;
    border-top: 1px solid #eee
}

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0
}

.sr-only-focusable:active,
.sr-only-focusable:focus {
    position: static;
    width: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    clip: auto
}

[role=button] {
    cursor: pointer
}

.container {
    margin-right: auto;
    margin-left: auto;
    padding-left: 15px;
    padding-right: 15px
}

@media (min-width:768px) {
    .container {
        width: 750px
    }
}

@media (min-width:992px) {
    .container {
        width: 970px
    }
}

@media (min-width:1200px) {
    .container {
        width: 1170px
    }
}

.container-fluid {
    margin-right: auto;
    margin-left: auto;
    padding-left: 15px;
    padding-right: 15px
}

.row {
    margin-left: -15px;
    margin-right: -15px
}

.col-lg-1,
.col-lg-10,
.col-lg-11,
.col-lg-12,
.col-lg-2,
.col-lg-3,
.col-lg-4,
.col-lg-5,
.col-lg-6,
.col-lg-7,
.col-lg-8,
.col-lg-9,
.col-md-1,
.col-md-10,
.col-md-11,
.col-md-12,
.col-md-2,
.col-md-3,
.col-md-4,
.col-md-5,
.col-md-6,
.col-md-7,
.col-md-8,
.col-md-9,
.col-sm-1,
.col-sm-10,
.col-sm-11,
.col-sm-12,
.col-sm-2,
.col-sm-3,
.col-sm-4,
.col-sm-5,
.col-sm-6,
.col-sm-7,
.col-sm-8,
.col-sm-9,
.col-xs-1,
.col-xs-10,
.col-xs-11,
.col-xs-12,
.col-xs-2,
.col-xs-3,
.col-xs-4,
.col-xs-5,
.col-xs-6,
.col-xs-7,
.col-xs-8,
.col-xs-9 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px
}

.col-xs-1,
.col-xs-10,
.col-xs-11,
.col-xs-12,
.col-xs-2,
.col-xs-3,
.col-xs-4,
.col-xs-5,
.col-xs-6,
.col-xs-7,
.col-xs-8,
.col-xs-9 {
    float: left
}

.col-xs-12 {
    width: 100%
}

.col-xs-11 {
    width: 91.66666667%
}

.col-xs-10 {
    width: 83.33333333%
}

.col-xs-9 {
    width: 75%
}

.col-xs-8 {
    width: 66.66666667%
}

.col-xs-7 {
    width: 58.33333333%
}

.col-xs-6 {
    width: 50%
}

.col-xs-5 {
    width: 41.66666667%
}

.col-xs-4 {
    width: 33.33333333%
}

.col-xs-3 {
    width: 25%
}

.col-xs-2 {
    width: 16.66666667%
}

.col-xs-1 {
    width: 8.33333333%
}

.col-xs-pull-12 {
    right: 100%
}

.col-xs-pull-11 {
    right: 91.66666667%
}

.col-xs-pull-10 {
    right: 83.33333333%
}

.col-xs-pull-9 {
    right: 75%
}

.col-xs-pull-8 {
    right: 66.66666667%
}

.col-xs-pull-7 {
    right: 58.33333333%
}

.col-xs-pull-6 {
    right: 50%
}

.col-xs-pull-5 {
    right: 41.66666667%
}

.col-xs-pull-4 {
    right: 33.33333333%
}

.col-xs-pull-3 {
    right: 25%
}

.col-xs-pull-2 {
    right: 16.66666667%
}

.col-xs-pull-1 {
    right: 8.33333333%
}

.col-xs-pull-0 {
    right: auto
}

.col-xs-push-12 {
    left: 100%
}

.col-xs-push-11 {
    left: 91.66666667%
}

.col-xs-push-10 {
    left: 83.33333333%
}

.col-xs-push-9 {
    left: 75%
}

.col-xs-push-8 {
    left: 66.66666667%
}

.col-xs-push-7 {
    left: 58.33333333%
}

.col-xs-push-6 {
    left: 50%
}

.col-xs-push-5 {
    left: 41.66666667%
}

.col-xs-push-4 {
    left: 33.33333333%
}

.col-xs-push-3 {
    left: 25%
}

.col-xs-push-2 {
    left: 16.66666667%
}

.col-xs-push-1 {
    left: 8.33333333%
}

.col-xs-push-0 {
    left: auto
}

.col-xs-offset-12 {
    margin-left: 100%
}

.col-xs-offset-11 {
    margin-left: 91.66666667%
}

.col-xs-offset-10 {
    margin-left: 83.33333333%
}

.col-xs-offset-9 {
    margin-left: 75%
}

.col-xs-offset-8 {
    margin-left: 66.66666667%
}

.col-xs-offset-7 {
    margin-left: 58.33333333%
}

.col-xs-offset-6 {
    margin-left: 50%
}

.col-xs-offset-5 {
    margin-left: 41.66666667%
}

.col-xs-offset-4 {
    margin-left: 33.33333333%
}

.col-xs-offset-3 {
    margin-left: 25%
}

.col-xs-offset-2 {
    margin-left: 16.66666667%
}

.col-xs-offset-1 {
    margin-left: 8.33333333%
}

.col-xs-offset-0 {
    margin-left: 0
}

@media (min-width:768px) {

    .col-sm-1,
    .col-sm-10,
    .col-sm-11,
    .col-sm-12,
    .col-sm-2,
    .col-sm-3,
    .col-sm-4,
    .col-sm-5,
    .col-sm-6,
    .col-sm-7,
    .col-sm-8,
    .col-sm-9 {
        float: left
    }

    .col-sm-12 {
        width: 100%
    }

    .col-sm-11 {
        width: 91.66666667%
    }

    .col-sm-10 {
        width: 83.33333333%
    }

    .col-sm-9 {
        width: 75%
    }

    .col-sm-8 {
        width: 66.66666667%
    }

    .col-sm-7 {
        width: 58.33333333%
    }

    .col-sm-6 {
        width: 50%
    }

    .col-sm-5 {
        width: 41.66666667%
    }

    .col-sm-4 {
        width: 33.33333333%
    }

    .col-sm-3 {
        width: 25%
    }

    .col-sm-2 {
        width: 16.66666667%
    }

    .col-sm-1 {
        width: 8.33333333%
    }

    .col-sm-pull-12 {
        right: 100%
    }

    .col-sm-pull-11 {
        right: 91.66666667%
    }

    .col-sm-pull-10 {
        right: 83.33333333%
    }

    .col-sm-pull-9 {
        right: 75%
    }

    .col-sm-pull-8 {
        right: 66.66666667%
    }

    .col-sm-pull-7 {
        right: 58.33333333%
    }

    .col-sm-pull-6 {
        right: 50%
    }

    .col-sm-pull-5 {
        right: 41.66666667%
    }

    .col-sm-pull-4 {
        right: 33.33333333%
    }

    .col-sm-pull-3 {
        right: 25%
    }

    .col-sm-pull-2 {
        right: 16.66666667%
    }

    .col-sm-pull-1 {
        right: 8.33333333%
    }

    .col-sm-pull-0 {
        right: auto
    }

    .col-sm-push-12 {
        left: 100%
    }

    .col-sm-push-11 {
        left: 91.66666667%
    }

    .col-sm-push-10 {
        left: 83.33333333%
    }

    .col-sm-push-9 {
        left: 75%
    }

    .col-sm-push-8 {
        left: 66.66666667%
    }

    .col-sm-push-7 {
        left: 58.33333333%
    }

    .col-sm-push-6 {
        left: 50%
    }

    .col-sm-push-5 {
        left: 41.66666667%
    }

    .col-sm-push-4 {
        left: 33.33333333%
    }

    .col-sm-push-3 {
        left: 25%
    }

    .col-sm-push-2 {
        left: 16.66666667%
    }

    .col-sm-push-1 {
        left: 8.33333333%
    }

    .col-sm-push-0 {
        left: auto
    }

    .col-sm-offset-12 {
        margin-left: 100%
    }

    .col-sm-offset-11 {
        margin-left: 91.66666667%
    }

    .col-sm-offset-10 {
        margin-left: 83.33333333%
    }

    .col-sm-offset-9 {
        margin-left: 75%
    }

    .col-sm-offset-8 {
        margin-left: 66.66666667%
    }

    .col-sm-offset-7 {
        margin-left: 58.33333333%
    }

    .col-sm-offset-6 {
        margin-left: 50%
    }

    .col-sm-offset-5 {
        margin-left: 41.66666667%
    }

    .col-sm-offset-4 {
        margin-left: 33.33333333%
    }

    .col-sm-offset-3 {
        margin-left: 25%
    }

    .col-sm-offset-2 {
        margin-left: 16.66666667%
    }

    .col-sm-offset-1 {
        margin-left: 8.33333333%
    }

    .col-sm-offset-0 {
        margin-left: 0
    }
}

@media (min-width:992px) {

    .col-md-1,
    .col-md-10,
    .col-md-11,
    .col-md-12,
    .col-md-2,
    .col-md-3,
    .col-md-4,
    .col-md-5,
    .col-md-6,
    .col-md-7,
    .col-md-8,
    .col-md-9 {
        float: left
    }

    .col-md-12 {
        width: 100%
    }

    .col-md-11 {
        width: 91.66666667%
    }

    .col-md-10 {
        width: 83.33333333%
    }

    .col-md-9 {
        width: 75%
    }

    .col-md-8 {
        width: 66.66666667%
    }

    .col-md-7 {
        width: 58.33333333%
    }

    .col-md-6 {
        width: 50%
    }

    .col-md-5 {
        width: 41.66666667%
    }

    .col-md-4 {
        width: 33.33333333%
    }

    .col-md-3 {
        width: 25%
    }

    .col-md-2 {
        width: 16.66666667%
    }

    .col-md-1 {
        width: 8.33333333%
    }

    .col-md-pull-12 {
        right: 100%
    }

    .col-md-pull-11 {
        right: 91.66666667%
    }

    .col-md-pull-10 {
        right: 83.33333333%
    }

    .col-md-pull-9 {
        right: 75%
    }

    .col-md-pull-8 {
        right: 66.66666667%
    }

    .col-md-pull-7 {
        right: 58.33333333%
    }

    .col-md-pull-6 {
        right: 50%
    }

    .col-md-pull-5 {
        right: 41.66666667%
    }

    .col-md-pull-4 {
        right: 33.33333333%
    }

    .col-md-pull-3 {
        right: 25%
    }

    .col-md-pull-2 {
        right: 16.66666667%
    }

    .col-md-pull-1 {
        right: 8.33333333%
    }

    .col-md-pull-0 {
        right: auto
    }

    .col-md-push-12 {
        left: 100%
    }

    .col-md-push-11 {
        left: 91.66666667%
    }

    .col-md-push-10 {
        left: 83.33333333%
    }

    .col-md-push-9 {
        left: 75%
    }

    .col-md-push-8 {
        left: 66.66666667%
    }

    .col-md-push-7 {
        left: 58.33333333%
    }

    .col-md-push-6 {
        left: 50%
    }

    .col-md-push-5 {
        left: 41.66666667%
    }

    .col-md-push-4 {
        left: 33.33333333%
    }

    .col-md-push-3 {
        left: 25%
    }

    .col-md-push-2 {
        left: 16.66666667%
    }

    .col-md-push-1 {
        left: 8.33333333%
    }

    .col-md-push-0 {
        left: auto
    }

    .col-md-offset-12 {
        margin-left: 100%
    }

    .col-md-offset-11 {
        margin-left: 91.66666667%
    }

    .col-md-offset-10 {
        margin-left: 83.33333333%
    }

    .col-md-offset-9 {
        margin-left: 75%
    }

    .col-md-offset-8 {
        margin-left: 66.66666667%
    }

    .col-md-offset-7 {
        margin-left: 58.33333333%
    }

    .col-md-offset-6 {
        margin-left: 50%
    }

    .col-md-offset-5 {
        margin-left: 41.66666667%
    }

    .col-md-offset-4 {
        margin-left: 33.33333333%
    }

    .col-md-offset-3 {
        margin-left: 25%
    }

    .col-md-offset-2 {
        margin-left: 16.66666667%
    }

    .col-md-offset-1 {
        margin-left: 8.33333333%
    }

    .col-md-offset-0 {
        margin-left: 0
    }
}

@media (min-width:1200px) {

    .col-lg-1,
    .col-lg-10,
    .col-lg-11,
    .col-lg-12,
    .col-lg-2,
    .col-lg-3,
    .col-lg-4,
    .col-lg-5,
    .col-lg-6,
    .col-lg-7,
    .col-lg-8,
    .col-lg-9 {
        float: left
    }

    .col-lg-12 {
        width: 100%
    }

    .col-lg-11 {
        width: 91.66666667%
    }

    .col-lg-10 {
        width: 83.33333333%
    }

    .col-lg-9 {
        width: 75%
    }

    .col-lg-8 {
        width: 66.66666667%
    }

    .col-lg-7 {
        width: 58.33333333%
    }

    .col-lg-6 {
        width: 50%
    }

    .col-lg-5 {
        width: 41.66666667%
    }

    .col-lg-4 {
        width: 33.33333333%
    }

    .col-lg-3 {
        width: 25%
    }

    .col-lg-2 {
        width: 16.66666667%
    }

    .col-lg-1 {
        width: 8.33333333%
    }

    .col-lg-pull-12 {
        right: 100%
    }

    .col-lg-pull-11 {
        right: 91.66666667%
    }

    .col-lg-pull-10 {
        right: 83.33333333%
    }

    .col-lg-pull-9 {
        right: 75%
    }

    .col-lg-pull-8 {
        right: 66.66666667%
    }

    .col-lg-pull-7 {
        right: 58.33333333%
    }

    .col-lg-pull-6 {
        right: 50%
    }

    .col-lg-pull-5 {
        right: 41.66666667%
    }

    .col-lg-pull-4 {
        right: 33.33333333%
    }

    .col-lg-pull-3 {
        right: 25%
    }

    .col-lg-pull-2 {
        right: 16.66666667%
    }

    .col-lg-pull-1 {
        right: 8.33333333%
    }

    .col-lg-pull-0 {
        right: auto
    }

    .col-lg-push-12 {
        left: 100%
    }

    .col-lg-push-11 {
        left: 91.66666667%
    }

    .col-lg-push-10 {
        left: 83.33333333%
    }

    .col-lg-push-9 {
        left: 75%
    }

    .col-lg-push-8 {
        left: 66.66666667%
    }

    .col-lg-push-7 {
        left: 58.33333333%
    }

    .col-lg-push-6 {
        left: 50%
    }

    .col-lg-push-5 {
        left: 41.66666667%
    }

    .col-lg-push-4 {
        left: 33.33333333%
    }

    .col-lg-push-3 {
        left: 25%
    }

    .col-lg-push-2 {
        left: 16.66666667%
    }

    .col-lg-push-1 {
        left: 8.33333333%
    }

    .col-lg-push-0 {
        left: auto
    }

    .col-lg-offset-12 {
        margin-left: 100%
    }

    .col-lg-offset-11 {
        margin-left: 91.66666667%
    }

    .col-lg-offset-10 {
        margin-left: 83.33333333%
    }

    .col-lg-offset-9 {
        margin-left: 75%
    }

    .col-lg-offset-8 {
        margin-left: 66.66666667%
    }

    .col-lg-offset-7 {
        margin-left: 58.33333333%
    }

    .col-lg-offset-6 {
        margin-left: 50%
    }

    .col-lg-offset-5 {
        margin-left: 41.66666667%
    }

    .col-lg-offset-4 {
        margin-left: 33.33333333%
    }

    .col-lg-offset-3 {
        margin-left: 25%
    }

    .col-lg-offset-2 {
        margin-left: 16.66666667%
    }

    .col-lg-offset-1 {
        margin-left: 8.33333333%
    }

    .col-lg-offset-0 {
        margin-left: 0
    }
}

.clearfix:after,
.clearfix:before,
.container-fluid:after,
.container-fluid:before,
.container:after,
.container:before,
.row:after,
.row:before {
    content: " ";
    display: table
}

.clearfix:after,
.container-fluid:after,
.container:after,
.row:after {
    clear: both
}

.center-block {
    display: block;
    margin-left: auto;
    margin-right: auto
}

.pull-right {
    float: right !important
}

.pull-left {
    float: left !important
}

.hide {
    display: none !important
}

.show {
    display: block !important
}

.invisible {
    visibility: hidden
}

.text-hide {
    font: 0/0 a;
    color: transparent;
    text-shadow: none;
    background-color: transparent;
    border: 0
}

.hidden {
    display: none !important
}

.affix {
    position: fixed
}

.img-responsive {
    display: block;
    max-width: 100%;
    height: auto
}

[role=button] {
    cursor: pointer
}

.modal-open {
    overflow: hidden
}

.modal {
    display: none;
    overflow: hidden;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1050;
    -webkit-overflow-scrolling: touch;
    outline: 0
}

.modal.fade .modal-dialog {
    -webkit-transform: translate(0, -25%);
    -ms-transform: translate(0, -25%);
    -o-transform: translate(0, -25%);
    transform: translate(0, -25%);
    -webkit-transition: -webkit-transform .3s ease-out;
    -o-transition: -o-transform .3s ease-out;
    transition: transform .3s ease-out
}

.modal.in .modal-dialog {
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0)
}

.modal-open .modal {
    overflow-x: hidden;
    overflow-y: auto
}

.modal-dialog {
    position: relative;
    width: auto;
    margin: 10px
}

.modal-content {
    position: relative;
    background-color: #fff;
    border: 1px solid #999;
    border: 1px solid rgba(0, 0, 0, .2);
    border-radius: 6px;
    -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, .5);
    box-shadow: 0 3px 9px rgba(0, 0, 0, .5);
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    outline: 0
}

.modal-backdrop {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1040;
    background-color: #000
}

.modal-backdrop.fade {
    opacity: 0
}

.modal-backdrop.in {
    opacity: .5
}

.modal-header {
    padding: 15px;
    border-bottom: 1px solid #e5e5e5
}

.modal-header .close {
    margin-top: -2px
}

.modal-title {
    margin: 0;
    line-height: 1.42857143
}

.modal-body {
    position: relative;
    padding: 15px
}

.modal-footer {
    padding: 15px;
    text-align: right;
    border-top: 1px solid #e5e5e5
}

.modal-footer .btn+.btn {
    margin-left: 5px;
    margin-bottom: 0
}

.modal-footer .btn-group .btn+.btn {
    margin-left: -1px
}

.modal-footer .btn-block+.btn-block {
    margin-left: 0
}

.modal-scrollbar-measure {
    position: absolute;
    top: -9999px;
    width: 50px;
    height: 50px;
    overflow: scroll
}

@media (min-width:768px) {
    .modal-dialog {
        width: 600px;
        margin: 30px auto
    }

    .modal-content {
        -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, .5);
        box-shadow: 0 5px 15px rgba(0, 0, 0, .5)
    }

    .modal-sm {
        width: 300px
    }
}

@media (min-width:992px) {
    .modal-lg {
        width: 900px
    }
}

.clearfix:after,
.clearfix:before,
.modal-footer:after,
.modal-footer:before,
.modal-header:after,
.modal-header:before {
    content: " ";
    display: table
}

.clearfix:after,
.modal-footer:after,
.modal-header:after {
    clear: both
}

#sp_mov {
    display: none
}

.project header.major p {
    font-size: 1em
}

.project_img_inline {
    display: block;
    max-height: 273px
}

.project_img_inline_title {
    padding: .25em 0 .5em 1em;
    border-left: 6px solid #3498db;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    border-right: 1px solid #ccc;
    background-color: #fff
}

.project_img_inline_img {
    border-left: 1px solid #ccc;
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    max-width: 100%;
    overflow: hidden
}

.project_img_inline_img img {
    width: 100%;
    max-height: 230px;
    object-fit: cover
}

@media screen and (max-width:640px) {
    .project_img_inline_img img {
        max-height: 92px
    }
}

.project_bnr_img,
.project_img_inline_img img {
    max-width: 100%;
    -webkit-transition: .3s ease-in-out;
    -moz-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
    vertical-align: bottom
}

.project_bnr_img:hover,
.project_img_inline_img img:hover {
    -moz-transform: scale(1.1, 1.1);
    -webkit-transform: scale(1.1, 1.1);
    -ms-transform: scale(1.1, 1.1);
    opacity: .8
}

#project_bnr,
#project_img,
#sns {
    display: flex
}

#project_bnr a:hover,
#project_img a:hover {
    border-bottom: 0
}

.fb-page {
    width: 100% !important
}

.is-mobile .facebook-wrapper {
    max-width: 500px;
    margin: 0 auto
}

.is-mobile .facebook-wrapper>.fb-page {
    width: 100%
}

.is-mobile .facebook-wrapper iframe,
.is-mobile .facebook-wrapper>.fb-page>span {
    width: 100% !important
}

.insta-list {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
}

.insta-list li {
    list-style: none;
    width: 32%;
    padding-top: 33%;
    overflow: hidden;
    position: relative;

}
.insta-list li a {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: flex;
    justify-content: center;
    align-items: center;
}

.insta-list li img {
    object-fit: cover;
    width: 100%;
    height: 100%
}

.submitwrap {
    padding: 1em 0
}

.footerlink,
.footerlinklist {
    overflow: hidden;
    max-width: 100%
}

.footerlinklist {
    width: 300px;
    padding: 0;
    margin: 2em auto 0;
    list-style: none
}

.footerlinklist li {
    width: 100%;
    margin-right: 1%
}

.footerlinklist li:last-child {
    margin-top: 2em
}

.footerlinklist li a.btn {
    width: 100%;
    font-size: 80%;
    padding: .5em;
    color: #bfbfbf
}

.footerlinklist li img {
    width: 100%
}

.pattern {
    width: 100%;
    height: 100%;
    background: url(../../images/yokojima.png);
    position: fixed;
    top: 0;
    left: 0;
    z-index: -99
}

@media screen and (min-width:980px) and (max-width:1200px) {

    .fb-page,
    .txc {
        text-align: center
    }

    #iFrameResizer0 {
        max-width: 500px
    }
}

.his {
    max-width: 80%;
    margin: 0 auto 1rem auto
}

.his-logo {
    max-width: 80%;
    transition: all 1s ease-out
}

.his-logo:hover {
    opacity: .7
}

.dships {
    width: 60%;
    margin: 0 auto
}

.dships-txt {
    margin-top: -5px;
    color: #bb0a17;
    font-size: .6em;
    line-height: 1.2
}

.dships-txt u {
    color: #bb0a17
}

.zen {
    margin-top: 2rem;
    text-align: left;
    font-size: .6em;
    line-height: 1.2em
}

.zen-img {
    max-width: 99%;
    display: block;
    box-shadow: 0 0 2px #ccc;
    line-height: 0
}

.zen .zen-txt {
    margin-top: .5rem
}

#project_headpic {
    background: url(../../images/project_headpic.jpg);
    background-size: cover;
    top: 0;
    bottom: 0;
    height: auto;
    min-height: 100%;
    min-width: 100%;
    position: fixed;
    right: 0;
    width: auto;
    z-index: -100
}

#foundation_headpic {
    background: url(../../images/foundation_headpic.jpg);
    background-size: cover;
    top: 0;
    bottom: 0;
    height: auto;
    min-height: 100%;
    min-width: 100%;
    position: fixed;
    right: 0;
    width: auto;
    z-index: -100
}

#foundation_headpic::before {
    background-color: rgba(0, 0, 0, .5);
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    content: ' '
}

@media screen and (min-width:651px) {
    #sgg_headpic {
        display: none
    }
}

#sgg_videoend_headpic {
    display: none;
    background: url(../../images/sgg_top_headpic_pc.jpg);
    background-size: cover;
    top: 0;
    bottom: 0;
    height: auto;
    min-height: 100%;
    min-width: 100%;
    position: fixed;
    right: 0;
    width: auto;
    z-index: -100
}

@media screen and (min-width:651px) {
    #scubadiving_headpic {
        background: url(../../images/scubadiving_top_headpic.jpg);
        background-size: cover;
        top: 0;
        bottom: 0;
        height: auto;
        min-height: 100%;
        min-width: 100%;
        position: fixed;
        right: 0;
        width: auto;
        z-index: -100
    }

    #scubadiving_headpic_bg {
        background-position: center center;
        background-size: cover;
        width: 100%;
        height: 100vh
    }
}

@media screen and (max-width:650px) {
    #scubadiving_headpic {
        background: url(../../images/sgg_top_headpic.jpg);
        background-size: contain;
        top: 0;
        bottom: 0;
        height: auto;
        min-height: 100%;
        min-width: 100%;
        position: fixed;
        right: 0;
        width: auto;
        z-index: -100
    }

    #scubadiving_headpic_bg {
        background-position: center center;
        background-size: cover;
        width: 100vw;
        height: 100vh
    }
}

.bgc-g {
    background-color: #f8f5f5
}

.bg-tp {
    background-color: transparent !important
}

.txa-c {
    text-align: center
}

.txa-r {
    text-align: right
}

.txa-l {
    text-align: left
}

.strong {
    font-weight: 700
}

.fs-d1 {
    font-size: 90%
}

.fs-d2 {
    font-size: 80%
}

.fs-u1 {
    font-size: 110%
}

.mgb-20 {
    margin-bottom: 20px
}

.wmax {
    width: 100%
}

.txtlnk {
    color: #00f;
    text-decoration: underline
}

.imgresp img {
    width: 100%
}

.imgresp.harf img {
    width: 50%
}

@media screen and (max-width:894px) {
    .imgresp.harf img {
        width: 100%
    }
}

@media screen and (max-width:420px) {
    .project_img_inline_title {
        height: 55px
    }
}

.scubadiving .stay .image {
    width: 100% !important
}

@media all and (-ms-high-contrast:none) {
    #banner h2 {
        margin-top: 5%
    }
}

.actions-mute i {
    color: #fff
}

.contact_block {
    list-style: none;
    display: flex;
    padding: 0;
    margin: 0 auto;
    width: 460px;
    justify-content: center
}

.contact_block ul {
    padding: 0;
    margin: 0 auto
}

.contact_block li {
    padding: 0;
    margin: 0 auto
}

.contact_block li a {
    margin: 0 10px
}

@media screen and (max-width:736px) {
    .contact_block {
        display: block;
        width: 100%
    }

    .contact_block ul {
        padding: 0;
        margin: 0 auto
    }

    .contact_block li {
        padding: 0;
        margin: 0 auto
    }

    .contact_block li a {
        margin: 10px auto;
        width: 230px
    }
}

.slider-next,
.slider-prev {
    cursor: pointer
}

.dships,
.footerlinklist,
.footerlinklist li {
    margin: 0 auto !important;
    padding: 0 !important
}

.activityoff {
    font-size: .8em;
    line-height: 1.2
}

.spon_sisap {
    color: #dedede;
    float: left;
    font-size: .7em;
    left: 10px;
    position: absolute;
    top: 95%
}

@media screen and (max-width:736px) {
    .spon_sisap {
        top: 90%
    }
}

.voice_underimage {
    text-align: center;
    font-size: .6em
}

.faci_peak {
    text-align: center;
    font-size: .85em;
    margin-top: -1em
}

.price_sgs {
    font-size: .9em
}

@media all and (-ms-high-contrast:none) {
    .actions-skip {
        display: none
    }
}

.tg .vilaprice td:nth-child(n+1) {
    text-align: center !important
}

td:empty,
th:empty {
    background-image: url(/assets/css/line.svg);
    background-size: 100% 100%
}

.tg .vilaprice th label {
    font-size: .78em
}

.gallery-box {
    list-style: none;
    display: flex;
    flex-flow: row wrap;
    justify-content: space-around
}

@media screen and (max-width:650px) {
    .gallery-box {
        flex-flow: column;
        justify-content: space-between
    }
}

.gallery-box {
    padding-left: 0
}

.gallery-box>li {
    flex: 0 0 29%;
    padding-left: 0;
    margin-bottom: 20px
}

.gallery-box .gallery-boder {
    border: solid 1px #ccc
}

.gallery-box .img-title {
    border-left: solid 6px #3498db;
    padding: .75rem
}

.gallery-box>li img {
    max-width: 100%;
    vertical-align: bottom
}

.more-btn-wrapper {
    position: relative
}

.more-btn>button {
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    bottom: -40px;
    width: 150px;
    text-align: center;
    border: solid 1px #666;
    background-color: #333;
    color: #fff;
    border-radius: 10px
}

.more-btn>button:hover {
    opacity: .8;
    background-color: #787878 !important
}

.hidden-box-wrapper {
    display: none
}

.video {
    border: solid 1px #333;
    max-width: 100%;
    min-height: 179px;
    background-color: #000
}

@media screen and (min-width:796px) {
    .video {
        min-height: 236px
    }
}

.bg-facirity {
    background: url(../../images/mv_facirity.jpg);
    background-size: cover
}

@media screen and (max-width:650px) {
    .company-wrapper dt {
        background-color: #f8f5f5;
        font-weight: 700;
        float: none;
        padding-left: 0;
        display: block;
        width: 100%;
        border-top: 1px solid #46b499;
        border-bottom: 1px solid #46b499;
        box-shadow: 0 2px 1px -1px #46b499 inset
    }

    .company-wrapper dd {
        margin-left: 0
    }
}

@media screen and (max-width:351px) {
    .heigth-Adjustment {
        max-height: 138px
    }
}

.reserve-wrap-pc {
    display: flex;
    flex-flow: column;
    position: fixed;
    top: 65px;
    right: 1%;
    z-index: 1
}

.reserve-wrap-sp {
    display: none
}

@media (max-width:550px) {
    .reserve-wrap-pc {
        display: none
    }

    .reserve-wrap-sp {
        display: block;
        position: fixed;
        bottom: 0;
        width: 100%;
        z-index: 100
    }

    .reserve-wrap-sp-inner {
        display: flex;
        flex-wrap: nowrap
    }

    .reserve-sp-title {
        background-color: #fff;
        text-align: center
    }
}

.reserve {
    box-sizing: border-box;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    border: 1px solid #fff;
    font-size: 14px;
    padding: 8px;
    color: #fff;
    text-align: center;
    width: 10%;
    min-width: 169px;
    margin-bottom: 10px;
    -webkit-transition: 1s ease-in-out;
    -moz-transition: 1s ease-in-out;
    -o-transition: 1s ease-in-out
}

@media (max-width:550px) {
    .reserve-wrap-sp .reserve {
        border-radius: 0;
        width: calc(100% / 3);
        min-width: initial;
        padding: 16px 0;
        flex-shrink: 1;
        margin-bottom: 0
    }
}

.reserve:hover {
    color: #ff0
}

.hotel-rv {
    background-color: #009100
}

.hotel-rv:hover {
    background-color: #f30
}

.activity-rv {
    background-color: #ff9100
}

.activity-rv:hover {
    background-color: #df7e00
}

.diving-rv {
    background-color: #5900ff
}

.diving-rv:hover {
    background-color: #4000b6
}

.reserve>a {
    display: block;
    height: auto
}

@media screen and (max-width:550px) {
    .reserve {
        min-width: auto
    }

    .hotel-rv {
        top: auto;
        bottom: 0;
        left: 0;
        width: 50%;
        transform: none
    }

    .activity-rv {
        top: auto;
        bottom: 0;
        right: 0;
        width: 50%;
        transform: none
    }
}

.photo-gallery {
    background: url(../../images/photo-gallery.jpg) repeat-x;
    background-size: cover;
    animation: 120s loop infinite linear;
    -webkit-animation: 120s loop infinite linear;
    height: 470px
}

@media (max-width:480px) {
    .photo-gallery {
        height: 200px
    }
}

@keyframes loop {
    from {
        background-position-x: 0
    }

    to {
        background-position-x: -2700px
    }
}

img.opacity {
    filter: opacity(40%)
}

.attention {
    font-size: .9em;
    padding: 1em 3em
}
