@charset 'utf-8';
@import url('https://fonts.googleapis.com/css?family=Lato|NTR|Roboto+Condensed&display=swap');

/*------------ basic ------------*/
body {
    font-family: Arial, 'NTR', 'Lato', 'Roboto Condensed', '微軟正黑體', '文泉驛正黑', 'WenQuanYi Zen Hei', '儷黑 Pro', 'LiHei Pro', 'Microsoft JhengHei', '微软雅黑', 'メイリオ', '맑은 고딕', sans-serif;
    color: #111111;
    font-size: 16px;
    line-height: 2;
    letter-spacing: 0.05em;
}

.container {
    padding: 0 15px;
    max-width: 1470px;
}

.wrapper {
    padding-top: 215px;
}


.cover {
    font-size: 0;
    position: absolute !important;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    z-index: 30;
}

/*------------ / basic ------------*/
/*--- Ã©Å¡Â±Ã§Â§ÂÃ¦Â¬Å  ---*/

.header-sheet {
    position: fixed;
    max-width: 100%;
    bottom: 43px;
    left: 30px;
    width: 320px;
    padding: 40px 45px 40px 25px;
    height: auto;
    text-align: left;
    z-index: 999;
    background-color: #ffffff;
    color: #444;
    border-radius: 8px;
    border: solid 1px #0f53a6;
}

.header-sheet .close-ontop {
    color: #66a6e4;
    opacity: 1;
    font-size: 2.4rem;
    position: absolute;
    right: -24px;
    top: 13px;
    transform: translateY(-50%);
    font-weight: 100;
}

button.close-ontop {
    -webkit-appearance: none;
    padding: 0;
    cursor: pointer;
    background: 0 0;
    border: 0;
}

.close-ontop {
    float: right;
    font-size: 21px;
    font-weight: 700;
    line-height: 1;
    color: #000;
    text-shadow: 0 1px 0 #fff;
    filter: alpha(opacity=20);
    opacity: .2;
}

.header-sheet a {
    color: #63aaee;
    font-weight: bold;
    padding-left: 3px;
    text-decoration: underline;
    text-underline-position: under;
}

/*---! Ã©Å¡Â±Ã§Â§ÂÃ¦Â¬Å  ---*/
/*------------ icon ------------*/
.icon {
    background-image: url('../../images/common/icons.png');
}

.icon.require {
    width: 12px;
    height: 20px;
    background: none;
    position: relative;
}

.icon.require:before {
    content: '';
    display: inline-block;
    background: #e94362;
    border-radius: 50%;
    width: 6px;
    height: 6px;
    margin: 5px;
    left: 0;
    position: absolute;
}

/*------------ / icon ------------*/
/*------------ btn ------------*/
.share .btn {
    font-size: 17px;
    width: 30px;
    height: 30px;
    line-height: 30px;
    border-radius: 15px;
    border: 1px solid transparent;
    background: #B4B4B4;
    color: #ffffff;
}

.share .btn.facebook:hover {
    background: #405D9A;
}

.share .btn.plurk:hover {
    background: #f38237;
}

.share .btn.twitter:hover {
    background: #39A0CE;
}

.ibtn.fb-fans-page {
    background-image: url('../../images/tw/fb_page.png');
    width: 110px;
    height: 110px;
    box-sizing: content-box;
}

.ibtn.fb-fans-page:hover {
    opacity: .8;
}


.ibtn.more {
    background-image: url('../../images/common/btn_more.png');
    width: 101px;
    height: 29px;
}

.btn.simple {
    max-width: 180px;
    width: 100%;
    font-family: 'NTR', '微軟正黑體';
    height: 60px;
    color: #F4B0BB;
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 0.1em;
    line-height: 70px;
    position: relative;
    margin: 0 auto 10px;
    text-align: left;
    padding-left: 20px;
    z-index: 1;
    display: block;
}

.btn.simple:hover {
    color: #ffffff;
}

.btn.simple i {
    position: absolute;
    right: 10px;
    top: 23px;
}

.btn.simple:before {
    background: #ffffff;
    border: 3px solid #F4B0BB;
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 0;
    display: block;
    left: 0;
    top: 0;
    z-index: -1;
    border-radius: 50px;
    -webkit-transition-property: all;
    -o-transition-property: all;
    transition-property: all;
    -webkit-transition-duration: 0.5s;
    -o-transition-duration: 0.5s;
    transition-duration: 0.5s;
    -webkit-transition-timing-function: ease;
    -o-transition-timing-function: ease;
    transition-timing-function: ease;
    -webkit-transform: scale(1);
    transform: scale(1);
}

.btn.simple:hover:before {
    background: #F4B0BB;
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
}

.btn.simple.bg2 {
    background: #1B7292;
}

.btn.simple.bg2:hover {
    background: #ABB315;
}

.btn.simple .icon.arrowL,
.btn.simple .icon.arrowR {
    position: absolute;
    width: 20px;
    height: 20px;
    top: 10px;
}

.btn.simple .icon.arrowL {
    background-position: -160px -87px;
    left: 10px;
}

.btn.simple .icon.arrowR {
    background-position: -180px -87px;
    right: 10px;
}

.btn.simple .icon.check {
    background-position: 0 -87px;
    width: 20px;
    height: 20px;
    margin: 0 8px 4px 0;
}

.btn.back.simple {
    text-align: right;
    padding: 0 20px 0 0;
}

.btn.back.simple i {
    position: absolute;
    right: auto;
    left: 10px;
    top: 23px;
}

