
/*
Theme Name: Nagagusuku-jo site v20 Theme
Theme URI: http://www.nakagusuku-jo.jp
Description: Designed by ML Design
Version: 21.3
Author: ML Design
Author URI: http://www.ml-design.jp/
Tags: 
*/


@font-face {
    font-family: 'icomoon';
    src:  url('fonts/icomoon.eot?ueux8n');
    src:  url('fonts/icomoon.eot?ueux8n#iefix') format('embedded-opentype'),
        url('fonts/icomoon.ttf?ueux8n') format('truetype'),
        url('fonts/icomoon.woff?ueux8n') format('woff'),
        url('fonts/icomoon.svg?ueux8n#icomoon') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: block;
}

[class^="icon-"], [class*=" icon-"] {
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: 'icomoon' !important;
    speak: never;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;

    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.icon-times-solid:before {
    content: "\e908";
}
.icon-bars-solid:before {
    content: "\e900";
}
.icon-icon_facebook1:before {
    content: "\e904";
}
.icon-icon_tripadvisor:before {
    content: "\e90a";
}
.icon-icon_youtube:before {
    content: "\e903";
}
.icon-icon_instagram:before {
    content: "\e907";
}
.icon-home:before {
    content: "\e901";
}
.icon-location:before {
    content: "\e947";
}
.icon-clock:before {
    content: "\e94e";
}
.icon-mobile:before {
    content: "\e958";
}
.icon-stop2:before {
    content: "\ea1e";
}
.icon-arrow-up2:before {
    content: "\ea3a";
}
.icon-arrow-right2:before {
    content: "\ea3c";
}
.icon-arrow-down2:before {
    content: "\ea3e";
}
.icon-arrow-left2:before {
    content: "\ea40";
}
.icon-twitter:before {
    content: "\ea96";
}


*{
    margin: 0px;
    padding: 0px;
}
html{
    font-size: 62.5%; /*10px*/
}
body{
    font-family: 'Noto Sans JP', 'メイリオ', Meiryo, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'ＭＳ Ｐゴシック', sans-serif;
    padding-top: 0px;
    padding-right: 0;
    padding-bottom: 0px;
    padding-left: 0;
    margin: 0;
}
a:hover {
    color: #FF6600;
}
a {
    transition: 0.3s;
}

/* reset */
img {
    border-top-width: 0px;
    border-right-width: 0px;
    border-bottom-width: 0px;
    border-left-width: 0px;
    border-top-style: none;
    border-right-style: none;
    border-bottom-style: none;
    border-left-style: none;
}
a:hover img {
    filter: alpha(opacity=80);
    opacity: 0.8;
    -moz-opacity: 0.8;

    /* transform */
    -webkit-transform: translate(1px,1px);
    -moz-transform: translate(1px,1px);
    -ms-transform: translate(1px,1px);
    -o-transform: translate(1px,1px);
    transform: translate(1px,1px);
}
h1, h2, h3, h4, h5, h6 {
    margin: 0px;
    padding: 0px;
}
p, pre, em {
    margin: 0px;
    padding: 0px;
}
ul, dl, ol, li, dt, dd {
    margin: 0px;
    padding: 0px;
    list-style-type: none;
}

/* text */
.alignright {
    float: right;
}
.alignleft {
    float: left;
}
img.alignleft {
    margin-right: 8px;
    margin-bottom: 8px;
}
img.alignright {
    margin-left: 8px;
    margin-bottom: 8px;
}
.aligncenter {
    text-align: center;
}
.float_right {
    float: right;
    margin-left: 10px;
}
.float_left {
    float: left;
    margin-right: 10px;
}
.clear {
    margin: 0px;
    padding: 0px;
    clear: both;
}

.post-edit-link {
    font-size: 13px;
    font-weight: bold;
    color: #FF0000;
    display: block;
    clear: both;
    text-decoration: none;
    border: 1px dashed #CCCCCC;
    text-align: center;
    padding-top: 5px;
    padding-bottom: 5px;
    background-color: #F0F0F0;
}

/* html5 */
section, hgroup, nav, header, footer, section, article, aside {
    margin: 0px;
    padding: 0px;
    display: block;
}

/* color */
.red{
    color: #FF0000;
}
.orange {
    color: #c11a1a;
}
.blue{
    color: #0000FF;
}
.green {
    color: #006600;
}

/* comment */
.comment {
    margin-left: 35px;
    margin-top: 5px;
    margin-bottom: 9px;
}
.commentlist {
    padding-left: 20px;
}
cite.fn {
    font-style: normal;
    font-weight: bold;
    font-size: 19px;
    color: #009900;
}
.says {
    color: #333333;
    font-size: 12px;
}
h3#comments {
    color: #0099FF;
    padding-top: 35px;
    font-size: 16px;
}
.comment-meta {
    font-size: 12px;
    padding-left: 20px;
    background-color: #99CC00;
    padding-top: 2px;
    padding-bottom: 2px;
}
.comment-meta a {
    color: #FFFFFF;
    text-decoration: none;
}
.comment-body p {
    font-size: 15px;
    line-height: 26px;
    padding-left: 20px;
    padding-right: 15px;
    padding-top: 8px;
    padding-bottom: 8px;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: #CCCCCC;
}
.comment-reply-link {
    font-size: 14px;
    font-weight: bold;
}
#comment {
    width: 450px;
}
#commentform p {
    font-size: 14px;
    padding-top: 5px;
}
#respond h3 {
    color: #0099FF;
    font-size: 16px;
}
#commentform #submit {
    font-weight: bold;
    color: #006600;
    width: 150px;
    margin-top: 5px;
    margin-left: 10px;
}

/* searchform */
.searchform_area {
    width: ;
    font-size: 12px;
    padding-top: 13px;
    padding-bottom: 5px;
    color: #333333;
    padding-left: 20px;
}
#searchform {
    margin: 0px;
    padding: 0px;
}
#searchsubmit {
    font-size: 12px;
}
#s {
    font-size: 13px;
}

/* form */
.column_a {
    float: none;
    width : 100%;
    width : 100%;
    font-size: 1.5rem;
    border-top-style: solid;
    border-top-width: 1px;
    border-top-color: #CCCCCC;
    padding-top: 15px;
    padding-bottom: 0px;
}
.column_b {
    float: none;
    width : calc(70% / 1);
    width : calc(70% / 1);
    font-size: 1.5rem;
    border-top-style: none;
    padding-top: 15px;
    padding-bottom: 0px;
}
@media only screen and (min-width: 680px) and (max-width: 999px) { /* 680-999 */
    .column_a {
        float: left;
        width : calc(30% / 1 - 10px);
        width : calc(30% / 1 - 10px);
        font-size: 1.7rem;
        border-top-style: solid;
        border-top-width: 1px;
        border-top-color: #CCCCCC;
        padding-top: 15px;
        padding-bottom: 0px;
    }
    .column_b {
        float: right;
        width : calc(70% / 1);
        width : calc(70% / 1);
        font-size: 1.7rem;
        border-top-style: solid;
        border-top-width: 1px;
        border-top-color: #CCCCCC;
        padding-top: 15px;
        padding-bottom: 0px;
    }
}
@media only screen and (min-width: 1000px) and (max-width: 1400px) { /* 1000-1400 */
    .column_a {
        float: left;
        width : calc(30% / 1 - 10px);
        width : calc(30% / 1 - 10px);
        font-size: 1.8rem;
        border-top-style: solid;
        border-top-width: 1px;
        border-top-color: #CCCCCC;
        padding-top: 15px;
        padding-bottom: 0px;
    }
    .column_b {
        float: right;
        width : calc(70% / 1);
        width : calc(70% / 1);
        font-size: 1.8rem;
        border-top-style: solid;
        border-top-width: 1px;
        border-top-color: #CCCCCC;
        padding-top: 15px;
        padding-bottom: 0px;
    }
}
@media only screen and (min-width: 1400px) { /* 1400over */
    .column_a {
        float: left;
        width : calc(30% / 1 - 10px);
        width : calc(30% / 1 - 10px);
        font-size: 1.9rem;
        border-top-style: solid;
        border-top-width: 1px;
        border-top-color: #CCCCCC;
        padding-top: 15px;
        padding-bottom: 0px;
    }
    .column_b {
        float: right;
        width : calc(70% / 1);
        width : calc(70% / 1);
        font-size: 1.9rem;
        border-top-style: solid;
        border-top-width: 1px;
        border-top-color: #CCCCCC;
        padding-top: 15px;
        padding-bottom: 0px;
    }
}

