*{box-sizing:border-box}
html{font-size:14px}
body{
    margin:0;
    background-color: white;
    word-wrap: break-word;
    font-family:helvetica,arial,sans-serif;
    -webkit-font-smoothing: antialiased !important;
    -webkit-text-size-adjust:none;
    margin-top:56px;
    color:#212121;
}
@media all and (min-width: 900px) {
    html {font-size: 18px;}
    .orderButton{max-width:324px;margin:0 auto}

    .freeDownloadSection .storeButtons img, .mainDownloadSection .storeButtons img {
        width: 45%;
    }

}
.content{overflow-x:hidden;position:relative;min-height:100%;padding-bottom:260px}
a{color:#212121;text-decoration:none}
.topBanner {
    position: relative;
    background: #e9e3d5 url(../img/topbg.png);
    background-size: contain;
}
.topBanner img {
    width: 100%;
    display: block;
    margin: 0 auto;
}
.header{display:block;position:fixed;top:0;left:0;right:0;width:100%;height:56px;background-color:#fafafa;z-index:100}
.header_title{position:absolute;top:50%;transform:translate(0,-50%);left:16px;font-size:1em;color:rgba(0,0,0,.54);display:inline-block}
.header_content{position:relative;height:100%}
.header_content img{vertical-align:middle}
@media all and (min-width: 900px) {
    .header_title{left:24px}
    .header_content{max-width:900px;margin:0 auto}
    .header .storeButtons{display:none}
}
.header_title img{height:32px}
.header .storeButtons img{height:32px}
.header .storeButtons{position:absolute;top:50%;transform:translate(0,-50%);right:16px}

.nengajoSection > .title {
    background-color: #000000;
    color: white;
    font-size: 1.2em;
    line-height: 2em;
    height: 2em;
    text-align: center;
}

.nengajoSection {
    padding-bottom: 16px;
}

.shippingEstimateSection {
    background: white url('../img/bg_5.png');
    background-size: auto 100%;
    padding: 32px;
    font-weight: bold;
}
.shippingEstimateSection .shippingWrapper {
    position: relative;
    max-width: 320px;
    margin: auto;
}
.shippingEstimateSection #sceneKunDelivery {
    position: absolute;
    top: 0;
    right: 0;
    height: 90%;
}
.shippingEstimateSection .message1 {
    font-size: 14px;
    color: #47b9ae;
    margin-bottom: -6px;
}
.shippingEstimateSection .message2 {
    font-size: 20px;
    color: #47b9ae;
}
.shippingEstimateSection .shippingDateHeader {
    font-size: 9px;
}
.shippingEstimateSection .shippingDate {
    color: #f45845;
    font-size: 14px;
}

.nengajoSamplesSection .samples {
    font-size: 0;
    overflow-x: scroll;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    margin: 16px 0;
    white-space: nowrap;
}

.button {
    margin: 0 16px;
}

.orderButton {
    padding: 16px;
    text-align: center;
    font-size: 1em;
    font-weight: bold;
    border: 2px solid ;
    border-radius: 6px;
    max-width: 460px;
    margin: 0 auto;
}
.nengajoSamplesSection {
    padding: 32px 0 16px;
    margin-bottom: 2em;
    /*
    border-top: 12px solid rgb(237,220,183);
    background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="400" height="400" fill="rgb(237,220,183)" ><path d="M0 0 L200 200 L400 0 Z"/></svg>');
    background-repeat: repeat-x;
    background-position: top;
    background-size: 20px;
    */
}

.nengajoSamplesSection .orderButton {
    background-color: #FA6400;
    color: white;
    border: none;
    margin-top: 32px;
}

.nengajoSamplesSection .samples img {
    width: 100px;
    box-shadow: 0 0 2px rgba(0,0,0,.2);
    margin-bottom: 10px;
    margin-right: 10px;
}
.nengajoSamplesSection .samples img.first {
    margin-left: 10px;
}
.nengajoSamplesSection .title {
    font-size: 2.0em;
    font-weight: bold;
    margin-bottom: 1em;
    color: #000000;
    text-align: center;
}
.nengajoSamplesSection .title img {
    height: 1em;
    margin: 0 0.4em;
}

.nengajoSamplesSection hr {
    margin: 0;
}

.nengajoSamplesSection hr.top {
    border-top: 24px solid #FFA264;
    border-bottom: 16px solid #FFA264;
    padding: 2px 0;
    margin-bottom: 32px;
}

.nengajoSamplesSection hr.bottom {
    border-top: 16px solid #FFA264;
    border-bottom: 24px solid #FFA264;
    padding: 2px 0;
    margin-top: 32px;
}

.freeDownloadSection {
    padding: 2em;
}
.freeDownloadSection .title {
    font-size: 1.2em;
    font-weight: bold;
    text-align: center;
}
.freeDownloadSection .storeButtons, .mainDownloadSection .storeButtons {
    margin: 0 auto;
    padding: 1em;
    text-align: center;
    max-width: 480px;
}
.freeDownloadSection .storeButtons img, .mainDownloadSection .storeButtons img {
    max-width: 80%;
    margin: 1%;
}
.awards {
    text-align: center;
    padding: 16px;
}
.awards img {
    width: 100%;
    max-width: 600px;
}
.newsSection {
    padding: 16px;
}
.newsSection a {
    text-decoration: underline;
}
.newsSection .news_title {
    color: #866D3A;
    text-align:center;
    font-size: 1em;
}
.newsSection .news_title:before {
    content: '';
    width: 28px;
    height: 15px;
    background-image: url('../img/icon_news.png');
    background-size: contain;
    background-repeat: no-repeat;
    display: inline-block;
    vertical-align: baseline;
}
.newsSection .news_items {
    padding:8px 0 8px;
    width:100%;
    max-width:750px;
    margin:0 auto;
    line-height:1.5;
    font-size: 0.8em;
}
.newsSection .date {
    color:#f06292;
    margin-right:1em;
    line-height: 200%;
}
.newsSection .news .body {
    padding: 8px 0;
    font-size: 0.8em;
}


.aiNengaBanner {
    padding: 16px;
    margin: 16px auto;
    max-width: 900px;
    font-weight: bold;
}
.aiNengaBanner .content {
    padding: 16px 16px 4em;
    color: white;
    background-image: url('../img/ai_bg.jpg');
    background-size: auto 100%;
    background-position: top;
    text-align: center;
    position: relative;
}
.aiNengaBanner .mainMessage {
    font-size: 1.7em;
    font-weight: bold;
    margin: 1.5em 0 0.5em;
}
.aiNengaBanner .message1 {
    position: absolute;
    top: 16px;
    left: 16px;
}
.aiNengaBanner .message2 {
    font-size: 1em;
    margin-bottom: 1em;
}
.aiNengaBanner .message2 span {
    display: inline-block;
}
.aiNengaBanner .message1 {
    font-size: 0.8em;
}
.aiNengaBanner .body {
    max-width: 700px;
    display: inline-block;
    margin: 0 auto;
    text-align: left;
    font-size: 0.9em;
}
.aiNengaBanner .scenekun {
    font-size: 0;
    position: absolute;
    bottom: 0;
    left: 0;
}
.aiNengaBanner .scenekun img {
    height: 20px;
    vertical-align: bottom;
}
.aiNengaBanner .scenekun .lines {
    font-size: 0.6rem;
    display: inline-block;
    position: relative;
    top: -6px;
}

.nengajoPointsSection {
}

.nengajoPointsSection .title {
    font-size: 2.0em;
    color: #000000;
    font-weight: bold;
    line-height: 1.5em;
    background-color: transparent;
    height: auto;
}

.nengajoPointsSection .point {
    padding: 2em 1em 1em;
    width:100%;
}

.nengajoPointsSection .point.bg {
    background: #FFFAE4;
}

.nengajoPointsSection .bg{
    background: #FFFAE4;
}

.nengajoPointsSection .points {
    width: 100%;
    margin: 0 auto;
    text-align: center;
}

.nengajoPointsSection .pointOrdinal {
    font-size: 1em;
    text-align: center;
    display: inline-block;
    color: #FA6400;
    margin-top: 16px;
}
.nengajoPointsSection .pointOrdinal .number {
    display: block;
    font-size: 2.2em;
    padding: 0.1em 1.5em;
}
.nengajoPointsSection .pointTitle {
    font-size: 1.8em;
    font-weight: bold;
    text-align: center;
    line-height: 1.5em;
    margin: 16px 0px 16px 0px;
}
.nengajoPointsSection .body {
    margin: 1em auto;
    font-size: 1em;
    max-width: 800px;
    text-align: left;
}
.nengajoPointsSection .image {
    text-align: center;
    width: 100%;
    margin: 0 auto;
    max-width: 800px;
}
.image img {
    width: 100%;
}
.nengajoPointsSection .body ul {
    padding-left: 16px;
    list-style-type: '●';
}
.nengajoPointsSection .body ul ul {
    list-style-type: none;
}
.nengajoPointsSection .body .refund {
    color: #cf2a1a;
}
.nengajoPointsSection .body a {
    color: #00b251;
    font-weight: bold;
    text-decoration: underline;
}

.nengajoDetailsSection {
    border-bottom: 1px solid #A37B27;
}

.nengajoDetailsSection .title {
    padding: 8px 0;
    text-align: center;
    background-color: #282828;
    font-size: 1.5em;
    font-weight: bold;
    color: #fff;
}

.nengajoDetailsSection .aboutHeader {
    padding: 1.5em;
    font-size: 1em;
    font-weight: bold;
    border-top: 1px solid #A37B27;
}
.nengajoDetailsSection .aboutHeader, .nengajoDetailsSection .aboutContent {
    margin: 0 auto;
    width: 100%;
    max-width: 900px;
}
.aboutPrice {
    border-top: none !important;
}
.aboutPrice .priceTable {
    margin-top: 16px;
    text-align: center;
    border-spacing: 16px 0;
}
.aboutPrice .priceTable_header {
    font-size: 0.8em;
    color: #866D3A;
}
.aboutPrice .priceTable_row {
    display: table;
    margin: 0;
    width: 100%;
}
.aboutPrice .priceTable_row .cell {
    display: table-cell;
    vertical-align: middle;
    width: 33.3%;
    border: 1px solid #866D3A;
}
.aboutPrice .priceTable_contents .cell {
    height: 48px;
    font-size: 0.8em;
    border-top: none;
}
.aboutPrice .priceTable_contents .cell .price {
    font-size: 1.7em;
    font-weight: bold;
}
.aboutPrice .priceTable_header .cell {
    padding: 4px;
    font-size: 1.2em;
}
.aboutPrice p.priceTable_row .cell.basePrice {
    color: #cf2a1a;
}
.aboutPrice .priceTable_row.solo .cell {
    border-top: 1px solid #866D3A;
}
.aboutPrice .priceTable .premiumCell {
    background: #F4EFE4;
}
.aboutPrice .priceTable .cell.cancel {
    color: rgba(0,0,0,.54);
    text-decoration: line-through;
}
.aboutPrice .addBonus {
    margin-top: 16px;
    text-align: center;
}
.aboutPrice .addBonus .plus {
    display: inline-block;
    line-height: 2em;
    width: 2em;
    border-radius: 1em;
    background: #866D3A;
    color: white;
    margin-bottom: 8px;
}
.aboutPrice .addBonus .message {
    color: #CF2A1A;
    font-weight: bold;
    font-size: 1.2em;
}
.aboutContent_description {
    margin-top: 16px;
}
.aboutContent ul {
    padding-left: 1.2em;
    list-style-type: '◆ ';
}
.aboutContent ul.noStyle {
    padding-left: 0;
    list-style-type: none;
}
.aboutContent li.noStyle {
    padding-left: 0;
    list-style-type: none;
}
.aboutContent ul ul {
    list-style-type: none;
    padding-left: 1em;
}
.aboutContent .lineThrough {
    text-decoration: line-through;
}
.aboutContent .premium {
    color: #f45845;
}
.aboutContent div.premium {
    margin-top: 24px;
    padding: 8px 12px;
    background-color: #EDDCB7;
}
.aboutContent .topic {
    font-weight: bold;
}
.aboutContent .details {
    font-size: 0.8em;
}
.nengajoDetailsSection .aboutHeader .indicator {
    float: right;
    position: relative;
    color: #866D3A;
}
.nengajoDetailsSection .aboutContent {
    padding: 0 16px;
    overflow: hidden;
}
.nengajoTrialDetailsSection {
    background-color: #FFEFE7;
    padding-top: 32px;
}
.nengajoTrialDetailsSection .image {
    margin: 16px;
}
.nengajoTrialDetailsSection .image img {
    max-width: 460px;
    margin: 0 auto;
    display: block;
}
.nengajoTrialDetailsSection .image.card img {
    max-width: 320px;
}
.nengajoTrialDetailsSection .body {
    margin: 16px auto;
    padding: 0 16px;
    font-size: 1em;
    max-width: 800px;
}
.nengajoTrialDetailsSection .body.details {
    font-size: 0.8em;
}
.nengajoTrialDetailsSection .orderButton {
    background-color: #fff;
    color: #000000;
    border-color: #000000;
    /*background: #E02020 url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="400" height="400" fill="rgb(224,32,32)" ><rect x="200" width="200" height="200" /><rect y="200" width="200" height="200" /></svg>');*/
    background-size: auto 16px;
}
.nengajoTrialDetailsSection .text.closed {
    color: rgba(0,0,0,.54);
    text-align: center;
}
.feeSimulatorSection {
    margin-top: 32px;
}
.feeSimulatorSection .title {
    padding: 8px 0;
    text-align: center;
    background-color: #282828;
    font-size: 1.5em;
    font-weight: bold;
    color: #fff;
    height: auto;
}
.feeSimulatorSection form {
    margin: 16px;
    text-align: center;
}
.feeSimulatorSection form label {
    font-size: 1.2em;
    font-weight: bold;
    padding-right: 1em;
}
.feeSimulatorSection form select {
    margin-left: 8px;
    padding: 8px 32px;
    border: 2px solid #866D3A;
    border-radius: 6px;
    text-align: center;
    font-size: 1.2em;
    font-weight: bold;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: url('data:image/svg+xml,<svg fill="rgb(134,109,58)" height="24" viewBox="0 0 24 24" width="24" xmlns="http://www.w3.org/2000/svg"><path d="M7.41 7.84L12 12.42l4.59-4.58L18 9.25l-6 6-6-6z"/><path d="M0-.75h24v24H0z" fill="none"/></svg>') no-repeat right center;
}
.feeSimulatorSection form select::-ms-expand {
    display: none; /* IE 10, 11 workaround */
}
#simTable {
    margin: 16px auto;
    padding: 0 16px;
    border-collapse: collapse;
    text-align: center;
    width: 100%;
    max-width: 700px;
}
#simTable td, #simTable th {
    border: 1px solid #866D3A;
    padding: 16px;
}
#simTable th {
    background-color: #FFF9EC;
    width: 33%;
}
#simTable .sub {
    display: block;
    font-size: 0.8em;
}
#simTable tr.total {
    color: #cf2a1a;
    font-weight: bold;
}
#simTable tr.coupon {
    font-weight: bold;
}
#simTable tr.coupon .sub {
    font-weight: normal;
}
.feeSimulatorSection .orderButton {
    background-color: white;
    color: #00b251;
}

