


@import url('https://fonts.googleapis.com/css2?family=Lexend+Deca:wght@500&display=swap');





/* フレーム設定-------------------------------------------------------------------------------- */

body{

}


#adspecial_container_202203{
padding: 0;
}


#adspecial_container_202203.adspecial_type1{
max-width:none !important;
width:100% !important;
position:relative;
font-family:"ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "Meiryo UI",メイリオ, Meiryo, sans-serif;
}

footer{
margin-top:0;
}


.block_sponsored {
background:#252525;
padding: 25px 20px;
text-align: center;
color:#fff;
}

.block_sponsored a{
color:#7bba3d;
}


#adspecial_container_202203.adspecial_type1 .frame_col_left{
position:relative;
}







/* headline-------------------------------------------------------------------------------- */


/*anime setting*/


@keyframes fade{
  0% {
    opacity: 0;}

  100% {
    opacity: 1;}

}



@keyframes transpalent{
  0% {
    opacity: 1;}

  50% {
    opacity: 0;}
  100% {
    opacity: 1;}

}



@keyframes line{
0%{
opacity:0;
width:0;
}
100%{
opacity:1;
width:100%;
}
}





.hero-area{
margin:0 auto;
padding:7% 9% 8%;
position:relative;
z-index:100;
line-height:1.4;
color:#fff;
background-color:#fff;
}

.hero-area:before{
content:"";
position:absolute;
top:0;
left:0;
background:url(/extra/container_202203/media/img-hero.jpg) right top no-repeat;
width:100%;
height:100%;
opacity:0;
animation: fade 0.5s linear 0.3s forwards;
}


/*.hero-area:after{
content:"";
position:absolute;
top:0;
left:0;
background:url(/extra/container_202203/media/parts-hero.png) right top no-repeat;
width:100%;
height:100%;
opacity:0;
animation: fade 0.5s linear 0.3s forwards;
}*/


.hero-area .head_label{
position:absolute;
top:35%;
left:25px;
width:80px;
height:80px;
line-height:50px;
padding:15px;
color:#fff;
text-align:center;
font-size:120%;
z-index:1;
}

.hero-area .head_label:before{
content:"";
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
background-color:#7bba3d;
border-radius:20px;
z-index:-1;
opacity:0;
animation: fade 0.5s linear 0.2s forwards;
}


.hero-area h1{
color:#252525;
font-size:230%;
position:relative;
opacity:0;
animation: fade 0.5s linear 0.5s forwards;
}

.hero-area h1 span{
position:relative;
}

.hero-area h1 span:after{
content:"";
position:absolute;
bottom:-10px;
left:0;
width:100%;
height:3px;
background-color:#7bba3d;
border-radius:30px;
transition:0.5s;
animation: line 0.8s linear 0.5s forwards;
}


.hero-area .sub_title{
font-size:150%;
font-weight:bold;
color:#666666;
margin-top:20px;
opacity:0;
animation: fade 0.5s linear 1.0s forwards;
}



.lead_block{
margin:0 auto;
padding:40px 0 25px;
background:rgba(16,86,21,0.8);
/*background:rgba(0,0,0,0.3);*/
border-top:5px solid #7bba3d;
position:relative;
}


.lead_block p{
max-width:1050px;
margin:0 auto;
text-align:left;
font-size:110%;
/*font-weight:bold;*/
line-height:1.5;
color:#fff;
animation: fade 0.5s linear 1.0s forwards;
opacity:0;
margin-bottom:20px;
}



/* contents-------------------------------------------------------------------------------- */



.category-area{
margin:0 auto;
padding:0 0 40px 0;
background:#e5e5e5 url(/extra/container_202203/media/img-background.jpg) center top no-repeat;
background-attachment:fixed;
}

.category-area h2,
.sponsor-area h2{
margin:0 auto 10px;
padding:45px 0 0;
text-align:center;
font-size:200%;
color:#252525;
line-height:1.2;
position:relative;
opacity:0;
transition:1s;
z-index:100;
}

/*.sponsor-area h2:after{
content:"";
position:absolute;
bottom:10px;
left:45%;
width:10%;
height:2px;
background-color:#ccc;
}*/



.category-area h2.fade,
.sponsor-area h2.fade{
opacity:1;
}


.category-area h2 span,
.sponsor-area h2 span{
font-size:60%;
color:#7bba3d;
display:block;
text-align:center;
padding-top:5px;
}



.item_block{
margin:25px auto 50px;
max-width:1300px;
}


.item_block ul{
display:flex;
flex-wrap:wrap;
padding:0;
background:none;
justify-content:center;
}


.item_block ul li{
width:21%;
margin:25px;
position:relative;
}

