/*
Theme Name: しんゆ
Theme URI: https://www.kamisuwa-shinyu.com/
Author: 上諏訪しんゆ
Author URI: https://www.kamisuwa-shinyu.com/
Template: devdmbootstrap3
Description: devdmbootstrap3 1.80 をベースに作られています。
Version: 1.0
License: GNU General Public License v3 or later
License URI: http://www.gnu.org/licenses/gpl.html
Tags: one-column, two-columns, right-sidebar, fluid-layout, custom-background, custom-header, custom-menu, editor-style, featured-images, flexible-header, rtl-language-support, theme-options, translation-ready
Text Domain: devdmbootstrap3

devdmbootstrap3 WordPress Theme, Copyright 2016 Danny Machal.
devdmbootstrap3 is distributed under the terms of the GNU GPL v3.

*/

/* The bootstrap.css file is auto-enqueued in functions.php */

/* YOU SHOULD BE MAKING A CHILD THEME. Don't let me be a bad guy and erase all your hard work with a theme update. I just want to bring you new amazing features. I don't want to destroy your world. I've made a child theme available for you to use. Download it here http://devdm.com/DevDmBootstrap3/child-themes/ */

/****************** Special Blank CSS classes for child themes to use without disturbing core bootstrap styles ****************/
/** {
    outline: solid 1px #f00;
}
*/

.dmbs-container {

}

.dmbs-header {

}

.dmbs-header-img {

}

.dmbs-header-text {

}

.dmbs-top-menu {

}

.dmbs-content {

}

.dmbs-main {

}

.dmbs-left {

}

.dmbs-right {

}

.dmbs-footer-menu {

}

.dmbs-author-credits {

}

.dmbs-footer {

}

.gallery-caption {}

.bypostauthor {}

:root {
  --sp-font-size: 1.4rem;
  --pc-font-size: 1.8rem;
}

html {
    font-size: 62.5%;
    overflow-x: hidden;

}
body {
    font-family: TimesNewRoman,"Times New Roman","ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, YuGothic, "メイリオ", Meiryo;
    font-size: 1.4rem;
    font-size: var(--sp-font-size);
    letter-spacing: 0.1em;
    padding-top: 58px;
    color: #252027;
    overflow-x: hidden;
    text-align: justify;
    font-feature-settings : "palt";

}
body#english {
    text-align: left;
}

@media(min-width: 768px) {
    body {
        padding-top: 100px;
        font-size: 1.8rem;
        font-size: var(--pc-font-size);
    }
}

img {
    max-width: 100%;
    height: auto;
}

a {
    color: rgb(184, 28, 34);
}
a:hover, a:focus {
    text-decoration: none;
    color: rgb(153, 146, 84);
}

@media(min-width: 768px) {
    .text-sm-right {
        text-align: right;
    }
}

.table-responsive {
    overflow: auto;
}
.table-responsive::-webkit-scrollbar {
    width: 10px;
}
.table-responsive::-webkit-scrollbar:horizontal {
    height: 10px;
}
.table-responsive::-webkit-scrollbar-track {
  box-shadow: inset 0 0 5px rgba(0, 0, 0, .1);
}
.table-responsive::-webkit-scrollbar-thumb {
  background-color: rgba(0, 0, 50, .5);
  box-shadow:0 0 0 1px rgba(255, 255, 255, .3);
}




.mincho {
    font-family: TimesNewRoman,"Times New Roman","游明朝", YuMincho,"Sawarabi Mincho";
}
.slick-slide img {
    margin: 0 auto;
}

.slider-for {
    margin-bottom: 20px;
}
.slider-for .slick-slide {
    line-height: 1;
}
.slider-for .slick-slide img {
    line-height: 1;
    /*max-height: 236px;*/
    width: auto;
}
.slider-for .slick-slide div {
    vertical-align: bottom;
}
.slider-for .slick-prev {
    left: 10px;
    z-index: 1000;
}
.slider-for .slick-next {
    right: 10px;
    z-index: 1000;
}
.slider-nav {
    margin-bottom: 50px;
    padding-left: 10px;
}
.slider-nav .slick-slide {
    line-height: 1;
}
.slider-nav .slick-slide div {
    vertical-align: bottom;
    text-align: center;
}
.slider-nav .slick-slide>div>div>span {
    display: inline-block;
    margin-right: 10px;
    background-color: #252027;
}
.slider-nav .slick-slide img {
    opacity: .4;
    vertical-align: bottom;
    /*max-height: 44px;*/
    width: auto;
}
.slider-nav .slick-current img {
    opacity: 1;
}
/*.slider-for .prevArrow {
    width: 30px;
    height: 30px;
    position: absolute;
    left: -10px;
    top: calc(50% - 15px);
    z-index: 1000;
}
.slider-for .nextArrow {
    width: 30px;
    height: 30px;
    position: absolute;
    right: -10px;
    top: calc(50% - 15px);
    z-index: 1000;
}*/
@media(min-width: 768px) {
    .slick-slide img {
    }
    .slider-for .slick-slide img {
        min-height: 291px;
    }

    .slider-for .prevArrow {
        width: auto;
        height: auto;
        left: -50px;
    }
    .slider-for .nextArrow {
        width: auto;
        height: auto;
        right: -50px;
    }
    .slider-nav {
        margin-bottom: 50px;
        padding-left: 15px;
    }
    .slider-nav .slick-slide img {
        max-height: 77px;
    }
}
@media(min-width: 992px) {

    .slider-for .slick-slide img {
        height: 546px;
    }

    .slider-nav .slick-slide img {
        max-height: 98px;
    }
}
@media(min-width: 1200px) {


}

.breadcrumbs {
    font-size: 1rem;
    margin: 10px 0 60px 0;
    padding: 0 20px;
}
.breadcrumbsWrap .breadcrumbs {
    padding: 0;
}
.page-template-template-wide100 .breadcrumbs {
    padding: 0 20px;
}
@media(min-width: 768px) {
    .breadcrumbs {
        font-size: 1.2rem;
        margin: 20px auto 45px auto;
        max-width: 960px;
        padding: 0 10px;
    }
}
.reset {
    margin: 0;
    padding: 0;
    list-style-type: none;
}
.reset li {
    list-style-type: none;
}

.visible-xx-inline,
.visible-xx-block {
    display: none!important;
}
@media(max-width: 575px) {
    .visible-xx-inline {
        display: inline!important;
    }
    .visible-xx-block {
        display: block!important;
    }
}


@media(min-width: 768px) {}
@media(min-width: 992px) {}
@media(min-width: 1200px) {}

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

.dmbs-main {
    line-height: 2;
}
.dmbs-main p,
.dmbs-main blockquote {
    /*margin-bottom: 0;*/
}
.dmbs-main h1, .dmbs-main h2, .dmbs-main h3, .dmbs-main h4, .dmbs-main h5, .dmbs-main h6,
.dmbs-main .h1, .dmbs-main .h2, .dmbs-main .h3, .dmbs-main .h4, .dmbs-main .h5, .dmbs-main .h6 {
    line-height: 1;
    margin-top: 0;
    margin-bottom: 0;
}
.dmbs-main h1 + p, .dmbs-main h2 + p, .dmbs-main h3 + p, .dmbs-main h4 + p, .dmbs-main h5 + p, .dmbs-main h6 + p,
.dmbs-main .h1 + p, .dmbs-main .h2 + p, .dmbs-main .h3 + p, .dmbs-main .h4 + p, .dmbs-main .h5 + p, .dmbs-main .h6 + p,
.dmbs-page-content>p:first-child, .siteorigin-widget-tinymce>p:first-child {
    margin-top: -0.7rem;
    margin-top: calc(var(--sp-font-size) / -2);
}
@media(min-width: 768px) {
    .dmbs-main h1 + p, .dmbs-main h2 + p, .dmbs-main h3 + p, .dmbs-main h4 + p, .dmbs-main h5 + p, .dmbs-main h6 + p,
    .dmbs-main .h1 + p, .dmbs-main .h2 + p, .dmbs-main .h3 + p, .dmbs-main .h4 + p, .dmbs-main .h5 + p, .dmbs-main .h6 + p,
    .dmbs-page-content>p:first-child, .siteorigin-widget-tinymce>p:first-child {
        margin-top: -0.9rem;
        margin-top: calc(var(--pc-font-size) / -2);
    }
}
.dmbs-main .container {}
@media(min-width: 768px) {}
@media(min-width: 992px) {}
@media(min-width: 1200px) {
    .dmbs-main .container {
        width: 960px;
    }
}

.ml-auto {
    margin-left: auto !important;
}
.mr-auto {
    margin-right: auto !important;
}
@media (min-width: 768px) {
    .ml-sm-0 {
        margin-left: 0 !important;
    }
    .mr-sm-0 {
        margin-right: 0 !important;
    }
}

.w-100 {
    width: 100%!important;
    height:auto;
}

.display-inline {
    display: inline!important;
}
.display-inline-block {
    display: inline-block!important;
}
@media(min-width: 768px) {
    .display-sm-block {
        display: block!important;
    }
    .display-sm-inline {
        display: inline!important;
    }
    .display-sm-inline-block {
        display: inline-block!important;
    }
}
@media(min-width: 768px) {
    .navbar-collapse.collapse.visible-xs-block {
        display: none!important;
    }
}


.js-hide {
    display: none;
}
@media(min-width: 768px) {
    .js-hide {
        display: block;
    }
}

.js-open {}
.js-open .hiraku {}
.js-open .tojiru {
    display: none;
}
.js-open.open .hiraku {
    display: none;
}
.js-open.open .tojiru {
    display: inline;
}



.d-none {
  display: none !important;
}

.d-inline {
  display: inline !important;
}

.d-inline-block {
  display: inline-block !important;
}

.d-block {
  display: block !important;
}

.d-table {
  display: table !important;
}

.d-table-row {
  display: table-row !important;
}

.d-table-cell {
  display: table-cell !important;
}

.d-flex {
  display: -ms-flexbox !important;
  display: flex !important;
}

.d-inline-flex {
  display: -ms-inline-flexbox !important;
  display: inline-flex !important;
}

