
/* --------------------------------------------------

	全国イベント

-------------------------------------------------- */

.national_block div.link_list {
    padding: 5px;
}

.national_block div.link_list > div > a {
    /*color: #444;*/
}

.national_block div.link_list > div > a i {
    margin-right: 0.3em;
    color: #188542;
}

.national_block div.link_list > div > a > span.open {
    display: none;
}

.national_block.off div.link_list > div > a > span.open {
    display: block;
}

.national_block div.link_list > div > a > span.close {
    display: block;
}

.national_block.off div.link_list > div > a > span.close {
    display: none;
}




/* - メインビジュアル
---------------------------------------------------------------------- */
.national_block {
    margin-top: 20px;
    margin-bottom: 40px;
}


.national_block > .content {
    display: block;
    animation: obj_fade_in 0.3s ease-in-out;
}

.national_block.off > .content {
    /*animation: obj_fade_out 0.3s ease-in-out;*/
    display: none;
}



@keyframes obj_fade_in {
    from{ opacity: 0; }
    to{ opacity: 1; }
}

@keyframes obj_fade_out {
    from{ opacity: 1; }
    to{ opacity: 0; }
}



.national_block > .content > ul {
    /*font-size: 0;*/
    width: 100%;
    overflow: hidden;
    /*margin-right: -20px;*/
}

.national_block > .content > ul:after {
	content:'';
	display:block;
	clear:both;
}

.national_block > .content > ul > li {
    /*display: inline-block;*/
    /*font-size: 1.3rem;*/
    
    width: 460px;
    margin-right: 20px;
    margin-top: 20px;
    
    /*border: 1px solid #ccc;
    
    border: 1px solid #ddd;*/
    
    border-color: #ccc;
    
    float: left;
}

.national_block > .content > ul > li:nth-child(even) { margin-right: 0; }


.national_block > .content > ul > li > a {
	display:block;
	text-decoration:none;
}

.no-touch .national_block > .content > ul > li > a:hover {
    /*background-color: #fff8e1;*/
}

.national_block > .content > ul > li > a > .unit > h4 {
	padding: 8px 12px;
	background-color: #1b521f;
	color: #fff;
	font-weight: bold;
	font-size: 1.6rem;
}

.national_block > .content > ul > li > a > .unit > h4 > span.inner { display:table; }
.national_block > .content > ul > li > a > .unit > h4 > span.inner > span { display:table-cell; }
.national_block > .content > ul > li > a > .unit > h4 > span.inner > span.icon { white-space:nowrap; }
.national_block > .content > ul > li > a > .unit > h4 > span.inner > span.txt > span.sm { font-size:1.2rem; }

.national_block > .content > ul > li > a > .unit > h4 i { margin-right: 0.4em; }

.national_block > .content > ul > li > a > .unit > .content {
	padding: 19px;
	border: 1px solid #e0e0e0;
	border-top: none;
}

.national_block > .content > ul > li > a > .unit > .content > .img { text-align: center; }
.national_block > .content > ul > li > a > .unit > .content > .img img { vertical-align: top; }

.national_block > .content > ul > li > a > .unit > .btn {
	text-align: center;
	background-color: #eaeaea;
	border: 1px solid #d0d0d0;
	border-top: none;
	padding: 9px;
}

.national_block > .content > ul > li > a > .unit > .btn > span {
	background-color: #fff;
	padding: 8px;
	box-shadow: 0 1px 4px rgba(0,0,0,0.1);
	text-align: center;
	display: block;
	border-radius: 4px;
	font-weight: bold;
	color: #188542;
	font-size: 1.4rem;
}

.no-touch .national_block > .content > ul > li > a:hover > .unit > .btn > span,
.national_block > .content > ul > li > a:focus > .unit > .btn > span {
	background-color: #fff8e1;
	color: #333;
}

.national_block > .content > ul > li > a > .unit > .btn > span i { margin-right: 0.4em; }






.event_tab { margin-top: 30px; }