.mw_wp_form {
    padding-right: 15px;
    padding-left: 15px;
}
.required_text {
    color: #FF0000;
}
.column_b textarea {
    ont-family: 'Noto Sans JP', 'メイリオ', Meiryo, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'ＭＳ Ｐゴシック', sans-serif;
    width: 98%;
    font-size: 1.7rem;
}
.column_b span.green {
    clear: both;
    display: block;
}
.column_a input,
.column_b input,
.column_b select {
    font-family: 'Noto Sans JP', 'メイリオ', Meiryo, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'ＭＳ Ｐゴシック', sans-serif;
    font-size: 1.7rem;
}
.column_c {
    padding-top: 15px;
    padding-bottom: 10px;
    text-align: center;
    clear: both;
}
.column_b small {
    font-size: 12px;
    color: #999999;
}
.contact_submit_button {
    text-align: center;
    padding-top: 15px;
    padding-bottom: 5px;
}
.column_c input,
.contact_submit_button input {
    font-family: 'Noto Sans JP', 'メイリオ', Meiryo, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'ＭＳ Ｐゴシック', sans-serif;
    font-size: 1.8rem;
    padding-top: 5px;
    padding-bottom: 5px;
    padding-right: 10px;
    padding-left: 10px;
}
.required_text {
    color: #FF0000;
    font-size: 90%;
}
.form_example {
    font-size: 90%;
    color: #999999;
}
.mwform-checkbox-field {
    background-color: #CCCCCC!important;
    margin-bottom: 8px;
    display: block;
    float: left;
    padding-top: 3px;
    padding-right: 4px;
    padding-bottom: 3px;
    padding-left: 2px;
    margin-right: 10px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}


/* wp-pagenavi */
.wp-pagenavi {
    clear: both;
    margin-top: 15px;
    margin-bottom: 15px;
    overflow: hidden;
    margin-right: 10px;
    margin-left: 10px;
}
.wp-pagenavi span,
.wp-pagenavi a {
    font-size: 1.8rem!important;
    display: block;
    float: left;
    padding-right: 8px!important;
    padding-left: 8px!important;
}
.wp-pagenavi span {
    background-color: #CCCCCC;
    color: #FFFFFF;
}
.wp-pagenavi a {
    color: #FFFFFF;
    background-color: #2689b5;
}


/* block */
#wrapper {
    width: 100%;
    transition: 0.5s;
}

#upper_block {
    margin: 0px;
    width: 100%;
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
}
#upper_block_inner {
    width: 100%;
    text-align: left;
    margin-top: 0px;
    margin-right: auto;
    margin-bottom: 0px;
    margin-left: auto;
    overflow: hidden;
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 15px;
    padding-left: 0px;
}
#middle_block {
    margin: 0px;
    width: 100%;
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
}
#middle_block_inner,
#middle_block_inner2,
#middle_block_inner3,
#middle_block_inner4 {
    text-align: left;
    width: 90vw;
    margin-right: auto;
    margin-left: auto;
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 15px;
    padding-left: 0px;
    overflow: hidden;
}
#under_block {
    margin: 0px;
    padding: 0px;
    width: 100%;
}
#under_block_inner,
#under_block_inner2 {
    text-align: left;
    width: 90vw;
    margin-top: 0px;
    margin-right: auto;
    margin-bottom: 0px;
    margin-left: auto;
    padding-top: 15px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
}
@media only screen and (min-width: 680px) and (max-width: 999px) { /* 680-999 */
    #upper_block_inner {
        width: 100%;
        padding-top: 0px;
    }
    #middle_block_inner,
    #middle_block_inner2,
    #middle_block_inner3,
    #middle_block_inner4 {
        width: 95vw;
    }
    #under_block_inner,
    #under_block_inner2 {
        width: 95vw;
    }
}
@media only screen and (min-width: 1000px) and (max-width: 1400px) { /* 1000-1400 */
    #upper_block_inner {
        width: 1000px;
        padding-top: 0px;
    }
    #middle_block_inner,
    #middle_block_inner2,
    #middle_block_inner3,
    #middle_block_inner4 {
        width: 1000px;
    }
    #under_block_inner,
    #under_block_inner2 {
        width: 1000px;
    }
}
@media only screen and (min-width: 1400px) { /* 1400over */
    #upper_block_inner {
        width: 1200px;
        padding-top: 0px;
    }
    #middle_block_inner,
    #middle_block_inner2,
    #middle_block_inner3,
    #middle_block_inner4 {
        width: 1200px;
    }
    #under_block_inner,
    #under_block_inner2 {
        width: 1200px;
    }
}


/* description */
#description {
    overflow: hidden;
    margin-right: auto;
    margin-left: auto;
    text-align: center;
    padding-top: 10px;
    padding-bottom: 10px;
    padding-right: 5px;
    padding-left: 5px;
}
#description h1 {
    font-size: 1.3rem;
    margin-right: 10px;
    font-weight: normal;
    color: #868686;
    display: inline;
}
#description h2 {
    font-size: 1.3rem;
    font-weight: normal;
    color: #868686;
    display: inline;
}


