﻿#top_info h2,#bottom_menu{background: linear-gradient(125deg, rgba(172,204,0,1) 10%, rgba(51,204,0,1) 40%, rgba(51,204,0,1) 60%, rgba(0,169,204,1) 93%);}
#intro .intro_bg{
    background-color: transparent;
    background: linear-gradient(121deg, rgba(172,204,0,0.7) 7%, rgba(51,204,0,0.9) 35%, rgba(51,204,0,0.9) 60%, rgba(0,169,204,0.7) 95%);
}

#pc_nav ul li a{
    color: #003d54;
    font-weight: 600;
    font-size: 18px;
}

#main_img::before{background-color:transparent;}
.main_dec1{
    z-index: 2;
    position: absolute;
    bottom: 0;
    right: 0;
    width: 70%;
}
.catch {
    z-index: 3;
    position: absolute;
    top: 58%;
    right: 3%;
    transform: translate(0%, -50%);/* X横 Y縦 始点が要素の中心になる */
    width: 50%;
}
.catch_dec{
    z-index: 3;
    position: absolute;
    bottom: 20px;
    right: 3%;
    width: 50%;
}
.catch_dec_wrap{width:70%;}
.catch_dec1,.catch_dec2{width: 48%;}
.main_dec2{width: 30%;}

/* タブレット */
@media screen and (max-width: 768px){
    .main_dec1{width:90%;}
    .catch_dec{bottom: 110px;width: 70%;}
    .catch{
        top: 50%;
        right: auto;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 75%;
    }
}
/* スマホ */
@media screen and (max-width: 667px){
    .catch{top:45%;width: 88%;}
    .main_dec1{width:120%;overflow-x: hidden;}
    .catch_dec{bottom: 100px;}
    .catch_dec1{margin-bottom:10px;}
    .catch_dec1, .catch_dec2{width:100%;}
    .main_dec2{width:40%;}
    .catch_dec_wrap{width:58%;}
}
/* 要望対応 -------------------------------------*/
/*スマホメニュー*/
.sp_menu{
z-index: 10!important;
line-height: 2;
transition: .3s;
z-index: 3;
position: fixed;
bottom: 0;
left: 0;
width: 100%;
font-size: 12px;
letter-spacing: 0px;
}
.sp_menu li a i.fa-angle-up{
    font-size:25px;
    line-height: 1em;
}

.sp_menu li{
width: 25%;
border-top: 1px solid #fff;
border-bottom: 1px solid #fff;
border-right: 1px solid #fff;
box-sizing: border-box;
}
.sp_menu li:nth-of-type(7){width:calc(50% - 50px);}
.sp_menu li:nth-of-type(8){width: 50px;}
.sp_menu li:nth-of-type(1),.sp_menu li:nth-of-type(5){border-left: 1px solid #fff;}
.sp_menu li:nth-of-type(5),.sp_menu li:nth-of-type(6),.sp_menu li:nth-of-type(7),.sp_menu li:nth-of-type(8){border-top: none;}
.sp_menu li a{padding: 10px 3px;height: 100%;box-sizing: border-box;}
.sp_menu_btn{
width: 20%;
padding: 5px 9px;
position: absolute;
top: -39px;
cursor: pointer;
border-top: 1px solid #fff;
border-right: 1px solid #fff;
}
.sp_menu_btn .nav_btn{
display: inline-block;
width: 15px;
height: 15px;
margin-right: 5px;
position: relative;
top: 3px;
}
.sp_menu_btn .nav_btn span{
display: inline-block;
background-color: #fff;
height: 3px;
width: 15px;
position: absolute;
left: 5px;
top: 5px;
transition: .3s;
}
.sp_menu_btn .nav_btn.open_btn span:nth-child(1){
transform: rotate(-55deg);
left: -1px;
width: 13px;
}
.sp_menu_btn .nav_btn.open_btn span:nth-child(2){
transform: rotate(55deg);
right: -1px;
width: 13px;
}
.sp_menu_btn .nav_btn.close_btn span{left: 0;}
.sp_menu_btn .nav_btn.close_btn span:nth-child(1){transform: rotate(45deg);}
.sp_menu_btn .nav_btn.close_btn span:nth-child(2){transform: rotate(-45deg);}
.sp_menu_btn .close,.sp_menu_btn .open{
display: inline-block;
font-size: 14px;
}
.sp_menu_btn.opennow .open{display: none!important;}
.sp_menu.navclose{bottom: -91px;}

/* スマホ */
@media screen and (max-width: 667px){
    .sp_menu{line-height: 1.5em;}
    .sp_menu_btn{top: -30px;width: 22%;}
    .sp_menu li a i.fa-angle-up{font-size: 20px;}
}
/* トップページ -------------------------------------*/
#catch{margin: 100px 0;}
#catch .txt h2,#catch .txt p{opacity: 0;}
#catch .txt.animStart h2,#catch .txt.animStart p{opacity: 0;}
#catch .txt.animStart h2{animation: heroText 600ms 800ms both;}
#catch .txt.animStart p{animation: heroText 600ms 900ms both;}


#intro figure, #contents2 .cate_box{box-shadow: 15px 20px 20px rgba(3, 60, 82, 0.3), 15px 20px 40px rgba(0, 0, 0, 0.1);}
#contents1 .img_box{box-shadow: -5px 20px 30px rgb(3 60 82 / 30%), -5px 20px 60px rgb(0 0 0 / 10%);}

#contents2{
    background:#ededed;
    margin-bottom:0px;
    padding-bottom:50px;
}
#top_cms{background: linear-gradient(25deg, #fff 50%, #ededed 50%);}
.cms_6-b .box_txt2{background-color:#fff;}

/* タブレット */
@media screen and (max-width: 768px){
    #catch{margin: 50px 0;}
    #contents1 .d_flex{flex-direction: column-reverse;}
}
/* スマホ */
@media screen and (max-width: 667px){
    #contents1 .d_flex{flex-direction: row;}
}

/* 下層ページ ---------------------------------------*/
#page_title h2{text-shadow: 0px 10px 9px rgb(0 25 34 / 80%), 0px 12px 15px rgb(1 38 52 / 60%);}
#page_title h2 span{text-shadow: 0px 3px 3px rgb(0 25 34 / 80%), 0px 6px 8px rgb(1 38 52 / 60%);}

/* 全体 ---------------------------------------------*/
#pc_nav #logo{max-width: 140px;}
#entry{
    position: fixed;
    bottom: 10px;
    right: 100px;
    z-index: 10;
}
#entry a{
    display: block;
    text-align: center;
    font-size: 22px;
    line-height: 3;
    width: 220px;
    height: 68px;
    position: relative;
    box-shadow: 0 2px 4px rgb(0 0 0 / 50%);
    color: #012f40;
    text-shadow: 0 0 6px #fff;
    font-weight: 600;
    background: linear-gradient(120deg, rgba(172,204,0,1) 20%, rgba(51,204,0,1) 45%, rgba(51,204,0,1) 55%, rgba(0,169,204,1) 80%);
}
#entry a:hover{opacity: 0.7;}

