@charset "utf-8";

/* CSS INFORMATION -====================================================
File name : base.css
Description :
===================================================================== */

/* =====================================================================
*    共通・大枠
* =================================================================== */
html {
    font-size: calc(10 / 750 * 100vw);
}

@media screen and (min-width: 768px) {
    html {
        font-size: calc(10 / 1300 * 100vw);
    }
}

@media screen and (min-width: 1300px) {
    html {
        font-size: 10px;
    }
}

.gDef-contents {
    color: #000;
    font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
    line-height: 1.5;
    background-color: #f8f8f8;
}

.gDef-contents * {
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.gDef-contents img {
    width: 100%;
    height: auto;
    display: block;
}

.gDef-contents a {
    display: block;
    text-decoration: none;
    -webkit-transition : all .2s ease 0s;
    transition : all .2s ease 0s;
}

@media screen and (min-width: 768px) {
    .gDef-contents a {
        -webkit-transition: all .2s ease 0s;
        transition: all .2s ease 0s;
    }

    .gDef-contents a:hover {
        -webkit-transition: all .2s ease 0s;
        transition: all .2s ease 0s;
    }
}

@media screen and (max-width: 767px) {
    .pc {
        display: none !important;
    }
}

@media screen and (min-width: 768px) {
    .sp {
        display: none !important;
    }
}

.inner {
}

.sec_ttl {
    width: calc(650 / 750 * 100%);
    margin: 0 auto ;
    padding: calc(75 / 750 * 100%) 0 calc(90 / 750 * 100%);
    border-top: solid 3px #093389;
}

.sec_ttl img {
    width: calc(220 / 650 * 100%);
    margin: 0 auto;
}

@media screen and (min-width: 768px) {
    #wrapper {
       
    }
    
    .inner {
        width: 100%;
        max-width: 1300px;
        margin: 0 auto;
    }
    
    .sec_ttl {
        width: 100%;
        padding: calc(25 / 290 * 100%) 0 calc(17 / 290 * 100%);
    }
    
    .sec_ttl img {
        width: calc(158 / 290 * 100%);
        margin: 0 auto;
    }
    
}

@media screen and (min-width: 1300px) {
}


/* =====================================================================
*    header
* =================================================================== */
.header {
}

.header_ttl {
    padding: calc(50 / 750 * 100%) 0 0;
}

@media screen and (min-width: 768px) {
    .header_box {
        width: calc(1200 / 1300 * 100%);
        margin: 0 auto;
    }
    
    .header_ttl {
        padding: calc(33 / 1200 * 100%) 0 0;
    }
}

@media screen and (min-width: 1300px) {
}


/* =====================================================================
*    footer
* =================================================================== */
.footer {
}

.pagetop {
    position: relative;
    z-index: 2;
}
.pagetop a {
    width: calc(340 / 750 * 100%);
    margin: 0 auto calc(-40 / 750 * 100%);
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: #0a348a;
    padding:0.4em 0;
    font-size:2.8rem;
    font-family: "游明朝", YuMincho, "Noto Serif JP", "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    color:#fff;
    border-radius: 1.5em;
    text-align: center;
    display: block;
    border:solid 4px #0a348a;
}

.footer_box {
    padding: calc(100 / 750 * 100%) calc(60 / 750 * 100%);
    background-image: linear-gradient(125deg, rgb(255,210,198) 0%, rgb(255,222,232) 50%, rgb(180,242,221) 100%);
}

.footer small {
    display: block;
    color: #0a348a;
    font-size: 2.4rem;
    line-height: 1;
    text-align: center;
}

@media screen and (min-width: 768px) {
    .footer {
    }
    
    .pagetop {
        max-width: 1300px;
        width: 100%;
        margin: 0 auto;
    }
    
    .pagetop a {
        font-size: 1.4rem;
        width: calc(200 / 1300 * 100%);
        margin: 0 auto calc(-20 / 1300 * 100%);
    }
    
    .pagetop a:hover {
        background-color: #fff;
        border:solid 4px #0a348a;
        color:#0a348a;
    }
    
    .footer_box {
        padding: calc(93 / 1300 * 100%) 0;
    }
    
    .footer small {
        font-size: 1.4rem;
        padding: 0;
    }
}

@media screen and (min-width: 1300px) {
    .footer_box {
        padding: 93px 0;
    }
}
