﻿/*-------------------------------------------------
個別
---------------------------------------------------*/
@import url('https://fonts.googleapis.com/css2?family=Josefin+Sans:wght@500&family=Noto+Serif+JP:wght@500&display=swap');
.font_serif, .cate_title, .sub_cate_title, #intro .intro_txt h2, .box_title1, .box_title, .cms_5-c .box_txt1::before, #cms_5-c .box_txt1::before, #top_contents2 h3 span, .top_cms_title h4,#top_cms .top_cms_box .more a,#main_nav li a span:nth-child(1), .sc_nav li a span:nth-child(1),#page_title h2,.catch {
    font-family: 'Noto Serif JP', "游明朝", "YuMincho", "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "Sawarabi Mincho", "serif";
}
#main_nav li, .sc_nav li {
    text-align: center;
}
#main_nav li a span:nth-child(1), .sc_nav li a span:nth-child(1) {
    font-weight: bold;
}
#main_nav li a span:nth-child(2), .sc_nav li a span:nth-child(2) {
    display: block;
    font-size: 14px;
    text-align: center;
    margin-top: -6px;
}
.catch {
    color: #fff;
    z-index: 1;
    bottom: 15%;
    right: 4%;
}
h1 img {
    max-width: 250px;
}
#intro .intro_txt {
    padding-top: 100px;
    padding-bottom: 50px;
    width: 80%!important;
    background-color: transparent;
    border: solid 1px #1a1a1a;
}
#intro .intro_txt h2 {
    transform: none;
    padding: 0 20px 20px;
    margin-bottom: 30px;
    font-size: 30px;
    letter-spacing: 3px;
    background-color: transparent;
    line-height: 1.5;
    position: relative;
}
.intro_bg{
    background-image: url(./Dup/img/intro_bg.png);
    background-size: 1200px;
    background-repeat: repeat-x;
    background-position-y: calc(100% - 70px);
    background-position-x: 0;
    animation: intro 40s linear infinite;
    width: 100%;
    height: 100%;
    opacity: 0.1;
}
@keyframes intro{
0% {
    background-position-x: 0;
}
100% {
    background-position-x: -2000px;
}
}
@keyframes huwahuwa{
   0% {transform :translateY(0);
} 
100% {
 transform :translateY(-15px);
}

}
.dec1{
    left: 50%;
        transform: translateX(-50%);
bottom: 0px;
    opacity: 0.2;
}
.dec2{
    max-width: 300px;
    transform: translate(-50%, -50%);
    left: 50%;
    top: 100%;
}
.dec3{
        z-index: 2;
    top: -100%;
    opacity: 0.5;
}
#top_contents1 .contents1_txt h3{text-shadow: none;}
#top_contents2 h3 span{background-color: transparent;}
#top_contents2 h3::after,#top_contents2 h3::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 18%;
    height: 1px;
    border-top: 1px solid;
    z-index: 1;
}
#top_contents2 h3::before{
    right: 0;
    left: inherit;
}
footer{background-color: #141414!important;}
footer,footer #footer #footer_links li a{color: #fff;}
#line_animation1 path,#line_animation2 path,#line_animation3 path{
     fill: none;
     stroke: #ffffff;
     stroke-width: 26;
     stroke-linejoin: bevel;
     stroke-miterlimit: 10;
}
#page-top{background-color: #fff;}
.linkStyle{color: #0066cc;}
/*-------------------------------------------------
下層
---------------------------------------------------*/
#page_title {
    color: #fff;
    text-shadow: 2px 3px 5px rgb(0 0 0 / 50%);
        filter: grayscale(0%)!important;
}
#page_title .dec1{
left: 5%;
    top: 50%;
    opacity: 0.4;
}



/*-------------------------------------------------
tab
-----------------------------------------------------*/
@media screen and (max-width: 768px){
#menu_bt > div span {
    height: 1px;
    margin-bottom: 8px;
}
#menu_bt.active > div span:nth-of-type(1) {
    transform: translateY(-1px) rotate(
45deg
);
}
}



/*-------------------------------------------------
sp
-----------------------------------------------------*/
@media screen and (max-width: 667px){
    #loader .logo{max-width: 200px;}
    #page_title .dec1 {
    top: 20%;
}
#intro .intro_txt{
        padding-top: 50px;
    width: 100%!important;
    border-right: none;
    border-left: none;
}
.intro_bg{
    background-size: 600px;
    animation: intro 50s linear infinite;
}
#intro .intro_txt h2{font-size: 24px;}
#top_contents2 h3::after, #top_contents2 h3::before{width: 8%;}
.pager li.prev{margin-right: 0!important;}
}


/*-------------------------------------------------
IE
-----------------------------------------------------*/
@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none){
.dec1{bottom: -40px;}
.dec3{top: -40%;}
#page_title .dec1{
    left: 20%;
    top: 50%;
    bottom: inherit;
}
.catch{
    bottom: 5%!important;
    right: 15%!important;
}

}


/*-------------------------------------------------
Firefox
-----------------------------------------------------*/
@-moz-document url-prefix(){

}