@charset "UTF-8";

/* YUI 3.5.0 reset.css (http://developer.yahoo.com/yui/3/cssreset/) - http://cssreset.com */
html{color:#000;background:#fff}blockquote,body,code,dd,div,dl,dt,fieldset,form,h1,h2,h3,h4,h5,h6,input,legend,li,ol,p,pre,td,textarea,th,ul{margin:0;padding:0}table{border-collapse:collapse;border-spacing:0}fieldset,img{border:0}address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:400}ol,ul{list-style:none}caption,th{text-align:left}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:400}q:after,q:before{content:''}abbr,acronym{border:0;font-variant:normal}sup{vertical-align:text-top}sub{vertical-align:text-bottom}input,select,textarea{font-family:inherit;font-size:inherit;font-weight:inherit;font-size:100%}legend{color:#000}#yui3-css-stamp.cssreset{display:none}body,html{font-family: -apple-system, BlinkMacSystemFont, 'Helvetica Neue', 'Segoe UI', 'Hiragino Kaku Gothic ProN', 'Yu Gothic', sans-serif;-webkit-text-size-adjust:100%;letter-spacing:.08em;margin:0;padding:0;-webkit-tap-highlight-color:rgba(0,0,0,0);font-size:1pc;line-height:1.6;color:#333;background: #111;-webkit-overflow-scrolling:touch;overflow-x:hidden;}a{transition:opacity .3s;-webkit-transition:opacity .3s;-moz-transition:opacity .3s;-o-transition:opacity .3s;-ms-transition:opacity .3s;-webkit-tap-highlight-color:rgba(0,0,0,0.1);text-decoration:none !important;}a,a:hover{cursor:pointer;outline:0;border:0}a:hover{opacity:.75;text-decoration:none}a:focus{outline:0}.clearfix:after{content:" ";display:block;clear:both}
body {
    background: -ms-linear-gradient(90deg, #1e003a, #2c0118, #1e003a);
    background: -moz-linear-gradient(90deg, #1e003a, #2c0118, #1e003a);
    background: linear-gradient(90deg, #1e003a, #2c0118, #1e003a);
    background-size: 200%;
}

img.lazyfade,iframe.lazyfade {
    transition: opacity .3s ease-out;
    opacity: 0;
}
img.lazyload,iframe.lazyload {
    opacity: .2;
}
img.lazyloaded,iframe.lazyloaded {
    opacity: 1;
}

.ent_mainvisual_outer {
    position: relative;
    width: 100%;
    height: 90vh;
    min-height: 700px;
    z-index: 0;
    overflow: hidden;
}
.ent_mainvisual_outer h1 {
    width: 94%;
    margin: 0 auto;
    position: absolute;
    top: 8px;
    left: 15px;
    z-index: 1001;
    font-size: 11px;
    letter-spacing: 0em;
    text-shadow: 0 0 3px rgba(0,0,0, .6);
    font-weight: normal;
    color: #fff;
    line-height: 1.2;
}
.ent_mainvisual_pc {
    background: url(../imgs/index/index_mv.jpg) no-repeat;
    width: 100%;
    height: 90vh;
    min-height: 700px;
    background-size: cover;
    background-position: center;
    display: block;
    z-index: 0;
}
.ent_mainvisual_pc:hover {
    opacity: 1;
}
.ent_mainvisual_sp{
    display: none;
}
.mainvisual_logo {
    display: block;
    width: 100%;
    max-width: 320px;
    position: absolute;
    top: 5px;
    left: 5px;
    z-index: 10;
}
@media screen and (max-width: 768px) {
    .ent_mainvisual_outer {
        position: relative;
        width: 100%;
        height: 640px;
        min-height: auto;
        z-index: 0;
        overflow: hidden;
    }

    .ent_mainvisual_outer h1 {
        top: 5px;
        left: 5px;
        font-size: 9px;
    }

    .ent_mainvisual_pc{
        display: none;
    }
    .ent_mainvisual_sp {
        background: url(../imgs/index/index_mv.jpg) no-repeat;
        width: 100%;
        height: 640px;
        background-size: cover;
        background-position: center;
        display: block;
        z-index: 0;
    }

    .mainvisual_logo {
        max-width: 180px;
        top: 5px;
    }
}

/*.translation_text_outer {
    padding: 0 0 10px;
}
.translation_text {
    font-size: 16px;
    font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    letter-spacing: 0em;
    color: #999;
}

.translation_switch_window {
    text-align: center;
    margin: 20px 0;
}
.goog-te-gadget-simple {
    background-color: #745cd6 !important;
    background: -ms-linear-gradient(top left, #B24F8F, #745cd6) !important;
    background: -moz-linear-gradient(top left, #B24F8F, #745cd6) !important;
    background: -webkit-linear-gradient(top left, #B24F8F, #745cd6) !important;
    background: linear-gradient(to bottom right, #B24F8F, #745cd6) !important;
    border: none !important;
    font-size: 18pt !important;
    display: inline-block;
    padding-top: 1px;
    padding-bottom: 2px;
    cursor: pointer;
    zoom: 1;
    *display: inline;
    border-radius: 4px !important;
    height: 48px !important;
    line-height: 40px !important;
    border: 1px solid #745cd6 !important;
    width: 240px;
}
.goog-te-gadget-simple .goog-te-menu-value {
    color: #fff !important;
    font-weight: bold !important;
    font-size: 18px;
    padding: 10px 8px;
}
.goog-te-gadget-simple .goog-te-menu-value span{
    color: #fff !important;
    font-weight: bold !important;
}
.goog-te-gadget-simple .goog-te-menu-value span:nth-child(3){
    border-left: 1px solid rgb(2555, 2555, 2555) !important;
}
.goog-te-gadget-icon {
    margin-left: 2px;
    margin-right: 2px;
    width: 19px;
    height: 19px;
    border: none;
    vertical-align: middle;
    margin: 2px 0 0 12px !important;
    border-radius: 4px;
}
@media screen and (max-width: 768px) {
    .translation_text_outer {
        padding: 0 0 5px;
    }
    .translation_text {
        font-size: 13px;
    }

    .goog-te-gadget-simple .goog-te-menu-value {
        font-size: 16px;
        padding: 2px 0px;
    }
    .goog-te-gadget-icon {
        margin: 4px 2px 0 12px !important;
    }
}*/

.ent_section01 {
    width: 100%;
    padding: 40px 0;
    background: #000; 
    background: -ms-linear-gradient(120deg, #333, #000, #333);
    background: -moz-linear-gradient(120deg, #333, #000, #333);
    background: linear-gradient(120deg, #333, #000, #333);
    background-size: 100%;
}
.pc_ent_section01_01 {
    width: 100%;
    max-width: 1600px;
    margin: 0 auto;
    text-align: center;

    position: absolute;
    bottom: 80px;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
}

.enter_btn {
}
.enter_btn a {
    color: #eeca04;
    width: 400px;
    font-size: 42px;
    letter-spacing: 0em;
    font-weight: bold;
    text-align: center;
    box-shadow: 0 1px 36px rgba(0, 0, 0, 1);
    border-radius: 2px;
    border: 1px solid #000;
    display: inline-block;
    line-height: 1;
    font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    padding: 12px 0;
    margin: 5px 0;

    background: #222; 
    background: -ms-linear-gradient(90deg, #222, #111);
    background: -moz-linear-gradient(90deg, #222, #111);
    background: linear-gradient(90deg, #222, #111);
    background-size: 100% 100%;
    padding: 12px 24px;
    border-radius: 2px;
    text-shadow: -1px -1px 1px #000, 1px -1px 1px #000, -1px 1px 1px #000, 1px 1px 1px #000;
    letter-spacing: 0em;
}
.enter_btn a:nth-child(2) {
    width: 280px;
}

.enter_btn a span:first-child {
    display: block;
    font-size: 15px;
    padding: 2px 0;
    color: #fff;
}
.enter_btn a span:last-child {
    display: block;
    font-size: 13px;
    padding: 2px 0;
    font-weight: normal;
    color: #fff;
}
.adult_attention {
    font-weight: normal;
    font-size: 13px;
    color: #fff;
    font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    text-shadow: 0 0 6px rgba(0,0,0, 1);
    padding: 20px 0 0 0;
    text-shadow: -1px -1px 1px #000, 1px -1px 1px #000, -1px 1px 1px #000, 1px 1px 1px #000;
    line-height: 1.3;
}
.enter_btn a.leave_button {
    color: #fff;
    font-size: 14px;
    letter-spacing: 0em;
    font-weight: normal;
    text-align: center;
    display: inline-block;
    font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    text-shadow: 0 0 6px rgba(0,0,0, 1);
    background: none;
    border: none;
    box-shadow: none;
    text-decoration: underline !important;
    margin: 0;
    padding: 0;
    text-shadow: -1px -1px 1px #000, 1px -1px 1px #000, -1px 1px 1px #000, 1px 1px 1px #000;
}
@media screen and (max-width: 768px) {
    .pc_ent_section01_01 {
        position: absolute;
        bottom: 20px;
    }

    .enter_btn a {
        width: 80%;
        max-width: 360px;
        font-size: 32px;
        display: block;
        padding: 10px 0;
        margin: 5px auto; 
    }
    .enter_btn a:nth-child(2) {
        width: 80%;
        max-width: 360px;
        font-size: 26px;
        display: block;
        padding: 5px 0;
        margin: 5px auto; 
    }

    .enter_btn a span:first-child {
        font-size: 12px;
    }
    .enter_btn a span:last-child {
        font-size: 10px;
    }
    .enter_btn a:nth-child(2)  span:first-child {
        font-size: 10px;
    }
    .enter_btn a:nth-child(2)  span:last-child {
        font-size: 9px;
    }
    .adult_attention {
        font-size: 11px;
        padding: 10px 0 0 0;
    }
    .enter_btn a.leave_button {
        font-size: 12px;
    }
}
.ent_section01_02 {
    width: 100%;
    max-width: 720px;
    margin: 10px auto 30px;
}
.ent_section01_02 img {
    display: block;
    float: left;
    max-width: 54px;
    padding: 20px 0 0 0;
}
.ent_section01_02 p {
    float: right;
    width: 90%;
    max-width: 700px;
    padding: 25px 0 0 0;
    font-size: 14px;
    letter-spacing: 0em;
    color: #999;
}
@media screen and (max-width: 960px) {
    .ent_section01_01_left {
        display: block;
        float: none;
        width: 100%;
        max-width: 440px;
        margin: 0 auto 10px;
    }
    .ent_section01_01_right {
        display: block;
        float: none;
        width: 100%;
        max-width: 440px;
        margin: 0 auto;
    }
    .ent_section01_02 {
        width: 94%;
        max-width: 800px;
        margin: 10px auto 30px;
    }
    .ent_section01_02 img {
        display: block;
        float: none;
        max-width: 48px;
        padding: 5px 0 0 0;
        margin: 0 auto;
    }
    .ent_section01_02 p {
        float: none;
        width: 100%;
        max-width: 700px;
        padding: 5px 0 0 0;
        font-size: 11px;
        margin: 0 auto;
        letter-spacing: 0em;
        font-weight: normal;
        text-align: center;
        line-height: 1.3;
    }
}
@media screen and (max-width: 768px) {
    .ent_section01 {
        width: 100%;
        padding: 20px 0;
        margin: 0;
        position: relative;
        z-index: 1000;
    }

    .ent_section01_01_left {
        display: block;
        float: none;
        width: 94%;
        max-width: 440px;
        margin: 0 auto 10px;
    }
    .ent_section01_01_right {
        display: block;
        float: none;
        width: 94%;
        max-width: 440px;
        margin: 0 auto;
    }
}
.ent_phone {
    width: 250px;
    height: 490px;
    background-image: url(../../imgs/iphone_bg.png);
    float: left;
    margin: 40px 0 0 40px;
}
.ent_phone_inner {
    margin: 70px 0 0 23px;
}
.ent_subtitle {
    width: 94%;
    max-width: 920px;
    margin: 0 auto;
    padding: 40px 0;
}
.ent_subtitle h2 {
    color: #fff;
    font-weight: bold;
    font-size: 20px;
    line-height: 1.4;
}
.ent_subtitle h3 {
    color: #fff;
    font-weight: bold;
    font-size: 18px;
    line-height: 1.4;
    margin: 40px 0 0 0;
}
.ent_phone_area {
    padding: 40px 0;
    text-align: center;
    max-width: 1600px;
    margin: 0 auto;
}
.window_cityheaven_syame {
    margin: 5px auto;
    width: 300px;
    max-width: 300px;
    height: 490px;
    max-height: 490px;
    display: inline-block;
}
.window_cityheaven_syame iframe {
    height: 490px;
    max-height: 490px;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
}
.ent_phone_area iframe {
    height: 490px;
    max-height: 490px;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
}
@media screen and (max-width: 768px) {
    .window_cityheaven_syame {
        margin: 5px auto;
        height: 490px;
        max-height: 490px;
    }
    .window_cityheaven_syame iframe {
        width: 100%;
        max-width: 300px;
        height: 100%;
        max-height: 490px;
        display: block;
        margin: 0 auto;
        overflow-y: scroll;
        -webkit-overflow-scrolling: touch;
    }

    .ent_phone_area {
        padding: 40px 0;
        text-align: center;
    }
    .ent_phone_area iframe {
        float: none !important;
        display: block !important;
        padding: 0 !important;
        margin: 5px auto !important;
        width: 300px !important;
        max-width: 320px !important;
        height: 490px !important;
        -webkit-overflow-scrolling: touch;
        overflow: hidden;
    }
}
.ent_section03 {
    width: 100%;
    padding: 40px 0;
    /*background: #000; 
    background: -ms-linear-gradient(120deg, #333, #000, #333);
    background: -moz-linear-gradient(120deg, #333, #000, #333);
    background: linear-gradient(120deg, #333, #000, #333);
    background-size: 100%;*/
    overflow: hidden;
}
.ent_section03 .ent_text_area {
    position: relative;
    z-index: 2;
    clear: both;
    padding: 20px 0 0 0;
}
.ent_text_area {
    width: 94%;
    max-width: 980px;
    margin: 0 auto;
}
.ent_text_area strong {
    font-weight: bold;
    font-size: 16px;
    color: #ccc;
}
.ent_text_area span {
    color: #999;
    display: inline-block;
    float: left;
    margin: 0 4px 0 0;
}
.ent_text_area hr {
    display: none;
}
.ent_text_area p {
    padding: 10px 0 0;
    font-size: 12px;
    color: #999;
}
.ent_text_area a {
    color: #999;
}
@media screen and (max-width: 768px) {
    .ent_section03 {
    }
    .ent_text_area p {
        padding: 10px 0 0;
        font-size: 11px;
    }
}
@media screen and (max-width: 480px) {
    .ent_section03 {
        width: 100%;
        height: 100%;
        padding: 60px 0 60px;
    }
    .ent_subtitle h2 {
        color: #fff;
        font-weight: bold;
        font-size: 20px;
        line-height: 1.3;
    }
    .ent_subtitle h3 {
        color: #fff;
        font-weight: bold;
        font-size: 16px;
        line-height: 1.3;
        margin: 20px 0 0 0;
    }
    .ent_text_area strong {
        font-weight: bold;
        font-size: 13px;
    }
    .ent_text_area p {
        padding: 10px 0 0;
        font-size: 11px;
        line-height: 1.3;
    }
}
.ent_section04 {
    width: 100%;
    padding: 50px 0;
    margin: 0;
    position: relative;
    z-index: 3;
}
.ent_headline_outer {
    text-align: center;
    padding: 0 0 20px 0;
}
.ent_headline {
    display: inline-block;
    font-size: 16px;
    color: #fff;
}
.ent_link_area {
    width: 94%;
    max-width: 980px;
    padding: 20px 20px 30px;
    border-radius: 3px;
    margin: 10px auto;
    box-sizing: border-box;
}
.ent_link_area_table_outer img {
    display: inline-block;
    width: auto;
    max-idth: 100%;
    margin: 0 auto;
}
.ent_link_area_table_outer {
    text-align: center;
    width: 94%;
    margin: 0 auto;
}
.ent_link_area_table {
    display: inline-block;
    margin: 0 auto;
}
.ent_link_area_table td h5 {
    font-size: 16px;
    font-weight: bold;
    padding: 8px 0 0 0;
    color: #fff;
}
.ent_link_area_table td p {
    font-size: 12px;
    font-weight: normal;
    line-height: 1.3;
    color: #fff;
}
.ent_link_area_banner_outer {
    text-align: center;
}
.ent_link_area_banner {
    display: inline-block;
    width: 100%;
    max-width: 480px;
    margin: 0 auto;
    text-align: left;
    color: #fff;
}
.ent_link_area_banner p{
    font-size: 13px;
    word-break: break-all;
}
.ent_link_area_banner img {
    display: inline-block;
    width: 100%;
    margin: 0 auto 8px;
}
.ent_link_area_banner_bottom {
    text-align: center;
    font-size: 12px;
    padding: 20px 0 0 0;
    color: #fff;
}
.ent_link_area_banner_bottom p img {
    display: inline-block;
    margin: 0 0 -12px 0;
}
.ent_link_area_list {
    text-align: center;
}
.ent_link_area_list a {
    color: #fff;
}
/*.ent_link_area_list a img{
  display: inline-block;
  width: auto;
  max-width: 100%;
  height: auto;
}*/

.link_box {
    padding: 20px 0 0;
    margin: 0 auto;
    text-align: center;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: top;
}
.link_box li {
    margin: 3px;
    max-width: 140px;
    line-height: 100%;
    vertical-align: top;
    text-align: center;
}
.link_box li a {
    display: block;
}
.link_box li img {
    display: block;
    width: auto;
    max-width: 140px;
    height: auto;
    object-fit: contain;
    margin: 0 auto;
}
.link_box p {
    font-size: 11px;
    padding: 10px 0 5px;
    max-width: 140px;
    color: #999;
    line-height: 100%;
    text-align: center;
    font-feature-settings: "palt";
}
.link_box p img {
    display: block;
    width: 100%;
    height: auto;
}

.happyhellowork {
    margin-top: 20px;
    text-align: center;
}
.happyhellowork a {
    display: block;
    font-size: 16px;
    text-decoration: underline !important;
}
.happyhellowork a:hover {
    text-decoration: underline;
}

/*.vanilla_banner {
    text-align: center;
    padding: 0 10px;
}
.vanilla_banner img {
    display: inline-block;
    width: auto;
    max-width: 100%;
    height: auto;
}*/
.ent_footer {
    width: 94%;
    margin: 0 auto;
    text-align: center;
    padding: 30px 0 20px;
    font-weight: normal;
    color: #fff;
}
.copyright {
    width: 100%;
    margin: 0 auto;
    text-align: center;
    font-size: 9px;
    font-weight: normal;
    color: #999;
    padding: 8px 0;
}
@media screen and (max-width: 480px) {
    .ent_section04 {
        width: 100%;
        padding: 50px 0;
        margin: 20px 0 0 0;
        position: relative;
        z-index: 3;
    }
    .ent_footer {
        padding: 20px 0;
        font-size: 15px;
    }
}

.fc_shop_outer {
    padding: 40px 15px;
    text-align: center;
}
.fc_shop_inner {
    max-width: 1200px;
    margin: 0 auto;
}
.fc_shop {
    padding: 5px 0;
    max-width: 150px;
    display: inline-block;
    vertical-align: top;
}
.fc_shop img {
    display: block;
    width: 100%;
    height: auto;
    vertical-align: top;
}
.fc_shop p {
    font-size: 9px;
    letter-spacing: -0.02em;
    text-align: left;
    line-height: 1.2;
    padding: 4px 0 0;
    color: #999;
}
@media screen and (max-width: 960px) {
    .fc_shop_outer {
        padding: 40px 0;
    }
    .fc_shop {
        padding: 3px 0;
        max-width: 110px;
    }
    .fc_shop p {
        font-size: 9px;
        padding: 3px 0 0;
    }
    .fc_shop img {
        height: auto;
    }
}