/* entry */
.entry {
    margin: 0px;
    clear: both;
    padding-top: 15px;
    padding-right: 10px;
    padding-bottom: 15px;
    padding-left: 10px;
    overflow: hidden;
}
.entry p {
    font-size: 1.5rem;
    line-height: 2.8rem;
    padding-bottom: 15px;
    padding-right: 5px;
    padding-left: 5px;
    transition: 0.6s;
}
.entry h1 {
    font-family: "ヒラギノ明朝 Pro W6", "Hiragino Mincho Pro", "Mplus 1p", "HGS明朝E", "ＭＳ Ｐ明朝", serif;
    font-size: 2.1rem;
    padding-top: 3px;
    padding-bottom: 8px;
    clear: both;
    color: #000000;
    text-align: center;
    margin-bottom: 15px;
    transition: 0.6s;
}
.entry h2 {
    font-family: "ヒラギノ明朝 Pro W6", "Hiragino Mincho Pro", "Mplus 1p", "HGS明朝E", "ＭＳ Ｐ明朝", serif;
    font-size: 2rem;
    padding-top: 8px;
    padding-bottom: 8px;
    clear: both;
    color: #000000;
    transition: 0.6s;
    text-align: center;
    border-top-style: solid;
    border-top-width: 1px;
    border-top-color: #ccc;
}
.entry h3 {
    font-size: 1.8rem;
    padding-top: 6px;
    padding-bottom: 15px;
    clear: both;
    color: #003300;
}
.entry h4 {
    font-size: 1.7rem;
    padding-top: 5px;
    padding-bottom: 15px;
    clear: both;
}
.entry h5 {
    font-size: 1.5rem;
    padding-top: 5px;
    padding-bottom: 15px;
    clear: both;
}
.entry ul {
    padding-top: 5px;
    padding-bottom: 15px;
    padding-left: 10px;
}
.entry li {
    font-size: 1.72rem;
    line-height: 3rem;
    margin-bottom: 3px;
    padding-left: 10px;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: #999999;
}
.entry ul li ul {
    padding-left: 20px;
}
.entry dl {
    padding-top: 5px;
    padding-bottom: 15px;
    padding-left: 14px;
    padding-right: 15px;
}
.entry dt {
    font-size: 2rem;
    line-height: 3rem;
    margin-bottom: 3px;
    margin-top: 5px;
    padding-left: 5px;
}
.entry dd {
    font-size: 1.8rem;
    padding-left: 35px;
    padding-bottom: 3px;
    border-bottom-width: 1px;
    border-bottom-style: dotted;
    border-bottom-color: #FFFFFF;
    padding-top: 2px;
}
.entry em {
    font-size: 120%;
    font-style: normal;
    font-weight: bolder;
    color: #3399CC;
}
.entry table {
    width: 100%;
    border-top-width: 1px;
    border-left-width: 1px;
    border-top-style: solid;
    border-left-style: solid;
    border-top-color: #CCCCCC;
    border-left-color: #CCCCCC;
}
.entry td,
.entry th {
    padding: 3px;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: #CCCCCC;
    border-right-width: 1px;
    border-right-style: solid;
    border-right-color: #CCCCCC;
    font-size: 1.5rem;
}
.entry_table_box {
    width: 100%;
    background-image: url(image/base/table_td_bg.png);
    background-repeat: repeat;
    background-position: center 0px;
    padding-bottom: 18px;
}
#td_style_a {
}
#td_style_b {
}
.entry time,
.icon_category {
    font-size: 1.6rem;
    color: #666666;
    display: block;
    padding-top: 15px;
    padding-bottom: 15px;
    padding-left: 10px;
}
@media only screen and (min-width: 680px) and (max-width: 999px) { /* 680-999 */
    .entry p {
        font-size: 1.8rem;
        line-height: 3rem;
        padding-bottom: 15px;
        padding-right: 5px;
        padding-left: 5px;
    }
    .entry h1 {
        font-size: 3.1rem;
        padding-top: 6px;
        padding-bottom: 8px;
        margin-bottom: 15px;
    }
    .entry h2 {
        font-size: 2.4rem;
        padding-top: 10px;
        padding-bottom: 8px;
        text-align: left;
    }
    .entry h3 {
        font-size: 2rem;
        padding-top: 6px;
        padding-bottom: 15px;
    }
    .entry h4 {
        font-size: 1.7rem;
        padding-top: 5px;
        padding-bottom: 15px;
    }
    .entry h5 {
        font-size: 1.5rem;
        padding-top: 5px;
        padding-bottom: 15px;
    }
    .entry ul {
        padding-top: 5px;
        padding-bottom: 15px;
        padding-left: 34px;
    }
    .entry li {
        font-size: 1.7rem;
        line-height: 3rem;
        margin-bottom: 3px;
        padding-left: 10px;
    }
    .entry ul li ul {
        padding-left: 20px;
    }
    .entry dl {
        padding-top: 5px;
        padding-bottom: 15px;
        padding-left: 34px;
        padding-right: 45px;
    }
    .entry dt {
        font-size: 1.7rem;
        line-height: 3rem;
        margin-bottom: 3px;
        margin-top: 5px;
        padding-left: 5px;
    }
    .entry dd {
        font-size: 1.7rem;
        padding-left: 35px;
        padding-bottom: 3px;
        padding-top: 2px;
    }
    .top_entry img {
        height: 300px;
        width: 300px;
    }
    .entry td,
    .entry th {
        font-size: 1.6rem;
    }
}
@media only screen and (min-width: 1000px) and (max-width: 1400px) { /* 1000-1400 */
    .entry p {
        font-size: 2rem;
        line-height: 3.4rem;
        padding-bottom: 15px;
        padding-right: 5px;
        padding-left: 5px;
    }
    .entry h1 {
        font-size: 3.5rem;
        padding-top: 6px;
        padding-bottom: 8px;
        margin-bottom: 15px;
    }
    .entry h2 {
        font-size: 2.5rem;
        padding-top: 10px;
        padding-bottom: 8px;
        text-align: left;
    }
    .entry h3 {
        font-size: 2rem;
        padding-top: 6px;
        padding-bottom: 15px;
    }
    .entry h4 {
        font-size: 1.7rem;
        padding-top: 5px;
        padding-bottom: 15px;
    }
    .entry h5 {
        font-size: 1.5rem;
        padding-top: 5px;
        padding-bottom: 15px;
    }
    .entry ul, {
        padding-top: 5px;
        padding-bottom: 15px;
        padding-left: 34px;
    }
    .entry li {
        font-size: 2rem;
        line-height: 3rem;
        margin-bottom: 3px;
        padding-left: 10px;
    }
    .entry ul li ul {
        padding-left: 20px;
    }
    .entry dl {
        padding-top: 5px;
        padding-bottom: 15px;
        padding-left: 34px;
        padding-right: 45px;
    }
    .entry dt {
        font-size: 2rem;
        line-height: 3rem;
        margin-bottom: 3px;
        margin-top: 5px;
        padding-left: 5px;
    }
    .entry dd {
        font-size: 1.8rem;
        padding-left: 35px;
        padding-bottom: 3px;
        padding-top: 2px;
    }
    .top_entry img {
        height: 320px;
        width: 320px;
    }
    .entry td,
    .entry th {
        font-size: 1.7rem;
    }
}
@media only screen and (min-width: 1400px) { /* 1400over */
    .entry p {
        font-size: 2.1rem;
        line-height: 3.4rem;
        padding-bottom: 15px;
        padding-right: 5px;
        padding-left: 5px;
    }
    .entry h1 {
        font-size: 4rem;
        padding-top: 6px;
        padding-bottom: 8px;
        margin-bottom: 15px;
    }
    .entry h2 {
        font-size: 3rem;
        padding-top: 12px;
        padding-bottom: 8px;
        text-align: left;
    }
    .entry h3 {
        font-size: 2rem;
        padding-top: 6px;
        padding-bottom: 15px;
    }
    .entry h4 {
        font-size: 1.7rem;
        padding-top: 5px;
        padding-bottom: 15px;
    }
    .entry h5 {
        font-size: 1.5rem;
        padding-top: 5px;
        padding-bottom: 15px;
    }
    .entry ul {
        padding-top: 5px;
        padding-bottom: 15px;
        padding-left: 34px;
    }
    .entry li {
        font-size: 2rem;
        line-height: 3rem;
        margin-bottom: 3px;
        padding-left: 10px;
    }
    .entry ul li ul {
        padding-left: 20px;
    }
    .entry dl {
        padding-top: 5px;
        padding-bottom: 15px;
        padding-left: 34px;
        padding-right: 45px;
    }
    .entry dt {
        font-size: 2rem;
        line-height: 3rem;
        margin-bottom: 3px;
        margin-top: 5px;
        padding-left: 5px;
    }
    .entry dd {
        font-size: 1.8rem;
        padding-left: 35px;
        padding-bottom: 3px;
        padding-top: 2px;
    }
    .top_entry img {
        height: 350px;
        width: 350px;
    }
    .entry td,
    .entry th {
        font-size: 1.8rem;
    }
}


/* logo_nav_area */
#logo_nav_area {
    width: calc(100% - 10px);
    padding-top: 10px;
    padding-bottom: 10px;
    margin-left: 5px;
    margin-right: 5px;
    overflow: hidden;
}
#logo {
    float: left;
    width: 200px;
    margin-top: 5px;
}
#logo {
    display: block;
}
#logo img {
    width: 200px;
    height: auto;
}
#modal_nav {
    float: right;
    width: calc(100% - 210px);
}
.fixed {
    position: fixed;
    top: 15px!important;
    right: 5px;
    width: 100%;
    z-index: 999;
    margin-top: 0px!important;
    padding-top: 3px!important;
    padding-bottom: 6px!important;
    background-color: rgba(255, 255, 255, 0.69);
    border-radius: 5px;
    border-color: #8e8e8e;
    border-style: solid;
    border-width: 1px;
}
.modal_button {
    width: 60px;
    height: auto;
    float: right;
    text-align: center;
    margin-top: 20px;
    margin-right: 10px;
}
.modal_button a {
    font-size: 4rem;
    line-height: 2.2rem;
    text-decoration: none;
    color: #333!important;
    display: block;
    cursor: pointer;
}
.modal_button a:hover {
    color: #f60;
}
.modal_button small {
    font-size: 1.4rem;
    display: block;
}
.modal li {
    font-size: 2rem;
}
.btn:focus, .btn:hover {
    color: #fff;
}
.hidden {
    display: none;
}
@media only screen and (min-width: 700px) and (max-width: 789px) { /* 700-789 */
    #logo_nav_area {
        width: calc(100% - 10px);
        margin-left: 5px;
        margin-right: 5px;
    }
    #logo {
        float: left;
        width: 260px;
        margin-top: 5px;
    }
    #logo img {
        width: 260px;
        height: auto;
    }
    #modal_nav {
        float: right;
        width: calc(100% - 270px);
    }
    .modal_button {
        font-size: 1.6rem;
        width: 60px;
        height: auto;
        margin-top: 20px;
        margin-right: 10px;
    }
    .modal_button a {
        font-size: 6rem;
        line-height: 2.2rem;
    }
    .modal_button small {
        font-size: 1.5rem;
    }
    .modal li {
        font-size: 2rem;
    }
}
@media only screen and (min-width: 790px) and (max-width: 999px) { /* 790-999 */
    #logo_nav_area {
        width: calc(100% - 10px);
        margin-left: 5px;
        margin-right: 5px;
    }
    #logo {
        float: left;
        width: 260px;
        margin-top: 10px;
    }
    #logo img {
        width: 260px;
        height: auto;
    }
    #modal_nav {
        float: right;
        width: calc(100% - 270px);
    }
    .modal_button {
        font-size: 1.8rem;
        width: 68px;
        height: auto;
        margin-top: 30px;
        margin-right: 10px;
    }
    .modal_button a {
        font-size: 6rem;
        line-height: 2.2rem;
    }
    .modal_button small {
        font-size: 1.5rem;
    }
    .modal li {
        font-size: 2rem;
    }
}
@media only screen and (min-width: 1000px) and (max-width: 1400px) { /* 1000-1400 */
    #logo_nav_area {
        width: 1000px;
        margin-left: auto;
        margin-right: auto;
    }
    #logo {
        float: left;
        width: 270px;
        margin-top: 10px;
    }
    #logo img {
        width: 270px;
        height: auto;
    }
    #modal_nav {
        float: right;
        width: calc(100% - 280px);
    }
    .modal_button {
        font-size: 2.0rem;
        width: 70px;
        height: auto;
        margin-top: 40px;
        margin-right: 0px;
    }
    .modal_button a {
        font-size: 6rem;
        line-height: 2.2rem;
    }
    .modal_button small {
        font-size: 1.6rem;
    }
    .modal li {
        font-size: 2rem;
    }
}
@media only screen and (min-width: 1400px) { /* 1400over */
    #logo_nav_area {
        width: 1200px;
        margin-left: auto;
        margin-right: auto;
    }
    #logo {
        float: left;
        width: 270px;
        margin-top: 10px;
    }
    #logo img {
        width: 270px;
        height: auto;
    }
    #modal_nav {
        float: right;
        width: calc(100% - 290px);
    }
    .modal_button {
        font-size: 2.1rem;
        width: 70px;
        height: auto;
        margin-top: 40px;
        margin-right: 0px;
    }
    .modal_button a {
        font-size: 6rem;
        line-height: 2.2rem;
    }
    .modal_button small {
        font-size: 1.6rem;
    }
    .modal li {
        font-size: 2rem;
    }
}