.item_block ul li div{
width:100%;
height:100%;
background:#fff;
/*box-shadow: 0 5px 30px rgba(0,0,0,0.1);*/
line-height:1.5;
padding:20px 20px 45px;
box-sizing: border-box;
position:relative;
}


.item_block ul li div.client{
background-color:#e8eee5;
/*border:7px solid #bce0aa;*/
border:5px solid #7bba3d;
}
.item_block ul li div.client:hover{
border:5px solid #ccc;
}


.item_block ul li img{
width:100%;
height:150px;
object-fit: cover;
background-color:#f0f0f0;
display:block;
margin:0 auto 10px;
}


.item_block ul li a{
display:block;
}


.item_block ul li a:hover img{
opacity:0.7;
transition:0.3s ease;
}

.item_block ul li div:hover{
box-shadow: 0 5px 30px rgba(0,0,0,0.3);
transition:0.3s ease;
}


.item_block ul li span{
display:block;
}

.item_block ul li span.title{
font-size:120%;
font-weight:bold;
color:#252525;
margin:0 0 10px 0;
}

.item_block ul li span.summary{
font-size:90%;
color:#909090;
margin:5px 0 0 0;
}

.item_block ul li span.date{
font-size:100%;
font-weight:bold;
color:#a0a0a0;
}


.item_block ul li a:hover span{
transition:0.3s;
color:#7bba3d;
}


.item_block ul li span.label{
font-size:12px;
width:120px;
margin:10px 0 0 0;
padding:3px;
background-color:#ccc;
color:#fff;
display:block;
text-align:center;
position:absolute;
bottom:20px;
left:-25px;
border-radius: 0 15px 15px 0;
}

.item_block ul li span.article{
background-color:#14995f;
}

.item_block ul li span.wp{
background-color:#1eb7aa;
}

.item_block ul li span.pr{
background-color:#a2d51a;
}



/* sponsor **************************************/


.sponsor-area{
margin:0;
padding:0;
background:#fff;
}


.item_sponsor ul{
margin:0 auto 30px;
max-width:1050px;
display:flex;
flex-wrap:wrap;
justify-content:center;
}

.item_sponsor ul li{
width:200px;
margin:0 50px;
}





@media screen and (max-width:1370px){


.hero-area{
padding:10% 12%;
}


.hero-area:after{
position:absolute;
content:"";
top:0;
left:0;
width:100%;
height:100%;
background:rgba(0,0,0,0.35);
}



.hero-area h1{
font-size:180%;
color:#fff;
position:relative;
z-index:1000;
}

.hero-area .sub_title{
font-size:140%;
color:#fff;
position:relative;
z-index:1000;
}







}


/* responsive -------------------------------------------------------------------------------- */



@media screen and (max-width:960px){



.hero-area{
padding:15% 5%;
}

.hero-area:after{
position:absolute;
content:"";
top:0;
left:0;
width:100%;
height:100%;
background:rgba(0,0,0,0.6);
}


.hero-area .head_label{
top:15px;
left:15px;
}


.hero-area h1{
font-size:180%;
text-align:center;
color:#fff;
position:relative;
z-index:1000;
}

.hero-area .sub_title{
font-size:120%;
text-align:center;
color:#fff;
position:relative;
z-index:1000;
}


.category-area h2,
.sponsor-area h2{
font-size:160%;
padding:45px 15px 0;
}


.lead_block{
padding:25px;
}

.lead_block p{
font-size:100%;
}


.category-area h2 span,
.sponsor-area h2 span{
font-size:60%;
padding-top:10px;
}


.item_block{
padding:5%;
}


.item_block ul li{
width:40%;
}


.item_sponsor ul{
padding:0 20px;
}


.item_block ul li img{
margin-top:0!important;
}


.item_block {
margin:20px auto;
}




}




@media screen and (max-width:640px){


.hero-area .head_label{
width:60px;
height:60px;
line-height:25px;
font-size:90%;
}



.item_block{
padding:5%;
}

.item_block ul{
display:block;
}

.item_block ul li{
width:100%;
margin:30px auto;
}


}




@media screen and (max-width:480px){


.hero-area{
padding:30% 3%;
}




.hero-area h1{
font-size:120%;
}



.hero-area .sub_title{
font-size:90%;
}


h2{
font-size:160%;
}




.item_block ul li a span{
font-size:90%;
}


.item_block ul li img{
width:100% !important;
height:auto;
float:none;
margin:40px auto 0;
text-align:center;
}


.item_block ul li span.label{
margin:0 auto;
}

.item_block ul li span.title{
margin:10px 0 0 0;
font-size:120%;
}

.item_block ul li span.caption,
.item_block ul li span.date{
font-size:90%;
padding:0;
}



.item_block ul.list01 li img{
height:auto;
}



}



@media screen and (max-width:480px){



}