@media (min-width: 576px) {
  .d-sm-none {
    display: none !important;
  }
  .d-sm-inline {
    display: inline !important;
  }
  .d-sm-inline-block {
    display: inline-block !important;
  }
  .d-sm-block {
    display: block !important;
  }
  .d-sm-table {
    display: table !important;
  }
  .d-sm-table-row {
    display: table-row !important;
  }
  .d-sm-table-cell {
    display: table-cell !important;
  }
  .d-sm-flex {
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .d-sm-inline-flex {
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
  }
}

@media (min-width: 768px) {
  .d-md-none {
    display: none !important;
  }
  .d-md-inline {
    display: inline !important;
  }
  .d-md-inline-block {
    display: inline-block !important;
  }
  .d-md-block {
    display: block !important;
  }
  .d-md-table {
    display: table !important;
  }
  .d-md-table-row {
    display: table-row !important;
  }
  .d-md-table-cell {
    display: table-cell !important;
  }
  .d-md-flex {
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .d-md-inline-flex {
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
  }
}

@media (min-width: 992px) {
  .d-lg-none {
    display: none !important;
  }
  .d-lg-inline {
    display: inline !important;
  }
  .d-lg-inline-block {
    display: inline-block !important;
  }
  .d-lg-block {
    display: block !important;
  }
  .d-lg-table {
    display: table !important;
  }
  .d-lg-table-row {
    display: table-row !important;
  }
  .d-lg-table-cell {
    display: table-cell !important;
  }
  .d-lg-flex {
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .d-lg-inline-flex {
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
  }
}

@media (min-width: 1200px) {
  .d-xl-none {
    display: none !important;
  }
  .d-xl-inline {
    display: inline !important;
  }
  .d-xl-inline-block {
    display: inline-block !important;
  }
  .d-xl-block {
    display: block !important;
  }
  .d-xl-table {
    display: table !important;
  }
  .d-xl-table-row {
    display: table-row !important;
  }
  .d-xl-table-cell {
    display: table-cell !important;
  }
  .d-xl-flex {
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .d-xl-inline-flex {
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
  }
}

@media print {
  .d-print-none {
    display: none !important;
  }
  .d-print-inline {
    display: inline !important;
  }
  .d-print-inline-block {
    display: inline-block !important;
  }
  .d-print-block {
    display: block !important;
  }
  .d-print-table {
    display: table !important;
  }
  .d-print-table-row {
    display: table-row !important;
  }
  .d-print-table-cell {
    display: table-cell !important;
  }
  .d-print-flex {
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .d-print-inline-flex {
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
  }
}


/* nav-bar
==================================================================================================== */
#language {
    margin-top: 20px;
    text-align: right;
}


.navbar-a {
    min-height: 59px;
    padding: 0;
    margin: 0;
    background-color: transparent;
    background-image: url(images/common/sp_header_bg_01.png);
    background-size: 375px 59px;
    background-position: center 0;
    background-repeat: repeat-x;
    border-radius: 0;
    border: none;
}
.navbar-a .inner {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    justify-content:flex-end;
    align-items: start;
}
.navbar-a .navbar-brand {
    color: rgba(0, 0, 0, 0.9);
}
.navbar-a .navbar-collapse {
    background-color: #e9e9de;
}

.navbar-a .nav>li>a {
    color: #252027;
}
.navbar-a .nav>li>a:hover,
.navbar-a .nav>li>a:focus {
    background-color: transparent;
}

.navbar-a .navbar-nav .nav-link {
    color: inherit;
}

.navbar-a .navbar-nav .nav-link:hover,
.navbar-a .navbar-nav .nav-link:focus {
    color: rgba(0, 0, 0, 0.7);
}

.navbar-a .navbar-nav .nav-link.disabled {
    color: rgba(0, 0, 0, 0.3);
}

.navbar-a .navbar-nav .show>.nav-link,
.navbar-a .navbar-nav .active>.nav-link,
.navbar-a .navbar-nav .nav-link.show,
.navbar-a .navbar-nav .nav-link.active {
    color: rgba(0, 0, 0, 0.9);
}

.navbar-a .navbar-toggler {
    color: rgba(0, 0, 0, 0.5);
    border-color: rgba(0, 0, 0, 0.1);
}

.navbar-a .navbar-toggler-icon {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(0, 0, 0, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
}
.navbar-a .navbar-toggle {
    font-size: 1rem;
}

.navbar-a .navbar-toggle {
    display: block;
    width: 60px;
    height: 58px;
    padding: 0;
    margin: 0;
    border: none;
    border-radius: 0;
    background-image: url(images/common/sp_header_btn_03.png);
    background-color: #f3f3ee;
    background-size: 40px 30px;
    background-position: center center;
    background-repeat: no-repeat;
    position: absolute;
    right: 0;
    top: 0;
}
.navbar-a .navbar-toggle:focus {
    outline: none;
}
.navbar-a .navbar-toggle.open {
    background-image: url(images/common/sp_header_btn_04.png);
    background-size: 27px 26px;
}

.navbar-a .navbar-toggle .icon-bar {

}

.navbar-a .navbar-text {
    color: rgba(0, 0, 0, 0.5);
}

.navbar-a .navbar-text a {
    color: rgba(0, 0, 0, 0.9);
}

.navbar-a .navbar-text a:hover,
.navbar-a .navbar-text a:focus {
    color: rgba(0, 0, 0, 0.9);
}

.navbar-a .list-pc {
    display: none;
}
.navbar-a .list-sp {
    display: flex;
    justify-content: flex-end;
    padding-right: 50px;
}
.navbar-fixed-top .navbar-a .navbar-collapse,
.navbar-fixed-bottom .navbar-a .navbar-collapse {
    max-height: calc(100vh - 59px);
}

.navbar-a br {
}
@media(min-width: 375px) {
    .navbar-a br {
        display: none;
    }
}

.navbar-a .icon:before {
    content: "";
    display: block;
    width: 10px;
    height: 1px;
    position: absolute;
    right: 20px;
    top: 28px;
    color: #252027;
    border-top: solid 1px #252027;
}

.navbar-a .icon:after {
    content: "";
    display: block;
    width: 10px;
    height: 1px;
    position: absolute;
    right: 20px;
    top: 28px;
    color: #252027;
    border-top: solid 1px #252027;
    transform: rotate(90deg);
}
.navbar-a .open .icon:after {
    display: none;
}

.navbar-a .dropdown-menu>li>a {
    padding-top: 10px;
    padding-bottom: 10px;
}

@media(min-width: 768px) {
    .navbar-a {
        display: block;
        min-height: 100px;
        background-image: url(images/common/header_bg_01.png),url(images/common/header_bg_02.png);
        background-position: center 0, 0 40px;
        background-size: 1920px 40px, 10px 60px;
        background-repeat: repeat-x, repeat-x;
        font-size: 1.6rem;
    }
    .navbar-a .icon {
        display: none;
    }
    .navbar-a .navbar-collapse {
        margin-right: -10px;
        background-color: transparent;
    }
    .navbar-a .navbar-toggle {
        display: none;
    }
    .navbar-a .inner {
        display: block;
        max-width: 1190px;
        width: 100%;
        margin: 0 auto;
        padding: 0 10px;
    }
    .navbar-a .navbar-nav {
        min-height: 60px;
        display: flex;
        float: none;
        align-items: center;
        justify-content: flex-end;
    }
    .navbar-a .navbar-nav>li {
        margin: 0;
    }
    .navbar-a .navbar-nav>li>a {
        padding: 25px 5px 15px 5px;
    }


    /*.navbar-a .nav>li>a:hover,*/
    .navbar-a .nav>li>a:focus {
        background-color: transparent;
        background-image: url(images/common/nav_hover_01.png);
        background-position: center bottom;
        position: relative;
    }
    /*.navbar-a .nav>li>a:hover:after,*/
    .navbar-a .nav>li>a:focus:after {
        content: "";
        display: block;
        width: 100%;
        height: 1px;
        position: absolute;
        bottom: 0;
        left: 0;
        background-color: #b81c22;
    }

    .navbar-a.navbar-expand-md .nav-link {
        padding: 0;
    }

    .navbar-a .list-pc {
        height: 40px;
        display: flex;
        justify-content: flex-end;
        align-items: center;
    }
    .navbar-a .list-pc li:not(:last-child) {
        margin-right: 20px;
    }
    .navbar-a .list-sp {
        display: none;
    }
}
@media(min-width: 992px) {
    .navbar-a {
        font-size: inherit;
    }
    .navbar-a .navbar-nav>li>a {
        padding: 25px 15px 15px 15px;
    }


    .navbar-a .nav>li>a:hover {
        background-color: transparent;
        background-image: url(images/common/nav_hover_01.png);
        background-position: center bottom;
        position: relative;
    }
    .navbar-a .nav>li>a:hover:after{
        content: "";
        display: block;
        width: 100%;
        height: 1px;
        position: absolute;
        bottom: 0;
        left: 0;
        background-color: #b81c22;
    }
    .navbar-a .navbar-collapse {
        margin-right: -25px;
    }
}
@media(min-width: 1200px) {
    .navbar-a .navbar-nav li:not(:last-child) {
    }
    .navbar-a .navbar-nav>li>a {
        padding: 25px 25px 15px 25px;
    }
}

@media(max-width: 767px) {
    .navbar-a .navbar-nav {
        padding: 0 20px;
    }
    .navbar-a .navbar-nav li {
        text-align: center;
    }
    .navbar-a .navbar-nav li:not(:last-child) {
        border-bottom: solid 1px #ddddcf;
    }
    .navbar-a .navbar-nav>li>a {
        padding: 20px 0!important;
        position: relative;
    }
    .navbar-a .navbar-nav>li a:after {
        font-family: "FontAwesome";
        content: "\f105";
        position: absolute;
        right: 20px;
        top: 20px;
        color: #252027;
    }
    .navbar-a .navbar-nav .dropdown-menu {
        padding: 0 0 0 20px;
        border-top: solid 1px #ddddcf;
    }
    .navbar-a .navbar-nav .open .dropdown-menu>li {
        margin-bottom: 0;
    }
    .navbar-a .navbar-nav .open .dropdown-menu>li>a,
    .navbar-a .navbar-nav .open .dropdown-menu .dropdown-header {
        padding: 20px 0;
    }
    .navbar-a .navbar-nav>li a.dropdown-toggle:after {
        display: none;
    }
    .navbar-a .navbar-nav li a.dropdown-toggle .caret {
        position: absolute;
        right: 20px;
        top: 25px;
    }
    .navbar-a .navbar-nav li li {
        margin-left: 0;
    }
    .navbar-a .dropdown-menu>.active>a,
    .navbar-a .dropdown-menu>.active>a:hover,
    .navbar-a .dropdown-menu>.active>a:focus {
        background-color: #eee;
        color: inherit;
    }
    .navbar-a .dropdown-menu>li>a:after {
        display: none;
    }

    .navbar-a .nav .open>a,
    .navbar-a .nav .open>a:hover,
    .navbar-a .nav .open>a:focus {
        background-color: transparent;
    }
}

#enjoyMenu {}
@media(max-width: 767px) {
    #enjoyMenu {
        padding-top: 10px;
    }
    #enjoyMenu li {
        border-bottom: none;
        margin-bottom: 10px;
    }
    #enjoyMenu li a {
        padding: 0;
    }
}

/* bg
==================================================================================================== */
.bg-a {
    background-color: #f3f3ee !important;
}

a.bg-a:hover,
a.bg-a:focus,
button.bg-a:hover,
button.bg-a:focus {
    background-color: #dae0e5 !important;
}
/* btn
==================================================================================================== */
.btn-a,
.btn-b,
.btn-c,
.btn-d,
.btn-e {
    display: block;
      border-style: solid;
      border-width: 1px;
      border-color: rgb(184, 28, 34);
      border-radius: 5px;
      background-color: rgb(255, 255, 255);
      color: rgb(184, 28, 34)!important;
      position: relative;
}
.btn-a:after,
.btn-b:after,
.btn-c:after,
.btn-d:after,
.btn-e:after  {
    font-family: FontAwesome;
    position: absolute;
    line-height: 1;
}
a:hover .btn-a,.btn-a:hover,
a:hover .btn-b,.btn-b:hover,
a:hover .btn-c,.btn-b:hover,
a:hover .btn-d,.btn-d:hover,
a:hover .btn-e,.btn-e:hover {
    border-color: rgb(153, 146, 84);
    color: rgb(153, 146, 84)!important;
    text-decoration: none;
    color: rgb(153, 146, 84);
}

.btn-a {
      height: 44px;
      line-height: 44px;
      padding: 0 44px;
      font-size: 1.6rem;
      text-align: center;
}
.btn-a:after {
    content: "\2192";
    right: 10px;
    top: 12px;
}

.btn-b {
      height: 40px;
      line-height: 40px;
      padding: 0 25px;
      font-size: 1.2rem;
}
.btn-b:after {
    content: "\f107";
    position: absolute;
    right: 20px;
    top: 10px;
    line-height: 1;
    font-size: 1.8rem;
}
.btn-b.open:after {
    transform:rotateX(180deg)
}
@media(min-width: 768px) {
    .btn-b {
          height: 55px;
          line-height: 55px;
          padding: 0 55px 0 20px;
          font-size: 1.4rem;
    }
    .btn-b:after {
        top: 16px;
    }
}


.btn-c {
      height: 40px;
      line-height: 40px;
      padding: 0 25px;
      font-size: 1.2rem;
      text-align: center;
}
.btn-c:after {
    content: "\f105";
    position: absolute;
    right: 5px;
    top: 10px;
    line-height: 1;
    font-size: 1.8rem;
}

.btn-d {
    height: 50px;
    line-height: 50px;
    padding: 0 50px;
    font-size: 1.4rem;
    text-align: center;
}
.btn-d:before {
    content: "\2190";
    position: absolute;
    left: 20px;
    top: 15px;
    line-height: 1;
    font-size: 1.8rem;
}


.btn-e {
      height: 40px;
      line-height: 40px;
      padding: 0 25px;
      font-size: 1.2rem;
}
.btn-e:after {
    content: "\f1c1";
    position: absolute;
    right: 5px;
    top: 10px;
    line-height: 1;
    font-size: 1.6rem;
}

@media(min-width: 768px) {
    .btn-a,
    .btn-b,
    .btn-c,
    .btn-d,
    .btn-e {
        display: inline-block;
    }

    .btn-d {
        height: 60px;
        line-height: 60px;
        padding: 0 60px;
        font-size: 1.8rem;
    }
    .btn-d:before {
        top: 20px;
    }
}

.btn-f {
    background-color: #ddddcf;
    color: #85856f;
    border-radius: 0;
}


.btn-o {
    display: block;
    height: 50px;
    padding: 0 50px;
    line-height: 50px;
    border-radius: 5px;
    background-image: -moz-linear-gradient( 90deg, rgb(218,56,62) 0%, rgb(184,28,34) 100%);
    background-image: -webkit-linear-gradient( 90deg, rgb(218,56,62) 0%, rgb(184,28,34) 100%);
    background-image: -ms-linear-gradient( 90deg, rgb(218,56,62) 0%, rgb(184,28,34) 100%);
    color: #fff;
    text-align: center;
    position: relative;
}
.btn-o:before {
    content:"";
    display: block;
    border-style: solid;
    border-width: 1px;
    border-color: rgb(215, 81, 86);
    border-radius: 5px;
    background-image: -moz-linear-gradient( 270deg, rgb(218,56,62) 0%, rgb(184,28,34) 100%);
    background-image: -webkit-linear-gradient( 270deg, rgb(218,56,62) 0%, rgb(184,28,34) 100%);
    background-image: -ms-linear-gradient( 270deg, rgb(218,56,62) 0%, rgb(184,28,34) 100%);
    position: absolute;
    top: 4px;
    right: 4px;
    bottom: 4px;
    left: 4px;
    z-index: 1;
}
.btn-o:hover {
    color: #fff;
}
.btn-o:hover:before {
    border-color: rgb(238, 130, 134);
}
.btn-o:focus {
    color: #fff;
}
.btn-o>span {
    position: relative;
    z-index: 2;
}
.btn-o:after {
    position: absolute;
    z-index: 2;
    line-height: 1;
}
.btn-o:after {
    content: "\2192";
    right: 20px;
    top: 15px;
}
@media(min-width: 768px) {
    .btn-o {
        display: inline-block;
        height: 60px;
        line-height: 60px;
        padding: 0 60px;
    }
    .btn-o:before {
        top: 5px;
        right: 5px;
        bottom: 5px;
        left: 5px;
        z-index: 1;
    }
    .btn-o:after {
        content: "\2192";
        top: 20px;
    }
}

@media(min-width: 768px) {
    .btn-sm-inline-block {
        display: inline-block;
        width: auto;
    }
}


/* text
==================================================================================================== */
@media(min-width: 768px) {
    .text-sm-left {
        text-align: left;
    }
    .text-sm-right {
        text-align: right;
    }
}
.bold {
    font-weight: bold;
}


.text-a {
    color: #487f65;
}
.text-b {
    color: #3f6690;
}
.text-c {
    text-align: center;
    margin: 0 0 25px 0;
    font-size: 20px;
}
@media(min-width: 768px) {
    .text-c {
        font-size: 26px;
        margin: 0 0 55px 0;
    }
}
.text-d {
    font-size: 1.1rem;
    color: #87848b;
    padding-left: 1.1rem;
    text-indent: -1.1rem;
}
@media(min-width: 768px) {
    .text-d {
        font-size: 1.4rem;
        padding-left: 1.4rem;
        text-indent: -1.4rem;
    }  
}

.text-e {
    font-size: 1.2rem;
    color: #7e7e30;
}
@media(min-width: 768px) {
    .text-e {
        font-size: 1.6rem;
    }
}


.text-f {
    color: #7e7e30;
}
.text-g {
    font-size: 1.9rem;
}
@media(min-width: 768px) {
    .text-g {
        font-size: 2.6rem;
    }
}

.text-h {
    color: #854776;
}

.text-i {
    font-size: 1.1rem;
    color: #87848b;
}
@media(min-width: 768px) {
    .text-i {
        font-size: 1.4rem;
        text-align: center;
    }
}

.text-j {
    color: #854776;
}
/* title
==================================================================================================== */
.title-a {
    font-size: 3rem;
    line-height: 1.2!important;
    text-align: center;
    font-family: "游明朝", YuMincho,"Sawarabi Mincho";
}
.title-a:after {
    content: "";
    background-image: url(images/common/common_ico_03.png);
    background-size: contain;
    display: block;
    width: 75px;
    height: 12px;
    margin: 30px auto;
    background-repeat: no-repeat;
}
.title-a .text1 {
    display: block;
    font-size: 2rem;
    margin: 0 0 10px 0;
}
@media(min-width: 768px) {
    .title-a {
        font-size: 5rem;

    }
    .title-a:after {
        display: block;
        width: 106px;
        height: 16px;
        margin: 40px auto;
    }
    .title-a .text1 {
        margin-bottom: 20px;
        font-size: 3.2rem;
    }
}
.title-b {
    font-size: 2.4rem;
    padding: 0 0 15px 0;
    margin: 0 0 20px 0!important;
    border-bottom: solid 1px #e1e1dd;
    line-height: 1.45!important;
    position: relative;
}
.title-b:before {
    content: "";
    display: block;
    width: 100px;
    height: 1px;
    background-color: #854776;
    position: absolute;
    left: 0;
    bottom: -1px;
}
.title-b .text1 {
    display: block;
    margin: 10px 0 0 0;
    font-size: 1.4rem;
    color: inherit;
}
.title-b .text2,
.title-b .text3 {
    display: block;
    margin: 10px 0 0 0;
    font-size: 1.8rem;
}
.title-b .text2.abs,
.title-b .text3.abs {
    display: block;
    position: absolute;
    right: 0;
    bottom: 20px;
}
.title-b .text2 {
    color: #6190c3;
}
.title-b .text3 {
    color: #969666;
}

#english .title-b {
}
.title-b .text4 {
    font-size: 2rem;
    margin-right: 2rem;
}
@media(min-width: 768px) {
    .title-b {
        padding: 0 160px 20px 0!important;
        margin-bottom: 30px!important;
        font-size: 4rem;
    }
    .title-b:before {
        width: 300px;
    }
    .title-b .text1 {
        display: inline;
        margin-top: ;
        font-size: 2rem;
    }
    .title-b .text2,
    .title-b .text3 {
        display: inline;
        margin-top: 0;
        font-size: 2.6rem;
        position: absolute;
        right: 0;
        bottom: 30px;
    }
    .title-b .text4 {
        font-size: 2rem;
    }
}

.title-c {
    margin-bottom: 20px!important;
    font-size: 2rem;
    line-height: 1.53!important;
    color: #854776;
    position: relative;
}
.title-c a {
    color: inherit;
}
.title-c a:hover {
    color: #337ab7;
}
.title-c .text1 {
    display: block;
    margin: 10px 0 0 0;
    font-size: 1.6rem;
    color: #6190c3;
}
.title-c .text2 {
    display: block;
    margin: 10px 0 0 0;
    font-size: 1.6rem;
    color: #969666;
}
.title-c .text3 {
    display: block;
    margin: 10px 0 0 0;
    font-size: 1.6rem;
    color: #838383;
}
@media(min-width: 768px) {
    .title-c {
        font-size: 2.6rem;
        margin-bottom: 30px!important;
    }
    .title-c .text1,
    .title-c .text2,
    .title-c .text3{
        margin-top: 0;
        font-size: 2rem;
        position: absolute;
        right: 0;
        bottom: 5px;
    }
}


.title-d {
    margin-bottom: 30px!important;
    font-size: 2rem;
    line-height: 1.53!important;
    color: #7e7e30;
}

@media(min-width: 768px) {
    .title-d {
        font-size: 2.6rem;
    }
}

.title-e {
    margin-bottom: 20px!important;
    font-size: 1.4rem;
    color: #7e7e30;
}
.title-e small {
    font-size: 1rem;
    color: inherit;
}
@media(min-width: 768px) {
    .title-e {
        font-size: 1.8rem;
    }
    .title-e small {
        font-size: 1.6rem;
    }  
}

.title-f {
    display: flex;
    margin-bottom: 20px!important;
    justify-content: center;
    flex-wrap: wrap;
    font-size: 2rem;
    color: #854776;
}
.title-f img {
    order:1;
    margin: 0 10px 20px 10px;
    width: 75px;
    height: 15px;
}
.title-f span {
    order:2;
    width: 100%;
    text-align: center;
}
@media(min-width: 768px) {
    .title-f {
        margin-bottom: 40px!important;
        font-size: 2.6rem;
        align-items: baseline;
    }
    .title-f img {
        order:unset;
        width: auto;
        height: auto;
        margin: 0 20px;
    }

    .title-f span {
        order:unset;
        width: auto;
    }
}

.title-g {
    margin: 0 0 20px 0!important;
    font-size: 2.4rem;
}
.title-g small {
    display: block;
    margin: 0 0 10px 0;
    font-size: 1.8rem;
    color: #7e7e30;
}
@media(min-width: 768px) {
    .title-g {
        margin-bottom: 40px!important;
    }
}

.title-h {
    margin: 0 0 20px 0!important;
    font-size: 1.4rem;
    line-height: 1.5!important;
    color: #854776;
}
.title-h small {
    color: inherit;
    font-size: inherit;
}
@media(min-width: 768px) {
    .title-h {
        font-size: 1.8rem;
    }
    .title-h small {
        font-size: 1.4rem;
    }
}

.title-i {
    font-size: 1.6rem;
    margin: 0 0 20px 0!important;
}

/* label
==================================================================================================== */

.label-a,
.label-b,
.label-c,
.label-d ,
.label-e {
    padding: 8px 7px;
    font-weight: normal;
    font-size: 3vw;
}
.label-a {
    background-color: #77ae94;
}
.label-b {
    background-color: #a788b8;
}
.label-c {
    background-color: #78b5b6;
}
.label-d {
    background-color: #dd9586;
}
.label-e {
    background-color: #e697bd;
}
@media(min-width: 768px) {
    .label-a,
    .label-b,
    .label-c,
    .label-d ,
    .label-e {
        padding: 10px;
        font-size: 1.4rem;
    }
}

.label-o {
    display: inline-block;
    width: 35px;
    height: 35px;
    line-height: 31px;
    border: solid 2px #854776;
    border-radius: 50%;
    text-align: center;
}
@media(min-width: 768px) {
    .label-o {
        width: 50px;
        height: 50px;
        line-height: 46px;
    }
}

/* list
==================================================================================================== */
.list-a {
    border-top: solid 1px #e1e1dd;
    font-size: 1.2rem;
    font-family: "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, YuGothic, "メイリオ", Meiryo;;
}
.list-a li {
    padding: 15px 0;
    border-bottom: solid 1px #e1e1dd;
}
.list-a li:hover {
    background-color: #f3eff1;
}
.list-a li .text1 {
    margin-right: 1rem;
}
.list-a li .text2 {

}
.list-a a {
    color: #252027;
}
@media(min-width: 768px) {
    .list-a {
        font-size: 1.6rem;
    }
    .list-a li {
        padding-right: 20px;
        padding-left: 20px;
    }
    .list-a li .text2 {
        margin-left: 1rem;
    }
}

.list-b li {
    margin: 0 0 20px 0;
}
@media(min-width: 576px) {
    .list-b {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
    }
    .list-b li {
        width: 31.91%;
        margin-bottom: 0;
    }
}

.list-c {}
.list-c li {
    padding-left: 25px;
    margin-bottom: 20px;
    background-image: url(images/common/list_ico_02.png);
    background-position: 0 center;
    background-repeat: no-repeat;
    line-height: 1;
}
.list-d {}
.list-d li {
    padding-left: 25px;
    margin-bottom: 20px;
    background-image: url(images/common/list_ico_02.png);
    background-position: 0 center;
    background-repeat: no-repeat;
    line-height: 1;
}
@media(min-width: 768px) {
    .list-d li {
        width: 50%;
        float: left;
    }
}
.list-e {}
.list-e li {
    padding-left: 25px;
    margin-bottom: 20px;
    background-image: url(images/common/list_ico_02.png);
    background-position: 0 center;
    background-repeat: no-repeat;
    line-height: 1;
}
@media(min-width: 768px) {
    .list-e li {
        width: 33.3%;
        float: left;
    }
}


.list-f {}
.list-f li {
    padding-left: 20px;
    margin-bottom: 20px;
    line-height: 1;
    position: relative;
}
.list-f li:before {
    font-family: "FontAwesome";
    content: "\f105";
    display: block;
    position: absolute;
    left: 0;
    top: 0;
}
.list-f li a {
    color: #252027;
}
@media(min-width: 768px) {
    .list-f li {
    }
}

.list-g {
    font-size: 1.2rem;
    margin-bottom: 20px;
}
.list-g li {
    padding-left: 15px;
    background-image: url(images/common/list_ico_02.png);
    background-position: 0 7px;
    background-repeat: no-repeat;
    background-size: 10px 10px;
}
@media(min-width: 768px) {
    .list-g li {
        width: 50%;
        float: left;
    }
    .list-g li:nth-child(odd) {
        clear: left;
    }
}


.list-h {}
.list-h>li ul {
    padding-left: 2rem;
}
.list-h>li>ul>li {
    position: relative;
    padding-left: 2rem;
}
.list-h>li>ul>li:before {
    content: "\f0da";
    font-family: FontAwesome;
    display: block;
    position: absolute;
    left: 0;
    top: 5px;
    font-size: 12px;
}

/* hr
==================================================================================================== */
.hr-a {
    display: flex;
    align-items: center;
    margin: 30px 0;
}
.hr-a img {
    margin: 0 15px;
}
.hr-a .border1,
.hr-a .border2 {
    display: block;
    height: 1px;
    background-color: #cbcbbc;
    width: 100%;
}
/* table
==================================================================================================== */
.table-a {
    font-size: 1.2rem;
    margin-bottom: 10px;
}
.table-a th {
    width: 90px;
    background-color: #f3eff1;
    padding: 10px 15px!important;
    font-weight: normal;
}
.table-a td {
    background-color: #fff;
    padding: 10px 15px!important;
}
.table-a small {
    font-size: 1.1rem;
}
@media(max-width: 767px) {
    .table-a,
    .table-a tbody,
    .table-a thead,
    .table-a tfoot,
    .table-a tr,
    .table-a th,
    .table-a td {
        display: block;
        width: 100%;
        border: none!important;
    }
}
@media(min-width: 768px) {
    .table-a {
        font-size: 1.6rem;
        margin-bottom: 15px;
        padding: 15px 20px!important;
    }
    .table-a th {
        width: 180px;
        padding: 15px 20px!important;
        border: solid 1px #e1e1dd;
    }
    .table-a td {
        padding: 15px 20px!important;
        border: solid 1px #e1e1dd;
    }
    .table-a small {
        font-size: 1.4rem;
    }
}

.table-b {
    font-size: 1.2rem;
    color: #252027;
}
.table-b th,
.table-b td {
    padding: 10px 15px;
    border: solid 1px #e1e1dd;
    font-weight: normal;
}
.table-b th {
    background-color: #f3eff1;
}
@media(min-width: 768px) {
    .table-b {
        width: auto;
        font-size: 1.6rem;
    }
    .table-b th,
    .table-b td {
        min-width: 190px;
        max-width: 430px;
    }
}

/* box
==================================================================================================== */
.box-a {
    display: flex;
    flex-direction: column;
    height: 90px;
    padding: 10px 19px 0 147px;
    border-radius: 5px;
    background-color: #fff;
    color: #252027;
    position: relative;
}
.box-a:after {
    display: block;
    width: 10px;
    content: "\3009";
    line-height: 1;
    position: absolute;
    right: 10px;
    top: 35px;
    color: #b81c22;
    font-size: 2rem;
    transform:scaleY(.6);
}
.box-a .photo {
    width: 128px;
    position: absolute;
    left: 0;
    top: 0;
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
}
.box-a .title {
    font-size: 2rem;
    order: 2;
    font-size: 1.8rem;
    line-height: 1.25;
}
.box-a .subtitle {
    font-size: 1.2rem;
    margin-bottom: 12px;
    order: 1;
}
.box-a .link {
    display: none;
}

@media(min-width: 375px) {
    .box-a {
        height: 104px;
        padding-top: 19px;
        padding-left: 167px;
    }
    .box-a:after {
        top: 45px;
    }
    .box-a .photo {
        width: 148px;
    }
    .box-a .subtitle {
        font-size: 1.4rem;
    }
    .box-a .title {
        font-size: 2rem;
    }
    .box-a.pt-9 {
        padding-top: 9px;
    }
}
@media(min-width: 768px) {
    .box-a {
        padding: 0;
        height: auto;
    }
    .box-a .photo{
        position: static;
        width: 100%;
        height: auto;
        margin-bottom: 30px;
        border-bottom-left-radius: 0;
        border-top-right-radius: 5px;
    }
    .box-a .subtitle {
        font-size: 1.8rem;
        text-align: center;
    }
    .box-a .title {
        font-size: 2.6rem;
        text-align: center;
        margin-bottom: 25px;
    }
    .box-a .link {
        display: block;
        order: 3;
        margin: 0 20px 15px 20px;
    }
    .box-a:after {
        display: none;
    }
}

.box-b {
    background-color: rgba(255,255,255,.2);
    border: solid 1px #fff;
    border-radius: 5px;
    padding: 10px 10px 15px 10px;
    display: flex;
    flex-direction: column-reverse;
    color: #252027;
    font-size: 1.4rem;
}
.box-b:hover {
    background-color: rgba(255,255,255,1);
    color: inherit;
    border: solid 1px #b81c22;
}
.box-b .title {
    text-align: center;
    position: relative;
    font-size: 1.4rem;
}
.box-b .title:after {
    font-family: FontAwesome;
    display: block;
    width: 8px;
    content: "\f105";
    line-height: 1;
    position: absolute;
    right: 0;
    top: -3px;
    color: #b81c22;
    font-size: 2rem;
}
.box-b .text {
    display: none;
}
.box-b .photo {
    margin: 0 auto 20px auto;
}
@media(min-width: 768px) {
    .box-b {
        flex-direction: column;
        min-height: 90px;
        padding: 20px 20px 20px 160px;
        position: relative;
    }
    .box-b .title {
        margin: 10px 0 15px 0;
        text-align: left;
        font-size: 2rem;
    }
    .box-b .title:after {
        top: 25px;
    }
    .box-b .photo {
        position: absolute;
        left: 20px;
        top: 20px;
        width: 120px;
    }
    .box-b .text {
        display: block;
        font-size: 1.4rem;
    }
}
@media(min-width: 992px) {
    .box-b {
        padding-left: 220px;
        min-height: 170px;
    }
    .box-b .photo {
        width: 180px;
    }
    .box-b .title {
        margin: 15px 0 20px 0;
        font-size: 2.6rem;
    }
    .box-b .title:after {
        top: 38px;
    }
    .box-b .text {
        font-size: 1.6rem;
    }
}


.box-c {
    display: block;
    background-color: rgba(255,255,255,.2);
    border: solid 1px #fff;
    border-radius: 5px;
    padding: 30px 80px 30px 35px;
    color: #252027;
    font-size: 1.4rem;
    position: relative;
}
.box-c:hover {
    background-color: rgba(255,255,255,1);
    color: inherit;
    border: solid 1px #b81c22;
}
    .box-c:after {

        font-family: FontAwesome;
        display: block;
        width: 8px;
        content: "\f105";
        line-height: 1;
        position: absolute;
        right: 10px;
        top: 45px;
        color: #b81c22;
        font-size: 2rem;
    }
.box-c .subtitle {
    font-size: 1.2rem;
    margin-bottom: 10px;
}
.box-c .title {
    font-size: 1.6rem;
}
.box-c .text1 {
    display: none;
}
.box-c .text2 {
    display: none;
}
.box-c .icon1 {
    width: 45px;
    height: 45px;
    position: absolute;
    left: -10px;
    top: -10px;
}
.box-c .icon2 {
    width: 100px;
    height: auto;
    position: absolute;
    right: 20px;
    top: 10px;
}
@media(min-width: 375px) {
    .box-c {
        padding: 30px 130px 30px 55px;
    }
    .box-c .subtitle {
        font-size: 1.4rem;
    }
    .box-c .title {
        font-size: 1.8rem;
    }

    .box-c .icon1 {
        width: 55px;
        height:55px;
    }
    .box-c .icon2 {
        width: 110px;
        right: 20px;
        top: 10px;
    }
}

@media(min-width: 576px) {
    .box-c {
        padding: 20px 280px 15px 40px;
        position: relative;
    }

    .box-c:after {
        right: 20px;
        top: 75px;
        font-size: 2rem;
    }
    .box-c .icon1 {
        left: 40px;
        top: 20px;
        width: 80px;
        height:80px;
    }
    .box-c .icon2 {
        width: 200px;
        right: 50px;
    }
    .box-c .subtitle {
        font-size: 1.8rem;
        margin: 10px 0 15px 100px;
    }
    .box-c .title {
        font-size: 3.6rem;
        margin-left: 95px;
        margin-bottom: 20px;
    }
    .box-c .text1 {
        display: block;
        font-size: 1.4rem;
    }
    .box-c .text2 {
        display: block;
        font-size: 1rem;
    }
}
@media(min-width: 992px) {
    .box-c {
        padding-right: 320px;
    }
    .box-c .title {
        font-size: 4rem;
    }
    .box-c .text1 {
        font-size: 1.6rem;
    }
    .box-c .icon2 {
        width: 252px;
        height: 197px;
        right: 60px;
        top: -10px;
    }
}

.box-d {
}
.box-d .text1 {
    margin: 0 0 15px 0;
}
.box-d .text2 {
    font-size: 1.4rem;
    margin: 0 0 15px 0;
}
.box-d .text3 {
    margin: 0 0 35px 0;
    padding: 0 0 0 20px;
    line-height: 1.43;
    font-size: 1.1rem;
    color: #88868b;
}
.box-d .text3 .notes {
    display: inline-block;
    width: 20px;
    margin-left: -20px;
}
.box-d .text3:last-of-type {
    margin-bottom: 20px;
}
.box-d .text4 {
    margin-bottom: 0;
}

.box-d .text5 {
    margin: 0 0 10px 0;
    padding: 0 0 0 30px;
    line-height: 1.43;
    font-size: 1.1rem;
    color: #88868b;
}
.box-d .text5 .notes {
    display: inline-block;
    width: 20px;
    margin-left: -20px;
}
.box-d .text5:last-of-type {
    margin-bottom: 40px;
}
@media(min-width: 768px) {
    .box-d .text1 {
        margin-bottom: 35px;
    }
    .box-d .text2 {
        margin-bottom: 35px;
        font-size: 1.6rem;
    }
    .box-d .text3 {
        font-size: 1.2rem;
        text-align: left;
    }
    .box-d .text3:last-of-type {
        margin-bottom: 35px;
    }
    .box-d .text4 {
        width: 300px;
        float: right;
    }
    .box-d .text5 {
        font-size: 1.2rem;
    }
    .box-d .text5 .notes {
        width: 30px;
        margin-left: -30px;
    }
}


.box-e {
    margin: 0 0 40px 0;
}
.box-e .text1 {
    margin: 0 0 15px 0;
}
.box-e .text3 {
    margin: 0 0 20px 0;
    text-align: right;
    font-size: 1.1rem;
    color: #88868b;
}
.box-e .text4 {
    margin-bottom: 0;
}
@media(min-width: 768px) {
    .box-e {
        margin-bottom: 50px;
    }
    .box-e .text1 {
        margin-bottom: 35px;
    }
    .box-e .text2 {
        margin-bottom: 35px;
        font-size: 1.6;
    }
    .box-e .text3 {
        margin-bottom: 35px;
        font-size: 1.2rem;
        text-align: left;
    }
    .box-e .text4 {
        width: 300px;
        margin-right: auto;
        margin-left: auto;
    }
}


.box-f {
    padding:0;
    background-image: url(images/common/sp_common_bg_01.png);
    background-repeat: no-repeat;
    background-size: contain;
    position: relative;
}
.box-f:before {
    display: block;
    content: "";
    padding-top: 42.38%;
}
.box-f .title{
    position: absolute;
    text-align: center;
    width: 100%;
    margin: 0;
    left: 0;
    top: 25px;
}
.box-f .text2 {
    position: absolute;
    left: 20px;
    top: 58px;
    width: calc(100% - 40px);
    text-align: center;
}
.box-f {}
@media(min-width: 375px) {
    .box-f .text2 {
        top: 65px;
    }
}
@media(min-width: 576px) {
    .box-f {
        background-image: url(images/common/common_bg_01.png);
    }
    .box-f:before {
        padding-top: 29.14%;
    }
    .box-f .title{
        width: auto;
        text-align: left;
        top: 40px;
        left: 55px;
    }
    .box-f .text1{
        position: absolute;
        text-align: left;
        width: auto;
        top: 90px;
        left: 55px;
    }
    .box-f .text2{
        text-align: left;
        width: 230px;
        left: 55px;
        top: 100px;
    }
}
@media(min-width: 768px) {
    .box-f .text2{
        top: 130px;
        width: 300px;
    }
}
@media(min-width: 992px) {
    .box-f .title{
        top: 50px;
    }
    .box-f .text1{

        top: 110px;
    }
    .box-f .text2{
        top: 160px;
    }
}

.box-g {
    border-style: solid;
    border-width: 25px;
    padding: 15px 5px 0 5px;
    -moz-border-image: url(images/common/common_bg_02.png) 25 25 25 25;
    -webkit-border-image: url(images/common/common_bg_02.png) 25 25 25 25;
    -o-border-image: url(images/common/common_bg_02.png) 25 25 25 25;
    border-image: url(images/common/common_bg_02.png) 25 25 25 25 fill;
    font-size: 1.2rem;
    line-height: 1.75;

}
.box-g .text1 {
    font-size: 1.4rem;
    line-height: 1.92;
}
@media(min-width: 768px) {
    .box-g {
        font-size: 1.6rem;
        padding: 15px 0 0 0;
    }
}

.box-h {}
.box-h .title {

    font-size: 1.4rem;
    color: #854776;
    margin: 15px 0;
}

.box-h .text1 {
    font-size: 1.2rem;
    line-height: 1.75;
    margin-bottom: 0;
}
.box-h .text2 {
    font-size: 1.2rem;
    line-height: 1.75;
    margin-top: 15px;
    margin-bottom: 0;
}
@media(min-width: 768px) {
    .box-h .title {
        font-size: 1.8rem;
        margin: 20px 0;
    }
    .box-h .text1 {
        font-size: 1.6rem;
    }
    .box-h .text2 {
        font-size: 1.4rem;
    }
}


.box-i {
    border-style: solid;
    border-width: 12px;
    padding: 18px;
    -moz-border-image: url(images/common/common_bg_03.png) 12 12 12 12;
    -webkit-border-image: url(images/common/common_bg_03.png) 12 12 12 12;
    -o-border-image: url(images/common/common_bg_03.png) 12 12 12 12;
    border-image: url(images/common/common_bg_03.png) 12 12 12 12 fill;
    font-size: 1.4rem;
    line-height: 1.75;

}
.box-i .text1 {
    text-align: right;
    font-size: 1.2rem;
    color: #854776;
    margin-bottom: 0;
}
.box-i .text1 span {
    font-size: 1.4rem;
}
@media(min-width: 768px) {
    .box-i {
        font-size: 1.8rem;
        padding: 28px 38px;
    }
    .box-i .text1 {
        font-size: 1.4rem;
    }
    .box-i .text1 span {
        font-size: 1.8rem;
    }
}

.box-j {
    display: flex;
    flex-direction: column-reverse;
}
.box-j [class^="btn-"] {
    margin: 0 0 10px 0;
}
@media(min-width: 768px) {
    .box-j {
        flex-direction: row;
        justify-content: center;
    }
    .box-j [class^="btn-"] {
        margin: 0 20px;
    } 
}

.box-k {
}
.box-k .text1 {
    font-size: 3rem;
    line-height: 1;
    margin: 0 0 20px 0;
}
.box-k .text1 span {
    font-size: 2rem;
}
.box-k .text2 {
    line-height: 1;
    margin: 0 0 10px 0;
}
.box-k .text3 {
    font-size: 2rem;
    line-height: 1.5;
    margin: 0 0 10px 0;
}
.box-k .text4 {
    line-height: 1.92;
    margin: 0;
}



.box-l {
    border-style: solid;
    border-width: 25px;
    -moz-border-image: url(images/common/common_bg_02.png) 25 25 25 25;
    -webkit-border-image: url(images/common/common_bg_02.png) 25 25 25 25;
    -o-border-image: url(images/common/common_bg_02.png) 25 25 25 25;
    border-image: url(images/common/common_bg_02.png) 25 25 25 25 fill;
    font-size: 1.2rem;
    line-height: 1.66;

}
@media(min-width: 768px) {
    .box-l {
        font-size: 1.6rem;
    }
}


.box-m {
    padding: 0 20px;
    background-image: url(images/home/home_plan_bg_01.jpg);
    background-size: cover;
    background-position: center 0;
}
@media(min-width: 768px) {
    .box-m>.box {
        max-width: 940px;
        margin: 0 auto;
    }
}

.box-o {
    padding: 19px;
    border: solid 1px #e1e1dd;
}
.box-p {
    padding: 9px;
    border: solid 1px #e1e1dd;
}
@media(min-width: 768px) {

    .box-p {
        padding: 19px;
        border: solid 1px #e1e1dd;
    }
}

.box-q {
    background-color: #fff;
    margin: 0 0 40px 0;
}
.box-q>img {
    display: block;
}
.box-q .caption {
    padding: 15px 10px;
}
.box-q .title {}
.box-q .text {
    margin: 0;
    font-size: 1.4rem;
    left: 1.5;
}
@media(min-width: 768px) {
    .box-q .caption {
        padding: 20px 30px;
        min-height: 96px;
    }
    .box-q .text {
        font-size: 1.8rem;
        line-height: 1.56;
    }
}



.box-r .inner {
    padding: 40px 0;
    margin: 0 20px;
}
.box-r .title {
    font-size: 2.4rem;
    line-height: 1.46;
    margin: 0 0 1rem 0;
}
.box-r .title small {
    display: block;
    line-height: inherit;
    color: #252027;
}
.box-r .text {
    font-size: 1.4rem;
    line-height: 1.93;
    margin: 0;
}
@media(min-width: 768px) {
    .box-r.inner {
        padding: 35px 20px;
    }
    .box-r .box {
        width: 20%;
    }
    .box-r .title {
        margin-bottom: 3rem;
    }
}

.js-toggle .box-r .inner {
    padding-top: 0;
    padding-bottom: 0;
}
.js-toggle .box-r .title {
    padding: 30px 0;
    margin-bottom: 0;
    position: relative;
}
.js-toggle .box-r .title:before,
.js-toggle .box-r .title:after {
    content: "";
    display: block;
    width: 12px;
    height: 1px;
    background-color: #252027;
    position: absolute;
    right: 0;
    top: 50%;
}
.js-toggle .box-r .title:after {
    transform:rotate(90deg);
}
.js-toggle .box-r .text {
    display: none;
    margin-bottom: 40px;
}
.js-toggle .box-r.open .title:after {
    display: none;
}
.js-toggle .box-r.open .text {
    display: block;
}
@media(min-width: 768px) {
    .js-toggle .box-r .inner {
        padding-top: 0;
    }
    .js-toggle .box-r .title {
        padding: 0;
        margin-bottom: 3rem;
    }
    .js-toggle .box-r .title:before,
    .js-toggle .box-r .title:after {
        display: none;
    }
    .js-toggle .box-r .text {
        display: block!important;
    }
}

.box-r.style-b {
}
.box-r.style-b .inner {
    border-bottom: solid 1px #dcddcf;
}
.box-r.style-b .title {
    color: #854776;
    padding-left: 45px;
    position: relative;
}
.box-r.style-b .title .icon {
    display: block;
    position: absolute;
    width: 27px;
    height: 36px;
    left: 0;
    top: calc(50% - 18px);
}
.box-r.style-b .text {
    padding-left: 45px;
    position: relative;
}
.box-r.style-b .text .icon {
    display: block;
    position: absolute;
    width: 30px;
    height: 36px;
    line-height: 1;
    left: 0;
    top: 5px;
    font-size: 30px;
}
@media(min-width: 768px) {
    .box-r.style-b .inner {
        margin: 0;
        border-bottom: none;
    }
    .box-r.style-b .text {
        padding-left: 95px;
    }
    .box-r.style-b .text .icon {
        left: 50px;
    }
}


.box-s {}
.box-s .caption {
    padding: 40px 10px;
}
.box-s .title {
    padding: 0 0 15px 0;
    color: #854776;
}
.box-s .text {
    margin: 0;
}
@media(min-width: 768px) {
    .box-s .caption {
        padding-right: 0;
        padding-left: 0;
    }
}

/* flexbox
==================================================================================================== */
.flexbox-a {
    display: flex;
    justify-content: space-between;
}
.flexbox-a>div {
    width: 48.93%;
}

/* tab
==================================================================================================== */
.tab-a {}
.tab-a .nav>li>a {
    padding: 15px 0 20px 0;
    margin-top: 10px;
    background-color: #b81c22;
    color: #fff;
    font-size: 1.2rem;
    text-align: center;
}
.tab-a .nav-tabs>li {
    width: calc(25% - 1px);
    margin-right: 1px;
}
.tab-a .nav-tabs>li>a {
    margin-right: 0;
    position: relative;
}
.tab-a .nav-tabs>li>a:after {
    content: "\f107";
    display: block;
    width: 100%;
    line-height: 1;
    font-family: "FontAwesome";
    font-size: 2rem;
    position: absolute;
    left: 0;
    bottom: 5px;
    text-align: center;
}
.tab-a .nav-tabs>li.active>a,
.tab-a .nav-tabs>li.active>a:hover,
.tab-a .nav-tabs>li.active>a:focus {
    padding: 15px 0 30px 0;
    margin-top: 0;
    border-radius: 0;
    border-top: solid 1px #b81c22;
    border-right: none;
    border-left: none;
    background-color: #fff;
    color: #b81c22;
}
.tab-a .nav-tabs>li.active>a:after {
    display: none;
}
.tab-a .tab-content {
    padding: 30px 20px;
    background-color: #fff;
    font-size: 1.2rem;
    line-height: 1.75;
}
@media(min-width: 768px) {
    .tab-a .nav>li>a {
        padding-right: 20px;
        padding-left: 20px;
        font-size: 1.8rem;
        text-align: left;
    }
    .tab-a .nav-tabs>li>a:after {
        width: auto;
        left: auto;
        bottom: auto;
        right: 20px;
        top: 20px;
        font-size: 1.8rem;
    }
    .tab-a .nav-tabs>li.active>a,
    .tab-a .nav-tabs>li.active>a:hover,
    .tab-a .nav-tabs>li.active>a:focus {
        padding-right: 20px;
        padding-left: 20px;
    }
    .tab-a .tab-content {
        padding: 40px;
        font-size: 1.6rem;
    }
}


.tab-b {

}
.tab-b .nav-tabs {
    margin: 0 0 10px 0;
    border-bottom: none;
    display: flex;
    justify-content: center;
}
.tab-b .nav-tabs>li {
    margin: 0;
    width: 158px;
    float: none;
}
.tab-b .nav-tabs>li>a {
    height: 60px;
    padding: 0;
    margin: 0;
    border: none;
    border-radius: 0;
    background-repeat: no-repeat;
    -webkit-background-size: ;
    background-size: ;
    text-indent: -9999px;
}
.tab-b .nav-tabs>li.active>a,
.tab-b .nav-tabs>li.active>a:hover,
.tab-b .nav-tabs>li.active>a:focus {
    border: none;

}
.tab-b .nav>li>a:hover,
.tab-b .nav>li>a:focus {
     background-color: transparent;   
}
.tab-b .nav-tabs>li>a:hover {
    background-position: 0 -60px;
}
.tab-b .nav-tabs>li.active>a {
    background-position: 0 -120px;
}

.tab-b .nav-tabs>li:nth-child(1) {
    margin-right: 19px;
}
.tab-b .nav-tabs>li:nth-child(1)>a {
    background-image: url(images/common/sp_tab-b_tab1.png);
}
.tab-b .nav-tabs>li:nth-child(2)>a {
    background-image: url(images/common/sp_tab-b_tab2.png);
}
@media(min-width: 576px) {

}
@media(min-width: 992px) {
    .tab-b {}
    .tab-b .nav-tabs>li {
        width: 460px;
    }
    .tab-b .nav-tabs>li>a {
        height: 80px;
    }
    .tab-b .nav-tabs>li>a:hover {
        background-position: 0 -80px;
    }
    .tab-b .nav-tabs>li.active>a {
        background-position: 0 -160px;
    }

    .tab-b .nav-tabs>li:nth-child(1) {
        margin-right: 20px;
    }
    .tab-b .nav-tabs>li:nth-child(1)>a {
        background-image: url(images/common/tab-b_tab1.png);
    }
    .tab-b .nav-tabs>li:nth-child(2)>a {
        background-image: url(images/common/tab-b_tab2.png);
    }
}
@media(max-width: 374px) {
    .tab-b .nav-tabs {
        display: flex;
        justify-content: space-around;
    }
    .tab-b .nav-tabs>li {
        width: 134px;
        float: none;
    }
    .tab-b .nav-tabs>li:nth-child(1) {
        margin-right: 0;
    }
    .tab-b .nav-tabs>li>a {
        background-size: 100% auto;
        height: 51px;
    }
    .tab-b .nav-tabs>li.active>a {
        background-position: 0 -102px;
    }
}

/* padding
==================================================================================================== */
.pr-0 {
    padding-right: 0!important;
}

.pl-0 {
    padding-left: 0!important;
}



.pt-0 {
    padding-top: 0!important;
}
.pt-20 {
    padding-top: 2rem!important;
}
.pt-30 {
    padding-top: 3rem!important;
}
.pt-40 {
    padding-top: 4rem!important;
}
.pt-60 {
    padding-top: 6rem!important;
}
.pt-80 {
    padding-top: 8rem!important;
}
.pt-90 {
    padding-top: 9rem!important;
}
.pt-100 {
    padding-top: 10rem!important;
}
.pt-120 {
    padding-top: 12rem!important;
}
.pt-150 {
    padding-top: 15rem!important;
}
.pb-20 {
    padding-bottom: 2rem!important;
}
.pb-30 {
    padding-bottom: 3rem!important;
}
.pb-40 {
    padding-bottom: 4rem!important;
}
.pb-60 {
    padding-bottom: 6rem!important;
}
.pb-80 {
    padding-bottom: 8rem!important;
}
.pb-90 {
    padding-bottom: 9rem!important;
}
.pb-100 {
    padding-bottom: 10rem!important;
}
.pb-120 {
    padding-bottom: 12rem!important;
}
.pb-130 {
    padding-bottom: 13rem!important;
}
.pb-140 {
    padding-bottom: 14rem!important;
}
.pb-150 {
    padding-bottom: 15rem!important;
}
@media(min-width: 768px) {
    .pt-sm-20 {
        padding-top: 2rem!important;
    }
    .pt-sm-30 {
        padding-top: 3rem!important;
    }
    .pt-sm-40 {
        padding-top: 4rem!important;
    }
    .pt-sm-50 {
        padding-top: 5rem!important;
    }
    .pt-sm-60 {
        padding-top: 6rem!important;
    }
    .pt-sm-80 {
        padding-top: 8rem!important;
    }
    .pt-sm-90 {
        padding-top: 9rem!important;
    }
    .pt-sm-100 {
        padding-top: 10rem!important;
    }
    .pt-sm-120 {
        padding-top: 12rem!important;
    }
    .pt-sm-150 {
        padding-top: 15rem!important;
    }
    .pb-sm-20 {
        padding-bottom: 2rem!important;
    }
    .pb-sm-30 {
        padding-bottom: 3rem!important;
    }
    .pb-sm-40 {
        padding-bottom: 4rem!important;
    }
    .pb-sm-60 {
        padding-bottom: 6rem!important;
    }
    .pb-sm-80 {
        padding-bottom: 8rem!important;
    }
    .pb-sm-90 {
        padding-bottom: 9rem!important;
    }
    .pb-sm-100 {
        padding-bottom: 10rem!important;
    }
    .pb-sm-120 {
        padding-bottom: 12rem!important;
    }
    .pb-sm-130 {
        padding-bottom: 13rem!important;
    }
    .pb-sm-140 {
        padding-bottom: 14rem!important;
    }
    .pb-sm-150 {
        padding-bottom: 15rem!important;
    }

}


/* margin
==================================================================================================== */
.mt-0 {
    margin-top: 0!important;
}
.mt-10 {
    margin-top: 1rem!important;
}
.mt-20 {
    margin-top: 2rem!important;
}
.mt-30 {
    margin-top: 3rem!important;
}
.mt-40 {
    margin-top: 4rem!important;
}
.mt-50 {
    margin-top: 5rem!important;
}
.mt-60 {
    margin-top: 6rem!important;
}
.mt-80 {
    margin-top: 8rem!important;
}
.mt-90 {
    margin-top: 9rem!important;
}
.mt-120 {
    margin-top: 12rem!important;
}
.mt-150 {
    margin-top: 15rem!important;
}
.mb-0 {
    margin-bottom: 0!important;
}
.mb-10 {
    margin-bottom: 1rem!important;
}
.mb-20 {
    margin-bottom: 2rem!important;
}
.mb-30 {
    margin-bottom: 3rem!important;
}
.mb-40 {
    margin-bottom: 4rem!important;
}
.mb-50 {
    margin-bottom: 5rem!important;
}
.mb-60 {
    margin-bottom: 6rem!important;
}
.mb-80 {
    margin-bottom: 8rem!important;
}
.mb-90 {
    margin-bottom: 9rem!important;
}
.mb-110 {
    margin-bottom: 11rem!important;
}
.mb-120 {
    margin-bottom: 12rem!important;
}
.mb-130 {
    margin-bottom: 13rem!important;
}
.mb-140 {
    margin-bottom: 14rem!important;
}
.mb-150 {
    margin-bottom: 15rem!important;
}

@media(min-width: 768px) {
    .mt-sm-0 {
        margin-top: 0!important;
    }
    .mt-sm-10 {
        margin-top: 1rem!important;
    }
    .mt-sm-20 {
        margin-top: 2rem!important;
    }
    .mt-sm-30 {
        margin-top: 3rem!important;
    }
    .mt-sm-40 {
        margin-top: 4rem!important;
    }
    .mt-sm-50 {
        margin-top: 5rem!important;
    }
    .mt-sm-60 {
        margin-top: 6rem!important;
    }
    .mt-sm-80 {
        margin-top: 8rem!important;
    }
    .mt-sm-90 {
        margin-top: 9rem!important;
    }
    .mt-sm-120 {
        margin-top: 12rem!important;
    }
    .mt-sm-150 {
        margin-top: 15rem!important;
    }
    .mb-sm-0 {
        margin-bottom: 0!important;
    }
    .mb-sm-10 {
        margin-bottom: 1rem!important;
    }
    .mb-sm-20 {
        margin-bottom: 2rem!important;
    }
    .mb-sm-30 {
        margin-bottom: 3rem!important;
    }
    .mb-sm-40 {
        margin-bottom: 4rem!important;
    }
    .mb-sm-50 {
        margin-bottom: 5rem!important;
    }
    .mb-sm-60 {
        margin-bottom: 6rem!important;
    }
    .mb-sm-80 {
        margin-bottom: 8rem!important;
    }
    .mb-sm-90 {
        margin-bottom: 9rem!important;
    }
    .mb-sm-100 {
        margin-bottom: 10rem!important;
    }
    .mb-sm-110 {
        margin-bottom: 11rem!important;
    }
    .mb-sm-120 {
        margin-bottom: 12rem!important;
    }
    .mb-sm-130 {
        margin-bottom: 13rem!important;
    }
    .mb-sm-140 {
        margin-bottom: 14rem!important;
    }
    .mb-sm-150 {
        margin-bottom: 15rem!important;
    }
}

/*[class^="mb-"] + p {
    margin-top: -1.8rem!important;
}*/


/* header
==================================================================================================== */
.dmbs-header {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    z-index: 1040;
}
.dmbs-header .inner {
    display: block;
    max-width: 1190px;
    margin: 0 auto;
    padding: 0 10px;
    position: relative;
}
.dmbs-header-img{
    display: block;
    width: 130px;
    margin: 0 0 0 -9px;
    padding: 0 9px;
    position: absolute;
    left: 10px;
    top: 0;
}
.dmbs-header-img .short {
    display: none;
}

.dmbs-header-img.scroll {
    height: 74px;
    width: 131px;
    padding: 0;
}
.dmbs-header-img.scroll .short {
    display: block;
    width: 131px;
    height: 74px;
}
.dmbs-header-img.scroll .long {
    display: none;
}

#headerTextArea {}
#headerTextArea img {
    vertical-align: middle;
}
@media(min-width: 768px) {

    #headerTextArea {
        height: 40px;
        line-height: 35px;
    }
    #headerTextArea li:not(:last-child) {
        margin-right: 20px;
    }
    .dmbs-header {
        max-width: initial;
        max-width: auto;
        width: 100%;
    }
    .dmbs-header-img {
        width: 216px;
        padding: 0 16px;
        margin-left: -10px;
    }
    .dmbs-header-img.scroll {
        height: auto;
        width: 216px;
    }
    .dmbs-header-img.scroll .short {
        width: 216px;
        height: auto;
    }
}
@media(min-width: 992px) {
    .dmbs-header-img {
        width: 252px;
        padding: 0 16px;
        margin-left: -16px;
    }
    .dmbs-header-img.scroll {
        height: auto;
        width: auto;
    }
    .dmbs-header-img.scroll .short {
        width: auto;
        height: auto;
    }

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

}

