/* ========== COMMON ========== */
.quickmenu_container { margin: auto; max-width: 1500px; width: 100%; }

.b { font-weight: bold !important; }
.point_color { color: #556db1; }
.color-white { color: #fff !important; }
.color-blue { color: #1e3e85 !important; }
.color-green { color: #65a01c !important; }
.color-sky { color: #0081cc !important; }
.color-lemon { color: #fafe11 !important; }

.align-center { text-align: center; }
.align-center img { margin: auto; }

.mo_br, .mo-br { display: none; }
.m-scroll { display: none; margin: auto; max-width: 360px; width: 100%; }
[data-scroll="false"] { overflow-y: hidden; }

.clearfix:after { content: ''; display: table; clear: both; }
ul.list:after { content: ''; display: table; clear: both; }
ul.list > li { float: left; }
.fLeft { float: left; }
.fRight { float: right; }
.aRight { text-align: right; }

@media (max-width: 768px){
    .img-view { position: relative; padding-top: 50px; }
    .img-view:before { content: ''; position: absolute; top: 0; left: 0; right: 0; margin: auto; width: 100%; height: 50px; background: #fff url('/child/img/click-img.png') no-repeat center / auto 52px; border-top: 1px solid #65a01c; }
}
@media (max-width: 650px){
    .m-scroll-box { position: relative; padding-top: 50px; }
    .m-scroll-box:before { content: ''; position: absolute; left: 0; right: 0; top: 0; margin: auto; width: 100%; height: 50px; background: url('/child/img/scroll.png') no-repeat center / 300px auto; }
    .m-scroll-contents { overflow-x: auto; position: relative; }
    .scroll-inner { min-width: 500px; }
}
@media (max-width: 375px){
    .img-view:before { background-size: auto 46px; }
}

/* ------- Grid ------- */
.grid:after { content: ''; display: block; clear: both; }
.grid > div,
.grid > li { float: left; padding: 10px; }
.grid > div > ._g,
.grid > li > ._g { height: 100%; }
/* 1 col */
.grid-24 { width: 100%; }
/* 2 col */
.grid-12 { width: 50%; }
/* 3 col */
.grid-8 { width: 33.333333%; }
/* 4 col */
.grid-6 { width: 25%; }
/* 5 col */
.grid-5 { width: 20%; }
/* 6 col */
.grid-4 { width: 16.66666%; }
@media (max-width: 1024px){
    .grid-4 { width: 33.33333%; }
}
@media (max-width: 768px){
    .grid-6 { width: 50%; }
    .grid-5 { width: 33.33333%; }
}
@media (max-width: 600px){
    .grid-8 { width: 100%; }
    .grid-5 { width: 100%; }
    .grid-4 { width: 50%; }
    .grid-mo-full { width: 100%; }
    .grid-mo-2 { width: 50%; }
}




.slick-prev { overflow: hidden; text-indent: -99999px; position: absolute; top: 0; bottom: 0; left: 0; margin: auto; }
.slick-next { overflow: hidden; text-indent: -99999px; position: absolute; top: 0; bottom: 0; right: 0; margin: auto; }
.slick-slide:focus { outline: none; }
.slick-initialized .slick-slide { overflow: hidden; }
.slick-dots { position: absolute; left: 0; bottom: 50px; width: 100%; text-align: center; }
.slick-dots li { overflow: hidden; text-indent: -999999px; display: inline-block; vertical-align: top; margin: 0 5px; cursor: pointer; }


.float:after { content: ''; display: block; clear: both; }
.f-left { float: left; }
.f-right { float: right; }


.centre { display: table; width: 100%; height: 100%; }
.centre .inner { display: table-cell; vertical-align: middle; width: 100%; height: 100%; }



/* List Style */
.ul-square { margin-left: 15px; list-style: square; }
.ul-square li { list-style: square; list-style-image: url('/child/img/icon/square.png'); }




/* Table */
.table { border-collapse: collapse; width: 100%; border-top: 1px solid #65a01c; }
.table tr { border-bottom: 1px solid #e5e5e5; }
.table tr th { padding: 15px 15px 15px; font-size: 17px; }
.table tr td { padding: 15px 15px 15px; font-size: 17px; color: #555555; border-right: 1px solid #e5e5e5; }
.table tr td:last-child { border-right: none; }
.table tr td img { display: inline-block; min-width: 100px; }
.table-center { text-align: center; }
.table-th-line tr th { border-right: 1px solid #e5e5e5; }
.table-td-30 tr td { padding: 30px; }
.table-td-light tr td { font-size: 15px; color: #555555; }
.table-td-light tr td ul li { line-height: 23px; }

@media (max-width: 768px){
    .table tr th,
    .table tr td { padding: 10px 15px; font-size: 14px; }
}




/* Tab Menu */
.tab_menu > ul { position: relative; }
.tab_menu > ul:before { content: ''; position: absolute; left: 0; bottom: 0; width: 100%; height: 2px; background-color: #65a01c; }
.tab_menu > ul:after { content: ''; display: block; clear: both; }
.tab_menu > ul > li { float: left; width: 50%; border-top: 1px solid #e5e5e5; border-left: 1px solid #e5e5e5; border-right: 1px solid #e5e5e5; }
.tab_menu > ul > li a { display: block; width: 100%; height: 60px; line-height: 60px; text-align: center; color: #777777; font-size: 17px; letter-spacing: -0.04em; cursor: pointer; }
.tab_menu > ul > li.active { position: relative; margin-top: 0; border-top: 2px solid #65a01c; background-color: #fff; border-left: 2px solid #65a01c; border-right: 2px solid #65a01c; }
.tab_menu > ul > li.active a { color: #333333; font-weight: 500; }
.tab_menu > ul > li.active:before { content: ''; position: absolute; left: 0; bottom: 0; width: 100%; height: 2px; background-color: #fff; }
.tab_contents > ul { position: relative; }
.tab_contents > ul > li { display: none; position: absolute; top: 0; left: 0; }
.tab_contents > ul > li.active { display: block; height:auto; position:relative; }

@media (max-width: 768px){
    .tab_menu > ul > li a { height: 45px; line-height: 45px; font-size: 15px; }
}


/* Tab Menu 2 Depth */
.tab_menu_2depth > ul > li { float: left; width: 50%; }
.tab_menu_2depth > ul > li > a { display: block; padding-left: 20px; height: 45px; line-height: 45px; color: #888888; text-align: left; font-size: 14px; font-weight: 400; background: url('/child/img/tabmenu/sub_tap.png') no-repeat right 15px center; border: 1px solid #e5e5e5; }
.tab_menu_2depth > ul > li:nth-child(2) > a { border-left: none; }
.tab_menu_2depth > ul > li:nth-child(3) > a { border-left: none; }
.tab_menu_2depth > ul > li:last-child > a { border-left: none; }
.tab_menu_2depth > ul > li.active > a { color: #fff; background: #1e458f url('/child/img/tabmenu/sub_tap_on.png') no-repeat right 15px center; border: none; }
.tab_contents_2depth > ul > li { display: none; text-align: left; }
.tab_contents_2depth > ul > li.active { display: block; }




/* Button Style */
.btn, a.btn { display: inline-block; vertical-align: middle; width: 100px; height: 50px; line-height: 50px; text-align: center; font-size: 16px; }
input.btn { padding-left: 0; }
.button{
    display: inline-block;
    min-width: 170px;
    font-size: 16px;
    font-weight: 500;
    padding: 13px 20px;
}
.btn_border { background-color: #fff; border: 1px solid #eee; }
.btn_dark_border { background-color: #fff; border: 1px solid #ddd; }
.btn_confirm, a.btn_confirm { background-color: #666; color: #fff; }
.btn_point, a.btn_point { background-color: #65a01c; color: #fff; }
.btn_point2, a.btn_point2 { background-color: #3e9b93; color: #fff; }
.btn_point3, a.btn_point3 { background-color: #47ab06; color: #fff; }
.btn_dark, a.btn_dark { background: #999; }

.btn-round { display: inline-block; width: 250px; height: 45px; line-height: 45px; text-align: center; font-size: 16px; font-weight: 500; border: 1px solid rgba(0,0,0,.3); border-radius: 24px; }
.button-round{
    border-radius: 100px;
}

.button-wrap{
    text-align: center;
    margin-top: 40px;
}
.button-wrap >a,
.button-wrap >button{
    margin:2px;
}



/* ======= Accordon Style ======= */
#menu-wrapper { overflow: hidden; max-width: 100%; }
#menu-wrapper #hamburger-menu { position: relative; width: 25px; height: 20px; margin: 15px; }
#menu-wrapper #hamburger-menu span { opacity: 1; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; left: 0; display: block; width: 100%; border-radius: 10px; color: black; background-color: white; position: absolute;
    height: 2px;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: ease-out .4s;
    transition: ease-out .4s; }
#menu-wrapper #hamburger-menu span:nth-child(1) { top: 0; }
#menu-wrapper #hamburger-menu span:nth-child(2) { top: 9px; }
#menu-wrapper #hamburger-menu span:nth-child(3) { top: 18px; }
#menu-wrapper #hamburger-menu.open span:nth-child(1) { top: 9px;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
}
#menu-wrapper #hamburger-menu.open span:nth-child(2) { opacity: 0; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; left: -60px; }
#menu-wrapper #hamburger-menu.open span:nth-child(3) { top: 9px;
    -webkit-transform: rotate(-135deg);
    transform: rotate(-135deg);
}
#menu-container { overflow-y: auto; height: 100%; }
#menu-container .menu-list { padding-left: 0; display: block; width: 100%; background: white; overflow-y: auto; overflow-x: hidden; }
#menu-container .menu-list li.accordion-toggle, #menu-container .menu-list .menu-login {
    font-size: 15px;
    text-transform: uppercase;
/*    border-top: 1px solid #dbdcd2;*/
}
#menu-container .menu-list li:first-of-type { border-top: 0; }
.accordion-toggle, .accordion-content { font-size: 16px; position: relative; letter-spacing: 1px; }
.accordion-content { display: none; }
.accordion-toggle a:before, .accordion-toggle a:after { content: ''; display: block; position: absolute; top: 50%; right: 30px; width: 15px; margin-top: -1px;
     background-color: #333; height: 1px;
    -webkit-transform-origin: 50% 50%;
    -ms-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-transition: ease-out 0.35s;
    transition: ease-out 0.35s; }
.accordion-toggle a:before {
    -webkit-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    transform: rotate(-90deg);
    opacity: 1; z-index: 2; }
.accordion-toggle a.active:before {
    -webkit-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    transform: rotate(0deg);
    background: #fff !important; }
.accordion-toggle a.active:after {
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
    background: #333 !important; opacity: 0; }



/* Page Style */
#page_list_style { margin: 30px 0 50px; }
.Paging_Num { margin: auto; width: auto; border-bottom: none !important; }
.Paging_Num tr td { border-bottom: none !important; }

#pager td { padding: 0; width: 30px; height: 30px; line-height: 30px; text-align: center; font-size: 14px; }
#pager td a { display: block; padding-top: 1px; width: 100%;  height: 100%; }
#pager td a:hover { padding-top: 0; background-color: #f8f8f8; border: 1px solid #cccccc; }
.current_page { color: #fff; background: #0081cc; border: 1px solid #0081cc; cursor: default; }
.page_backward { background: url('/child/img/pager/page_l_2.png') no-repeat center;  }
.page_back5 { background: url('/child/img/pager/page_l.png') no-repeat center; }
.page_5 { background: url('/child/img/pager/page_r.png') no-repeat center; }
.page_forward { background: url('/child/img/pager/page_r_2.png') no-repeat center; }


/* Table Responsive Cell */
.m_cell { display: none; }


/* BBS Write */
#bbs_write_style { border-top: 2px solid #1e458f; border-bottom: 2px solid #1e458f; }
#bbs_write_style tr th { padding: 10px; text-align: left; background-color: #fafafa; border-bottom: 1px solid #eee; }
#bbs_write_style tr td { padding: 10px; text-align: left; border-bottom: 1px solid #eee; }
#bbs_write_style tr td input[type=text],
#bbs_write_style tr td input[type=password] { max-width: 300px; width: 100%; height: 35px; }
#bbs_write_style tr td input[type=file] { max-width: 200px; width: 100%; }
#bbs_write_style tr td img { display: inline-block; }
.AWbbs_input_table tr td img { display: inline-block; }





/* Form mail Style */
.formmail-table { display: table; margin-bottom: 50px; width: 100%; border-collapse: collapse; border-top: 2px solid #65a01c; }
.formmail-table .row { display: table-row; border-bottom: 1px solid #e5e5e5; }
.formmail-table .th { display: table-cell; vertical-align: middle; padding: 28px 30px 30px; width: 250px; font-size: 16px; font-weight: 500; word-break: keep-all; border-right: 1px solid #cccccc; }
.formmail-table .td { display: table-cell; vertical-align: middle; padding: 10px 30px; font-size: 16px; color: #555; }
.formmail-table .td textarea { padding: 20px; width: 100%; font-size: 15px; color: #555555; background: #fff; }
.formmail-table .td input[type="text"],
.formmail-table .td select { max-width: 330px; width: 100%; height: 50px; font-size: 15px; background: #fff; border: 1px solid #e5e5e5; }
.formmail-table .td p { margin-top: 5px; color: #999999; }
.formmail-table .td b { padding-left: 10px; font-weight: 500; }
._w { max-width: 319px; }
.txt1 { height: 130px; }
.txt2 { height: 275px; }
.radio { display: inline-block; vertical-align: top; position: relative; }
.radio:last-child { margin-right: 0; }
.radio input { position: absolute; top: 0; left: 0; opacity: 0; visibility: hidden; }
.radio i { display: inline-block; vertical-align: middle; margin-right: 10px; width: 20px; height: 20px; background: url('/child/img/icon/radio.png') no-repeat center; }
.radio-light i { background: url('/child/img/icon/radio-light.png'); }
.radio input:checked ~ i { background: url('/child/img/icon/radio-on.png') no-repeat center; }
.radio input:checked ~ span { color: #65a01c; }

.check { display: inline-block; vertical-align: top; position: relative; }
.check:last-child { margin-right: 0; }
.check input { position: absolute; top: 0; left: 0; opacity: 0; visibility: hidden; }
.check i { display: inline-block; vertical-align: middle; margin-right: 5px; width: 28px; height: 24px; background: url('/child/img/icon/check.png') no-repeat left center; }
.check-light i { background: url('/child/img/icon/check-light.png') no-repeat left center; }
.check input:checked ~ i { background: url('/child/img/icon/check-on.png') no-repeat left center; }
.check input:checked ~ span { color: #65a01c; }

.formmail-table .radio { margin-right: 50px; }
.formmail-table .check { margin-right: 50px; }

.formmail-table .td .input-file { position: relative; padding-right: 110px; }
.formmail-table .td .input-file [type="file"] { position: absolute; width: 1px; height: 1px;clip: rect(0, 0, 0, 0); border: 0 none; }
.formmail-table .td .input-file .file-label {
  display: inline-block; vertical-align: top;
  position: absolute; top: 0; right: 0; padding: 0 25px;
  width: 110px; height: 50px; line-height: 50px;
  color: #fff; text-align: center; font-size: 15px;
  background: #555555; border: 1px solid #222;
}
.formmail-table .td .input-file .file-name { max-width: 100%; width: 100%; height: 50px; line-height: 50px; text-indent: 5px; border: 1px solid #ddd; }
.formmail-table .td .file-focus { outline: 1px dotted #d2310e; }

.tel-box { display: inline-block; vertical-align: middle; width: 100px; }
.tel-box ~ span { display: inline-block; vertical-align: middle; padding: 0 5px; font-size: 16px; }
.email-box-wrap,
.tel-box-wrap { font-size: 0; }
.email-box { display: inline-block; vertical-align: middle; width: 190px; }
.email-box ~ span { display: inline-block; vertical-align: middle; padding: 0 5px; font-size: 16px; }
.email-box:last-child { padding-left: 5px; }

.addr-box { margin-top: 10px; }
.addr1 { position: relative; margin-top: 0; padding-right: 110px; max-width: 330px; }
.addr1 button { position: absolute; top: 0; right: 0; width: 110px; height: 50px; font-size: 16px; color: #fff; background: #777777; }
.center-form .addr-box input { max-width: 100%; }

.form-title { padding-bottom: 10px; line-height: 20px; font-size: 20px; color: #333333; font-weight: 500; border-bottom: 1px solid #aaaaaa; }
.agree-title { border-bottom: none; }
.agree-wrap .check { font-size: 16px; color: #65a01c; font-weight: 500; }
.form-title .check { float: right; }

.agree-wrap textarea,
.agree-wrap .textarea { overflow-y: auto; padding: 20px; width: 100%; height: 158px; font-size: 15px; background: #fff; border: 1px solid #dddddd; }

.form-btn-wrap { margin-top: 30px; text-align: center; }
.form-btn { display: inline-block; vertical-align: top; padding: 5px; }
.form-btn button,
.form-btn a { width: 150px; font-size: 15px; }

.form-caption { display: block; margin-top: 10px; }

.agree-privacy { overflow-x: hidden; overflow-y: auto; padding: 15px; width: 100%; height: 200px; border: 1px solid #e5e5e5; }




/* Scroll Top Button */
.scroll-top { z-index: 1001; position: fixed; bottom: 15px; right: 30px; }
.scroll-top-btn { width: 50px; height: 50px; background: #65a01c url('/child/img/icon/scroll-top.gif') no-repeat center / auto 70%; border-radius: 50%; box-shadow: 0px 2px 10px 0px rgba(0,0,0,.35); opacity: 0; visibility: hidden;
    -webkit-transform: translateY(150px);
    -ms-transform: translateY(150px);
    transform: translateY(150px);
}
[data-state="true"] { opacity: 1; visibility: visible;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
    -webkit-transition: ease-out .25s;
    -o-transition: ease-out .25s;
    transition: ease-out .25s;
}




/* Fade */
.fade {
    -webkit-animation: fade 1s ease-out;
    animation: fade 1s ease-out;
}
@-webkit-keyframes fade {
    0%   { opacity: 0; }
    100% { opacity: 1; }
}
@keyframes fade {
    0%   { opacity: 0; }
    100% { opacity: 1; }
}

@media (min-width: 1025px){
    .btn_point3:hover{
        background-color: #54c50a;
    }
}

@media (max-width: 1024px){

    /* Button Style */
    .btn, a.btn { line-height: 45px; height: 45px; font-size: 15px !important; }
    .button{
        min-width: 150px;
        padding:10px 15px;
    }
    .btn-round { width: 180px; height: 40px; line-height: 40px; font-size: 14px; }


    /* Form Style */
    .formmail-table .th { display: block; padding: 15px 0 5px; font-size: 14px; border-right: none; }
    .formmail-table .td { display: block; padding: 5px 0 15px; font-size: 14px; }
    .formmail-table .td input[type="text"],
    .formmail-table .td select { height: 40px; font-size: 14px; }
    .email-box ~ span { width: 10%; text-align: center; }
    .email-box,
    .tel-box { width: 30%; }
    .tel-box ~ span { width: 5%; text-align: center; }
    .email-box:last-child { padding-left: 5px; }
    .addr1 button { height: 40px; font-size: 14px; }
}




@media (max-width: 768px){
    .m-scroll { display: block; }
    .mo_br, .mo-br { display: block; }

    /* Button Style */
    .btn, a.btn { line-height: 40px !important; height: 40px !important; font-size: 14px !important; }
    .button{
        min-width: auto;
        font-size: 15px;
    }

    /* Scroll Top Button */
    .scroll-top { right: 15px; bottom: 15px; }
    .scroll-top-btn { width: 50px; height: 50px; }

}


@media (max-width: 600px){
    /* Form Style */
    .form-btn { width: 50%; }
    .form-btn button,
    .form-btn a { width: 100%; }
    .form-btn-full .form-btn { width: 100%; }
    .agree-privacy { font-size: 14px; }
}
