@charset "UTF-8";

/********** コンテンツ *********/
.mainimage{position: relative;}
.mainimage img{position: absolute;width: 100%;}


.l_contents{margin-right:auto;margin-left:auto;position: relative;}
.wrapper{-webkit-box-sizing: border-box;box-sizing: border-box;position: relative;}

/*
.l_header_image .imgbox{display: block;font-size: 0;text-align: center;}
.l_header_image .imgbox img{opacity: 0;animation: fadein-img 5s ease-out forwards;}
    @keyframes fadein-img {
        0% {opacity: 0;}
        100% {opacity: 1;}
    }*/

    .l_header_image li span{
        display: block;-webkit-background-size: cover;background-size: cover;text-indent:100%;white-space:nowrap;overflow:hidden;
    }

    .slick-slide{width: 100%;max-width: 1200px;}

h2.title{text-align: center;}
h2.title .t_img{display: block;font-size: 0;}
h2.title .t_txt{line-height: 1;display: block;}

.com_btn a{display: block;background: #333333;color: #fff;text-decoration: none;width: 100%;}

.com_link_next{height: 26px;display: flex;justify-content: flex-end;position: relative;}
.com_link_next::after{ content: "";display: inline-block;width: 26px;height: 26px;
    background: url(../images/parts_btn_next.png) no-repeat center top;background-size: contain;}
.com_link_next a{text-decoration: none;color: #333;vertical-align: top;}
.com_link_next a{font-size: 14px;line-height: 26px;padding-right: 20px;}
.com_btn a{display: flex;justify-content: center;align-items: center;}

.link_btn a{display: block;text-decoration: none;-webkit-box-sizing: border-box;box-sizing: border-box;text-align: center;color: #0e0e0e;font-weight: bold;}
.link_btn a span{position: relative;}

#news ul li a{color: #333;text-decoration: none;}
#news ul li a:hover .title{text-decoration: underline;}

.area_i_d_c{-webkit-box-sizing: border-box;box-sizing: border-box;border: 1px solid #e5e5e5;}
.area_i_d_c h2{text-align: center;line-height: 1;font-weight: bold;}
.area_i_d_c .area_f{border-top: 2px dotted #e5e5e5;}
.area_i_d_c ul li::before{content: "・";}

.area_04 table th{font-weight: normal;text-align: left;vertical-align: top;}

.campaign_img span{display: block;font-size: 0;text-align: center;}

.area_image span{display: block;font-size: 0;}

.l_come_bottom .area_contact .box{-webkit-box-sizing: border-box;box-sizing: border-box;border: 1px solid #e5e5e5;text-align: center;}

.area_04 h2.title span{display: inline-block;}

@media screen and (min-width:768px) {

    p.text{color: #717171;}


    .l_header_image {margin: 0 auto;}
    .l_header_image li span {height: 0;padding-top: 49.2%;}
    .l_header_image .slick-slide span:hover{cursor: pointer;}
   


    /********** コンテンツ *********/
    h2.title .t_txt{font-size: 18px;margin-top: 20px;}

    #news{background: #e4f6ea;margin-bottom: 82px;}
    #news .title img{width: 147px;}
    .area_news{display: flex;position: relative;}
    #news .wrapper{padding-top: 50px;padding-bottom: 25px;}
    #news .wrapper::before{content: "";display: block;width: 430px;height: 182px;
        background: url(../images/bg_title_topnews.png) no-repeat center top;
        position: absolute;right: 0;bottom: -86px;
    }
    #news h2{margin-right: 80px;}
    #news ul li{line-height: 1;padding: 0 0 22px;}
    #news ul li a span.in{display: flex;}
    #news ul li .date{margin-right: 30px;font-weight: bold;}
    #news .com_link_next{position: absolute;right: 0;bottom: 0;z-index: 0;}

    /**/
    #information .wrapper{padding: 60px 0 50px;}
    #information .campaign_img{margin-bottom: 40px;}

    .area_i_d_c{max-width: 1000px;margin: 0 auto;padding: 38px 42px 0;}
    .area_i_d_c h2{font-size: 18px;margin-bottom: 10px;}
    .area_i_d_c .area_f{display: flex;padding: 30px 20px;}
    .area_i_d_c p{line-height: 2;padding-bottom: 30px;}
    .area_i_d_c h3{font-size: 16px;line-height: 1;font-weight: bold;margin-bottom: 15px;}
    .area_i_d_c .box{width: 50%;-webkit-box-sizing: border-box;box-sizing: border-box;padding: 0 20px;padding-right: 20px;}
    .area_i_d_c .box:nth-of-type(2){padding-right: 0;}
    .area_i_d_c ul li{line-height: 1;margin-bottom: 15px;}


    /**/
    #concept{padding: 75px 0 0;background: url(../images/bg_Toparea_01.png) no-repeat center top;max-width: 1651px;height: 939px;margin: 0 auto;
    position: relative;-webkit-box-sizing: border-box;box-sizing: border-box;}
    #concept .title img{width: 239px;}
    #concept .wrapper{display: flex;justify-content: space-between;}
    
    #concept .area_image{max-width: 720px;position: relative;}
    #concept .area_image .area_01_img1{max-width: 600px;max-height: 340px;width: 100%;height: auto;}
    #concept .area_image .area_01_img2{max-width: 360px;max-height: 262px;width: 100%;height: auto;position: absolute;right: -120px;top: 260px;z-index: 1;}
    #concept .area_image .area_01_img3{max-width: 290px;max-height: 242px;width: 100%;height: auto;position: absolute;left: 30px;top: 465px;}
    #concept .area_text{width: 40%;padding-left: 50px;padding-top: 80px;max-width: 482px;-webkit-box-sizing: border-box;box-sizing: border-box;}
    #concept .area_text .com_link_next{text-align: right;height: 26px;margin-top: 22px;}

    .area_02{margin-top: 118px;margin-bottom: 98px;background: url(../images/bg_Toparea_02.png) no-repeat center top;}
    .area_02 .wrapper{padding: 32px 0 120px;max-width: 1696px;margin: 0 auto;-webkit-box-sizing: border-box;box-sizing: border-box;
    }
    .area_02 .wrapper .l_flex{justify-content: space-between;width: 100%;}
    .area_02 h2{height: 64px;margin-bottom: 40px;}
    #menu .l_flex{justify-content: space-between;align-items: flex-start;max-width: 1200px;margin: 0 auto;}
    #menu .title img{width: 145px;}
    #menu .area_text{-webkit-box-sizing: border-box;box-sizing: border-box;}
    #menu .area_text > div{position: relative;max-width: 500px;}
    .area_02 .area_image{max-width: 600px;margin-bottom: 32px;}

    .area_02 .wrapper{display: flex;max-width: 1205px;justify-content: space-between;}
    .area_02 section{padding-top: 32px;padding-bottom: 94px;max-width: 500px;position: relative;}
    .area_02 section .box{position: relative;}
    #menu::before{content: "";display: block;width: 522px;height: 178px;position: absolute;left: -258px;bottom: 68px;
        background: url(../images/bg_title_Topmenu.png) no-repeat center top;
    }
    #blog::before{content: "";display: block;width: 406px;height: 228px;position: absolute;right: -88px;top: -128px;
        background: url(../images/bg_title_Topblog.png) no-repeat center top;
    }
    #blog .title img{width: 139px;}
   
    .area_02 section .com_link_next{text-align: right;height: 26px;margin-top: 22px;}
    #concept h2{margin-bottom: 42px;}
    .area_03 .wrapper{background: url(../images/bg_Toparea_03.png) no-repeat center top;max-width: 1630px;}
    .area_04 .area_image{width: 50%;max-width: 600px;}
    .area_04 .area_text{padding-left: 50px;display: flex;flex-wrap: wrap;-webkit-box-sizing: border-box;box-sizing: border-box;align-items: center;}
    .area_04 h2,.area_04 table{width: 100%;text-align: left;line-height: 1;}
    .area_04 h2{margin-bottom: 30px;}
    .area_04 h2 .t_img{width: 112px;}
    .area_04 table{margin-bottom: 10px;}
    .area_04 table th,.area_04 table td{padding-bottom: 17px;}
    .area_04 table th{width: 100px;}

    .area_04 .early_morning{font-size: 15px;margin-bottom: 20px;}
    .area_04 .link_wrapper{margin: 0 -10px;}
    .area_04 .link_btn{width: 50%;-webkit-box-sizing: border-box;box-sizing: border-box;padding: 0 10px;}
    .link_btn a{border: 2px solid #333333;width: 220px;height: 46px;line-height: 41px;font-size: 14px;}
    .link_btn.g_map a span::before{content: "";display: inline-block;width: 18px;height: 21px;
        background: url(../images/icon_g_map.png) no-repeat center;background-size: contain;position: absolute;left: -30px;top: -2px;
    }
    .link_btn.calendar a span::before{content: "";display: inline-block;width: 19px;height: 24px;
        background: url(../images/icon_calendar.png) no-repeat center;background-size: contain;position: absolute;left: -30px;top: -4px;
    }
    .area_text p.text{line-height: 2;}

}



@media screen and (max-width:767px) {

    .l_header_image {margin: 0 auto;}
    .l_header_image li span {height: 0;padding-top: 100%;}

    /********** コンテンツ *********/
    #news{padding-bottom: 40px;position: relative;}
    #news .wrapper::before{content: "";display: block;background: url(../images/sp/bg_Toparea_news.png) no-repeat left bottom #fff;background-size: contain;
        width: 280px;height: 145px;position: absolute;
        left: 0;bottom: -61px;
    }
    #news .wrapper{background-color: #e4f6ea;padding: 48px 20px 43.5px;position: relative;}
    #news h2{margin-bottom: 40px;}
    #news h2.title .t_img{width: 117.5px;margin: 0 auto;}
    #news h2.title .t_txt{font-size: 14px;margin-top: 15px;}
    #news ul li{padding-bottom: 24px;}
    #news ul li time{display: block;font-weight: bold;font-size: 15px;line-height: 1;margin-bottom: 7px;}
    #news ul li .title{line-height: 1.5;display: block;}


    #concept h2.title .t_txt,.area_02 h2.title .t_txt{font-size: 14px;margin-top: 17px;}
    h2.t_title .t_txt{font-size: 16px;text-align: center;}

    #information .wrapper{padding-top: 45px;padding-bottom: 82px;}
    .campaign_img{margin-bottom: 30px;}
    .area_i_d_c{padding: 20px 10px;}
    .area_i_d_c h2{font-size: 16px;margin-bottom: 10px;}
    .area_i_d_c h3{font-size: 16px;margin-bottom: 5px;}
    .area_i_d_c .area_f{margin-top: 10px;}
    .area_i_d_c .area_f .box{padding-top: 12px;}
    .area_i_d_c p,.area_i_d_c ul li{font-size: 14px;}

    .com_link_next{margin-top: 15px;z-index: 0;}
    /**/
    #concept {max-width: 100%;margin: 0 auto;margin-bottom: 0px;position: relative;
        -webkit-box-sizing: border-box;box-sizing: border-box;margin-bottom: 57px;
       
    }
    #concept .wrapper{ background: url(../images/sp/bg_Toparea_01.png) no-repeat center top;background-size: 100% 998px;
    max-width: 375px;margin: 0 auto;padding: 69px 0 0;
    }
    #concept h2.title{margin-bottom: 50px;}
    #concept h2.title .t_img{width: 192.5px;margin: 0 auto;}
    #concept .area_image{position: relative;min-height: 430px;margin-bottom: 85px;/*max-width: 360px;*/
        margin: 0 auto 85px;max-width: 400px;}
    #concept .area_image .area_01_img1{width: 390px;position: absolute;top: 0;left: -104px;}
    #concept .area_image .area_01_img2{width: 233.5px;position: absolute;top: 173px;right: -20px;z-index: 1;}
    #concept .area_image .area_01_img3{max-width: 188.5px;position: absolute;top: 316.5px;left: 20px;}
    #concept .area_text{padding: 0 20px;}

    /**/
    .area_02 .wrapper{padding: 0;}
    .area_02 .title{margin-bottom: 32px;}
    .area_02 .text{line-height: 2;padding: 0 20px;}
    .area_02 .area_image{position: relative;max-width: 360px;margin: 0 auto;margin-bottom: 30px;}
    .area_02 .area_image .area_02_img1{max-width: 500px;position: relative;}
    .area_02 .box{max-width: 375px;margin: 0 auto;}

    #menu{padding: 57px 0 67px;
        max-width: 100%;margin: 0 auto;position: relative;-webkit-box-sizing: border-box;box-sizing: border-box;
    }
    #menu .box{background: url(../images/sp/bg_Toparea_menu.png) no-repeat left bottom;background-size: contain;position: relative;}
    #menu h2.title .t_img{width: 115px;margin: 0 auto;}
    #menu .area_image .area_02_img1{right: -20px;}
    #menu .com_link_next{position: absolute;right: 20px;bottom: -30px;}

    /**/
    #blog{padding: 100px 0 67px;
        max-width: 100%;margin: 0 auto;position: relative;-webkit-box-sizing: border-box;box-sizing: border-box;
    }
    #blog .box::before{content: "";display: block;background: url(../images/sp/bg_Toparea_blog.png) no-repeat left top;background-size: contain;
        width: 375px;height: 183px;position: absolute;
        left: 0;top: -100px;
    }
    #blog .box{background-size: contain;position: relative;background: url(../images/sp/bg2_Toparea_blog.png) repeat-y #e4f6ea;
        background-size: 100%;background-position: -5px;min-width: 375px;padding-top: 65px;
    
    }
    #blog h2.title .t_img{width: 110px;margin: 0 auto;}
    #blog .area_image .area_02_img1{left: -20px;}
    #blog .com_link_next{position: absolute;right: 20px;bottom: -30px;}



    /**/
    .area_04{padding: 75px 0 55px;}
    .area_04 h2.title{line-height: 1;text-align: left;font-size: 0;margin-bottom: 16px;}

    .area_04 h2.title span.t_img{width: 97px;margin-right: 10px;}
    .area_04 h2.title .t_txt{font-size: 16px;}
    .area_04 .area_image{margin-bottom: 25px;}
    .area_04 table.data{font-size: 14px;margin-bottom: 18px;}
    .area_04 table th{width: 24%;}
    .area_04 .early_morning{font-size: 13px;margin-bottom: 20px;}
    .area_04 .link_btn.calendar{margin-bottom: 20px;}
}


@media screen and (min-width:768px) and (max-width: 1200px) {
    .l_contents .wrapper,#information .wrapper{padding-right: 40px;padding-left: 40px;}

}

@media screen and (min-width:768px) and (max-width:1080px)  {

    .area_i_d_c{padding: 38px 20px 0;}
    .area_i_d_c .area_f{padding:30px 0;}

    #concept .area_text{width: 100%;}
    #concept .area_image .area_01_img2{top: 150px;}  
    #concept .area_image .area_01_img3{top: 320px;}

    .area_02{background-position: 57% top;}
    .area_02 section .box{max-width: 400px;}
    #blog::before{right: -160px;}
}

@media screen and (min-width:768px) and (max-width:900px)  {
    .area_02 section .box{max-width: 320px;}
    #blog::before{right: -160px;}
}