.couponSection .body {
    margin: 16px;
    font-size: 1em;
}
@media all and (min-width: 900px) {
    .couponSection .body {
        margin: 16px auto;
        max-width: 700px;
    }
}
.couponSection .body .discount {
    color: #cf2a1a;
}
.couponSection .coupon {
    margin: 1em 0 1em 0;
    text-align: center;
}
.couponSection .coupon img {
    vertical-align: middle;
    margin: 0 8px;
    height: 42px;
}
.coupon .code {
    font-size: 1.5em;
    font-weight: bold;
    color: #cf2a1a;
    border: 2px solid #cf2a1a;
    display: inline-block;
    padding: 0.5em;
    margin: 1em;
    width: 240px;
}

.premiumSection {
    background-color: #FFEFE7;
    padding: 32px 16px;
    position: relative;
}
.premiumSection .title, .premiumSection .image {
    color: #CF2A1A;
    text-align: center;
    max-width: 460px;
    margin: 0 auto;
    font-size: 2.0em;
}
.premiumSection .title img, .premiumSection .image img {
    max-width: 100%;
}
.premiumSection .body {
    margin: 16px auto;
    max-width: 800px;
}
.premiumSection .body.details {
    font-size: 0.8em;
}
.premiumSection .colsWhenBig {
    margin: 16px 0;
}

