﻿/*--------リンク・フォント--------*/
.linkStyle{color: #333333; text-decoration: underline;}


/*--------全体--------*/
.dec {
    width: 45px;
}
.vegas-overlay {
    opacity: 0.5;
}
.other .box figure {
    opacity: 0.15;
}
#loading_line .bg_color1 {
    background-color: #b6e6a6;
}


#contents{
    background-image: url(./Dup/img/back.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: 40% 50%;
}
.img-container:before {
    background: #52b332;
}
.t_cms_img2 .img-container:before {
    background: #d4ee56;
}
/*
#contents{position:relative;}
#contents:before{
    content:"";
    display:block;
    position:fixed;
    top:0;
    left:0;
    z-index:-1;
    width:100%;
    height:100vh;
    background:url(./Dup/img/back.jpg) center no-repeat;
    background-size:cover;
  }
*/

#top_cms{
    background-image: url(./Dup/img/back2.png);
    background-size: 28%;
}

#top_cms .cms_title{
    position:relative;
    z-index:+1;
    
}
#top_cms .cms_title::before{
       content: "";
    display: inline-block;
    width: 9em;
    height: 9em;
    background: url(./Dup/img/item_02.png) no-repeat;
    position: absolute;
    left: 3%;
    top: 65%;
    transform: translate(-50%, -50%);
    background-size: contain;
    z-index: -1;
}


/*--------下層--------*/

main.bg_color4 {
    background: url(./Dup/img/back3.jpg) center top repeat-y;
     animation: flow 80s linear infinite; 
    -ms-animation: flow 80s linear infinite;
    -moz-animation: flow 80s linear infinite;
     -webkit-animation: flow 80s linear infinite; 
}


@keyframes flow {
  0% { background-position: 0 0;}
  100% { background-position: 0 200%;}
}


.img-container.active .img-container_img::after {
    background-color: rgba(236, 236, 236, .45);
    content: '';
    display: block;
    height: 100%;
    position: absolute;
    width: 100%;
    z-index: 1;
}

.all_page .img-container:before {
    background: #b6e6a6;
}


#cms_2-a .cate_title{
    position:relative;
    z-index:+1;
    
}
#cms_2-a .cate_title::before{
   content: "";
    display: inline-block;
    width: 7em;
    height: 4.8em;
    background: url(./Dup/img/item_01.png) no-repeat;
    position: absolute;
       left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    background-size: contain;
    z-index: -1;
}



.page8 .tel_box{
    position: relative;
    overflow: hidden;
    padding: 20px 20px 15px 20px;
}
.page8 .tel_box > a:before{
    content:"";
    position: absolute;
    width:100vw;
    height:100vh;
    -moz-transform: translateX(-50%) translateY(-50%);
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    left:50%;
    top:50%;
}
@media screen and (max-width: 1200px){
    .page8 .tel_box p{
        display: block;
        padding-right: 0px;
        margin-right: 0px;
        border-right: none;
        
    }
}

@media screen and (max-width: 667px){
.page8 .tel_box a{
    font-size: 5.3vw;
    letter-spacing: 2px;    
}
}

/*--------タブレット--------*/
@media screen and (max-width: 768px){
    .main_wrap {
    margin-top: 49.6vh;
}
.main_img_wrap {
    height: 50vh;
}
.main_img_wrap .navi {
    bottom: 25px;
}
#contents {
    background-position: 0% 50%;
}
#top_cms {
    background-size: 44%;
}
#top_cms .cms_title::before {
    width: 8em;
    height: 8em;
    left: 5%;
}

}

/*--------スマートフォン--------*/
@media screen and (max-width: 667px){
    .main_wrap {
    padding-top: 10px;
}
#top_cms:before {
    width: 70%;
}
#top_cms {
    background-size: 70%;
}
#top_cms .cms_title::before {
    width: 6em;
    height: 6em;
    left: 12%;
}

.all_page:before {
    width: 75%;
}


}


/*--------------------------------------------
IE
--------------------------------------------*/
@media all and (-ms-high-contrast:none){
    #cms_6-c .box_title{padding:13px 10px 7px 10px;}
}



