/* common */
#container {min-width: 1280px;}
article h2 {margin-bottom: 25px; font-size: 40px; font-weight: 800;}
article h2 + p {font-size: 20px;}
.btn_link01 {position: absolute; right: 0; top: 17px; font-size: 20px;}
.btn_link01:after {content: ''; display: inline-block; margin-left: 8px; width: 24px; height: 24px; background: url(../img/btn_link01.png) no-repeat; vertical-align: sub;}
.btn_link01:hover, .btn_link01:focus, .btn_link01:active {text-decoration: none;}


/* popup */
.notice-popup {display: none; position: fixed; background-color: #fff; z-index: 100;}
.notice-popup.active {display: block;}
.notice-popup .pop-content a {display: block; width: 100%; height: 100%;}
.notice-popup .btm-close {position: relative; padding: 5px;}
.notice-popup .btm-close input[type="checkbox"], .notice-popup .btm-close label {vertical-align: middle;}
.notice-popup .btm-close button {position: absolute; right: 5px;}


/* main_visual */
.main_visual {position: relative; padding-top: 100px; width: 100%; height: 800px;overflow:hidden}
.main_visual .slick-slider {height: 100%;}
.main_visual .slick-list {width: calc(100% - 310px); height: 100%; overflow: visible;}
.main_visual .slick-list .slick-track {height: 100%;}
/*.main_visual .slick-list .slick-slide {overflow: hidden;}*/
.main_visual .slick-slide div[class^='visual__img'] {height: 100%; overflow: hidden;}
.main_visual .slick-slide div[class^='visual__img'] img {transform: scale(1.5); -webkit-transform: scale(1.5); -moz-transform: scale(1.5);}
/* .main_visual .slick-list .visual__img01 {background: url(../img/slide_main01.jpg) no-repeat 50% top; background-size: cover;}
.main_visual .slick-list .visual__img02 {background: url(../img/slide_main02.jpg) no-repeat 50% top; background-size: cover;}
.main_visual .slick-list .visual__img03 {background: url(../img/slide_main03.jpg) no-repeat 50% top; background-size: cover;}
.main_visual .slick-list .visual__img04 {background: url(../img/slide_main04.jpg) no-repeat 50% top; background-size: cover;}
.main_visual .slick-list .visual__img05 {background: url(../img/slide_main05.jpg) no-repeat 50% top; background-size: cover;} */
.main_visual .slick-slide.slick-current div[class^='visual__img'] img {width:100%;height: 100%; transform: scale(1.5); -webkit-transform: scale(1.5); -moz-transform: scale(1.5); animation: scaleAnimation 4s forwards; -webkit-animation: scaleAnimation 4s forwards; -moz-animation: scaleAnimation 4s forwards;}

@keyframes scaleAnimation {
    0% {transform: scale(1.5);}
    100% {transform: scale(1);}
}

.main_visual .visual__cont {position: absolute; right: -310px; bottom: 0;  padding: 60px 320px 60px 55px; width: 800px; height: 420px;   background: url(../img/logo2.png) #4ea2b7 no-repeat 75% 107%; box-sizing: border-box;}
.main_visual .visual__cont strong {font-size: 40px; font-weight: 900; line-height: 1.3;}
.main_visual .visual__cont p {margin-top: 25px; font-size: 20px; font-weight: 500; line-height: 1.6; word-break: keep-all;}
.main_visual .slide_ctrl {position: absolute; right: 549px; bottom: 0; zoom: 1}
.main_visual .slide_ctrl:after {content: ''; display: block; clear: both;}
.main_visual .slide_ctrl button {float: left; width: 80px; height: 80px; font-size: 0;}
.main_visual .slide_ctrl .btn_pause {background: url(../img/btn_pause.png) #eee no-repeat; background-size: cover;}
.main_visual .slide_ctrl .btn_play {display: none; background: url(../img/btn_play.png) #eee no-repeat; background-size: cover;}
.main_visual .slide_ctrl .btn_prev {background: url(../img/btn_prev.png) #fff no-repeat; background-size: cover;}
.main_visual .slide_ctrl .btn_next {background: url(../img/btn_next.png) #fff no-repeat; background-size: cover;}
.main_visual .slide_ctrl p {float: left; margin: 0 0 0 30px; width: 60px; font-size: 20px; line-height: 80px;}


/* main_sec01 */
.main_sec01 {position: relative; padding: 195px 0 115px; text-align: right; background-color: #fff; overflow: hidden;}
.main_sec01:before {content: ''; position: absolute; left: 0; top: 0; width: 800px; height: 800px; background: url(../img/bg_main_sec01.png) #fff7db no-repeat 62% bottom;}
.main_sec01 h2 {position: absolute; left: 0; top: -90px; text-align: left;}
.main_sec01 h2 + p {position: absolute; left: 0; top: -5px; text-align: left;}
.main_sec01 .btn_link01 {top: -65px;}

.main_sec01 .wrap_slide {display: inline-block; width: 980px;}
.main_sec01 #slide02 {width: 100%;}
.main_sec01 .slick-list {margin: 0 -20px;}
.main_sec01 .slick-slide {margin: 0 20px;}
.main_sec01 .slick-slide .thum {margin-bottom: 15px; width: 300px; height: 300px; overflow: hidden;}
.main_sec01 .slick-slide .thum img {width: 100%; height: 100%;}
.main_sec01 .slick-slide:hover .thum img, .main_sec01 .slick-slide:focus .thum img, .main_sec01 .slick-slide:active .thum img {transform: scale(1.1); -webkit-transform: scale(1.1); -moz-transform: scale(1.1); transition: all .5s; -webkit-transition: all .5s; -moz-transition: all .5s;}
.main_sec01 .slick-slide .tit {display: -webkit-box; height: 3em; font-size: 18px; text-align: left; text-overflow: ellipsis; word-wrap: break-word; -webkit-line-clamp: 2; -webkit-box-orient: vertical; line-height: 1.5em; overflow: hidden;}
.main_sec01 .slick-slide p {margin-top: 15px; font-size: 16px; color: #474747; text-align: left;}

.main_sec01 .slide_ctrl {display: block; margin: 40px auto 0; width: 170px;}
.main_sec01 .slide_ctrl button {width: 40px; height: 40px; font-size: 0;}
.main_sec01 .slide_ctrl .btn_prev {background: url(../img/btn_prev.png) no-repeat 50%;}
.main_sec01 .slide_ctrl .btn_next {background: url(../img/btn_next.png) no-repeat 50%;}
.main_sec01 .slide_ctrl .slide_cnt {display: inline-block; margin: 0 10px; font-size: 20px; vertical-align: middle;}


/* main_sec02 */
.main_sec02 {padding: 95px 0 85px; width: 100%; height: 420px; color: #fff;  text-align: center; background: url(../img/bg_main_sec02.jpg) no-repeat 50% top; box-sizing: border-box;}
.main_sec02 h2 + p {font-weight: 300; letter-spacing: 0;}
.main_sec02 .btn_link02 {display: block; margin: 35px auto 0; width: 240px; height: 60px; font-size: 20px; color: #fff; text-align: center; line-height: 60px; border: 1px solid #fff;}
.main_sec02 .btn_link02:after {content: ''; display: inline-block; margin-left: 5px; width: 12px; height: 12px; background: url(../img/btn_link02.png) no-repeat; vertical-align: middle;}
.main_sec02 .btn_link02:hover, .main_sec02 .btn_link02:focus, .main_sec02 .btn_link02:active {text-decoration: none;}


/* main_sec03 */
.main_sec03 {padding: 155px 0 160px;} 
.main_sec03 .reference {border-top: 2px solid #202020;}
.main_sec03 .reference li {position: relative; padding: 25px 0 25px 110px; border-bottom: 1px solid #b3b3b3; cursor: pointer; box-sizing: border-box;}
.main_sec03 .reference li .tag {position: absolute; left: 0; top: 25px; width: 90px; height: 30px; font-size: 16px; text-align: center; line-height: 32px; background-color: #eee;}
.main_sec03 .reference li .tit {display: block; width: 80%; font-size: 20px; text-overflow: ellipsis; white-space: nowrap; overflow: hidden;}
.main_sec03 .reference li .info {position: absolute; right: 0; top: 26px; font-size: 16px;}
.main_sec03 .reference li .info span {display: inline-block; position: relative; padding: 0 10px; vertical-align: middle;}
.main_sec03 .reference li .info span:first-child:after {content: ''; position: absolute; right: -2px; top: 3px; width: 1px; height: 15px; background-color: #202020;}

.main_sec03 .reference li:hover .tag, .main_sec03 .reference li:focus .tag, .main_sec03 .reference li:active .tag {background-color: #846600; color: #fff;}
.main_sec03 .reference li:hover .tit, .main_sec03 .reference li:focus .tit, .main_sec03 .reference li:active .tit {color: #846600; text-decoration: none;}
.main_sec03 .reference li.top .tit {display: block; margin-bottom: 20px; font-size: 24px; font-weight: 700;}
.main_sec03 .reference li.top .cont {display: -webkit-box; height: 3em; font-size: 18px; text-overflow: ellipsis; word-wrap: break-word; -webkit-line-clamp: 2; -webkit-box-orient: vertical; line-height: 1.5em; overflow: hidden;}


/* main_sec04 */
.main_sec04 {padding: 80px 0; background: url(../img/bg_main_sec04.jpg) no-repeat 50% top;}
.main_sec04 .slick-list {margin: 0 -20px;}
.main_sec04 .slick-slide {position: relative; margin: 0 20px; width: 100%; height: 100%;}
.main_sec04 .slick-slide:hover, .main_sec04 .slick-slide:focus, .main_sec04 .slick-slide:active {text-decoration: none;}
.main_sec04 .slick-slide:hover:after, .main_sec04 .slick-slide:focus:after, .main_sec04 .slick-slide:active:after {content: ''; position: absolute; left: 0; top: 0; width: 100%; height: calc(100% - 50px); background: url(../img/hover_video.png) no-repeat; background-size: cover;}
.main_sec04 .slick-slide img {width: 100%; box-shadow: 5px 5px 10px rgba(0,0,0,.15);}
.main_sec04 .slick-slide p {margin-top: 20px; font-size: 20px; text-overflow: ellipsis; white-space: nowrap; overflow: hidden;}
.main_sec04 .slide_ctrl {display: block; margin: 40px auto 0; width: 170px;}
.main_sec04 .slide_ctrl button {width: 40px; height: 40px; font-size: 0;}
.main_sec04 .slide_ctrl .btn_prev {background: url(../img/btn_prev.png) no-repeat 50%;}
.main_sec04 .slide_ctrl .btn_next {background: url(../img/btn_next.png) no-repeat 50%;}
.main_sec04 .slide_ctrl .slide_cnt {display: inline-block; margin: 0 10px; font-size: 20px; vertical-align: middle;}


/* main_sec05 */
.main_sec05 {padding: 65px 0 160px;}
.main_sec05 .notice {display: inline-block; position: relative;  margin-right: 37px; width: calc((100% - 40px) / 2); vertical-align: top;}
.main_sec05 .notice ul {border-top: 2px solid #1a1a1a;}
.main_sec05 .notice ul li {padding: 23px 0; border-bottom: 1px solid #b3b3b3; zoom: 1}
.main_sec05 .notice ul li:after {content: ''; display: block; clear: both;}
.main_sec05 .notice ul li a {float: left; display: block; width: 80%; font-size: 20px; text-overflow: ellipsis; white-space: nowrap; overflow: hidden;}
.main_sec05 .notice ul li p {float: right; margin-right: 20px; font-size: 16px; line-height: 30px;}

.main_sec05 .newsletter {display: inline-block; width: calc((100% - 40px) / 2); vertical-align: top; zoom: 1}
.main_sec05 .newsletter:after {content: ''; display: block; clear: both;}
.main_sec05 .newsletter a {float: left; display: block; position: relative; width: calc((100% - 40px) / 2); height: 400px;}
.main_sec05 .newsletter a:hover, .main_sec05 .newsletter a:focus, .main_sec05 .newsletter a:active {text-decoration: none;}
.main_sec05 .newsletter a:after {content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 200px; background-color: rgba(0,0,0,.6);}
.main_sec05 .newsletter .nwl01 {margin-right: 40px;}
.main_sec05 .newsletter a .nwl__box {padding: 40px 30px; height: 100%; box-sizing: border-box;}
.main_sec05 .newsletter a .nwl__box:after {content: ''; position: absolute; right: 0; top: 50%; margin-top: -30px; width: 60px; height: 60px; background: url(../img/btn_next.png) #ffc600 no-repeat 50%; z-index: 5;}
.main_sec05 .newsletter .nwl01 .nwl__box {background: url(../img/bg_nwl01.jpg) no-repeat; background-size: cover;}
.main_sec05 .newsletter .nwl02 .nwl__box {background: url(../img/bg_nwl02.jpg) no-repeat; background-size: cover;}
.main_sec05 .newsletter a strong {display: block; position: relative;  margin-bottom: 20px; font-size: 24px; color: #fff; line-height: 1; z-index: 5;}
.main_sec05 .newsletter a strong:before {content: ''; display: block; margin-bottom: 20px; width: 40px; height: 2px; background-color: #ffc600;}
.main_sec05 .newsletter a p {position: relative; font-size: 18px; color: #fff; z-index: 5;}


/* main_sec06 */
.main_sec06 {padding-bottom: 160px; overflow: hidden;}
.main_sec06 .sponsor {float: left; position: relative; padding-top: 50px; width: 50%;}
.main_sec06 .sponsor:before {content: ''; position: absolute; left: -360px; top: 0; width: 1000px; height: 285px; background-color: #fff7db; z-index: -1;}
.main_sec06 .sponsor p {margin-bottom: 55px; font-size: 20px;}
.main_sec06 .sponsor a {display: block; position: relative; padding-left: 20px; width: 100%; height: 60px; background-color: #ffc600; font-size: 20px; line-height: 60px; box-sizing: border-box;}
.main_sec06 .sponsor a:after {content: ''; position: absolute; right: 0; top: 0; width: 60px; height: 60px; background: url(../img/btn_next.png) no-repeat 50%;}
.main_sec06 .sponsor a:hover, .main_sec06 .sponsor a:focus, .main_sec06 .sponsor a:active {text-decoration: none;}

.main_sec06 .contact {float: right; position: relative; padding: 110px 0 0 40px; width: 50%; box-sizing: border-box;}
.main_sec06 .contact:before {content: ''; position: absolute; left: 0; bottom: 0; width: 1000px; height: 285px; background-color: #ede8d9; z-index: -1;}
.main_sec06 .contact p {margin-bottom: 55px; font-size: 20px;}
.main_sec06 .contact a {position: absolute; top: 0; left: 0; padding-left: 20px; width: 100%; height: 60px; background-color: #846600; font-size: 20px; color: #fff; line-height: 60px; box-sizing: border-box;}
.main_sec06 .contact a:after {content: ''; position: absolute; right: 0; top: 0; width: 60px; height: 60px; background: url(../img/btn_next02.png) no-repeat 50%;}
.main_sec06 .contact a:hover, .main_sec06 .contact a:focus, .main_sec06 .contact a:active {text-decoration: none;}


@media screen and (max-width: 1030px) {

    /* common */
    #container {min-width: auto;}
    article h2 {margin-bottom: 20px; font-size: 32px;}
    article h2 + p {font-size: 16px;}
    .btn_link01 {top: 13px; right: 15px; font-size: 16px;}
    .btn_link01:after {margin-left: 5px; width: 20px; height: 20px; background-size: cover;}


    /* popoup */
    .notice-popup {left: 10px !important; width: calc(100% - 20px) !important}
    .notice-popup .pop-content {width: 100%;}
    .notice-popup .pop-content img {width: 100% !important; height: auto !important;}

    /* main_visual */
    .main_visual {padding-top: 60px; height: auto;}
    .main_visual .slick-slider {height: 560px;}
    .main_visual .slick-list {width: 100%; height: 100%; overflow: hidden;}
    .main_visual .slick-list .slick-slide {overflow: hidden;}
    .main_visual .slick-slide.slick-current div[class^='visual__img'] {height: 315px;}
    .main_visual .slick-slide.slick-current div[class^='visual__img'] img {width: 100%;}
    

    .main_visual .visual__cont {position: relative; right: auto; padding: 40px 15px 100px; width: 100%; height: auto; min-height: 245px; background: #4ea2b7;}
    .main_visual .visual__cont:after {content: ''; position: absolute; right: 0; bottom: -6px; width: 204.5px; height: 75px; background: url(../img/mobile/logo2.png) no-repeat; background-size: contain;}
    .main_visual .visual__cont strong {font-size: 32px;}
    .main_visual .visual__cont p {margin-top: 20px; font-size: 16px;}
    .main_visual .visual__cont p br {display: none;}
    .main_visual .slide_ctrl {left: 0; right: auto;}
    .main_visual .slide_ctrl button {width: 60px; height: 60px;}
    .main_visual .slide_ctrl p {margin-left: 20px; font-size: 16px; line-height: 60px;}


    /* main_sec01 */
    .main_sec01 {padding: 70px 0;}
    .main_sec01:before {width: 100%; height: 50%; background: #fff7db}
    .main_sec01:after {content: ''; position: absolute; right: -26px; top: -1px; width: 258px; height: 260px; background: url(../img/bg_main_sec01.png) no-repeat; background-size: contain;}
    .main_sec01 h2 {position: relative; top: auto;}
    .main_sec01 h2 + p {position: relative; top: auto;}
    .main_sec01 .btn_link01 {top: 119px; z-index: 10;}

    .main_sec01 .wrap_slide {position: relative; margin-top: 25px; width: 100%; z-index: 5;}
    .main_sec01 .slick-list {margin: 0 -7.5px;}
    .main_sec01 .slick-slide {margin: 0 7.5px;}
    .main_sec01 .slick-slide .thum {width: 100%; height: 165px;}

    .main_sec01 .slick-slide .tit {font-size: 18px;}
    .main_sec01 .slick-slide p {margin-top: 5px; font-size: 14px;}
    .main_sec01 .slide_ctrl {margin-top: 20px; width: 155px;}
    .main_sec01 .slide_ctrl .slide_cnt {font-size: 16px;}


    /* main_sec02 */
    .main_sec02 {padding: 60px 0 70px; background: url(../img/mobile/bg_main_sec02.jpg) no-repeat 50% top; background-size: cover;}
    .main_sec02 .btn_link02 {margin-top: 25px; width: 210px; height: 50px; font-size: 16px; line-height: 50px;}
    .main_sec02 .btn_link02:after {margin-left: 8px; vertical-align: unset;}


    /* main_sec03 */
    .main_sec03 {padding: 75px 0 80px;}
    .main_sec03 .reference li {padding: 20px 0;}
    .main_sec03 .reference li .tag {display: block; position: relative; top: 0; margin-bottom: 15px; width: 72px; height: 25px; font-size: 14px; line-height: 27px;}
    .main_sec03 .reference li .tit {margin-bottom: 10px; width: 100%; font-size: 16px;}
    .main_sec03 .reference li .info {position: relative; right: auto; top: auto; margin-bottom: 15px; font-size: 14px;}
    .main_sec03 .reference li .info span:first-child {padding-left: 0;}
    .main_sec03 .reference li.top .tit {display: -webkit-box; height: 3em; font-size: 24px; text-overflow: ellipsis; word-wrap: break-word; white-space: normal; -webkit-line-clamp: 2; -webkit-box-orient: vertical; line-height: 1.5em; overflow: hidden;}
    .main_sec03 .reference li.top .cont {font-size: 14px;}


    /* main_sec04 */
    .main_sec04 {padding: 60px 0 70px; background-size: 100% 46%;}
    .main_sec04 .wrap_slide {overflow-x: hidden;}
    .main_sec04 .slick-slide:hover:after, .main_sec04 .slick-slide:focus:after, .main_sec04 .slick-slide:active:after {height: calc(100% - 34px);}
    .main_sec04 .slick-slide p {margin-top: 10px; font-size: 16px;}
    .main_sec04 .slide_ctrl {margin-top: 20px; width: 155px;}
    .main_sec04 .slide_ctrl .slide_cnt {font-size: 16px;}


    /* main_sec05 */
    .main_sec05 {padding: 0 0 80px;}
    .main_sec05 .notice {display: block; margin: 0 0 80px 0; width: 100%;}
    .main_sec05 .notice .btn_link01 {right: 0;}
    .main_sec05 .notice ul li {padding: 10px 0;}
    .main_sec05 .notice ul li a {width: 76%; font-size: 16px;}
    .main_sec05 .notice ul li p {margin-right: 0; line-height: 24px;}

    .main_sec05 .newsletter {display: block; width: 100%;}
    .main_sec05 .newsletter a {float: none; width: 100%; height: auto; box-sizing: border-box;}
    .main_sec05 .newsletter a:before {content: ''; display: block; padding-top: 93%;}
    .main_sec05 .newsletter a:after {height: 50%;}
    .main_sec05 .newsletter a .nwl__box {position: absolute; top: 0; left: 0; right: 0; bottom: 0;}
    .main_sec05 .newsletter .nwl01 {margin: 0 0 30px 0;}
    .main_sec05 .newsletter .nwl01 .nwl__box {background: url(../img/mobile/bg_nwl01.jpg) no-repeat 50%; background-size: cover;}
    .main_sec05 .newsletter .nwl02 .nwl__box {background: url(../img/mobile/bg_nwl02.jpg) no-repeat 50%; background-size: cover;}
    .main_sec05 .newsletter a strong {font-size: 24px;}
    .main_sec05 .newsletter a strong:before {margin-bottom: 15px;}
    .main_sec05 .newsletter a p {font-size: 14px;}


    /* main_sec06 */
    .main_sec06 {padding-bottom: 80px;}
    .main_sec06 .layout {padding: 0;}
    .main_sec06 .sponsor {float: none; padding-top: 30px; width: 100%; background-color: #fff7db;}
    .main_sec06 .sponsor:before {display: none;}
    .main_sec06 .sponsor h2 {padding: 0 15px;}
    .main_sec06 .sponsor p {padding: 0 15px; margin-bottom: 0; font-size: 16px; word-break: keep-all;}
    .main_sec06 .sponsor a {padding: 0 15px; margin-top: 40px; height: 50px; font-size: 16px; font-weight: 500; line-height: 50px;}
    .main_sec06 .sponsor a:after {width: 50px; height: 50px;}

    .main_sec06 .contact {float: none; padding: 30px 0 0; width: 100%; background-color: #ede8d9;}
    .main_sec06 .contact:before {display: none;}
    .main_sec06 .contact h2 {padding: 0 15px;}
    .main_sec06 .contact p {padding: 0 15px; margin-bottom: 0; font-size: 16px; word-break: keep-all;}
    .main_sec06 .contact a {position: relative; display: block; padding: 0 15px; margin-top: 40px; height: 50px; font-size: 16px; font-weight: 500; line-height: 50px;}
    .main_sec06 .contact a:after {width: 50px; height: 50px;}



}