/* modal_button2 */
.modal_button2 {
    width: 70px;
    height: 70px;
    float: right;
    text-align: center;
    margin-top: 10px;
}
.modal_button2 a {
    font-size: 4.0rem;
    text-decoration: none;
    display: block;
    margin-left: 5px;
    margin-right: 5px;
    box-sizing: border-box;
    text-shadow: 2px 2px 1px #ffffff, -2px 2px 1px #ffffff, 2px -2px 1px #ffffff, -2px -2px 1px #ffffff, 2px 0px 1px #ffffff, 0px 2px 1px #ffffff, -2px 0px 1px #ffffff, 0px -2px 1px #ffffff;
    filter: drop-shadow(0px 0px 2px rgba(0,0,0,0.4));
}
.modal_button2 span {
    display: block;
    padding-top: 10px;
    padding-bottom: 10px;
}
.btn_youtube a {
    color: #DF2E2A;
    background-color: #fff;
    border-radius: 8px;
}
.btn_tripadvisor a {
    color: #333;
    background-color: #fff;
    border-radius: 8px;
}
.btn_facebook a {
    color: #3a5bb5;
    background-color: #fff;
    border-radius: 8px;
}
.btn_instagram a {
    color: #B42B91;
    background-color: #fff;
    border-radius: 8px;
}
.btn_twitter a {
    color: #fff;
    background-color: #33CCCC;
    border-radius: 8px;
}



/* history_back */
.history_back {
    clear: both;
    margin-top: 5px;
    margin-bottom: 5px;
}
.history_back a {
    font-size: 1.8rem;
    display: block;
    margin-left: auto;
    margin-right: auto;
    display: block;
    width: 200px;
    padding-top: 3px;
    padding-bottom: 3px;
    text-align: center;
    background-color: #ccc;
    color: #FFFFFF;
    text-decoration: none;
}
.history_back a:hover {
    color: #f60;
}


/* scroller */
#scroller {
    position: fixed;
    z-index: 999;
    right: 15px;
    bottom: 10px;
}
#scroller a {
    font-size: 2rem;
    text-decoration: none;
    color: #FFFFFF;
    display: block;
    padding-top: 7px;
    background-color: #33ccff;
    width: 40px;
    height: 40px;
    text-align: center;
    border-radius: 5px;
    box-sizing: border-box;
}
#scroller a:hover {
    color: #FF6600;
}


/* disp_lang_nav_area */
#disp_lang_nav_area {
    overflow: hidden;
    width: 100%;
    margin-right: auto;
    margin-left: auto;
}
#disp {
    overflow: hidden;
    float: none;
    width: calc(100% - 6px);
    margin-top: 13px;
    margin-bottom: 5px;
    text-align: center;
    margin-left: 3px;
    margin-right: 3px;
}
#disp h1,
#disp h2 {
    font-size: 1.4rem;
    font-weight: normal;
    color: #8b8b8b;
    display: inline;
    margin-right: 6px;
    margin-top: 2px;
}
@media only screen and (min-width: 700px) and (max-width: 789px) { /* 700-789 */
    #disp_lang_nav_area {
        width: 100%;
    }
    #disp {
        overflow: hidden;
        float: left;
        width: calc(100% - 325px);
        text-align: left;
    }
}
@media only screen and (min-width: 790px) and (max-width: 999px) { /* 790-999 */
    #disp_lang_nav_area {
        width: 100%;
    }
    #disp {
        float: left;
        width: calc(100% - 325px);
        text-align: left;
    }
}
@media only screen and (min-width: 1000px) and (max-width: 1400px) { /* 1000-1400 */
    #disp_lang_nav_area {
        width: 1000px;
    }
    #disp {
        float: left;
        width: calc(100% - 325px);
        text-align: left;
    }
}
@media only screen and (min-width: 1400px) { /* 1400over */
    #disp_lang_nav_area {
        width: 1200px;
    }
    #disp {
        float: left;
        width: calc(100% - 325px);
        text-align: left;
    }
}


/* lang_nav */
#lang_nav {
    float: none;
    width: 315px;
    margin-left: auto;
    margin-right: auto;
}
#lang_nav ul {
    overflow: hidden;
}
#lang_nav li {
    font-size: 1.6rem;
    margin-right: 5px;
    margin-left: 5px;
    float: left;
    width: calc(100% / 3 - 10px);
    border-bottom-style: dotted;
    border-bottom-color: #3e3e3e;
    border-bottom-width: 1px;
    text-align: center;
}
#lang_nav li a {
    color: #3e3e3e;
    display: block;
    padding-top: 2px;
    padding-bottom: 2px;
    text-decoration: none;
}
#lang_nav li a:active {
    color: #f60;
}
#lang_nav li a:hover {
    color: #f60;
}
.lang_active {
    color: #fe9f35!important;
}
#lang_nav small {
    font-size: 1.1rem;
    color: #8b8b8b;
    text-align: center;
    display: block;
    margin-top: 3px;
    margin-bottom: 3px;
}
@media only screen and (min-width: 700px) and (max-width: 789px) { /* 700-789 */
    #lang_nav {
        float: right;
        width: 315px;
    }
    #lang_nav li {
        font-size: 1.6rem;
    }
}
@media only screen and (min-width: 790px) and (max-width: 999px) { /* 790-999 */
    #lang_nav {
        float: right;
        width: 315px;
    }
    #lang_nav li {
        font-size: 1.6rem;
    }
}
@media only screen and (min-width: 1000px) and (max-width: 1400px) { /* 1000-1400 */
    #lang_nav {
        float: right;
        width: 315px;
    }
    #lang_nav li {
        font-size: 1.6rem;
    }
}
@media only screen and (min-width: 1400px) { /* 1400over */
    #lang_nav {
        float: right;
        width: 315px;
    }
    #lang_nav li {
        font-size: 1.6rem;
    }
}


/* opening_time_fee_area */
#opening_time_fee_area {
    overflow: hidden;
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    border-top-style: solid;
    border-top-width: 1px;
    border-top-color: #ccc;
    padding-top: 15px;
}
#opening_time {
    overflow: hidden;
    float: none;
    width: calc(100% - 10px);
    text-align: center;
    margin-left: 5px;
    margin-right: 5px;
}
.opening_time_title {
    float: left;
    width: 100%;
    font-size: 2.1rem;
    text-align: center;
    padding-top: 3px;
    padding-bottom: 3px;
    background-color: #3cf;
    color: #fff;
    margin-right: 15px;
}
.opening_time_detail {
    text-align: center;
    font-size: 3rem;
    line-height: 3.2rem;
    margin-left: auto;
    margin-right: auto;
    float: left;
    width: 100%;
    font-weight: bold;
}
.opening_time_detail small {
    font-size: 65%;
    display: block;
}
.opening_time_org_announce {
    clear: both;
    font-size: 1.5rem;
    color: #585858;
}
#fee_group {
    float: none;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}