#menu-room {}
@media(min-width: 768px) {
    #menu-room {
        display: none;
    }
}
#menu-item-1837 {
    display: none;
}
@media(min-width: 768px) {
    #menu-item-1837 {
        display: block;
    }
}

#menu-item-enjoy .dropdown-menu {}
#menu-item-enjoy .dropdown-menu li {
    margin-bottom: 10px;
    border-bottom: none;
}

@media(max-width: 767px) {
    #menu-item-enjoy .dropdown-menu li a {
        padding: 0!important;
    }
}
.dmbs-content-wrapper {
    padding-right: 20px;
    padding-left: 20px;
    margin: 0 auto;
}

@media(min-width: 768px) {
    .dmbs-content-wrapper {
        padding-right: 10px;
        padding-left: 10px;
        width: auto;
        max-width: 960px;
    }
}

.dmbs-footer {
    padding: 0 10px;
    background-color: #f4f4ef;
    background-image: url(images/common/footer_bg_01.jpg);
    background-position: center bottom -5px;
    background-size: 720px 612px;
    background-repeat: no-repeat;
    position: relative;
}

@media(min-width: 768px) {
    .dmbs-footer {
        padding: 0;
        background-size: cover;
        background-position: center bottom;
        border-top: solid 1px #ddddcf;
        position: relative;
    }
    .dmbs-footer:before {
        display: block;
        content: "";
        height: 1px;
        width: 100%;
        position: absolute;
        left: 0;
        top: 0;
        background-color: #fff;
    }


}
@media(min-width: 1200px) {
    .dmbs-footer .container {
        width: 960px;
    }
}

