﻿@import url('https://fonts.googleapis.com/css2?family=Shippori+Mincho:wght@500;600;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Red+Rose:wght@600&display=swap');
.font1,.top_cms_title .txt_vertical{font-family: 'Shippori Mincho',"游明朝", "YuMincho", "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "Sawarabi Mincho", serif;}
.font2,.top_cms_title p,#page_title h3,#page10  ul span{
    font-family: 'Red Rose', cursive;
}


.fix_bnr{
    right: 80px;
    transform: translateY(-20px);
    border-radius: 50%;
    cursor: pointer;
    z-index: 99;    
}
.fix_bnr a{border-radius:30px;}

#loader{background-image:none;}
#body{
    background-image:url(./Dup/img/bg.jpg);
    background-size:auto;
    background-repeat:repeat;
}
#main_img::before{
    content:'';
    position:absolute;
    display:block;
    width:35vw;
    height:37vh;
    background-image:url(./Dup/img/catch.png);
    background-size:contain;
    background-repeat:no-repeat;
    top:0;
    bottom:0;
    right:0;
    left:0;
    margin:auto;
    z-index:2;
}
#intro{
    text-align:center;
    background-image:none;
}
#intro .item1{margin-bottom:10px;}
#intro .item1 img{width:auto;}
#contents1 h2{position:relative;}
#contents1 h2::before{
    content:'';
    position:absolute;
    display:block;
    width:10vw;
    height:20vh;
    background-image:url(./Dup/img/item2.png);
    background-repeat:no-repeat;
    background-size:contain;
    background-position:top right;
    bottom:-55%;
    right:20%;
    z-index:1;
}
#contents2 .con2_p{width:30%;}
#contents2 .item3{width:50%;}
#contents3 .font2{
    font-size: 2rem;
    margin-bottom: 50px;
}
#contents3 .item4 img{width:auto;}
#top_cms .top_cms_title h3{
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: horizontal-tb;
}
#footer{
    background-image:url(./Dup/img/ft_bg.jpg);
    background-size:contain;
    position:relative;
}
#footer::before{
    content:'';
    position:absolute;
    display:block;
    width:100%;
    height:100%;
    background-color:rgba(19,26,51,0.5);
}
#footer .width_1280-max{position:relative;}
#footer .width_1280-max .grid_8{
    color:white;
    border-color:white;
}
#footer .tel a{
    color:white;
    border-bottom:0;
}

#main_nav{
    background-image:none;
    background-color: #4b6251;
}

/*----------under page--------------------------------------------*/
#page_title{
    background-image:url(./Dup/img/page_title.jpg);
    background-repeat:no-repeat;
    background-size:cover;
    background-position:center;
    position:relative;
}
#page_title::before{
    content:'';
    position:absolute;
    display:block;
    width:100%;
    height:100%;
    background-color:rgba(0,0,0,0.5);
    top:0;
    left:0;
    z-index:1;
}
#page_title>div{
    position:relative;
    z-index:2;
}
#page_title h2{font-size: calc(2rem - 5px);}

#cms_1-f #news_list li a{width:inherit;}


/* ---------- responsive ---------- */
@media screen and (max-width: 1100px){
 #contents2 .con2_p{width:80%;}   
 #contents2 .item3{
     width:70%;
     padding-top: 0;
    margin-right: auto;
    margin-left: 0;
 }
}



/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
.fix_bnr{right: 70px;}
#copyright{padding-bottom:100px;}
#main_img::before{
    width: 55vw;
    height: 20vh;
}
#contents1 h2::before{
    width: 18vw;
    height: 10vh;
}
#contents2 .con2_p { width: 50%;}
#contents3{
    padding-top:100px;
    padding-bottom:100px;
}

}

/* ---------- スマートフォン ---------- */
@media screen and (max-width: 667px){
.fix_bnr{right: 55px;}
#main_img::before {
    width: 80vw;
    height: 25vh;
}
#page-top,.fix_bnr{transform:none;}
#intro .font_18{text-align:left;}
#contents1 h2::before {
    width: 30vw;
    height: 12vh;
    bottom: -25%;
    right: 15%;
}
#contents1 figure{margin-top:70px;}
#contents1 figure img{box-shadow: rgb(75 98 81) 30px 30px 0px!important;}
#contents1 .flex_order3{margin-top:50px;}
#contents2{padding:80px 30px;}
#contents2 h3{text-align:center;}
#contents2 .con2_p { width: 100%;}
#contents2 .item3 { 
    width: 100%;
    padding-top:30px;
}
#contents3 {padding-top: 70px;}
#contents3 .font2{margin-bottom:10px;}
#top_cms .top_cms_title{
    margin-bottom:10px;
    padding-top: 40px;
}
#top_cms .cms_wrap{padding-top:10px;}
#copyright {padding-bottom: 70px;}
#footer{background-size: cover;}
}

/* ---------- IEの処理 ---------- */
@media all and (-ms-high-contrast: none){

}
