.sm{
    display: none !important;
}
@media (max-width: 779px){
    .sm{
        display: block !important;
    }
    .md{
        display: none !important;
    }
    body{
        font-size: 12px;
    }
    img{
        width:100%;
    }
    .trans:hover,
    .trans:hover img {
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=1)";
        filter: alpha(opacity=1);
        -moz-opacity: 1;
        -khtml-opacity: 1;
        opacity: 1;
    }

    .btn_detail .btn01{
        width: 60%!important;
        margin: 4% auto 0 !important
    }

/*===== COMMON =====*/
.container{
    width: 92%;
}
main {
    padding-top: 53px;
}

/*===== HEADER =====*/
header {
    position: fixed;
    width: 100%;
    background: #FFF;
    z-index: 1;
}
header > .container {
    padding: 4px 7px;
    width: 100%;
}
header .logo {
    width: 45%;
}
header .logo img {
    width: 143px;
}
header .link {
    width: 55%;
}
header .link > li {
    margin-left: 4%;
    font-size: 10px;
    /* letter-spacing: normal; */
    text-align: center;
}
header .link .txt span {
    display: none;
}
header .link .fa {
    margin-right: 0.25em;
    font-size: 23px;
}
header .link .fa-facebook-official {
    font-size: 20px;
}
header .menu {
    background: inherit;
    background-color: rgba(0,50,100,.9);
    position: absolute;
    width: 100%;
    display: none;
    padding-bottom: 7%;
}
header .menu > .container {
    display: block;
    padding: 4% 0;
}
header .menu li {
    width: 100%;
    border-bottom: 1px solid #335e88;
}
header .menu a {
    padding: 4.5% 0;
    font-size: 15px;
}
header .menu a:hover {
    background: #6fa7d0;
}
header .language {
    position: relative;
    font-size: 13px;
    width: 100px;
    margin: -10px 3% 0;
}
header .language .select {
    background: #FFF;
}
header .language > .active {
    border: none;
    height: 23px;
    padding: 2px;
    border-radius: 10px;
}
header .language,
header .language a {
    color: #666;
    font-size: 13px;
    padding: 2px;
}
header .language img {
    width: 19px;
}
header .language .fa {
    top: 7px;
}
header .language ul {
    /* display: block; */
    position: absolute;
    width: 100%;
}
header .language:hover ul {
    display: block;
}
header .language li {
    padding: 0;
    background: #FFF;
    text-align: left;
}
header .btm {
    display: flex;
    justify-content: center;
    align-items: center;
}
header .btm > a {
    padding: 0;
    margin: 0 3%;
    display: block;
}
header .btm > a > .fa {
    font-size: 40px;
}
.hamburger {
    /* padding: 15px 15px; */
    display: inline-block;
    cursor: pointer;
    transition-property: opacity, filter;
    transition-duration: 0.15s;
    transition-timing-function: linear;
    font: inherit;
    color: inherit;
    text-transform: none;
    background-color: transparent;
    border: 0;
    margin: 0;
    overflow: visible;
}
.hamburger:hover {
    opacity: 0.7;
}
.hamburger-box {
    width: 28px;
    height: 24px;
    display: inline-block;
    position: relative;
}
.hamburger-inner {
    display: block;
    top: 50%;
    margin-top: -2px;
}
.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
    width: 28px;
    height: 3px;
    background-color: #003264;
    border-radius: 4px;
    position: absolute;
    transition-property: transform;
    transition-duration: 0.15s;
    transition-timing-function: ease;
}
.hamburger-inner::before, .hamburger-inner::after {
    content: "";
    display: block;
}
.hamburger-inner::before {
    top: -8px;
}
.hamburger-inner::after {
    bottom: -8px;
}
.hamburger--squeeze .hamburger-inner {
    transition-duration: 0.1s;
    transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--squeeze .hamburger-inner::before {
    transition: top 0.1s 0.14s ease, opacity 0.1s ease;
}
.hamburger--squeeze .hamburger-inner::after {
    transition: bottom 0.1s 0.14s ease, transform 0.1s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--squeeze.is-active .hamburger-inner {
    transform: rotate(45deg);
    transition-delay: 0.14s;
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--squeeze.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0;
    transition: top 0.1s ease, opacity 0.1s 0.14s ease;
}
.hamburger--squeeze.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(-90deg);
    transition: bottom 0.1s ease, transform 0.1s 0.14s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*===== FOOTER =====*/
footer > .contact {
    padding: 4% 0;
}
footer > .contact a {
    font-size: 18px;
}
footer > .contact a span {
    font-size: 11px;
    margin-left: 0.5em;
}
footer > .contact .tel {
    display: block;
    line-height: 1.7;
    width: 85%;
    margin-left: 12%;
}
footer > .contact .tel > * {
    margin: 0;
}
footer > .contact .tel .fa {
    margin-right: 0;
    font-size: 23px;
    width: 35px;
}
footer > .contact .add {
    font-size: 11px;
    line-height: 1.5;
    margin: 4% 10%;
}
footer > .contact .add span {
    display: block;
}
footer > .contact .card img {
    width: 10.2%;
    height: 23px;
    margin: 0 0.5%;
}
footer > .copy {
    font-size: 10px;
    padding: 3% 0;
}

/*===== TOP =====*/
/* top_kv */
    .top_kv h2{
        position: absolute;
        top: 15%;
        left: 7%;
        text-align: center;
        color: #fff;
        font-size: 24px;
        line-height: 1.75;
        font-weight: bold;
    }
    .top_kv span{
        display: block;
        font-size: 18px;
        margin-top: 30px;
    }
    .top_kv a{
        position: absolute;
        bottom: 60px;
        left: 20px;
        padding: 15px 30px;
        background: rgba(98, 185, 109, 1);
        width: 90%;
    }
/* top_check */
.top_check {
    padding: 0;
}
.top_check > .container {
    width: 100%;
    justify-content: baseline;
    padding-bottom: 2%;
}
.top_check .date {
    display: block;
    width: 31.33%;
    margin-left: 2%;
    text-align: center;
}
.top_check > .container > .ttl {
    font-size: 18px;
    margin-right: 40px;
}
.top_check .date .ttl {
    margin: 3% 0 2%;
    font-size: 11px;
}
.top_check .date .ttl .fa {
    margin-right: 0.25em;
}
.top_check .date .input {
    padding: 4% 0;
    height: inherit;
    /* border-radius: 19px; */
}
.top_check .date input {
    width: 5.5em;
    font-size: 14px;
}
.top_check .date .input .fa {
    font-size: 15px;
}
.top_check input[type=submit] {
    width: 31.33%;
    height: 100%;
    padding: 0;
    border-radius: 0;
    font-size: 13px;
    margin-left: 2%;
    position: absolute;
    right: 0;
    top: 0;
}
.top_check > .container:after {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 0 5px 5px;
    border-color: transparent transparent #ffffff transparent;
    position: absolute;
    right: 5px;
    bottom: 5px;
}

/* top_news */
.top_news {
    padding: 7% 0;
}
.top_news > .container {
    display: block;
}
.top_news .ttl {
    font-size: 20px;
    margin-right: 0;
    margin-bottom: 5%;
    text-align: center;
}
.top_news li {
    line-height: 1.5;
    font-size: 14px;
}
.top_news li:not(:last-child) {
    margin-bottom: 2%;
}

/* top_sec */
.top_sec .ttl01 {
    font-size: 30px;
    margin-bottom: 3%;
}
.top_sec .ttl02 {
    font-size: 15px;
}

/* top_about */
.top_about {
    padding: 7% 0;
}
.top_about .img {
    margin: 5% 0;
}
.top_about .btn01 {
    width: inherit;
    height: inherit;
    padding: 15px 0;
    font-size: 14px;
    margin-top: 6%;
}

/* top_advantages */
.top_advantages {
    padding: 7% 0;
}
.top_advantages li {
    margin-top: 5%;
    width: 100%;
}
    .top_advantages li img{
        width: 90px;
    }
    .top_advantages li:first-child img{
        margin: 0;
    }
.top_advantages .fa {
    font-size: 75px;
    margin-bottom: 5%;
}
    .top_sec .ttl02{
        margin-top: 0;
    }
.top_advantages .txt {
    font-size: 12px;
    margin-top: 2%;

}
.top_advantages .btn01 {
    width: 70%;
    height: inherit;
    padding: 8px 0;
    margin-top: 7%;
}

/* top_steps */
.top_steps {
    padding: 7% 0;
}
.top_steps ul {
    margin-top: 5%;
}
.top_steps li:not(:last-child) {
    margin-bottom: 4%;
}
.top_steps .num {
    font-size: 40px;
    margin: 0;
    width: 10%;
}
.top_steps .detail {
    width: inherit;
    margin-right: 0;
    width: 80%;
}
.top_steps .ttl {
    font-size: 15px;
}
.top_steps .ico {
    width: 50px;
    height: 50px;
}
.top_steps .fa {
    font-size: 25px;
}
.top_steps .fa-mobile {
    font-size: 35px;
}
.top_steps .txt {
    line-height: 1.5;
    margin-top: 2%;
}

/* top_prices */
.top_prices {
    padding: 7% 0;
}
.top_prices .ttl01 {
    margin-top: 10px;
}
.top_prices .box {
    display: block;
}
.top_prices .box > * {
    width: 100%;
}
.top_prices .ttl02 {
    margin-bottom: 20px;
}
.top_prices .detail .ttl {
    font-size: 25px;
    margin: 5% 0;
    text-align: center;
}
.top_prices .detail .txt {
    line-height: 1.5;
    margin-top: 1%;
}
.top_prices .detail .txt .fa {
    margin-right: 0.25em;
}
.top_prices .detail .btn01 {
    float: none;
    margin: 5% auto 0;
    display: block;
    width: 60%;
}
.top_prices .btn01 {
    width: 100%;
    padding: 10px 0;
}
.top_prices .days {
    display: block;
    margin: 7% 0 3%;
}
.top_prices .days li {
    width: 100%;
    padding: 0;
}
.top_prices .days li:first-child {
    border-radius: 5px 0 0 5px;
}
.top_prices .days li:last-child {
    border-radius: 0 5px 5px 0;
}
.top_prices .days li:not(:last-child) {
    margin-right: 0;
    margin-bottom: 1px;
}
.top_prices .days > li {
    display: flex;
    align-items: center;
}
.top_prices .days > li > div {
    width: 55%;
}
.top_prices .day {
    font-size: 24px;
    width: 94px;
    height: 94px;
    line-height: 94px;
    margin: 5% 2%;
}
.top_prices .days .btn01 {
    margin: 0;
}
.top_prices .days .txt {
    font-size: 12px;
    padding: 4.5% 0;
}

/* top_fb */
.top_fb {
    padding: 7% 0;
}
.top_fb .fb {
    display: block;
}
.top_fb .fb iframe {
    width: 100%;
}
    .top_fb .reviews ul li img{
        float: none;
        margin: 0 auto;
        display: block
    }

/*===== LOWER =====*/
.lower_ttl {
    font-size: 25px;
    padding: 10% 0;
}

    .faq ul.tab01 li,
    .faq ul.tab02 li,
    .faq ul.tab03 li,
    .faq ul.tab04 li,
    .faq ul.tab05 li,
    .faq ul.tab06 l1,
    .faq ul.tab07 l1,
    .faq ul.tab08 l1{
        float: none;
        width: 100%;
        margin-right: 0;
        padding: 4%;
    }
    .price_calender dl dt,
    .price_calender dl dd{
        width: 16%;
    }

}
@media (max-width: 639px) {
    body {
        font-size: 21px;
    }
}
@media (max-width: 599px) {
    body {
        font-size: 18px;
    }
}
@media (max-width: 479px) {
    body {
        font-size: 16px;
    }
}
@media (max-width: 400px) {
    body {
        font-size: 14px;
    }
}
@media (max-width: 383px) {
    body {
        font-size: 13px;
    }
}
@media (max-width: 359px) {
    body {
        font-size: 11px;
    }
}
@media (max-width: 319px) {
    body {
        font-size: 10px;
    }
}
@media (max-width: 300px) {
    body {
        font-size: 8px;
    }
}