.btn.normal {
    max-width: 180px;
    width: 100%;
    font-family: 'NTR', '微軟正黑體';
    height: 60px;
    background: #67b8de;
    color: #ffffff;
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 0.1em;
    line-height: 65px;
    position: relative;
    margin: 0;
    text-align: center;
    padding-left: 0px;
    z-index: 1;
    border-radius: 0px;
}

.btn.normal.bg2 {
    background: #6498ce;
}

.btn.normal:hover {
    background: #9bd5ea;
}

.btn.normal.bg2:hover {
    background: #0e57ab;
}

.btn.normal .icon {
    width: 32px;
    height: 32px;
    margin: 0 4px 3px 0;
}

.btn.normal .icon.home {
    background-position: 0 0;
}

.btn.normal .icon.cart {
    background-position: -32px 0;
}

.btn.normal .icon.cart2 {
    background-position: -64px 0;
}

.btn.normal .icon.order {
    background-position: -96px 0;
}

.btn.normal .icon.money {
    background-position: -128px 0;
}

.btn.pure {
    color: #1A7292;
    line-height: 30px;
    margin: 0 5px 10px;
    text-decoration: underline;
}

.btn.pure:hover {
    color: #ABB315;
    text-decoration: none;
}

/*------------ / btn ------------*/
/*------------ site_header ------------*/
.site-header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 99;
    background: #fff;
    padding-top: 6px;
    border-top: 12px solid #E7F0F9;
}

.site-nav,
.site-header,
.site-title .logo,
.site-title {
    transition: all .3s ease;
}

.site-title {
    position: relative;
    z-index: 5;
    float: left;
    padding: 95px 0 0;
}

.site-title .logo {
    background: url(../../images/common/logo.png) 50% 50% / contain no-repeat;
    width: 361px;
    height: 65px;
    transition: all .3s ease;
}

.site-title .logo:hover {
    opacity: .7;
}

.top-nav {
    position: absolute;
    z-index: 10;
    right: 15px;
    top: 15px;
}

.top-nav>* {
    display: inline-block;
    vertical-align: middle;
}

.top-nav .btn.download {
    color: #212121;
    background: #FBD4CC;
    height: 30px;
    line-height: 30px;
    padding: 0 10px 0 5px;
    border-radius: 15px;
    margin-right: 10px;
}

.top-nav .btn.download:hover {
    color: #fff;
    background: #297E9C;
}

.top-nav .icon {
    width: 20px;
    height: 20px;
    margin: 0 3px 3px 0;
}

.top-nav .btn.download .icon {
    width: 25px;
    height: 25px;
    background-position: -125px -62px;
}

.top-nav .btn.download:hover .icon {
    background-position: -150px -62px;
}

.top-nav .language .btn {
    display: none;
}

.top-nav .language li a {
    display: inline-block;
    background: #DEE834;
    color: #fff;
    font-size: 13px;
    font-weight: bold;
    line-height: 28px;
    border-radius: 14px;
    min-width: 28px;
    text-align: center;
}

.top-nav .language li a:hover {
    background: #297E9C;
}

.site-header .search-box {
    position: absolute;
    z-index: 10;
    top: 14px;
    right: 20px;
    width: 400px;
    box-sizing: border-box;
    margin-left: 10px;
}

.site-header .search-box .form-control {
    height: 46px;
    line-height: 46px;
    margin: 0;
    padding: 0 42px 0 20px;
    border-radius: 30px;
    background: #E9E9E9;
    border: #E9E9E9;
}

.site-header .search-box .form-control:focus {
    background: #c0def9;
    border-color: #e7f0f9;
}

.site-header .search-box .ibtn.search {
    background-image: url(../../images/common/btn_search.png);
    width: 30px;
    height: 30px;
    position: absolute;
    right: 15px;
    top: 6px;
}

.site-nav {
    position: relative;
    padding-top: 90px;
    margin-left: 220px;
    text-align: right;
}

.site-nav>* {
    display: inline-block;
    vertical-align: middle;
}

.site-nav .menu {
    text-align: center;
}

.site-nav .menu li {
    position: relative;
}

.site-nav .menu li a {
    display: block;
    line-height: 1.4;
}

.site-nav .menu>li {
    padding: 0 6px;
}

.site-nav .menu>li>a {
    width: 110px;
    color: #000000;
    font-size: 17px;
    font-weight: bold;
    letter-spacing: 0.1em;
    box-sizing: border-box;
    transition: all .3s ease;
}

.site-nav .menu>li>a:hover {
    color: #6aafee;
}

.site-nav .menu>li:nth-last-child(-n+3) {
    display: none;
}

.site-nav .menu>li>a:before {
    content: '';
    display: block;
    background-image: url('../../images/common/menu_bg.png');
    width: 58px;
    height: 49px;
    margin: 0 auto 8px;
    transition: all .3s ease;
}

.site-nav .menu>li>a:before {
    background-position: 0 0;
}

.site-nav .menu>li:nth-child(2) a:before {
    background-position: -60px 0;
}

.site-nav .menu>li:nth-child(3) a:before {
    background-position: -177px 0;
}

.site-nav .menu>li:nth-child(4) a:before {
    background-position: -235px 0;
}
.site-nav .menu>li:nth-child(5) a:before {
    background-position: -292px 0;
} 
.site-nav .menu>li:nth-child(6) a:before {
   
    background-position: -120px 0;
}