#footerLogo {
    width: 193px;
    padding-top: 15px;
    margin: 0 auto;
}

@media(min-width: 768px) {
    #footerLogo {
        width: 387px;
        padding-top: 0;
    }
}

#footerAddress {
    margin: 15px 0 40px 0;
    font-size: 1.2rem;
    text-align: center;
}
@media(min-width: 768px) {
    #footerAddress {
        margin-top: 0;
        margin-bottom: 30px;
        font-size: 1.8rem;
    }
}
#footerIcon {
    display: flex;
    justify-content: space-between;
    width: 260px;
    margin: 0 auto 40px auto;
}

#footerIcon li {
    width: 120px;
    height: 30px;
}
@media(min-width: 768px) {
    #footerIcon {
        width: 380px;
        margin-bottom: 60px;
    }
    #footerIcon li {
        width: 180px;
        height: 40px;
    }
}

#footerBanner1 {
    margin: 0 0 40px 0;
}
#footerBanner1>* {
    display: block;
    margin-bottom: 10px;
}
#footerBanner1 img {
    width: 100%;
    height: auto;
}
@media(min-width: 576px) {
    #footerBanner1 {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
    }
    #footerBanner1>* {
        width: 48.94%;
        margin-bottom: 20px;
    }
}
/*#footerBanner1>a:not(:last-child) {
    display: block;
    margin-bottom: 20px;
}
@media(min-width: 768px) {
    #footerBanner1 {
        position: relative;
    }

    #footerBanner1 .link1,
    #footerBanner1 .link2,
    #footerBanner1 .link3 {
        position: absolute;
        max-width: 48.94%;
        margin: 0;
    }
    #footerBanner1 .link1 {
        left: 0;
        top: 0;
    }
    #footerBanner1 .link2 {
        right: 0;
        top: 0;
    }
    #footerBanner1 .link3 {
        right: 0;
        bottom: 0;
    }
}*/


