@charset "utf-8";


/* main container */
.container.main_container > div {width:100%; margin:0; padding:0;}

@media (min-width:1180px) {
	.container.main_container + .footer {margin-top:24px;}
}
@media (min-width:768px) and (max-width:1179px) {
	.container.main_container + .footer {margin-top:20px;}
}
@media (max-width:767px) {
	.container.main_container {padding-bottom:48px;}
	.container.main_container + .footer {margin-top:16px;}
}

/* main slide */
.m_slide {position:relative; background:#eee; overflow:hidden;}
.m_slide .ms_navigation {position:absolute; bottom:24px; width:100%; font-size:0; line-height:0; text-align:center; z-index:15;}
.m_slide .ms_navigation * {vertical-align:top;}
.m_slide .slide_pager,
.m_slide .slide_pager > ul,
.m_slide .slide_pager > ul > li,
.m_slide .slide_pager > ul > li > a,
.m_slide .slide_btn,
.m_slide .slide_btn a {display:inline-block;}
.m_slide .slide_pager > ul > li > a,
.m_slide .slide_btn a {width:22px; height:22px; background:url(../image/main/m_icon.png) no-repeat 0 0;}
.m_slide .slide_pager > ul > li,
.m_slide .slide_btn a {margin:0 2px;}
.m_slide .slide_pager .active a {background-position:0 -40px;}
.m_slide .slide_btn .btn_pause {background-position:0 -80px;}
.m_slide .slide_btn .btn_play {background-position:0 -120px;}
.m_slide .slide_list {position:relative; z-index:0; overflow:hidden;}
.m_slide .slide_list .ms_h {display:block;}

@media (min-width:1180px) {
	.m_slide {height:405px;}
	.m_slide .ms_h {width:1180px; height:405px; margin:0 auto;}
	.m_slide .ms_navigation {bottom:96px;}
}
@media (min-width:768px) and (max-width:1179px) {
	.m_slide {height:360px;}
	.m_slide .ms_h {height:360px;}
	.m_slide .ms_navigation {bottom:72px;}
}
@media (max-width:767px) {
	.m_slide .ms_navigation {display:none;}
}
@media(max-width:540px){
	.m_slide .ms_01 .ms_h > div span img {width:100%}
}

/* main slide visual */
.m_slide .ms_01 {font-size:0; line-height:0; background:url(../image/main/mv_01_bg.png) no-repeat center center; background-size:cover;}
.m_slide .ms_01 .ms_h {position:relative; text-align:center;}
.m_slide .ms_01 .ms_h::before {display:inline-block; content:''; height:100%; vertical-align:middle;}
.m_slide .ms_01 .ms_h > div {position:absolute;left:50%;top:50%;transform:translate(-50%,-50%); display:inline-block; vertical-align:middle;}
.m_slide .ms_01 .ms_h > div * {display:inline-block;}
.m_slide .ms_01 .ms_h i {position:relative;}
.m_slide .ms_01 .ms_h i::before,
.m_slide .ms_01 .ms_h i::after {display:block; content:''; height:1px; background:#fff; opacity:0.64; position:absolute; top:50%; margin-top:-1px;}
.m_slide .ms_01 .ms_h i::before {left:0;}
.m_slide .ms_01 .ms_h i::after {right:0;}

@media (min-width:1180px) {
	.m_slide .ms_01 .ms_h > div {padding-bottom:64px;}
	.m_slide .ms_01 .ms_h span {width:100%;}
	.m_slide .ms_01 .ms_h i {width:480px;margin-top:30px}
	.m_slide .ms_01 .ms_h i::before,
	.m_slide .ms_01 .ms_h i::after {width:160px;}
}
@media (min-width:768px) and (max-width:1179px) {
	.m_slide .ms_01 .ms_h > div {padding-bottom:64px;}
	.m_slide .ms_01 .ms_h span {width:100%;}
	.m_slide .ms_01 .ms_h span img {margin-bottom:30px}
	.m_slide .ms_01 .ms_h i {width:440px;}
	.m_slide .ms_01 .ms_h i img {height:44px;}
	.m_slide .ms_01 .ms_h i::before,
	.m_slide .ms_01 .ms_h i::after {width:148px;}
}
@media (max-width:767px) {
	.m_slide .ms_01 .ms_h span {width:100%;}
	.m_slide .ms_01 .ms_h span img {margin-bottom:30px}
	.m_slide .ms_01 .ms_h i {width:280px;}
	.m_slide .ms_01 .ms_h i img {height:28px;}
	.m_slide .ms_01 .ms_h i::before,
	.m_slide .ms_01 .ms_h i::after {width:96px;}
}

/* main layout */
.ml_row {position:relative; padding:12px 0;}
.ml_row::after {display:block; content:''; clear:both;}

@media (min-width:1180px) {
	.ml_row {width:1180px; margin:0 auto;}
	.ml_row .ml_50p {float:left; width:50%;}
	.ml_row .ml_board {padding-right:344px;}
	/*.ml_row .ml_popupzone {position:absolute; right:0; top:0; padding:6px 0;}*/
	
}
@media (min-width:768px) and (max-width:1179px) {
	.ml_row {padding:10px 24px;}
	.ml_row .ml_50p {float:left; width:50%;}
	.ml_row .ml_board {padding-right:304px;}
	/*.ml_row .ml_popupzone {position:absolute; right:0; top:0; padding:10px 24px;}*/
	
}
@media (max-width:767px) {
	.ml_row {padding:8px 16px;}
}

/* m quick menu */
.m_quick_menu {position:relative; z-index:5;}
.m_quick_menu > ul {margin:-16px -8px 0 -8px;}
.m_quick_menu > ul::after {display:block; content:''; clear:both;}
.m_quick_menu > ul > li {float:left; padding:16px 8px 0 8px;}
.m_quick_menu > ul > li > div {position:relative; background-color:#eee; background-repeat:no-repeat; background-position:center center; background-size:cover;}
.m_quick_menu > ul > li:nth-child(1) > div {background-image:url(../image/main/mqm_bg_01permanent.png);}
.m_quick_menu > ul > li:nth-child(2) > div {background-image:url(../image/main/mqm_bg_02planning.png);}
.m_quick_menu > ul > li:nth-child(3) > div {background-image:url(../image/main/mqm_bg_03special.png);}
.m_quick_menu .mqm_t {display:block; font-size:0; line-height:0; text-align:center; position:absolute; left:0; top:0;}
.m_quick_menu .mqm_t::before {display:inline-block; content:''; height:100%; vertical-align:middle;}
.m_quick_menu .mqm_t > strong {display:inline-block; vertical-align:middle;}
.m_quick_menu .mqm_t > strong > span {display:inline-block; font-size:19px; line-height:27px; font-weight:700; color:#fff; vertical-align:middle;}
.m_quick_menu .mqm_t > strong::after {display:inline-block; content:''; background:url(../image/main/mqm_ico_arrow.png) no-repeat center center; width:33px; height:11px; vertical-align:middle; margin:-3px 0 0 8px;}
.m_quick_menu > ul > li:nth-child(1) .mqm_t {background-color:rgba(0,86,58,1);}
.m_quick_menu > ul > li:nth-child(2) .mqm_t {background-color:rgba(0,40,86,1);}
.m_quick_menu > ul > li:nth-child(3) .mqm_t {background-color:rgba(8,97,114,1);}

@media (min-width:1180px) {
	.m_quick_menu {width:1180px; margin:0 auto; margin-top:-88px; padding-bottom:12px;}
	.m_quick_menu > ul > li {width:33.3333%;}
	.m_quick_menu > ul > li > div {height:270px;}
	.m_quick_menu .mqm_t {width:100%; height:96px;}
	.m_quick_menu > ul > li:nth-child(1) .mqm_t {background-color:rgba(0,86,58,0.8);}
	.m_quick_menu > ul > li:nth-child(2) .mqm_t {background-color:rgba(0,40,86,0.8);}
	.m_quick_menu > ul > li:nth-child(3) .mqm_t {background-color:rgba(8,97,114,0.8);}
}
@media (min-width:768px) and (max-width:1179px) {
	.m_quick_menu {padding:0 24px; padding-bottom:10px; margin-top:-64px;}	
	.m_quick_menu > ul > li {width:100%;}
	.m_quick_menu > ul > li > div {height:200px; background-size: calc(100% - 280px) auto; background-position:right 30%}	
	.m_quick_menu .mqm_t {width:280px; height:200px;}
}
@media (max-width:767px) {
	.m_quick_menu {padding:8px 0;}	
	.m_quick_menu > ul {margin:-8px -4px 0 -4px;}
	.m_quick_menu > ul > li {width:100%; padding:8px 4px 0 4px;}
	.m_quick_menu > ul > li > div {height:120px; background-size: calc(100% - 120px) auto; background-position:right 30%}	
	.m_quick_menu .mqm_t {width:120px; height:120px;}
	.m_quick_menu .mqm_t > strong {width:110px; position:absolute; left:50%;top:50%;transform:translate(-50%,-50%);}
	.m_quick_menu .mqm_t > strong > span {font-size:18px; font-weight:500;}
	.m_quick_menu .mqm_t > strong:after {margin-top:5px}
}

/* m_guide */
.ml_row.tb {display:table;}
.m_guide {background:#eff8f4; padding:38px 24px;display:table-cell;vertical-align:middle}
.m_guide * {vertical-align:middle;}
.m_guide > div::after,
.m_guide .mg_time > ul::after {display:block; content:''; clear:both;}
.m_guide .mg_time > ul > li {float:left; padding:4px 0;}


.m_guide .mg_time > ul > li::before {display:inline-block; content:''; border-radius:100%; background:url(../image/main/mg_ico_01.png) no-repeat #fff center center; background-size:100%; vertical-align:middle; margin-right:12px;}
.m_guide .mg_time > ul > li:nth-child(1)::before {background-image:url(../image/main/mg_ico_01.png);}
.m_guide .mg_time > ul > li:nth-child(2)::before {background-image:url(../image/main/mg_ico_02.png);}
.m_guide .mg_time > ul > li > div,
.m_guide .mg_time > ul > li > div > span,
.m_guide .mg_time > ul > li > div > strong {display:inline-block; font-weight:700;}
.m_guide .mg_time > ul > li > div > strong {color:#00563a; letter-spacing:-0.048em;}
.m_guide .mg_time > ul > li > div > span {margin-right:8px;}
.m_guide .mg_detail {margin-top:34px}
.m_guide .mg_detail > ul > li {position:relative; padding:2px 0; padding-left:8px;}
.m_guide .mg_detail > ul > li::before {display:block; content:''; width:2px; height:2px; border-radius:100%; background:#222; position:absolute; left:0; top:12px;}
.m_guide .mg_detail > ul > li > p,
.m_guide .mg_detail > ul > li > strong {display:inline; font-size:14px; line-height:22px;}
.m_guide .mg_detail > ul > li strong {font-weight:500;}

.ml_row .ml_popupzone {display:table-cell;vertical-align:middle;width:340px;padding-left:20px}


@media (min-width:1180px) {
	.m_guide {padding:38px 32px;}
	/*.m_guide > div > div {width:50%;}*/
	.m_guide .mg_time > ul {padding:7px 0;}
	.m_guide .mg_time > ul > li {width:50%;}
	.m_guide .mg_time > ul > li::before {width:64px; height:64px;}
	.m_guide .mg_time > ul > li > div > span {font-size:16px; line-height:24px;}
	.m_guide .mg_time > ul > li > div > strong {font-size:26px; line-height:34px;}
}
@media (min-width:768px) and (max-width:1179px) {
	.m_guide {padding:20px 24px;}
	.m_guide > div > div {width:100%;}
	.m_guide .mg_time > ul > li {width:50%; text-align:center;}
	.m_guide .mg_time > ul > li::before {width:56px; height:56px;}
	.m_guide .mg_time > ul > li > div {text-align:left;}
	.m_guide .mg_time > ul > li > div > span {font-size:15px; line-height:23px;}
	.m_guide .mg_time > ul > li > div > strong {font-size:22px; line-height:30px;}
	.m_guide .mg_detail {margin-top:8px;}
}
@media (max-width:767px) {
	.m_guide {padding:12px 16px;float:none;width:100%;display:block}
	.m_guide > div > div {width:100%;}
	.m_guide .mg_time > ul > li {width:100%; text-align:center;}
	.m_guide .mg_time > ul > li::before {width:48px; height:48px;}
	.m_guide .mg_time > ul > li > div {text-align:left;}
	.m_guide .mg_time > ul > li > div > span {font-size:14px; line-height:22px;}
	.m_guide .mg_time > ul > li > div > strong {font-size:18px; line-height:26px;}
	.m_guide .mg_detail {margin-top:8px;}
	.ml_row .ml_popupzone {display:block;width:auto;padding-left:0}
}
@media(max-width:425px){
	.m_guide .mg_time > ul > li {text-align:left}
}
/* main board */
.m_board {position:relative;}
.m_board .mb_top > span {display:block; font-size:18px; font-weight:500; line-height:26px; letter-spacing:-0.048em;}
.m_board .mb_list {margin-top:8px;}
.m_board .mb_list ul li {position:relative;}
.m_board .mb_list ul li::before {display:block; content:''; width:2px; height:2px; background:#333; border-radius:2px; position:absolute; left:0;}
.m_board .mb_list ul li * {vertical-align:middle;}
.m_board .mb_list ul li a {color:#666; padding-right:8px;}
.m_board .mb_list ul li .ico_new {display:inline-block; width:18px; height:18px; background:url(../image/main/m_icon.png) no-repeat 0 -200px; text-indent:-10000px;}
.m_board .mb_list ul li .mb_date {position:absolute; right:0; top:0; display:block; font-family:'Lato'; font-size:15px; line-height:21px; color:#666;}

.m_board .btn_more {font-size:0; line-height:0; text-align:center;}
.m_board .btn_more::after {display:inline-block; content:''; width:26px; height:26px; border:1px solid #ddd; background:url(../image/main/mb_btn_more.png) no-repeat #fff center center; vertical-align:middle;}
.m_board .btn_more strong {display:none; font-size:14px; line-height:22px; color:#666; font-weight:500; margin-right:8px; vertical-align:middle;}

@media (min-width:1180px) {
	.m_board .mb_list {border:1px solid #ddd; padding:21px 24px; min-height:240px;}
	.m_board .mb_list ul li {padding:9px 0; padding-left:8px; padding-right:96px;}
	.m_board .mb_list ul li::before {top:50%; margin-top:-1px;}
	.m_board .mb_list ul li a {display:inline-block; max-width:calc(100% - 26px); font-size:15px; line-height:21px; text-overflow:ellipsis; overflow:hidden; white-space:nowrap;}
	.m_board .mb_list ul li .mb_date {padding:9px 0;}
	.m_board .btn_more {position:absolute; right:0; top:0;}
}
@media (min-width:768px) and (max-width:1179px) {
	.m_board .mb_list {border-top:1px solid #ddd; padding:12px 0; min-height:210px;}
	.m_board .mb_list ul li {padding:9px 0; padding-left:8px;}
	.m_board .mb_list ul li::before {top:50%; margin-top:-1px;}
	.m_board .mb_list ul li a {display:inline-block; max-width:calc(100% - 26px); font-size:14px; line-height:19px; text-overflow:ellipsis; overflow:hidden; white-space:nowrap;}
	.m_board .mb_list ul li .mb_date {padding:9px 0;}
	.m_board .btn_more {position:absolute; right:0; top:0;}
}
@media (max-width:767px) {
	.m_board .mb_list {padding:12px 16px; border:1px solid #ddd;}
	.m_board .mb_list ul li {padding:8px 0; padding-left:8px;}
	.m_board .mb_list ul li::before {top:17px;}
	.m_board .mb_list ul li a {font-size:13px; line-height:18px;}

	.m_board .btn_more {display:block; background:none; background-color:#f1f1f1; text-align:center; padding:8px;}
	.m_board .btn_more strong {display:inline-block;}
	
	.m_board .mb_list ul li .mb_date {display:none;}
}

/* m_movie */
.m_movie {position:relative;}
.m_movie .mm_top > span {display:block; font-size:18px; font-weight:500; line-height:26px; letter-spacing:-0.048em;}
.m_movie .mm_video {margin-top:8px;}
.m_movie .mm_video > a {position:relative; font-size:0; line-height:0; text-align:center; display:block; height:inherit; background:#eee;}
.m_movie .mm_video > a > img {display:block; width:100%;}
.m_movie .mm_video > a > p {display:block; position:absolute; left:0; top:0; width:100%; height:100%;}
.m_movie .mm_video > a > p::before {display:inline-block; content:''; height:100%; vertical-align:middle;}
.m_movie .mm_video > a > p > strong {display:inline-block; vertical-align:middle; padding:0 24px;}
.m_movie .mm_video > a > p > strong::before {display:inline-block; content:''; width:51px; height:51px; background:url(../image/main/mm_ico_play.png) no-repeat center center;}
.m_movie .mm_video > a > p > strong > span {display:block; font-size:16px; line-height:24px; font-weight:500; color:#fff; margin-top:8px;}
.m_movie .btn_more {font-size:0; line-height:0; text-align:center;}
.m_movie .btn_more::after {display:inline-block; content:''; width:26px; height:26px; border:1px solid #ddd; background:url(../image/main/mb_btn_more.png) no-repeat #fff center center; vertical-align:middle;}
.m_movie .btn_more strong {display:none; font-size:14px; line-height:22px; color:#666; font-weight:500; margin-right:8px; vertical-align:middle;}

@media (min-width:1180px) {
	.m_movie > div {width:320px;}
	
	.m_movie .mm_video {height:240px;}
	.m_movie .mm_video > a > img {height:100%;}

	.m_movie .btn_more {position:absolute; right:0; top:0;}
}
@media (min-width:768px) and (max-width:1179px) {
	.ml_row .ml_popupzone {width:300px}
	.m_movie > div {width:280px;}
	.m_movie .mb_list ul li .mb_date {padding:6px 0;}
	
	.m_movie .mm_video {height:210px;}
	.m_movie .mm_video > a > img {height:100%;}

	.m_movie .btn_more {position:absolute; right:0; top:0;}
}
@media (max-width:767px) {
	.m_movie {margin-top:16px;}
	.m_movie .btn_more {display:block; background:none; background-color:#f1f1f1; text-align:center; padding:8px;}
	.m_movie .btn_more strong {display:inline-block;}
}

/* m_sns */
.m_sns > div {position:relative; background:#f3fafb;}
.m_sns > div::before {display:block; content:''; width:174px; height:142px; background:url(../image/main/ms_ico_01.png) no-repeat center center; position:absolute;}
.m_sns > div::after {display:block; content:''; width:72px; height:66px; background:url(../image/main/ms_ico_02.png) no-repeat center center; position:absolute;}
.m_sns > div > div {position:relative;}
.m_sns .ms_top {display:inline-block; text-align:center;}
.m_sns .ms_top span {display:block; font-size:15px; line-height:23px; font-weight:700;}
.m_sns .ms_top p {display:block; font-size:13px; line-height:21px; margin-top:2px;}
.m_sns .ms_list {font-size:0; line-height:0;}
.m_sns .ms_list > ul::after {display:block; content:''; clear:both;}
.m_sns .ms_list > ul > li {float:left; width:50%;}
.m_sns .ms_list > ul > li::before {display:inline-block; content:''; width:64px; height:64px; border-radius:100%; background-color:#fff; background-repeat:no-repeat; background-position:center center; vertical-align:middle;}
.m_sns .ms_list > ul > li:nth-child(1)::before {background-image:url(../image/main/ms_ico_facebook.png);}
.m_sns .ms_list > ul > li:nth-child(2)::before {background-image:url(../image/main/ms_ico_youtube.png);}
.m_sns .ms_list > ul > li > div {display:inline-block; vertical-align:middle; padding:0 16px;}
.m_sns .ms_list > ul > li > div > strong {display:block; font-size:15px; line-height:23px; font-weight:700;}
.m_sns .ms_list > ul > li > div > a {display:block;}
.m_sns .ms_list > ul > li > div > a > span {display:inline-block; font-size:12px; line-height:20px; color:#666; text-decoration:underline; vertical-align:middle;}
.m_sns .ms_list > ul > li > div > a::after {display:inline-block; content:''; width:16px; height:16px; background:url(../image/main/ms_ico_arrow.png) no-repeat center center; margin-left:6px; vertical-align:middle;}

@media (min-width:1180px) {
	.m_sns {padding:16px 0;}
	.m_sns > div {height:104px; border-radius:55px; padding:20px 220px;}
	.m_sns > div::before {left:50px; top:-10px;}
	.m_sns > div::after {right:80px; top:20px;}
	.m_sns > div > div {padding-left:320px;}
	.m_sns .ms_top {position:absolute; left:0; top:0; width:320px;}
}
@media (min-width:768px) and (max-width:1179px) {
	.m_sns > div {height:150px; border-radius:75px; padding:16px 140px 16px 210px;}
	.m_sns > div::before {left:0; bottom:0;}
	.m_sns > div::after {right:0; top:20px;}
	.m_sns .ms_top {width:100%;}
	.m_sns .ms_list {margin-top:8px;}
	.m_sns .ms_list > ul > li {text-align:center;}
}
@media (max-width:767px) {
	.m_sns > div {padding:20px 24px;}
	.m_sns > div::before,
	.m_sns > div::after {display:none;}
	.m_sns .ms_top {width:100%;}
	.m_sns .ms_list {margin-top:8px;}
	.m_sns .ms_list > ul > li {text-align:center;}
	.m_sns .ms_list > ul > li > div {width:100%; margin-top:4px;}
}