.site-nav .menu>li:nth-child(7) a:before {
    background-position: -815px 0;
}
.site-nav .menu>li:nth-child(8) a:before {
    background-position: -873px 0;
}
.site-nav .menu>li>a:hover:before {
    margin: -8px auto 16px;
}

.site-nav .menu>li>a span {
    display: block;
    color: #fff;
    font-size: 20px;
    font-weight: normal;
    letter-spacing: 0.1em;
}

.site-nav .menu li ul {
    display: none;
}

.header-fixed .site-header {
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.2);
    border: none;
    padding-top: 0;
}

.header-fixed .site-title {
    padding: 15px 0;
}

.header-fixed .site-title .logo {
    width: 277px;
    height: 50px;
}

.header-fixed .site-nav {
    padding-top: 25px;
    margin: 0 0 0 300px;
    text-align: left;
}

.header-fixed .site-nav .menu>li>a {
    height: auto;
    padding: 5px 0;
    border-radius: 10px;
    font-size: 16px;
    width: 90px;
}

.header-fixed .site-nav .menu>li>a:before {
    display: none;
}

.header-fixed .site-header .search-box {
    width: 150px;
    right: 0;
    top: 20px;
}

.header-fixed .site-header .search-box .form-control {
    height: 35px;
    line-height: 35px;
}

.header-fixed .site-header .search-box .ibtn.search {

    top: 0px;
}

/*------------ / site_header ------------*/
/*------------ banner ------------*/
.banner {
    position: relative;
}

.banner:before {
    content: '';
    display: block;
    background: url('../../images/common/banner_bg.png')center bottom no-repeat;
    position: absolute;
    top: 10%;
    bottom: 0%;
    left: 0;
    right: 0;
}

.banner .container {
    max-width: 1440px;
    padding: 0;
    position: relative;
}

.banner .container:before {
    content: '';
    background: url('../../images/common/pic01.png')no-repeat;
    position: absolute;
    width: 196px;
    height: 78px;
    bottom: -20px;
    right: -40px;
    display: block;
    z-index: 10;
}

/*------------ / banner ------------*/
/*------------ site_main ------------*/
.main-top .container {
    max-width: 1440px;
    padding: 0;
}

.main-title {
    color: #333333;
    font-size: 25px;
    font-weight: bold;
    line-height: 1.4;
    letter-spacing: 0.15em;
    text-align: center;
    padding: 35px 0;
    margin: 0;
}

.has-side .main-title {}

.main-title span {
    display: block;
    color: #92ADD9;
    font-family: 'NTR', cursive;
    font-size: 50px;
    font-weight: 600;
    letter-spacing: 0;
    line-height: 0.8;
}

.main-content {
    padding: 55px 0 100px;
}

.has-side .main-content {
    padding-top: 0;
}

.content {
    min-height: 300px;
    box-sizing: border-box;
}

.content-top {
    border-bottom: 1px solid #dddddd;
    padding: 0 0 0px 5px;
    margin: 0 0 35px;
    overflow: hidden;
}

.content-title {
    position: relative;
    padding: 0px 0 5px 22px;
    color: #444;
    font-size: 20px;
    font-weight: bold;
    float: left;
    margin: 0;
}

.content-title .keyword {
    color: #F2856C;
}

.content-title:before {
    content: '';
    display: inline-block;
    background: url('../../images/common/ic.png') no-repeat;
    width: 25px;
    height: 25px;
    position: relative;
    vertical-align: middle;
    margin: -3px 10px 0 -20px;
}

.shopping-title {
    color: #333;
    font-size: 18px;
    letter-spacing: 0.15em;
    margin-bottom: 10px;
}

.shopping-title .icon {
    width: 30px;
    height: 30px;
    margin: 0 6px 4px 0;
}

.shopping-title .icon.car {
    background-position: 0 -32px;
}

.shopping-title .icon.cart {
    background-position: -30px -32px;
}

.shopping-title .icon.money {
    background-position: -60px -32px;
}

.shopping-title .icon.plus {
    background-position: -90px -32px;
}

.shopping-title .icon.user {
    background-position: -120px -32px;
}

.shopping-title .icon.box {
    background-position: -150px -32px;
}

.shopping-title .icon.notice {
    background-position: -180px -32px;
}

.shopping-title .icon.msg {
    background-position: -210px -32px;
}

.btn-box {
    clear: both;
    padding-top: 30px;
    position: relative;
    text-align: center;
}

.btn-box.wide-spacing {
    letter-spacing: 15px;
}

.btn-box.wide-spacing * {
    letter-spacing: 0.1em;
}

.warning-sect {
    padding-bottom: 30px;
}

/*------------ / site_main ------------*/
/*------------ breadcrumb ------------*/
.breadcrumb {
    background: #F3F3F3;
    text-align: left;
    color: #525252;
    font-size: 13px;
    padding: 5px 15px;
    margin-top: 1px;
}

.breadcrumb li,
.breadcrumb li a {
    display: inline;
}

.breadcrumb li+li:before {
    content: '/';
}

.breadcrumb li:first-child a:before {
    content: '';
    display: inline-block;
    vertical-align: text-bottom;
    background: url('../../images/common/breadcrumb_home.png') no-repeat;
    width: 15px;
    height: 15px;
}

.breadcrumb li:first-child a:hover:before {
    background-position: 0 100%;
}

.breadcrumb li a:hover {
    color: #e0042d;
}

.content-top .breadcrumb {
    background: none;
    float: right;
    font-size: 14px;
    color: #656565;
    padding: 6px 0;
}

