@charset "utf-8";

@import url(//fonts.googleapis.com/earlyaccess/notosanssc.css);
.chinese{
    font-family: "HY ZhongSongTi", serif;
}
/* CSS Document */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
    max-height: 1000000px;
    box-sizing: border-box;
}
body {
    font-size: 18px;
    font-weight: 600;
    color: #000;
    position: relative;
    -webkit-text-size-adjust: 100%;
    background-color: #fff;
    line-height: 1.8;
}
a, a:hover, a:focus, a:active {
    color: inherit;
    text-decoration: none;
}
a:hover {
    opacity: 0.8;
}
img {
    max-width: 100%;
}


/*--------------------------------------------------------------
 # Utilities
--------------------------------------------------------------*/
/* clear */
.clearfix:before,
.clearfix:after {
    content: ' ';
    display: table;
}
.clearfix:after {
    clear: both;
}
/*backgrounds*/
.bg-white {
    background-color: #fff;
}
/*colors*/
.color-gold {
    color: #8e8303;
}
.color-morning {
    color: #988752;
}
.color-night1 {
    color: #62acda;
}
.color-night2 {
    color: #00609d;
}
.color-water {
    color: #00c4ee;
}
/*typography*/
.text-center {
    text-align: center;
}
.text-left {
    text-align: left;
}
.text-right {
    text-align: right;
}

/* display */
.d-inline-block {
    display: inline-block;
}


/*--------------------------------------------------------------
 # Containers
--------------------------------------------------------------*/
.outer {
    max-width: 1054px;
    max-width: calc(1024px + 30px);
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
}
.outer--pad0 {
    max-width: 1024px;
    padding-left: 0;
    padding-right: 0;
}
.outer--faq {
    max-width: 980px;
    max-width: calc(950px + 30px);
}
.inner {
    width: 100%;
    max-width: 1024px;
    margin-left: auto;
    margin-right: auto;   
    padding-left: 15px;
    padding-right: 15px; 
}
.inner--faq {
    padding-bottom: 50px;
}


/*--------------------------------------------------------------
 # Nav
--------------------------------------------------------------*/
.nav {
    padding-top: 20px;
    /*padding-bottom: 10px;*/
    text-align: center;
    border-bottom: solid 4px #957b03;
}
.nav__brand {
    padding-left: 15px;
    padding-right: 15px;
}
.nav__brand button{
    outline: none;
}
.nav__logo {
    display: inline-block;
    width: 150px;
}
.nav__links {
    font-size: 0;
    margin-top: 20px;
}
.nav__links span{
    font-size: 14px;
    display: none;
	padding: 0 10px;
}
.nav__text_on{
	padding: 0 10px;
	color: #fff;
}
.nav__item {
    display: inline-block;
    border-style: solid;
    border-color: #ccc;
    border-left-width: 1px;
	padding: 5px 0;
}
.nav__item_on {
	display: inline-block;
    border-style: solid;
    border-color: #ccc;
    border-left-width: 1px;
	background-color: #957b03;
	padding: 5px 0;
}

.nav__item:last-child {
    border-right-width: 1px;
}
.nav__link {
    display: block;
}
.hamburger {
    float: right;
}

/*--------------------------------------------------------------
 # Footer
--------------------------------------------------------------*/
.footer {
    text-align: center;
}
.footer__top {
    font-size: 0;
    position: relative;
    text-align: right;
}
.footer__to-top {
    display: inline-block;
    margin-top: 55px;
    margin-bottom: 50px;
    min-height: 79px;
    position: relative;
    z-index: 9999;
}
.footer__to-top img{
    position: fixed;
    bottom: 10%;
    z-index: 9999;
    display: none;
    margin-right: 30px;
    right: 0;
}
.footer__to-top img:hover{
    z-index: 9999;
}
.footer__mid {
    padding-top: 35px;
    padding-left: 15px;
    padding-right: 15px;
    padding-bottom: 60px;
    background-color: #333;
}
.footer__btn-link {
    display: block;
    max-width: 390px;
    padding-top: 20px;
    padding-bottom: 20px;
    border: 6px solid #a0a0a0;
    color: #333;
    font-family: "Microsoft Yahei","微软雅黑", STXihei, "华文细黑";
    background-color: #fff;
}
.footer__contact {
    margin-top: 50px;
    color: #fff;
}
.footer__contact:before {
    content: '';
    display: inline-block;
    vertical-align: -3px;
    width: 20px;
    height: 20px;
    margin-right: 15px;
    background-image: url(../images/btn/shop-icon.png);
    background-repeat: no-repeat;
}
.footer__contact a{
    text-decoration: underline;
    font-family: "Microsoft Yahei","微软雅黑", STXihei, "华文细黑";
}
.footer__contact a:hover{
    text-decoration: none;
}
.footer__bot {
    padding: 15px;
    font-size: 12px;
    color: #fff;
    background-color: #000;
}



