@charset 'UTF-8';
/*
Theme Name:Rise2.6
Theme URI:
Description:
Author:Works Yui
Author URI:
Version:2.6
*/
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
address,
big,
em,
img,
q,
s,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
footer,
header,
hgroup,
menu,
nav,
output,
section,
summary,
time,
mark,
audio,
video
{
    font: inherit;
    font-size: 100%;

    margin: 0;
    padding: 0;

    vertical-align: baseline;

    border: 0;
}

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section
{
    display: block;
}

body
{
    line-height: 1;
}

ol,
ul
{
    list-style: none;
}

blockquote,
q
{
    quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after
{
    content: '';
    content: none;
}

table
{
    border-spacing: 0;
    border-collapse: collapse;
}

/* Slider */
/* Icons */
@font-face
{
    font-family: 'slick';
    font-weight: normal;
    font-style: normal;

    src: url('./fonts/slick.eot');
    src: url('./fonts/slick.eot?#iefix') format('embedded-opentype'), url('./fonts/slick.woff') format('woff'), url('./fonts/slick.ttf') format('truetype'), url('./fonts/slick.svg#slick') format('svg');
}
/* Arrows */
.slick-prev,
.slick-next
{
    font-size: 0;
    line-height: 0;

    position: absolute;
    top: 50%;

    display: block;

    width: 20px;
    height: 20px;
    padding: 0;

    cursor: pointer;
    -webkit-transform: translate(0, -50%);
            transform: translate(0, -50%);

    color: transparent;
    border: none;
    outline: none;
    background: transparent;
}

.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus
{
    color: transparent;
    outline: none;
    background: transparent;
}

.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before
{
    opacity: 1;
}

.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before
{
    opacity: .25;
}

.slick-prev:before,
.slick-next:before
{
    font-family: 'slick';
    font-size: 20px;
    line-height: 1;

    opacity: .75;
    color: white;

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.slick-prev
{
    left: -25px;
}

[dir=rtl] .slick-prev
{
    right: -25px;
    left: auto;
}

.slick-prev:before
{
    content: '←';
}

[dir=rtl] .slick-prev:before
{
    content: '→';
}

.slick-next
{
    right: -25px;
}

[dir=rtl] .slick-next
{
    right: auto;
    left: -25px;
}

.slick-next:before
{
    content: '→';
}

[dir=rtl] .slick-next:before
{
    content: '←';
}

/* Dots */
.slick-dotted.slick-slider
{
    margin-bottom: 30px;
}

.slick-dots
{
    position: absolute;
    bottom: -25px;

    display: block;

    width: 100%;
    margin: 0;
    padding: 0;

    list-style: none;

    text-align: center;
}

.slick-dots li
{
    position: relative;

    display: inline-block;

    width: 20px;
    height: 20px;
    margin: 0 5px;
    padding: 0;

    cursor: pointer;
}

.slick-dots li button
{
    font-size: 0;
    line-height: 0;

    display: block;

    width: 20px;
    height: 20px;
    padding: 5px;

    cursor: pointer;

    color: transparent;
    border: 0;
    outline: none;
    background: transparent;
}

.slick-dots li button:hover,
.slick-dots li button:focus
{
    outline: none;
}

.slick-dots li button:hover:before,
.slick-dots li button:focus:before
{
    opacity: 1;
}

.slick-dots li button:before
{
    font-family: 'slick';
    font-size: 6px;
    line-height: 20px;

    position: absolute;
    top: 0;
    left: 0;

    width: 20px;
    height: 20px;

    content: '•';
    text-align: center;

    opacity: .25;
    color: black;

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.slick-dots li.slick-active button:before
{
    opacity: .75;
    color: black;
}

/* Slider */
.slick-slider
{
    position: relative;

    display: block;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;

    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;

    -webkit-touch-callout: none;
     -khtml-user-select: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list
{
    position: relative;

    display: block;
    overflow: hidden;

    margin: 0;
    padding: 0;
}

.slick-list:focus
{
    outline: none;
}

.slick-list.dragging
{
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list
{
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}

.slick-track
{
    /* position: relative; */
    /* top: 0; */
    /* left: 0; */
    display: block;
    /* margin-left: auto; */
    /* margin-right: auto; */
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 100%;
}

.slick-track:before,
.slick-track:after
{
    display: table;

    content: '';
}

.slick-track:after
{
    clear: both;
}

.slick-loading .slick-track
{
    visibility: hidden;
}

.slick-slide
{
    /* display: none; */
    float: left;

    height: 100%;
    min-height: 1px;
}

[dir=rtl] .slick-slide
{
    float: right;
}

.slick-slide img
{
    display: block;
}

.slick-slide.slick-loading img
{
    display: none;
}

.slick-slide.dragging img
{
    pointer-events: none;
}

.slick-initialized .slick-slide
{
    display: block;
    /* width: 99px!important; */

    margin: 0 .1em;
}

.slick-loading .slick-slide
{
    visibility: hidden;
}

.slick-vertical .slick-slide
{
    display: block;

    height: auto;

    border: 1px solid transparent;
}

.slick-arrow.slick-hidden
{
    display: none;
}

@-webkit-keyframes popup
{
    0%
    {
        color: #fff;
        background-position: left center;
    }
    50%
    {
        bottom: .5em;

        color: #f8e804;
        background-position: right center;
    }
    100%
    {
        color: #fff;
        background-position: left center;
    }
}

@keyframes popup
{
    0%
    {
        color: #fff;
        background-position: left center;
    }
    50%
    {
        bottom: .5em;

        color: #f8e804;
        background-position: right center;
    }
    100%
    {
        color: #fff;
        background-position: left center;
    }
}
@-webkit-keyframes heartbeat
{
    0%
    {
        -webkit-transform: scale(1);
                transform: scale(1);
    }
    20%
    {
        -webkit-transform: scale(.85);
                transform: scale(.85);
    }
    70%
    {
        -webkit-transform: scale(1.01);
                transform: scale(1.01);
    }
    100%
    {
        -webkit-transform: scale(1);
                transform: scale(1);
    }
}
@keyframes heartbeat
{
    0%
    {
        -webkit-transform: scale(1);
                transform: scale(1);
    }
    20%
    {
        -webkit-transform: scale(.85);
                transform: scale(.85);
    }
    70%
    {
        -webkit-transform: scale(1.01);
                transform: scale(1.01);
    }
    100%
    {
        -webkit-transform: scale(1);
                transform: scale(1);
    }
}
.button1::before
{
    position: absolute;
    z-index: -1;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    content: '';
    -webkit-transform: scale(0, 1);
            transform: scale(0, 1);

    background: #333;
    background: rgba(165, 165, 165, .1);
}

.button1:hover
{
    -webkit-animation: hover .15s forwards;
            animation: hover .15s forwards;
}

.button1:hover::before
{
    -webkit-animation: hover-in .15s forwards alternate, hover-out .15s .15s forwards alternate;
            animation: hover-in .15s forwards alternate, hover-out .15s .15s forwards alternate;
}

@-webkit-keyframes hover
{
}

@keyframes hover
{
}
@-webkit-keyframes hover-in
{
    0%
    {
        -webkit-transform: scale(0, 1);
                transform: scale(0, 1);
        -webkit-transform-origin: left top;
                transform-origin: left top;
    }
    100%
    {
        -webkit-transform: scale(1, 1);
                transform: scale(1, 1);
        -webkit-transform-origin: left top;
                transform-origin: left top;
    }
}
@keyframes hover-in
{
    0%
    {
        -webkit-transform: scale(0, 1);
                transform: scale(0, 1);
        -webkit-transform-origin: left top;
                transform-origin: left top;
    }
    100%
    {
        -webkit-transform: scale(1, 1);
                transform: scale(1, 1);
        -webkit-transform-origin: left top;
                transform-origin: left top;
    }
}
@-webkit-keyframes hover-out
{
    0%
    {
        -webkit-transform: scale(1, 1);
                transform: scale(1, 1);
        -webkit-transform-origin: right top;
                transform-origin: right top;
    }
    100%
    {
        -webkit-transform: scale(0, 1);
                transform: scale(0, 1);
        -webkit-transform-origin: right top;
                transform-origin: right top;
    }
}
@keyframes hover-out
{
    0%
    {
        -webkit-transform: scale(1, 1);
                transform: scale(1, 1);
        -webkit-transform-origin: right top;
                transform-origin: right top;
    }
    100%
    {
        -webkit-transform: scale(0, 1);
                transform: scale(0, 1);
        -webkit-transform-origin: right top;
                transform-origin: right top;
    }
}
.underline
{
    position: relative;

    display: inline-block;

    text-decoration: none;
}
.underline::after
{
    position: absolute;
    bottom: -2.8px;
    left: 0;

    width: 100%;
    height: 1.4px;

    content: '';
    -webkit-transition: -webkit-transform .3s;
            transition: -webkit-transform .3s;
            transition:         transform .3s;
            transition:         transform .3s, -webkit-transform .3s;
    -webkit-transform: scale(0, 1);
            transform: scale(0, 1);
    -webkit-transform-origin: right top;
            transform-origin: right top;

    background: #fff;
}
.underline:hover::after
{
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
    -webkit-transform-origin: left top;
            transform-origin: left top;
}

.subtitle_grad
{
    /* アニメーション指定 */
    -webkit-animation: subtitle_grad 4s linear infinite;
            animation: subtitle_grad 4s linear infinite;
    /* フォントサイズなどを任意で指定する */
    text-transform: uppercase;
    /* 背景グラデーションを指定・幅を 200% にしておく */

    background: -webkit-gradient(linear, left top, right top, from(#fff), color-stop(20%, #cdf), color-stop(40%, #80bfff), color-stop(60%, #e6eeff), color-stop(80%, #fff)) 0 center/200% auto;
    background: linear-gradient(to right, #fff 0%, #cdf 20%, #80bfff 40%, #e6eeff 60%, #fff 80%) 0 center/200% auto;
    -webkit-background-clip: text;
    /* 背景画像を文字でマスクする */
            background-clip: text;
    /* 文字色を透明にできればよく color: transparent でも color: rgba(0, 0, 0, 0) でも可 */

            text-fill-color: transparent;
    -webkit-text-fill-color: transparent;
}

/* 背景の横位置をズラす */
@-webkit-keyframes subtitle_grad
{
    to
    {
        background-position-x: 200%;
    }
}
@keyframes subtitle_grad
{
    to
    {
        background-position-x: 200%;
    }
}
@font-face
{
    font-family: 'Anton';
    font-style: normal;

    src: url('fonts/Anton-Regular.ttf') format('truetype');
    font-display: swap;
}
*
{
    min-width: 0;
    min-height: 0;
}

html
{
    font-size: 16px;

    background: #fff;
}

body
{
    font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.8;
    line-height: 1.616;

    overflow-x: hidden;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 100%;
    margin: 0;

    letter-spacing: .05em;

    color: #173946;
    background: #fff;

    -webkit-font-feature-settings: 'palt' 1;
            font-feature-settings: 'palt' 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
body a
{
    cursor: pointer;
    -webkit-transition: .3s;
            transition: .3s;
    text-decoration: none;

    color: #173946;
}
body a:hover
{
    text-decoration: none;

    color: #173946;
}

img
{
    max-width: 100%; /*for responsive*/
    height: auto; /*for responsive*/

    vertical-align: bottom;

    border: none;
}

p
{
    margin: 0;
}

button:focus
{
    outline: 0;
}

ul
{
    padding: 0;

    list-style-type: none;
}

@font-face
{
    font-family: 'FontAwesome';
    font-weight: normal;
    font-style: normal;

    src: url('webfonts/fontawesome-webfont.eot');
    src: url('webfonts/fontawesome-webfont.eot') format('embedded-opentype'), url('webfonts/fontawesome-webfont.woff2') format('woff2'), url('webfonts/fontawesome-webfont.woff') format('woff'), url('webfonts/fontawesome-webfont.ttf') format('truetype'), url('webfonts/fontawesome-webfont.svg?v=4.4.0#fontawesomeregular') format('svg');
    font-display: swap;
}
.pc
{
    display: block !important;
}
@media only screen and (max-width: 767px)
{
    .pc
    {
        display: none !important;
    }
}

.sp
{
    display: none !important;
}
@media only screen and (max-width: 767px)
{
    .sp
    {
        display: block !important;
    }
}

.f_left
{
    float: left;
}

.f_right
{
    float: right;
}

.float_n
{
    float: none;
}

.f_left_pc
{
    float: left;
}
@media only screen and (max-width: 767px)
{
    .f_left_pc
    {
        float: none;
    }
}

.f_right_pc
{
    float: right;
}
@media only screen and (max-width: 767px)
{
    .f_right_pc
    {
        float: none;
    }
}

.sp_block
{
    display: none;
}
@media only screen and (max-width: 767px)
{
    .sp_block
    {
        display: block;
    }
}

.al_right
{
    text-align: right;
}

.al_center
{
    text-align: center;
}

.al_left
{
    text-align: left;
}

.clear
{
    clear: both;
}

.bold
{
    font-weight: bold;
}

.none
{
    display: none;
}

@media only screen and (max-width: 767px)
{
    .sp_n
    {
        display: none !important;
    }
}

@media only screen and (max-width: 767px)
{
    .sp_d
    {
        display: block !important;
    }
}

.clearfix::after
{
    display: block;
    clear: both;

    content: '';
}

@media only screen and (max-width: 767px)
{
    .rsp
    {
        width: 100%;
    }
}
/*/////////////////////////////////////
/all
/////////////////////////////////////*/
@media only screen and (max-width: 767px)
{
    body
    {
        font-size: 13px;

        height: 100%;
    }
}
body ::-moz-selection
{
    background: #2fc3b9;
}
body ::selection
{
    background: #2fc3b9;
}

.pace-running .wrap,
.pace-running header
{
    display: none;

    -webkit-transition: all .3s ease-in-out;
            transition: all .3s ease-in-out;
}

.lazyestload
{
    width: 100%;

    -webkit-filter: blur(8px);
            filter: blur(8px);
}

img
{
    -webkit-transition: -webkit-filter .3s;
            transition: -webkit-filter .3s;
            transition:         filter .3s;
            transition:         filter .3s, -webkit-filter .3s;
}

.wrap
{
    position: relative;

    padding-top: 86px;
}
@media only screen and (max-width: 767px)
{
    .wrap
    {
        padding-top: 3.6em;
        padding-top: 14vw;
    }
}

@media only screen and (max-width: 767px)
{
    .wrap.home
    {
        padding-top: 0;
    }
}

#contents
{
    position: relative;
}

.inner
{
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
}
@media only screen and (max-width: 1040px)
{
    .inner
    {
        padding: 0 1.616em;
    }
}

.big_inner
{
    overflow: hidden;

    width: 100%;
    margin: 0 auto;
}

.sub_contents .sub_wrap
{
    position: relative;

    padding: 1em 0 0;
}

.other_contents
{
    padding-bottom: 5em;
}
.other_contents i.fas
{
    margin-right: .2em;
}

.breadcrumbs
{
    font-size: 12px;

    position: relative;
}
@media only screen and (max-width: 767px)
{
    .breadcrumbs
    {
        font-size: 10px;
    }
}

.fbc-page .fbc-wrap .fbc-items li a i
{
    margin-right: 0;
}

.fbc-page .fbc-wrap .fbc-items li:first-child
{
    padding-right: 0;
    padding-left: 0;

    border-radius: 0;
}

.fbc-page .fbc-wrap .fbc-items li
{
    line-height: normal;

    margin: 0;
    padding: 0;
}

.fbc-page .fbc-wrap .fbc-items li ~ li
{
    margin-right: 4px;
    margin-left: 4px;
}

.fbc-page .fbc-wrap .fbc-items li:last-child
{
    padding-right: 0;

    border-radius: 0;
}

@media only screen and (max-width: 767px)
{
    .fbc-page .fbc-wrap .fbc-items li
    {
        font-size: 10px;
    }
}

@media only screen and (max-width: 767px)
{
    .fbc-page .fbc-wrap .fbc-items li.active span,
    .fbc-page .fbc-wrap .fbc-items li .fbc-end-text
    {
        font-size: 10px;
    }
}

@media only screen and (max-width: 767px)
{
    .fbc-page .fbc-wrap .fbc-items
    {
        padding: 0 0;
    }
}

.pad1
{
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding-right: 1em;
    padding-left: 1em;
}

.c1
{
    width: 100%;
    margin: 0 auto 2.5em;
}
@media only screen and (max-width: 1040px)
{
    .c1
    {
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        padding-right: 1em;
        padding-left: 1em;
    }
}
.c1 p
{
    margin-bottom: 1em;
}
@media only screen and (max-width: 767px)
{
    .c1 iframe
    {
        width: 100%;
        height: 300px;
    }
}

.c2
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 100%;
    margin: 0 auto 2.5em;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
@media only screen and (max-width: 1040px)
{
    .c2
    {
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        margin-bottom: 1.5em;
        padding-right: 1em;
        padding-left: 1em;
    }
}
@media only screen and (max-width: 767px)
{
    .c2
    {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    }
}
.c2 p
{
    margin-bottom: 1em;
}
.c2 .txt
{
    width: 48%;
}
@media only screen and (max-width: 767px)
{
    .c2 .txt
    {
        width: 100%;

        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
    }
}
.c2 .img
{
    width: 48%;
}
@media only screen and (max-width: 767px)
{
    .c2 .img
    {
        width: 100%;
        margin-bottom: .5em;

        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
    }
}
.c2 .img .caption
{
    font-size: 12px;
    font-size: .75rem;

    padding: .1em .7em;

    color: #fff;
    background: #173946;
}
@media only screen and (max-width: 767px)
{
    .c2 .img .caption
    {
        font-size: 10px;
    }
}

.op1
{
    opacity: 1 !important;
}

.w30
{
    width: 28% !important;
}
@media only screen and (max-width: 767px)
{
    .w30
    {
        width: 100% !important;
    }
}

.w70
{
    width: 68% !important;
}
@media only screen and (max-width: 767px)
{
    .w70
    {
        width: 100% !important;
    }
}

.sprites
{
    overflow: hidden;

    white-space: nowrap;
    text-indent: 110%;
}

#breadcrumb
{
    font-size: 13px;
    font-size: .8125rem;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
@media only screen and (max-width: 1040px)
{
    #breadcrumb
    {
        font-size: 1.7vw;

        padding-top: 10vw;
    }
}

i.m-arrow
{
    position: relative;

    margin: 0 0 0 40px;
}
@media only screen and (max-width: 767px)
{
    i.m-arrow
    {
        margin: 0 0 0 35px;
    }
}
i.m-arrow:before
{
    position: absolute;
    right: 0;
    bottom: 30%;

    width: 27px;
    height: 3px;
    margin: auto;

    content: '';
    -webkit-transition: all .1s linear;
            transition: all .1s linear;

    background: #f7058e;
}
@media only screen and (max-width: 767px)
{
    i.m-arrow:before
    {
        height: 2px;
    }
}
i.m-arrow:after
{
    position: absolute;
    right: 0;
    bottom: 53%;

    width: 13px;
    height: 1px;

    content: '';
    -webkit-transition: all .1s linear;
            transition: all .1s linear;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);

    border-top: 3px solid #f7058e;
}
@media only screen and (max-width: 767px)
{
    i.m-arrow:after
    {
        bottom: 50%;

        width: 10px;
        height: 0;

        border-top: 2px solid #f7058e;
    }
}

a:hover > i.m-arrow:before
{
    right: -7px;

    width: 33px;
}
a:hover > i.m-arrow:after
{
    right: -7px;
}

.more-arrow_wrap
{
    text-align: right;
}
.more-arrow_wrap .more-arrow
{
    display: inline;

    color: #f7058e;
}

.more_button
{
    position: relative;

    margin-top: 2em;
    margin-bottom: 5em;

    text-align: center;
}
.more_button a
{
    font-size: 26px;
    font-size: 1.625rem;
    font-weight: 700;

    display: inline-block;

    padding: .2em 2em;

    color: #fff;
    border-radius: 100px;
    background: #0c7fc6;
}
.more_button a:hover
{
    color: #f8e804;
}
@media only screen and (max-width: 767px)
{
    .more_button a
    {
        font-size: 5vw;
    }
}
.more_button .hvr-bubble-float-bottom:before
{
    border-color: #0c7fc6 transparent transparent transparent;
}

.more_button.right
{
    text-align: right;
}
@media only screen and (max-width: 767px)
{
    .more_button.right
    {
        margin-right: 1em;
    }
}

.more_button2
{
    position: relative;

    margin-top: 5em;
    margin-bottom: 4em;

    text-align: center;
}
@media only screen and (max-width: 767px)
{
    .more_button2
    {
        margin-top: 1em;
        margin-bottom: 3em;
    }
}
.more_button2 a
{
    font-size: 26px;
    font-size: 1.625rem;
    font-weight: 700;

    display: inline-block;

    padding: .7em 2em;

    color: #fff;
    border-radius: 100px;
    background: #f7058e;
    background: -webkit-gradient(linear, left top, right top, from(#f7058e), to(#f70515));
    background: linear-gradient(to right, #f7058e 0%, #f70515 100%);
    background: linear-gradient(45deg, #f7058e 0, #f50 25%, #f8e804 50%, #f50 75%, #f7058e 100%);
    background-size: 200% 100%;

    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="$start-color", endColorstr="$end-color",GradientType=1 );
}
.more_button2 a:hover
{
    color: #fff;
    background-position: right center;
}
@media only screen and (max-width: 767px)
{
    .more_button2 a
    {
        font-size: 4.5vw;

        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        width: 90%;
        padding: .3em 1em;
    }
}
.more_button2 a i:before
{
    background: #fff;
}
.more_button2 a i:after
{
    border-top: 3px solid #fff;
}
@media only screen and (max-width: 767px)
{
    .more_button2 a i:after
    {
        border-top: 2px solid #fff;
    }
}

.more_button.search a
{
    font-size: 18px;
    font-size: 1.125rem;

    position: relative;

    padding: .5em 2em;
    padding-left: 4em;

    background: #eb6502;
}
@media only screen and (max-width: 767px)
{
    .more_button.search a
    {
        font-size: 3.5vw;

        padding-left: 3em;
    }
}
.more_button.search a i:before
{
    background: #fff;
}
.more_button.search a i:after
{
    border-top: 3px solid #fff;
}
@media only screen and (max-width: 767px)
{
    .more_button.search a i:after
    {
        border-top: 2px solid #fff;
    }
}
.more_button.search a:before
{
    position: absolute;
    top: 8px;
    left: 25px;

    display: block;

    width: 32px;
    height: 32px;

    content: '';

    background: url(img/s_common.svg) no-repeat;
    background-position: -158px -57px;
    background-size: 1163px;
}
@media only screen and (max-width: 767px)
{
    .more_button.search a:before
    {
        -webkit-transform: scale(.6) translate(-80%, -35%);
                transform: scale(.6) translate(-80%, -35%);
    }
}
.more_button.search a:hover
{
    color: #fff;
}

.more_button3
{
    font-size: 26px;
    font-size: 1.625rem;
    font-weight: 900;

    position: relative;

    display: block;

    margin: .8em 1.6em 0;
    padding: .4em 2em;

    -webkit-transition: .3s;
            transition: .3s;
    text-align: center;

    color: #fff;
    background: linear-gradient(45deg, #26a8e9 0%, #4da6e6 25%, #0bd8ef 50%, #4da6e6 75%, #26a8e9 100%);
    background-size: 200% 100%;
}
@media only screen and (max-width: 767px)
{
    .more_button3
    {
        font-size: 4vw;

        margin-right: 0;
        margin-left: 0;
    }
}
.more_button4
{
    position: relative;

    margin-top: 5em;
    margin-bottom: 4em;

    text-align: center;
}
@media only screen and (max-width: 767px)
{
    .more_button4
    {
        margin-top: 1em;
        margin-bottom: 3em;
    }
}
.more_button4 a
{
    font-size: 26px;
    font-size: 1.625rem;
    font-weight: 700;

    display: inline-block;

    padding: .4em 2em;

    color: #fff;
    border-radius: 100px;
    background: #f7058e;
    background: -webkit-gradient(linear, left top, right top, from(#f7058e), to(#f70515));
    background: linear-gradient(to right, #f7058e 0%, #f70515 100%);
    background: linear-gradient(45deg, #26a8e9 0%, #4da6e6 25%, #0bd8ef 50%, #4da6e6 75%, #26a8e9 100%);
    background-size: 200% 100%;

    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="$start-color", endColorstr="$end-color",GradientType=1 );
}
.more_button4 a:hover
{
    color: #fff;
    background-position: right center;
}
@media only screen and (max-width: 767px)
{
    .more_button4 a
    {
        font-size: 4.5vw;

        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        width: 90%;
        padding: .3em 1em;
    }
}
.more_button4 a i:before
{
    background: #fff;
}
.more_button4 a i:after
{
    border-top: 3px solid #fff;
}
@media only screen and (max-width: 767px)
{
    .more_button4 a i:after
    {
        border-top: 2px solid #fff;
    }
}

.marker
{
    display: inline;

    padding: 0 3px 2px;

    background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, transparent), color-stop(0%, #f8e804));
    background: linear-gradient(transparent 70%, #f8e804 0%);
}

.big
{
    font-size: 26px;
    font-size: 1.625rem;
    font-weight: 700;
}

p.img
{
    margin: 2em auto 2em;
}

.frame
{
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 100%;
    max-width: 885px;
    margin: 2em auto 2.5em;
    padding: 1.3em 2em;

    border-radius: 3px;
}
@media only screen and (max-width: 1040px)
{
    .frame
    {
        width: 90%;
    }
}
@media only screen and (max-width: 767px)
{
    .frame
    {
        padding: 1.3em 1em;
    }
}
.frame ul,
.frame ol
{
    padding-left: 1em;
}
.frame ul li + li,
.frame ol li + li
{
    margin-top: .3em;
}
.frame ul
{
    list-style-type: disc;
}
.frame ol
{
    list-style-type: decimal;
}
.frame ol + p,
.frame ul + p
{
    margin-top: 1em;
}
.frame strong
{
    font-weight: 700;
}
.frame p + p
{
    margin-top: 1em;
}
.frame h5
{
    display: block;

    margin-bottom: 1em;
    padding: .1em 1em;

    text-align: center;

    color: #173946;
}

ul.dot
{
    padding-left: 1em;

    list-style-type: disc;
}
ul.dot a
{
    text-decoration: underline;

    color: #0c7fc6;
}
ul.dot a:hover
{
    text-decoration: none;
}

ol.decimal
{
    padding-left: 1em;

    list-style-type: decimal;
}

.fr1
{
    border: 3px solid #f7058e;
    background: #ffebf6;
}
.fr1 h5
{
    color: #fff;
    background: #f7058e;
}

.fr2
{
    border: 3px solid #f8e804;
    background: #f6f4d3;
}
.fr2 h5
{
    background: #f8e804;
}

.fr3
{
    border: 3px solid #f70515;
    background: #f8d5d5;
}
.fr3 h5
{
    color: #fff;
    background: #f70515;
}

table.t1
{
    width: 100%;
    margin: 1em auto 1em;

    border-spacing: 5px 0;
    border-collapse: separate;
}
@media only screen and (max-width: 767px)
{
    table.t1
    {
        font-size: 12px;
    }
}
table.t1 tr th
{
    width: 50%;

    color: #fff;
    background: #173946;
}
table.t1 tr td
{
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 50%;
    padding: 5px;

    text-align: center;
}
table.t1 th:nth-child(1)
{
    color: #7ac7ba;
}
table.t1 th:nth-child(2)
{
    color: #eb6502;
}

table.t2
{
    width: 100%;
    margin: 1em auto 1em;

    border-spacing: 5px 10px;
    border-collapse: separate;
}
@media only screen and (max-width: 767px)
{
    table.t2
    {
        font-size: 12px;
    }
}
table.t2 tr th
{
    width: 15%;
    padding: .5em 1em;

    text-align: right;

    background: #fbfbfb;
}
@media only screen and (max-width: 767px)
{
    table.t2 tr th
    {
        width: 10%;
        padding-right: 0;
    }
}
table.t2 tr td
{
    width: 15%;
    padding: .5em 1em;
}
@media only screen and (max-width: 767px)
{
    table.t2 tr td
    {
        width: 18%;
        padding-right: 0;
        padding-left: 0;
    }
}

table.t3
{
    width: 100%;
    margin: 1em auto 1em;

    border-spacing: 5px 10px;
    border-collapse: separate;
}

table.t4
{
    width: 100%;
    margin: 1em auto 1em;
}
@media only screen and (max-width: 767px)
{
    table.t4
    {
        font-size: 12px;
    }
}
table.t4 tr th
{
    width: 20%;
    padding: .5em 1em;

    text-align: right;
}
@media only screen and (max-width: 767px)
{
    table.t4 tr th
    {
        width: 10%;
        padding-right: 0;

        text-align: left;
    }
}
table.t4 tr td
{
    width: 80%;
    padding: .5em 1em;
}
@media only screen and (max-width: 767px)
{
    table.t4 tr td
    {
        width: 18%;
        padding-right: 0;
        padding-left: 0;
    }
}
table.t4 tr:nth-child(even) th
{
    background: #f9f9f9;
}
table.t4 tr:nth-child(even) td
{
    background: #f9f9f9;
}

.txtbg
{
    line-height: 1;

    display: inline-block;

    margin-left: .3em;
    padding: 3px 5px;

    color: #fff;
}

.bg-orange
{
    background: #eb6502;
}

.bg-blue
{
    background: #7ac7ba;
}

.center
{
    text-align: center;
}

p.caution
{
    font-size: 13px;
    font-size: .8125rem;

    padding-left: 1em;
}
@media only screen and (max-width: 767px)
{
    p.caution
    {
        font-size: 12px !important;
    }
}
p.caution i
{
    margin-left: -1em;
}

.small
{
    font-size: 10px !important;

    vertical-align: top;
}

.smallm
{
    font-size: 12px !important;

    vertical-align: top;
}

.red
{
    color: #f70515;
}

.orange
{
    color: #eb6502;
}

.pink
{
    color: #f7058e;
}

.pace.pace-inactive
{
    display: none;
}

.kids_cha
{
    max-width: 750px;
    margin: 3em auto 0;
}
.kids_cha .txt
{
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 1em 1em;

    background: #8dd0fb;
}

/*/////////////////////////////////////
/exFontAwesome
/////////////////////////////////////*/
.fa-chevron-right
{
    display: inline-block;

    width: 9px;
    height: 12px;

    background: url(img/s_common.svg) no-repeat;
    background-position: 0 -47px;
    background-size: inherit;
}
.fa-chevron-right + .white
{
    background-position: 0 -57px;
}

.fa-chevron-right.white
{
    background-position: 0 -57px;
}

.fa-angle-down
{
    display: inline-block;

    width: 10px;
    height: 7px;

    background: url(img/s_common.svg) no-repeat;
    background-position: 1px -32px;
    background-size: inherit;
}

.fa-angle-right
{
    display: inline-block;

    width: 10px;
    height: 12px;

    background: url(img/s_common.svg) no-repeat;
    background-position: 1px -47px;
    background-size: inherit;
}

.fa-caret-right
{
    display: inline-block;

    width: 7px;
    height: 12px;

    background: url(img/s_common.svg) no-repeat;
    background-position: -8px -47px;
    background-size: inherit;
}

.fa-angle-left
{
    display: inline-block;

    width: 10px;
    height: 12px;

    background: url(img/s_common.svg) no-repeat;
    background-position: 1px -37px;
    background-size: inherit;
}

.fa-clock
{
    display: inline-block;

    width: 20px;
    height: 20px;

    background: url(img/s_common.svg) no-repeat;
    background-position: -61px 0;
    background-size: inherit;
}

.fa-calendar-alt
{
    display: inline-block;

    width: 20px;
    height: 20px;

    background: url(img/s_common.svg) no-repeat;
    background-position: -42px 0;
    background-size: inherit;
}

.fa-redo
{
    display: inline-block;

    width: 20px;
    height: 20px;

    background: url(img/s_common.svg) no-repeat;
    background-position: -42px 0;
    background-size: inherit;
}

.fa-calendar-check
{
    display: inline-block;

    width: 20px;
    height: 20px;

    background: url(img/s_common.svg) no-repeat;
    background-position: -42px -21px;
    background-size: inherit;
}

.fa-external-link-alt
{
    display: inline-block;

    width: 25px;
    height: 25px;

    background: url(img/s_common.svg) no-repeat;
    background-position: -106px 0;
    background-size: inherit;
}

.fa-external-link-alt
{
    display: inline-block;

    width: 25px;
    height: 25px;

    -webkit-transform: scale(.8);
            transform: scale(.8);

    background: url(img/s_common.svg) no-repeat;
    background-position: -106px 0;
    background-size: inherit;
}

.fa-hand-point-right
{
    display: inline-block;

    width: 18px;
    height: 18px;

    background: url(img/s_common.svg) no-repeat;
    background-position: 0 -91px;
    background-size: inherit;
}

.fa-angle-up
{
    display: inline-block;

    width: 10px;
    height: 12px;

    background: url(img/s_common.svg) no-repeat;
    background-position: 0 -20px;
    background-size: inherit;
}

/*/////////////////////////////////////
/heading
/////////////////////////////////////*/
.heading_1
{
    font-family: 'Anton';
    font-size: 200px;
    font-size: 12.5rem;
    line-height: 1;

    position: absolute;
    top: -5.3125rem;
    top: -.5em;

    overflow: hidden;

    padding-left: 10vw;

    text-align: left;
    letter-spacing: .02em;

    color: #173946;
}
@media only screen and (max-width: 1040px)
{
    .heading_1
    {
        font-size: 15vw;
    }
}
@media only screen and (max-width: 767px)
{
    .heading_1
    {
        font-size: 20vw;
    }
}
.heading_1 span.line
{
    font-size: 20px;
    font-size: 1.25rem;
    font-weight: 700;

    position: relative;

    display: block;

    padding-left: 7vw;

    text-align: left;
    letter-spacing: .1em;
}
@media only screen and (max-width: 767px)
{
    .heading_1 span.line
    {
        font-size: 13px;
        font-size: .8125rem;
    }
}
.heading_1 span.line:before
{
    position: absolute;
    top: .625rem;
    left: -4vw;

    display: block;

    width: 10vw;
    height: 2px;

    content: '';

    background: #173946;
}
@media only screen and (max-width: 767px)
{
    .heading_1 span.line:before
    {
        top: .345rem;
    }
}

.heading_2
{
    overflow: hidden;

    text-align: center;
}
.heading_2 .inner_h
{
    font-family: 'ヒラギノ明朝 ProN W6', 'HiraMinProN-W6', 'HG明朝E', 'ＭＳ Ｐ明朝', 'MS PMincho', 'MS 明朝', serif;
    font-size: 60px;
    font-size: 3.75rem;
    font-weight: 900;

    position: relative;

    display: inline-block;

    margin: 1em 0;

    text-align: center;

    color: #173946;
}
@media only screen and (max-width: 767px)
{
    .heading_2 .inner_h
    {
        font-size: 6vw;
    }
}
.heading_2 .inner_h .l_line
{
    position: absolute;
    top: 50%;
    left: -125px;

    width: 100px;

    opacity: .8;
    border: 1px solid #173946;
}
@media only screen and (max-width: 767px)
{
    .heading_2 .inner_h .l_line
    {
        left: -115px;
    }
}
.heading_2 .inner_h .r_line
{
    position: absolute;
    top: 50%;
    right: -125px;

    width: 100px;

    opacity: .8;
    border: 1px solid #173946;
}
@media only screen and (max-width: 767px)
{
    .heading_2 .inner_h .r_line
    {
        right: -115px;
    }
}
.heading_2 .inner_h br
{
    display: none;
}
@media only screen and (max-width: 1040px)
{
    .heading_2 .inner_h br
    {
        display: block;
    }
}

.heading_3
{
    margin: 2em 0 7em;

    -webkit-transform: rotate(-5deg);
            transform: rotate(-5deg);
    text-align: center;
}
@media only screen and (max-width: 767px)
{
    .heading_3
    {
        margin: 1em 0 3.5em;
    }
}
.heading_3 .h3_inner
{
    font-size: 3.5vw;
    font-weight: 900;
    line-height: 2em;

    display: inline;

    text-align: center;

    color: #fff;
}
@media only screen and (max-width: 767px)
{
    .heading_3 .h3_inner
    {
        font-size: 4.8vw;
        line-height: 1.6em;
    }
}
.heading_3 .h3_inner p
{
    display: inline;

    border: 8px solid #173946;
    background: #173946;
}
@media only screen and (max-width: 767px)
{
    .heading_3 .h3_inner p
    {
        border: 5px solid #173946;
    }
}
.heading_3 .h3_inner strong
{
    display: inline;

    border: 8px solid #f70515;
    background: #f70515;
}
@media only screen and (max-width: 767px)
{
    .heading_3 .h3_inner strong
    {
        border: 5px solid #f70515;
    }
}

.notrotate
{
    -webkit-transform: rotate(0deg) !important;
            transform: rotate(0deg) !important;
}

.h4_wrap
{
    font-size: 100px;
    font-size: 6.25rem;

    position: absolute;
    top: -5.3125rem;
    top: -.5em;
    right: 0;
    left: 0;

    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
}
@media only screen and (max-width: 1040px)
{
    .h4_wrap
    {
        font-size: 11vw;

        top: -1em;

        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        padding-right: .2em;
    }
}
.heading_4
{
    font-family: 'Anton';
    line-height: 1;

    overflow: hidden;

    text-align: right;

    color: #173946;
}
.heading_4 span.sub
{
    font-family: 'Noto Sans Japanese';
    font-size: 14px;
    font-size: .875rem;
    font-weight: 700;

    position: relative;

    display: block;

    margin-top: .1em;

    text-align: right;
}
@media only screen and (max-width: 767px)
{
    .heading_4 span.sub
    {
        font-size: 3.2vw;
    }
}

.heading_5
{
    font-size: 28px;
    font-size: 1.75rem;
    font-weight: 900;

    position: relative;

    margin-bottom: 1em;
    padding: 0 0 5px 55px;

    border-bottom: 3px solid currentcolor;
}
@media only screen and (max-width: 767px)
{
    .heading_5
    {
        font-size: 4vw;
        line-height: 1.2em;

        padding-bottom: 7px;
        padding-left: 35px;
    }
}
.heading_5:before
{
    position: absolute;
    top: 0;
    left: 0;

    width: 45px;
    height: 45px;

    content: '';

    background: url(img/s_common.svg) no-repeat;
    background-position: -109px -59px;
    background-size: 1163px;
}
@media only screen and (max-width: 767px)
{
    .heading_5:before
    {
        top: 50%;

        -webkit-transform: scale(.6) translate(-25%, -95%);
                transform: scale(.6) translate(-25%, -95%);
    }
}
.heading_5:after
{
    position: absolute;
    bottom: -9px;
    left: 0;

    display: block;

    width: 100%;
    height: 1px;

    content: '';

    background: #173946;
}

.heading_5:not(:first-of-type)
{
    margin-top: 2em;
}

.heading_6
{
    font-size: 30px;
    font-size: 1.875rem;
    font-weight: 900;
    line-height: 1.5em;

    margin: 2.5em 0 1em;

    text-align: center;
}
@media only screen and (max-width: 1040px)
{
    .heading_6
    {
        font-size: 4.5vw;
    }
    .heading_6 br
    {
        display: none;
    }
}
.heading_6:after
{
    display: block;

    width: 30px;
    height: 3px;
    margin: .4em auto 0;

    content: '';

    background: #173946;
}

.heading_7
{
    font-size: 26px;
    font-size: 1.625rem;
    font-weight: 900;
    line-height: 1.2em;

    position: relative;

    margin: 4em 0 1.5em;
    padding: .6em 1.5em;

    color: #f8e804;
    background: #173946;
}
@media only screen and (max-width: 767px)
{
    .heading_7
    {
        font-size: 5vw;

        margin: 5em 0 1.5em;
        padding: .6em 1em;
    }
}
.heading_7:before
{
    position: absolute;

    display: block;

    width: 250px;
    height: 134px;

    content: '';
}
@media only screen and (max-width: 1040px)
{
    .heading_7:before
    {
        -webkit-transform: scale(.6) translate(-25%, 10%);
                transform: scale(.6) translate(-25%, 10%);
    }
}
.heading_7:after
{
    position: absolute;
    bottom: -10px;

    display: block;

    width: 0;
    height: 0;

    content: '';

    border-width: 10px 10px 0 10px;
    border-style: solid;
    border-color: #173946 transparent transparent transparent;
}

.h7p1:before
{
    top: -100px;
    left: -43px;

    content: '';

    background: url(img/s_column.svg) no-repeat;
    background-position: -171px 0;
    background-size: 1444px;
}
@media only screen and (max-width: 1040px)
{
    .h7p1:before
    {
        left: 0;
    }
}

.h7p2:before
{
    top: -100px;
    left: -43px;

    content: '';

    background: url(img/s_column.svg) no-repeat;
    background-position: -415px 0;
    background-size: 1444px;
}
@media only screen and (max-width: 1040px)
{
    .h7p2:before
    {
        left: 0;
    }
}

.h7p3:before
{
    top: -100px;
    left: -43px;

    content: '';

    background: url(img/s_column.svg) no-repeat;
    background-position: -665px 0;
    background-size: 1444px;
}
@media only screen and (max-width: 1040px)
{
    .h7p3:before
    {
        left: 0;
    }
}

.h7p4:before
{
    top: -100px;
    left: -43px;

    content: '';

    background: url(img/s_column.svg) no-repeat;
    background-position: -897px -5px;
    background-size: 1414px;
}
@media only screen and (max-width: 1040px)
{
    .h7p4:before
    {
        left: 0;
    }
}

.h7p5:before
{
    top: -100px;
    left: -43px;

    content: '';

    background: url(img/s_column.svg) no-repeat;
    background-position: -1171px 0;
    background-size: 1444px;
}
@media only screen and (max-width: 1040px)
{
    .h7p5:before
    {
        left: 0;
    }
}

.h7p6:before
{
    top: -100px;
    left: -43px;

    content: '';

    background: url(img/s_column_2.svg) no-repeat;
    background-position: 10px 0;
    background-size: 1444px;
}
@media only screen and (max-width: 1040px)
{
    .h7p6:before
    {
        left: 0;
    }
}

.h7p7:before
{
    top: -100px;
    left: -43px;

    content: '';

    background: url(img/s_column_2.svg) no-repeat;
    background-position: -230px 0;
    background-size: 1444px;
}
@media only screen and (max-width: 1040px)
{
    .h7p7:before
    {
        left: 0;
    }
}

.h7p8:before
{
    top: -100px;
    left: -43px;

    content: '';

    background: url(img/s_column_2.svg) no-repeat;
    background-position: -465px 0;
    background-size: 1444px;
}
@media only screen and (max-width: 1040px)
{
    .h7p8:before
    {
        left: 0;
    }
}

.h7p9:before
{
    top: -100px;
    left: -43px;

    content: '';

    background: url(img/s_column_2.svg) no-repeat;
    background-position: -700px 0;
    background-size: 1444px;
}
@media only screen and (max-width: 1040px)
{
    .h7p9:before
    {
        left: 0;
    }
}

.h7p10:before
{
    top: -100px;
    left: -43px;

    content: '';

    background: url(img/s_column_2.svg) no-repeat;
    background-position: -940px 0;
    background-size: 1444px;
}
@media only screen and (max-width: 1040px)
{
    .h7p10:before
    {
        left: 0;
    }
}

.h7p11:before
{
    top: -100px;
    left: -43px;

    content: '';

    background: url(img/s_column_2.svg) no-repeat;
    background-position: -1190px 0;
    background-size: 1444px;
}
@media only screen and (max-width: 1040px)
{
    .h7p11:before
    {
        left: 0;
    }
}

.heading_8
{
    font-size: 24px;
    font-size: 1.5rem;
    font-weight: 900;
    line-height: 1em;

    position: relative;

    margin-top: 3em;
    margin-bottom: 1em;
    padding: 0 0 5px 55px;
}
@media only screen and (max-width: 767px)
{
    .heading_8
    {
        font-size: 4.2vw;
        line-height: 1.2em;

        padding-right: 1em;
        padding-left: 40px;
    }
}
.heading_8 span
{
    font-size: 14px;
    font-size: .875rem;
    line-height: 1em;

    display: block;

    color: #eb6502;
}
@media only screen and (max-width: 767px)
{
    .heading_8 span
    {
        font-size: 12px;
        font-size: .75rem;

        margin-bottom: .2em;
    }
}
.heading_8:before
{
    position: absolute;
    top: 0;
    left: 0;

    width: 45px;
    height: 45px;

    content: '';

    background: url(img/s_common.svg) no-repeat;
    background-position: -109px -59px;
    background-size: 1163px;
}
@media only screen and (max-width: 767px)
{
    .heading_8:before
    {
        -webkit-transform: scale(.6) translate(0%, -5%);
                transform: scale(.6) translate(0%, -5%);
    }
}

.heading_9
{
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 700;

    margin: 2em 0 .5em;
    padding: .5em 1em;

    border-left: 5px solid #f8e804;
}
@media only screen and (max-width: 767px)
{
    .heading_9
    {
        font-size: 4vw;

        width: 90%;
        margin: 2em auto .5em;
    }
}

.pickup
{
    position: relative;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 100%;
    max-width: 860px;
    margin: 8em auto 4em;
    padding: 1.2em 1.5em;

    background: #f8e804;
    -webkit-box-shadow: 0 3px 6px rgba(3, 3, 6, .15);
       -moz-box-shadow: 0 3px 6px rgba(3, 3, 6, .15);
            box-shadow: 0 3px 6px rgba(3, 3, 6, .15);
}
@media only screen and (max-width: 767px)
{
    .pickup
    {
        display: block;

        width: 90%;
    }
}
.pickup span.label
{
    font-family: 'Anton';
    font-size: 26px;
    font-size: 1.625rem;
    line-height: 1em;

    position: absolute;
    top: -31px;
    left: 0;

    display: block;

    padding: .1em .4em;

    color: #fff;
    background: #173946;
}
@media only screen and (max-width: 767px)
{
    .pickup span.label
    {
        font-size: 16px;
        font-size: 1rem;

        top: -20px;
    }
}
.pickup .img
{
    width: 370px;
}
@media only screen and (max-width: 767px)
{
    .pickup .img
    {
        width: 100%;
    }
}
.pickup .txt
{
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 490px;
    padding-left: 30px;
}
@media only screen and (max-width: 767px)
{
    .pickup .txt
    {
        width: 100%;
        padding-left: 0;
    }
}
.pickup .txt h5
{
    font-size: 28px;
    font-size: 1.75rem;
    font-weight: 700;
    line-height: 1.4em;

    padding: .7em 0;
}
@media only screen and (max-width: 767px)
{
    .pickup .txt h5
    {
        font-size: 5vw;
    }
}
.pickup .txt p
{
    font-size: 14px;
    font-size: .875rem;

    margin-bottom: 1.4em;
}
@media only screen and (max-width: 767px)
{
    .pickup .txt p
    {
        font-size: 12px;
        font-size: .75rem;
    }
}
.pickup a
{
    text-decoration: none;
}

.pickup a:hover .more_button3
{
    background-position: right center;
}
.pickup a:hover .more_button3:after
{
    margin-left: 25px;
}

.pickup2
{
    position: relative;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 100%;
    max-width: 860px;
    margin: 8em auto 4em;
    padding: 1.2em 1.5em;

    color: #fff;
    background: #173946;
    -webkit-box-shadow: 0 3px 6px rgba(3, 3, 6, .15);
       -moz-box-shadow: 0 3px 6px rgba(3, 3, 6, .15);
            box-shadow: 0 3px 6px rgba(3, 3, 6, .15);

    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}
@media only screen and (max-width: 767px)
{
    .pickup2
    {
        display: block;

        width: 90%;
        margin: auto;
    }
}
.pickup2 a
{
    text-decoration: none;
}
.pickup2 .label
{
    font-family: 'Anton';
    font-size: 26px;
    font-size: 1.625rem;
    line-height: 1em;

    position: absolute;
    top: -31px;
    left: 0;

    display: block;

    padding: .1em .4em;

    color: #fff;
    background: #173946;
}
@media only screen and (max-width: 767px)
{
    .pickup2 .label
    {
        font-size: 16px;
        font-size: 1rem;

        top: -20px;
    }
}
.pickup2 .leftside
{
    width: 45%;
}
@media only screen and (max-width: 767px)
{
    .pickup2 .leftside
    {
        width: 100%;
    }
}
.pickup2 .leftside strong
{
    font-size: 40px;
    font-size: 2.5rem;
    font-weight: 700;
    line-height: 1.2em;
}
@media only screen and (max-width: 767px)
{
    .pickup2 .leftside strong
    {
        font-size: 8vw;
    }
}
.pickup2 .leftside strong a
{
    color: #f8e804;
}
@media only screen and (max-width: 767px)
{
    .pickup2 .leftside .img
    {
        display: none;
    }
}
.pickup2 .leftside .feetxt
{
    font-size: 14px;
    font-weight: 700;

    margin-top: .5em;
    margin-bottom: .8em;

    text-align: right;
}
.pickup2 .leftside .feetxt span
{
    font-size: 20px;
}
.pickup2 .centerside
{
    font-weight: 900;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 10%;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-flow: column;
        flex-flow: column;
}
@media only screen and (max-width: 767px)
{
    .pickup2 .centerside
    {
        width: 100%;
    }
}
.pickup2 .centerside strong
{
    font-size: 50px;
    line-height: 0;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 54px;
    height: 54px;
    margin-bottom: .1em;

    color: #173946;
    border-radius: 100px;
    background: #f8e804;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.pickup2 .centerside p
{
    font-size: 14px;

    padding: 0;

    -webkit-transform: translate(0, 90%) rotate(-10deg) scale(4);
            transform: translate(0, 90%) rotate(-10deg) scale(4);
    letter-spacing: -1px;

    color: #f8e804;
    text-shadow: 0 0 1px black;
}
@media only screen and (max-width: 767px)
{
    .pickup2 .centerside p
    {
        -webkit-transform: translate(0, 90%) rotate(-10deg) scale(3);
                transform: translate(0, 90%) rotate(-10deg) scale(3);
    }
}
.pickup2 .rightside
{
    width: 45%;
}
@media only screen and (max-width: 767px)
{
    .pickup2 .rightside
    {
        width: 100%;
    }
}
.pickup2 .rightside ul.img
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.pickup2 .rightside .txt
{
    font-weight: 900;
}
.pickup2 .rightside .txt h3
{
    font-size: 22px;

    margin-top: .8em;
}
@media only screen and (max-width: 767px)
{
    .pickup2 .rightside .txt h3
    {
        font-size: 5vw;
    }
}
.pickup2 .rightside .txt ul
{
    font-size: 20px;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin-bottom: .3em;
    padding: 1em;
    padding-left: 2em;

    list-style-type: disc;

    color: #173946;
    background: #fff;
}
@media only screen and (max-width: 767px)
{
    .pickup2 .rightside .txt ul
    {
        font-size: 5vw;
    }
}
.pickup2 .rightside .txt p
{
    font-size: 14px;
}
.pickup2 .bottomside
{
    font-size: 24px;
    font-weight: 900;

    width: 100%;
    margin-top: .7em;
    padding: .1em;

    text-align: center;

    color: #173946;
    background: #f8e804;
}
@media only screen and (max-width: 767px)
{
    .pickup2 .bottomside
    {
        font-size: 5vw;
    }
}
.pickup2 .bottomside i.fas
{
    margin-left: .3em;
}
.pickup2 .bottomside a
{
    display: block;
}

/*/////////////////////////////////////
/tour-common
/////////////////////////////////////*/
.course-code p
{
    font-size: 12px;
    font-size: .75rem;
    font-weight: 700;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    padding: 0 0 0 .4em;

    color: #fff;
    border: 1px solid #173946;
    background: #173946;
}
@media only screen and (max-width: 767px)
{
    .course-code p
    {
        font-size: 10px;
        font-size: .625rem;
        line-height: 1.4em;
    }
}
.course-code p span
{
    display: block;

    margin: 0 0 0 .4em;
    padding: 0 .4em;

    color: #173946;
    background: #fff;
}

.hour
{
    font-size: 12px;
    font-size: .75rem;
    font-weight: 700;
    line-height: 1.3em;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 40px;
    height: 40px;

    text-align: center;

    color: #fff;

    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.bg_oneday
{
    background: #efeb6d;
    background: linear-gradient(45deg, #efeb6d 0%, #f00 100%);
}

.bg_halfday
{
    background: #34cee6;
    background: linear-gradient(45deg, #34cee6 0%, #4365d4 100%);
}

.bg_reserved
{
    font-family: 'ヒラギノ明朝 ProN W6', 'HiraMinProN-W6', 'HG明朝E', 'ＭＳ Ｐ明朝', 'MS PMincho', 'MS 明朝', serif;
    font-weight: 900;

    color: #8d3030;
    background: #dbb418;
    background: linear-gradient(45deg, rgb(219, 180, 24) 0%, rgb(246, 231, 130) 73%, rgb(245, 223, 81) 87%, rgb(235, 195, 36) 100%);
}

.bg_sunset
{
    background: #f00;
    background: linear-gradient(45deg, #f00 0%, #1e52ff 100%);
}

ul.tour-cat
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}
ul.tour-cat li
{
    font-weight: 700;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: auto;
    margin-right: 15px;
    margin-bottom: .2em;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
@media only screen and (max-width: 767px)
{
    ul.tour-cat li
    {
        margin-right: .5em;
    }
}
ul.tour-cat li span
{
    font-size: 12px;
    font-size: .75rem;
    line-height: 1em;

    display: inline;

    padding: 0 0 2px;

    background: -webkit-gradient(linear, left top, left bottom, color-stop(80%, transparent), color-stop(0%, #f8e804));
    background: linear-gradient(transparent 80%, #f8e804 0%);
}
@media only screen and (max-width: 767px)
{
    ul.tour-cat li span
    {
        font-size: 10px;
        font-size: .625rem;
    }
}
ul.tour-cat li i
{
    display: block;

    width: 20px;
    height: 20px;
    margin-right: 3px;

    border-radius: 100px;
    background: #fff;
}
ul.tour-cat li .maboroshi
{
    background-repeat: no-repeat;
    background-position: -3px -7px;
    background-size: 115px;
}
ul.tour-cat li .snorkel
{
    background-repeat: no-repeat;
    background-position: -31px -7px;
    background-size: 115px;
}
ul.tour-cat li .fish
{
    background-repeat: no-repeat;
    background-position: -59px -7px;
    background-size: 115px;
}
ul.tour-cat li .mermaid
{
    background-repeat: no-repeat;
    background-position: -87px -7px;
    background-size: 115px;
}
ul.tour-cat li .bluecave
{
    background-repeat: no-repeat;
    background-position: -3px -33px;
    background-size: 115px;
}
ul.tour-cat li .ms-16
{
    background-repeat: no-repeat;
    background-position: -31px -33px;
    background-size: 115px;
}
ul.tour-cat li .ms
{
    background-repeat: no-repeat;
    background-position: -59px -33px;
    background-size: 115px;
}
ul.tour-cat li .taki
{
    background-repeat: no-repeat;
    background-position: -87px -33px;
    background-size: 115px;
}
ul.tour-cat li .fly
{
    background-repeat: no-repeat;
    background-position: -31px -58px;
    background-size: 115px;
}
ul.tour-cat li .fly-op
{
    background-repeat: no-repeat;
    background-position: -31px -58px;
    background-size: 115px;
}
ul.tour-cat li .fishing
{
    background-repeat: no-repeat;
    background-position: -59px -58px;
    background-size: 115px;
}
ul.tour-cat li .cooking
{
    background-repeat: no-repeat;
    background-position: -87px -58px;
    background-size: 115px;
}
ul.tour-cat li .lunch
{
    background-repeat: no-repeat;
    background-position: -3px -7px;
    background-size: 115px;
}
ul.tour-cat li .set
{
    background-repeat: no-repeat;
    background-position: -31px -81px;
    background-size: 115px;
}
ul.tour-cat li .reserved
{
    background-repeat: no-repeat;
    background-position: -59px -82px;
    background-size: 115px;
}
ul.tour-cat li .custom
{
    background-repeat: no-repeat;
    background-position: -87px -82px;
    background-size: 115px;
}
ul.tour-cat li .op
{
    background-repeat: no-repeat;
    background-position: -3px -105px;
    background-size: 115px;
}
ul.tour-cat li .premium
{
    background-repeat: no-repeat;
    background-position: -31px -105px;
    background-size: 115px;
}
ul.tour-cat li .sunset
{
    background-repeat: no-repeat;
    background-position: -59px -105px;
    background-size: 115px;
}
ul.tour-cat li .kayak
{
    background-repeat: no-repeat;
    background-position: -87px -105px;
    background-size: 115px;
}
ul.tour-cat li .bbq
{
    background-repeat: no-repeat;
    background-position: -3px -128px;
    background-size: 115px;
}
ul.tour-cat li .groupdisc
{
    background-repeat: no-repeat;
    background-position: -31px -129px;
    background-size: 115px;
}
ul.tour-cat li .aed
{
    background-repeat: no-repeat;
    background-position: -59px -128px;
    background-size: 115px;
}
ul.tour-cat li .manta
{
    background-repeat: no-repeat;
    background-position: -3px -152px;
    background-size: 115px;
}
ul.tour-cat li .umigame
{
    background-repeat: no-repeat;
    background-position: -88px -128px;
    background-size: 115px;
}

.tour-info
{
    margin: 1.4em 0 1em;
    padding: 1em 0 1em;

    border: 1px solid #173946;
    background: #fff;
}
.tour-info ul.time
{
    font-size: 12px;
    font-size: .75rem;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    padding: 0 2em 0;
}
@media only screen and (max-width: 767px)
{
    .tour-info ul.time
    {
        font-size: 3vw;

        padding: 0 1em;

        -ms-flex-pack: distribute;
        justify-content: space-around;
    }
}
.tour-info ul.time li
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin-right: 1.5em;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
@media only screen and (max-width: 767px)
{
    .tour-info ul.time li
    {
        margin-right: 0;
    }
}
.tour-info ul.time li i
{
    font-size: 18px;
    font-size: 1.125rem;

    margin-right: .3em;
}
@media only screen and (max-width: 767px)
{
    .tour-info ul.time li i
    {
        font-size: 3vw;
    }
}
.tour-info ul.fee
{
    font-weight: 700;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin-top: .3em;

    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.tour-info ul.fee li
{
    font-size: 17px;
    font-size: 1.0625rem;
}
@media only screen and (max-width: 767px)
{
    .tour-info ul.fee li
    {
        font-size: 3vw;
    }
}
.tour-info ul.fee li strong
{
    font-size: 26px;
    font-size: 1.625rem;

    margin-right: .2em;
    margin-left: .1em;

    color: #f7058e;
}
@media only screen and (max-width: 767px)
{
    .tour-info ul.fee li strong
    {
        font-size: 5vw;
    }
}
.tour-info ul.fee li + li
{
    margin-left: 1em;
}

table.fee
{
    width: 100%;
}
table.fee tr th
{
    font-size: 14px;
    font-size: .875rem;
    font-weight: 700;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 190px;
    padding: 0 1.5em;

    text-align: right;
    vertical-align: middle;

    color: #fff;
    border: 1px solid #d6eeea;
    background: #14798e;
}
@media only screen and (max-width: 767px)
{
    table.fee tr th
    {
        font-size: 3.5vw;

        width: 30%;
        padding: 0 .8em;
    }
}
table.fee tr td
{
    font-size: 15px;
    font-size: .9375rem;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 810px;
    padding: .8em 1.5em;

    background: #fff;
}
table.fee tr td a
{
    text-decoration: underline;

    color: #0c7fc6;
}
table.fee tr td a:hover
{
    text-decoration: none;
}
@media only screen and (max-width: 767px)
{
    table.fee tr td
    {
        font-size: 3.5vw;

        width: 70%;
        padding: .5em .5em;
    }
}
table.fee tr td .official
{
    font-family: 'ヒラギノ明朝 ProN W6', 'HiraMinProN-W6', 'HG明朝E', 'ＭＳ Ｐ明朝', 'MS PMincho', 'MS 明朝', serif;
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 900;
    font-weight: 900;

    padding: .05em .9em;

    background: linear-gradient(135deg, rgb(186, 149, 85) 0%, rgb(150, 87, 36) 14%, rgb(252, 247, 172) 43%, rgb(211, 173, 83) 68%, rgb(189, 136, 44) 88%, rgb(162, 93, 37) 100%);
}
@media only screen and (max-width: 767px)
{
    table.fee tr td .official
    {
        font-size: 4.5vw;
    }
}
table.fee tr td dl
{
    font-size: 17px;
    font-size: 1.0625rem;
    font-weight: 700;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 300px;

    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
@media only screen and (max-width: 767px)
{
    table.fee tr td dl
    {
        font-size: 3.5vw;

        width: 100%;
    }
}
table.fee tr td dl dt
{
    line-height: 1.2em;

    width: 30%;

    text-align: right;
}
table.fee tr td dl dd
{
    font-size: 17px;
    font-size: 1.0625rem;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 70%;
}
@media only screen and (max-width: 767px)
{
    table.fee tr td dl dd
    {
        font-size: 3.5vw;
    }
}
table.fee tr td dl dd strong
{
    font-size: 22px;
    font-size: 1.375rem;
    font-weight: 900;

    margin: 0 .2em 0;

    color: #f7058e;
}
@media only screen and (max-width: 767px)
{
    table.fee tr td dl dd strong
    {
        font-size: 6vw;
    }
}
table.fee tr:nth-child(odd) td
{
    background: rgba(122, 199, 186, .18);
}
table.fee tr.group_discount td span
{
    color: #39acc6;
}

/*/////////////////////////////////////
/header
/////////////////////////////////////*/
header
{
    position: fixed;
    z-index: 1000;

    width: 100%;
    height: 86px;

    -webkit-transition: all .1s linear;
            transition: all .1s linear;

    background: #f8e804;
}
@media only screen and (max-width: 767px)
{
    header
    {
        position: relative;

        height: auto;
    }
}
@media only screen and (max-width: 1040px)
{
    header .inner
    {
        padding: 0;
    }
}
header .h_inner
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    height: 86px;

    -webkit-transition: all .1s linear;
            transition: all .1s linear;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
@media only screen and (max-width: 767px)
{
    header .h_inner
    {
        -webkit-box-pack: space-evenly;
        -ms-flex-pack: space-evenly;
        justify-content: space-evenly;
    }
}
@media only screen and (max-width: 767px)
{
    header .h_inner
    {
        position: fixed;
        z-index: 1000;

        width: 100%;
        height: auto;

        background: #f8e804;
    }
}
header .h_inner a.logo
{
    display: block;

    width: 151px;
    height: 57px;

    background: url(img/logo.png) no-repeat;
    background-size: contain;
}
@media only screen and (max-width: 1040px)
{
    header .h_inner a.logo
    {
        width: 100px;
        height: 38px;
    }
}
@media only screen and (max-width: 767px)
{
    header .h_inner a.logo
    {
        z-index: 1000;

        width: 80vmax;
        max-width: 110px;
        height: 12vmin;
        max-height: 40px;
        margin-left: 2vw;
    }
}
header .h_inner .menu
{
    width: 650px;
}
@media only screen and (max-width: 1040px)
{
    header .h_inner .menu
    {
        top: 0;

        width: 71vw;
    }
}
@media only screen and (max-width: 767px)
{
    header .h_inner .menu
    {
        position: fixed;
        z-index: -1;
        z-index: 950;
        top: 100%;
        right: 100%;
        left: initial;

        overflow: auto;

        width: 100vw;
        height: 100%;

        -webkit-transition: all .1s ease-in-out 0s, visibility 0s linear .1s, z-index 0s linear .01s;
                transition: all .1s ease-in-out 0s, visibility 0s linear .1s, z-index 0s linear .01s;
        pointer-events: none;

        opacity: 0;
        background: #f3f3f3;
    }
}
header .h_inner .menu .desc
{
    font-size: 12px;
    font-size: .75rem;

    position: relative;
    top: 0;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin-bottom: 5px;
    padding-left: 10px;

    -webkit-transition: all .2s linear;
            transition: all .2s linear;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
@media only screen and (max-width: 1040px)
{
    header .h_inner .menu .desc
    {
        font-size: 10px;

        top: -.4em;

        padding-left: 0;
    }
}
@media only screen and (max-width: 767px)
{
    header .h_inner .menu .desc
    {
        top: 15vw;
    }
}
@media only screen and (max-width: 767px)
{
    header .h_inner .menu .desc p
    {
        display: none;
    }
}
header .h_inner .menu nav
{
    font-size: 14px;
    font-size: .875rem;

    position: relative;
    top: 0;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin-top: 0;
}
@media only screen and (max-width: 767px)
{
    header .h_inner .menu nav
    {
        position: relative;

        display: block;

        width: 100%;
        margin-top: 14vw;
        padding-bottom: 1em;

        -webkit-transition: all .2s ease-out;
                transition: all .2s ease-out;
        -webkit-transform: translateY(10px);
                transform: translateY(10px);
        text-align: center;
    }
}
header .h_inner .menu nav ul.navmenu
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
@media only screen and (max-width: 767px)
{
    header .h_inner .menu nav ul.navmenu
    {
        display: block;
    }
}
header .h_inner .menu nav ul.navmenu li a
{
    font-size: 13px;
    font-size: .8125rem;
    font-weight: 700;

    position: relative;

    display: block;
    display: inline-block;

    padding: 5px 6px 2px;

    text-decoration: none;
}
header .h_inner .menu nav ul.navmenu li a::after
{
    position: absolute;
    bottom: -2.8px;
    left: 0;

    width: 100%;
    height: 1.4px;

    content: '';
    -webkit-transition: -webkit-transform .3s;
            transition: -webkit-transform .3s;
            transition:         transform .3s;
            transition:         transform .3s, -webkit-transform .3s;
    -webkit-transform: scale(0, 1);
            transform: scale(0, 1);
    -webkit-transform-origin: right top;
            transform-origin: right top;

    background: #fff;
}
header .h_inner .menu nav ul.navmenu li a:hover::after
{
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
    -webkit-transform-origin: left top;
            transform-origin: left top;
}
header .h_inner .menu nav ul.navmenu li a::after
{
    background: #173946;
}
@media only screen and (max-width: 1040px)
{
    header .h_inner .menu nav ul.navmenu li a
    {
        font-size: 1.5vw;

        padding: 5px .5vw 2px;
    }
}
@media only screen and (max-width: 767px)
{
    header .h_inner .menu nav ul.navmenu li a
    {
        font-size: 3.7vw;

        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        width: 100%;
        padding: .8em 1em;
        padding-right: 2.5em;

        text-align: left;

        border-bottom: 1px solid #173946;
    }
    header .h_inner .menu nav ul.navmenu li a:after
    {
        content: none;
    }
}
@media only screen and (max-width: 767px)
{
    header .h_inner .menu nav ul.navmenu li a.sp-arrow:before
    {
        position: absolute;
        top: 17px;
        right: 1.5em;

        display: block;

        width: 9px;
        height: 12px;

        content: '';

        background: url(img/s_common.svg) no-repeat;
        background-position: 0 -47px;
        background-size: inherit;
    }
}
header .h_inner .menu nav ul.navmenu li .uk-button
{
    font-size: inherit;
    line-height: inherit;

    color: inherit;
    border: none;
}
header .h_inner .menu nav ul.navmenu li .uk-nav
{
    padding: 0;
}
header .h_inner .menu nav ul.navmenu li .uk-nav li
{
    width: auto;
}
header .h_inner .menu nav .uk-accordion > :nth-child(n+2)
{
    margin-top: 0 !important;
}
header .h_inner .menu nav .uk-accordion-content
{
    margin-top: 0 !important;
}
header .h_inner .menu nav .uk-accordion-content ul li a
{
    color: #fff;
    border-bottom: 1px solid #fff;
    background: #173946;
}
header .h_inner .menu nav .uk-accordion-content ul li a span
{
    font-size: .8em;

    padding: .4em .5em;

    background: #0d2731;
}
header .h_inner .menu nav .uk-accordion-content ul li a.sp-arrow:before
{
    position: absolute;
    top: 17px;
    right: 1.5em;

    display: block;

    width: 10px;
    height: 12px;

    content: '';

    background: url(img/s_common.svg) no-repeat;
    background-position: 0 -57px;
    background-size: inherit;
}
header .h_inner .menu nav .uk-accordion-title::before
{
    position: absolute;
    right: 1em;

    content: '';
}
header .h_inner .menu nav .badge
{
    display: block;

    width: 95vw;
    height: 24vw;
    margin: auto;
    margin-top: .5em;
    margin-bottom: 1em;

    background: url(img/s_common.svg) no-repeat;
    background-position: 32% 3%;
    background-size: 261%;
}
header .h_inner .menu nav ul.sns
{
    margin-top: .5em;
    margin-left: 2vw;
}
header .h_inner .tourlist_btn .uk-inline > a
{
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 900;

    display: block;

    padding: 28px 25px;

    -webkit-transition: background-position .3s ease-in-out 0s;
            transition: background-position .3s ease-in-out 0s;

    color: #fff;
    background: linear-gradient(45deg, #f7058e 0%, #ff3907 50%, #f7058e 100%);
    background-size: 200% 100%;
}
header .h_inner .tourlist_btn .uk-inline > a:hover
{
    background-position: right;
}
header .h_inner .tourlist_btn .uk-inline > a br.tablet
{
    display: none;
}
@media only screen and (max-width: 1040px)
{
    header .h_inner .tourlist_btn .uk-inline > a br.tablet
    {
        display: block;
    }
}
@media only screen and (max-width: 767px)
{
    header .h_inner .tourlist_btn .uk-inline > a br.tablet
    {
        display: none;
    }
}
header .h_inner .tourlist_btn .uk-inline > a i.fas
{
    margin-left: .3em;
}
@media only screen and (max-width: 1040px)
{
    header .h_inner .tourlist_btn .uk-inline > a
    {
        padding: 14px 14px;
    }
}
@media only screen and (max-width: 767px)
{
    header .h_inner .tourlist_btn .uk-inline > a
    {
        font-size: 14px;
        font-size: .875rem;
        font-size: 4vw;

        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        width: 9em;
        height: 14vw;
        padding: 0;

        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
}
header .tourlist-header
{
    width: 100%;

    background: #173946;
}
@media only screen and (max-width: 767px)
{
    header .tourlist-header
    {
        display: none;
    }
}
header .tourlist-header .tlh_inner ul
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-pack: distribute;
    justify-content: space-around;
}
@media only screen and (max-width: 767px)
{
    header .tourlist-header .tlh_inner ul
    {
        padding-top: 5em;

        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    }
}
header .tourlist-header .tlh_inner ul li
{
    width: 100%;
}
@media only screen and (max-width: 1040px)
{
    header .tourlist-header .tlh_inner ul li
    {
        width: auto;
    }
}
header .tourlist-header .tlh_inner ul li a
{
    font-size: 12px;
    font-size: .75rem;

    display: block;

    padding: .5em 0 .5em;

    text-align: center;

    color: #fff;
}
@media only screen and (max-width: 1040px)
{
    header .tourlist-header .tlh_inner ul li a
    {
        padding: .5em 2em .5em;
    }
}
header .tourlist-header .tlh_inner ul li:nth-child(1) a
{
    border-bottom: 4px solid #25a8d1;
}
header .tourlist-header .tlh_inner ul li:nth-child(2) a
{
    border-bottom: 4px solid #703cbf;
}
header .tourlist-header .tlh_inner ul li:nth-child(3) a
{
    border-bottom: 4px solid #de001e;
}
header .tourlist-header .tlh_inner ul li:nth-child(4) a
{
    border-bottom: 4px solid #ff9259;
}
header .tourlist-header .tlh_inner ul li:nth-child(5) a
{
    border-bottom: 4px solid #070782;
}
header .tourlist-header .tlh_inner ul li:nth-child(6) a
{
    border-bottom: 4px solid #f7058e;
}
header .tourlist-header .tlh_inner ul li:nth-child(7) a
{
    border-bottom: 4px solid #f8e804;
}

.acd-check
{
    display: none;
}

.acdSpNavMenu
{
    font-weight: 700;

    position: relative;

    display: block;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 100%;
    padding: .8em 1em;
    padding-right: 2.5em;

    text-align: left;

    border-bottom: 1px solid #173946;
}
@media only screen and (max-width: 767px)
{
    .acdSpNavMenu
    {
        font-size: 3.8vw;
    }
}
.acdSpNavMenu:after
{
    position: absolute;
    top: 0;
    right: 0;

    display: block;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    height: 52px;
    padding: 10px 20px;

    content: '+';
}

.acd-content
{
    display: block;
    visibility: hidden;

    height: 0;
    padding: 0;

    -webkit-transition: .5s;
            transition: .5s;

    opacity: 0;
}

.acd-check:checked + .acdSpNavMenu:after
{
    content: '-';
}

.acd-check:checked + .acdSpNavMenu + .acd-content
{
    visibility: visible;

    height: auto;

    opacity: 1;
}

@media only screen and (min-width: 767px)
{
    header.animation
    {
        height: 70px;

        background: #fff;
    }
    header.animation .h_inner
    {
        height: 70px;
    }
    header.animation .h_inner a.logo
    {
        -webkit-transform: scale(.9);
                transform: scale(.9);
    }
    header.animation .h_inner .menu nav
    {
        top: -10px;
    }
    header.animation .h_inner .menu .desc
    {
        top: -3em;
    }
    header.animation .h_inner .tourlist_btn .uk-inline > a
    {
        padding-top: 20.5px;
        padding-bottom: 20.5px;
    }
}
@media only screen and (max-width: 1040px)
{
    header.animation .tourlist_btn .uk-inline > a
    {
        padding-top: 6px !important;
        padding-bottom: 6px !important;
    }
}
@media only screen and (max-width: 767px)
{
    header.animation .tourlist_btn .uk-inline > a
    {
        padding: 0 !important;
    }
}
header.animation .h_inner
{
    background: #fff;
}

.hamburger
{
    display: none;
}
@media only screen and (max-width: 767px)
{
    .hamburger
    {
        display: block;
    }
}

.hamburger .line
{
    display: block;

    width: 30px;
    width: 8vw;
    height: 4px;
    height: .7vh;
    height: .8vmin;
    margin: 2vw auto;

    -webkit-transition: all .3s ease-in-out;
            transition: all .3s ease-in-out;

    background-color: #173946;
}

.hamburger:hover
{
    cursor: pointer;
}

#hamburger-1
{
    position: relative;
    z-index: 1000;

    width: 8vw;

    -webkit-transition: all .3s ease-in-out;
            transition: all .3s ease-in-out;
}

#hamburger-1.is-active
{
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
}

#hamburger-1.is-active:before
{
    border: 4px solid #173946;
}

#hamburger-1.is-active .line:nth-child(2)
{
    opacity: 0;
}

#hamburger-1.is-active .line:nth-child(1)
{
    -webkit-transform: translateY(2.4vw);
            transform: translateY(2.4vw);
}

#hamburger-1.is-active .line:nth-child(3)
{
    -webkit-transform: translateY(-3.4vw) rotate(90deg);
            transform: translateY(-3.4vw) rotate(90deg);
}

header .h_inner .menu.is-active
{
    top: 0;
    right: 0;

    pointer-events: auto;

    opacity: 1;
}
header .h_inner .menu.is-active nav
{
    -webkit-transform: translateY(0);
            transform: translateY(0);
}

/* Global Menu */
.uk-button ul.uk-dropdown-nav
{
    position: absolute;
    top: 30px;
}
.uk-button ul.uk-dropdown-nav > li
{
    display: block;
    display: none;
}
.uk-button ul.uk-dropdown-nav > li a
{
    color: #fff;
    background-color: #173946;
}
.uk-button ul.uk-dropdown-nav > li a:hover
{
    color: #173946;
    background-color: #fff;
}
.uk-button:hover ul.uk-dropdown-nav li
{
    display: block;
}

.navmenuTime
{
    margin-right: 5px;
}

/*/////////////////////////////////////
/footer
/////////////////////////////////////*/
footer
{
    padding: 8em 0 0;

    background-color: #173946;
    background-repeat: no-repeat;
    background-position: top center;
    background-size: cover;
}
footer .inner
{
    padding: 0;
}
@media only screen and (max-width: 1040px)
{
    footer .inner
    {
        padding: 0;
    }
}
footer .f_shop
{
    position: relative;

    padding: 4em 4em 2em;

    background: #fff;
}
@media only screen and (max-width: 767px)
{
    footer .f_shop
    {
        margin: 0 1.616em 0;
        padding: 8em 1.5em 3em;
    }
}
footer .f_shop strong
{
    font-family: 'Anton';
    font-size: 68px;
    font-size: 4.25rem;

    position: absolute;
    top: -54px;
    right: 0;
    left: 0;

    text-align: center;
}
@media only screen and (max-width: 767px)
{
    footer .f_shop strong
    {
        font-size: 15vw;
        line-height: .9em;

        top: -3.5%;
    }
}
footer .f_shop .greeting
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
@media only screen and (max-width: 767px)
{
    footer .f_shop .greeting
    {
        display: block;
    }
}
footer .f_shop .greeting .img
{
    width: 160px;
}
@media only screen and (max-width: 767px)
{
    footer .f_shop .greeting .img
    {
        float: left;

        margin-right: 1em;
    }
}
footer .f_shop .greeting .txt
{
    font-size: 14px;
    font-size: .875rem;

    width: 100%;
    max-width: 670px;
    margin-left: 2em;
}
@media only screen and (max-width: 767px)
{
    footer .f_shop .greeting .txt
    {
        font-size: 13px;
        font-size: .8125rem;

        margin-left: 0;
    }
}
footer .f_shop .greeting .txt p
{
    line-height: 1.8em;

    margin-bottom: 1em;
}
@media only screen and (max-width: 767px)
{
    footer .f_shop .greeting .txt p
    {
        font-size: 3vw;
        line-height: 1.6em;
    }
}
footer .f_shop .shopinfo
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin-top: 1.5em;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
@media only screen and (max-width: 767px)
{
    footer .f_shop .shopinfo
    {
        display: block;
    }
}
footer .f_shop .shopinfo address
{
    font-size: 14px;
    font-size: .875rem;
}
@media only screen and (max-width: 767px)
{
    footer .f_shop .shopinfo address
    {
        font-size: 3vw;
    }
}
footer .f_shop .shopinfo address .img
{
    display: block;

    width: 151px;
    height: 57px;
    margin-bottom: 1em;

    background-size: contain;
}
footer .f_shop .badge
{
    display: block;

    width: 450px;
    height: 106px;

    background-repeat: no-repeat;
    background-position: -230px -4px;
    background-size: inherit;
}
@media only screen and (max-width: 767px)
{
    footer .f_shop .badge
    {
        width: 78vw;
        height: 20vw;
        margin-top: 1em;

        background-position: 32% 3%;
        background-size: 261%;
    }
}
footer .f_menu
{
    margin: 5em 0 0;
}
footer .f_menu .menu-divide
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 100%;

    -webkit-box-align: baseline;
    -ms-flex-align: baseline;
    align-items: baseline;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
@media only screen and (max-width: 767px)
{
    footer .f_menu .menu-divide
    {
        display: block;
    }
}
footer .f_menu .menu-divide li
{
    width: 320px;
}
@media only screen and (max-width: 1040px)
{
    footer .f_menu .menu-divide li
    {
        width: 100%;
    }
}
footer .f_menu .menu-divide li .uk-accordion-title
{
    font-size: 16px;
    font-size: 1rem;
    font-weight: 900;

    display: block;

    width: 100%;
    padding: 3px 0;

    cursor: initial;
    text-align: center;

    color: #173946;
    background: #fff;
}
@media only screen and (max-width: 767px)
{
    footer .f_menu .menu-divide li .uk-accordion-title
    {
        font-size: 14px;
        font-size: .875rem;

        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        padding: .5em .5em;
        padding-left: 1em;

        text-align: left;
    }
}
footer .f_menu .menu-divide li .uk-accordion-title:after
{
    display: none !important;
}
@media only screen and (max-width: 767px)
{
    footer .f_menu .menu-divide li .uk-accordion-title:after
    {
        top: -4px;

        display: block !important;

        height: 46px;
    }
}
footer .f_menu .menu-divide li .uk-accordion-title::before
{
    display: none;

    margin-right: 10px;
    margin-left: 0;
}
@media only screen and (max-width: 767px)
{
    footer .f_menu .menu-divide li .uk-accordion-title::before
    {
        display: block;
    }
}
footer .f_menu .menu-divide li .uk-accordion-content
{
    padding-top: 1em;
}
footer .f_menu .menu-divide li .uk-accordion-content ul.menu li
{
    margin: 0 0 1em;
}
footer .f_menu .menu-divide li .uk-accordion-content ul.menu li a
{
    font-size: 14px;
    font-size: .875rem;

    position: relative;
    position: relative;

    display: block;
    display: inline-block;

    padding-left: 2em;

    text-decoration: none;

    color: #fff;
}
footer .f_menu .menu-divide li .uk-accordion-content ul.menu li a::after
{
    position: absolute;
    bottom: -2.8px;
    left: 0;

    width: 100%;
    height: 1.4px;

    content: '';
    -webkit-transition: -webkit-transform .3s;
            transition: -webkit-transform .3s;
            transition:         transform .3s;
            transition:         transform .3s, -webkit-transform .3s;
    -webkit-transform: scale(0, 1);
            transform: scale(0, 1);
    -webkit-transform-origin: right top;
            transform-origin: right top;

    background: #fff;
}
footer .f_menu .menu-divide li .uk-accordion-content ul.menu li a:hover::after
{
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
    -webkit-transform-origin: left top;
            transform-origin: left top;
}
footer .f_menu .menu-divide li .uk-accordion-content ul.menu li a::after
{
    background: #7ac7ba;
}
footer .f_menu .menu-divide li .uk-accordion-content ul.menu li a span
{
    font-size: 10px;
    font-size: .625rem;

    position: absolute;
    top: -1.2em;

    color: #fff;
}
@media only screen and (max-width: 767px)
{
    footer .f_menu .menu-divide li .uk-accordion-content ul.menu li a
    {
        font-size: 13px;
        font-size: .8125rem;

        padding-right: 1em;
        padding-left: 2.5em;
    }
}
footer .f_menu .menu-divide li .uk-accordion-content ul.menu li a:before
{
    position: absolute;
    top: 5px;
    left: 4px;

    display: block;

    width: 10px;
    height: 12px;

    content: '';

    background: url(img/s_common.svg) no-repeat;
    background-position: 0 -57px;
    background-size: inherit;
}
@media only screen and (max-width: 767px)
{
    footer .f_menu .menu-divide li .uk-accordion-content ul.menu li a:before
    {
        left: 12px;
    }
}
footer .f_menu .menu-divide li .uk-accordion-content ul.tourmenu li a
{
    color: #f8e804;
}
footer .f_menu .menu-divide li .uk-accordion-content ul.tourmenu li a:before
{
    content: '';

    background: url(img/s_common.svg) no-repeat;
    background-position: 0 -67px;
    background-size: inherit;
}
@media only screen and (max-width: 767px)
{
    footer .f_menu .uk-accordion > :nth-child(n+2)
    {
        margin-top: 2px;
    }
}
footer .f_menu .menu-divide + .menu-divide
{
    margin-top: 3em;
}
@media only screen and (max-width: 767px)
{
    footer .f_menu .menu-divide + .menu-divide
    {
        margin-top: 2px;
    }
}
footer .f_menu .menu-divide .menu-divide
{
    margin-top: 1em;
}
@media only screen and (max-width: 767px)
{
    footer .f_menu .menu-divide .menu-divide
    {
        margin-top: 2px;
    }
}
footer .f_banners
{
    margin-top: 3em;
    margin-bottom: 2.2em;
}
footer .tanslate
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin-bottom: .9em;

    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}

ul.banners
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}
@media only screen and (max-width: 767px)
{
    ul.banners
    {
        display: block;

        width: 90vw;
        margin: 0 auto;
    }
}
ul.banners li
{
    margin-left: 1.5em;
}
ul.banners li a
{
    font-weight: 900;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 220px;
    height: 70px;

    text-align: center;

    color: #fff;
    background: rgba(0, 0, 0, .4);

    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
ul.banners li a:hover
{
    opacity: .8;
}
@media only screen and (max-width: 767px)
{
    ul.banners li a
    {
        width: auto;
    }
}
ul.banners li a strong
{
    display: block;
}
@media only screen and (max-width: 767px)
{
    ul.banners li
    {
        margin-bottom: .8em;
        margin-left: 0;

        text-align: center;
    }
}
ul.banners .voice
{
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}
ul.banners .voice a h4
{
    font-size: 12px;
    line-height: 1.6em;
}
ul.banners .voice a h4 strong
{
    font-size: 18px;
}
ul.banners .recruit
{
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}
ul.banners .recruit a h4
{
    font-size: 20px;
}

.copyright
{
    font-size: 13px;
    font-size: .8125rem;
    font-weight: 700;

    color: #f8e804;
    border-top: 1px solid #2a5169;
}
@media only screen and (max-width: 767px)
{
    .copyright
    {
        padding-right: 1em;
    }
}
.copyright .inner
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    padding: 1em 0;

    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
@media only screen and (max-width: 767px)
{
    .copyright .inner
    {
        padding: 1em 0 7em;
    }
}
.copyright .inner small
{
    margin-right: 1em;
}

ul.sns
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
ul.sns li
{
    margin-left: .5em;
}
ul.sns li a
{
    display: block;

    width: 30px;
    height: 30px;

    background: url(img/s_common.svg) no-repeat;
    background-repeat: no-repeat;
    background-position: -160px -11px;
    background-size: inherit;
}
ul.sns li:nth-child(2) a
{
    background: url(img/s_common.svg) no-repeat;
    background-repeat: no-repeat;
    background-position: -194px -11px;
    background-size: inherit;
}

.fixed-contact
{
    position: fixed;
    z-index: 999;
    bottom: -56px;
    left: 2%;

    display: block;

    padding: 5px 5px;

    -webkit-transition: all .2s linear;
            transition: all .2s linear;

    background: rgba(0, 0, 0, .75);
}
@media only screen and (max-width: 767px)
{
    .fixed-contact
    {
        right: 0;
        left: initial;

        width: 100%;
        padding: 0;

        background: rgba(0, 0, 0, .8);
    }
}
.fixed-contact ul
{
    font-size: 10px;
    font-size: .625rem;
    font-weight: 700;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
@media only screen and (max-width: 767px)
{
    .fixed-contact ul
    {
        -webkit-box-pack: space-evenly;
        -ms-flex-pack: space-evenly;
        justify-content: space-evenly;
    }
}
@media only screen and (max-width: 767px)
{
    .fixed-contact ul li
    {
        width: 100%;
    }
}
@media only screen and (max-width: 767px)
{
    .fixed-contact ul li a
    {
        display: block;

        width: 100%;

        text-align: center;
    }
}
.fixed-contact ul li:nth-child(1) a
{
    position: relative;

    display: block;

    padding-left: 40px;

    color: #fff;
}
@media only screen and (max-width: 767px)
{
    .fixed-contact ul li:nth-child(1) a
    {
        padding-right: 5px;
        padding-left: 5px;
    }
}
.fixed-contact ul li:nth-child(1) a strong
{
    font-family: 'Anton';
    font-size: 28px;
    font-size: 1.75rem;
    font-weight: 700;
    line-height: 1em;

    display: block;

    letter-spacing: 2px;
}
@media only screen and (max-width: 767px)
{
    .fixed-contact ul li:nth-child(1) a strong
    {
        display: none;
    }
}
.fixed-contact ul li:nth-child(1) a:before
{
    position: absolute;
    top: 10px;
    left: 5px;

    display: block;

    width: 31px;
    height: 34px;

    content: '';

    background: url(img/s_common.svg) no-repeat;
    background-position: -11px -57px;
    background-size: inherit;
}
@media only screen and (max-width: 767px)
{
    .fixed-contact ul li:nth-child(1) a:before
    {
        position: relative;
        top: 0;
        left: 0;

        margin: 2px auto 0;
        margin-top: .5vw;
        margin-bottom: -1.2vw;

        -webkit-transform: scale(.8);
                transform: scale(.8);
    }
}
.fixed-contact ul li:nth-child(2) a
{
    position: relative;

    display: block;

    padding: 0 0 0 5px;

    color: #fff;
}
@media only screen and (max-width: 767px)
{
    .fixed-contact ul li:nth-child(2) a
    {
        padding-right: 5px;
        padding-left: 5px;
    }
}
.fixed-contact ul li:nth-child(2) a:before
{
    display: block;

    width: 29px;
    height: 22px;
    margin: 5px auto 3px;

    content: '';

    background: url(img/s_common.svg) no-repeat;
    background-position: -46px -57px;
    background-size: inherit;
}
@media only screen and (max-width: 767px)
{
    .fixed-contact ul li:nth-child(2) a:before
    {
        margin-top: 2vw;
        margin-bottom: .5vw;
    }
}
.fixed-contact ul li:nth-child(3)
{
    display: none;
}
@media only screen and (max-width: 767px)
{
    .fixed-contact ul li:nth-child(3)
    {
        display: block;
    }
}
.fixed-contact ul li:nth-child(3) a
{
    position: relative;

    display: block;

    padding: 0 0 0 5px;

    color: #fff;
}
@media only screen and (max-width: 767px)
{
    .fixed-contact ul li:nth-child(3) a
    {
        padding-right: 5px;
        padding-left: 5px;
    }
}
.fixed-contact ul li:nth-child(3) a:before
{
    display: block;

    width: 27px;
    height: 23px;
    margin: 6px auto 3px;

    content: '';

    background: url(img/s_common.svg) no-repeat;
    background-position: -78px -91px;
    background-size: inherit;
}
@media only screen and (max-width: 767px)
{
    .fixed-contact ul li:nth-child(3) a:before
    {
        margin-top: 2vw;
        margin-bottom: .5vw;
    }
}
.fixed-contact ul li:nth-child(4)
{
    display: none;
}
@media only screen and (max-width: 767px)
{
    .fixed-contact ul li:nth-child(4)
    {
        display: block;
    }
}
.fixed-contact ul li:nth-child(4) a
{
    position: relative;

    display: block;

    padding: 0 0 0 5px;

    color: #fff;
}
@media only screen and (max-width: 767px)
{
    .fixed-contact ul li:nth-child(4) a
    {
        padding-right: 5px;
        padding-left: 5px;
    }
}
.fixed-contact ul li:nth-child(4) a:before
{
    display: block;

    width: 32px;
    height: 26px;
    margin: 6px auto 3px;

    content: '';

    background: url(img/s_common.svg) no-repeat;
    background-position: -42px -94px;
    background-size: inherit;
}
@media only screen and (max-width: 767px)
{
    .fixed-contact ul li:nth-child(4) a:before
    {
        margin-top: 2vw;
        margin-bottom: .5vw;
    }
}

.fixed-contact.animation
{
    bottom: 0;
}
.column .pagetop,
.marinesport-list .pagetop
{
    font-size: 60px;
    line-height: 1;

    position: fixed;
    z-index: 1000;
    right: 30px;
    bottom: 0;

    display: none;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 56px;
    height: 56px;
    padding: 3px 10px;

    opacity: .6;
    background: #000;
}
@media only screen and (max-width: 767px)
{
    .column .pagetop,
    .marinesport-list .pagetop
    {
        font-size: 35px;

        right: 0;
        bottom: 0;

        width: 40px;
        height: 40px;

        opacity: .7;
    }
}
.column .pagetop a,
.marinesport-list .pagetop a
{
    line-height: 1;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    color: #fff;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.column .pagetop a:hover,
.marinesport-list .pagetop a:hover
{
    color: #fff;
}
.column .pagetop a i.fas,
.marinesport-list .pagetop a i.fas
{
    position: relative;
    top: 10px;

    -webkit-transform: scale(4);
            transform: scale(4);
}
@media only screen and (max-width: 767px)
{
    .column .pagetop a i.fas,
    .marinesport-list .pagetop a i.fas
    {
        top: 5px;

        -webkit-transform: scale(3);
                transform: scale(3);
    }
}

/*/////////////////////////////////////
/corona taisaku covid
/////////////////////////////////////*/
.taisaku_area
{
    margin-top: 2em;
    padding: 1em 1.5em;

    border: 1px dashed red;
    background: #fff;
    background-image: url(img/goto_sticker.jpg);
    background-repeat: no-repeat;
    background-position: 99% 2%;
    background-size: 150px;
}
@media only screen and (max-width: 767px)
{
    .taisaku_area
    {
        background-image: none;
    }
}
.taisaku_area .taisaku__title
{
    font-size: 20px;
    font-weight: 800;

    margin-bottom: .4em;

    text-align: center;

    color: red;
}
@media only screen and (max-width: 767px)
{
    .taisaku_area .taisaku__title
    {
        font-size: 15px;
    }
}
.taisaku_area p.taisaku__desc
{
    margin-bottom: 1.3em;

    text-align: center;
}
.taisaku_area .taisaku__list
{
    margin-left: 2em;

    list-style-type: decimal;

    text-align: left;
}
.taisaku_area .taisaku__list li
{
    font-size: .875rem;
}
@media only screen and (max-width: 767px)
{
    .taisaku_area .taisaku__list li
    {
        font-size: .8rem;
    }
}
.taisaku_area .taisaku__list li + li
{
    line-height: 1.4em;

    margin-top: .5em;
}
.taisaku_area .taisaku__image
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin-top: 1.2em;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}
.taisaku_area .taisaku__image li
{
    max-width: 200px;
}
@media only screen and (max-width: 767px)
{
    .taisaku_area .taisaku__image li
    {
        width: 48%;
    }
}
@media only screen and (max-width: 767px)
{
    .taisaku_area .taisaku__image li:nth-child(3),
    .taisaku_area .taisaku__image li:nth-child(4)
    {
        margin-top: 3%;
    }
}

.taisaku_area
{
    padding: 0;

    border: none;
    background: none;
}
.taisaku_area .acd-check
{
    display: none;
}
.taisaku_area .acd-label
{
    display: block;

    margin-bottom: 1px;
    padding: 10px;

    color: #f70515;
    border: 1px dashed #173946;
    border-radius: 100px;
    background: #fff;
}
@media only screen and (max-width: 767px)
{
    .taisaku_area .acd-label
    {
        font-size: 12px;
    }
}
.taisaku_area .acd-content
{
    visibility: hidden;

    height: 0;
    margin-top: 1em;
    padding: 0 10px;

    -webkit-transition: .5s;
            transition: .5s;

    opacity: 0;
    background: #fff;
}
.taisaku_area .acd-label
{
    position: relative;
}
.taisaku_area .acd-label:after
{
    line-height: 1;

    position: absolute;
    top: 10px;
    right: 10px;

    display: block;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 20px;
    height: 20px;

    content: '+';
    letter-spacing: 0;

    color: #173946;
    border-radius: 100px;
    background: #000;
    background: #f8e804;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.taisaku_area .acd-check:checked + .acd-label + .acd-content
{
    visibility: visible;

    height: auto;
    padding: 10px;

    opacity: 1;
}

/*/////////////////////////////////////
/ balloon
/////////////////////////////////////*/
.list .balloon
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin-top: 10px;

    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}
.list .balloon .bubble
{
    font-size: 12px;
    font-size: .75rem;
    font-weight: 700;
    line-height: 1.4em;

    position: relative;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: auto;
    height: -webkit-fit-content;
    height:    -moz-fit-content;
    height:         fit-content;
    margin-right: 1.3em;
    padding: 0;
    padding: .5em .7em;

    border: #173946 solid 3px;
    border-radius: 10px;
    background: #f8e804;
}
@media only screen and (max-width: 767px)
{
    .list .balloon .bubble
    {
        font-size: 3vw;
        font-size: 11px;

        width: 85%;
        margin-right: 0;

        border: #173946 solid 2px;
    }
}
.list .balloon .bubble:after
{
    position: absolute;
    z-index: 1;
    top: 12px;
    right: -10px;

    display: block;

    width: 0;

    content: '';

    border-width: 3px 0 3px 10px;
    border-style: solid;
    border-color: transparent #f8e804;
}
@media only screen and (max-width: 767px)
{
    .list .balloon .bubble:after
    {
        top: 6px;
        right: -5px;

        border-width: 1.5px 0 1.5px 5px;
    }
}
.list .balloon .bubble:before
{
    position: absolute;
    z-index: 0;
    top: 10px;
    right: -15px;

    display: block;

    width: 0;

    content: '';

    border-width: 5px 0 5px 12px;
    border-style: solid;
    border-color: transparent #173946;
}
@media only screen and (max-width: 767px)
{
    .list .balloon .bubble:before
    {
        top: 5px;
        right: -7.5px;

        border-width: 2.5px 0 2.5px 6px;
    }
}
.list .balloon .img
{
    width: 57px;
}
@media only screen and (max-width: 767px)
{
    .list .balloon .img
    {
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        width: 15%;
        padding-left: 3%;
    }
}
.list .balloon .img img
{
    border-radius: 100px;
}