.fee {
    font-size: 2rem;
    color: #fff;
    float: left;
    width: calc(100% / 3 - 10px);
    height: auto;
    text-align: center;
    margin-left: 5px;
    margin-right: 5px;
    margin-bottom: 5px;
    background-color: #3cf;
    padding-top: 10px;
    padding-bottom: 10px;
}
.fee em {
    display: block;
    font-style: normal;
}
.fee small {
    font-size: 70%;
    display: block;
}
@media only screen and (min-width: 700px) and (max-width: 789px) { /* 700-789 */
    #opening_time_fee_area {
        width: 100%;
    }
    .opening_time_title {
        float: left;
        width: 110px;
        font-size: 2.1rem;
        padding-top: 13px;
        padding-bottom: 13px;
        margin-right: 15px;
    }
    #opening_time {
        overflow: hidden;
        float: none;
        width: calc(100% - 10px);
        text-align: left;
    }
    .opening_time_detail {
        text-align: left;
        font-size: 3rem;
        line-height: 3.2rem;
        float: left;
        width: calc(100% - 110px - 15px);
    }
    #fee_group {
        float: none;
        width: 100%;
    }
    .fee {
        font-size: 2.5rem;
    }
    .fee em {
        display: inline;
    }
}
@media only screen and (min-width: 790px) and (max-width: 999px) { /* 790-999 */
    #opening_time_fee_area {
        width: 100%;
    }
    .opening_time_title {
        float: left;
        width: 110px;
        font-size: 2.1rem;
        padding-top: 13px;
        padding-bottom: 13px;
        margin-right: 15px;
    }
    #opening_time {
        float: left;
        width: calc(100% - 410px - 10px);
        text-align: left;
    }
    .opening_time_detail {
        text-align: left;
        font-size: 2.8rem;
        line-height: 2.8rem;
        float: left;
        width: calc(100% - 110px - 15px);
    }
    #fee_group {
        float: right;
        width: 400px;
    }
    .fee {
        font-size: 2rem;
    }
    .fee em {
        display: block;
    }
}
@media only screen and (min-width: 1000px) and (max-width: 1400px) { /* 1000-1400 */
    #opening_time_fee_area {
        width: 1000px;
    }
    .opening_time_title {
        float: left;
        width: 110px;
        font-size: 2.1rem;
        padding-top: 13px;
        padding-bottom: 13px;
        margin-right: 15px;
    }
    #opening_time {
        float: left;
        width: calc(100% - 610px - 10px);
        text-align: left;
    }
    .opening_time_detail {
        text-align: left;
        font-size: 3rem;
        line-height: 3.2rem;
        float: left;
        width: calc(100% - 110px - 15px);
    }
    #fee_group {
        float: right;
        width: 600px;
    }
    .fee {
        font-size: 2.5rem;
    }
    .fee em {
        display: inline;
    }
}
@media only screen and (min-width: 1400px) { /* 1400over */
    #opening_time_fee_area {
        width: 1200px;
    }
    .opening_time_title {
        float: left;
        width: 110px;
        font-size: 2.1rem;
        padding-top: 13px;
        padding-bottom: 13px;
        margin-right: 15px;
    }
    #opening_time {
        float: left;
        width: calc(100% - 710px - 10px);
        text-align: left;
    }
    .opening_time_detail {
        text-align: left;
        font-size: 3rem;
        line-height: 3.2rem;
        float: left;
        width: calc(100% - 110px - 15px);
    }
    #fee_group {
        float: right;
        width: 700px;
    }
    .fee {
        font-size: 3rem;
    }
    .fee em {
        display: inline;
    }
}


/* fee_group_en */
.fee_group_en .fee {
    font-size: 1.5rem;
    height: 120px;
}
@media only screen and (min-width: 700px) and (max-width: 789px) { /* 700-789 */
    .fee_group_en .fee {
        font-size: 1.7rem;
        height: 90px;
    }
}
@media only screen and (min-width: 790px) and (max-width: 999px) { /* 790-999 */
    .fee_group_en .fee {
        font-size: 1.6rem;
        height: 110px;
    }
}
@media only screen and (min-width: 1000px) and (max-width: 1400px) { /* 1000-1400 */
    .fee_group_en .fee {
        font-size: 1.8rem;
        height: 100px;
    }
}
@media only screen and (min-width: 1400px) { /* 1400over */
    .fee_group_en .fee {
        font-size: 2.0rem;
        height: 110px;
    }
}


/* sub_nav */
#sub_nav {
    clear: both;
}
#sub_nav ul {
    overflow: hidden;
    padding-bottom: 15px;
    padding-top: 15px;
}
#sub_nav ul li {
    float: left;
    font-size: 1.5rem;
    display: block;
    font-weight: bold;
    width: calc(100% / 2 - 10px);
    margin-right: 5px;
    margin-left: 5px;
    margin-top: 5px;
}
#sub_nav li a {
    text-decoration: none;
    display: block;
    padding-top: 10px;
    padding-bottom: 10px;
    color: #3e3e3e;
    border-bottom-style: dotted;
    border-bottom-width: 1px;
    border-bottom-color: #3e3e3e;
    text-align: center;
}
#sub_nav li a:hover {
    color: #f60;
}
.orange_bg {
    background-color: #fe9f35;
}
@media only screen and (min-width: 700px) and (max-width: 789px) { /* 700-789 */
    #sub_nav ul li {
        float: left;
        font-size: 1.8rem;
        width: calc(100% / 2 - 10px);
    }
    #sub_nav li a {
        padding-top: 3px;
        padding-bottom: 3px;
    }
}
@media only screen and (min-width: 790px) and (max-width: 999px) { /* 790-999 */
    #sub_nav ul li {
        float: left;
        font-size: 1.7rem;
        width: calc(100% / 3 - 10px);
    }
    #sub_nav li a {
        padding-top: 3px;
        padding-bottom: 3px;
    }
}
@media only screen and (min-width: 1000px) and (max-width: 1400px) { /* 1000-1400 */
    #sub_nav ul li {
        float: left;
        font-size: 1.65rem;
        width: calc(100% / 5 - 10px);
    }
    #sub_nav li a {
        padding-top: 3px;
        padding-bottom: 3px;
    }
}
@media only screen and (min-width: 1400px) { /* 1400over */
    #sub_nav ul li {
        float: left;
        font-size: 1.8rem;
        width: calc(100% / 5 - 10px);
    }
    #sub_nav li a {
        padding-top: 3px;
        padding-bottom: 3px;
    }
}


/* special_entry */
.special_entry {
    float: nine;
    width: calc(100% - 20px);
    margin-bottom: 0px;
    padding-left: 10px;
    padding-right: 10px;
}
.special_entry h1 {
    font-family: 'Noto Serif JP', "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", serif;
    font-size: 2.6rem;
    color: #FFFFFF;
    font-weight: normal;
    text-shadow:
        0px 0px 3px #000,
        0px 0px 3px #000,
        0px 0px 3px #000;
    margin-top: 15px;
    margin-bottom: 10px;
    text-align: center;
}
.special_entry p {
    font-size: 1.6rem;
    color: #FFFFFF;
    text-shadow:
        0px 0px 2px #000,
        0px 0px 2px #000,
        0px 0px 2px #000;
}
@media only screen and (min-width: 700px) and (max-width: 789px) { /* 700-789 */
    .special_entry {
        float: none;
        width: calc(100% - 20px);
        margin-bottom: 25px;
    }
    .special_entry h1 {
        font-size: 2.8rem;
        margin-top: 40px;
        margin-bottom: 0px;
        text-align: center;
    }
    .special_entry p {
        font-size: 2.0rem;
    }
}
@media only screen and (min-width: 790px) and (max-width: 999px) { /* 790-999 */
    .special_entry {
        float: left;
        width: calc(100% - 360px - 20px);
        margin-bottom: 25px;
    }
    .special_entry h1 {
        font-size: 3.0rem;
        margin-top: 40px;
        margin-bottom: 20px;
        text-align: left;
    }
    .special_entry p {
        font-size: 2.0rem;
    }
}
@media only screen and (min-width: 1000px) and (max-width: 1400px) { /* 1000-1400 */
    .special_entry {
        float: left;
        width: calc(100% - 360px - 20px);
        margin-bottom: 25px;
    }
    .special_entry h1 {
        font-size: 3.2rem;
        margin-top: 40px;
        margin-bottom: 20px;
        text-align: left;
    }
    .special_entry p {
        font-size: 2.4rem;
    }
}
@media only screen and (min-width: 1400px) { /* 1400over */
    .special_entry {
        float: left;
        width: calc(100% - 360px - 20px);
        margin-bottom: 25px;
    }
    .special_entry h1 {
        font-size: 3.4rem;
        margin-top: 40px;
        margin-bottom: 20px;
        text-align: left;
    }
    .special_entry p {
        font-size: 2.6rem;
    }
}

/* sns_nav */
#sns_nav {
    float: none;
    width: 100%;
    height: auto;
    overflow: hidden;
    display: block;
}
#sns_nav_group {
    overflow: hidden;
    width: 350px;
    margin-left: auto;
    margin-right: auto;
}
.facebook {
    width:100%;
    text-align: center;
}
.facebook iframe{
    width:340px;
    height:700px;
    margin-right: auto;
    margin-left: auto;
}
.insta {
    height: auto;
}
.awards {
    position: relative;
    width: 320px;
    margin-right: auto;
    margin-left: auto;
}
.trip_excellence {
    margin-top: 0px;
    float: left;
    width: 150px;
    height: auto;
}
.trip_ranking {
    margin-top: 15px;
    float: left;
    width: 150px;
    height: auto;
}
@media only screen and (min-width: 700px) and (max-width: 789px) { /* 700-789 */
    #sns_nav {
        float: none;
        width: 100%;
    }
}
@media only screen and (min-width: 790px) and (max-width: 999px) { /* 790-999 */
    #sns_nav {
        float: right;
        width: 350px;
    }
}
@media only screen and (min-width: 1000px) and (max-width: 1400px) { /* 1000-1400 */
    #sns_nav {
        float: right;
        width: 350px;
    }
}
@media only screen and (min-width: 1400px) { /* 1400over */
    #sns_nav {
        float: right;
        width: 350px;
    }
}