#footerBanner2 {
    margin: 0 0 40px 0;
    display: flex;
    justify-content: space-between;
}
#footerBanner2>a {
    width: 90px;
}
@media(min-width: 375px) {

    #footerBanner2>a {
        width: 105px;
    }
}
@media(min-width: 576px) {
    #footerBanner2 {
        justify-content: center;
    }
    #footerBanner2>a {
        width: 125px;
        padding: 0 10px;
    }
}


@media(min-width: 768px) {
    #footerBanner2 {
        max-width: 580px;
        margin: 0 auto 60px auto;
        justify-content: space-between;
    }
    #footerBanner2>a {
        width: 180px;
        padding: 0;
    }
}


#footerBanner3 {
    margin: 0 0 30px 0;
}
#footerBanner3 .title{
    margin: 0 -20px 20px -20px;
    font-size: 2rem;
    height: 40px;
    line-height: 40px;
    text-align: center;
    color: #ffffff;
    background-color: #b7b7ae;
}
#footerBanner3>.box{
    display: flex;
    justify-content: space-between;
}
#footerBanner3>.box>a {
    width: 130px;
}
@media(min-width: 375px) {
    #footerBanner3>.box>a {
        width: 158px;
    }

}
@media(min-width: 576px) {
    #footerBanner3>.box{
        justify-content: center;
    }
    #footerBanner3>.box>a {
        width: 178px;
        padding: 0 10px;
    }
}
@media(min-width: 768px) {
    #footerBanner3 {
        margin-bottom: 45px;
        justify-content: space-between;
    }
    #footerBanner3 .title{
        margin-right: 0;
        margin-left: 0;
    }
    #footerBanner3>.box{
        justify-content: space-between;
    }
    #footerBanner3>.box>a {
        width: 48.94%;
        padding: 0;
    }
}