.mainDownloadSection {
    background: white;
    padding: 16px;
}
.mainDownloadSection .title {
    text-align: center;
    font-size: 1.2em;
}
.mainDownloadSection .title.download {
    font-weight: bold;
}
.mainDownloadSection .heroImage {
    margin: 16px;
}
.mainDownloadSection .heroImage img {
    width: 100%;
    max-width: 460px;
    display: block;
    margin: 0 auto;
}

.returnToTop {
    margin-top: 32px;
    padding: 16px;
    text-align: right;
}
.returnToTop img {
    width: 4em;
}

.android .invisible-for-android,
.ios .invisible-for-ios,
.desktop .invisible-for-desktop,
.unisolated .isolated-content,
.isolated .unisolated-content {
    display: none !important;
}


.pointTitle span {
    display: inline-block;
}

.nengajoSamplesSection .title span {
    display: inline-block;
}

div {
    line-height: 170%;
}

.nengaclose {
    background: white url('../img/bg_5.png');
    background-size: auto 100%;
    padding: 10px;
}

.nengaclose p{
    text-align: center;
    margin: 16px auto;
    max-width: 600px;
    color: #cf2a1a;
    font-family: serif;
    border: 1px solid #cf2a1a
}

.pointsub {
	font-family: serif;
	font-size: 90%;
	width: 80%;
	margin: 16px auto;
	padding: 16px;
	background: #f0f0f0;;
}
/*
.feeSimulatorSection {
    display: none;
}*/

.addBonus {
    margin-top: 16px;
    text-align: center;

.plus {
    display: inline-block;
    line-height: 2;
    width: 2em;
    border-radius: 1em;
    background: #866D3A;
    color: white;
    margin-bottom: 8px;
}

.message {
    color: #CF2A1A;
    font-weight: bold;
    font-size: 2rem;
}