﻿
/*@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP&display=swap');*/
@import url('https://fonts.googleapis.com/css2?family=Josefin+Sans&display=swap');

body{
    /*font-family: "游明朝", "YuMincho", "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "Sawarabi Mincho", 'Noto Serif JP', "serif"!important;*/
}

#loader{
    background-image: url('./Dup/img/bg2.png');
}
#loader img{
    max-width: 150px;
}

#pc_nav ul.bg_white{
    
}

#pc_nav ul:first-of-type {
    border-radius: 0;
}
#pc_nav ul:last-of-type {
    border-radius: 0;
}
#sp_nav a.active {
    border-bottom: 1px solid #ffffff;
}
#sp_nav nav {
    
}

#main_img .txt, #page_title, #f_contact .con_txt{
    /*font-family: "游明朝", "YuMincho", "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "Sawarabi Mincho", 'Noto Serif JP', "serif"!important;*/
}

#video video {
    vertical-align: middle;
}
#video::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-image: url(./Dup/img/dott.png);
    background-position: left top;
    background-repeat: repeat;
    background-size: 3px auto;
    z-index: 1;
}

#main_img h2 {
    line-height: 1.15;
    font-size: 74px;
    letter-spacing: 12px;
    font-weight: bold;
    text-shadow: 0 0 10px #006bc3, 0 0 15px #006bc3;
}

#main_img p {
    letter-spacing: 5px;
    color: #eeeeee;
    font-weight: bold;
    font-size: 22px;
    text-shadow: 0 0 10px #006bc3, 0 0 15px #006bc3;
}

#intro h2, #contents1 h2, #contents2 h2, #top_cms h2, #top_info h2, #f_contact .con_bt, .more_bt a, #top_info .more_bt2 a,
#page_title h2 span, .cms_1-f .cate_box .date, #cms_1-f .cate_box .date{
    font-family: "Josefin Sans";
}

#intro .intro_bg {
    background-image: url(./Dup/img/bg1.png);
}
#intro .more_bt a{
    font-family: 'Roboto', "Noto Sans JP";
}

p.num2{
    font-size: 20px;
    font-style: italic;
    font-family: "Josefin Sans";
    font-weight: bold;
    letter-spacing: 4px;
}
p.num2 span{
    font-size: 30px;
}

#top_info > h2{
    /*display: none;*/
}

#contents1 span{
    background-image: url(./Dup/img/bg2.png);
}

#contents2 .cate_box.bg_white{
    background-color: rgba(255,255,255,0.9);
}

#top_cms{
    position: relative;
}
#top_cms::after{
    position: absolute;
    content: '';
    width: 50%;
    height: 100%;
    background-image: url(./Dup/img/bg2.png);
    top: 0;
    left: 0;
    opacity: 0.6;
    z-index: -1;
}

#f_contact::before{
    opacity: 0.1;
}
#f_contact a span.hover_box{
    background-color: rgba(0,107,195,0.4);
}

footer{
    background-color: #f7f7f7;
}

#page-top > a{
    border-radius: 0;
}

#page8 .contact_tel {
    
}
#page10 .more_bt2 h2 span{
    color: #666;
    font-weight: normal;
}

.cms_1-f .cate_box,
.cms_2-c .cate_box,
#cms_2-c .cate_box{
    position: relative;
    background-color: #f7f7f7;
}
.cms_1-f .cate_box::after,
.cms_2-c .cate_box::after,
#cms_2-c .cate_box:not(.no_line)::after{
    content:'';
    position: absolute;
    top: 0;
    left: 0;
    width: calc(100% - 2px);
    height: 0;
    border: 1px solid #006bc3;
    opacity: 0.4;
}




@media screen and (min-width:769px){

}

@media screen and (max-width: 768px){
    #header .inner{
        
    }
    #main_img {
        padding-top: 90px;
    }
    #main_img h2 {
        font-size: 42px;
    }
    #main_img p {
        font-size: 20px;
    }
}

@media screen and (max-width: 667px){
    .load_logo figure {
        max-width: 180px;
        margin: 0 auto;
    }
    #main_img{
        padding-top: 65px;
    }
    #main_img .txt{
    width: 100%!important;
    padding: 20px 10px;
    box-sizing: border-box;
    top: 0;
    left: 0;
    }
    #main_img h2 {
        font-size: 20px;
    }
    #main_img p {
        width: 100%!important;
        font-size: 14px;
    }
}

@media all and (-ms-high-contrast:none){
.more_bt a{
    padding: 8px 0 2px;
}
}

/* アニメーション */
.fadein{
     opacity: 0;
     transform: translateY(20px);
     transition: 1.5s;
     transition-property: opacity,transform
}
.fadein.fadetrans{
     opacity: 1;
     transform: none
}
.fadein2{
     position: relative
}
.fadein2 .fadein2_filter{
    top: -5px;
    right: 0;
    transition: 0.4s;
    transition-delay:0.4s;
    transition-property: width;
    background: #006bc3;
    background-image: none;
    z-index: 1;
}
.fadein2 .fadein2_filter2{
    top: -5px;
    right: 0;
    transition: 0.4s;
    transition-delay:0.2s;
    transition-property: width;
    background: #f7f7f7;
    background-image: none;
    z-index: 1;
}
.fadein2 .fadein2_filter.fadetrans{
     width: 0!important
}
.fadein2 .fadein2_filter2.fadetrans{
     width: 0!important
}

canvas{
    position: absolute;
    bottom: -50px;
    left:0;
    width: 100%;
}