#footerSitemap {
    display: none;
    font-size: 1.4rem;
    font-feature-settings : "palt";
}
#footerSitemap ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
}
#footerSitemap ul li {
    padding-left: 15px;
}
#footerSitemap a {
    color: #7d7d68;
}
@media(min-width: 768px) {
    #footerSitemap {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        margin-bottom: 50px;
    }
    #footerSitemap>div {
        width: 40%;
    }
    #footerSitemap>div>ul>li {
        margin-bottom: 14px;
        background-image: url(images/common/list_ico_01.png);
        background-size: 10px 10px;
        background-position: 0 5px;
        background-repeat: no-repeat;
    }
    #footerSitemap>div>ul>li .sub-menu {
        margin-top: 13px;
    }
    #footerSitemap>div>ul>li .sub-menu>li {
        margin-bottom: 4px;
    }
}
@media(min-width: 992px) {
    #footerSitemap>div {
        width: 25%;
    }
}

#followingBtn {
    height: 70px;
    position: relative;
}
#footerPageTopBtn {
    position: absolute;
    right: -10px;
    bottom: 0;
    z-index: 1000;
}
#footerPageTopBtn .js-inner {
    -webkit-transition: all 1s;
    -moz-transition: all 1s;
    -ms-transition: all 1s;
    -o-transition: all 1s;
    transition: all 1s;
    opacity: 0;
}
#footerPageTopBtn .fade {
    opacity: 1;
}
#footerPageTopBtn.fixed {
    position: fixed;
    right: 0;
}
#footerPageTopBtn .link {
    display: block;
    width: 50px;
    height: 50px;
}
@media(min-width: 768px) {
    #footerPageTopBtn {
        margin: 0;
        position: absolute;
        right: 0;
        bottom: 0;
    }
    #footerPageTopBtn .link {
        width: 70px;
        height: 70px;
    }
}