.content-top .breadcrumb:before,
.content-top .breadcrumb:after {
    content: '/';
}

.content-top .breadcrumb li+li:before {
    content: '> ';
}

.content-top .breadcrumb li:first-child a:before {
    display: none;
}

.content-top .title02 {
    float: none;
    margin: -15px 10px;
    position: relative;
    display: inline-block;
    padding-top: 15px;
    font-size: 20px;
    color: #0850a4;
}

.content-top .title02:before {
    content: '/ ';
}

/*------------ / breadcrumb ------------*/
/*------------ side ------------*/
.side {
    width: 250px;
    float: left;
    
}
.side .side_top{
    background: #ECF7FB;
    padding-bottom: 50px;
    border-radius: 15px 15px 0 0;
    margin-bottom:20px;
}
.has-side .content {
    width: calc(100% - 295px);
    float: right;
    background: none;
}

.side-title {
    background: url(../../images/common/side_top.jpg)no-repeat;
    padding: 23px 18px 15px;
    margin-bottom: 10px;
    color: #353535;
    font-size: 22px;
    font-weight: 600;
    letter-spacing: 0.05em;
    line-height: 1;
    border-bottom: 3px solid #9CC4E0;
}

.side-nav,
.side-nav-top {
    position: relative;
    padding-bottom: 20px;
    font-size: 15px;
}

.side-nav li a,
.side-nav-top li a {
    position: relative;
    display: block;
    line-height: 1.3;
    padding: 10px 16px;
    background: #ffffff;
    border-radius: 20px;
}

.side-nav>li {
    padding: 15px 10px 5px;
}

.side-nav>li>a {
    color: #444444;
    font-size: 18px;
    font-weight: bold;
    transition: all .2s ease;
}

.side-nav>li>a:hover,
.side-nav>li.active>a {
    background: #92CDF1;
    color: #ffffff;
}

.side-nav ul {
    display: none;
    padding: 10px 0;
}

.side-nav ul li a {
    background: none;
    color: #212121;
    transition: all .2s ease;
}

.side-nav ul li a:hover,
.side-nav ul li.active>a {
    color: #0750A4;
}

.side-nav ul li:hover a,
.side-nav ul li.active a {
    padding-left: 32px;
}

.side-nav ul li:hover>a:before,
.side-nav ul li.active>a:before {
    content: '';
    display: inline-block;
    background: url('../../images/common/side_ic.png') no-repeat;
    width: 16px;
    height: 16px;
    position: absolute;
    left: 14px;
    top: 12px;
    transition: all .3s ease;
}

.side-nav ul li li:hover a:before,
.side-nav ul li li.active a:before {
    display: none;
}

.side-nav ul li li a {
    padding: 7px 0;
}

.side-nav ul ul {
    margin: 2px 0 15px;
}

.side-nav ul ul a {
    color: #9d9d9d;
    transition: all .3s ease;
}

.side-nav ul ul li a:hover,
.side-nav ul ul li.active>a {
    color: #58a1e8;
    text-decoration: underline;
}

.side-nav-top>li>a {
    color: #287E9B;
    padding: 6px 16px;
}

.side-nav-top>li>a:hover,
.side-nav-top>li.active>a {
    text-decoration: underline;
}

/*------------ / side ------------*/
/*------------ site_footer ------------*/
.site-footer {
    background: url(../../images/common/footer-top.jpg)top no-repeat #F4F4F4;
    padding-top: 60px;
    margin-top: 30px;
}

.footer-top .container {
    max-width: 1440px;
    padding: 45px 15px 30px;
}

.site-info {
    float: left;
    padding: 0px 0 15px;
    margin-right: 80px;
    color: #333333;
    font-size: 16px;
    line-height: 1.4;
    width: 40%;
    box-sizing: border-box;
    font-family: 'NTR', '微軟正黑體';
    text-align: left;
}

.site-info span {
    display: block;
    vertical-align: middle;
    margin: 0 0 5px;
}
/*
.footer-tel {
    font-size: 50px;
    font-weight: bold;
    letter-spacing: 0;
    margin-bottom: 0;
    color: #0850A4;
}
*/
.site-info a:hover {
    text-decoration: underline;
}

.site-map {
    float: left;
    letter-spacing: 45px;
}

.site-map ul {
    display: inline-block;
    vertical-align: top;
    text-align: left;
    color: #333333;
    font-size: 16px;
}

.site-map li {
    padding: 2px 0;
    letter-spacing: 0;
}

.site-map a:hover {
    color: #0750A4;
    text-decoration: underline;
}

.follow {
    float: right;
    letter-spacing: 6px;
    max-width: 300px;
    text-align: right;
}

.follow>* {
    display: inline-block;
    vertical-align: top;
}

.footer-bottom {
    background: #0850A4;
    text-align: center;
    color: #ecf3fb;
    font-size: 12px;
    padding: 20px 0 15px;
}

.footer-top .share {
    display: block;
    text-align: right;
    margin: 10px 0;
    vertical-align: middle;
    position: absolute;
    right: 150px;
    top: 100px;
}

.footer-bottom a:hover {
    text-decoration: underline;
}

.footer-bottom .copyright,
.footer-bottom .author,
.footer-bottom .share {
    display: inline-block;
    vertical-align: middle;
    margin: 0 5px;
}

/*------------ / site_footer ------------*/
/*------------ floating ------------*/
.floating,
.floating.fancybox-margin {
    display: none;
    position: fixed;
    right: 4%;
    bottom: 30%;
    z-index: 400;
    transition: all .3s ease;
}

