﻿@font-face {
font-family: "gennei";
  src: url("./Dup/img/gennei.ttf") format("ttf"),url("./Dup/img/gennei.eot") format("eot"),url("./Dup/img/gennei.woff") format("woff"),url("./Dup/img/gennei.woff2") format("woff2");
}
.font1{font-family: "gennei","sans-serif";}
/*--------------------------------
疑似要素にオブジェクト
--------------------------------*/
footer,#main_img,#main_img > div,#intro,#contents_links,#contents,#page_title{position: relative;}
/*リピートなし*/
footer:before,#main_img:before,#main_img:after,#main_img > div:before,#intro:before,#intro:after,#contents_links:before,#contents:after,
#page_title:before{
content: "";
display: block;
background-size: cover;
background-repeat: no-repeat;
position: absolute;
}

footer:before,#intro:before,#intro:after,
#contents_links:before,#contents:after,
#page_title:before{
background-image: url(./Dup/img/bg.png);
background-size: 1900px;
background-repeat-x: repeat;
width: 100%;
height: 100px;
left: 0;
}
footer:before,#intro:before{top: -80px;transform: scale(1, -1);}
#intro:after,#contents:after,#page_title:before{bottom: -80px;}
#contents_links:before{transform: scale(1, -1);bottom: -15px;}

footer:before,#contents_links:before,#contents:after,#page_title:before{z-index: 4;}


#main_img:before{
background-image: url(./Dup/img/catch.png);
background-size: 100%;
width: 34vw;
height: 24vw;
top: 15%;
left: 5%;
z-index: 2;
}
#main_img:after{
background-image: url(./Dup/img/obj1.png);
background-size: 100%;
width: 24vw;
height: 24vw;
top: 30%;
left: 0;
-webkit-animation: rotate 20s linear infinite;
animation: rotate 20s linear infinite;
}
#main_img > div:before{
background-image: url(./Dup/img/obj1.png);
background-size: 100%;
width: 15vw;
height: 15vw;
top: 7%;
left: 27%;
-webkit-animation: rotate 30s linear infinite;
animation: rotate 30s linear infinite;
z-index: 1;
}
@keyframes rotate{
    from {transform: rotate(0deg);}
    to {transform: rotate(-360deg);}
}

/*--------------------------------
全体
--------------------------------*/
h1 img{max-width: 300px;}
#sub_menu{background-color: #dedede;}
#sub_menu li,#sub_menu li a{color: #333;}
/*--------------------------------
TOP
--------------------------------*/
#main_img{height: 88vh;}
#main_img #catch{background-color: #000000;width: auto;padding: 20px;top: 65%;}
#main_img #catch h2{
position: static;
top: auto;
left: auto;
border: none;
font-size: 50px;
line-height: 1;
}
#intro_title{z-index: 1;}
#intro{background-color:#f1f1f1;}
/*--------------------------------
下層
--------------------------------*/

/*IEのみ*/
@media all and (-ms-high-contrast: none) {
    
#tel_txt h3{padding-bottom: 0;}
#tel_txt p{padding-bottom: 15px;}
#cms_1-e .date{padding-top: 10px!important;padding-bottom: 10px!important;}
}

@media  screen and (max-width: 1280px){
#main_img{height: 70vh;}
}

@media  screen and (max-width: 1200px){
#main_img{height: 65vh;}
}

@media  screen and (max-width: 1000px){
#main_img{height: 60vh;}
}

/*タブレット用（768px以下）
--------------------------------------------------------------------------*/
@media  screen and (max-width: 768px){
#main_img{height: 40vh;}

#contents .d_flex > div{padding: 50px;}
footer:before,#intro:before,#intro:after,
#contents_links:before,#contents:after,
#page_title:before{
background-size: 800px;
height: 50px;
}
footer:before,#intro:before{top: -30px;transform: scale(1, -1);}
#intro:after,#contents:after,#page_title:before{bottom: -30px;}
#contents_links:before{transform: scale(1, -1);bottom: -15px;}

}

/*スマホ用（667px以下）
--------------------------------------------------------------------------*/
@media  screen and (max-width: 667px){
.loader.logo{width: 250px;}
h1{width: 50%;}

#main_img{height: 30vh;}
#intro .box_wrap .box > div{
margin-left: 10%;
margin: 0 auto;
}
}

/*--------------------------自動リンク--------------------------*/
/* color */
.linkStyle{color: #333; text-decoration: underline;}
.txt_color_nomal .linkStyle{color: #333;}
.txt_white .linkStyle{color: white;}
.txt_red .linkStyle{color: red;}
.bg_color1 .linkStyle{color: #fff;}
.bg_color2 .linkStyle{color: #fff;}
.bg_color3 .linkStyle{color: #fff;}
.bg_color4 .linkStyle{color: #333;}

/*IEのみ*/
@media all and (-ms-high-contrast: none) {
.linkStyle{display: inline-block;}
}

/*--------------------------カラー--------------------------*/
body,.txt_color_nomal,.hvr_txt_color_nomal:hover{color: #333333;}
.txt_white,.hvr_txt_white:hover{color: white;}
.txt_red,.hvr_txt_red:hover{color: red;}
.txt_color1,.hvr_txt_color1:hover{color: #333333;} /* メインカラー */
.txt_color2,.hvr_txt_color2:hover{color: #808080;} /* サブカラー */
.txt_color3,.hvr_txt_color3:hover{color: #555555;} /* アクセントカラー1 */
.txt_color4,.hvr_txt_color4:hover{color: #f2f2f2;} /* アクセントカラー2 */

/* background-color */
.bg_white,.hvr_bg_white:hover{background-color: white;} /* 白背景 */
.bg_black,.hvr_bg_black:hover{background-color: black;} /* 黒背景 */
.bg_color1,.hvr_bg_color1:hover{background-color: #333333;} /* メインカラー */
.bg_color2,.hvr_bg_color2:hover{background-color: #808080;} /* サブカラー */
.bg_color3,.hvr_bg_color3:hover{background-color: #555555;} /* アクセントカラー1 */
.bg_color4,.hvr_bg_color4:hover{background-color: #f2f2f2;} /* アクセントカラー2 */
.bg_color_clear,.hvr_bg_color_clear:hover{background-color: transparent!important;}


/* border-color ※!important */
.border_color1,.hvr_border_color1:hover{border-color: #333333;}
.border_color2,.hvr_border_color2:hover{border-color: #808080;}
.border_color3,.hvr_border_color3:hover{border-color: #555555;}
.border_color4,.hvr_border_color4:hover{border-color: #f2f2f2;}