#footerReserveBtn,
#footerReserveBtn01 {
    width: 220px;
    height: 62px;
    position: absolute;
    left: 0;
    top: -64px;
    top: -130px;
    z-index: 1000;
}
#footerReserveBtn01 {
    top: -64px;
}



#footerReserveBtn .js-inner,
#footerReserveBtn01 .js-inner  {
    -webkit-transition: all 1s;
      -moz-transition: all 1s;
      -ms-transition: all 1s;
      -o-transition: all 1s;
      transition: all 1s;
      opacity: 0;
}
#footerReserveBtn .js-inner a,
#footerReserveBtn01 .js-inner a {
      cursor: default;
}
#footerReserveBtn .fade,
#footerReserveBtn01 .fade {
    opacity: 1;
}
#footerReserveBtn .fade a,
#footerReserveBtn01 .fade a {
    cursor: pointer;
}
#footerReserveBtn.fixed,
#footerReserveBtn01.fixed {
    position: fixed;
    top: auto;
    left: 0;
    bottom: 0;
    bottom: 66px;
}

#footerReserveBtn01.fixed {
    bottom: 0;
}

#footerReserveBtn .image,
#footerReserveBtn01 .image {
    display: block;
}
@media(min-width: 768px) {
    #footerReserveBtn,
    #footerReserveBtn01 {
        width: 280px;
        height: 80px;
        left: auto;
        right: 0;
        top: -82px;
        top: -175px;
        bottom: auto;
    }

    #footerReserveBtn01 {
        top: -82px;
    }


    #footerReserveBtn.fixed,
    #footerReserveBtn01.fixed {
        top: 80%;
        top: 71%;
        bottom: 280px;
        top: auto;
        left: auto;
    }

    #footerReserveBtn01.fixed {
        bottom: 192px;
        top: auto;
    }
}

#footerCopyright {
    margin: 0 -10px;
    padding: 20px 0;
    line-height: 1rem;
    font-size: 1rem;
    text-align: center;
    color: #a5a59c;
    border-top: solid 1px #a5a59c;
}

@media(min-width: 768px) {

    #footerCopyright {
        margin-right: 0;
        margin-left: 0;
        font-size: 1.2rem;
    }
}

/* page共通
==================================================================================================== */

#mainVisual {
    /*display: none;*/
    background-size: cover;
    background-position: center 0;
}
#mainVisual .dmbs-page-header {
    /*max-width: 740px;*/
    height: 200px;
    margin: 0 auto;
    position: relative;
    color: #fff;
    line-height: 1;
}

#mainVisual .dmbs-page-header .dmbs-page-title {
    position: absolute;
    margin: 0;
    right: 20px;
    bottom: 20px;
    font-size: 2rem;
}
#home #mainVisual .dmbs-page-header .dmbs-page-title {
    width: 82px;
}
@media(min-width: 576px) {

    #mainVisual .dmbs-page-header {
        height: 420px;
    }
    #mainVisual .dmbs-page-header .dmbs-page-title {
        right: 0;
        bottom: 50px;
        font-size: 4rem;
    }
    #home #mainVisual .dmbs-page-header .dmbs-page-title {
        width: 8.54%;
        bottom: 11.63%;
        right: 19.375%;
    }
}
@media(min-width: 992px) {
     #mainVisual .dmbs-page-header {
        max-width: 960px;
     }
     #home #mainVisual .dmbs-page-header {
        max-width: auto;
        max-width: initial;
     }
    #home #mainVisual .dmbs-page-header .dmbs-page-title {
/*        width: 17.08%;
        bottom: 11.63%;*/
    }
}
@media(min-width: 1200px) {
     #mainVisual .dmbs-page-header {
        max-width: 1170px;
     }
     #home #mainVisual .dmbs-page-header {
        max-width: auto;
        max-width: initial;
     }
    #home #mainVisual .dmbs-page-header .dmbs-page-title {
/*        width: 14.02%;
        bottom: 11.63%;*/
    }
}
#footerImage {
    margin-top: 80px;
    background-repeat: no-repeat;
    background-position: center 0;
}
#spFooterImage {
    margin-top: 80px;
}

/* home
==================================================================================================== */

.dmbs-main {
    /*color: #fff;*/
}

#home #mainVisual .dmbs-page-header {
    height: 441px;
}
@media(min-width: 576px) {

    #home #mainVisual .dmbs-page-header {
        height: auto;
        max-height: calc(100vh - 59px);
        max-width: auto;
        max-width: initial;
        overflow-y: hidden;
        position: relative;
    }
    #home #mainVisual .dmbs-page-header:before {
        content: "";
        display: block;
        padding-top: 44.79%;
    }
}
@media(min-width: 768px) {
    #home #mainVisual .dmbs-page-header {
        max-height: calc(100vh - 100px);
    }
}
/*@media(min-width: 992px) {

    #home #mainVisual .dmbs-page-header {
        height: calc(100vh - 100px);
    }
    #home #mainVisual .dmbs-page-header:before{
        padding-top: 0;
    }

}*/

/*@media(min-width: 768px) {
    #home #mainVisual .dmbs-page-header {
        height: auto;
        max-width: auto;
        max-width: initial;
        position: relative;
    }
    #home #mainVisual .dmbs-page-header:before {

        content: "";
        display: block;
        padding-top: 44.79%;
    }
}
@media(min-width: 1920px) {
    #home #mainVisual .dmbs-page-header {
        height: 860px;
    }
    #home #mainVisual .dmbs-page-header:before {
        padding-top: auto;
    }
}*/

#homeShinyu {
    min-height: 555px;
    padding: 80px 10px 0 10px;
    background-image: url(images/home/home_shinyu_bg_01.jpg);
    background-size: cover;
    background-position: center 0;
}
#homeShinyu .title {
    margin: 0 0 30px 0;
    font-size: 2.1rem;
    line-height: 1.46;
    text-align: center;
}
#homeShinyu .text {
    line-height: 1.92;
    margin-bottom: 35px;
}
#homeShinyu .link {
    text-align: center;
}
@media(min-width: 375px) {
    #homeShinyu .title {
        font-size: 2.4rem;
    }
}
@media(min-width: 768px) {
    #homeShinyu {
        min-height: 645px;
        padding-top: 100px;
    }
    #homeShinyu .title {
        font-size: 4rem;
        line-height: 1.5;
        margin-bottom: 60px;
    }
    #homeShinyu .text {
        text-align: center;
        line-height: 2;
        margin-bottom: 50px;
    }
}

#homeRoom {}
#homeRoom .list1{}
#homeRoom .list1 img {
    width: 100%;
    height: auto;
}

#homeRoom .list2{
    display: none;
}
@media(min-width: 576px) {
    #homeRoom .list1{
        display: none;
    }
    #homeRoom .list2{
        display: flex;
    }
}
#homeSpa {
    padding: 80px 10px 0 10px;
    min-height: 539px;
    background-image: url(images/home/sp_home_spa_bg_01.jpg);
    background-size: cover;
    background-position: center 0;
    color: #fff;
}
#homeSpa .title {
    width: 137px;
    height: 70px;
    margin: 0 0 40px 0;
}
#homeSpa .text1 {
    margin-bottom: 35px;
    font-size: 1.7rem;
    line-height: 1.94;
}
#homeSpa .text2 {
    font-size: 1.2rem;
    padding-left: 65px;
    margin-bottom: 40px;
    position: relative;
    line-height: 1;
}
#homeSpa .text2:before {
    content:"";
    width: 44px;
    height: 1px;
    background-color: #fff;
    position: absolute;
    left: 0;
    top: 5px;
}
@media(min-width: 375px) {
    #homeSpa .text1 {
        font-size: 1.8rem;
    }
}
@media(min-width: 768px) {
    #homeSpa {
        padding-top: 120px;
        min-height: 754px;
        background-image: url(images/home/home_spa_bg_01.jpg);
    }
    #homeSpa .title {
        width: auto;
        height: auto;
        margin-bottom: 55px;
    }
    #homeSpa .text1 {
        font-size: 2rem;
        margin-bottom: 55px;
    }
    #homeSpa .text2 {
        font-size: 1.6rem;
        padding-left: 60px;
        margin-bottom: 55px;
    }
    #homeSpa .text2:before {
        width: 30px;
        top: 7px;
    }
}

#homeCuisine {
    color: #252027;
    padding: 90px 10px 70px 10px;
}

#homeCuisine .title {
    width: 211px;
    height: 70px;
    margin: 0 0 40px 0;
}
#homeCuisine .text {
    font-size: 1.8rem;
    line-height: 1.94;
    margin: 0 0 35px 0;
}
#homeCuisine .link {
    margin: 0 0 60px 0;
}
#homeCuisine .mainPhoto {
    margin: 0 0 40px 0;
}
#homeCuisine .thumb {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
#homeCuisine .thumb>div {
    width: 31.34%;
    margin-bottom: 10px;
}
#homeCuisine .thumb img {
}
#homeCuisine .thumb img.focus {
    outline: solid 1px #b81c22;
}
@media(min-width: 992px) {
    #homeCuisine {
        min-height: 770px;
        padding: 110px 0 120px 0;
    }
    #homeCuisine .title {
        width: auto;
        height: auto;
        margin: 0 0 50px 0;
        text-align: center;
    }
    #homeCuisine .text {
        font-size: 2rem;
        margin: 0 0 50px 0;
    }
    #homeCuisine .link {
        margin-bottom: 0;
    }
    #homeCuisine .mainPhoto {
        margin: 0 0 60px 0;
    }
    #homeCuisine .thumb {}
    #homeCuisine .thumb>div{
        width: 14.89%;
        margin-bottom: 0;
    }
    #homeCuisine .thumb img {
        opacity: .4;
    }

    #homeCuisine .thumb img.focus {
        opacity: 1;
        outline: solid 1px #b81c22;
    }
}
@media(min-width: 992px) {

}

#homePlan {
    padding: 80px 20px;
}
#homePlan>.box>div {
    margin: 0 0 20px 0;
}
@media(min-width: 768px) {
    #homePlan>.box>div {
        width: 31.91%;
        margin-right: 2.135%;
        float: left;
    }
    #homePlan>.box>div:nth-child(3n) {
        margin-right: 0;
    }
    #homePlan>.box>div:nth-child(3n+1) {
        clear:left;
    }
}

#homePlan>.box2 {
    display: flex;
    justify-content: space-between;
}
#homePlan>.box2>* {
    width: 46.57%;
    margin-bottom: 20px;
}
@media(min-width: 768px) {
    #homePlan>.box2 {
        max-width: 940px;
        margin: 0 auto;

    }
    #homePlan>.box2>* {
        width: 48.94%;
    }
    #homePlan>.box3 {
        max-width: 940px;
        margin: 0 auto;

    }
}

#homeEnjoy {
    /*background-color: #efefef;*/
}
#homeEnjoy>* {
    width: 50%;
    float: left;
}
#homeEnjoy>*>img {
    width: 100%;
    height: auto;
}
#homeEnjoy>*:nth-child(odd) {
    clear:left;
}
#homeEnjoy .last {
}
@media(min-width: 576px) {
    #homeEnjoy {
        display: flex;
        justify-content: center;
    }
    #homeEnjoy>* {
        width: 25%;
        float: none;
    }
}