.floating .ibtn.gotop {
    background-image: url('../../images/common/gotop.png');
    width: 90px;
    height: 90px;
}

.floating .ibtn.gotop:hover {}

/*------------ / floating ------------*/
/*------------ pagination ------------*/
.pagination {
    padding: 0;
    margin: 0;
    text-align: center;
}

.pagination li {
    display: inline-block;
    vertical-align: top;
}

.pagination li a {
    display: block;
    min-width: 30px;
    height: 30px;
    line-height: 30px;
    color: #868686;
    font-size: 15px;
    font-weight: bold;
    padding: 0 5px;
    margin: 0;
    border-radius: 20px;
    box-sizing: border-box;
}

.pagination li a:hover,
.pagination li.active a {
    text-decoration: underline;
    color: #267D99;
}

.pagination li a.controls {
    padding: 0;
}

.pagination li a.controls .icon {
    width: 25px;
    height: 25px;
    border-radius: 20px;
    margin-bottom: 2px;
}

.pagination li a.prev .icon {
    background-position: -25px -62px;
    background-color: #94b9e5;
}

.pagination li a.next .icon {
    background-position: -50px -62px;
    background-color: #94b9e5;
}

.pagination li a.controls:hover .icon {
    background-color: #405d9a;
}

.page-info {
    display: none;
}

.page-info .form-control {
    height: 30px;
    line-height: 28px;
    border: 1px solid #CACBCC;
    margin: 0;
    color: #222b35;
    font-size: 17px;
    border-radius: 0px;
    height: 37px;
    line-height: 37px;
}

.page-info .form-control:focus {
    border-color: #0d54a5;
}

/*------------ / pagination ------------*/
/*------------ form ------------*/
.reminder {
    text-align: center;
    font-size: 16px;
    color: #222222;
    position: relative;
    margin-bottom: 30px;
}

.qty-box {
    position: relative;
    display: inline-block;
    width: 100px;
    max-width: none;
    padding: 0 30px;
    box-sizing: border-box;
}

.qty-box .form-control {
    position: relative;
    text-align: center;
    height: 30px;
    line-height: 30px;
    color: #777;
    background: #FBCFC7;
    border: 0;
    margin: 0;
    padding: 0 5px;
    z-index: 1;
    border-radius: 0;
}

.qty-box .form-control:focus {
    color: #fff;
    background: #F3856D;
}

.qty-box .btn {
    width: 30px;
    height: 30px;
    line-height: 28px;
    font-size: 19px;
    color: #FBCFC7;
    border: 1px solid #FBCFC7;
    position: absolute !important;
    z-index: 0;
    top: 0;
}

.qty-box .btn:hover {
    color: #fff;
    background: #F3856D;
}

.qty-box .add {
    left: 0;
}

.qty-box .less {
    right: 0;
}

.form-control {
    display: block;
    width: 100%;
    height: 45px;
    line-height: 45px;
    padding: 5px 20px;
    font-size: 17px;
    border: 1px solid #CACBCC;
    background: #F9F8FA;
    box-sizing: border-box;
    margin-bottom: 15px;
    color: #222b35;
    transition: all .3s ease;
}

.form-control:focus {
    outline: none;
    border: 2px solid #0d54a5;
    background: #fff;
}

.control-box.small .form-control {
    width: 100px;
    display: inline-block;
    margin-right: 10px;
}

textarea.form-control {
    padding: 8px 10px;
    line-height: 1.4;
    resize: vertical;
}

.static-control {
    line-height: inherit;
    color: #197292;
    font-weight: bold;
    font-size: 13px;
    margin: 0;
    padding: 0 5px;
}

.form-title {
    color: #5b98e0;
    font-size: 45px;
    text-align: center;
    line-height: 1.2;
    font-family: 'NTR';
}

.form-wrap {
    border: 3px solid #ddd;
    max-width: 1000px;
    margin: 0 auto;
    background: #F4F4F4;
    border-radius: 20px;
}

.form-wrap .btn-box {
    padding: 15px 15px 45px;
}

.form-box {
    max-width: 830px;
    margin: 0 auto;
    padding: 30px;
}

.form-box .row {
    margin: 0 -24px;
}

.form-box .col {
    float: left;
    width: 50%;
    padding: 0 24px;
}

.form-box .required {
    position: relative;
}

.form-box .required:before {
    content: '';
    display: inline-block;
    vertical-align: middle;
    background: #e94362;
    border-radius: 50%;
    width: 6px;
    height: 6px;
    margin: 0 4px 4px 0;
}

.form-box .form-group {
    padding: 2px 0;
    line-height: 36px;
}

.form-box .control-label {
    display: block;
    font-size: 18px;
    color: #222;
    line-height: inherit;
    padding-left: 5px;
}

.form-box .control-box {
    position: relative;
}

.form-box .control-box label {
    display: inline-block;
    line-height: inherit;
    margin: 0 10px 6px 5px;
}

.form-box .captcha .form-control {
    display: inline-block;
    width: 46%;
    max-width: 280px;
}

.form-box .captcha a {
    display: inline-block;
    color: #bbb;
    font-size: 20px;
    line-height: inherit;
    margin-left: 5px;
    margin-bottom: 6px;
    transition: all .3s ease;
}

.form-box .captcha a:hover {
    color: #FF732F;
}