#sp_nav a.active{border-bottom: 1px solid #00597c;}

/* タブレット */
@media screen and (max-width: 768px){
    /*#entry{right: 100px;}*/
    #page-top{
        /*bottom: 100px!important;*/
        /*right: 10px!important;*/
        display: none!important;
    }
    #page_title .box{padding: 200px 0 100px;}
    
    #copyright{padding-bottom: 100px;}
}
/* スマホ */
@media screen and (max-width: 667px){
    #copyright{padding-bottom: 130px;}
    #page-top{
        bottom: 120px!important;
    }
    
    #pc_nav #logo{
        max-width: 110px;
        margin-top: 7px;
    }
    #page_title .box{padding: 110px 0 40px;}
    #page_title h2{text-shadow: 0px 7px 9px rgb(0 25 34 / 80%), 0px 12px 15px rgb(1 38 52 / 60%);}
}

/* 自動リンク設定  ----------------------------------*/
.linkStyle{
	color:#2aa701;
	text-decoration: underline;
	transition: all 0.5s;
}
.linkStyle:hover{
	color:#33CC00;
	opacity: 0.7;
	text-decoration: none;
}

/* 配色 ----------------------------------------------*/
.txt_color1,.hvr_txt_color1:hover{color: #29a500;} /* メインカラー */
.txt_color2,.hvr_txt_color2:hover{color: #dddddd;} /* サブカラー */
.txt_color3,.hvr_txt_color3:hover{color: #00597c;} /* アクセントカラー1 */
.txt_color4,.hvr_txt_color4:hover{color: #d7d7d7;} /* アクセントカラー2 */

.bg_color1,.hvr_bg_color1:hover{background-color: #33CC00;} /* メインカラー */
.bg_color2,.hvr_bg_color2:hover{background-color: #f3f3f3;} /* サブカラー */
.bg_color3,.hvr_bg_color3:hover{background-color: #00597c;} /* アクセントカラー1 */
.bg_color4,.hvr_bg_color4:hover{background-color: #d7d7d7;} /* アクセントカラー2 */

.border_color1,.hvr_border_color1:hover{border-color: #33CC00;}
.border_color2,.hvr_border_color2:hover{border-color: #dddddd;}
.border_color3,.hvr_border_color3:hover{border-color: #00597c;}
.border_color4,.hvr_border_color4:hover{border-color: #d7d7d7;}


/* 文字・文字間・空間 --------------------------------*/
body,.cate_list .more_bt a{
    /*font-family: 'BIZ UDPGothic', sans-serif;*/
    /*font-family: 'Kosugi', sans-serif;*/
    /*font-family: 'M PLUS 1', sans-serif;*/
    font-family: 'Noto Sans JP', sans-serif;
    letter-spacing: 0.03em;
}

#page_title h2{
    font-weight: 500;
}

/* タブレット */
@media screen and (max-width: 768px){}
/* スマホ */
@media screen and (max-width: 667px){}

/*テンプレート  -------------------------------------*/

/* タブレット */
@media screen and (max-width: 768px){}
/* スマホ */
@media screen and (max-width: 667px){
    html{font-size: 16px;}
    #tel_txt p{border-left:none;}
    #page9 h3{letter-spacing: 0.05em;}
}