@charset "UTF-8";
html {
    font-size: 10px;
}
* {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0px;
    padding: 0px;
}
body {
    font-weight: 500;
    font-size: 1.6rem;
    margin: 0px;
    font-family: "Noto Sans Japanese", sans-serif;
    overflow: hidden;
    color: #161d25;
    position: relative;
    min-width: 1120px;
}
a {
    outline: none;
    -webkit-transition: 0.3s ease;
    transition: 0.3s ease;
}
a:focus {
    outline: none;
}
a:hover {
    opacity: 0.8;
}
a[href^="tel:"] {
    pointer-events: none;
}
.container {
    max-width: 980px;
    width: 100%;
    margin: 0px auto;
}
.fade {
    opacity: 0;
    -webkit-transform: translateY(20px);
    transform: translateY(20px);
    -webkit-transition: 1s;
    transition: 1s;
}
.sp {
    display: none !important;
}

#loader-bg {
    display: none;
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px;
   background: url(../images/common/bg_loading.png);
    background-color: f3f4f4;
    background-size: cover;
    background-repeat: repeat;
    z-index: 5;
    
}
#loader-bg::after {
    position: fixed;
    top: 50%;
   left: 50%;
    content: '';
    background-image: url("../images/common/img_logo_roding.png");
    background-repeat: no-repeat;
   width: 162px;
    height: 181px;
     margin-left: -70px;
    margin-top: -90px;
    background-size: 135px auto; 
}
/*
#loader {
    display: none;
    position: fixed;
    top: 50%;
    left: 50%;
    width: 162px;
    height: 181px;
    margin-left: -81px;
    margin-top: -90px;
    text-align: center;
    color: #fff;
    z-index: 5;
}
*/
/*
#loader img {
    opacity: 0.25;
}
*/
#contents-site {
    width: 100%;
}
.header-nav {
/*    max-width: 830px;*/
     max-width: 870px;
    width: 100%;
    margin: 0px auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    z-index: 1;
}
.header-nav-ul:first-of-type {
    max-width: 340px;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.header-nav-ul:last-of-type {
    max-width: 340px;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.header-nav-ul li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    height: 28px;
}
.header-nav-ul li img {
/*    height: 18px;*/
     height: 20px;
}
.header-nav-ul li a {
    text-decoration: none;
    color: #161d25;
    font-size: 2rem;
    font-weight: bold;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    line-height: 30px;
    z-index: 2;
}
.header-nav-ul li:not(.logo_instagram) {
    padding: 0px 10px;
    position: relative;
}
.header-nav-ul li:not(.logo_instagram)::after {
    content: "";
    bottom: 0px;
    right: 0px;
    left: 0px;
    height: 10px;
    background-color: #fefacb;
    position: absolute;
    z-index: 1;
    -webkit-transform-origin: center center;
    transform-origin: center center;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transition: -webkit-transform 0.3s ease;
    transition: -webkit-transform 0.3s ease;
    transition: transform 0.3s ease;
    transition: transform 0.3s ease, -webkit-transform 0.3s ease;
    border-radius: 1px;
}
.header-nav-ul li:not(.logo_instagram):hover::after {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
}
.header-nav-logo {
    position: relative;
    bottom: 26px;
    z-index: 1;
   margin-top: -30px;
}
.header-nav-logo > a {
    display: block;
}
.header-nav-logo > a:hover {
    opacity: 1 !important;
}
.header-nav-logo > a img {
    width: 180px;
}
.header-nav-logo-kaso > a img {
    width: 97px;
}
.header-nav .logo_instagram {
    width: 20px;
    opacity: 1;
    -webkit-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease;
}
.header-nav .logo_instagram:hover {
    opacity: 0.8;
}
.menu-sp {
    display: none;
}
.instagram {
    position: relative;
    background-image: url("../images/common/img_bg_instagram.png");
    background-size: cover;
    background-repeat: no-repeat;
    padding: 50px 0;
    text-align: center;
}
.instagram-container {
    margin: 0 auto;
    max-width: 370px;
    width: 100%;
    height: 175px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-flow: column nowrap;
    flex-flow: column nowrap;
    -webkit-box-pack: space-evenly;
    -ms-flex-pack: space-evenly;
    justify-content: space-evenly;
    border: 5px solid;
    border-image-source: linear-gradient(90deg, #fec053, #f2203e, #b729a8, #5342d6);
    border-image-slice: 1;
    background-color: rgba(255, 255, 255, 0.4);
    padding: 20px 0 30px;
}
.instagram-container > p {
    width: 100%;
    max-width: 270px;
    margin: auto;
    font-family: "Noto Sans JP", noto sans;
    margin-bottom: 20px;
    position: relative;
}
.instagram-container > p:before, .instagram-container > p:after {
    content: "";
    width: 1px;
    height: 40px;
    display: inline-block;
    background-color: #000;
    position: absolute;
    bottom: -6px;
}
.instagram-container > p:before {
    left: -12px;
    -webkit-transform: rotate(-25deg);
    transform: rotate(-25deg);
}
.instagram-container > p:after {
    right: -12px;
    -webkit-transform: rotate(25deg);
    transform: rotate(25deg);
}
.instagram-button {
    margin: 0px auto;
}
.instagram-button img {
    width: 75%;
}
.footer {
    background-color: #e4f2fb;
}
.footer-nav {
    max-width: 830px;
    width: 100%;
    margin: 0px auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    z-index: 1;
}
.footer-nav-ul:first-of-type {
    max-width: 320px;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.footer-nav-ul:last-of-type {
    max-width: 320px;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.footer-nav-ul li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    height: 28px;
    z-index: 0;
}
.footer-nav-ul li img {
    height: 18px;
}
.footer-nav-ul li a {
    text-decoration: none;
    color: #161d25;
    font-size: 2rem;
    font-weight: bold;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    line-height: 30px;
}
.footer-nav-ul li:not(.logo_instagram) {
    padding: 0px 10px;
    position: relative;
}
.footer-nav-ul li:not(.logo_instagram)::after {
    content: "";
    bottom: 0px;
    right: 0px;
    left: 0px;
    height: 10px;
    background-color: #fefacb;
    position: absolute;
    z-index: -1;
    -webkit-transform-origin: center center;
    transform-origin: center center;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transition: -webkit-transform 0.3s ease;
    transition: -webkit-transform 0.3s ease;
    transition: transform 0.3s ease;
    transition: transform 0.3s ease, -webkit-transform 0.3s ease;
    border-radius: 1px;
}
.footer-nav-ul li:hover::after {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
}
.footer-nav-logo {
    position: relative;
    bottom: -50px;
     bottom: -60px;
    z-index: 1;
}
.footer-nav-logo::after {
    content: "";
    position: absolute;
    top: -16px;
    right: -16px;
    bottom: -16px;
    left: -16px;
    background-color: #202d40;
    border-radius: 50%;
    z-index: -1;
}
.footer-nav-logo > a {
    display: block;
    -webkit-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease;
}
.footer-nav-logo > a:hover {
    opacity: 0.8;
}
.footer-nav-logo > a img {
    width: 82px;
}
.footer-nav .logo_instagram {
    width: 20px;
    opacity: 1;
    -webkit-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease;
}
.footer-nav .logo_instagram:hover {
    opacity: 0.8;
}
.footer-section {
    font-family: "Noto Sans JP", noto sans;
    background-color: #202d40;
    padding: 90px 0px 30px;
    font-size: 1.4rem;
    color: white;
}
.footer-section > p {
    display: table;
    margin: auto;
    text-align: center;
     font-weight: 300;
    letter-spacing: 1.2px;
    line-height: 2;
}
.footer-copyright {
    background-color: #233d5e;
}
.footer-copyright > p {
    font-family: "Noto Sans JP", noto sans;
    line-height: 30px;
    color: #919eae;
    font-size: 1.1rem;
    text-align: center;
    letter-spacing: 1.2px;
     font-weight: 300;
}
.buttonFixed {
    position: fixed;
    bottom: 55px;
    right: 15vw;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    z-index: 10;
}
.buttonFixed a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.buttonFixed a#button {
    line-height: 50px;
    width: 200px;
    font-size: 1.9rem;
    font-family: "Noto Sans JP", noto sans;
    color: white;
    text-decoration: none;
    background-color: #850a0c;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.buttonFixed a.button-tsuhan {
    margin-right: 10px;
    background-color: #9c8625;
}
.buttonFixed a#button.button-tsuhan {
 background-color: #9c8625;
}

.buttonFixed a#button > * {
    display: block;
}
.buttonFixed a#button span {
    letter-spacing: 0.12rem;
}
.buttonFixed a#button img {
    width: 22px;
    height: 24px;
    margin-right: 7px;
    padding-top: 2px;
}
#backtop {
    height: 50px;
    width: 45px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    margin-left: 15px;
    padding: 16px 8px 0px;
}
#backtop::after {
    content: "";
    position: absolute;
    top: 0px;
    right: 0px;
    bottom: 0px;
    left: 0px;
    z-index: -1;
    background-color: #161d25;
    opacity: 1;
    -webkit-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease;
}
#backtop span {
    display: block;
    width: 50%;
    position: relative;
    z-index: 0;
    overflow: hidden;
}
#backtop span::after {
    position: absolute;
    top: 0px;
    height: 3px;
    left: 0px;
    width: 100%;
    content: "";
    background-color: white;
    -webkit-transition: -webkit-transform 0.3s ease;
    transition: -webkit-transform 0.3s ease;
    transition: transform 0.3s ease;
    transition: transform 0.3s ease, -webkit-transform 0.3s ease;
    border-radius: 1.5px;
}
#backtop span:first-of-type::after {
    -webkit-transform-origin: right top;
    transform-origin: right top;
    -webkit-transform: rotate(-40deg);
    transform: rotate(-40deg);
}
#backtop span:last-of-type::after {
    -webkit-transform-origin: left top;
    transform-origin: left top;
    -webkit-transform: rotate(40deg);
    transform: rotate(40deg);
}
#backtop.showBacKtop {
    opacity: 1;
    visibility: visible;
}
#backtop:hover::after {
    opacity: 0.8;
}
#backtop:hover span:first-of-type::after {
    -webkit-transform: rotate(-50deg);
    transform: rotate(-50deg);
}
#backtop:hover span:last-of-type::after {
    -webkit-transform: rotate(50deg);
    transform: rotate(50deg);
}
/* SP */
@media screen and (max-width: 430px) {
    .pc {
        display: none !important;
    }
    .sp {
        display: block !important;
    }
    body {
        min-width: auto;
    }
    a[href^="tel:"] {
        pointer-events: auto;
    }
/*
    #loader {
        width: 81px;
        height: 90px;
        margin-left: -40px;
        margin-top: -45px;
    }
*/
/*
    #loader img {
        width: 100%;
        height: auto;
    }
*/

    #loader-bg::after {
/*
    position: fixed;
    top: 50%;
   left: 50%;
*/
    width: 81px;
        height: 90px;
     margin-left: -40px;
        margin-top: -45px;
    background-size: 81px auto; 
}
    .header {
        position: fixed;
        top: 84px;
        left: 0;
        z-index: 1000;
    }
    .header-nav {
        max-width: 100%;
    }
    .header-nav-ul {
        max-width: 100% !important;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
    .header-nav-ul li {
        height: 55px;
        width: 50%;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
    .header-nav-ul li:not(.logo_instagram)::after {
        display: none;
    }
    .header-nav-ul li.bg-blue {
        background-color: #E4F3FB;
    }
    .header-nav-ul li.bg-lightblue {
        background-color: #F8FCFE;
    }
    .header-nav .contact {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        width: 100%;
        height: 55px;
        background-color: #840A0B;
        color: #fff;
        font-size: 1.7rem;
        font-weight: bold;
    }
    .header .nav-btn {
        display: -webkit-box !important;
        display: -ms-flexbox !important;
        display: flex !important;
        width: 52px;
        height: 52px;
        background-color: #000;
        position: fixed;
        top: 17px;
        right: 10px;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }
    .header .nav-btn span.bar {
        width: 19px;
        height: 2px;
        display: inline-block;
        position: relative;
        background-color: #fff;
        margin-top: 10px;
    }
    .header .nav-btn span.bar:before, .header .nav-btn span.bar:after {
        content: "";
        display: inline-block;
        position: absolute;
        width: 100%;
        height: 100%;
        left: 0;
        background-color: #fff;
    }
    .header .nav-btn span.bar:before {
        top: -8px;
    }
    .header .nav-btn span.bar:after {
        bottom: -8px;
    }
    .header .nav-btn span.text {
        font-size: 1.2rem;
        color: #fff;
        margin-top: 16px;
    }
    .header-nav-logo a img {
        width: 49%;
    }
    .menu-sp {
        display: block;
    }
    .menu-sp input {
        display: none;
    }
    .menu-sp {
        position: fixed;
        z-index: 1;
        top: 0;
        right: 0;
    }
    /*menuコンテンツ*/
    .menu-sp .menu {
        position: fixed;
        top: 0;
        left: 0;
        width: 100vw;
        height: 100vh;
        background: rgba(11, 11, 11, 0.7);
    }
    .menu-sp .menu label {
        position: absolute;
        top: 20px;
        right: 20px;
        width: 30px;
        height: 30px;
        cursor: pointer;
        background-size: 100%;
    }
    .menu-sp .menu .menucont {
        font-size: 54px;
        position: relative;
        top: 50%;
        margin-top: -170px;
        padding-bottom: 20px;
        text-align: center;
    }
    .menu-sp .menu ul {
        margin: 0 auto;
        padding: 0;
        list-style: none;
    }
    .menu-sp .menu ul li, .menu-sp .menu ul li a {
        -webkit-transition: all 0.3s ease;
        transition: all 0.3s ease;
    }
    .menu-sp .menu ul li a {
        display: block;
        padding: 10px 0;
        color: #ffffff;
    }
    .menu-sp .menu ul li a:hover {
        color: #ff0844;
    }
    .menu-sp .menu ul li:hover {
        background: #ffffff;
    }
    /*クリックしたらメニューが開閉の動作*/
    .menu-sp .menuEffects {
        visibility: hidden;
        -webkit-transition: opacity 0.5s, visibility 0.5s;
        transition: opacity 0.5s, visibility 0.5s;
        opacity: 0;
    }
    .menu-sp .menuEffects ul {
        -webkit-transition: all 0.5s;
        transition: all 0.5s;
        -webkit-transform: translateY(0%);
        transform: translateY(0%);
    }
    .menu-sp #menuToggle:checked ~ .menuEffects {
        visibility: visible;
        -webkit-transition: opacity 0.5s;
        transition: opacity 0.5s;
        opacity: 1;
    }
    .menu-sp #menuToggle:checked ~ .menuEffects ul {
        opacity: 1;
    }
    .menu-sp #menuToggle:checked ~ .hamburger .open {
        background-color: transparent;
    }
    .menu-sp #menuToggle:checked ~ .hamburger .open:before {
        position: absolute;
        z-index: 1;
        top: 0;
        right: 0;
        content: '';
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        background-color: #ffffff;
    }
    .menu-sp #menuToggle:checked ~ .hamburger .open:after {
        position: relative;
        z-index: 1;
        top: 0;
        right: 0;
        content: '';
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
        background-color: #ffffff;
    }
    .menu-sp #menuToggle:not(:checked) ~ .menuEffects ul {
        -webkit-transform: translateY(-30%);
        transform: translateY(-30%);
    }
    /*ハンバーガー*/
    .menu-sp .hamburger {
        position: relative;
        top: 8px;
        right: 8px;
        display: block;
        width: 50px;
        height: 50px;
        z-index: 1;
        cursor: pointer;
        background-color: #333;
    }
    .menu-sp .open, .menu-sp .open:before, .menu-sp .open:after {
        position: relative;
        display: block;
        width: 22px;
        height: 3px;
        border-radius: 2px;
        background-color: #fff;
        -webkit-transition: all 0.3s ease;
        transition: all 0.3s ease;
    }
    .menu-sp .open {
        top: 18px;
        cursor: pointer;
        left: 15px;
    }
    .menu-sp .open:before {
        top: -8px;
        content: '';
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    .menu-sp .open:after {
        top: 5px;
        content: '';
    }
    .menu-wrap {
        top: 70px;
        position: absolute;
    }
    .menu-sp .hamburger span.text {
        font-size: 1rem;
        color: #fff;
        margin-top: 8px;
        text-align: center;
        font-style: italic;
        bottom: 5px;
        position: absolute;
        left: 21%;
        font-family: "Times New Roman", "ヒラギノ明朝 ProN W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        font-weight: bold;
    }
    .menu-sp #menuToggle:checked ~ .hamburger span.text.m-open {
        visibility: hidden;
        opacity: 0;
    }
    .menu-sp #menuToggle:checked ~ .hamburger span.text.m-close {
        visibility: visible;
        opacity: 1;
    }
    .menu-sp #menuToggle ~ .hamburger span.text.m-close {
        visibility: hidden;
        opacity: 0;
    }
    .instagram {
        padding: 75px 0px;
        background-image: url(../images/common/img_bg_instagram_sp.png);
    }
    .instagram-container {
        width: 100%;
        max-width: 280px;
        height: 130px;
        border: 3px solid;
        border-image-source: linear-gradient(90deg, #fec053, #f2203e, #b729a8, #5342d6);
        border-image-slice: 1;
        padding: 20px 0 30px;
    }
    .instagram-container > p {
        font-size: 1.2rem;
        max-width: 200px;
        margin-bottom: 10px;
    }
    .footer-nav-ul {
        max-width: 100% !important;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
    .footer-nav-ul li {
        height: 55px;
        width: 50%;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
    .footer-nav-ul li:not(.logo_instagram) {
        padding: 0px 10px;
        position: relative;
    }
    .footer-nav-ul li:not(.logo_instagram)::after {
        display: none;
    }
    .footer-nav-ul li.bg-blue {
        background-color: #E4F3FB;
    }
    .footer-nav-ul li.bg-lightblue {
        background-color: #F8FCFE;
    }
    .footer-nav-logo {
        bottom: 0;
    }
    .footer-nav-logo::after {
        display: none;
    }
    .footer-nav-logo > a img {
        width: 55px;
        height: auto;
        margin-bottom: 20px;
    }
    .footer-section {
        padding: 15px 0px;
        font-size: 1.2rem;
        text-align: center;
    }
    .buttonFixed {
        bottom: 55px;
        right: 10px;
    }
    .buttonFixed a#button {
        height: 32px;
        width: 120px;
        font-size: 1.1rem;
    }
    .buttonFixed a#button img {
        width: 15px;
        height: auto;
        margin-right: 5px;
    }
    #backtop {
        height: 32px;
        width: 27px;
        padding: 13px 8px 0px;
    }
    #backtop span::after {
        height: 2px;
    }
}
.corona {
	text-align: center;
	background: #f1d3d0;
	padding: 20px 40px;
    width: 700px;
    margin: 0 auto 60px;
    line-height: 1.5;
}
@media screen and (max-width: 430px) {
   .corona {
    width: 100%;
}     
}