@charset "UTF-8";

html{overflow-y:scroll;}

.main_vi_wrap{background-color:#fff;}
#main_vi{margin-left:calc((100% - 960px) / 2);margin-right:0;position:relative;}
#main_vi > .inner{padding-bottom:30px;padding-top:240px;position:relative;}
#main_vi .main_copy {color:var(--color);text-align:left;opacity:0;}
#main_vi .main_copy .en {font-family:'Jost', sans-serif;font-size:48px;font-weight:900;line-height:1.2;display:block;margin-bottom:160px;}
#main_vi .main_copy .en .txt_line{display:block;}
#main_vi .main_copy .en .txt_line span{display:inline-block;opacity:0;}
#main_vi .main_copy .jp{font-size:20px;line-height:1.2;font-weight:400;letter-spacing:0.08em;text-align:right;display:block;margin-right:50px;}
#main_vi .main_copy .jp .txt_line span{display:inline-block;opacity:0;}
#main_vi .main_copy .jp > span{vertical-align:baseline;display:inline-block;}
#main_vi .main_copy .jp .logo{font-size:1px;line-height:0;height:27px;width:190px;}
#main_vi .main_copy .jp .logo svg{height:auto;width:100%;}
#main_vi .bg_movie_box{height:400px;width:100%;position:relative;overflow:hidden;z-index:1;}
#main_vi .bg_movie_box .bg_movie{object-fit:cover;height:100%;width:100%;/*opacity:0;*/position:absolute;top:0;left:0;}

#content{overflow:hidden;}
#content .sec_wrap{background-color:#fff;}

.top_c_ttl{font-size:100%;margin-bottom:60px;}
.top_c_ttl .en{font-size:3.5em;font-weight:500;color:var(--color);letter-spacing:0.04em;text-align:left;display:block;white-space:nowrap;}
.top_c_ttl .jp{font-size:1.4em;font-weight:700;color:var(--color-gray2);letter-spacing:0.08em;text-align:left;display:block;margin-top:7px;transition:color .3s;}
.top_c_ttl > span > span{display:inline-block;}
@media only screen and (max-width: 767px) {
    .top_c_ttl{margin-bottom:30px;}
    .top_c_ttl .en{font-size:2.5em;}
    .top_c_ttl .jp{font-size:1.3em;margin-top:5px;}
}

.suumo_btn{text-align:center;box-sizing:border-box;padding:0 20px;margin:80px auto;}
.suumo_btn a{display:flex;justify-content:center;align-items:center;max-width:470px;background-color:#6bbc3a;border-radius:10px;margin:0 auto;text-decoration:none;font-size:23px;font-weight:700;color:#FFF;padding:25px 0;letter-spacing:0.05em;}
.suumo_btn a span{display:inline-block;margin-left:30px;}
.suumo_btn .suumo_btn_txt{font-size:1.6em;line-height:1.6;letter-spacing:0.04em;padding-top:20px;}
@media only screen and (min-width: 768px) {
  .suumo_btn a{transition:opacity 0.3s;}
  .suumo_btn a:hover{opacity:0.7;}
}
@media only screen and (max-width: 767px) {
  .suumo_btn{margin:60px auto;}
  .suumo_btn a{max-width:100%;width:100%;font-size:16px;}
  .suumo_btn a span{margin-left:20px;width:20px;}
  .suumo_btn a span img{width:100%;height:auto;}
  .suumo_btn .suumo_btn_txt{font-size:1.4em;line-height:1.5;text-align:left;text-indent:-1em;padding-left:1em;}
}
@media only screen and (max-width: 374px) {
  .suumo_btn a{font-size:14px;}
}

#search{background-color:var(--color-bg-gray2);position:relative;margin-top:-58px;padding-top:58px;}
#search .ttll{font-size:200px;font-weight:600;color:var(--color-bg-gray2);letter-spacing:0.08em;transform:rotate(90deg);transform-origin:0 0;text-shadow:1px 1px 0 #ddd, -1px -1px 0 #ddd, -1px 1px 0 #ddd, 1px -1px 0 #ddd, 0px 1px 0 #ddd,  0-1px 0 #ddd, -1px 0 0 #ddd, 1px 0 0 #ddd;position:absolute;left:102%;top:20px;}
#search > .inner{max-width:960px;margin:0 auto;padding-bottom:120px;padding-top:0;position:relative;z-index:1;}
#search .phase01{display:flex;}
#search .phase02{display:flex;margin-top:30px;}
#search .box{position:relative;overflow:hidden;}
#search .box .mask{height:100%;width:100%;position:absolute;left:0;top:0;z-index:10;transform-origin:left top;}
#search .box.fw .mask{background-color:#f2f2f2;}
#search .box.voice .mask{background-color:#e1e1e1;}
#search .box.kind .mask{background-color:#efefef;}
#search .box.map .mask{background-color:#ededed;}
#search .box.contents .mask{background-color:#d9d9d9;}
#search .box.school .mask{background-color:#f2f2f2;}
#search .box .ttl{font-size:2.4em;font-weight:500;color:var(--color);letter-spacing:0.04em;transition:color .3s;}
#search .box .ttl > span{font-size:60%;font-weight:700;color:var(--color-gray2);letter-spacing:0.08em;display:block;margin-top:5px;transition:color .3s;}
#search .phase01 .box_wrap{display:flex;flex-wrap:wrap;justify-content:flex-end;width:100%;flex:1;text-align:right;}
#search .phase01 .box_wrap .box:not(:last-child){margin-bottom:30px;}
#search .phase01 .box_wrap .box.fw{width:320px;}
#search .phase01 .box_wrap .box.fw > .inner{text-align:left;display:block;background-color:#fff;width:100%;margin-left:auto;margin-right:0;padding:25px;box-sizing:border-box;border:1px solid var(--color);}
#search .phase01 .box_wrap .box.fw .ttl{margin-right:30px;}
#search .phase01 .box_wrap .box.fw .inpt_box{width:100%;margin-top: 13px;flex:1;position:relative;}
#search .phase01 .box_wrap .box.fw .inpt_box input{font-size:16px;line-height:50px;background:var(--color-bg-gray);height:50px;width:100%;padding:0 40px 0 15px;box-sizing:border-box;border:none;border-radius:3px;cursor:pointer;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;}
#search .phase01 .box_wrap .box.fw .inpt_box button{background:transparent;padding:0;border:none;border-radius:0;cursor:pointer;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;position: absolute;right:8px;top:50%;transform:translateY(-50%);transition:opacity .3s;}
@media only screen and (min-width: 768px) {
  #search .phase01 .box_wrap .box.fw .inpt_box button:hover{opacity:.6;}
}
#search .phase01 .box_wrap .box.voice{display:inline-block;}
#search .phase01 .box_wrap .box.voice > .inner{text-align:left;transition:background-color .3s;}
#search .phase01 .box_wrap .box.voice a{text-decoration:none;display:block;background-color:#fff;box-sizing:border-box;overflow:hidden;position:relative;transition:.2s;border:1px solid var(--color);}
#search .phase01 .box_wrap .box.voice a .ttl_wrap{padding:25px;box-sizing:border-box;position:relative;z-index:3;}
@media only screen and (min-width: 768px) {
  #search .phase01 .box_wrap .box.voice a:hover .ttl_wrap .ttl,
  #search .phase01 .box_wrap .box.voice a:hover .ttl_wrap .ttl span{color:#fff;}
}
#search .phase01 .box_wrap .box.voice a::before{content:"";display:block;background-color:var(--color);height:100%;width:100%;position:absolute;left:0;top:0;z-index:2;transition:transform .4s cubic-bezier(0.8, 0, 0.2, 1) 0s;transform:scale(0, 1);transform-origin:right top;}
@media only screen and (min-width: 768px) {
  #search .phase01 .box_wrap .box.voice a:hover::before{transform-origin:left top;transform:scale(1, 1);}
}
#search .phase01 .box_wrap .box.kind{width:100%;}
#search .phase01 .box_wrap .box.kind > .inner,
#search .phase01 .box_wrap .box.school > .inner{text-align:left;background-color:#fff;padding:25px;box-sizing:border-box;border:1px solid var(--color);}
#search .phase01 .box_wrap .box.kind ul{display:block;margin:13px 0px -5px;}
#search .phase01 .box_wrap .box.kind li{width:auto;margin:5px 0;}
#search .phase01 .box_wrap .box.kind li a,
#search .phase01 .box_wrap .box.school a{line-height:45px;height:45px;}
#search .phase01 .box_wrap .box.school a{margin-top: 18px;}
#search .phase01 .box.map{width:570px;margin-left:30px;}
#search .phase01 .box.map > .inner{background-color:#fff;height:100%;padding:25px 0 0;box-sizing:border-box;border:1px solid var(--color);}
#search .phase01 .box.map .ttl{text-align:left;margin-left:25px;}
#search .phase01 .box.map #map_search{height:auto;width:520px;enable-background:new 0 0 371 312.7;margin-top:58px;}
#search .phase01 .box.map #map_search .btn{cursor:pointer;}
#search .phase01 .box.map #map_search .btn .shape{fill:var(--color-bg-gray);stroke:var(--color);stroke-width:0.5;stroke-miterlimit:10;transition:fill .3s;}
@media only screen and (min-width: 768px) {
  #search .phase01 .box.map #map_search .btn:hover .shape{fill:var(--color-gray2);}
  #search .phase01 .box.map #map_search .btn:hover path{fill:#fff;}
}
@media only screen and (max-width: 767px) {
  #search .phase01 .box_wrap .box.kind > .inner,
  #search .phase01 .box_wrap .box.school > .inner{padding: 20px;}
}
#search .phase01 .box.map #map_search .line{fill:none;stroke:var(--color);stroke-width:1.5;stroke-miterlimit:10;}
#search .phase02 .box.contents{width:100%;margin-left:45px;flex:1;}
#search .phase02 .box.contents > .inner{text-align:left;background-color:#fff;padding:25px 0 25px 25px;box-sizing:border-box;border:1px solid var(--color);}
#search .phase02 .box.contents ul{display:flex;margin-top:20px;}
#search .phase02 .box.contents li{font-size:1.6em;line-height:1.3;letter-spacing:0.04em;}
#search .phase02 .box.contents li:not(:last-child){margin-right:20px;}
#search .phase02 .box.contents li a{color:var(--color);text-decoration:none;padding-left:1.2em;position:relative;transition:color .3s;}
@media only screen and (min-width: 768px) {
  #search .phase02 .box.contents li a:hover{color:var(--color-gray);}
}
#search .phase02 .box.contents li a::before{content:"";display:block;height:8px;width:8px;border-top:2px solid var(--color);border-right:2px solid var(--color);position:absolute;left:0;top:50%;transform:translateY(-50%) rotate(45deg);transition:border-color .3s, left .3s;}
@media only screen and (min-width: 768px) {
  #search .phase02 .box.contents li a:hover::before{left:4px;border-color:var(--color-gray);}
}
#search .phase01 .box.school{width:290px;margin-left:30px;}
#search .phase01 .box.school > .inner{text-align:left;transition:background-color .3s;}
#search .phase01 .box.school a .ttl_wrap{padding:25px 15px 25px 25px;box-sizing:border-box;position:relative;z-index:3;}
@media only screen and (min-width: 768px) {
  #search .phase01 .box.school a:hover .ttl_wrap .ttl,
  #search .phase01 .box.school a:hover .ttl_wrap .ttl span{color:#fff;}
  #search .phase01 .box.school a:hover::before{transform-origin:left top;transform:scale(1, 1);}
}
@media only screen and (max-width: 767px) {
    #search .phase01 .box.school{width: 100%;}
}

#town_search{padding-top:100px;position:relative;}
#town_search::before{content:"";display:block;background-color:#fff;position:absolute;left:calc((100% - 1200px) / 2);right:calc((100% - 960px) / 2);bottom:0;top:100px;z-index:1;}
#town_search::after{content:"";display:block;background:url(../images/town_search_bg.jpg) no-repeat center center;background-size:cover;/*background-attachment:fixed;*/position:absolute;left:0;right:calc((100% - 960px) / 2);bottom:0;top:0;}
#town_search > .inner{max-width:960px;margin:0 auto;padding-bottom:90px;padding-top:90px;position:relative;z-index:2;}
#town_search ul{display:flex;flex-wrap:wrap;margin:0 -15px;}
#town_search li{width:calc(25% - 30px);margin:0 15px 30px;}
#town_search li a{display:block;text-decoration:none;}
#town_search li a .img_wrap{display:block;overflow:hidden;position:relative;}
#town_search li a .img_wrap .img{font-size:1px;line-height:0;display:block;overflow:hidden;position:relative;}
#town_search li a .img_wrap .img img{height:auto;width:100%;transition:transform .3s cubic-bezier(0.8, 0, 0.2, 1) 0s;}
@media only screen and (min-width: 768px) {
  #town_search li a:hover .img_wrap .img img{transform:scale(1.2);}
}
#town_search li a .img_wrap .img .img_txt{font-size:16px;line-height:1.3;letter-spacing:0.08em;display:flex;justify-content:center;align-items:center;background:rgba(0, 0, 0, .7);color: #fff;height:100%;width:100%;left:0;opacity:0;position: absolute;right:0;bottom:0;top:0;transition:opacity .3s cubic-bezier(0.8, 0, 0.2, 1) 0s;}
@media only screen and (min-width: 768px) {
  #town_search li a:hover .img_wrap .img .img_txt{opacity:1;}
}
#town_search li a .img_wrap .mask{height:100%;width:100%;position:absolute;left:0;top:0;z-index:1;transform-origin:left top;}
#town_search li:nth-child(1n) a .img_wrap .mask{background-color:#f2f2f2;}
#town_search li:nth-child(2n) a .img_wrap .mask{background-color:#e1e1e1;}
#town_search li:nth-child(3n) a .img_wrap .mask{background-color:#d9d9d9;}
#town_search li a .txt{font-size:1.8em;line-height:1.3;color:var(--color);letter-spacing:0.08em;display:inline-block;margin-top:10px;}
#town_search li a .txt_en{font-size:1.3em;line-height:1.3;font-weight:500;color:var(--color-gray);letter-spacing:0.08em;display:inline-block;}
#town_search li a .txt_desc{font-size:1.4em;line-height:1.3;text-align: left;font-weight:500;color:var(--color);padding-top: 0.5em;display:block;}

#recommended{padding-bottom:190px;padding-top:120px;box-sizing:border-box;}
#recommended > .inner{max-width:960px;margin:0 auto;position:relative;z-index:1;position:relative;}
#recommended .side-scroll-list-wrapper{height:631px;margin-bottom:20px;}
#recommended .side-scroll-list-wrapper .side-scroll-list {position:absolute;left:0;top:0;}
#recommended>.inner>.c_btn {width: 100%;max-width: 360px;margin: 0 auto;position: absolute;left: calc(50% - 180px + ((100vw - 960px) / 4));bottom: -90px;}
#recommended .top_c_ttl{width:0;position:absolute;left:55px;top:0;transform:rotate(90deg);transform-origin:0 0;}
#recommended .top_c_ttl .jp{margin-bottom:-80px;writing-mode:vertical-rl;transform:rotate(-90deg);transform-origin:0 0;}
#recommended .top_c_ttl > span > span{transform:scale(3);opacity:0;}
#recommended .box_wrap{margin-left:100px;width:100%;transform:scale(0.5, 1);transform-origin:left top;/*transition:.5s cubic-bezier(.16,.6,.27,1);*/}
#recommended .box_wrap .row{display:flex;}
#recommended .box_wrap .row + .row{margin-left:-150px;}
#recommended .box_wrap .box{display:flex;align-items:center;justify-content:center;width:240px;height:auto;margin-bottom:50px;margin-left:50px;position:relative;}
#recommended .box_wrap .box a{display:block;height:100%;width:100%;text-decoration: none;opacity:0;position:relative;z-index:1;}
#recommended .box_wrap .box a::after{content:"";display:block;height:180px;width:100%;box-sizing:border-box;position:absolute;left:-8px;top:-8px;border:2px solid var(--color);transition:opacity .3s cubic-bezier(0.8, 0, 0.2, 1) 0s, left .3s cubic-bezier(0.8, 0, 0.2, 1) 0s, right .3s cubic-bezier(0.8, 0, 0.2, 1) 0s;}
@media only screen and (min-width: 768px) {
  #recommended .box_wrap .box a:hover::after{opacity:0;left:0;right:0;}
}
#recommended .box_wrap .box a .img{font-size:1px;line-height:0;display:block;height:180px;width:100%;overflow:hidden;}
#recommended .box_wrap .box a .img img{object-fit:cover;height:100%;width:100%;transition:transform .3s cubic-bezier(0.8, 0, 0.2, 1) 0s;}
@media only screen and (min-width: 768px) {
  #recommended .box_wrap .box a:hover .img img{transform:scale(1.2);}
}
@media only screen and (max-width: 767px) {
    #recommended .box_wrap .box a::after{height: 160px;}
    #recommended .box_wrap .box a .img{height: 160px;}
    
}
#recommended .box_wrap .box a .mask{display:block;background-color:rgba(0, 0, 0, 0.65);height:180px;width:100%;opacity:0;position:absolute;left:0;top:0;transition:opacity .3s cubic-bezier(0.8, 0, 0.2, 1) 0s;z-index:1;}
@media only screen and (min-width: 768px) {
  #recommended .box_wrap .box a:hover .mask{opacity:1;}
}
#recommended .box_wrap .box a .mask .txt_box{position:absolute;left:20px;right:20px;top:calc(50% - 42px);transform:translateY(-50%);}
#recommended .box_wrap .box a .mask .txt_box .kind{font-size:1.3em;line-height:1.3;font-weight:700;color:#b9b9b9;letter-spacing:0.08em;display:block;margin-bottom:10px;}
#recommended .box_wrap .box a .mask .txt_box .add{font-size:1.8em;line-height:1.3;color:#fff;letter-spacing:0.08em;}
#recommended .box_wrap .box a .mask{display: flex;justify-content: center;align-items: center;}
#recommended .box_wrap .box a .mask .c_btn{font-size: 14px;height: 45px;line-height: 45px;display: inline-block;color: #fff;background-color: transparent;border: solid 1px #fff;}
#recommended .box_wrap .box a .mask .c_btn::before{background-color: #fff;z-index: -1;}
#recommended .box_wrap .box a .txt_box{padding-top:10px;}
#recommended .box_wrap .box a .txt_box .kind{font-size:1.3em;line-height:1.3;color: var(--color-gray);font-weight:700;padding-top: 1em;padding-bottom: 0.5em;display:block;}
#recommended .box_wrap .box a .txt_box .add{font-size:1.8em;color: var(--color);line-height:1.3;display:block;}
#recommended .box_wrap .box a .txt_box .price{font-size:1.3em;color: var(--color);line-height:1.3;display:block;font-feature-settings: 'palt';}
#recommended .box_wrap .box a .txt_box .price span{font-size: 20px;}
#recommended .box_wrap .box:nth-child(1n) .bg{background-color:#f2f2f2;}
#recommended .box_wrap .box:nth-child(2n) .bg{background-color:#e1e1e1;}
#recommended .box_wrap .box:nth-child(3n) .bg{background-color:#efefef;}
#recommended .box_wrap .box:nth-child(4n) .bg{background-color:#ededed;}
#recommended .box_wrap .box:nth-child(5n) .bg{background-color:#d9d9d9;}
#recommended .box_wrap .row + .row .box:nth-child(1n) .bg{background-color:#d9d9d9;}
#recommended .box_wrap .row + .row .box:nth-child(2n) .bg{background-color:#ededed;}
#recommended .box_wrap .row + .row .box:nth-child(3n) .bg{background-color:#efefef;}
#recommended .box_wrap .row + .row .box:nth-child(4n) .bg{background-color:#e1e1e1;}
#recommended .box_wrap .row + .row .box:nth-child(5n) .bg{background-color:#f2f2f2;}
#recommended .box_wrap .row.nohave p{font-size:1.8em;width:810px;padding-top:300px;}
#recommended .box_wrap .box .bg{height:180px;display:block;background-color:var(--color-gray);position:absolute;left:0;right:0;bottom:0;top:0;transform:scale(0, 1);transform-origin:right top;}
@media only screen and (min-width: 768px) {
    #recommended .box_wrap .box a .mask .c_btn:hover{color: var(--color);}
    #recommended .box_wrap .box a .mask .c_btn:hover::after{border-color: var(--color);}
}
@media only screen and (max-width: 767px) {
    #recommended .box_wrap .box a .mask{height: 160px;}
    #recommended .box_wrap .box a .txt_box .kind{font-size: 1.2em;padding: 0.5em 0 0.25em;}
    #recommended .box_wrap .box a .txt_box .add{font-size: 1.5em;}
    #recommended .box_wrap .box a .txt_box .price span{font-size: 18px;}
    #recommended .box_wrap .box .bg{height: 160px;}
}

#information{padding-bottom:120px;padding-top:100px;position:relative;z-index:1;}
#information > .inner{max-width:960px;margin:0 auto;}
#information .top_c_ttl{margin-left:calc(50% + 40px);}
#information .box_wrap{max-height:450px;min-height:340px;margin-left:calc(50% + 40px);margin-bottom:50px;padding-right:15px;overflow:auto;}
#information .box_wrap dl{text-align:left;}
#information .box_wrap dl:not(:last-child){margin-bottom:10px;}
#information .box_wrap dt{font-size:1.4em;line-height:1.7;font-weight:600;}
#information .box_wrap dd{font-size:1.4em;line-height:1.7;margin-left:7em;margin-top:-1.7em;}
#information .box_wrap dd a{color:var(--color);}
@media only screen and (min-width: 768px) {
  #information .box_wrap dd a:hover{text-decoration:none;}
}
#information .box_wrap dd .new{font-size:70%;line-height:15px;color:#fff;text-align:center;vertical-align:middle;display:inline-block;background-color:var(--color);height:15px;width:38px;margin-left:6px;margin-top:-2px;}
#information .c_btn{margin-left:calc(50% + 40px);display: block;}
#information .bg_left{margin-left:-1265px;position:absolute;left:50%;top:-3px;}
#information .bg_left_sp{display:none;}
#information .bg_right{margin-right:-1615px;position:absolute;right:50%;bottom:-3px;}
#information .bg_right #topics_bg02{enable-background:new 0 0 1100 632;}
#information .bg_right #topics_bg02 .shape01{fill:#F5F5F5;}
#information .bg_right #topics_bg02 .shape02{fill:var(--color);}
#information .bg_right_sp{display:none;}
@media only screen and (max-width: 767px) {
    #information .c_btn{margin-left:70px;}
}
@media only screen and (max-width: 374px) {
    #information .c_btn{margin-left:40px;}
}

#message > .inner{max-width:960px;margin:0 auto;padding-bottom:140px;padding-top:140px;}
#message .txt{font-size:1.5em;line-height:2;color:#fff;letter-spacing:0.04em;text-align:left;}
#message .box_wrap + .txt{margin-bottom:30px;margin-top:-90px;}
#message .txt strong{font-size:174%;margin-right:0.5em;}
#message .box_wrap{display:flex;}
#message .box_wrap .txt_box{width:100%;flex:1;padding-top:15px;}
#message .box_wrap .sdgs{width:570px;background-color:rgba(0, 0, 0, .25);padding-bottom:10px;padding-top:25px;}
#message .box_wrap .sdgs .ttl{font-size:1px;line-height:0;margin-bottom:30px;}
#message .box_wrap .sdgs ul{display:flex;flex-wrap:wrap;margin:0 10px;}
#message .box_wrap .sdgs li{font-size:1px;line-height:0;width:calc(16.666% - 20px);margin:0 10px 10px;}
#message .box_wrap .sdgs li img{height:auto;width:100%;}
#message > .bg{display:block;background:url(../images/message_bg.jpg) no-repeat center center;background-size:cover;height:100vh;width:100vw;position:fixed;left:0;top:0;z-index:-1;}

#update{padding-bottom:120px;padding-top:120px;position:relative;}
#update::after{content:"";display:block;background-color:var(--color-bg-gray2);position:absolute;left:0;right:calc((100% - 1200px) / 2);bottom:0;top:0;}
#update > .inner{max-width:960px;margin:0 auto;position:relative;z-index:1;}
#update .top_c_ttl{width:0;transform:rotate(90deg);transform-origin:0 0;position:absolute;right:0;}
#update .top_c_ttl .jp{margin-bottom:-140px;writing-mode:vertical-rl;transform:rotate(-90deg);transform-origin:0 0;}
#update .top_c_ttl .jp span:nth-child(5),
#update .top_c_ttl .jp span:nth-child(6),
#update .top_c_ttl .jp span:nth-child(7),
#update .top_c_ttl .jp span:nth-child(8),
#update .top_c_ttl .jp span:nth-child(9),
#update .top_c_ttl .jp span:nth-child(10){color:var(--color-red2);}
#update .box_wrap{margin-right:200px;}
#update .box_wrap ul{display:flex;flex-wrap:wrap;min-height:160px;margin:0 -20px 50px;}
#update .box_wrap li{font-size:1.4em;line-height:1.5;color:var(--color);letter-spacing:0.04em;text-align:left;text-overflow:ellipsis;width:calc(50% - 40px);margin:0 20px 22px;overflow:hidden;white-space:nowrap;}
#update .box_wrap li .kind{font-size:80%;line-height:20px;color:#fff;text-align:center;vertical-align:middle;display: inline-block;background-color:var(--color);height:20px;width:84px;margin-right:10px;margin-top:-2px;}
#update .box_wrap li a{color:var(--color);text-decoration:none;transition:color .3s;}
#update .box_wrap .c_btn{max-width: 360px;margin: 0 auto;}
@media only screen and (min-width: 768px) {
  #update .box_wrap li a:hover{color:var(--color-gray);}
}
#update .no_have{font-size:1.8em;line-height:1.2;text-align:left;height:260px;display:flex;align-items:center;}

#virtual{padding-bottom:120px;padding-top:120px;position:relative;}
#virtual::after{content:"";display:block;background-color:var(--color-bg-gray2);height:260px;position:absolute;left:0;right:0;bottom:0;}
#virtual > .inner{max-width:960px;margin:0 auto;position:relative;z-index:1;}
#virtual .img{font-size:1px;line-height:0;border-radius: 10px;overflow: hidden;display: block;}
#virtual .img img{height:auto;width:100%;transition: all .3s;}
@media only screen and (min-width: 768px) {
    #virtual .img:hover img{opacity: .7;}
}

#flow{padding-bottom:100px;position:relative;}
#flow::before{content:"";display:block;background-color:#fff;position:absolute;left:calc((100% - 1200px) / 2);right:0;bottom:100px;top:0;z-index:1;}
#flow::after{content:"";display:block;background:url(../images/flow_bg.jpg) no-repeat center center;background-size:cover;/*background-attachment:fixed;*/position:absolute;left:0;right:0;bottom:0;top:0;}
#flow > .inner{max-width:960px;margin:0 auto;padding-bottom:100px;padding-top:100px;position:relative;z-index:2;}
#flow .box_wrap{display:flex;margin:0 -40px;}
#flow .box_wrap .box{width:calc(50% - 80px);margin:0 40px;}
#flow .box_wrap .box .ttls{font-size:2.3em;line-height:1.3;margin-bottom:20px;letter-spacing:0.08em;}
#flow .box_wrap .box dl{display:flex;align-items:center;border: 1px solid var(--color);margin-bottom:25px;padding:15px 0;position:relative;}
#flow .box_wrap .box dl:not(:last-of-type)::before {content:"";display:block;background-color:var(--color);height:20px;width:1px;position:absolute;left: 50%;top: 100%;transform:translate(-50%);}
#flow .box_wrap .box dl:not(:last-of-type)::after {content:"";display:block;height:10px;width:10px;box-sizing:border-box;border:1px solid var(--color);border-top:0;border-right:0;position:absolute;left:50%;top:calc(100% + 10px);transform:rotate(-45deg);transform-origin:bottom left;}
#flow .box_wrap .box dt{font-size:4em;line-height:1.3;font-weight:500;width:100px;}
#flow .box_wrap .box dd{font-size:1.6em;line-height:1.6;letter-spacing:0.04em;text-align:left;width:100%;flex:1;}
#flow .box_wrap .box .btn{margin-top:40px;}

#new_arrival{padding-bottom:180px;padding-top:150px;}
#new_arrival .phase01{display:flex;justify-content:space-between;max-width:960px;margin:0 auto;}
#new_arrival .phase01 .control{display:flex;margin-top:4px;}
#new_arrival .phase01 .control .btn{display:block;background-color:var(--color);height:54px;width:54px;border-radius:27px;position:relative;cursor:pointer;transition:background-color .3s;}
@media only screen and (min-width: 768px) {
  #new_arrival .phase01 .control .btn:hover{background-color:var(--color-gray);}
}
#new_arrival .phase01 .control .btn span{display:block;height:18px;width:18px;position:absolute;left:50%;top:50%;transform:translate(-50%, -50%);}
#new_arrival .phase01 .control .btn.stop span{background:url(../images/newarrival_ico_stop.png) no-repeat 0 0;background-size:contain;}
#new_arrival .phase01 .control .btn.start span{background:url(../images/newarrival_ico_start.png) no-repeat 0 0;background-size:contain;}
#new_arrival .phase02{margin-bottom:70px;}
#new_arrival .phase02 .swiper-wrapper{transition-timing-function:linear;}
#new_arrival .phase02 .box{width:294px;margin:0 20px;}
#new_arrival .phase02 .box .img{margin-bottom:25px;}
#new_arrival .phase02 .box .img a{display:block;height:195px;overflow:hidden;position:relative;}
#new_arrival .phase02 .box .img a img{object-fit:cover;height:100%;width:100%;transition:transform .3s cubic-bezier(0.8, 0, 0.2, 1) 0s;}
@media only screen and (min-width: 768px) {
  #new_arrival .phase02 .box .img a:hover img{transform:scale(1.2);}
}
#new_arrival .phase02 .box .img a::after{content:"";display:block;background:rgba(0, 0, 0, .25);height:100%;width:100%;left:0;opacity:0;position: absolute;right:0;bottom:0;top:0;transition: opacity .3s cubic-bezier(0.8, 0, 0.2, 1) 0s;}
@media only screen and (min-width: 768px) {
  #new_arrival .phase02 .box .img a:hover::after{opacity:1;}
}
#new_arrival .phase02 .box .kind{font-size:1.3em;line-height:1.3;font-weight:700;color:var(--color-gray2);letter-spacing:0.08em;text-align:left;margin-bottom:6px;}
#new_arrival .phase02 .box .add{font-size:1.7em;line-height:1.3;letter-spacing:0.08em;text-align:left;color:var(--color);text-overflow:ellipsis;white-space:nowrap;margin-bottom:12px;overflow:hidden;}
#new_arrival .phase02 .box .price{font-size:1.4em;line-height:1.7;letter-spacing:0.04em;text-align:left;color:var(--color);}
#new_arrival .phase02 .box .price .price2{font-size:143%;}
#new_arrival .phase02 .box .other{font-size:1.4em;line-height:1.7;letter-spacing:0.04em;text-align:left;color:var(--color);}
#new_arrival .phase03{max-width:960px;margin:0 auto;}
#new_arrival .phase03 .c_btn{max-width: 360px;margin: 0 auto;}

#voice{position:relative;padding-top: 120px;padding-bottom:80px;}
#voice > .inner{max-width:960px;margin:0 auto;text-align:right;}
#voice .top_c_ttl > span{text-align:right;}
#voice .lead{font-size:2.4em;line-height:1.7;color:var(--color);letter-spacing:0.08em;text-align:left;display:inline-block;margin-bottom:60px;margin-top:-15px;}
#voice ul{min-height:570px;margin-right:60px;position:relative;z-index:1;}
#voice li{text-align:left;width:430px;margin-left:auto;margin-right:0;}
#voice li:not(:last-child){margin-bottom:30px;}
#voice li:nth-child(2){transform:translateX(calc(-100px * 1));}
#voice li:nth-child(3){transform:translateX(calc(-100px * 2));}
#voice li:nth-child(4){transform:translateX(calc(-100px * 3));}
#voice li:nth-child(5){transform:translateX(calc(-100px * 4));}
#voice li a{text-decoration:none;display:block;padding-right: 56px;position: relative;}
#voice li a::before{content: "";width: 42px;height: 42px;background-color: var(--color);margin-top: -21px;border:solid 1px var(--color);border-radius: 50%;box-sizing: border-box;transition: all .3s;position: absolute;right: 0;top: 50%;}
#voice li a::after{content: "";width: 7px;height: 7px;border-style: solid;border-color: #fff;border-width: 1px 1px 0 0;transform: translateY(-50%) rotate(45deg);transition: border-color .3s;position: absolute;right: 18px;top: 50%;}
#voice li a .name{font-size:1.4em;line-height:1.5;font-weight:700;color:var(--color-gray2);text-overflow:ellipsis;white-space:nowrap;display:block;margin-bottom:2px;overflow:hidden;}
#voice li a .comment{font-size:1.6em;line-height:1.5;color:var(--color);display:block;display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;transition:color .3s;}
@media only screen and (min-width: 768px) {
  #voice li a:hover .comment{color:var(--color-gray);}
  #voice li a:hover::before{background-color: #fff;transform: scale(1.1);}
  #voice li a:hover::after{border-color: var(--color);}
}
#voice .c_btn{margin-right:520px;}
#voice .bg_left{margin-left:-1405px;position:absolute;left:50%;top:0;}
#voice .bg_left_sp{display:none;}
#voice .bg_right{margin-right:-1035px;position:absolute;right:50%;bottom:75px;}
#voice .bg_right #voice_bg02{enable-background:new 0 0 880 505;}
#voice .bg_right #voice_bg02 .shape01{fill:#F5F5F5;}
#voice .bg_right #voice_bg02 .shape02{fill:var(--color);}
#voice .bg_right_sp{display:none;}
@media only screen and (max-width: 767px) {
    #voice .c_btn{margin-right:70px;z-index: 1;}
}
@media only screen and (max-width: 374px) {
    #voice .c_btn{margin-right:40px;}
}

#ranking{padding-bottom:100px;position:relative;}
#ranking::before{content:"";display:block;background-color:var(--color-bg-gray2);position:absolute;left:calc((100% - 1200px) / 2);right:0;bottom:100px;top:0;z-index:1;}
#ranking::after{content:"";display:block;background:url(../images/ranking_bg.jpg) no-repeat center center;background-size:cover;/*background-attachment:fixed;*/position:absolute;left:0;right:0;bottom:0;top:0;}
#ranking > .inner{max-width:960px;margin:0 auto;padding-bottom:120px;padding-top:80px;position:relative;z-index:2;}
#ranking .box_wrap{display:flex;margin:-30px -20px 0;}
#ranking .box_wrap .box{width:calc(33.333% - 40px);margin:0 20px;}
#ranking .box_wrap .rank{font-size:1.3em;font-weight:500;color:#fff;letter-spacing:0.08em;display:flex;justify-content:center;align-items:center;background-color:var(--color);height:64px;width:64px;margin-bottom:-32px;margin-left:12px;border-radius:32px;position:relative;z-index:2;}
#ranking .box_wrap .rank span{font-size:143%;}
#ranking .box_wrap .box .img{overflow:hidden;margin-bottom:25px;position:relative;}
#ranking .box_wrap .box .img a{display:block;height:195px;overflow:hidden;position:relative;}
#ranking .box_wrap .box .img a img{object-fit:cover;height:100%;width:100%;transition:transform .3s cubic-bezier(0.8, 0, 0.2, 1) 0s;}
@media only screen and (min-width: 768px) {
  #ranking .box_wrap .box .img a:hover img{transform:scale(1.2);}
}
#ranking .box_wrap .box .img a::after{content:"";display:block;background:rgba(0, 0, 0, .25);height:100%;width:100%;left:0;opacity:0;position: absolute;right:0;bottom:0;top:0;transition: opacity .3s cubic-bezier(0.8, 0, 0.2, 1) 0s;}
@media only screen and (min-width: 768px) {
  #ranking .box_wrap .box .img a:hover::after{opacity:1;}
}
#ranking .box_wrap .box .img .mask{background-color:#f2f2f2;height:100%;width:100%;position:absolute;left:0;top:0;z-index:1;transform-origin:left top;}
#ranking .box_wrap .box:nth-of-type(2) .img .mask{background-color:#e1e1e1;}
#ranking .box_wrap .box:nth-of-type(3) .img .mask{background-color:#efefef;}
#ranking .box_wrap .box .kind{font-size:1.3em;line-height:1.3;font-weight:700;color:var(--color-gray2);letter-spacing:0.08em;text-align:left;margin-bottom:6px;}
#ranking .box_wrap .box .add{font-size:1.7em;line-height:1.3;letter-spacing:0.08em;text-align:left;color:var(--color);text-overflow:ellipsis;white-space:nowrap;margin-bottom:12px;overflow:hidden;}
#ranking .box_wrap .box .price{font-size:1.4em;line-height:1.7;letter-spacing:0.04em;text-align:left;color:var(--color);}
#ranking .box_wrap .box .price .price2{font-size:143%;}
#ranking .box_wrap .box .other{font-size:1.4em;line-height:1.7;letter-spacing:0.04em;text-align:left;color:var(--color);}

.sec_wrap02 > .inner{display:flex;max-width:960px;margin:0 auto;padding-bottom:120px;padding-top:120px;}

#reservation{width:100%;flex:1;margin-top:-58px;padding-top:58px;}
#reservation .box_wrap{padding-bottom:30px;}
#reservation .box_wrap dl{text-align:left;}
#reservation .box_wrap dl:not(:last-child){margin-bottom:15px;}
#reservation .box_wrap dt{font-size:1.6em;line-height:1.3;color:var(--color);letter-spacing:0.04em;padding-bottom:10px;}
#reservation .box_wrap dt .must{font-size:11px;line-height:18px;color:#fff;text-align:center;vertical-align:middle;display:inline-block;background-color:var(--color-red);height:18px;width:42px;margin-top:-4px;margin-left:10px;border-radius:4px;}
#reservation .box_wrap dd{font-size:1.6em;line-height:1.3;color:var(--color);letter-spacing:0.04em;}
#reservation .box_wrap dd .col{display:flex;align-items:flex-end;}
#reservation .box_wrap dd .col .select_box{margin-left:10px;}
#reservation .box_wrap dd .col02{display:flex;align-items:center;margin-bottom:10px;}
#reservation .box_wrap dd .col02 .zip{margin-left:5px;}
#reservation .box_wrap dd .col02 .btn{margin-left:12px;}
#reservation .box_wrap dd .col .date_box{width:50%;position:relative;}
#reservation .box_wrap dd .col .date_box .err{width:100%}
#reservation .box_wrap dd .col .date_box .err:not(:first-child){margin-top:-10px;}
#reservation .box_wrap dd .col .date_box::after{content:"";display:block;background:url("../images/ico_cal@2x.png") no-repeat 0 0;background-size:contain;height:24px;width:24px;position:absolute;right:20px;bottom:16px;}
.ui-datepicker{font-size:150%!important;}
#reservation .agree_txt{font-size:1.6em;line-height:1.5;color:var(--color);margin-bottom:15px;}
#reservation .agree_txt a{color:var(--color);}
#reservation .agree_btn_box{margin-bottom:25px;}
#reservation .agree_btn_box .err{text-align:center;}
#reservation .c_btn{width: 100%;}
#reservation #confirm,
#reservation #rgst{max-width:960px;margin:0 auto;padding-bottom:180px;}
#reservation .confirm_txt{font-size:1.6em;line-height:1.5;color:var(--color);margin:60px 0 30px;}

#company{width:300px;margin-left:60px;margin-top:-58px;padding-top:58px;}
#company dl{text-align:left;}
#company dt{font-size:2.1em;line-height:1.3;font-weight:700;color:var(--color);letter-spacing:0.08em;margin-bottom:12px;}
#company dd.add{font-size:1.6em;line-height:1.7;color:var(--color);letter-spacing:0.04em;margin-bottom:5px;}
#company dd.tel{font-size:2.8em;line-height:1.3;font-weight:500;color:var(--color);letter-spacing:0.08em;margin-bottom:30px;}
#company dd.tel a{color:var(--color);}
@media only screen and (min-width: 768px) {
  #company dd.tel a{text-decoration:none;pointer-events:none;}
}
#company dd.tel .ico{font-size:1px;line-height:0;vertical-align:middle;display:inline-block;margin:-7px 5px 0 0;}
#company dd.img{font-size:1px;line-height:0;margin-bottom:20px;}
#company dd.img img{height:auto;width:100%;}
#company dd.txt{font-size:1.5em;line-height:2;color:var(--color);text-align:justify;text-justify:inter-ideograph;margin-bottom:5px;}

#access{padding-top: 120px;background-color:#fff;}
#access > .inner{max-width:960px;margin:0 auto;}
#access .map{height:0;padding-top:32.1333%;overflow:hidden;position:relative;}
#access .map iframe{height:100%;width:100%;position:absolute;left:0;top:0;}

#loading{background-color:var(--color);overflow:auto;overscroll-behavior:contain;width:100%;height:100%;opacity:1;position:fixed;left:0;top:0;z-index:-1;scrollbar-width:none;}
#loading::-webkit-scrollbar{display:none;}
#loading .loading_box{display:flex;align-items:flex-end;position:absolute;bottom:80px;left:100px;z-index:1;}
#loading .loading_box .loading_logo{width:105px;margin-right:40px;}
#loading .loading_box .loading_logo svg{height:auto;width:100%;fill:#fff;}
#loading .loading_box #loading_bar_box{width:150px;text-align:right;}
#loading .loading_bg{height:calc(100% + 1px);width:100%;overflow:hidden;}
#loading .loading_bg .loading_bg_img{background:url(../images/loading_bg.jpg) no-repeat center center;background-size:cover;height:100%;width:100%;opacity:.7;transform:scale(1);animation:loading_bg_anime 5s linear;}

@keyframes loading_bg_anime {
  0% {
    transform:scale(1.1);
  }
  100% {
    transform:scale(1);
  }
}

/* モーダルウィンドウ固定対応 */
body{position:relative!important;height:auto!important;width:auto!important;overflow:auto!important;top:auto!important;}
#m_window{overflow:auto;overscroll-behavior:contain;scrollbar-width:none;}
#m_window::-webkit-scrollbar{display:none;}
#m_window .bkg{height:calc(100% + 1px)!important;position:relative!important;left:auto!important;text-align:left!important;}

@media only screen and (max-width: 1280px) {
  #town_search::before{left:40px;}
  #flow::before{left:40px;}
  #ranking::before{left:40px;}
}

@media only screen and (max-width: 767px) {
  #main_vi{margin-left:20px;}
  #main_vi > .inner{padding-top:160px;}
  #main_vi .main_copy .en {font-size:32px;line-height:1.2;margin-bottom:70px;}
  #main_vi .main_copy .en .txt_line span{display:inline-block;}
  #main_vi .main_copy .jp{font-size:15px;line-height:1.5;text-align:left;margin-right:auto;}
  #main_vi .main_copy .jp .txt_line{display:block;}
  #main_vi .main_copy .jp .logo{height:23px;width:163px;margin-top:6px;}
  #main_vi .bg_movie_box{height:355px;}
  
  #search .ttll{display:none;}
  #search > .inner{margin:0 20px;padding-bottom:60px;padding-top:60px;}
  #search .phase01{flex-direction: column-reverse;}
  #search .phase02{text-align:right;display:block;margin-top:20px;}
  #search .box .ttl{font-size:1.8em;}
  #search .box .ttl > span{font-size:67%;}
  #search .phase01 .box_wrap{display:block;}
  #search .phase01 .box_wrap .box:not(:last-child){margin-bottom:20px;}
  #search .phase01 .box_wrap .box.fw{width:auto;margin-left:0;}
  #search .phase01 .box_wrap .box.fw > .inner{display:block;padding:20px;}
  #search .phase01 .box_wrap .box.fw .ttl{margin-right:auto;margin-bottom:15px;}
  #search .phase01 .box_wrap .box.fw .inpt_box input{line-height:43px;height:43px;}
  #search .phase01 .box_wrap .box.voice a .ttl_wrap{padding:20px;}
  #search .phase01 .box_wrap .box.kind > .inner{padding:20px;}
  #search .phase01 .box_wrap .box.kind ul{display:flex;flex-wrap:wrap;margin:18px 0 -5px;}
  #search .phase01 .box_wrap .box.kind li{width:100%;cursor:pointer;}
  #search .phase01 .box.map{width:100%;margin-left:auto;margin-bottom: 20px;}
  #search .phase01 .box.map > .inner{padding:20px;height:auto;}
  #search .phase01 .box.map .ttl{margin-left:auto;}
  #search .phase01 .box.map #map_search{height:auto;width:100%;margin-top:15px;}
  #search .phase02 .box.contents{width:auto;margin-left:auto;margin-right:50px;margin-bottom:20px;}
  #search .phase02 .box.contents > .inner{padding:20px;}
  #search .phase02 .box.contents ul{display:block;margin-top:15px;}
  #search .phase02 .box.contents li{font-size:1.4em;}
  #search .phase02 .box.contents li:not(:last-child){margin-right:auto;margin-bottom:8px;}
  #search .phase02 .box.contents li a::before{height:7px;width:7px;}
  #search .phase01 .box.school{margin-left:auto;margin-right:0;}
  #search .phase01 .box.school a .ttl_wrap{padding:20px 10px 20px 20px;}

  #town_search{padding-top:40px;}
  #town_search::before{left:40px;right:0;bottom:0;top:40px;z-index:1;}
  #town_search::after{content:"";display:block;background:var(--color) url(../images/town_search_bg.jpg) no-repeat center top;background-size:auto 295px;left:0;right:0;bottom:0;top:0;}
  #town_search > .inner{margin:0 0 0 40px;padding:40px 30px 40px;}
  #town_search ul{display:flex;flex-wrap:wrap;margin:0 -10px;}
  #town_search li{width:calc(50% - 20px);margin:0 10px 15px;}
  #town_search li a .txt{font-size:1.6em;margin-top:8px;display: block;}
  #town_search li a .txt_en{font-size:1.2em;display: block;}
  #town_search li a .txt_desc{font-size: 1.2em;line-height: 1.5em;}

  #recommended{padding-bottom:80px;padding-top:80px;}
  #recommended > .inner{margin:0 40px;}
  #recommended .side-scroll-list-wrapper{height:525px;margin-bottom:10px;}
  #recommended .top_c_ttl{left:30px;}
  #recommended .box_wrap{margin-left:30px;}
  #recommended .box_wrap .row + .row{margin-left:-70px;}
  #recommended .box_wrap .box{width:210px;margin-bottom:40px;margin-left:40px}
  #recommended .box_wrap .row.nohave p{font-size:1.4em;width:240px;padding-top:250px;}
  #recommended>.inner>.c_btn{position: relative;left: inherit;bottom: inherit;}

  #information{padding-bottom:60px;padding-top:60px;position:relative;}
  #information > .inner{margin:0 40px;}
  #information .top_c_ttl{margin-left:auto;position:relative;z-index:1;}
  #information .box_wrap{max-height:500px;min-height:initial;margin:0 auto 35px;position:relative;z-index:1;}
  #information .box_wrap dl:not(:last-child){margin-bottom:12px;}
  #information .box_wrap dt{line-height:1.3;}
  #information .box_wrap dd{line-height:1.5;margin-left:auto;margin-top:auto;}
  #information .more_btn{margin-left:130px;position:relative;z-index:1;}
  #information .bg_left{display:none;}
  #information .bg_left_sp{font-size:1px;line-height:0;display:block;position:absolute;left:0;bottom:0;top:auto;}
  #information .bg_right{display:none;}
  #information .bg_right_sp{font-size:1px;line-height:0;display:block;position:absolute;right:0;top:0;}
  #information .bg_right_sp #topics_bg02_sp{enable-background:new 0 0 120 120;}
  #information .bg_right_sp #topics_bg02_sp .shape01{fill:var(--color);}

  #message > .inner{padding-bottom:50px;padding-top:50px;}
  #message .txt{font-size:1.4em;line-height:1.8;}
  #message .txt strong{font-size:143%;}
  #message .box_wrap + .txt{margin:25px 40px 0;}
  #message .box_wrap{display:block;}
  #message .box_wrap .txt_box{width:auto;margin:0 40px 25px;padding-top:0;}
  #message .box_wrap .sdgs{width:auto;margin:0 40px;padding-bottom:10px;padding-top:25px;}
  #message .box_wrap .sdgs .ttl{max-width:230px;margin:0 30px 20px;}
  #message .box_wrap .sdgs .ttl img{height:auto;width:100%;}
  #message .box_wrap .sdgs ul{margin:0 15px;}
  #message .box_wrap .sdgs li{width:calc(16.666% - 10px);margin:0 5px 10px;}
  #message > .bg{background-image:url(../images/message_bg_sp.jpg);}

  #update{padding-bottom:60px;padding-top:30px;}
  #update::after{right:0;}
  #update .top_c_ttl{width:auto;margin-right:-240px;}
  #update .top_c_ttl .jp{margin-bottom:-135px;}
  #update .box_wrap{margin-right:40px;margin-left:40px;}
  #update .box_wrap ul{display:block;min-height:300px;margin:0 80px 0 0;padding-bottom:20px;}
  #update .box_wrap li{width:auto;margin:0 0 15px;white-space:normal;}
  #update .box_wrap li .kind{margin-right:auto;margin-bottom:6px;margin-top:0;}
  #update .box_wrap li a{display:block;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;}
  #update .no_have{font-size:1.6em;height:290px;}

  #virtual{padding-bottom:60px;padding-top:60px;}
  #virtual::after{display:none;}
  #virtual > .inner{margin:0 40px;}
  #virtual .img{margin-bottom:40px;}

  #flow{background:var(--color);padding-bottom:0;overflow:hidden;position:relative;}
  #flow::before{left:20px;right:20px;bottom:20px;top:20px;}
  #flow::after{height:348px;left:-20px;right:-20px;bottom:auto;top:-20px;box-shadow:0 0 10px 10px var(--color) inset;}
  #flow > .inner{margin:0 50px;padding-bottom:50px;padding-top:50px;}
  #flow .box_wrap{display:block;margin:0;}
  #flow .box_wrap .box{width:auto;margin:0;}
  #flow .box_wrap .box:not(:last-child){margin-bottom:30px;}
  #flow .box_wrap .box .ttls{font-size:1.8em;margin-bottom:15px;}
  #flow .box_wrap .box dl{margin-bottom:20px;padding:12px 0;}
  #flow .box_wrap .box dt{font-size:3em;width:70px;}
  #flow .box_wrap .box dd{font-size:1.4em;line-height:1.5;margin-right:15px;}
  #flow .box_wrap .box .btn{margin-top:20px;}
  #flow .box_wrap .box .btn .c_btn{font-size: 14px;padding: 0 1em 0 2em;}
    #flow .box_wrap .box .btn .c_btn::after{left: 1em;}
  
  #new_arrival{padding-bottom:60px;padding-top:60px;}
  #new_arrival .phase01{margin:0 40px;}
  #new_arrival .phase01 .control{display:flex;margin-top:4px;margin-left:15px;}
  #new_arrival .phase01 .control .btn{height:36px;width:36px;}
  #new_arrival .phase01 .control .btn.next{margin-right:-20px;}
  #new_arrival .phase01 .control .btn.next span{width:16px;}
  #new_arrival .phase01 .control .btn.next span::before {height:8px;width:8px;}
  #new_arrival .phase01 .control .btn.prev{margin-right:10px;}
  #new_arrival .phase01 .control .btn.prev span {width:16px;}
  #new_arrival .phase01 .control .btn.prev span::before {height:8px;width:8px;}
  #new_arrival .phase02{margin-bottom:35px;}
  #new_arrival .phase02 .box{width:226px;margin:0 15px;}
  #new_arrival .phase02 .box .img{margin-bottom:15px;}
  #new_arrival .phase02 .box .img a{height:150px;}
  #new_arrival .phase02 .box .kind{margin-bottom:4px;}
  #new_arrival .phase02 .box .price{line-height:1.5;}
  #new_arrival .phase02 .box .price .price2{font-size:120%;}
  #new_arrival .phase02 .box .other{line-height:1.5;}
  #new_arrival .phase03{margin:0 40px;}

  #voice{padding-top: 30px;padding-bottom:60px;}
  #voice > .inner{margin:0 40px;text-align:right;}
  #voice .lead{font-size:1.5em;line-height:1.5;text-align:right;display:block;margin-bottom:40px;margin-top:55px;position:relative;z-index:1;}
  #voice .lead span{margin-right:-1em;}
  #voice ul{min-height:initial;min-height:auto;margin:0 auto 40px;position:relative;z-index:1;}
  #voice li{width:auto;margin-right:auto;}
  #voice li:not(:last-child){margin-bottom:25px;}
  #voice li:nth-child(2),
  #voice li:nth-child(3),
  #voice li:nth-child(4),
  #voice li:nth-child(5){transform:none;}
  #voice li a{text-decoration:none;display:block;}
  #voice .more_btn{margin-right:auto;position:relative;z-index:1;}
  #voice .bg_left{display:none;}
  #voice .bg_left_sp{display:block;margin-left:-575px;position:absolute;left:50%;top:0;}
  #voice .bg_right{display:none;}
  #voice .bg_right_sp{display:block;margin-right:-599px;position:absolute;right:50%;bottom:-3px;}
  #voice .bg_right_sp #voice_bg02_sp{enable-background:new 0 0 659 379;}
  #voice .bg_right_sp #voice_bg02_sp .shape01{fill:#F5F5F5;}

  #ranking{padding-bottom:0;position:relative;}
  #ranking::before{left:0;right:40px;bottom:40px;top:0;z-index:1;}
  #ranking > .inner{margin:0 80px 0 40px;padding-bottom:80px;padding-top:60px;}
  #ranking .box_wrap{display:block;margin:-20px 0 0;}
  #ranking .box_wrap .box{width:auto;margin:0;}
  #ranking .box_wrap .box:not(:last-child){margin-bottom:8px;}
  #ranking .box_wrap .rank{font-size:1em;height:48px;width:48px;margin-left:auto;margin-right:10px;margin-bottom:-24px;}
  #ranking .box_wrap .rank span{font-size:150%;}
  #ranking .box_wrap .box .img{margin-bottom:15px;}
  #ranking .box_wrap .box .img a{height:auto;width:100%;padding-top:66.3716%;box-sizing:border-box;}
  #ranking .box_wrap .box .img a img{position:absolute;left:0;top:0;}
  #ranking .box_wrap .box .kind{margin-bottom:4px;}
  #ranking .box_wrap .box .price{line-height:1.5;}
  #ranking .box_wrap .box .price .price2{font-size:120%;}
  #ranking .box_wrap .box .other{line-height:1.5;}
  
  .sec_wrap02 > .inner{display:block;margin:0 40px;padding-bottom:30px;padding-top:60px;}
  
  #reservation{width:auto;padding-bottom:60px;}

  #reservation .box_wrap dl:not(:last-child){margin-bottom:20px;}
  #reservation .box_wrap dt{font-size:1.4em;padding-bottom:8px;}
  #reservation .box_wrap dt .must{font-size:10px;line-height:16px;height:16px;width:30px;margin-top:-3px;margin-left:6px;}
  #reservation .box_wrap dd .col{display:block;}
  #reservation .box_wrap dd .col .select_box{margin-left:auto;}
  #reservation .box_wrap dd .col .select_box.w50per{width:100%!important;}
  #reservation .box_wrap dd .col02{margin-bottom:8px;}
  #reservation .box_wrap dd .col02 .zip{width:100%;flex:1;}
  #reservation .box_wrap dd .col02 .btn{margin-left:10px;}
  #reservation .box_wrap dd .col .date_box{width:auto;margin-bottom:8px;}
  #reservation .box_wrap dd .col .date_box::after{right:10px;}
  #reservation .agree_txt{font-size:1.4em;margin-bottom:20px;}
  #reservation .agree_txt a{color:var(--color);}
  #reservation .agree_btn_box{margin-bottom:30px;}
  #reservation .agree_btn_box .checkbox{display:inline-block;}
  #reservation .agree_btn_box .checkbox span{line-height:1.5;}
  #reservation .agree_btn_box .checkbox span::before{top:6px;}
  #reservation .agree_btn_box .checkbox span::after{top:8px;}
  #reservation #confirm,
  #reservation #rgst{margin:0 20px;padding-bottom:60px;}
  #reservation .confirm_txt{font-size:1.4em;margin:30px 0 20px;}
  
  #company{width:auto;margin-left:auto;}
  #company dt{font-size:1.8em;margin-bottom:12px;}
  #company dd.add{font-size:1.4em;line-height:1.5;margin-bottom:8px;}
  #company dd.tel{font-size:2.3em;}
  #company dd.tel .ico{margin:-4px 5px 0 0;}
  #company dd.tel .ico img{height:16px;width:auto;}
  #company dd.img{margin-bottom:15px;}
  #company dd.txt{font-size:1.4em;margin-bottom:auto;padding-top:15px;}

  #access{padding-top:60px;}
  #access .inner{margin:0 40px;}
  #access .map{padding-top:100%;}

  #loading .loading_box{justify-content:space-between;bottom:30px;left:30px;right:30px;z-index:1;}
  #loading .loading_box .loading_logo{width:80px;margin-right:40px;}
  #loading .loading_box #loading_bar_box{width:120px;}
}

@media only screen and (max-width: 374px) {
  #main_vi .main_copy .en {font-size:28px;}
  #message .box_wrap .txt_box .txt strong{font-size:154%;}
  #reservation .agree_txt .smt_on{display:none!important;}
  #reservation .agree_btn_box .smt_on{display:none!important;}
  #town_search > .inner{padding:20px;}
}

#consult {padding-bottom: 120px;padding-top: 120px;background-color: #fff;position: relative;}
#consult::after {content: "";display: block;background-color: var(--color-bg-gray2);height: 320px;position: absolute;left: 0;right: 0;bottom: 0;}
#consult>.inner {max-width: 960px;margin: 0 auto;z-index: 1;position: relative;}
#consult>.inner .consult_lst {margin: 0 -10px;display: flex;}
#consult>.inner .consult_lst li {width: 25%;padding: 0 10px;}
#consult>.inner .consult_lst li a {height: 225px;font-size: 1.8em;font-weight: 700;font-feature-settings: "palt";color: #fff;text-decoration: none;overflow: hidden;border-radius: 10px;display: flex;justify-content: center;align-items: center;position: relative;}
#consult>.inner .consult_lst li a::before {content: "";width: 100%;height: 100%;-webkit-background-size: cover;background-size: cover;background-position: center;background-repeat: no-repeat;transition: all .3s;z-index: -1;position: absolute;top: 0;left: 0;}
#consult>.inner .consult_lst li:nth-child(1) a::before {background-image: url("/images/consult_bg01.jpg");}
#consult>.inner .consult_lst li:nth-child(2) a::before {background-image: url("/images/consult_bg02.jpg");}
#consult>.inner .consult_lst li:nth-child(3) a::before {background-image: url("/images/consult_bg03.jpg");}
#consult>.inner .consult_lst li:nth-child(4) a::before {background-image: url("/images/consult_bg04.jpg");}
#consult>.inner .consult_lst li a::after {content: "";width: 100%;height: 100%;background-color: rgba(0,0,0,0.3);transition: all .3s;z-index: -1;position: absolute;top: 0;left: 0;}
@media only screen and (min-width: 768px) {
    #consult>.inner .consult_lst li a:hover::before {transform: scale(1.2);}
    #consult>.inner .consult_lst li a:hover::after {background-color: rgba(0,0,0,0.6);}
}
@media only screen and (max-width: 767px) {
    #consult{padding-bottom: 50px;padding-top: 50px;}
    #consult>.inner{margin: 0 40px;}
    #consult>.inner .consult_lst{flex-wrap: wrap;}
    #consult>.inner .consult_lst li{width: 100%;padding: 10px;}
    #consult>.inner .consult_lst li a{height: 150px;}
}