/* - slick
---------------------------------------------------------------------- */
.slick-slider {
    position: relative;
    display: block;
    box-sizing: border-box;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list {
    position: relative;
    display: block;
    overflow: hidden;
    margin: 0;
    padding: 0;
}

.slick-list:focus { outline: none; }

.slick-list.dragging {
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
         -o-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}

.slick-track {
    position: relative;
    top: 0;
    left: 0;
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.slick-track:before,
.slick-track:after {
    display: table;
    content: '';
}

.slick-track:after { clear: both; }
.slick-loading .slick-track { visibility: hidden; }

.slick-slide {
    display: none;
    float: left;
    height: 100%;
    min-height: 1px;
}

[dir='rtl'] .slick-slide { float: right; }

.slick-slide img { display: block; }
.slick-slide.slick-loading img { display: none; }
.slick-slide.dragging img { pointer-events: none; }
.slick-initialized .slick-slide { display: block; }
.slick-loading .slick-slide { visibility: hidden; }
.slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent;
}

.slick-arrow.slick-hidden { display: none; }




.national_event_area {
    margin-top: 20px;
    position: relative;
}


/* - メインビジュアル
---------------------------------------------------------------------- */



/*
#main_visual {
    width: 100%;
    min-width: 940px;
    height: 400px;
    position: relative;
    overflow: hidden;
    background-color: #000;
    display: block;
}

#main_visual > .inner {
    position: relative;
    z-index: 5;
    width: 940px;
    height: 400px;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
}

.main_visual img {
    width: 100%;
    max-width: 100%;
    vertical-align: top;
}

#main_visual .slider {
    opacity: 0;
    transition: 2.5s;
}

#main_visual .slider.slick-initialized { opacity: 1; }
*/


#event_slide {
    width: 940px;
    height: 400px;
    margin: 0 auto;
    /*margin-left: -170px;*/
    
    opacity: 0;
    transition: 2.5s;
    
    overflow: hidden;
}

#event_slide.slider.slick-initialized { opacity: 1; }

#event_slide img {
    width: 100%;
    max-width: 100%;
    vertical-align: top;
}

.slick-list { overflow: visible; }

.slick-slide a {
    display: block;
    position: relative;
}

.slick-slide a > img {
    opacity: 0.2;
    transition: all 0.5s ease-in-out;
    transition-delay: 0.1s;
}

.slick-slide.slick-current a > img,
.slick-slide.slick-active a > img { opacity: 1; }

.slick-slide a > .cover {
    width: 100%;
    height: 100%;
    position: absolute;
    background-color: rgba(255,255,255,0.3);
    opacity: 0;
    display: block;
    transition: all 0.4s ease-in-out;
    -webkit-transition: all 0.4s ease-in-out;
    border: 2px dotted #555;
    box-sizing: border-box;
}

.no-touch .slick-slide.slick-current a:hover > .cover,
.slick-slide.slick-current a:focus > .cover { opacity: 1; }

.slick-prev { z-index: 125; }
.slick-dots {  }
.slick-dots li button { box-sizing: border-box; }


#main_visual .btn_auto {  }

#main_visual .btn_auto > a {
    display: block;
    background-color: rgba(51, 51, 51, 0.9);
    border: 1px solid #222;
    color: #fff;
    padding: 5px 10px;
    border-radius: 3px;
    text-decoration: none;
    font-size: 1.2rem;
    line-height: 1;
    font-weight: bold;
    transition: all 0.3s ease-in-out;
}

#main_visual .btn_auto > a > span.play { display: none; }
#main_visual .btn_auto > a > span.stop { display: inline; }

#main_visual .btn_auto.on > a > span.play { display: inline; }
#main_visual .btn_auto.on > a > span.stop { display: none; }



/* --- 左右矢印 --- */
.slide_arrow {  }

.slide_arrow .btn {
    padding: 0;
    width: 40px;
    height: 40px;
}

.slide_arrow div.prev {
    position: absolute;
    left: 5px;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    z-index: 50;
    left: -25px;
}

.slide_arrow div.next {
    position: absolute;
    right: 5px;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    z-index: 50;
    right: -25px;
}

.slick-prev { left: 0; }
.slick-next { right: 0; }

.slick-prev,
.slick-next {
    display: block;
    background-color: rgba(255, 255, 255, 0.8);
    font-size: 2rem;
    padding: 10px;
    text-align: center;
    border-radius: 30px;
    box-sizing: border-box;
    position: relative;
    color: #333;
    border: 1px solid #555;
    transition: all 0.3s ease-in-out;
    box-shadow: 0 1px 4px rgba(0,0,0,0.3);
    position: relative;
    outline: none;
    width: 40px;
    height: 40px;
    cursor: pointer;
}

.slick-prev img,
.slick-next img {
    position: absolute;
    left: 0;
    top: 0;
    width: 40px;
    height: 40px;
    border-radius: 40px;
}

.slick-prev > div,
.slick-next > div {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    display: block;
}

.slick-prev i, .slick-next i { display: block; font-size: 1.5rem; }
.slick-prev i { position: relative; left: -1px; }
.slick-next i { position: relative; right: -1px; }

.slick-prev:before, .slick-next:before {
    display: none;
    -webkit-font-smoothing: none;
}