/* news_blog_area */
#news_blog_area,
#event_area {
    clear: both;
    overflow: hidden;
    background-color: rgba(255, 255, 255, 0.8);
    margin-top: 35px;
}
#view_area {
    clear: both;
    overflow: hidden;
    margin-top: 35px;
}
#blog_news_area_inner {
    height: 500px;
}
#news_blog_area h1,
#event_area h1,
#view_area h1 {
    font-family: 'Noto Serif JP', "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", serif;
    font-size: 2.4rem;
    text-align: center;
    font-weight: normal;
    margin-top: 15px;
    margin-bottom: 10px;
    margin-left: 10px;
    margin-right: 10px;
    padding-bottom: 10px;
    border-bottom-style: solid;
    border-bottom-width: 1px;
    border-bottom-color: #3e3e3e;
}
#news_blog_area h2 {
    font-size: 1.6rem;
    margin-bottom: 10px;
    background-color: #585858;
    color: #fff;
    font-weight: normal;
    text-align: center;
    padding-top: 3px;
    padding-bottom: 3px;
}
#news_area,
#blog_area {
    overflow: hidden;
    padding-left: 15px;
    padding-right: 15px;
    padding-top: 10px;
    padding-bottom: 10px;
}
.news {
    float: left;
    width: calc(100% / 1);
    height: auto;
    margin-bottom: 10px;
}
.news_image {
    width: 100px;
    text-align: center;
    height: 70px;
    float: left;
    background-color: #ccc;
    margin-right: 8px;
}
.news_image img {
    width: 100px;
    height: 70px;
}
.news_blog_title {
    font-size: 1.6rem;
    margin-right: 5px;
}
.news time {
    font-size: 1.5rem;
    color: #3e3e3e;
}
.button_detail {
    font-size: 1.7rem;
    width: 130px;
    float: right;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    margin-top: 5px;
    margin-bottom: 5px;
}
.button_detail a {
    text-decoration: none;
    display: block;
    background-color: #3cf;;
    color: #fff;
    padding-top: 3px;
    padding-bottom: 3px;
}
.button_detail a:hover {
    background-color: #7bcae4;
    color: #f60;
}
.button_center {
    float: none!important;
}
@media only screen and (min-width: 700px) and (max-width: 789px) { /* 700-789 */
    #news_blog_area h1,
    #event_area h1,
    #view_area h1 {
        font-size: 2.8rem;
        margin-top: 15px;
        margin-bottom: 10px;
    }
    #news_blog_area h2 {
        font-size: 1.7rem;
    }
    .news {
        float: left;
        width: calc(100% / 1);
        height: auto;
        margin-bottom: 10px;
    }
    .news_image {
        width: 100px;
        text-align: center;
        height: 70px;
        float: left;
        margin-right: 8px;
    }
    .news_image img {
        width: 100px;
        height: 70px;
    }
    .news_blog_title {
        font-size: 1.6rem;
    }
    .news time {
        font-size: 1.5rem;
    }
    .button_detail {
        font-size: 1.8rem;
        width: 140px;
    }
}
@media only screen and (min-width: 790px) and (max-width: 999px) { /* 790-999 */
    #news_blog_area h1,
    #event_area h1,
    #view_area h1 {
        font-size: 3.2rem;
        margin-top: 20px;
        margin-bottom: 15px;
    }
    #news_blog_area h2 {
        font-size: 1.8rem;
    }
    .news {
        float: left;
        width: calc(100% / 2);
        height: 95px;
        margin-bottom: 10px;
    }
    .news_image {
        width: 120px;
        text-align: center;
        height: 80px;
        float: left;
        margin-right: 8px;
    }
    .news_image img {
        width: 120px;
        height: 80px;
    }
    .news_blog_title {
        font-size: 1.7rem;
    }
    .news time {
        font-size: 1.5rem;
    }
    .button_detail {
        font-size: 1.9rem;
        width: 150px;
    }
}
@media only screen and (min-width: 1000px) and (max-width: 1400px) { /* 1000-1400 */
    #news_blog_area h1,
    #event_area h1,
    #view_area h1 {
        font-size: 3.4rem;
        margin-top: 25px;
        margin-bottom: 20px;
    }
    #news_blog_area h2 {
        font-size: 1.8rem;
    }
    .news {
        float: left;
        width: calc(100% / 3);
        height: 95px;
        margin-bottom: 10px;
    }
    .news_image {
        width: 120px;
        text-align: center;
        height: 80px;
        float: left;
        margin-right: 8px;
    }
    .news_image img {
        width: 120px;
        height: 80px;
    }
    .news_blog_title {
        font-size: 1.8rem;
    }
    .news time {
        font-size: 1.5rem;
    }
    .button_detail {
        font-size: 2.0rem;
        width: 155px;
    }
}
@media only screen and (min-width: 1400px) { /* 1400over */
    #news_blog_area h1,
    #event_area h1,
    #view_area h1 {
        font-size: 3.8rem;
        margin-top: 25px;
        margin-bottom: 20px;
    }
    #news_blog_area h2 {
        font-size: 2.0rem;
    }
    .news {
        float: left;
        width: calc(100% / 3);
        height: 95px;
        margin-bottom: 10px;
    }
    .news_image {
        width: 120px;
        text-align: center;
        height: 80px;
        float: left;
        margin-right: 8px;
    }
    .news_image img {
        width: 120px;
        height: 80px;
    }
    .news_blog_title {
        font-size: 1.9rem;
    }
    .news time {
        font-size: 1.5rem;
    }
    .button_detail {
        font-size: 2.3rem;
        width: 160px;
    }
}


/* chara */
.chara_set_01,
.chara_set_02,
.chara_set_03 {
    position: relative;
}
.chara_01 {
    position: absolute;
    right: 0px;
    top: 0px;
    width: 120px;
    height: auto;
    z-index: 999;
}
img.chara_img_01 {
    width: 120px;
    height: auto;
}
.chara_02 {
    position: absolute;
    left: 0px;
    top: 0px;
    width: 120px;
    height: auto;
    z-index: 999;
}
img.chara_img_02 {
    width: 120px;
    height: auto;
}
.chara_03 {
    position: absolute;
    right: 0px;
    top: 0px;
    width: 120px;
    height: auto;
    z-index: 999;
}
img.chara_img_03 {
    width: 120px;
    height: auto;
}
@media only screen and (min-width: 700px) and (max-width: 789px) { /* 700-789 */
    .chara_01 {
        right: 10px;
        top: 0px;
        width: 140px;
        height: auto;
    }
    img.chara_img_01 {
        width: 140px;
        height: auto;
    }
    .chara_02 {
        left: 10px;
        top: 0px;
        width: 140px;
        height: auto;
    }
    img.chara_img_02 {
        width: 140px;
        height: auto;
    }
    .chara_03 {
        right: 10px;
        top: 0px;
        width: 140px;
        height: auto;
    }
    img.chara_img_03 {
        width: 140px;
        height: auto;
    }
}
@media only screen and (min-width: 790px) and (max-width: 999px) { /* 790-999 */
    .chara_01 {
        right: 20px;
        top: 0px;
        width: 160px;
        height: auto;
    }
    img.chara_img_01 {
        width: 160px;
        height: auto;
    }
    .chara_02 {
        left: 20px;
        top: 0px;
        width: 160px;
        height: auto;
    }
    img.chara_img_02 {
        width: 160px;
        height: auto;
    }
    .chara_03 {
        right: 20px;
        top: 0px;
        width: 160px;
        height: auto;
    }
    img.chara_img_03 {
        width: 160px;
        height: auto;
    }
}
@media only screen and (min-width: 1000px) and (max-width: 1400px) { /* 1000-1400 */
    .chara_01 {
        right: 30px;
        top: 0px;
        width: 180px;
        height: auto;
    }
    img.chara_img_01 {
        width: 180px;
        height: auto;
    }
    .chara_02 {
        left: 30px;
        top: 0px;
        width: 180px;
        height: auto;
    }
    img.chara_img_02 {
        width: 150px;
        height: auto;
    }
    .chara_03 {
        right: 30px;
        top: 0px;
        width: 180px;
        height: auto;
    }
    img.chara_img_03 {
        width: 180px;
        height: auto;
    }
}
@media only screen and (min-width: 1400px) { /* 1400over */
    .chara_01 {
        right: 40px;
        top: 0px;
        width: 190px;
        height: auto;
    }
    img.chara_img_01 {
        width: 190px;
        height: auto;
    }
    .chara_02 {
        left: 40px;
        top: 0px;
        width: 150px;
        height: auto;
    }
    img.chara_img_02 {
        width: 150px;
        height: auto;
    }
    .chara_03 {
        right: 40px;
        top: 0px;
        width: 190px;
        height: auto;
    }
    img.chara_img_03 {
        width: 190px;
        height: auto;
    }
}