.form-box .captcha a .icon.refresh {
    width: 30px;
    height: 30px;
    background-position: -270px -32px;
    margin-right: 5px;
    display: inline-block;
    vertical-align: middle;
    transition: transform .3s;
}

.form-box .captcha a:hover .icon.refresh {
    background-position: -300px -32px;
    transform: rotate(270deg);
}

.form-box .name .control-box {
    position: relative;
}

.form-box .name .radio-box {
    line-height: 36px;
    position: absolute;
    right: 0;
    bottom: 100%;
}

.form-box .name .radio-box label {
    display: inline-block;
    margin-bottom: 0;
}

.form-box .name2 .control-box {
    padding-right: 150px;
}

.form-box .name2 .radio-box {
    line-height: 36px;
    position: absolute;
    right: 0;
    bottom: 0;
}

.form-box .name2 .radio-box label {
    margin-bottom: 0;
}

.form-box .tips {
    line-height: 1.2;
    margin-bottom: 6px;
    color: #1A7292;
    font-size: 13px;
    padding: 0 5px;
}

.form-box.type2 .tips {
    min-height: 0;
}

.form-box .input-group {
    margin: 0 -3px;
}

.form-box .input-group:after {
    visibility: hidden;
    display: block;
    font-size: 0;
    content: ' ';
    clear: both;
    height: 0;
}

.form-box .input-group .input-box {
    float: left;
    width: 50%;
    padding: 0 3px;
    box-sizing: border-box;
}

.form-box .input-group .form-control {
    display: inline-block;
}

.form-box .name .control-box {
    position: relative;
}

.form-box .name .radio-box {
    line-height: 36px;
    position: absolute;
    right: 0;
    bottom: 100%;
}

.form-box .name .radio-box label {
    display: inline-block;
    margin-bottom: 0;
}

.form-box .address .input-box:last-child {
    width: 100%;
}

.form-box .address2 .input-box {
    width: 22%;
}

.form-box .address2 .input-box:last-child {
    width: 56%;
}

.form-radio,
.form-checkbox {
    display: inline-block;
    position: relative;
}

.form-radio input[type=radio],
.form-checkbox input[type=checkbox] {
    cursor: pointer;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0 !important;
    visibility: hidden;
    outline: 0;
    z-index: 3;
    width: 17px;
    height: 17px;
}

.form-radio:before,
.form-checkbox:before {
    content: '';
    display: inline-block;
    vertical-align: middle;
    background: 50% 0 / 100% auto no-repeat;
    width: 16px;
    height: 16px;
    margin: 0 0 4px;
}

.form-radio:before {
    background-image: url('../../images/common/form_radio.png');
}

.form-checkbox:before {
    background-image: url('../../images/common/form_checkbox.png');
}

.form-radio.checked:before,
.form-checkbox.checked:before {
    background-position: 0 100%;
}

.success-wrap {
    border: 3px solid #E8E8E8;
    text-align: center;
    padding: 4% 15px;
}

.has-side .success-wrap {
    padding: 6% 15px 7%;
}

.success-box {
    text-align: center;
    line-height: 2;
}

.success-msg {
    max-width: 600px;
    border-bottom: 1px dashed #ccc;
    color: #2670c5;
    font-size: 24px;
    font-weight: bold;
    padding: 5px 0;
    line-height: 1.5;
    margin: 0 auto 20px;
}

.success-msg .icon {
    width: 32px;
    height: 32px;
    margin: 0 6px 7px 0;
}

.success-msg .icon.check {
    background-position: -192px 0;
}

.success-msg .icon.user {
    background-position: -224px 0;
}

.success-msg .icon.mail {
    background-position: -256px 0;
}

.success-msg .icon.file {
    background-position: -288px 0;
}

.success-msg .icon.lock {
    background-position: -320px 0;
}

.success-msg .icon.user-white {
    background-position: -352px 0;
}

.success-txt strong {
    display: inline-block;
    margin-bottom: 10px;
    font-size: 22px;
}

.success-txt a {
    text-decoration: underline;
    color: #F2856C;
}

.success-txt a:hover {
    text-decoration: none;
}

/*------------ / form ------------*/
/*------------ lightbox ------------*/
.fancybox-album .fancybox-close {
    background: url(../../images/common/lightbox_close.png) no-repeat;
    width: 40px;
    height: 40px;
    right: -20px;
    top: -20px;
}

.fancybox-album .fancybox-close:hover {
    background-position: 0 100%;
}

.fancybox-album .fancybox-skin {
    background: #fff;
    margin: 20px 40px;
    border-radius: 20px;
    border: 3px solid #ccc;
}

.fancybox-album .fancybox-inner {
    background: #fff;
}

.fancybox-album .fancybox-nav span {
    visibility: visible;
    background: url('../../images/common/lightbox_arrow.png') no-repeat;
    width: 30px;
    height: 60px;
    opacity: 0.8;
    margin-top: -30px;
}

.fancybox-album .fancybox-prev span {
    background-position: 0 0;
    left: -65px;
}

.fancybox-album .fancybox-next span {
    background-position: 100% 0;
    right: -65px;
}

.fancybox-album .fancybox-nav:hover span {
    opacity: 1;
}

.fancybox-album .fancybox-title {
    color: #666;
    font-size: 14px;
    line-height: 1.7;
    letter-spacing: 0.05em;
    padding-top: 16px;
}

.fancybox-album .fancybox-title .photo-pager {
    float: right;
    color: #999;
    font-size: 20px;
    line-height: 1.5;
    padding: 5px 10px 0;
}

