    body {
        font-family: "ヒラギノ丸ゴ Pro W4", "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "HG丸ｺﾞｼｯｸM-PRO", "HGMaruGothicMPRO";
        font-size: 14px;
    }
    
    header.topimg {
        position: relative;
        overflow: hidden;
        background: #1EAAB8;
    }
    
    body.is-preload *,
    body.is-preload *:before,
    body.is-preload *:after {
        -moz-animation: none !important;
        -webkit-animation: none !important;
        -ms-animation: none !important;
        animation: none !important;
        -moz-transition: none !important;
        -webkit-transition: none !important;
        -ms-transition: none !important;
        transition: none !important;
    }
    
    header.topimg img {
        -moz-animation: overlay 0.3s 0.3s forwards;
        -webkit-animation: overlay 0.3s 0.3s forwards;
        -ms-animation: overlay 0.3s 0.3s forwards;
        animation: overlay 0.3s 0.3s forwards;
        opacity: 0;
    }
    
    @-moz-keyframes overlay {
        0% {
            opacity: 0;
        }
        100% {
            opacity: 1;
        }
    }
    
    @-webkit-keyframes overlay {
        0% {
            opacity: 0;
        }
        100% {
            opacity: 1;
        }
    }
    
    @-ms-keyframes overlay {
        0% {
            opacity: 0;
        }
        100% {
            opacity: 1;
        }
    }
    
    .halfandhalf {
        display: inline-block;
        max-width: 48%;
        vertical-align: top;
        overflow: hidden;
        text-align: center;
    }
    
    .halfandhalf h2 {
        font-size: 1.1em;
        font-weight: bolder;
    }
    
    .halfandhalf p {
        font-size: 0.8em;
        text-align: left;
        padding: 0.5em;
    }
    
    @keyframes overlay {
        0% {
            opacity: 0;
        }
        100% {
            opacity: 1;
        }
    }
    
    header.topimg #bg {
        -moz-animation: bg 60s linear infinite;
        -webkit-animation: bg 60s linear infinite;
        -ms-animation: bg 60s linear infinite;
        animation: bg 60s linear infinite;
        -moz-backface-visibility: hidden;
        -webkit-backface-visibility: hidden;
        -ms-backface-visibility: hidden;
        backface-visibility: hidden;
        -moz-transform: translate3d(0, 0, 0);
        -webkit-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        /* Set your background with this */
        background: #348cb2 url("img/bg.png") bottom left;
        background-repeat: repeat;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
    }
    
    @-moz-keyframes bg {
        0% {
            -moz-transform: translate3d(0, 0, 0);
            -webkit-transform: translate3d(0, 0, 0);
            -ms-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
        100% {
            -moz-transform: translate3d(-2250px, 0, 0);
            -webkit-transform: translate3d(-2250px, 0, 0);
            -ms-transform: translate3d(-2250px, 0, 0);
            transform: translate3d(-2250px, 0, 0);
        }
    }
    
    @-webkit-keyframes bg {
        0% {
            -moz-transform: translate3d(0, 0, 0);
            -webkit-transform: translate3d(0, 0, 0);
            -ms-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
        100% {
            -moz-transform: translate3d(-2250px, 0, 0);
            -webkit-transform: translate3d(-2250px, 0, 0);
            -ms-transform: translate3d(-2250px, 0, 0);
            transform: translate3d(-2250px, 0, 0);
        }
    }
    
    @-ms-keyframes bg {
        0% {
            -moz-transform: translate3d(0, 0, 0);
            -webkit-transform: translate3d(0, 0, 0);
            -ms-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
        100% {
            -moz-transform: translate3d(-2250px, 0, 0);
            -webkit-transform: translate3d(-2250px, 0, 0);
            -ms-transform: translate3d(-2250px, 0, 0);
            transform: translate3d(-2250px, 0, 0);
        }
    }
    
    @keyframes bg {
        0% {
            -moz-transform: translate3d(0, 0, 0);
            -webkit-transform: translate3d(0, 0, 0);
            -ms-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
        }
        100% {
            -moz-transform: translate3d(-2250px, 0, 0);
            -webkit-transform: translate3d(-2250px, 0, 0);
            -ms-transform: translate3d(-2250px, 0, 0);
            transform: translate3d(-2250px, 0, 0);
        }
    }
    
    header.topimg .bghidden {
        -moz-animation: overlay2 1.0s 1.0s forwards;
        -webkit-animation: overlay2 1.0s 1.0s forwards;
        -ms-animation: overlay2 1.0s 1.0s forwards;
        animation: overlay2 1.0s 1.0s forwards;
        opacity: 0;
    }
    
    @-moz-keyframes overlay2 {
        0% {
            opacity: 0;
        }
        100% {
            opacity: 1;
        }
    }
    
    @-webkit-keyframes overlay2 {
        0% {
            opacity: 0;
        }
        100% {
            opacity: 1;
        }
    }
    
    @-ms-keyframes overlay2 {
        0% {
            opacity: 0;
        }
        100% {
            opacity: 1;
        }
    }
    
    @keyframes overlay2 {
        0% {
            opacity: 0;
        }
        100% {
            opacity: 1;
        }
    }
    
    header.topimg #bg {
        background-size: 2250px auto;
        width: 6750px;
    }
    
    .main {
        text-align: center;
        background-color: #fff;
    }
    
    .topimg {
        padding: 2rem 0;
        text-align: center;
        color: #FFFFFF;
        /* width: 100VW; */
    }
    
    .main h2,
    .main p,
    .main div.row .colmun p {
        text-align: center;
    }
    
    footer {
        padding-top: 2em;
        padding-bottom: 2em;
        background-color: #333;
    }
    
    footer p {
        margin: 0 auto;
        text-align: center;
        width: 130px;
        color: #FFFFFF;
    }
    
    hr.yellow {
        border-top: 0.1rem solid #FFD50C;
    }
    
    .txtbox {
        padding: 2em 0;
        text-align: center;
    }
    
    .button-large {
        font-size: 1.4rem;
        height: 4.5rem;
        line-height: 4.5rem;
        padding: 0 2rem;
    }
    
    .socallinks ul {
        text-align: center;
        margin: 0 0 2rem 0;
        padding: 0;
    }
    
    .socallinks ul li {
        border-radius: 50%;
        background-color: #e6eae3;
        display: inline-block;
        width: 3em;
        height: 3em;
        vertical-align: middle;
        margin: 0.3em;
        padding: 0;
        list-style-type: none;
    }
    
    .socallinks ul li a {
        fill: #222;
    }
    
    .socallinks ul li:hover {
        background-color: #000;
        transition: 0.3s;
    }
    
    .socallinks ul li a:hover {
        fill: #fff;
        transition: 0.3s;
    }
    
    .row .columncolor {
        border: 1px solid #2677AC;
        padding: 0 2rem;
        margin: 2rem 0;
        border-radius: 2em;
    }
    
    .qrbox {
        display: none;
    }
    
    .button.button-black {
        border: 0.1rem solid #007A77;
        background-color: #fff;
        border-left: 0.3rem solid #007A77;
        border-color: #007A77;
        color: #007A77;
    }
    
    .button.button-black:hover {
        background-color: #797979;
        border-color: #007A77;
        color: #fff;
        outline: 0;
    }
    
    .button.button-red {
        border: 0.1rem solid #D2654A;
        background-color: #fff;
        border-left: 0.3rem solid #D2654A;
        border-color: #D2654A;
        color: #D2654A;
    }
    
    .button.button-red:hover {
        background-color: #ff6e75;
        border-color: #D2654A;
        color: #fff;
        outline: 0;
    }
    
    .button-small {
        font-size: .8rem;
        height: 2.8rem;
        line-height: 2.8rem;
        padding: 0 1.5rem;
    }
    
    @media (min-width: 40rem) {
        .row .columncolor {
            padding: 0 2rem;
            margin: 2rem 2rem;
            border-radius: 2em;
        }
        .qrbox {
            display: block;
        }
        .qrbox img,
        .qrbox p {
            margin: 0;
            padding: 0;
            vertical-align: middle;
            display: inline-block;
        }
    }