/* google_street_view */
#view_area {
    margin-top: 0px;
}
#google_street_view {
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    margin-bottom: 10px;
    padding-top: 30px;
}
#google_street_view iframe {
    width: 90%;
    height: 380px;
}
@media only screen and (min-width: 700px) and (max-width: 789px) { /* 700-789 */
    #google_street_view iframe {
        width: 80%;
        height: 460px;
    }
}
@media only screen and (min-width: 790px) and (max-width: 999px) { /* 790-999 */
    #google_street_view iframe {
        width: 80%;
        height: 480px;
    }
}
@media only screen and (min-width: 1000px) and (max-width: 1400px) { /* 1000-1400 */
    #google_street_view iframe {
        width: 80%;
        height: 500px;
    }
}
@media only screen and (min-width: 1400px) { /* 1400over */
    #google_street_view iframe {
        width: 80%;
        height: 520px;
    }
}


/* parallax */
.imageHolder,
.imageHolder2,
.imageHolder3,
.imageHolder4 {
    overflow: hidden;
    border-top-style: solid;
    border-top-width: 3px;
    border-top-color: #8e8e8e;
    border-bottom-style: solid;
    border-bottom-color: #8e8e8e;
    border-bottom-width: 3px;
}
.imageHolder img,
.imageHolder2 img,
.imageHolder3 img,
.imageHolder4 img {
    z-index: -11;
    background-size: cover;
}


/* company_area */
#company_area {
    clear: both;
    overflow: hidden;
    background-color: rgba(255, 255, 255, 0.8);
    margin-top: 5px;
    padding-left: 15px;
    padding-right: 15px;
}
#company {
    float: none;
    width: 100%;
    height: auto;
}
#company_detail {
    float: none;
    width: 100%;
    height: auto;
    padding-top: 5px;
}
#company_detail ul {
    padding-bottom: 10px;
    border-bottom-style: dotted;
    border-bottom-color: #3e3e3e;
    border-bottom-width: 1px;
}
#company_detail li {
    font-size: 1.4rem;
}
#company_detail li:before {
    content: "\025a0";
    color: #fe9f35;
}
.site_name {
    font-family: 'Noto Serif JP', "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", serif;
    font-size: 3rem;
    padding-top: 15px;
}
.site_name a {
    text-decoration: none;
    color: #333;
}
.site_name_small {
    font-size: 1.4rem;
}
.company_name {
    font-size: 1.5rem;
    margin-top: 5px;
}
.company_phones {
    font-size: 1.4rem;
    margin-top: 5px;
}
.company_adress {
    font-size: 1.4rem;
    margin-bottom: 5px;
}
@media only screen and (min-width: 700px) and (max-width: 789px) { /* 700-789 */
    #company_area {
        margin-top: 180px;
    }
    #company {
        float: left;
        width: calc(100% - 310px);
        height: auto;
    }
    #company_detail {
        float: right;
        width: 300px;
        height: auto;
        padding-top: 30px;
    }
    #company_detail li {
        font-size: 1.5rem;
    }
    .site_name {
        font-family: 'Noto Serif JP', "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", serif;
        font-size: 3.7rem;
        padding-top: 20px;
    }
    .site_name_small {
        font-size: 1.5rem;
    }
    .company_name {
        font-size: 1.8rem;
        margin-top: 10px;
    }
    .company_phones {
        font-size: 1.5rem;
        margin-top: 10px;
    }
    .company_adress {
        font-size: 1.5rem;
        margin-bottom: 10px;
    }
}
@media only screen and (min-width: 790px) and (max-width: 999px) { /* 790-999 */
    #company_area {
        margin-top: 170px;
    }
    #company {
        float: left;
        width: calc(100% - 410px);
        height: auto;
    }
    #company_detail {
        float: right;
        width: 400px;
        height: auto;
        padding-top: 30px;
    }
    #company_detail li {
        font-size: 1.6rem;
    }
    .site_name {
        font-family: 'Noto Serif JP', "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", serif;
        font-size: 3.9rem;
        padding-top: 15px;
    }
    .site_name_small {
        font-size: 1.55rem;
    }
    .company_name {
        font-size: 1.8rem;
        margin-top: 20px;
    }
    .company_phones {
        font-size: 1.6rem;
        margin-top: 15px;
    }
    .company_adress {
        font-size: 1.6rem;
        margin-bottom: 10px;
    }
}
@media only screen and (min-width: 1000px) and (max-width: 1400px) { /* 1000-1400 */
    #company_area {
        margin-top: 160px;
    }
    #company {
        float: left;
        width: calc(100% - 410px);
        height: auto;
    }
    #company_detail {
        float: right;
        width: 400px;
        height: auto;
        padding-top: 30px;
    }
    #company_detail li {
        font-size: 1.7rem;
    }
    .site_name {
        font-family: 'Noto Serif JP', "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", serif;
        font-size: 4.1rem;
        padding-top: 20px;
    }
    .site_name_small {
        font-size: 1.6rem;
    }
    .company_name {
        font-size: 1.9rem;
        margin-top: 20px;
    }
    .company_phones {
        font-size: 1.7rem;
        margin-top: 20px;
    }
    .company_adress {
        font-size: 1.7rem;
        margin-bottom: 15px;
    }
}
@media only screen and (min-width: 1400px) { /* 1400over */
    #company_area {
        margin-top: 150px;
    }
    #company {
        float: left;
        width: calc(100% - 510px);
        height: auto;
    }
    #company_detail {
        float: right;
        width: 500px;
        height: auto;
        padding-top: 30px;
    }
    #company_detail li {
        font-size: 1.8rem;
    }
    .site_name {
        font-family: 'Noto Serif JP', "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", serif;
        font-size: 4.3rem;
        padding-top: 20px;
    }
    .site_name_small {
        font-size: 1.7rem;
    }
    .company_name {
        font-size: 2rem;
        margin-top: 20px;
    }
    .company_phones {
        font-size: 1.8rem;
        margin-top: 20px;
    }
    .company_adress {
        font-size: 1.8rem;
        margin-bottom: 15px;
    }
}


/* about_character */
#about_character {
    clear: both;
    width: 300px;
    margin-left: auto;
    margin-right: auto;
    padding-top: 10px;
    padding-bottom: 10px;
    text-align: center;
}
#about_character img {
    width: 300px;
    height: auto;
}
.about_character_button {
    text-align: center;
    width: 200px;
    font-size: 1.5rem;
    margin-left: auto;
    margin-right: auto;
}
.about_character_button a {
    text-decoration: none;
    display: block;
    margin-top: 3px;
    margin-bottom: 3px;
    padding-top: 3px;
    padding-bottom: 3px;
    color: #fff;
    background-color: #3cf;
    
}
.about_character_button a:hover {
    color: #f60;
}
@media only screen and (min-width: 700px) and (max-width: 789px) { /* 700-789 */
    #about_character {
        text-align: left;
        width: 300px;
    }
    #about_character img {
        width: 300px;
        height: auto;
    }
}
@media only screen and (min-width: 790px) and (max-width: 999px) { /* 790-999 */
    #about_character {
        text-align: left;
        width: 400px;
    }
    #about_character img {
        width: 400px;
        height: auto;
    }
}
@media only screen and (min-width: 1000px) and (max-width: 1400px) { /* 1000-1400 */
    #about_character {
        text-align: left;
        width: 400px;
    }
    #about_character img {
        width: 400px;
        height: auto;
    }
}
@media only screen and (min-width: 1400px) { /* 1400over */
    #about_character {
        text-align: left;
        width: 500px; 
    }
    #about_character img {
        width: 500px;
        height: auto;
    }
}


/* under_nav */
#under_nav {
    
}
#under_nav ul {
    overflow: hidden;
}
#under_nav ul li {
    font-size: 1.5rem;
    float: left;
    width: calc(100% / 2 - 10px);
}
#under_nav li a {
    display: block;
    text-decoration: none;
    color: #3e3e3e;
    margin-left: 5px;
    margin-right: 5px;
    margin-top: 10px;
    margin-bottom: 5px;
    padding-bottom: 2px;
    border-bottom-style: dotted;
    border-bottom-width: 1px;
    border-bottom-color: #3e3e3e;
    text-align: center;
}
#under_nav li a:hover {
    color: #f60;
}
#aside {
    padding-top: 10px;
    padding-bottom: 30px;
}
#aside ul {
    overflow: hidden;
}
#aside li {
    float: left;
    width: calc(100% / 2);
    height: auto;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    margin-bottom: 5px;
}
#aside li img {
    width: 160px;
    height: auto;
}
@media only screen and (min-width: 700px) and (max-width: 789px) { /* 700-789 */
    #under_nav ul li {
        font-size: 1.7rem;
        width: calc(100% / 2 - 10px);
    }
    #aside li {
        width: calc(100% / 2);
    }
    #aside li img {
        width: 180px;
    }
}
@media only screen and (min-width: 790px) and (max-width: 999px) { /* 790-999 */
    #under_nav ul li {
        font-size: 1.7rem;
        width: calc(100% / 3 - 10px);
    }
    #aside li {
        width: calc(100% / 3);
    }
    #aside li img {
        width: 220px;
    }
}
@media only screen and (min-width: 1000px) and (max-width: 1400px) { /* 1000-1400 */
    #under_nav ul li {
        font-size: 1.8rem;
        width: calc(100% / 3 - 10px);
    }
    #aside li {
        width: calc(100% / 4);
    }
    #aside li img {
        width: 240px;
    }
}
@media only screen and (min-width: 1400px) { /* 1400over */
    #under_nav ul li {
        font-size: 1.8rem;
        width: calc(100% / 4 - 10px);
    }
    #aside li {
        width: calc(100% / 4);
    }
    #aside li img {
        width: 240px;
    }
}