#homeNews {
    padding: 80px 20px 38px 20px;
    max-width: 980px;
    margin: 0 auto;
}
#homeNews .title {
    text-align: center;
    font-size: 2.4rem;
    margin: 0 0 36px 0;
}
#homeNews .link {
    margin: 0 0 40px 0;
    text-align: center;
}

#homeAward {
        padding: 0 20px 30px 20px;
        text-align: center;
}
#homeAward>* {
    margin-bottom: 20px;
    height: auto;
}
#homeAward>* img {
    margin: 0 auto;
}
#homeAward .img1{
	margin-right: 3em;
}
@media(min-width: 768px) {
    #homeAward {
        display: flex;
        justify-content: space-between;
        max-width: 980px;
        margin: 0 auto
    }

}

#homeInstagram {
    padding: 0 0 130px 0;
    margin: 0 auto;
}
#homeInstagram .box {
    padding: 0 20px;
    margin: 0 auto 30px auto;
    max-width: 980px;
}
#homeInstagram .box2 {
    margin-bottom: 30px;
}
#homeInstagram .box2 img {
    width: 150px;
    height: 150px;
}
#homeInstagram .box3 {
    max-width: 980px;
    margin: 0 auto;
    padding: 0 20px;
    display: flex;
    justify-content: center;
}
#homeInstagram .box3>* {
    padding: 0 10px;
}
#homeInstagram .title {
    margin: 0 0 30px 0;
    font-size: 2.4rem;
    text-align: center;
}
#homeInstagram .text {
    margin: 0 0 30px 0;
    font-size: 1.2rem;
    text-align: center;
}
#homeInstagram .link {
    text-align: center;
}
#homeInstagram .link a {
    font-size: 1.2rem!important;
}
#homeInstagram .link a:after {
    top:16px;
}
@media(min-width: 375px) {
    #homeInstagram {
        padding-bottom: 150px;
    }
    #homeInstagram .text {
        font-size: 1.4rem;
    }
}
@media(min-width: 576px) {

}
@media(min-width: 768px) {
    #homeInstagram .box {
        margin-bottom: 30px;
    }

    #homeInstagram .title {
        margin: 10px 3rem 0 0;
        font-size: 3rem;
        float: left;
    }
    #homeInstagram .text {
        margin: 10px 0 0 0;
        font-size: 1.6rem;
        float: left;
    }
    #homeInstagram .link {
        margin: 0;
        float: right;
    }
    #homeInstagram .box2 {
        width: 100%;
        margin-bottom: 60px;
        display: flex;
    }
    #homeInstagram .box2 img {
        width: 240px;
        height: 240px;
    }
    #homeInstagram .box3 {
        justify-content: space-between;
    }
    #homeInstagram .box3>* {
        width: 48.93%;
        padding: 0;
    }
}



#roomHeader {
    margin: 0 0 50px 0;
}
@media(min-width: 768px) {
    #roomHeader {
        margin: 0 0 60px 0;
    }
}
#roomAoitei {}



/* 上諏訪しんゆとは
==================================================================================================== */
#nihonnoheso {
    margin:  -20px -20px 0 -20px;
    background-image: url(images/shinyu/sp_shinyu_img_02.png);
    background-size: contain;
    background-repeat: no-repeat;
}
#nihonnoheso .inner {
    padding: 20px 20px 0 20px;
}
@media(min-width: 768px) {
    #nihonnoheso {
        margin: -60px -115px 0 0;
        background-image: url(images/shinyu/shinyu_img_02.png);
        background-size: auto;
        background-position: top right;
    }
    #nihonnoheso .inner {
        padding: 80px 115px 0 0;
    }
}


/* 言い伝え
==================================================================================================== */
#s-style .dmbs-main {
    position: relative;
}
#s-style .breadcrumbsWrap {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
}
@media(min-width: 768px) {
    #s-style .breadcrumbsWrap {
        padding: 0;
    }
}



/* English
==================================================================================================== */
#english #mainVisual .dmbs-page-header {
    height: 500px;
}
#english #mainVisual .dmbs-page-header .dmbs-page-title {
    width: 327px;
    margin: auto;
    right: 0;
    left: 0;
    bottom: 50px;
}


@media (min-width: 768px){
    #english #mainVisual .dmbs-page-header {
        height: 860px;
    }
    #english #mainVisual .dmbs-page-header .dmbs-page-title {
        width: auto;
        right: -10px;
        left: auto;
        margin-bottom: 100px;
    }
}
#english .dmbs-footer {
    background-image: none;
}
#english #footerReserveBtn {
    width: 260px;
}
@media (min-width: 768px){
    #english #footerReserveBtn {
        width: 327px;
    }
}

#english #homeShinyu {
    min-height: 475px;
    padding-top: 75px;
}
#english #homeShinyu .title {
    margin-bottom: 20px;
}
@media (min-width: 768px){
    #english #homeShinyu {
        min-height: 500px;
        padding-top: 80px;
    }
    #english #homeShinyu .title {
        margin-bottom: 30px;
    }
}
#englishSummary {
    margin: 0 0 70px 0;
}
#englishSummary .slick-dots li {
    margin: 0;
}
@media(min-width: 768px) {
    #englishSummary {
        display: flex;
        margin-bottom: 30px;
    }
    #englishSummary>div {
        width: 20%;
    }
}

#english #homeAward {
    justify-content: center;
    padding-bottom: 55px;
}
#english #homeAward>* {
    width: 50%;
    padding: 0 5px;
    text-align: center;
}
@media(min-width: 768px) {
    #english #homeAward {
        margin-bottom: 65px;
    }
    #english #homeAward>* {
        width: 170px;
        padding: 0;
    }
}
#guestRoom {
    padding-top: 80px;
    padding-bottom: 15px;
}
#guestRoom .lead {
    font-size: inherit;
    margin-bottom: 40px;
    line-height: 1.93;
}
@media(min-width: 768px) {
    #guestRoom {
        margin: 0 0 115px;
        padding-top: 115px;
    }
}

#infomation {
    padding-top: 50px;
}
@media(min-width: 768px) {
    #infomation {
    }
}


#onsen {
    padding-top: 80px;
    display: flex;
    flex-direction: column;
}
#onsen .box>img {
    width: 100%;
    max-width: auto;
    max-width: initial;
    height: auto;
}
#onsen .order1 {
    order:1;
}
#onsen .order2 {
    order:2;
}
#onsen .order3 {
    order:3;
}
#onsen .order4 {
    order:4;
}
#onsen .caption {
    padding: 0 20px 60px 20px;
}
#onsen .title1 {
    margin: 0 0 35px 0;
    font-size: 3rem;
    line-height: 1.33;
}
#onsen .title2 {
    margin: 38px 0 25px 0;
    font-size: 2.4rem;
    line-height: 1.46;
}
#onsen .text1 {
    font-size: 1.4rem;
    left: 1.93;
    margin: 0;
}
#onsen .text2 {
    font-size: 1.4rem;
    left: 1.93;
    margin: 0;
}
@media(min-width: 768px) {
    #onsen {
        display: block;
        padding-top: 115px;
    }
    #onsen .box {
        width: 50%;
        margin: 80px 0 0 0;
    }
    #onsen .box:first-child{
        margin-top: 0;
    }
    #onsen .box:nth-child(odd) {
        float: left;
    }
    #onsen .box:nth-child(even) {
        float: right;
    }
    #onsen .title1 {
        font-size: 5rem;
        line-height: 1.2;
        margin: 0 0 40px 0;
    }
    #onsen .title2 {
        margin: 30px 0;
        font-size: 2.6rem;
    }
    #onsen .caption {  
        padding: 0 60px 80px 60px;
    }
    #onsen .text1 {
        line-height: 1.44;
        font-size: 1.8rem;
    }
    #onsen .text2 {
        font-size: 1.6rem;
        line-height: 1.625;
    }
}


#englishCuisine {
    color: #252027;
    padding: 80px 10px 0 10px;
}

#englishCuisine .title {
    font-size: 7.6rem;
    margin: 0 0 40px 0;
}
#englishCuisine .text {
    font-size: 1.8rem;
    line-height: 1.94;
    margin: 0 0 35px 0;
}
#englishCuisine .link {
    margin: 0 0 60px 0;
}
#englishCuisine .mainPhoto {
    margin: 0 0 40px 0;
}
#englishCuisine .thumb {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
#englishCuisine .thumb>div {
    width: 31.34%;
    margin-bottom: 10px;
}
#englishCuisine .thumb img {
}
#englishCuisine .thumb img.focus {
    outline: solid 1px #b81c22;
}

#englishCuisine p {
    font-size: 1.4rem;
    line-height: 1.94;
    margin: 0 0 30px 0;
}
#englishCuisine p:last-child {
    left: 0;
}

@media(min-width: 992px) {
    #englishCuisine {
        min-height: 770px;
        padding: 110px 0 0 0;
    }
    #englishCuisine .title {
        width: auto;
        height: auto;
        margin: 90px 0 40px 0;
    }
    #englishCuisine .text {
        font-size: 2rem;
        margin: 0 0 50px 0;
    }
    #englishCuisine .link {
        margin-bottom: 0;
    }
    #englishCuisine .mainPhoto {
        margin: 0 0 60px 0;
    }
    #englishCuisine .thumb {}
    #englishCuisine .thumb>div{
        width: 14.89%;
        margin-bottom: 0;
    }
    #englishCuisine .thumb img {
        opacity: .4;
    }

    #englishCuisine .thumb img.focus {
        opacity: 1;
        outline: solid 1px #b81c22;
    }
    #englishCuisine p {
        font-size: 1.6rem;
        line-height: 1.625;
    }
}

#service {
    padding: 70px 0 0 0;
}

@media(min-width: 768px) {
    #service {
        padding-top: 100px;
    }
    #service .box {
        display: flex;
    }
    #service .box>div {
        width: 20%;
    }
}

#englishAccess {
    padding: 70px 10px 0 10px;
}
#englishAccess .box1 {
    overflow-x: scroll;
    padding: 0 0 30px 0;
    margin: 0 0 30px 0;
}

#englishAccess .box1 img {
    max-width: auto;
    max-width: initial;
}
#englishAccess .box2 {
    margin: 0 0 40px 0;
}
@media(min-width: 768px) {
    #englishAccess {
        width: 100%;
        max-width: 1190px;
        margin: 0 auto;
        padding-top: 100px;
    }
    #englishAccess .box1 {
        margin-bottom: 70px;
        padding-bottom: 0;
    }
    #englishAccess .box1 img {
        max-width: 100%;
    }
    #englishAccess .box2 {
        width: 46.75%;
        margin-bottom: 0;
        float: left;
    }
    #englishAccess .box3 {
        width: 35.98%;
        float: right;
    }
}

#policies {
    padding: 70px 0 0 0;
}

#englishSightseeing {
    padding: 70px 0 0 0;
}
#englishSightseeing .slick-dots li {
    margin: 0;
}
@media(min-width: 768px) {
    #englishSightseeing {
        padding-top: 115px;
    }
    #englishSightseeing .inner {
        max-width: 940px;
        margin: 0 auto;
    }
    #englishSightseeing .box {
        width: 31.91%;
        margin-right: 2.135%;
        float: left;
    }
    #englishSightseeing .box:nth-child(3n) {
        margin-right: 0;
    }
    #englishSightseeing .box:nth-child(3n+1) {
        clear:left;
    }
}

#qa {
    margin: 80px auto 0 auto;
}
@media(min-width: 768px) {
    #qa {
        max-width: 940px;
    }
}
/* 20190226 added */
@media only screen and (min-width: 768px) {
  .dropdown:hover .dropdown-menu {
    display: block;
  }
}

/* 2019/03/07　花火 */

.title-b_f {
    font-size: 2.4rem;
    padding: 0 0 15px 0;
    margin: 0 0 20px 0!important;
    border-bottom: solid 1px #e1e1dd;
    line-height: 1.45!important;
    position: relative;
}
.title-b_f:before {
    content: "";
    display: block;
    width: 100px;
    height: 1px;
    background-color: #854776;
    position: absolute;
    left: 0;
    bottom: -1px;
}


.box_hanabi{
	width: 100%;
}

@media(min-width: 768px) {
    .title-b_f {
        padding: 0 0 20px 0!important;
        margin-bottom: 30px!important;
        font-size: 4rem;
    }
    .title-b_f:before {
        width: 300px;
    }
    
    
    .box_hanabi{
	width: 80%;
	margin-left: auto;
	margin-right: auto;
}

    
    }
