@charset "utf-8";

/* ==========================================================================
   main layout (redefined)
   ========================================================================== */
body { background-color: #fff; }

.header .inner-wrap,
#footer .inner-wrap { clear:both; width:1280px; margin:0 auto; }

.main-wrapper {  }
.main-wrapper .header {height:66px;}
.main-container { padding: 85px 0 70px 0; }
.main-container-inner { position: relative; width: 1280px; margin: 0 auto; }
.main-container-inner:after { content: ''; display: block; clear: both; height: 0; visibility: hidden; }

.header,
#footer,
.main-container { min-width:1280px; }


/* ==========================================================================
   main content
   ========================================================================== */
.main-section { position: relative; float: left; box-sizing: border-box; }
.main-section01 { width: 640px; }
.main-section02 { width: 200px; border: 1px solid #e4e4e4; border-left: 0; }
.main-section03 { width: 440px;  border-left: 0; border-right:1px solid #e4e4e4;}


/* main-slide-container
---------------------------------------------- */
.main-slide-container {  }
.main-slide-container .swiper-container {  }
.main-slide-container .swiper-container .swiper-wrapper {  }
.main-slide-container .swiper-container .swiper-wrapper .swiper-slide {  }
.main-slide-container .swiper-pagination {  }
.main-slide-container .swiper-control {  }
.main-slide-container .swiper-control-prev {  }
.main-slide-container .swiper-control-next {  }


/* main-visual
---------------------------------------------- */
.main-popup-wrapper-inner .main-popup.popup-size02 {position:relative; margin-bottom:10px;}
.main-visual { position: relative; width: 640px; }
.main-visual .swiper-container { overflow: hidden; width: 640px; height: 820px; }
.main-visual .swiper-container .swiper-wrapper .swiper-slide { position: relative; }
.main-visual .swiper-container .swiper-wrapper .swiper-slide:before { z-index: 2; content: ''; display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.2); }
.main-visual .swiper-pagination { z-index: 2; position: absolute; bottom: 0; margin-bottom: 7.8125%; left: 0; width: 100%; font-size: 0; line-height: 0; text-align: center; }
.main-visual .swiper-pagination .swiper-pagination-bullet { display: inline-block; width: 15px; height: 15px; margin: 0 3px; border: 0; background: url('../img/ico/ico_slide_page.png') no-repeat 0 -15px; cursor: pointer; opacity: 1; }
.main-visual .swiper-pagination .swiper-pagination-bullet-active { background-position: 0 0; }
.main-visual .swiper-handler { position: absolute; bottom: 0; width: 100%; margin-bottom: 18.75%; box-sizing: border-box; }
.main-visual .swiper-control { z-index: 3; overflow: hidden; position: absolute; bottom: 0; width: 75px; height: 100px; border: none; background: none; text-indent: -9999px; }
.main-visual .swiper-control:hover { background-color: rgba(0, 0, 0, 0.05); }
.main-visual .swiper-control-prev { left: 0; background: url('../img/ico/ico_slide_prev.png') no-repeat 50% 50%; }
.main-visual .swiper-control-next { right: 0; background: url('../img/ico/ico_slide_next.png') no-repeat 50% 50%; }
.main-visual .main-visual-image { z-index: 1; position: relative; color: #fff; }
.main-visual .main-visual-content { z-index: 3; position: absolute; bottom: 0; margin-bottom: 15.625%; left: 0; width: 100%; color: #fff; text-align: center; line-height: normal; box-sizing: border-box; }
.main-visual .main-visual-content .visual-content-title { color: #fff; font-size: 42px; line-height: 52px; font-weight: normal; letter-spacing: -1px; text-shadow: 1px 0 0 rgba(0,0,0,0.5); }
.main-visual .main-visual-content .visual-content-description { margin-top: 13px; color: #fff; font-size: 18px; line-height: 25px; font-weight: normal; text-shadow: 1px 0 0 rgba(0,0,0,0.5); }


/* main-quick
---------------------------------------------- */
.main-quick { position: relative; overflow:hidden;}
.main-quick ul {  }
.main-quick ul li {float:left; width:50%; position: relative; height: 273px; text-align: center; box-sizing: border-box; }
.main-quick ul li:first-child { height: 272px; margin: 0; border-top: 0;  border-right:1px solid #e4e4e4;}
.main-quick ul li:after { content: ''; display: inline-block; overflow: hidden; width: 1px; height: 100%; margin-left: -5px; vertical-align: middle; }
.main-quick ul li a { display:block; width:100%; height:100%;vertical-align: middle;  box-sizing:border-box; padding-top:40px;}
.main-quick ul li .main-quick-icon { display: block; position: relative; overflow: hidden; width: 104px; height: 104px; margin: 0 auto 15px auto; border-radius: 50%; }
.main-quick ul li .main-quick-title { color: #202c39; font-size: 18px; font-weight: normal; line-height: normal; }
.main-quick ul li .main-quick-description { margin-top: 8px; color: #6e7179; font-size: 14px; line-height: 20px; }


/* main-happystory
---------------------------------------------- */
.main-happystory { position: relative; height: 546px; margin-bottom: -1px; padding: 38px 40px 0 40px; box-sizing: border-box; }
.main-happystory .main-happystory-title { height: 40px; color: #202c39; font-size: 18px; font-weight: normal; line-height: normal; }
.main-happystory .main-happystory-content { height: 427px; }
.main-happystory .main-happystory-content a { display: inline-block; }
.main-happystory .main-happystory-content .item-image { overflow: hidden; width: 358px; height: 220px; margin-bottom: 28px; }
.main-happystory .main-happystory-content .item-image img { max-width: 100%; }
.main-happystory .main-happystory-content .item-title { overflow: hidden; max-height: 46px; margin-bottom: 15px; color: #1b1d21; font-size: 18px; line-height: 23px; }
.main-happystory .main-happystory-content .item-text { overflow: hidden; max-height: 89px; margin-top: 10px; color: #72767e; font-size: 15px; line-height: 23px; }
.main-happystory .main-happystory-content .item-text:before { content: ''; display: block; overflow: hidden; width: 34px; height: 2px; margin-bottom: 18px; background-color: #1b1d21; font-size: 0; line-height: 0; }
.main-happystory .main-happystory-footer { position: relative; height: 20px; margin: 0 -40px; padding: 12px 20px 8px; background-color: #f7f7f9; }
.main-happystory .main-happystory-footer:after { content: ''; display: block; clear: both; height: 0; visibility: hidden; }
.main-happystory .main-happystory-footer .item-meta { display: inline-block; color: #6e7179; font-size: 12px; line-height: normal; }
.main-happystory .main-happystory-footer .item-meta.meta-count {  }
.main-happystory .main-happystory-footer .item-meta.meta-count .iconset { top: -1px; margin-right: 3px; vertical-align: middle; }
.main-happystory .main-happystory-footer .item-meta.meta-count .count { vertical-align: middle; }
.main-happystory .main-happystory-footer .item-meta.meta-date { display:inline-block; margin-right: 10px; padding-left: 11px; vertical-align:middle;}
.main-happystory .main-happystory-footer .item-meta.meta-date:before { content:""; display:inline-block; width:1px; height:10px; margin-right:10px; vertical-align:middle; background: #d1d1d1;}
.main-happystory .main-happystory-footer .item-option { float: right; }
.main-happystory .main-happystory-footer .item-option .btn-option { margin: 0 0 0 5px; padding: 0; border: 0; background: none; }
.main-happystory .btn-more { position: absolute; top: 30px; right: 30px; padding: 10px; }


/* main-notice
---------------------------------------------- */
.main-notice { position: relative; height: 273px; padding: 0 40px; border-top: 1px solid #e4e4e4; border-right:1px solid #e4e4e4; border-bottom:1px solid #e4e4e4;box-sizing: border-box; }
.main-notice .tab-menu { position: relative; padding: 38px 0 25px 0; }
.main-notice .tab-menu:after { content: ''; display: block; clear: both; height: 0; visibility: hidden; }
.main-notice .tab-menu li {  }
.main-notice .tab-menu li:before { content: ''; display: inline-block; float: left; width: 1px; height: 19px; margin: 0 20px; background-color: #e3e4e5; }
.main-notice .tab-menu li:first-child:before { display: none; }
.main-notice .tab-menu li .tab-anchor { float: left; color: #72767e; font-size: 14px; line-height: 20px; }
.main-notice .tab-menu li .tab-anchor.active { color: #1b1d21; font-size: 18px; }
.main-notice .tab-panel { position: relative; }
.main-notice .tab-panel ul {  }
.main-notice .tab-panel ul li { position: relative; padding: 10px 24px 10px 10px; color: #6e7179; font-size: 15px; line-height: normal; vertical-align: top; }
.main-notice .tab-panel ul li:before { content: ''; display: block; position: absolute; top: 17px; left: 0; width: 3px; height: 3px; background: #696969; font-size: 0; line-height: 0; }
.main-notice .tab-panel ul li a { display: inline-block; max-width: 100%; color: #6e7179; white-space: nowrap; }
.main-notice .tab-panel ul li .subject { display: inline-block; max-width: 100%; overflow: hidden; vertical-align: top; white-space: nowrap; text-overflow: ellipsis; }
.main-notice .tab-panel ul li .new { display: inline-block; margin: -2px 0 0 5px; vertical-align: top; }
.main-notice .tab-panel ul li .date { position: absolute; top: 10px; right: 0; }
.main-notice .tab-panel .tab-more { position: absolute; top: -50px; right: -10px; padding: 10px; }


.main-add-2020 {box-sizing:border-box;}
.main-add-2020 ul:after{display:block; content:""; clear:both;}
.main-add-2020 li {float:left; width:50%; height:272px;  box-sizing:border-box;}
.main-add-2020 li:first-child {border-right:1px solid #e4e4e4;}
.main-add-2020 li a {float:left;width:100%; height:100%; padding-top:42px;  box-sizing:border-box; text-align:center;}
.main-add-2020 li a img {display:inline-block; margin-bottom:15px;}
.main-add-2020 li a strong {display:inline-block; font-size:16px; line-height:18px; color:#202c39;}
.main-add-2020 li a span {display:inline-block; padding-top:7px;font-size:14px; line-height:20px; color:#6e7179;}

/* ==========================================================================
   Media Queries for Responsive Design.
   ========================================================================== */
@media only screen and (min-width: 35em) {}
@media only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (min-resolution: 144dpi) {}



/* ==========================================================================
   Print styles.
   Inlined to avoid required HTTP connection: h5bp.com/r
   ========================================================================== */
@media print {}