.fancybox-album .fancybox-title .photo-title {
    border: 1px dashed #DAE51E;
    border-width: 1px 0;
    color: #1A7292;
    font-size: 20px;
    line-height: 1.5;
    padding: 5px 10px;
}

.fancybox-album .fancybox-title .photo-intro {
    padding: 15px 10px 5px;
}

/*------------ / lightbox ------------*/
.mmenu-show #mobile-fixed li,
.mmenu-show #mobile-search,
.mmenu-show #member-box li a {
    background: #9ac7e8;
}

.mmenu-show #mobile-fixed ul,
.mmenu-show #member-box li {
    border-bottom-color: #9ac7e8;
}

.mmenu-show #mobile-menu .side-nav-top>li a:before {
    border-color: #0850A4;
}

.mmenu-show #mobile-menu .menu li a:hover,
.mmenu-show #mobile-menu .menu li.active>a {
    color: #0850A4;
}

.mmenu-show #mobile-menu .share .btn .ic {
    vertical-align: middle;
}

.mmenu-show #mobile-menu .language-menu {
    background: #58aff4;
    color: #fff;
}

.no-svg .mmenu-show #mobile-search .ibtn.search {
    background-image: url(../../images/common/mobile_search_btn.png);
}

@media screen and (max-width: 1580px) {

    /*------------ site_footer 1580 ------------*/
    .footer-bottom .container {
        max-width: none;
        padding: 0 80px;

    }

    /*------------ / site_footer 1580 ------------*/
}

@media screen and (max-width: 1470px) {

    /*------------ site_header 1470 ------------*/
    .site-title .logo {
        width: 300px;
    }

    .site-nav {
        padding: 70px 0 20px;
        margin-left: 170px;
    }

    .site-nav .menu>li>a {
        background-size: 279px auto;
        width: 93px;
        height: 93px;
        padding-top: 26px;
        font-size: 12px;
    }

    .site-nav .menu>li>a span {
        font-size: 18px;
    }

    /*------------ / site_header 1470 ------------*/
}

@media screen and (max-width: 1420px) {

    /*------------ banner 1420 ------------*/
    .banner:before {
        display: none;
    }

    /*------------ / banner 1420 ------------*/
}

@media screen and (max-width: 1300px) {

    /*------------ site_footer 1300 ------------*/

    .footer-top .container {
        background: none;
        max-width: 900px;
    }

    .site-info {
        margin-right: 40px;
        width: 50%;
    }

    .site-map {
        clear: both;
        text-align: center;
        padding-top: 30px;
        letter-spacing: 40px;
    }

    .site-map ul {
        display: inline;
    }

    .site-map ul li {
        display: inline-block;
    }

    .footer-bottom {
        text-align: center;
        padding: 10px 0;
    }

    .footer-bottom .container {
        padding: 0 15px;
    }

    /*------------ / site_footer 1300 ------------*/
}

@media screen and (max-width: 1250px) {

    /*------------ site_header 1250 ------------*/
    .site-title {
        padding: 10px 0;
        float: none;
        text-align: center;
    }

    .site-header .search-box {
        top: 26px;
        right: 15px;
    }

    .site-nav {
        clear: both;
        position: static;
        margin: 0 -10px;
        padding: 10px 0 20px;
        text-align: center;
    }

    .site-nav .menu>li {
        padding: 0 4px;
    }

    .header-fixed .site-title,
    .header-fixed .top-nav,
    .header-fixed .site-header .search-box {
        display: none;
    }

    .header-fixed .site-nav {
        padding: 10px 0;
        margin-left: 0;
    }

    /*------------ / site_header 1250 ------------*/
}

@media screen and (max-width: 1025px) {
    /*--- Ã©Å¡Â±Ã§Â§ÂÃ¦Â¬Å Ã¦â€°â€¹Ã¦Â©Å¸Ã¦ÂÂ¿ ---*/

    .header-sheet {
        position: fixed;
        height: auto;
        bottom: 0%;
        font-size: 14px;
        padding: 40px 0 10px;
        left: 0;
        width: 100%;
        box-sizing: border-box;
        text-align: center;
        border-radius: 0;
        border-left: solid 1px transparent;
        border-right: solid 1px transparent;
        border-bottom: solid 1px transparent;
    }

    .header-sheet .close-ontop {
        right: 0px;
        left: 0px;
        top: -21px;
        margin: auto;
        text-align: center;
        width: 100%;
        height: 35px;
    }

    button.close-ontop {
        padding: 0px;
    }

    .close-ontop {
        float: none;
    }

    body #keyreply-container {
        bottom: 10%;
    }

    .header-active #keyreply-container {
        bottom: 0%;
        transition: all .7s;
    }

    .header-fixed .header-sheet {
        display: block;
    }

    /*--- ENDÃ©Å¡Â±Ã§Â§ÂÃ¦Â¬Å Ã¦â€°â€¹Ã¦Â©Å¸Ã¦ÂÂ¿ ---*/
    /*------------ site_header 1025 ------------*/
    .top-nav,
    .site-nav,
    .site-header .search-box {
        display: none;
    }

    .header-fixed {
        padding-top: 0;
    }

    .header-fixed .site-header {
        position: static;
    }

    /*------------ / site_header 1025 ------------*/
    /*------------ site_main 1025 ------------*/
    .content-top {
        margin-bottom: 25px;
        padding: 0;
    }

    .main-content {
        padding-bottom: 80px;
    }

    /*------------ / site_main 1025 ------------*/
    /*------------ side 1025 ------------*/
    .side {
        display: none;
    }

    .has-side .content {
        position: relative;
        width: auto;
        float: none;
    }

    /*------------ / side 1025 ------------*/
    /*------------ site_footer 1025 ------------*/
    .site-map,
    .footer-bottom .share {
        display: none;
    }

    /*------------ / site_footer 1025 ------------*/
    /*------------ floating 1025 ------------*/
    .floating,
    .floating.fancybox-margin {
        background: none;
        right: 50%;
        bottom: 5px;
        margin-right: -15px;
    }

    .floating .ibtn.gotop {
        background: url('../../images/common/mobile_gotop.svg') 50% 50% no-repeat;
        width: 25px;
        height: 30px;
        border: 0;
    }

    .no-svg .floating .ibtn.gotop {
        background: url('../../images/common/mobile_gotop.png');
    }

    /*------------ / floating 1025 ------------*/
    .banner .slick-prev,
    .banner .slick-next {
        display: none !important;
    }

    .site-header {
        position: static;
        border: none;
        padding: 0;
    }

    .footer-top .share {
        display: none;
    }

}