/*--------------------------------------------------------------
 # Banners
--------------------------------------------------------------*/
.banner {
    background-size: cover;
    background-position: center;
}
/* top page */

.banner--topmain {
    background-image: url(../images/top/bg-main.png);
}
.banner--concept {
    background-image: url(../images/top/bg-concept.png);
}
.banner--service {
    background-image: url(../images/service/service_img.png);
}
.banner--shop {
    background-image: url(../images/shop/shop_img.png);
}

.banner--exluxury {
    background-image: url(../images/top/bg-exluxury.png);
}
.banner--stone {
    background-image: url(../images/top/bg-stone.jpg);
}
.banner--product {
    background-image: url(../images/top/bg-product.jpg);
}
.banner--ppgel {
    background-image: url(../images/top/pp_bg.png);
}
.banner--bella {
    background-image: url(../images/top/bella_bg.png);
}
.banner--esute {
    background-image: url(../images/top/esute_bg.png);
}


/*--------------------------------------------------------------
 # Buttons
--------------------------------------------------------------*/
.btn_wrap{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.btn {
    display: inline-block;
    margin: 0 10px;
}
.btn--banner {
    margin-bottom: 50px;
    padding: 4px 40px;
    font-size: 16px;
    color: #fff;
    background-color: rgba(0,0,0,.6);
    border: 4px solid;
    letter-spacing: 3px;
}
.btn--banner:hover,
.btn--banner:focus {
    color: #fff;
}


/*--------------------------------------------------------------
 # Tab
--------------------------------------------------------------*/
.tab-pane:not(.tab-pane--active) {
    display: none;
}



/*--------------------------------------------------------------
 # Main
--------------------------------------------------------------*/

.main__header {
    padding-top: 30px;
    padding-bottom: 30px;
    text-align: center;
    background-color: #fff;
    border-bottom: solid 2px #957b03;
}
.main__title {
    line-height: 1;
    letter-spacing: 3px;
    font-family: Arial, sans-serif;
    font-size: 30px;
    font-weight: normal;
    color: #957b03;
}
.main__subtitle {
    display: block;
    margin-top: 8px;
    letter-spacing: normal;
    font-size: 14px;
    font-weight: 600;
    font-family: "Hiragino Kaku Gothic ProN", "Yu Gothic", YuGothic;
}


/*--------------------------------------------------------------
 # Sections
--------------------------------------------------------------*/
.section--power{
    max-width: 1024px;
    max-width: 100%;
    margin: 0 auto;
    margin-bottom: 115px;
}
.section__title {
    padding-top: 35px;
    padding-bottom: 20px;
    letter-spacing: 3px;
    text-align: center;
    /*font-family: Arial, "Reimin Regular", "游明朝体", "Yu Mincho", YuMincho, "HGS明朝E", 'ＭＳ Ｐ明朝', 'MS PMincho', serif;*/
    font-family: "HY ZhongSongTi", serif;
    font-size: 30px;
    font-weight: 500;
    line-height: 30px;
}
.page-top .section__title{
    font-family: Arial, sans-serif;
}
.page-top .section__title small.section__subtitle{
    font-family: "Hiragino Kaku Gothic ProN", "Yu Gothic", YuGothic;
    font-family: "HY ZhongSongTi", serif;
    font-family: "Microsoft Yahei","微软雅黑", STXihei, "华文细黑";
}
.page-morning .section__title{
    font-family:  Arial, "Reimin Regular", "游明朝体", "Yu Mincho", YuMincho, "HGS明朝E", 'ＭＳ Ｐ明朝', 'MS PMincho', serif;
    font-family: "HY ZhongSongTi", serif;
    font-size: 20px;
    position: relative;
}
.morning-woman{
    position: absolute;
    top: 59%;
    left: 35%;
    transform: translate(-50%,-50%);
}
.page-morning .section__title small{
    font-family: Arial, sans-serif;
    letter-spacing: 2px;
    font-size: 18px;
    padding-top: 10px;
    font-weight: normal;
}
.page-morning .section__title.fs-30{
    font-size: 30px;
}
.page-morning .section__title.fs-24{
    font-size: 24px;
}
.section__subtitle {
    display: block;
    letter-spacing: normal;
    font-size: 14px;
    font-weight: 600;
}
.section__title--products {
    padding-top: 45px;
    position: relative;
    padding-bottom: 40px;
}
.section__title--faq{
    font-family: inherit;
    font-weight: bold;
}


/*--------------------------------------------------------------
 # Top page
--------------------------------------------------------------*/
.ppgel__top {
    padding:1em 0 0 0;
    text-align: center;
}
.ppgel__wrap {
    padding:2.5em 0 0.5em 0;
    text-align: center;
    margin: 0 auto ;
}
.ppgel_text {
    padding: 1em 0.7em;
    font-size:1.1em;
    line-height: 1.8;
    color: #000;
    text-shadow:1px 1px 10px #fff;
    text-align: left;
}

.ppgel__img {
    padding: 1.5em 0 0 0;
}
.esute__wrap {
    display: flex;
    justify-content: flex-end;
    width: 100%;
   
}

.esute__wrap .text {
    padding: 3em 0.7em 0.8em 0;
    font-size:1.5em;
    line-height: 1.8;
    color: #000;
    text-shadow:1px 1px 10px #fff;
    width: 60%;
}
.esute__wrap p {
    padding: 0.7em 0 1em 0;
    width: 70%;
    text-align: center;
}
.exluxury__bg {
    padding-top: 70px;
    background-image: url(../images/top/exluxury.png);
    background-repeat: no-repeat;
    background-position: left bottom;
}
.exluxury__top {
    padding-top: 10px;
    text-align: center;
}
.exluxury__suptitle {
    font-size: 30px;
    line-height: 30px;
    font-weight: bold;
}
.exluxury__effect {
    font-size: 18px;
    line-height: 2.5em;
}

.exluxury__x {
    font-size: 36px;
    vertical-align: middle;
}
.exluxury__bot {
    text-align: center;
}
.exluxury__title {
    margin-top: 15px;
    font-size: 60px;
    line-height: 1;
    text-shadow: 0px 0px 30px #fff;
}
.exluxury__title img{
    display: block;
    margin: 0 auto;
}
.exluxury__subtitle {
    display: block;
    font-size: 20px;
    line-height: 20px;
    font-weight: bold;
    margin-bottom: 70px;
    letter-spacing: 5px;
}
.exluxury__img {
    display: block;
    margin-left: auto;
}
.concept__title {
    margin-bottom: 20px;
    color: #fff;
    font-size: 1.7em;
    padding: 0.5em 0 0 0;;
    text-shadow: 0px 0px 30px #000;
}

.service__title {
    margin-bottom: 20px;
    color: #434343;
    font-size: 1.7em;
    padding: 0.5em 0 0 0;;
}
.service__content {
	padding: 0 0 2% 0;
    color: #434343;
    font-size: 16px;
}

.topmain__title {
    padding-top: 2em;
    margin-bottom: 20px;
    color: #fff;
    font-size: 2.2em;
	text-shadow: #252521 0px 0px 5px, #252521 -0px 0px 5px,
            #252521 0px -0px 5px, #252521 -0px -0px 5px;
}
.topmain__content {
    padding: 0 0 2% 0;
    color: #fff;
    font-size: 1.2em;
	text-shadow: #252521 0px 0px 5px, #252521 -0px 0px 5px,
            #252521 0px -0px 5px, #252521 -0px -0px 5px;

}
.concept__content {
	padding: 0 0 2% 0;
    color: #fff;
    font-size: 16px;
    text-shadow: 0px 0px 30px #000;
}
.product__title {
    padding-top: 40px;
    text-align: center;
    line-height: 1;
    font-size: 38px;
    font-weight: bold;
}
.product__x {
    font-size: 63px;
}
.product__content {
    padding-top: 50px;
    padding-bottom: 50px;
    font-size: 21px;
    letter-spacing: 2px;
}
.top-product {
    padding-top: 55px;
    padding-bottom: 30px;
    background-size: cover;
    background-position: center;
    text-align: center;
    font-size: 14px;
    letter-spacing: 2px;
    font-weight: bold;
}
.top-product--morning {
    background-image: url(../images/top/product-morning.jpg);
}
.top-product--night {
    color: #fff;
    background-image: url(../images/top/product-night.jpg);
}
.top-product--water {
    background-image: url(../images/top/product-water.jpg);
}
.top-product__sup {
    margin-bottom: 45px;
    text-decoration: underline;
}
.top-product__content {
    max-width: 210px;
    margin: auto;
    margin-bottom: 10px;
}
.top-product__title {
    font-size: 30px;
    line-height: 1.5em;
}
.top-product__sub {
    margin-bottom: 95px;
}
.top-product__link,
.top-product__link:hover {
    display: block;
    max-width: 185px;
    margin: auto;
    padding: 12.5px 15px;
    border: 1px solid #666666;
    color: #000;
    background-color: #fff;
}
.top-product__link:after {
    content: '>';
    display: inline-block;
    vertical-align: middle;
    margin-left: 20px;
    margin-right: -20px;
    color: #999;
    font-family: monospace;
    font-weight: bold;
    margin-top: -2px;
}
.stone__content {
    padding-top: 150px;
    padding-bottom: 50px;
    color: #fff;
    font-size: 30px;
    font-weight: bold;
    letter-spacing: 5px;
}
.news_list{
    padding:3em 0 0 0;
}
.news {
	margin:0 auto 3em;
	padding:0.3em 2.5em 1em;
	text-align: left;
	font-size: 1em;
	line-height: 1.3;
	color: #666;
	overflow: auto;
	width:100%;
    max-width: 1024px;
}
.news dl {padding: 0.5em 0;border-bottom: 1px solid #ccc; font-size:0.9em; line-height: 1.7;}
.news dt {padding-bottom:0.2em; width:6em;  }
.news a{
	color: #817c74 !important; 
}
.top_about{
	margin: 2em auto 2.5em;
    padding: 2em ;
    width: 100%;
	max-width: 1024px;
    border: solid 1px #957b03;
}
.top_about_title{
	font-size: 1.5em;
    padding: 0 0 1em 0;
    color: #957b03;
}

.top_about_inner{
    margin: 0.7em 0 0em 0;
    padding: 0 0.5em;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.top_about_inner .text{
	width: 50%;
    font-size: 1.0em;
}
.top_about_inner .image{
	width: 45%;
	margin: 0 0 0 0 ;
	text-align: center;
}

.banner--topmain .inner{
	padding: 5em 2em 5.5em;
}

.content_title{
    width: 97%;
    max-width: 1040px;
    font-size: 3em;
    color: #fff;
    opacity: 0.9;
    margin: 0 auto;
    padding: 0.5em 0 ;
    font-weight: 100;
    font-style: italic;
	text-shadow:1px 1px 20px #343434;
}

/*--------------------------------------------------------------
 # リンクボタン
--------------------------------------------------------------*/
.news_link_btn{
    text-align: right;
    margin: 1em 0 0 0;
}

.btn_flat {
    display: inline-block;
    padding: 0.3em 1em;
    text-decoration: none;
    color: #d8bb8d;
    border: solid 2px #d8bb8d;
    border-radius: 3px;
    transition: .4s;
    font-size: 0.8em;
  }
.btn-_flat:hover {
    background: #d8bb8d;
    color: white;
  }


/*--------------------------------------------------------------
 # business
--------------------------------------------------------------*/
.business_explain{
    width: 100%;
	max-width: 1024px;
    margin: 1.75em auto ;
    text-align: center;
    font-size: 1.2em;
    position: relative;
    padding:3em 2em;
    border: solid 1px #957b03;
    color: #957b03;
}



.business{
	width: 100%;
	max-width: 1024px;
    margin: 0 auto 3em;

}

/*--------------------------------------------------------------
 # shop
--------------------------------------------------------------*/
.shop_btn_wrap{
    width: 100%;
	max-width: 1024px;
    margin: 2.1em auto ;
    border: solid 1px #957b03;
    padding:1em;
}
.shop_btn_wrap p{
    color:#957b03;
    font-size: 1.2em;
    text-align: center;
}
.shop_box{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.shop_box p{
    width: 50%;
    padding: 0.5em;
}
.shop_box_etc{
    font-size: 0.9em;
    color: #000;
    display: block;
    text-align: center;
    width: 100%;
    padding: 0 1em 0 0;
}

/*--------------------------------------------------------------
 # contact
--------------------------------------------------------------*/
.contact_wrap{
    width: 100%;
	max-width: 1024px;
    margin: 2.1em auto ;
    border: solid 1px #957b03;
    padding:3em 2em;
}
.contact_wrap a {
    text-decoration: underline;
    color: #d8bb8d;
    font-size: 1.2em;
}
.contact_wrap .luxury{
    padding: 2em 0 0 0;
}
/*--------------------------------------------------------------
 # Power page
--------------------------------------------------------------*/
.banner--power{
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}
.banner--power__title{
    padding: 140px 0;
    display: block;
    color: #fff;
    text-align: center;
    font-size: 28px;
    text-shadow: 1px 1px 10px rgba(0,0,0,.8);
    font-weight: 600;
}



/*--------------------------------------------------------------
 # Products Banner
--------------------------------------------------------------*/
.product-banner {
    padding-top: 60px;
    padding-bottom: 55px;
}
.product-banner--water {
    padding-bottom: 120px;
}
.product-banner__img {
    display: block;
    margin: auto;
    margin-top: 25px;
}
.product-banner__box--white {
    color: #fff;
}
.product-banner__sup {
    font-size: 26px;
    font-weight: bold;
    font-family: "Reimin Regular", "游明朝体", "Yu Mincho", YuMincho, "HGS明朝E", 'ＭＳ Ｐ明朝', 'MS PMincho', serif;
}
.product-banner__title {
    line-height: 1;
    font-size: 50px;
}
.product-banner__subtitle {
    margin-bottom: 15px;
    font-size: 16px;
    font-family: "Hiragino Kaku Gothic ProN", "Yu Gothic", YuGothic;
    font-family: "Microsoft Yahei","微软雅黑", STXihei, "华文细黑";
}
.product-banner__title2 {
    font-size: 24px;
}
.product-banner__content {
    margin-bottom: 15px;
    font-size: 16px;
}
.product-banner__subcontent {
    margin-bottom: 20px;
    font-size: 12px;
}
.product-banner__btn {
    display: block;
    max-width: 230px;
    padding: 10px 15px;
    text-align: center;
    font-size: 14px;
    border: 1px solid #666666;
    color: #000;
    background-color: #fff;
}
.product-banner__btn:hover,
.product-banner__btn:focus,
.product-banner__btn:visited,
.product-banner__btn:active{
    color: #666;
}
.product-banner__btn:after {
    content: '>';
    display: inline-block;
    vertical-align: middle;
    margin-left: 20px;
    margin-right: -20px;
    margin-top: -2px;
    color: #999;
    font-family: monospace;
    font-weight: bold;
}
.product-banner__link {
    display: block;
    padding-top: 22px;
    padding-bottom: 22px;
    text-align: center;
    font-size: 20px;
}
.product-banner__link:before {
    content: '';
    display: inline-block;
    vertical-align: -2px;
    width: 20px;
    height: 19px;
    margin-right: 15px;
    background-image: url(../images/btn/product-sub-btn.png);
    background-size: cover;
    background-position: center;
}
.product-banner__link--mor1 {
    background-color: #ddcfa5;
}
.product-banner__link--mor2 {
    background-color: #bcab74;
}
.product-banner__link--mor3 {
    background-color: #a7986a;
}
.product-banner__link--nig1 {
    background-color: #62acda;
}
.product-banner__link--nig2 {
    color: #fff;
    background-color: #1f7fbc;
}
.product-banner__link--nig3 {
    color: #fff;
    background-color: #00609d;
}
.product-banner__link--nig2:before,
.product-banner__link--nig3:before  {
    background-image: url(../images/btn/product-sub-btn2.png);
}
.product-banner__link--nig2:hover,
.product-banner__link--nig2:active,
.product-banner__link--nig2:focus,
.product-banner__link--nig3:hover,
.product-banner__link--nig3:active,
.product-banner__link--nig3:focus  {
    color: #fff;
}
.product-banner__link--wat1 {
    background-color: #a3efff;
}
.product-banner__link--wat2 {
    background-color: #56daf6;
}
.product-banner__link--wat3 {
    background-color: #00c4ee;
}


/*--------------------------------------------------------------
 # Products 1 page
--------------------------------------------------------------*/
.product-steps {
    text-align: center;
}
.product-steps__row {
    margin-left: -5px;
    margin-right: -5px;
    font-size: 0;
}
.product-step {
    /*display: inline-block;
    width: 33.33333%;
    width: calc(100% / 3);*/
    vertical-align: top;
    font-size: 1rem;
    padding-left: 5px;
    padding-right: 5px;
}
.product-step__box {
    padding: 22px 34px;
    border: 1px solid #747474;
}
.product-step__title {
    max-width: 90px;
    margin: 0 auto 15px;
    text-align: center;
    font-family: Arial, sans-serif;
    font-size: 20px;
    color: #666;
    border-bottom: 2px solid #666;
    margin-bottom: 20px;
    padding-bottom: 5px;
}
.product-step__content {
    margin-top: 15px;
    text-align: left;
    font-size: 14px;
    font-family: "Hiragino Kaku Gothic ProN", "Yu Gothic", YuGothic;
    font-family: "HY ZhongSongTi", serif;
    font-weight: 600;
}
.product-daily__title {
    margin-top: 35px;
    margin-bottom: 35px;
    text-align: center;
    font-size: 22px;
}
.product-daily__table {
    width: 100%;
    font-size: 14px;
}
.product-daily__table td {
    vertical-align: middle;
    text-align: center;
    font-weight: normal;
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-family: "HY ZhongSongTi", serif;
}
.product-daily__text {
    display: block;
    font-size: 16px;
    font-weight: bolder;
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-family: "HY ZhongSongTi", serif;
}
.product-daily__text--orange {
    color: #eb6100;
}
.product-daily__text--navy {
    color: #00479d;
}
.product-daily__text--sky {
    color: #00a1e9;
}
.product-precaution {
    margin-top: 35px;
    padding: 25px 40px 28px;
    font-size: 14px;
    background-color: #f0f0f0;
    font-weight: normal;
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-family: "Microsoft Yahei","微软雅黑", STXihei, "华文细黑";
}
.product-precaution__title {
    margin-bottom: 15px;
    text-align: center;
    font-size: 20px;
    font-weight: normal;
}
.product-precaution__title--water {
    color: #00c4ee;
}


/*--------------------------------------------------------------
 # Products 2 page
--------------------------------------------------------------*/
.product-components__table {
    width: 100%;
    margin-bottom: 50px;
    border-collapse: collapse;
    border-bottom: 1px solid #000;
    font-weight: bold;
}
.product-components__table td:first-child {
    text-align: center;
}
.product-components__table tr td:first-child{
    width: 100px;
}
.product-components__table tr td:nth-child(2){
    width: 200px;
}
.product-components__table td {
    vertical-align: middle;
    padding-top: 20px;
    padding-bottom: 20px;
    border-top: 1px solid #000;
}
.product-components__title {
    font-size: 20px;
    letter-spacing: 2px;
}
.product-components__content {
    font-size: 16px;
}


/*--------------------------------------------------------------
 # Products 3 page
--------------------------------------------------------------*/
.product-reviews {
    margin-bottom: 50px;
}
.product-reviews__btn {
    display: block;
    max-width: 165px;
    margin: auto;
    padding: 10px 15px;
    text-align: center;
    font-size: 14px;
    border: 1px solid #666666;
    color: #000;
    background-color: #fff;
}
.product-reviews__btn:before {
    content: '>';
    font-weight: bold;
    display: inline-block;
    vertical-align: middle;
    margin-left: -20px;
    margin-right: 20px;
    color: #999;
    font-family: monospace;
    font-weight: bold;
    transform: rotate(90deg);
}
.review {
    padding: 20px 30px 25px;
    background-color: #eaeaea;
}
.product-reviews .review:nth-child(4),
.product-reviews .review:nth-child(5){
    display: none;
}
.review:not(:last-child) {
    margin-bottom: 20px;
}
.review__title {
    padding-left: 20px;
    padding-bottom: 10px;
    font-size: 18px;
    border-bottom: 1px solid #fff;
    font-family: "Hiragino Kaku Gothic ProN", "Yu Gothic", YuGothic;
    font-family: "HY ZhongSongTi", serif;
    font-weight: normal;
}
.review__content {
    padding: 10px 20px 0;
    font-size: 14px;
    font-weight: normal;
    font-family: "Hiragino Kaku Gothic ProN", "Yu Gothic", YuGothic;
    font-family: "HY ZhongSongTi", serif;
}


/*--------------------------------------------------------------
 # Concept page
--------------------------------------------------------------*/
.slider {
    position: relative;
}
.slider__arrows {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    max-width: 1024px;
    margin: auto;
}
.slider__arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    padding: 12px 17.5px 10px 17.5px;
    cursor: pointer;
    border: 0;
    background-color: rgba(0,0,0,0.8);
}
.slider__arrow--prev {
    left: 0;
}
.slider__arrow--prev:hover{
    opacity: 0.8;
}
.slider__arrow--next {
    right: 0;
}
.slider__arrow--next:hover{
    opacity: 0.8;
}

.concept-slider__item {
    position: relative;
}
.concept-slider__text {
    position: absolute;
    top: 0;
    left: 0;
    max-width: 100%;
    max-height: 100%;
    opacity: 0;
    transition: opacity 2s linear;
}
.slick-active .concept-slider__text {
    opacity: 1;
}
.concept-slider .slick-slide {
    transition: opacity 1s linear;
}
.concept-slider .slick-slide:not(.slick-active) {
    opacity: .5;
}
.concept-slider__img {
    /* slide image is 1024px by 582px */
    display: block;
    margin: auto;
}
.concept-slider:before, 
.concept-slider:after {
    content: '';
    position: absolute;
    width: calc(50% - 511px);
    top: 0;
    bottom: 0;
    z-index: 1;
    background-color: #fff;
    opacity: 0.7;
}
.concept-slider:before {
    background: rgb(153,153,153);
    background: -moz-linear-gradient(left, rgba(153,153,153,1) 0%, rgba(51,51,51,1) 99%);
    background: -webkit-linear-gradient(left, rgba(153,153,153,1) 0%,rgba(51,51,51,1) 99%);
    background: linear-gradient(to right, rgba(153,153,153,1) 0%,rgba(51,51,51,1) 99%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#999999', endColorstr='#333333',GradientType=1 );
}
.concept-slider:after {
    background: rgb(51,51,51);
    background: -moz-linear-gradient(left, rgba(51,51,51,1) 1%, rgba(153,153,153,1) 100%);
    background: -webkit-linear-gradient(left, rgba(51,51,51,1) 1%,rgba(153,153,153,1) 100%);
    background: linear-gradient(to right, rgba(51,51,51,1) 1%,rgba(153,153,153,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#333333', endColorstr='#999999',GradientType=1 );
}
.concept-slider:before {
    left: 0;
}
.concept-slider:after {
    right: 0;
}
.concept-btn {
    position: relative;
    display: block;
    max-width: 430px;
    margin: 35px auto;
    padding: 20px;
    line-height: 1.5;
    text-align: center;
    font-size: 24px;
    color: #fff;
    background-color: #988752;
    font-family: "Hiragino Kaku Gothic ProN", "Yu Gothic", YuGothic;
    font-family: "HY ZhongSongTi", serif;
}
.concept-btn:before {
    content: '';
    position: absolute;
    top: 5px;
    bottom: 5px;
    left: 5px;
    right: 5px;
    border: 1px solid;
}
.concept-btn:after {
    content: '';
    position: absolute;
    top: 50%;
    right: 20px;
    background-image: url(../images/concept/yajirushi02.png);
    width: 19px;
    height: 20px;
    transform: translateY(-50%);    
}
.concept-btn--active:after {
    background-image: url(../images/concept/yajirushi01.png);
}
.concept-btn:hover,
.concept-btn:active,
.concept-btn:focus{
    opacity: 0.8;
    color: #fff;
    border-color: #fff;
}
.concept-btn__sub {
    display: block;
    font-size: 14px;
    font-family: "Microsoft Yahei","微软雅黑", STXihei, "华文细黑";
}
.concept-table {
    width: 100%;
    text-align: left;
    color: #777;
    font-weight: normal;
    background-color: #f5f5f5;
    border-collapse: collapse;
    border-bottom: 1px solid #8e8e8e;
    font-family: "Hiragino Kaku Gothic ProN", "Yu Gothic", YuGothic;
    font-family: "HY ZhongSongTi", serif;
    margin: 0 0 25px 0;
}
.concept-table th,
.concept-table td {
    padding: 20px;
    border-top: 1px solid #8e8e8e;
}
.concept-table th {
    background-color: #eeeeee;
    font-weight: normal;
}


/*--------------------------------------------------------------
 # Products page
--------------------------------------------------------------*/
.products-banner {
    padding-top: 50px;
    padding-bottom: 55px;
    text-align: center;
    font-weight: bold;
}
.products-banner__sup {
    margin-bottom: 15px;
    font-size: 24px;
    letter-spacing: 5px;
    line-height: 3;
    text-shadow: 2px 2px 6px #fff, 2px 2px 10px #fff, 2px 2px 10px #fff, 2px 2px 10px #fff, 2px 2px 10px #fff;
}
.products-banner__title {
    margin-bottom: 15px;
    font-size: 30px;
}
.products-banner__title-text {
    display: inline-block;
    width: calc(50% - 60px);
    letter-spacing: 5px
}
.products-banner__x {
    vertical-align: middle;
    line-height: 1;
    font-size: 76px;
}
.products-banner__content {
    margin-bottom: 30px;
    font-size: 20px;
    letter-spacing: 5px;
    line-height: 2.25em;
}
.products-banner__box {
    max-width: 640px;
    align-items: center;
    margin: auto;
    padding: 28px;
    text-align: left;
    border: 1px solid;
    background-color: #fff;
    font-family: Meiryo;
    font-family: "HY ZhongSongTi", serif;
}
.products-banner__box-left {
    font-size: 16px;
    font-weight: normal;
}
.products-banner__box-right {
    padding-left: 15px;
    font-size: 14px;
    font-weight: normal;
}
.products-boxes {
    padding-top: 45px;
    padding-bottom: 45px;
}
.products-box {
    padding: 35px;
    border: 1px solid #737373;
}
.products-box .grid div:last-child{
    text-align: left;
}
.products-box .grid div:last-child img{
    margin-left: auto;
    float: right;
}
.products-box__img-box.products-box__part2{
    padding-right: 20px;
}
.products-box:not(:last-child) {
    margin-bottom: 30px;
}
.products-box__title {
    margin-bottom: 35px;
    font-size: 28px;
    line-height: 1.4em;
    letter-spacing: 1.5px;
}
.products-box__content{
    letter-spacing: 2px;
    font-weight: bold;
    padding-right: 35px;
}
.products-steps {
    position: relative;
    background-image: url(../images/product/products-main-image-2.png);
    background-size: cover;
    background-position: center;
    /* image dimension: 1024px by 289px */
    width: 100%;
    padding-bottom: 28.22265625%;
}
.products-steps__text {
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    transform: translateY(-50%);
    width: 80%;
    max-width: 789px;
    margin: auto;
    padding: 12px;
    text-align: center;
    font-size: 24px;
    color: #fff;
    background-color: rgba(0,0,0,0.5);
    border: 5px solid;
    letter-spacing: 3.5px;
}
.products-lineup {
    padding-top: 35px;
    padding-bottom: 40px;
    text-align: center;
    font-weight: bold;
    letter-spacing: 1.5px;
}
.products-lineup__title {
    max-width: 100%;
    margin: 0 auto 60px;
    text-align: center;
    font-size: 26px;
}
.products-lineup__subtitle {
    display: block;
    margin-top: 10px;
    padding-top: 15px;
    font-size: 18px;
    border-top: 1px solid #ccc;
    letter-spacing: 3.5px;
    font-family: Arial;
}
.products-item {
    max-width: 300px;
    margin: auto;
    padding-left: 10px;
    padding-right: 10px;
    text-align: center;
    font-weight: bold;
}
.products-item__sup {
    font-size: 18px;
}
.products-item__title {
    padding-top: 5px;
    padding-bottom: 5px;
    font-size: 24px;
}
.products-item__content {
    text-align: justify;
    font-size: 14px;
}
.products-item__btn {
    display: inline-block;
    width: 100%;
    margin-top: 30px;
    padding: 15px;
    font-size: 14px;
    border: 1px solid;
    position: relative;
}
.products-item__btn:after {
    content: '>';
    display: inline-block;
    vertical-align: middle;
    margin-left: 0;
    margin-right: 0;
    color: #999;
    font-family: monospace;
    font-weight: bold;
    margin-top: 0px;
    position: absolute;
    right: 20px;
}


/*--------------------------------------------------------------
 # Distributors Inquiries page
--------------------------------------------------------------*/

.page-inquiries .main__title{
    font-family: "Hiragino Kaku Gothic ProN", "Yu Gothic", YuGothic;
    font-family: "HY ZhongSongTi", serif;
}
.page-inquiries .section{
    background-color: #fef4f3;
}
.inner--inquiries{
    padding: 40px 20px;
}
.inquiries-box__contents{
    font-size: 16px;
}
.inquiries-box__contents a{
    text-decoration: underline;
    color: #d8bb8d;
}
.inquiries-box__contents a:hover,
.inquiries-box__contents a:active,
.inquiries-box__contents a:focus{
    font-weight: bold;
    color: inherit;
    text-decoration: inherit;
}

/* ADDITIONAL STYLES */
.nav{
    background-color: #fff;
}
.nav__brand{position: relative;}
.nav__brand .lang{
    position: absolute;
    right: 5%;
    top: -25px;
    background-color: #eef1f2;
    padding: 0px 15px;
    overflow: hidden;
    text-align: left;
    width: 88px;
    height: 32px;
    -webkit-transition: width 0.3s;
    transition: width 0.3s
}
.nav__brand .lang.showLang{
    width: 230px;
}
.nav__brand .lang a{
    font-size: 12px;
    background: #eef1f2;
    display: inline-block;
    font-weight: bolder;
    text-decoration: none;
    font-family: "Hiragino Kaku Gothic ProN", "Yu Gothic", YuGothic;
}
.lang_sp a,
.lang_sp ul li a{
    font-family: "Hiragino Kaku Gothic ProN", "Yu Gothic", YuGothic;
}
.nav__brand .lang ul{
    margin: 0;
    padding: 0;
    list-style-type: none;
    float: right;
}
.nav__brand .lang ul li{
    float: left;
    display: inline;
}
.nav__brand .lang ul li a{
    padding: 0 10px;
    border-right: 1px solid #ccc;
    display: inline;
    font-family: "Hiragino Kaku Gothic ProN", "Yu Gothic", YuGothic;
}
.fixed-navigation{
    display: none;
    padding: 0;
    list-style-type: none;
    font-family: "Hiragino Kaku Gothic ProN", "Yu Gothic", YuGothic;
    font-size: 14px;
    margin: 19px 0;
    padding-top: 20px;
}
.fixed-navigation li.nav__item{
    display: inline-block;
    border-left: 1px solid #ccc;
}
.fixed-navigation li.nav__item:last-child{
    border-right: 1px solid #ccc;
}
.fixed-navigation li.nav__item a{
    display: inline-block;
    padding: 0px 20px;
}

.fixed-navigation li.nav__item .sub__items{
    top: 94px;
}


nav.nav.fixed-style{
    position: fixed;
    width: 100%;
    z-index: 99999;
    box-shadow: 1px 1px 1px 0px #ccc;
    padding-top: 0;
    /* -webkit-transition: all 1s ease;
    transition: all 1s ease; */
}
.fadeInDown .sub__items,
.sub__items{
    top: 160px;
}
.slideInDown .sub__items{
    top: 135px;
}
.sub__items{
    height: 0;
    position: fixed;
    width: 100%;
    background-color: #333333;
    overflow: hidden;
    -webkit-transition: height 1s;
    transition: height 1s;
    left: 0;
    /* top: 135px; */
}
.sub__items.sub__active{
    height: 114px;
}
.inner__product__items{
    padding: 12px 0;
}
.inner__product__items ul{
    margin: 0;
    padding: 0;
    list-style-type: none;
    font-family: "Hiragino Kaku Gothic ProN", "Yu Gothic", YuGothic;
    font-size: 12px;
    position: relative;
    left: -65px;
}
.inner__product__items ul li{
    display: inline-block;
    margin: 0 20px;
}
.inner__product__items ul li a,
.inner__product__items ul li a span{
    display: block !important;
    color: #fff;
    text-align: center;
    padding: 0 !important;
}
.product___{
    text-align: right;
}
.product___ .inner__product__items ul{
    left: -90px;
}

.lang_sp{display: none;}
.lang-active{display: block;}
.lang_sp ul{
    display: inline-block;
    margin: 10px 0 0;
    padding: 0;
    list-style-type: none;
}
.lang_sp ul li{
    border-right: 1px solid #ccc;
    font-size: 14px;
    display: inline-block;
}
.lang_sp ul li a{
    padding: 0 15px 0 10px;
    display: inline-block;
}