/* note */
#note {
    width: calc(100% - 10px);
    overflow: hidden;
    margin-left: 5px;
    margin-right: 5px;
    margin-top: 10px;
    margin-bottom: 10px;
    padding-top: 3px;
    padding-bottom: 3px;
    text-align: center;
    border-style: dotted;
    border-width: 1px;
    border-color: #fe9f35;
    background-color: #ffe0bc;
}
#note h1 {
    font-size: 2rem;
    padding-bottom: 5px;
    color: #f00;
}
#note time {
    font-size: 1.4rem;
    color: #3e3e3e;
}
#note p {
    font-size: 1.5rem;
    margin-left: 10px;
    margin-right: 10px;
}
@media only screen and (min-width: 700px) and (max-width: 789px) { /* 700-789 */
    #note {
        width: calc(100% - 10px);
        margin-left: 5px;
        margin-right: 5px;
    }
    #note h1 {
        font-size: 2.1rem;
    }
    #note time {
        font-size: 1.4rem;
    }
    #note p {
        font-size: 1.6rem;
    }
}
@media only screen and (min-width: 790px) and (max-width: 999px) { /* 790-999 */
    #note {
        width: calc(100% - 10px);
        margin-left: 5px;
        margin-right: 5px;
    }
    #note h1 {
        font-size: 2.2rem;
    }
    #note time {
        font-size: 1.4rem;
    }
    #note p {
        font-size: 1.7rem;
    }
}
@media only screen and (min-width: 1000px) and (max-width: 1400px) { /* 1000-1400 */
    #note {
        width: 1000px;
        margin-left: auto;
        margin-right: auto;
    }
    #note h1 {
        font-size: 2.3rem;
    }
    #note time {
        font-size: 1.4rem;
    }
    #note p {
        font-size: 1.8rem;
    }
}
@media only screen and (min-width: 1400px) { /* 1400over */
    #note {
        width: 1200px;
        margin-left: auto;
        margin-right: auto;
    }
    #note h1 {
        font-size: 2.4rem;
    }
    #note time {
        font-size: 1.5rem;
    }
    #note p {
        font-size: 1.8rem;
    }
}


/* copy */
#copy {
   text-align: center;
    font-size: 1.5rem;
    padding-top: 10px;
    padding-bottom: 30px;
    color: #3e3e3e;
}


/* toppage_calender */
.toppage_calender {
    padding-left: 15px;
    padding-right: 15px;
    text-align: center;
    margin-bottom: 10px;
    padding-top: 30px;
}
/* xo-event */
/*
.xo-event-list {
overflow: hidden;
}
*/
.xo-event-list dl {
    overflow: hidden;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: #CCCCCC;
    margin-bottom: 15px;
    padding-bottom: 15px;
}

.xo-event-list dt span.thumbnail {
    min-width: 150px;
    overflow: hidden;
    float: left;
}
.xo-event-list dd {
    float: left;
    padding-left: 0px!important;
}
.xo-event-list .title {
    display: block;
    text-align: left;
    font-size: 1.8rem;
    font-weight: bold;
}
.xo-event-list .category {
    font-size: 1.5rem;
    padding-left: 3px;
    padding-right: 3px;
}
.xo-event-calendar p.holiday-title {
    float: right!important;
    margin-right: 10px!important;
    font-size: 1.4rem!important;
}
.xo-event-list dd span.date {
    display: none;
}
.xo-event-list dd span.event-date {
    font-size: 1.7rem;
    margin-right: 5px;
}
/*
.xo-event-list dt span.thumbnail img {
}
.xo-event-list dd span.category {
font-size: 1.7rem;
padding-right: 5px;
padding-left: 5px;
}
.xo-event-list dd span.title {
font-size: 2rem;
}
*/
.event_list_area {
    height: 500px;
}
.xo-month {
    height: 0px;
}
.xo-months td a {
    text-decoration: none;
}
.xo-event-calendar {
    display: none;
}
.xo-event-calendar table.xo-month .month-header > span {
    font-size: 2.3rem;
    font-weight: bold;
}
.xo-event-calendar table.xo-month > thead th {
    font-size: 1.7rem;
    background-color: #f1f1f1;
}
.xo-event-calendar table.xo-month .month-event-title {
    padding-top: 4px;
    padding-bottom: 2px;
    font-size: 1.4rem;
    white-space: normal;
}
@media only screen and (min-width: 700px) and (max-width: 789px) { /* 700-789 */
    .event_list_area {
        height: 260px;
    }
    .xo-event-list .title {
        font-size: 1.8rem;
    }
    .xo-month {
        height: 300px;
    }
    .xo-event-calendar {
        display: block;
    }
}
@media only screen and (min-width: 790px) and (max-width: 999px) { /* 790-999 */
    .event_list_area {
        height: 260px;
    }
    .xo-event-list .title {
        font-size: 1.8rem;
    }
    .xo-month {
        height: 300px;
    }
    .xo-event-calendar {
        display: block;
    }
}
@media only screen and (min-width: 1000px) and (max-width: 1400px) { /* 1000-1400 */
    .event_list_area {
        height: 260px;
    }
    .xo-event-list .title {
        font-size: 1.8rem;
    }
    .xo-month {
        height: 300px;
    }
    .xo-event-calendar {
        display: block;
    }
}
@media only screen and (min-width: 1400px) { /* 1400over */
    .event_list_area {
        height: 260px;
    }
    .xo-event-list .title {
        font-size: 2.1rem;
    }
    .xo-month {
        height: 300px;
    }
    .xo-event-calendar {
        display: block;
    }
}


/* single xo-event */
.eo-event-date {
    font-size: 1.5rem;
}
.eo-event-category {
    font-size: 1.5rem;
}


/* faq_area */
#faq_area {
    clear: both;
    margin-left: 10px;
    margin-right: 10px;
    padding-top: 5px;
    width: calc(100% - 20px);
}
.faq {
    margin-bottom: 10px;
    padding-bottom: 5px;
    border-bottom-style: dotted;
    border-bottom-width: 1px;
    border-bottom-color: #3e3e3e;
}
.faq h2 {
    font-size: 1.8rem;
    padding-bottom: 10px;
}
.faq h2:before {
    font-size: 90%;
    content: "Q";
    float: left;
    display: block;
    padding-left: 6px;
    padding-right: 6px;
    margin-right: 10px;
    background-color: #fe9f35;
    color: #FFFFFF;
}
.faq p {
    font-size: 1.5rem;
    padding-bottom: 10px;
}
@media only screen and (min-width: 700px) and (max-width: 789px) { /* 700-789 */
    .faq h2 {
        font-size: 1.8rem;
        padding-bottom: 12px;
    }
    .faq p {
        font-size: 1.6rem;
        padding-bottom: 12px;
    }
}
@media only screen and (min-width: 790px) and (max-width: 999px) { /* 790-999 */
    .faq h2 {
        font-size: 2.1rem;
        padding-bottom: 14px;
    }
    .faq p {
        font-size: 1.7rem;
        padding-bottom: 14px;
    }
}
@media only screen and (min-width: 1000px) and (max-width: 1400px) { /* 1000-1400 */
    .faq h2 {
        font-size: 2.3rem;
        padding-bottom: 15px;
    }
    .faq p {
        font-size: 1.8rem;
        padding-bottom: 15px;
    }
}
@media only screen and (min-width: 1400px) { /* 1400over */
    .faq h2 {
        font-size: 2.5rem;
        padding-bottom: 16px;
    }
    .faq p {
        font-size: 1.9rem;
        padding-bottom: 16px;
    }
}

.p_news {
    font-size: 1.7rem;
    font-weight: bold;
    
}
.p_news a {
    text-decoration: none;
    color: #FFF;
    text-align: center;
    display: block;
    padding-top: 10px;
    padding-bottom: 10px;
    padding-left: 15px;
    padding-right: 15px;
    margin-top: 6px;
    background-color: #f60;
}

.hide {
    display: none;
}