@media screen and (max-width: 840px) {

    /*------------ site_footer 840 ------------*/
    .footer-top {
        text-align: center;
    }

    .site-info {
        font-size: 14px;
    }

    .footer-top .container {
        padding: 0px 5px 20px;
    }

    .site-info,
    .follow {
        float: none;
        width: auto;
    }
    .follow{
        text-align: center;
        margin: 0 auto;
        max-width: inherit;
    }

    .site-info {
        display: inline-block;
        margin: 0 0 15px;
        background: none;
        padding: 0;
        min-height: 0;
    }

    .follow>* {
        margin-top: 5px;
    }

    /*------------ / site_footer 840 ------------*/
}

@media screen and (max-width: 767px) {

    /*------------ site_main 767 ------------*/
    .main-title span {
        font-size: 30px;
    }

    .content-top {}

    .content-title {
        float: none;
        font-size: 18px;
    }

    .main-content {
        padding: 30px 0 60px;
    }

    .banner .container:before,
    .banner:before {
        display: none;
    }

    .main-title {
        padding: 20px 0;
        font-size: 18px;
        letter-spacing: 0.1em;
    }

    .btn.normal {
        font-size: 16px;
        height: 50px;
        line-height: 55px;
    }

    .btn.simple {
        font-size: 16px;
        height: 50px;
        line-height: 60px;
    }

    .reminder {
        font-size: 14px;
        margin-top: 0;
    }

    .content-top .title02 {
        font-size: 18px;
    }

    /*------------ / site_main 767 ------------*/
    /*------------ breadcrumb 767 ------------*/
    .content-top .breadcrumb {
        float: none;
    }

    /*------------ / breadcrumb 767 ------------*/
    /*------------ pagination 767 ------------*/
    .page-info {
        display: block;
        padding: 0 40px;
    }

    .pagination {
        position: relative;
        height: 0;
    }

    .pagination li a {
        display: none;
    }

    .pagination li a.controls {
        display: block;
        position: absolute;
        bottom: -30px;
    }

    .pagination li a.prev {
        left: 0;
    }

    .pagination li a.next {
        right: 0;
    }

    /*------------ / pagination 767 ------------*/
    /*------------ form 767 ------------*/
    .form-title {
        font-size: 36px;
    }

    .form-box {
        padding: 15px;
    }

    .form-box .row {
        margin: 0;
    }

    .form-box .col {
        float: none;
        width: auto;
        padding: 0;
    }

    .form-box .name2 .control-box {
        padding: 0;
    }

    .form-box .name2 .radio-box {
        bottom: 100%;
    }

    .form-box .address2 .input-box {
        width: 50%;
    }

    .form-box .address2 .input-box:last-child {
        width: 100%;
    }

    .form-box .tips {
        min-height: 0;
    }

    .success-msg {
        font-size: 18px;
    }

    .form-box .control-label {
        font-size: 16px;
    }

    .form-control {
        height: 37px;
        line-height: 37px;
        padding: 5px 10px;
        font-size: 16px;
        margin-bottom: 10px;
    }


    /*------------ / form 767 ------------*/
    /*------------ lightbox 767 ------------*/
    .fancybox-album .fancybox-skin {
        margin: 50px 0 5px;
    }

    .fancybox-album .fancybox-close {
        top: -50px;
        right: 50%;
        margin-right: -20px;
    }

    .fancybox-album .fancybox-nav span {
        top: -45px;
    }

    .fancybox-album .fancybox-prev span {
        left: 0;
    }

    .fancybox-album .fancybox-next span {
        right: 0;
    }

    .fancybox-album .fancybox-title .photo-title,
    .fancybox-album .fancybox-title .photo-pager {
        font-size: 18px;
    }

    .fancybox-album .fancybox-title .photo-title {
        padding: 5px 0;
    }

    .fancybox-album .fancybox-title .photo-pager {
        padding: 5px 0 0;
    }

    .fancybox-album .fancybox-title .photo-intro {
        padding: 15px 0 5px;
    }

    /*------------ / lightbox 767 ------------*/
}

@media screen and (max-width: 400px) {

    /*------------ form 400 ------------*/
    .form-box .form-group .input-box {
        width: 100%;
    }

    /*------------ / form 400 ------------*/
    /*------------ btn 400 ------------*/
    .btn.simple {
        margin: 0 auto 10px;
    }

    /*------------ / btn 400 ------------*/
}