.no-touch .slick-prev:hover, .slick-prev:focus,
.no-touch .slick-next:hover, .slick-next:focus {
    background-color: #333;
    color: #fff;
    border: 1px solid #fff;
}


/* --- 自動再生｜ページャー --- */
div.slide_control {
    position: absolute;
    right: 5px;
    bottom: 10px;
    z-index: 10;
    background-color: rgba(255, 255, 255, 0.8);
    padding: 4px;
    padding-right: 10px;
    border-radius: 2px;
}

div.slide_control .inner { display: table; }

div.slide_control .inner > .cell {
    display: table-cell;
    vertical-align: middle;
}

div.slide_control .inner > .cell + .cell { padding-left: 10px; }

/* --- 自動再生ボタン --- */
div.slide_control .inner > .cell.auto .btn > a {
    display: block;
    background-color: rgba(51, 51, 51, 0.9);
    border: 1px solid #222;
    color: #fff;
    padding: 5px 10px;
    border-radius: 3px;
    text-decoration: none;
    font-size: 1.2rem;
    line-height: 1;
    font-weight: bold;
    transition: all 0.3s ease-in-out;
    
    font-size: 1rem;
    padding: 4px 8px;
}

.no-touch div.slide_control .inner > .cell.auto .btn > a:hover,
div.slide_control .inner > .cell.auto .btn > a:focus { border: 1px solid #eee; }

div.slide_control .inner > .cell.auto .btn.on > a {
    border: 1px solid #999;
    background-color: #e7e7e7;
    color: #444;
}

.no-touch div.slide_control .inner > .cell.auto .btn.on > a:hover,
div.slide_control .inner > .cell.auto .btn.on > a:focus {
    border: 1px dashed #222;
    background-color: #fff;
    color: #222;
}

div.slide_control .inner > .cell.auto .btn > a span.play { display: none; }
div.slide_control .inner > .cell.auto .btn.on > a span.play { display: block; }
div.slide_control .inner > .cell.auto .btn > a span.stop { display: block; }
div.slide_control .inner > .cell.auto .btn.on > a span.stop { display: none; }

/* --- ページャー --- */
ul.slick-dots { display: table; }

ul.slick-dots > li {
    display: table-cell;
    vertical-align: middle;
}

ul.slick-dots > li + li { padding-left: 5px; }

ul.slick-dots > li > a {
    color: #fff;
    transition: all 0.3s ease-in-out;
    background-color: rgba(0,0,0,0.7);
    border-radius: 10px;
    display: block;
    border: 2px solid #333;
    width: 12px;
    height: 12px;
}

ul.slick-dots > li > a img {
    max-width: 6px;
    vertical-align: top;
    max-width: 100%;
}

.no-touch ul.slick-dots > li > a:hover,
ul.slick-dots > li > a:focus { border: 2px solid #ccc; }

ul.slick-dots > li.slick-active > a { background-color: rgba(255,255,255,0.9); }






/* ------------------------------------------------------------

	959px以下

------------------------------------------------------------ */
@media screen and ( max-width : 959px ) {
	
	
    #event_slide {
        width: auto;
        height: auto;
        margin: 0 auto;
        /*margin-left: -170px;*/

        /*opacity: 0;
        transition: 2.5s;*/

        overflow: hidden;
    }
    
    
    .national_block > .content > ul {
        margin-top: 10px;
    }
    
    .national_block > .content > ul > li {
        width: 50%;
        margin-right: 0;
        margin-top: 0;
        padding: 10px;
    }
    
}



/* ------------------------------------------------------------

	767px以下

------------------------------------------------------------ */
@media screen and ( max-width : 767px ) {
	
    .national_block {
        margin-bottom: 30px;
    }

	.national_block > .content > ul > li {
        width: 100%;
    }
}


/* ------------------------------------------------------------

	639px以下

------------------------------------------------------------ */
@media screen and ( max-width : 639px ) {
	
    .national_block > .content > ul > li > a > .unit > h4 {
        font-size: 1.4rem;
    }
    
    .national_block > .content > ul > li > a > .unit > .content {
        padding: 14px;
    }
    
    .national_block > .content > ul > li > a > .unit > .btn {
        
    }
    
	.national_block > .content > ul > li > a > .unit > .btn > span {
        padding: 6px;
        font-size: 1.3rem;
    }
    
    
}


/* ------------------------------------------------------------

	479px以下

------------------------------------------------------------ */
@media screen and ( max-width : 479px ) {
    
    .national_block > .content > ul > li > a > .unit > .content {
        padding: 9px;
    }
    
    
}



