@charset "UTF-8";
html {
  font-size: 10px; }

/**
 * rem font size
 */
/**
 * clearfix
 */
/**
 * breakpoint
 */
html {
  font-size: 10px; }

h1,
h2,
h3,
h4,
h5,
p,
address {
  margin: 0; }

h1,
h2,
h3,
h4,
h5 {
  line-height: 1; }

ul,
ol {
  margin: 0;
  padding: 0;
  list-style: none; }

img {
  max-width: 100%; }

aside #userInfoAside {
  margin-top: 6px; }
  aside #userInfoAside:before, aside #userInfoAside:after {
    content: "";
    display: table; }
  aside #userInfoAside:after {
    clear: both; }
  aside #userInfoAside {
    *zoom: 1; }
  aside #userInfoAside li {
    font-size: 14px;
    font-size: 1.4rem;
    margin-bottom: 20px; }
    aside #userInfoAside li a {
      color: #fff; }
      aside #userInfoAside li a i {
        margin-right: 6px; }

@media only screen and (min-width: 992px) {
  aside .snsAside {
    margin: 0; }
    aside .snsAside:before, aside .snsAside:after {
      content: "";
      display: table; }
    aside .snsAside:after {
      clear: both; }
    aside .snsAside {
      *zoom: 1; }
    aside .snsAside li {
      float: left;
      margin: 0;
      margin-right: 30px; }
      aside .snsAside li:last-child {
        margin-right: 0; }
      aside .snsAside li a {
        display: inline-block;
        width: 50px;
        height: 50px; }
        aside .snsAside li a:hover {
          opacity: .9; } }
    @media only screen and (min-width: 992px) and (min-width: 1200px) {
      aside .snsAside li {
        margin-right: 7px; } }

@media only screen and (min-width: 992px) {
  aside .banner a:hover {
    opacity: .8; } }

aside .sealAside {
  margin-top: 20px; }
  @media only screen and (min-width: 992px) {
    aside .sealAside li {
      margin-top: 10px; }
      aside .sealAside li a img {
        max-width: 100%; } }

.pageIndex2 aside {
  margin-top: -20px; }
  @media only screen and (max-width: 991px) {
    .pageIndex2 aside {
      display: none; } }

.bannerList {
  margin-top: 40px; }
  .bannerList li {
    margin-bottom: 20px; }
    .bannerList li a {
      display: block;
      position: relative; }
      .bannerList li a:hover {
        opacity: .8; }
      .bannerList li a img {
        width: 100%;
        height: auto; }
      .bannerList li a p {
        background: rgba(0, 0, 0, 0.4);
        color: #fff;
        text-align: center;
        padding: 10px 0;
        font-size: 12px;
        font-size: 1.2rem;
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%; }
        .bannerList li a p strong {
          font-size: 14px;
          font-size: 1.4rem;
          margin-right: 4px; }
        @media only screen and (min-width: 768px) {
          .bannerList li a p {
            font-size: 18px;
            font-size: 1.8rem; }
            .bannerList li a p strong {
              font-size: 20px;
              font-size: 2rem; } }
        @media only screen and (min-width: 992px) {
          .bannerList li a p {
            font-size: 20px;
            font-size: 2rem; }
            .bannerList li a p strong {
              font-size: 26px;
              font-size: 2.6rem; } }
    .bannerList li .description {
      font-size: 16px;
      font-size: 1.6rem;
      margin-top: 10px;
      height: 66px;
      padding: 0 10px; }
      @media only screen and (min-width: 768px) {
        .bannerList li .description {
          margin-top: 20px; } }
      @media only screen and (min-width: 992px) {
        .bannerList li .description {
          margin-top: 30px;
          font-size: 20px;
          font-size: 2rem; } }
  @media only screen and (min-width: 992px) {
    .bannerList--banner li {
      margin-bottom: 60px; }
      .bannerList--banner li:last-child {
        margin-bottom: 0; } }

html {
  height: 100%; }

body {
  color: #000;
  -webkit-text-size-adjust: nogulpne;
  padding: 0;
  margin: 0;
  min-height: 100%;
  width: 100%;
  background-color: #fff;
  position: relative;
  font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "ＭＳ Ｐゴシック", sans-serif;
  font-size: 14px;
  font-size: 1.4rem; }

ul,
ol {
  list-style: none;
  padding: 0; }

a:link, a:active, a:visited, a:hover, a:focus {
  color: #000; }

a:hover {
  cursor: pointer; }

* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

.btn.btn-success {
  color: #fff !important; }
  .btn.btn-success:hover {
    background-color: #1584e9; }

.btn.btn-warning {
  color: #fff !important; }
  .btn.btn-warning:hover {
    background-color: #fa7230; }

.wrapper {
  padding-left: 15px;
  padding-right: 15px; }

/*-- 多言語化に伴う調整 --*/
body.body-en {
  font-family: 'Noto Sans JP', 'Noto Sans', sans-serif; }
  body.body-en .paragraph {
    word-break: unset; }
  body.body-en h2.point {
    line-height: 1.4;
    padding-top: 10px;
    padding-bottom: 20px;
    height: auto; }
    @media only screen and (min-width: 992px) {
      body.body-en h2.point {
        padding-top: 15px;
        line-height: 1.1; } }

body.body-tw {
  font-family: "微軟正黑體", Arial, Verdana, Helvetica, sans-serif; }
  body.body-tw h2.point {
    line-height: 1.4;
    padding-top: 10px;
    padding-bottom: 10px;
    height: auto; }
    @media only screen and (min-width: 992px) {
      body.body-tw h2.point {
        padding-top: 15px;
        line-height: 1.1; } }

body.body-cn {
  font-family: 'Noto Sans SC', sans-serif; }
  body.body-cn h2.point {
    line-height: 1.4;
    padding-top: 10px;
    padding-bottom: 10px;
    height: auto; }
    @media only screen and (min-width: 992px) {
      body.body-cn h2.point {
        padding-top: 15px;
        line-height: 1.1; } }

/*-- 多言語化に伴う調整 --*/
.block {
  margin: 20px 0; }
  .block--floor {
    margin: 40px auto;
    text-align: center; }
    @media only screen and (min-width: 992px) {
      .block--floor {
        margin-bottom: 120px; } }
  .block--image-wrapper {
    text-align: center; }
    .block--image-wrapper a {
      display: inline-block; }
      .block--image-wrapper a:hover {
        opacity: .8; }
  .block--product-feature {
    background: #f7efe8;
    padding: 20px 10px;
    border-radius: 10px;
    margin: 0 auto 60px; }
    @media only screen and (min-width: 768px) {
      .block--product-feature {
        padding: 20px; } }
    .block--product-feature .heading2 {
      font-size: 18px;
      text-align: center;
      font-weight: bold; }
      .block--product-feature .heading2 + .paragraph {
        font-weight: bold;
        text-align: center;
        color: #16456c; }
        @media only screen and (min-width: 768px) {
          .block--product-feature .heading2 + .paragraph {
            font-size: 24px; } }
      @media only screen and (min-width: 768px) {
        .block--product-feature .heading2 {
          font-size: 30px; } }
    .block--product-feature .heading5 {
      font-size: 16px;
      font-weight: bold;
      text-align: center;
      margin: 30px 0; }
      @media only screen and (min-width: 768px) {
        .block--product-feature .heading5 {
          font-size: 20px; } }

.countermeasureBlock:before, .countermeasureBlock:after {
  content: "";
  display: table; }

.countermeasureBlock:after {
  clear: both; }

.countermeasureBlock {
  *zoom: 1; }

.countermeasureBlockTitle {
  margin-bottom: 20px;
  border-left: 3px solid #2b90ec;
  padding: 4px 0 4px 7px;
  font-size: 16px;
  font-size: 1.6rem; }
  .countermeasureBlockTitle + ul.list--circle {
    margin-bottom: 40px;
    border: 2px solid #2b90ec;
    border-radius: 2px;
    padding: 20px; }

.countermeasureBlockImg {
  width: 200px;
  height: auto;
  margin: 20px auto;
  border: 2px solid #ddd;
  border-radius: 2px;
  padding: 15px; }
  @media only screen and (min-width: 992px) {
    .countermeasureBlockImg {
      width: 20%;
      float: right;
      margin-left: 2%; } }

@media only screen and (min-width: 992px) {
  .countermeasureBlockText {
    width: 78%;
    float: left; } }

.conversation {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 32px; }
  @media only screen and (min-width: 768px) {
    .conversation {
      margin-bottom: 48px; } }
  .conversation span.underline {
    background-color: #ff0; }
  .conversation__img {
    width: 50px;
    margin: 0;
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1; }
    @media only screen and (min-width: 992px) {
      .conversation__img {
        width: 100px; }
        .conversation__img img {
          width: 100px;
          height: 100px; } }
    .conversation__img__name {
      font-size: 12px;
      font-size: 1.2rem;
      margin-top: 6px;
      text-align: center; }
  .conversation__text {
    -ms-flex-item-align: center;
    align-self: center;
    position: relative;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    margin-left: 20px;
    padding: 8px;
    background: #efefef;
    border-radius: 6px; }
    @media only screen and (min-width: 768px) {
      .conversation__text {
        -webkit-box-flex: inherit;
        -ms-flex: inherit;
        flex: inherit;
        max-width: 80%; } }
    .conversation__text .paragraph {
      margin: 0; }
    .conversation__text::before, .conversation__text::after {
      position: absolute;
      content: '';
      border: 10px solid transparent;
      top: 12px;
      left: -20px; }
    .conversation__text::after {
      border-right: 10px solid #efefef; }
  .conversation--right {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end; }
    .conversation--right .conversation__img {
      -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
      order: 2; }
    .conversation--right .conversation__text {
      -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
      order: 1;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -ms-flex-direction: row;
      flex-direction: row;
      background: #cfe6fb;
      margin-left: 0;
      margin-right: 20px; }
      .conversation--right .conversation__text::before, .conversation--right .conversation__text::after {
        position: absolute;
        content: '';
        border: 10px solid transparent;
        top: 12px;
        right: -20px;
        left: auto; }
      .conversation--right .conversation__text::after {
        border-left: 10px solid #cfe6fb; }

.compareRresult {
  text-align: center;
  border: 2px solid #AA1926;
  padding: 10px; }

.pointDiscount,
.differencePrice {
  font-size: 24px;
  font-weight: bold;
  color: #AA1926; }

.pointDiscountText {
  color: #AA1926;
  font-weight: bold; }

.dlListBlock {
  width: 100%;
  margin: 20px auto;
  display: table; }
  .dlListBlock .dlList--dlTable {
    margin: 0;
    width: 100%;
    display: table;
    text-align: center;
    border-top: 1px solid #ddd; }
    .dlListBlock .dlList--dlTable .dlListDt, .dlListBlock .dlList--dlTable .dlListDd {
      display: table-cell;
      width: 33%;
      padding: 12px; }
    .dlListBlock .dlList--dlTable .dlListDd {
      border-right: 1px solid #ddd; }
      .dlListBlock .dlList--dlTable .dlListDd:nth-of-type(1) {
        border-left: 1px solid #ddd; }
    .dlListBlock .dlList--dlTable:nth-of-type(1) {
      color: #fff;
      background-color: #2b90ec; }
      .dlListBlock .dlList--dlTable:nth-of-type(1) .dlListDt {
        border-right: 1px solid #fff; }
        .dlListBlock .dlList--dlTable:nth-of-type(1) .dlListDt:last-child {
          border-left: 1px solid #2b90ec; }
    .dlListBlock .dlList--dlTable:nth-last-of-type(1) {
      border-bottom: 1px solid #ddd; }
  .dlListBlock .dlList--policy {
    padding: 0 15px; }
    @media only screen and (min-width: 992px) {
      .dlListBlock .dlList--policy {
        padding: 0; } }
    .dlListBlock .dlList--policy .dlListDt {
      margin-bottom: 16px;
      font-size: 16px;
      font-size: 1.6rem; }
    .dlListBlock .dlList--policy .dlListDd {
      font-weight: normal;
      margin-bottom: 8px;
      line-height: 1.6; }
  .dlListBlock .dlList--dlAccordion {
    margin: 0 auto 0px;
    padding: 10px 0; }
    .dlListBlock .dlList--dlAccordion .dlListDt--question {
      position: relative;
      padding: 8px 50px 8px 15px;
      color: #333;
      border-bottom: 1px solid #ddd; }
      @media only screen and (min-width: 992px) {
        .dlListBlock .dlList--dlAccordion .dlListDt--question {
          font-size: 14px;
          font-size: 1.4rem;
          padding: 16px 70px 16px 0;
          background-size: 24px 24px; } }
      @media only screen and (min-width: 992px) {
        .dlListBlock .dlList--dlAccordion .dlListDt--question:hover {
          cursor: pointer;
          color: #5bc0de;
          -webkit-transition: .4s;
          transition: .4s; } }
      .dlListBlock .dlList--dlAccordion .dlListDt--question:after {
        content: url(/img/ic_arrow_up.png);
        position: absolute;
        top: 30%;
        right: 1%;
        display: block;
        -webkit-transform: rotate(0);
        transform: rotate(0);
        -webkit-transition: all .3s ease;
        transition: all .3s ease; }
    .dlListBlock .dlList--dlAccordion .dlListDt--question.open:after {
      position: absolute;
      top: 30%;
      right: 1%;
      display: block;
      -webkit-transform: rotate(180deg);
      transform: rotate(180deg);
      -webkit-transition: all .3s ease;
      transition: all .3s ease; }
    .dlListBlock .dlList--dlAccordion .dlListDd {
      padding: 16px 10px;
      line-height: 1.5;
      display: none; }
      .dlListBlock .dlList--dlAccordion .dlListDd--answer {
        background-color: #f8f8f8;
        font-size: 14px;
        font-size: 1.4rem; }
      .dlListBlock .dlList--dlAccordion .dlListDd a {
        display: inline-block;
        margin-top: 10px;
        color: #2b90ec;
        text-decoration: underline; }
        .dlListBlock .dlList--dlAccordion .dlListDd a:hover {
          text-decoration: none; }
      .dlListBlock .dlList--dlAccordion .dlListDd img {
        display: block; }
      .dlListBlock .dlList--dlAccordion .dlListDd p.answer {
        margin-bottom: 20px; }
      .dlListBlock .dlList--dlAccordion .dlListDd .list--static {
        font-size: 14px;
        font-size: 1.4rem;
        text-indent: 0; }

.dlListBlock .subscription {
  width: 100%; }
  .dlListBlock .subscription dt, .dlListBlock .subscription dd {
    font-size: 14px;
    font-size: 1.4rem; }
  .dlListBlock .subscription dt {
    margin: 10px 0;
    background-color: #ccc;
    padding: 8px 16px; }
  .dlListBlock .subscription dd {
    line-height: 1.6; }

.dl-list--table {
  display: table;
  width: 100%;
  margin-bottom: 4px; }
  .dl-list--table .dl-list__dt,
  .dl-list--table .dl-list__dd {
    display: table-cell;
    font-weight: normal;
    width: 100%; }
  .dl-list--table .dl-list__dt {
    width: 30%; }
  .dl-list--table .dl-list__dd {
    width: 70%; }

footer {
  background-color: #ebebeb;
  padding: 30px 0 0;
  margin-top: 100px;
  position: relative; }

.list--footer > li {
  font-size: 18px;
  font-size: 1.8rem;
  margin-bottom: 10px; }
  @media only screen and (min-width: 992px) {
    .list--footer > li {
      font-size: 14px;
      font-size: 1.4rem;
      position: relative;
      display: block;
      font-weight: normal;
      vertical-align: -4px; }
      .list--footer > li:before {
        content: "";
        vertical-align: -4px;
        display: inline-block;
        width: 18px;
        height: 18px;
        margin-right: 10px;
        background: -webkit-gradient(linear, left top, left bottom, from(#3581c4), to(#0f52aa));
        background: linear-gradient(to bottom, #3581c4 0%, #0f52aa 100%);
        border-radius: 50%; }
      .list--footer > li:after {
        content: "";
        position: absolute;
        top: 5px;
        left: 7px;
        width: 0;
        height: 0;
        display: block;
        border-style: solid;
        border-width: 4px 0 4px 6px;
        border-color: transparent transparent transparent #fff; } }

.list--footer > ul {
  margin-bottom: 10px;
  margin-left: 1em; }
  @media only screen and (min-width: 992px) {
    .list--footer > ul {
      margin-top: 30px;
      margin-left: 0; } }
  .list--footer > ul > li {
    margin-bottom: 10px; }
    @media only screen and (min-width: 992px) {
      .list--footer > ul > li {
        margin-top: 15px; } }
    .list--footer > ul > li a {
      font-size: 12px;
      font-size: 1.2rem;
      display: block; }

.telInfo {
  background-color: #fff;
  border-radius: 4px;
  padding: 15px;
  color: #005caf;
  margin-top: 10px;
  margin-bottom: 20px;
  text-align: center; }
  @media only screen and (min-width: 992px) {
    .telInfo {
      margin-top: 0; } }
  .telInfo .title {
    font-size: 15px;
    font-size: 1.5rem;
    font-weight: bold; }
    @media only screen and (min-width: 992px) {
      .telInfo .title {
        font-size: 25px;
        font-size: 2.5rem; } }
  @media only screen and (min-width: 992px) {
    .telInfo .kana {
      text-align: right;
      letter-spacing: 3px; }
      .telInfo .kana span {
        margin-right: 50px; }
      .telInfo .kana span + span {
        margin-right: 74px; } }
  @media only screen and (min-width: 992px) {
    .telInfo .kana2 {
      display: inline-block; } }
  .telInfo .tel {
    color: #000;
    font-weight: bold;
    font-size: 26px;
    font-size: 2.6rem; }
    .telInfo .tel i {
      color: #005caf !important; }
    @media only screen and (min-width: 992px) {
      .telInfo .tel {
        font-size: 44px;
        font-size: 4.4rem; } }
  .telInfo .caption {
    font-size: 11px;
    font-size: 1.1rem;
    color: #000;
    text-align: center; }
    @media only screen and (min-width: 992px) {
      .telInfo .caption {
        font-size: 14px;
        font-size: 1.4rem;
        text-align: center; } }
  .telInfo--sp {
    display: block; }
    @media only screen and (min-width: 992px) {
      .telInfo--sp {
        display: none; } }
  .telInfo--pc {
    display: none; }
    @media only screen and (min-width: 992px) {
      .telInfo--pc {
        display: block; } }

.footer_inner_fl {
  text-align: center; }
  @media only screen and (min-width: 992px) {
    .footer_inner_fl {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      text-align: left; } }

.list--footer-fl {
  margin-bottom: 30px; }
  @media only screen and (min-width: 992px) {
    .list--footer-fl {
      margin-bottom: 0;
      margin-right: 110px; } }

.copyright {
  font-size: 12px;
  font-size: 1.2rem;
  color: #bfbfbf;
  background-color: #fff;
  padding: 10px 0;
  text-align: center;
  margin-top: 30px; }
  @media only screen and (min-width: 768px) {
    .copyright p {
      display: inline-block;
      margin-right: 20px; } }
  .copyright .footerBanner {
    width: 90px;
    display: inline-block; }
    @media only screen and (min-width: 768px) {
      .copyright .footerBanner {
        display: inline-block; } }

select {
  outline: 0px !important;
  background-color: #fff;
  border: 1px solid #ccc;
  border-radius: 4px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); }
  select:focus, select:active {
    outline: 0px !important;
    -webkit-box-shadow: none;
    box-shadow: none; }

.formWrapper {
  width: 100%;
  padding: 15px;
  margin-bottom: 40px; }
  @media only screen and (min-width: 992px) {
    .formWrapper {
      max-width: 770px;
      margin: 0 auto 60px; } }

.form-action-block {
  margin-top: -20px;
  margin-bottom: 30px; }

.figure {
  margin: 40px 0; }
  .figure img {
    display: block;
    margin: 0 auto; }
  .figure__caption {
    margin-top: 8px; }
  .figure--hero {
    margin: 0;
    background: url(../img/featurelp_main.jpg);
    background-size: cover; }
    @media only screen and (min-width: 768px) {
      .figure--hero {
        background-size: auto; } }
  .figure--banner {
    border: 4px solid #ddd;
    margin-bottom: 60px; }
    @media only screen and (min-width: 768px) {
      .figure--banner {
        max-width: 920px;
        margin: 20px auto 80px; }
        .figure--banner:hover {
          opacity: .8; } }
  @media only screen and (min-width: 768px) {
    .figure--multi {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      margin-bottom: 20px; } }
  .figure--multi div {
    margin-bottom: 20px; }
    @media only screen and (min-width: 768px) {
      .figure--multi div {
        width: 50%;
        padding: 10px; } }

#averageTempature {
  width: 300px;
  height: 400px;
  margin: 0 auto; }
  @media only screen and (min-width: 992px) {
    #averageTempature {
      width: 100%; } }

#allergy01 {
  width: 300px;
  height: 400px;
  margin: 40px auto 5px; }
  @media only screen and (min-width: 992px) {
    #allergy01 {
      width: 100%; } }

.caption {
  color: #999;
  text-align: right;
  font-size: 12px;
  font-size: 1.2rem; }

header {
  display: none !important; }
  @media only screen and (min-width: 768px) {
    header {
      display: block !important;
      margin-bottom: 20px; }
      header .container {
        position: relative; } }
    @media only screen and (min-width: 768px) and (min-width: 992px) {
      header .container {
        padding-left: 0;
        padding-right: 0; } }
  @media only screen and (min-width: 768px) {
      header .header-sub-info {
        margin-bottom: 15px; }
        header .header-sub-info:before, header .header-sub-info:after {
          content: "";
          display: table; }
        header .header-sub-info:after {
          clear: both; }
        header .header-sub-info {
          *zoom: 1; }
      header .list--sub-info {
        margin-top: 10px;
        float: right; }
        header .list--sub-info .list__item {
          float: left;
          margin-left: 30px; }
          header .list--sub-info .list__item a {
            display: inline-block;
            position: relative;
            vertical-align: -4px; }
            header .list--sub-info .list__item a:before {
              content: "";
              vertical-align: -4px;
              display: inline-block;
              width: 18px;
              height: 18px;
              margin-right: 10px;
              background: -webkit-gradient(linear, left top, left bottom, from(#3581c4), to(#0f52aa));
              background: linear-gradient(to bottom, #3581c4 0%, #0f52aa 100%);
              border-radius: 50%; }
            header .list--sub-info .list__item a:after {
              content: "";
              position: absolute;
              top: 7px;
              left: 7px;
              width: 0;
              height: 0;
              display: block;
              border-style: solid;
              border-width: 4px 0 4px 6px;
              border-color: transparent transparent transparent #fff; }
      header .logo--header {
        clear: both;
        width: 220px;
        height: 28px;
        display: inline-block; } }
    @media only screen and (min-width: 768px) and (min-width: 992px) {
      header .logo--header {
        margin-top: 20px; } }
    @media only screen and (min-width: 768px) and (min-width: 1200px) {
      header .logo--header {
        margin-top: 0; } }
  @media only screen and (min-width: 768px) {
        header .logo--header__caption {
          color: #666;
          letter-spacing: 4px; }
      header .header-site-title {
        font-size: 12px;
        font-size: 1.2rem;
        margin-left: 20px;
        color: #666;
        display: inline-block; }
      header .header-user-box {
        float: right; } }
    @media only screen and (min-width: 768px) and (min-width: 992px) {
      header .header-user-box {
        display: grid; } }
    @media only screen and (min-width: 768px) and (min-width: 992px) {
      header .header-user-box {
        display: inline-block; } }

.overseas-links {
  display: inline-block;
  background-color: #fff;
  text-align: center;
  font-size: 0.8rem;
  line-height: 1.2rem;
  padding: 5px;
  border: none;
  color: #777;
  margin-top: 20px; }
  @media only screen and (min-width: 768px) {
    .overseas-links {
      width: 20%;
      text-align: center;
      font-size: 12px;
      line-height: 1.7;
      padding: 5px;
      border: solid 1px #666;
      color: #666;
      margin-left: 10px;
      position: unset;
      margin-top: 0px; } }
  .overseas-links a {
    color: #2b90ec;
    padding: 0 10px; }

.heading2--interview-list {
  font-size: 24px;
  font-size: 2.4rem;
  border-bottom: 3px solid #3384C9;
  padding-bottom: 4px; }

.heading3--comment {
  position: relative;
  padding: 10px 20px; }
  .heading3--comment:before, .heading3--comment:after {
    font-size: 18px;
    font-size: 1.8rem;
    color: #999;
    width: 20px;
    height: 20px; }
  .heading3--comment:before {
    content: '\f10d';
    font-family: FontAwesome;
    display: inline-block;
    position: absolute;
    top: -20px;
    left: 0; }
  .heading3--comment:after {
    content: '\f10e';
    font-family: FontAwesome;
    display: inline-block;
    position: absolute;
    bottom: -20px;
    right: 0; }

.heading3--productName {
  font-size: 18px;
  font-size: 1.8rem;
  color: #fff;
  margin-bottom: 30px;
  background: #1376d1;
  line-height: 1.4;
  padding: 10px 18px 8px; }
  @media only screen and (min-width: 1200px) {
    .heading3--productName {
      font-size: 24px;
      font-size: 2.4rem;
      padding: 12px 20px 10px;
      text-align: center; } }

@media only screen and (min-width: 992px) {
  .interviewPic {
    width: 30%;
    float: left;
    margin-right: 2%; } }

@media only screen and (min-width: 992px) {
  .interviewText {
    width: 68%;
    float: left; }
    .interviewText .paragraph {
      margin: 0; } }

.list {
  font-size: 14px;
  font-size: 1.4rem; }
  @media only screen and (min-width: 992px) {
    .list {
      font-size: 16px;
      font-size: 1.6rem; } }
  @media only screen and (min-width: 768px) {
    .list--customer {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-flow: wrap;
      flex-flow: wrap;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      -webkit-box-align: stretch;
      -ms-flex-align: stretch;
      align-items: stretch;
      margin-top: 24px; } }
  .list--customer > .list__item {
    border: 1px solid #ddd;
    margin: 30px 0; }
    .list--customer > .list__item:first-child {
      margin-top: 0; }
    @media only screen and (min-width: 768px) {
      .list--customer > .list__item {
        width: 30%;
        margin-top: 0; } }
    .list--customer > .list__item .anchor {
      display: block;
      padding: 15px;
      height: 100%; }
      .list--customer > .list__item .anchor:hover {
        opacity: .7;
        text-decoration: none; }
      .list--customer > .list__item .anchor img {
        display: block;
        margin: 0 auto 10px; }
      .list--customer > .list__item .anchor .heading3 {
        font-size: 18px;
        font-size: 1.8rem;
        line-height: 1.4;
        font-weight: bold;
        margin-bottom: 10px; }
  .list--customer:after {
    content: "";
    display: block;
    width: 30%; }
  .list--static {
    list-style-type: disc;
    list-style-position: inside;
    padding-left: 1em;
    text-indent: -1em; }
  .list--index > .listItem {
    margin-bottom: 8px; }
    .list--index > .listItem > a {
      font-size: 16px;
      font-size: 1.6rem; }
  .list--circle {
    margin-bottom: 40px;
    border: 2px solid #2b90ec;
    border-radius: 2px;
    padding: 20px; }
    .list--circle li {
      margin-left: 1.5em;
      position: relative; }
      .list--circle li:before {
        content: '●';
        position: absolute;
        top: 0;
        left: -1.5em;
        color: #2b90ec; }
  .list--square li {
    margin-left: 1.5em;
    position: relative; }
    .list--square li:before {
      content: '■';
      display: inline-block;
      position: absolute;
      top: 0;
      left: -1.5em;
      color: #2b90ec; }
  .list--notice > .listItem {
    color: #666;
    text-indent: -1em;
    padding-left: 1em; }
    .list--notice > .listItem:before {
      content: "※"; }
  .list--post {
    padding: 0 15px; }
    @media only screen and (min-width: 992px) {
      .list--post {
        padding: 0; } }
    .list--post > .listItem {
      padding: 15px;
      background-color: #fff;
      -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.4);
      box-shadow: 0 0 2px rgba(0, 0, 0, 0.4);
      margin-bottom: 30px; }
      @media only screen and (min-width: 992px) {
        .list--post > .listItem {
          padding: 30px; } }
    .list--post .voice {
      margin-top: 15px; }
      @media only screen and (min-width: 992px) {
        .list--post .voice {
          position: relative;
          border: 1px solid #ddd;
          border-radius: 8px;
          padding: 10px; }
          .list--post .voice:before, .list--post .voice:after {
            content: "";
            position: absolute;
            top: 45px;
            right: 100%;
            border: solid transparent;
            height: 0;
            width: 0;
            pointer-events: none; }
          .list--post .voice:before {
            border-color: rgba(221, 221, 221, 0);
            border-right-color: #dddddd;
            border-width: 11px;
            margin-top: -11px; }
          .list--post .voice:after {
            border-color: rgba(255, 255, 255, 0);
            border-right-color: #ffffff;
            border-width: 10px;
            margin-top: -10px; } }
  .list--customerVoice .customerIcon {
    float: left;
    width: 60px;
    height: auto; }
    @media only screen and (min-width: 992px) {
      .list--customerVoice .customerIcon {
        float: none;
        width: 100px;
        margin-top: 12px; } }
    @media only screen and (min-width: 992px) {
      .list--customerVoice .customerIcon + div {
        margin-top: 15px; } }
    .list--customerVoice .customerIcon + div ul {
      float: left;
      margin-left: 20px; }
      @media only screen and (min-width: 992px) {
        .list--customerVoice .customerIcon + div ul {
          margin-top: 20px;
          float: none;
          margin-left: 0; } }
  .list--Interview > .listItem {
    margin-bottom: 20px;
    margin-left: 1.5em;
    position: relative; }
    .list--Interview > .listItemlast-child {
      margin-bottom: 0; }
    .list--Interview > .listItem--Question {
      color: #2b90ec;
      font-weight: bold; }
      .list--Interview > .listItem--Question:before {
        content: 'Q: ';
        display: inline-block;
        position: absolute;
        top: 0;
        left: -1.5em; }
    .list--Interview > .listItem--Answer:before {
      content: 'A: ';
      display: inline-block;
      position: absolute;
      top: 0;
      left: -1.5em;
      color: #AA1926; }
  .list--check {
    margin-top: 20px; }
    .list--check > .listItem {
      margin-left: 1.5em;
      position: relative;
      margin-bottom: 10px; }
      .list--check > .listItem:before {
        content: '';
        display: inline-block;
        position: absolute;
        width: 24px;
        height: 24px;
        top: 0;
        left: -1.5em;
        background: url("/img/iconCheckBox.png") no-repeat;
        background-size: contain; }
  .list--iconIndex:before, .list--iconIndex:after {
    content: "";
    display: table; }
  .list--iconIndex:after {
    clear: both; }
  .list--iconIndex {
    *zoom: 1; }
  .list--iconIndex > .listItem {
    float: left;
    width: 40%;
    margin: 0 auto;
    text-align: center;
    margin-right: 14%; }
    @media only screen and (min-width: 992px) {
      .list--iconIndex > .listItem {
        width: 20%;
        margin-right: 6.2%; } }
    .list--iconIndex > .listItem > a {
      display: block;
      text-align: center; }
      .list--iconIndex > .listItem > a img {
        margin: 10px;
        padding: 10px;
        border: 1px solid #ddd; }
    .list--iconIndex > .listItem:nth-child(2n) {
      margin-right: 0; }
      @media only screen and (min-width: 992px) {
        .list--iconIndex > .listItem:nth-child(2n) {
          margin-right: 6.2%; } }
    @media only screen and (min-width: 992px) {
      .list--iconIndex > .listItem:nth-child(4) {
        margin-right: 0; } }
  @media only screen and (min-width: 992px) {
    .list--privilege {
      margin-top: 20px;
      padding-left: 40px; } }
  .list--privilege > .listItem {
    position: relative;
    padding: 15px 10px;
    margin-bottom: 40px;
    border: 3px solid #2b90ec; }
    @media only screen and (min-width: 992px) {
      .list--privilege > .listItem {
        padding: 20px 0 10px;
        margin-top: 60px; } }
    .list--privilege > .listItem .circle {
      position: absolute;
      top: -25px;
      left: -15px;
      color: #fff;
      font-family: "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
      font-weight: bold;
      width: 50px;
      height: 50px;
      border-radius: 25px;
      line-height: 1;
      background-color: #2b90ec;
      font-size: 20px;
      font-size: 2rem; }
      @media only screen and (min-width: 992px) {
        .list--privilege > .listItem .circle {
          font-size: 30px;
          font-size: 3rem;
          top: -50px;
          left: -50px;
          width: 100px;
          height: 100px;
          border-radius: 50px;
          padding-top: 20px; } }
      .list--privilege > .listItem .circle span {
        display: inline-block;
        padding-top: 6px;
        font-size: 16px;
        font-size: 1.6rem; }
        @media only screen and (min-width: 992px) {
          .list--privilege > .listItem .circle span {
            font-size: 30px;
            font-size: 3rem; } }
    .list--privilege > .listItem h4 {
      font-weight: bold;
      font-family: "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif; }
      @media only screen and (min-width: 992px) {
        .list--privilege > .listItem h4 {
          font-size: 30px;
          font-size: 3rem; } }
    .list--privilege > .listItem .strong {
      font-weight: bold;
      color: #d50000;
      font-size: 16px;
      font-size: 1.6rem; }
      @media only screen and (min-width: 992px) {
        .list--privilege > .listItem .strong {
          font-size: 24px;
          font-size: 2.4rem; } }
  @media only screen and (min-width: 992px) {
    .list--present {
      padding: 0 15px; } }
  .list--present > .listItem {
    background-color: rgba(43, 144, 236, 0.1);
    padding: 4px;
    margin-top: 20px; }
    .list--present > .listItem .whiteBg {
      background-color: #fff;
      padding: 4px; }
      @media only screen and (min-width: 992px) {
        .list--present > .listItem .whiteBg {
          padding: 15px; } }
      .list--present > .listItem .whiteBg h4 {
        margin-top: 10px;
        margin-bottom: 10px;
        text-align: center;
        color: #2b90ec; }
        @media only screen and (min-width: 992px) {
          .list--present > .listItem .whiteBg h4 {
            margin-top: 0; } }
  @media only screen and (min-width: 768px) {
    .list--privilege {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      padding-left: 0; } }
  .list--privilege > .list__item {
    margin-bottom: 16px;
    text-align: center; }
    @media only screen and (min-width: 768px) {
      .list--privilege > .list__item {
        width: 50%;
        text-align: center;
        margin-bottom: 0; }
        .list--privilege > .list__item img {
          padding: 16px; } }
    .list--privilege > .list__item:last-child {
      margin-bottom: 0; }
  .listItem {
    line-height: 1.6; }

.reasonList {
  margin: 30px 0;
  text-align: center; }
  .reasonList div {
    margin-bottom: 20px; }
    @media only screen and (min-width: 992px) {
      .reasonList div {
        margin-bottom: 0; } }
    .reasonList div:last-child {
      margin-bottom: 0; }

.olist {
  margin: 30px 0; }
  .olist--flow {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between; }
    .olist--flow > .list__item {
      position: relative;
      width: calc(100% / 2 - 15px);
      margin-bottom: 20px; }
      @media only screen and (min-width: 768px) {
        .olist--flow > .list__item {
          width: calc(100% / 4 - 15px); } }
      .olist--flow > .list__item:before {
        font-size: 12px;
        position: absolute;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        top: -10px;
        left: -15px;
        width: 50px;
        height: 50px;
        content: '';
        background: #f96117;
        color: #fff;
        border-radius: 50%;
        -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.2);
        box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.2); }
        @media only screen and (min-width: 768px) {
          .olist--flow > .list__item:before {
            width: 60px;
            height: 60px; } }
      .olist--flow > .list__item:nth-child(1):before {
        content: 'STEP1'; }
      .olist--flow > .list__item:nth-child(2):before {
        content: 'STEP2'; }
      .olist--flow > .list__item:nth-child(3):before {
        content: 'STEP3'; }
      .olist--flow > .list__item:nth-child(4):before {
        content: 'STEP4'; }
    .olist--flow > .list__item-tw:nth-child(1):before {
      content: '步驟1'; }
    .olist--flow > .list__item-tw:nth-child(2):before {
      content: '步驟2'; }
    .olist--flow > .list__item-tw:nth-child(3):before {
      content: '步驟3'; }
    .olist--flow > .list__item-tw:nth-child(4):before {
      content: '步驟4'; }
    .olist--flow > .list__item-cn:nth-child(1):before {
      content: '步骤1'; }
    .olist--flow > .list__item-cn:nth-child(2):before {
      content: '步骤2'; }
    .olist--flow > .list__item-cn:nth-child(3):before {
      content: '步骤3'; }
    .olist--flow > .list__item-cn:nth-child(4):before {
      content: '步骤4'; }

.block--product-feature .olist--flow {
  max-width: 774px;
  margin: 0 auto; }

#main {
  margin-top: 30px; }
  @media only screen and (min-width: 768px) {
    #main {
      margin-top: 60px; } }

.pageIndex #main {
  margin-top: 0; }

.carousel-indicators {
  bottom: -20px; }
  .carousel-indicators li {
    border: 1px solid #3384C9; }
    .carousel-indicators li.active {
      background-color: #3384C9; }

@media only screen and (min-width: 992px) {
  .carousel-indicators {
    overflow: auto;
    white-space: nowrap;
    bottom: -100px; }
    .carousel-indicators li {
      background-color: transparent;
      border-radius: 0;
      display: inline-block;
      width: 250px;
      height: auto;
      text-indent: 0;
      border: 2px solid #efefef;
      -webkit-box-sizing: border-box;
      box-sizing: border-box; }
      .carousel-indicators li img {
        display: inline-block; }
      .carousel-indicators li.active {
        width: 250px;
        height: auto;
        border: 2px solid #3384C9; } }

@media only screen and (min-width: 992px) {
  .carousel {
    margin: 20px 0 80px; } }

@media only screen and (min-width: 992px) {
  .carousel-inner img {
    -webkit-box-shadow: 0px 0px 10px 4px rgba(0, 0, 0, 0.1);
    box-shadow: 0px 0px 10px 4px rgba(0, 0, 0, 0.1); } }

@media only screen and (min-width: 992px) {
  .carousel-control span {
    color: #fff;
    width: 40px !important;
    height: 40px !important;
    padding-top: 4px;
    background-color: #676767 !important;
    border-radius: 50%; } }

.carousel-inner > .item > a > img,
.carousel-inner > .item > img {
  margin: 10px auto; }

.carousel-control.left,
.carousel-control.right {
  background-image: none;
  background-repeat: no-repeat; }

.mainImage .spMainImage img {
  width: 100%; }

@media only screen and (min-width: 992px) {
  .mainImage .spMainImage {
    display: none; } }

@media only screen and (min-width: 992px) {
  .mainImage {
    background: url("/img/top02.jpg") no-repeat;
    height: 530px;
    background-size: contain;
    background-position: 0 15%; } }

.mainImage .mainImageInner {
  display: none;
  position: relative;
  height: 100%; }
  @media only screen and (min-width: 992px) {
    .mainImage .mainImageInner {
      display: block; } }
  .mainImage .mainImageInner:before, .mainImage .mainImageInner:after {
    content: "";
    display: table; }
  .mainImage .mainImageInner:after {
    clear: both; }
  .mainImage .mainImageInner {
    *zoom: 1; }
  .mainImage .mainImageInner .catch {
    color: #AA1926; }
    .mainImage .mainImageInner .catch span {
      background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, #ffff66));
      background: linear-gradient(transparent 60%, #ffff66 60%); }
  .mainImage .mainImageInner .campaignText {
    margin-top: 17px;
    text-align: center;
    font-size: 20px;
    font-size: 2rem;
    font-weight: bold;
    color: #AA1926; }
    @media only screen and (min-width: 992px) {
      .mainImage .mainImageInner .campaignText {
        font-size: 32px;
        font-size: 3.2rem;
        padding: 10px 15px;
        border-radius: 4px; } }
    .mainImage .mainImageInner .campaignText strong {
      padding: 6px 4px;
      font-size: 24px;
      font-size: 2.4rem;
      background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, #ffff66));
      background: linear-gradient(transparent 60%, #ffff66 60%); }
      @media only screen and (min-width: 992px) {
        .mainImage .mainImageInner .campaignText strong {
          font-size: 32px;
          font-size: 3.2rem; } }
  .mainImage .mainImageInner .mainText {
    margin: 15px 0 0;
    color: #AA1926;
    font-weight: bold;
    font-size: 21px;
    font-size: 2.1rem;
    text-align: center; }
    @media only screen and (min-width: 992px) {
      .mainImage .mainImageInner .mainText {
        margin-top: 20px;
        font-weight: bold;
        font-size: 20px;
        font-size: 2rem; }
        .mainImage .mainImageInner .mainText > span {
          font-size: 32px;
          font-size: 3.2rem;
          background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, #ffff66));
          background: linear-gradient(transparent 60%, #ffff66 60%); }
          .mainImage .mainImageInner .mainText > span span {
            font-size: 24px;
            font-size: 2.4rem; } }
  .mainImage .mainImageInner .productBox {
    background-color: rgba(206, 237, 251, 0.4);
    padding: 15px 0px; }
    @media only screen and (min-width: 992px) {
      .mainImage .mainImageInner .productBox {
        border: 4px solid #0278c3;
        width: 630px;
        position: absolute;
        top: 110px;
        left: 0; } }
    .mainImage .mainImageInner .productBox .ribbonText {
      margin: 200px auto;
      padding: 0;
      color: #ffffff;
      background-color: #b1cd52;
      line-height: 80px;
      font-size: 20px;
      width: 400px;
      text-align: center;
      position: relative; }
      .mainImage .mainImageInner .productBox .ribbonText:before, .mainImage .mainImageInner .productBox .ribbonText:after {
        content: '';
        border: 40px solid transparent;
        position: absolute;
        z-index: -1; }
      .mainImage .mainImageInner .productBox .ribbonText:before {
        background-color: #b1cd52;
        border-color: transparent;
        border-left-color: #eee;
        border-right-color: #99ac41;
        top: 50%;
        left: -80px;
        width: 40px; }
      .mainImage .mainImageInner .productBox .ribbonText:after {
        background-color: #b1cd52;
        border-color: transparent;
        border-left-color: #99ac41;
        border-right-color: #eee;
        top: 50%;
        right: -80px;
        width: 40px; }
    .mainImage .mainImageInner .productBox .m-list--static {
      list-style-position: inside; }
    @media only screen and (min-width: 992px) {
      .mainImage .mainImageInner .productBox .textBox {
        float: left;
        padding-left: 10px;
        padding-top: 15px; } }
    .mainImage .mainImageInner .productBox .textBox .productName {
      margin-top: 8px;
      margin-bottom: 8px;
      font-size: 22px;
      font-size: 2.2rem;
      font-weight: bold; }
      @media only screen and (min-width: 992px) {
        .mainImage .mainImageInner .productBox .textBox .productName {
          font-size: 22px;
          font-size: 2.2rem; } }
    .mainImage .mainImageInner .productBox .textBox .campaignPrice {
      font-weight: bold;
      color: #AA1926;
      text-align: center;
      font-size: 48px;
      font-size: 4.8rem; }
      @media only screen and (min-width: 992px) {
        .mainImage .mainImageInner .productBox .textBox .campaignPrice {
          font-size: 40px;
          font-size: 4rem; } }
      .mainImage .mainImageInner .productBox .textBox .campaignPrice span {
        font-size: 20px;
        font-size: 2rem; }
    @media only screen and (min-width: 992px) {
      .mainImage .mainImageInner .productBox .btnPurchase--green {
        clear: both;
        margin: 20px auto 15px;
        padding: 0 15px; }
        .mainImage .mainImageInner .productBox .btnPurchase--green .btnCustom {
          margin: 0; } }
    .mainImage .mainImageInner .productBox .productPicture {
      text-align: center; }
      @media only screen and (min-width: 992px) {
        .mainImage .mainImageInner .productBox .productPicture {
          float: right;
          width: 270px;
          height: 200px;
          margin: 0 auto;
          padding-top: 17px; } }
      .mainImage .mainImageInner .productBox .productPicture img {
        max-width: 300px;
        margin: 0 auto; }
        @media only screen and (min-width: 992px) {
          .mainImage .mainImageInner .productBox .productPicture img {
            width: 94%;
            height: auto; } }
      .mainImage .mainImageInner .productBox .productPicture a {
        display: block;
        margin-top: 8px;
        color: #1376d1;
        font-size: 20px;
        font-size: 2rem; }
      .mainImage .mainImageInner .productBox .productPicture .btnPurchase--green {
        margin-top: 0; }
        .mainImage .mainImageInner .productBox .productPicture .btnPurchase--green .btnCustom {
          padding: 10px 40px;
          margin: 15px 0; }

@media only screen and (min-width: 992px) {
  .mainSp {
    display: none; } }

.mainSp .productBoxSp {
  width: 100%;
  border: 2px solid #0278c3;
  padding: 15px 0; }
  .mainSp .productBoxSp h2.productTitle {
    font-weight: bold; }
  .mainSp .productBoxSp .campaign {
    color: #fff;
    background-color: #F96117;
    padding: 10px;
    line-height: 1.4;
    font-size: 17px;
    font-size: 1.7rem; }
  .mainSp .productBoxSp .productPrice {
    color: #AA1926;
    font-size: 22px;
    font-size: 2.2rem;
    font-weight: bold; }
  .mainSp .productBoxSp .moreDetail {
    color: #1376d1;
    font-size: 20px;
    font-size: 2rem; }
  .mainSp .productBoxSp .btnPurchase--green {
    margin-top: 20px; }

.mainProductBox {
  padding: 15px; }
  @media only screen and (min-width: 992px) {
    .mainProductBox {
      display: block;
      max-width: 720px;
      margin: 0 auto 80px; } }
  .mainProductBox .productBoxSp {
    width: 100%;
    border: 2px solid #0278c3;
    padding: 15px 15px 21px; }
    @media only screen and (min-width: 992px) {
      .mainProductBox .productBoxSp {
        border: 2px solid #0278c3; } }
    .mainProductBox .productBoxSp h2.productTitle {
      font-weight: bold; }
    .mainProductBox .productBoxSp .campaign {
      color: #fff;
      margin: 0 -15px;
      background-color: #F96117;
      padding: 10px;
      line-height: 1.4;
      margin-bottom: 16px;
      font-size: 17px;
      font-size: 1.7rem; }
    .mainProductBox .productBoxSp .productPrice {
      color: #AA1926;
      font-size: 22px;
      font-size: 2.2rem;
      font-weight: bold; }
      @media only screen and (min-width: 992px) {
        .mainProductBox .productBoxSp .productPrice {
          font-size: 40px;
          font-size: 4rem; } }
    @media only screen and (min-width: 992px) {
      .mainProductBox .productBoxSp .productPicture {
        width: 50%; } }
    .mainProductBox .productBoxSp .baloonText {
      margin: 0 auto; }
      @media only screen and (min-width: 992px) {
        .mainProductBox .productBoxSp .baloonText {
          width: 80%; } }
    .mainProductBox .productBoxSp .moreDetail {
      display: block;
      text-align: center;
      margin: 0 auto;
      color: #1376d1;
      font-size: 20px;
      font-size: 2rem; }
    .mainProductBox .productBoxSp .btnPurchase--green .btnCustom {
      margin: 0 auto; }

.baloonText {
  position: relative;
  line-height: 1.3;
  text-align: center;
  font-weight: bold;
  color: #F96117;
  margin: 6px 0;
  border: 1px solid #ddd;
  width: 100%;
  max-width: 600px;
  font-size: 15px;
  font-size: 1.5rem;
  padding: 10px 15px;
  border-radius: 4px; }
  @media only screen and (min-width: 992px) {
    .baloonText {
      font-size: 26px;
      font-size: 2.6rem; } }
  .baloonText:before {
    content: "";
    position: absolute;
    bottom: -8px;
    left: 50%;
    margin-left: -9px;
    width: 0px;
    height: 0px;
    border-style: solid;
    border-width: 8px 9px 0 9px;
    border-color: #fff transparent transparent transparent;
    z-index: 0; }
  .baloonText:after {
    content: "";
    position: absolute;
    bottom: -11px;
    left: 50%;
    margin-left: -10px;
    width: 0px;
    height: 0px;
    border-style: solid;
    border-width: 10px 10px 0 10px;
    border-color: #ddd transparent transparent transparent;
    z-index: -1; }

.videoWrapper {
  display: none; }
  @media only screen and (min-width: 992px) {
    .videoWrapper {
      display: block;
      position: absolute;
      width: 450px;
      top: 140px;
      right: 6%;
      display: block;
      font-weight: bold; } }
  @media only screen and (min-width: 992px) and (min-width: 992px) {
    .videoWrapper {
      top: 194px;
      right: -13%; } }
  @media only screen and (min-width: 992px) {
    .videoWrapper .video {
      position: relative;
      width: 270px;
      height: 200px;
      overflow: hidden;
      border-radius: 50%; } }
  @media only screen and (min-width: 992px) and (min-width: 992px) {
    .videoWrapper .video {
      width: 180px;
      height: 180px; } }
  @media only screen and (min-width: 992px) {
    .videoWrapper .video video {
      width: 360px; } }
  @media only screen and (min-width: 992px) {
    .videoWrapper p {
      font-size: 28px;
      font-size: 2.8rem;
      line-height: 1.4; } }
  @media only screen and (min-width: 992px) {
    .videoWrapper p span {
      font-size: 37px;
      font-size: 3.7rem; } }

#main {
  margin-top: 30px; }
  @media only screen and (min-width: 768px) {
    #main {
      margin-top: 60px; } }

.pageIndex #main {
  margin-top: 0; }

.carousel-indicators {
  bottom: -20px; }
  .carousel-indicators li {
    border: 1px solid #3384C9; }
    .carousel-indicators li.active {
      background-color: #3384C9; }

@media only screen and (min-width: 992px) {
  .carousel-indicators {
    overflow: auto;
    white-space: nowrap;
    bottom: -100px; }
    .carousel-indicators li {
      background-color: transparent;
      border-radius: 0;
      display: inline-block;
      width: 250px;
      height: auto;
      text-indent: 0;
      border: 2px solid #efefef;
      -webkit-box-sizing: border-box;
      box-sizing: border-box; }
      .carousel-indicators li img {
        display: inline-block; }
      .carousel-indicators li.active {
        width: 250px;
        height: auto;
        border: 2px solid #3384C9; } }

@media only screen and (min-width: 992px) {
  .carousel {
    margin: 20px 0 80px; } }

@media only screen and (min-width: 992px) {
  .carousel-inner img {
    -webkit-box-shadow: 0px 0px 10px 4px rgba(0, 0, 0, 0.1);
    box-shadow: 0px 0px 10px 4px rgba(0, 0, 0, 0.1); } }

@media only screen and (min-width: 992px) {
  .carousel-control span {
    color: #fff;
    width: 40px !important;
    height: 40px !important;
    padding-top: 4px;
    background-color: #676767 !important;
    border-radius: 50%; } }

.carousel-inner > .item > a > img,
.carousel-inner > .item > img {
  margin: 10px auto; }

.carousel-control.left,
.carousel-control.right {
  background-image: none;
  background-repeat: no-repeat; }

.mainImage .spMainImage img {
  width: 100%; }

@media only screen and (min-width: 992px) {
  .mainImage .spMainImage {
    display: none; } }

@media only screen and (min-width: 992px) {
  .mainImage {
    background: url("/img/top02.jpg") no-repeat;
    height: 530px;
    background-size: contain;
    background-position: 0 15%; } }

.mainImage .mainImageInner {
  display: none;
  position: relative;
  height: 100%; }
  @media only screen and (min-width: 992px) {
    .mainImage .mainImageInner {
      display: block; } }
  .mainImage .mainImageInner:before, .mainImage .mainImageInner:after {
    content: "";
    display: table; }
  .mainImage .mainImageInner:after {
    clear: both; }
  .mainImage .mainImageInner {
    *zoom: 1; }
  .mainImage .mainImageInner .catch {
    color: #AA1926; }
    .mainImage .mainImageInner .catch span {
      background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, #ffff66));
      background: linear-gradient(transparent 60%, #ffff66 60%); }
  .mainImage .mainImageInner .campaignText {
    margin-top: 17px;
    text-align: center;
    font-size: 20px;
    font-size: 2rem;
    font-weight: bold;
    color: #AA1926; }
    @media only screen and (min-width: 992px) {
      .mainImage .mainImageInner .campaignText {
        font-size: 32px;
        font-size: 3.2rem;
        padding: 10px 15px;
        border-radius: 4px; } }
    .mainImage .mainImageInner .campaignText strong {
      padding: 6px 4px;
      font-size: 24px;
      font-size: 2.4rem;
      background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, #ffff66));
      background: linear-gradient(transparent 60%, #ffff66 60%); }
      @media only screen and (min-width: 992px) {
        .mainImage .mainImageInner .campaignText strong {
          font-size: 32px;
          font-size: 3.2rem; } }
  .mainImage .mainImageInner .mainText {
    margin: 15px 0 0;
    color: #AA1926;
    font-weight: bold;
    font-size: 21px;
    font-size: 2.1rem;
    text-align: center; }
    @media only screen and (min-width: 992px) {
      .mainImage .mainImageInner .mainText {
        margin-top: 20px;
        font-weight: bold;
        font-size: 20px;
        font-size: 2rem; }
        .mainImage .mainImageInner .mainText > span {
          font-size: 32px;
          font-size: 3.2rem;
          background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, #ffff66));
          background: linear-gradient(transparent 60%, #ffff66 60%); }
          .mainImage .mainImageInner .mainText > span span {
            font-size: 24px;
            font-size: 2.4rem; } }
  .mainImage .mainImageInner .productBox {
    background-color: rgba(206, 237, 251, 0.4);
    padding: 15px 0px; }
    @media only screen and (min-width: 992px) {
      .mainImage .mainImageInner .productBox {
        border: 4px solid #0278c3;
        width: 630px;
        position: absolute;
        top: 110px;
        left: 0; } }
    .mainImage .mainImageInner .productBox .ribbonText {
      margin: 200px auto;
      padding: 0;
      color: #ffffff;
      background-color: #b1cd52;
      line-height: 80px;
      font-size: 20px;
      width: 400px;
      text-align: center;
      position: relative; }
      .mainImage .mainImageInner .productBox .ribbonText:before, .mainImage .mainImageInner .productBox .ribbonText:after {
        content: '';
        border: 40px solid transparent;
        position: absolute;
        z-index: -1; }
      .mainImage .mainImageInner .productBox .ribbonText:before {
        background-color: #b1cd52;
        border-color: transparent;
        border-left-color: #eee;
        border-right-color: #99ac41;
        top: 50%;
        left: -80px;
        width: 40px; }
      .mainImage .mainImageInner .productBox .ribbonText:after {
        background-color: #b1cd52;
        border-color: transparent;
        border-left-color: #99ac41;
        border-right-color: #eee;
        top: 50%;
        right: -80px;
        width: 40px; }
    .mainImage .mainImageInner .productBox .m-list--static {
      list-style-position: inside; }
    @media only screen and (min-width: 992px) {
      .mainImage .mainImageInner .productBox .textBox {
        float: left;
        padding-left: 10px;
        padding-top: 15px; } }
    .mainImage .mainImageInner .productBox .textBox .productName {
      margin-top: 8px;
      margin-bottom: 8px;
      font-size: 22px;
      font-size: 2.2rem;
      font-weight: bold; }
      @media only screen and (min-width: 992px) {
        .mainImage .mainImageInner .productBox .textBox .productName {
          font-size: 22px;
          font-size: 2.2rem; } }
    .mainImage .mainImageInner .productBox .textBox .campaignPrice {
      font-weight: bold;
      color: #AA1926;
      text-align: center;
      font-size: 48px;
      font-size: 4.8rem; }
      @media only screen and (min-width: 992px) {
        .mainImage .mainImageInner .productBox .textBox .campaignPrice {
          font-size: 40px;
          font-size: 4rem; } }
      .mainImage .mainImageInner .productBox .textBox .campaignPrice span {
        font-size: 20px;
        font-size: 2rem; }
    @media only screen and (min-width: 992px) {
      .mainImage .mainImageInner .productBox .btnPurchase--green {
        clear: both;
        margin: 20px auto 15px;
        padding: 0 15px; }
        .mainImage .mainImageInner .productBox .btnPurchase--green .btnCustom {
          margin: 0; } }
    .mainImage .mainImageInner .productBox .productPicture {
      text-align: center; }
      @media only screen and (min-width: 992px) {
        .mainImage .mainImageInner .productBox .productPicture {
          float: right;
          width: 270px;
          height: 200px;
          margin: 0 auto;
          padding-top: 17px; } }
      .mainImage .mainImageInner .productBox .productPicture img {
        max-width: 300px;
        margin: 0 auto; }
        @media only screen and (min-width: 992px) {
          .mainImage .mainImageInner .productBox .productPicture img {
            width: 94%;
            height: auto; } }
      .mainImage .mainImageInner .productBox .productPicture a {
        display: block;
        margin-top: 8px;
        color: #1376d1;
        font-size: 20px;
        font-size: 2rem; }
      .mainImage .mainImageInner .productBox .productPicture .btnPurchase--green {
        margin-top: 0; }
        .mainImage .mainImageInner .productBox .productPicture .btnPurchase--green .btnCustom {
          padding: 10px 40px;
          margin: 15px 0; }

@media only screen and (min-width: 992px) {
  .mainSp {
    display: none; } }

.mainSp .productBoxSp {
  width: 100%;
  border: 2px solid #0278c3;
  padding: 15px 0; }
  .mainSp .productBoxSp h2.productTitle {
    font-weight: bold; }
  .mainSp .productBoxSp .campaign {
    color: #fff;
    background-color: #F96117;
    padding: 10px;
    line-height: 1.4;
    font-size: 17px;
    font-size: 1.7rem; }
  .mainSp .productBoxSp .productPrice {
    color: #AA1926;
    font-size: 22px;
    font-size: 2.2rem;
    font-weight: bold; }
  .mainSp .productBoxSp .moreDetail {
    color: #1376d1;
    font-size: 20px;
    font-size: 2rem; }
  .mainSp .productBoxSp .btnPurchase--green {
    margin-top: 20px; }

.mainProductBox {
  padding: 15px; }
  @media only screen and (min-width: 992px) {
    .mainProductBox {
      display: block;
      max-width: 720px;
      margin: 0 auto 80px; } }
  .mainProductBox .productBoxSp {
    width: 100%;
    border: 2px solid #0278c3;
    padding: 15px 15px 21px; }
    @media only screen and (min-width: 992px) {
      .mainProductBox .productBoxSp {
        border: 2px solid #0278c3; } }
    .mainProductBox .productBoxSp h2.productTitle {
      font-weight: bold; }
    .mainProductBox .productBoxSp .campaign {
      color: #fff;
      margin: 0 -15px;
      background-color: #F96117;
      padding: 10px;
      line-height: 1.4;
      margin-bottom: 16px;
      font-size: 17px;
      font-size: 1.7rem; }
    .mainProductBox .productBoxSp .productPrice {
      color: #AA1926;
      font-size: 22px;
      font-size: 2.2rem;
      font-weight: bold; }
      @media only screen and (min-width: 992px) {
        .mainProductBox .productBoxSp .productPrice {
          font-size: 40px;
          font-size: 4rem; } }
    @media only screen and (min-width: 992px) {
      .mainProductBox .productBoxSp .productPicture {
        width: 50%; } }
    .mainProductBox .productBoxSp .baloonText {
      margin: 0 auto; }
      @media only screen and (min-width: 992px) {
        .mainProductBox .productBoxSp .baloonText {
          width: 80%; } }
    .mainProductBox .productBoxSp .moreDetail {
      display: block;
      text-align: center;
      margin: 0 auto;
      color: #1376d1;
      font-size: 20px;
      font-size: 2rem; }
    .mainProductBox .productBoxSp .btnPurchase--green .btnCustom {
      margin: 0 auto; }

.baloonText {
  position: relative;
  line-height: 1.3;
  text-align: center;
  font-weight: bold;
  color: #F96117;
  margin: 6px 0;
  border: 1px solid #ddd;
  width: 100%;
  max-width: 600px;
  font-size: 15px;
  font-size: 1.5rem;
  padding: 10px 15px;
  border-radius: 4px; }
  @media only screen and (min-width: 992px) {
    .baloonText {
      font-size: 26px;
      font-size: 2.6rem; } }
  .baloonText:before {
    content: "";
    position: absolute;
    bottom: -8px;
    left: 50%;
    margin-left: -9px;
    width: 0px;
    height: 0px;
    border-style: solid;
    border-width: 8px 9px 0 9px;
    border-color: #fff transparent transparent transparent;
    z-index: 0; }
  .baloonText:after {
    content: "";
    position: absolute;
    bottom: -11px;
    left: 50%;
    margin-left: -10px;
    width: 0px;
    height: 0px;
    border-style: solid;
    border-width: 10px 10px 0 10px;
    border-color: #ddd transparent transparent transparent;
    z-index: -1; }

.videoWrapper {
  display: none; }
  @media only screen and (min-width: 992px) {
    .videoWrapper {
      display: block;
      position: absolute;
      width: 450px;
      top: 140px;
      right: 6%;
      display: block;
      font-weight: bold; } }
  @media only screen and (min-width: 992px) and (min-width: 992px) {
    .videoWrapper {
      top: 194px;
      right: -13%; } }
  @media only screen and (min-width: 992px) {
    .videoWrapper .video {
      position: relative;
      width: 270px;
      height: 200px;
      overflow: hidden;
      border-radius: 50%; } }
  @media only screen and (min-width: 992px) and (min-width: 992px) {
    .videoWrapper .video {
      width: 180px;
      height: 180px; } }
  @media only screen and (min-width: 992px) {
    .videoWrapper .video video {
      width: 360px; } }
  @media only screen and (min-width: 992px) {
    .videoWrapper p {
      font-size: 28px;
      font-size: 2.8rem;
      line-height: 1.4; } }
  @media only screen and (min-width: 992px) {
    .videoWrapper p span {
      font-size: 37px;
      font-size: 3.7rem; } }

@media only screen and (min-width: 992px) {
  .spCheckpoint {
    display: none; } }

.houseImage {
  display: none; }
  @media only screen and (min-width: 992px) {
    .houseImage {
      display: block;
      margin: 20px auto;
      position: relative; } }
  @media only screen and (min-width: 992px) {
    .houseImage .madori {
      position: absolute;
      top: 0;
      left: 0; } }
  .houseImage .madori.bedroom {
    top: 110px;
    left: 20px; }
  .houseImage .madori.childroom {
    top: -90px;
    left: 260px; }
  .houseImage .madori.petHouse {
    top: 35px;
    left: 680px; }
  .houseImage .madori.living {
    top: 254px;
    left: 640px; }
  .houseImage .madori.shoseBox {
    top: 360px;
    left: 550px; }
  .houseImage .madori.washitsu {
    top: 440px;
    left: -10px; }

.list--floorMap {
  margin: 30px  0; }
  .list--floorMap > .listItem {
    border-bottom: 1px solid #ddd; }
    .list--floorMap > .listItem:first-child {
      border-top: 1px solid #ddd; }
    .list--floorMap > .listItem > a {
      font-size: 18px;
      font-size: 1.8rem;
      position: relative;
      display: block;
      width: 100%;
      height: 100%;
      padding: 10px 0;
      text-decoration: none; }
    .list--floorMap > .listItem--floorMapListHasChild > a:after {
      content: '';
      position: absolute;
      top: 50%;
      right: 0;
      width: 8px;
      height: 8px;
      margin-top: -4px;
      border-top: 2px solid #333;
      border-right: 2px solid #333;
      -webkit-transform: rotate(135deg);
      transform: rotate(135deg); }
    .list--floorMap > .listItem--floorMapListHasChild .list {
      display: none; }
      .list--floorMap > .listItem--floorMapListHasChild .list > .listItem {
        border-bottom: 1px solid #ddd; }
        .list--floorMap > .listItem--floorMapListHasChild .list > .listItem:first-child {
          border-top: 1px solid #ddd; }
        .list--floorMap > .listItem--floorMapListHasChild .list > .listItem:last-child {
          border-bottom: none; }
        .list--floorMap > .listItem--floorMapListHasChild .list > .listItem a {
          font-size: 18px;
          font-size: 1.8rem;
          position: relative;
          display: block;
          width: 100%;
          height: 100%;
          padding: 10px 15px;
          background-color: #fafafa;
          text-decoration: none; }
    .list--floorMap > .listItem.open a:after {
      -webkit-transform: rotate(-45deg);
      transform: rotate(-45deg); }

.modal .modal-body h5.sectionTitle {
  padding: 0;
  background-color: #fff; }

.moreRead {
  font-size: 14px;
  font-size: 1.4rem;
  float: right; }
  .moreRead a {
    color: #2b90ec;
    text-decoration: underline; }
    .moreRead a:hover {
      text-decoration: none; }
  .moreRead i {
    margin-left: 6px;
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: bold; }

h3.movieSumallyTitle {
  position: relative;
  display: inline-block;
  padding: 20px 10px;
  width: auto;
  min-width: 115px;
  line-height: 34px;
  color: #19283C;
  margin: 20px 0 50px;
  text-align: center;
  background: #F6F6F6;
  border: 3px solid #19283C;
  z-index: 0; }
  @media only screen and (min-width: 992px) {
    h3.movieSumallyTitle {
      width: 100%;
      margin: 50px 0 80px;
      padding: 50px 0;
      font-size: 40px;
      font-size: 4rem; } }
  h3.movieSumallyTitle:before {
    content: "";
    position: absolute;
    bottom: -26px;
    left: 50%;
    margin-left: -9px;
    width: 0px;
    height: 0px;
    border-style: solid;
    border-width: 29px 29px 0 29px;
    border-color: #F6F6F6 transparent transparent transparent;
    z-index: 0; }
  h3.movieSumallyTitle:after {
    content: "";
    position: absolute;
    bottom: -30px;
    left: 50%;
    margin-left: -10px;
    width: 0px;
    height: 0px;
    border-style: solid;
    border-width: 30px 30px 0 30px;
    border-color: #19283C transparent transparent transparent;
    z-index: -1; }

.movieSumally {
  border: 1px solid #ddd;
  padding: 20px 15px 0;
  -webkit-box-shadow: 0 0 3px #999;
  box-shadow: 0 0 3px #999;
  margin-bottom: 40px;
  background-color: #fafafa; }
  @media only screen and (min-width: 992px) {
    .movieSumally {
      padding: 40px 50px 15px;
      margin-bottom: 70px; } }
  .movieSumally h3.captureTextBoxTitle {
    position: relative;
    font-weight: bold;
    text-align: center;
    margin-bottom: 30px;
    font-size: 22px;
    font-size: 2.2rem; }
    @media only screen and (min-width: 992px) {
      .movieSumally h3.captureTextBoxTitle {
        font-size: 40px;
        font-size: 4rem;
        margin-bottom: 40px;
        color: #0278C3;
        text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.5); } }
    @media only screen and (min-width: 992px) {
      .movieSumally h3.captureTextBoxTitle span {
        position: relative;
        z-index: 2;
        display: inline-block;
        margin: 0 1.5em;
        padding: 0 .5em;
        background-color: #fafafa;
        text-align: left; } }
    .movieSumally h3.captureTextBoxTitle strong {
      background: -webkit-gradient(linear, left top, left bottom, color-stop(40%, transparent), color-stop(40%, #ffff66));
      background: linear-gradient(transparent 40%, #ffff66 40%); }
      @media only screen and (min-width: 992px) {
        .movieSumally h3.captureTextBoxTitle strong {
          background: none; } }
    @media only screen and (min-width: 992px) {
      .movieSumally h3.captureTextBoxTitle:before {
        position: absolute;
        top: 50%;
        z-index: 1;
        content: '';
        display: block;
        width: 100%;
        height: 1px;
        background-color: #ccc; } }
  .movieSumally .captureMovieBox {
    border: 1px solid #ddd;
    margin-bottom: 16px; }
  .movieSumally .captureTextBox {
    margin-bottom: 16px; }
    @media only screen and (min-width: 992px) {
      .movieSumally .captureTextBox {
        margin-bottom: 40px; } }
    .movieSumally .captureTextBox .captureTextContents strong {
      color: #333;
      font-size: 20px;
      font-size: 2rem; }
      @media only screen and (min-width: 992px) {
        .movieSumally .captureTextBox .captureTextContents strong {
          font-size: 22px;
          font-size: 2.2rem; } }
    .movieSumally .captureTextBox .captureTextContents strong.attention {
      color: #AA1926;
      font-size: 22px;
      font-size: 2.2rem; }
      @media only screen and (min-width: 992px) {
        .movieSumally .captureTextBox .captureTextContents strong.attention {
          font-size: 22px;
          font-size: 2.2rem; } }
  .movieSumally .paragraph.youtubeText {
    text-align: center;
    font-weight: bold; }
    @media only screen and (min-width: 992px) {
      .movieSumally .paragraph.youtubeText {
        font-size: 38px;
        font-size: 3.8rem; } }

.blockquote {
  padding: 3em 1em;
  color: #666;
  position: relative; }
  .blockquote:before {
    content: "“";
    font-size: 600%;
    line-height: 1em;
    font-family: "ＭＳ Ｐゴシック",sans-serif;
    color: #999;
    position: absolute;
    left: 0;
    top: 0; }
  .blockquote:after {
    content: "”";
    font-size: 600%;
    line-height: 0em;
    font-family: "ＭＳ Ｐゴシック",sans-serif;
    color: #999;
    position: absolute;
    right: 0;
    bottom: 0; }

.nav > li > a {
  padding: 0 10px; }

@media only screen and (min-width: 768px) {
  .navbar {
    min-height: inherit;
    min-height: auto; }
    .navbar .container {
      padding-left: 0;
      padding-right: 0; } }

.navbar-default {
  border-radius: 0;
  margin-bottom: 0; }
  .navbar-default .navbar-header {
    height: 60px;
    background-color: #3384C9; }
    @media only screen and (min-width: 768px) {
      .navbar-default .navbar-header {
        display: none; } }
  .navbar-default .navbar-collapse {
    padding-left: 0;
    padding-right: 0; }
  .navbar-default .navbar-toggle {
    background-color: #fff; }
  .navbar-default .navbar-brand {
    padding-left: 10px;
    margin-top: 10px; }
    .navbar-default .navbar-brand > img {
      width: 150px;
      height: auto;
      margin-top: 10px; }
  .navbar-default .menu {
    font-size: 11px;
    font-size: 1.1rem;
    position: absolute;
    right: 15px;
    top: 41px;
    color: #fff; }
    @media only screen and (min-width: 768px) {
      .navbar-default .menu {
        display: none; } }
  .navbar-default .catch {
    font-size: 9px;
    font-size: 0.9rem;
    position: absolute;
    left: 10px;
    top: 5px;
    color: #fff;
    line-height: 1.2; }
    @media only screen and (min-width: 768px) {
      .navbar-default .catch {
        font-size: 12px;
        font-size: 1.2rem;
        display: none; } }
  @media only screen and (min-width: 768px) {
    .navbar-default {
      background-color: #F1F6FE;
      border-top: none;
      border-bottom: 6px solid #3384C9; } }
  .navbar-default .navbar-nav {
    margin: 0;
    width: 100%; }
    @media only screen and (min-width: 768px) {
      .navbar-default .navbar-nav > li {
        text-align: center; } }
    .navbar-default .navbar-nav > li > a {
      position: relative;
      border-bottom: 1px solid #e7e7e7;
      padding: 12px; }
      @media only screen and (min-width: 992px) {
        .navbar-default .navbar-nav > li > a {
          border-bottom: none;
          padding: 17px; } }
      .navbar-default .navbar-nav > li > a:hover {
        background-color: #2969a0;
        color: #fff; }
    .navbar-default .navbar-nav > li .caret {
      margin-left: 10px;
      border-top: 8px dashed;
      border-right: 8px solid transparent;
      border-left: 8px solid transparent; }
    .navbar-default .navbar-nav > li > ul {
      padding: 0; }
      .navbar-default .navbar-nav > li > ul li a {
        padding-top: 6px;
        padding-bottom: 6px;
        border-bottom: 1px solid #e7e7e7; }
        .navbar-default .navbar-nav > li > ul li a:hover {
          color: #fff !important;
          background-color: #3384C9;
          color: #555; }
    @media only screen and (min-width: 992px) {
      .navbar-default .navbar-nav > li {
        width: 25%; } }
    @media only screen and (min-width: 768px) {
      .navbar-default .navbar-nav > li > a {
        position: relative;
        color: #3384C9;
        font-size: 16px;
        font-size: 1.6rem;
        border-bottom: none; }
        .navbar-default .navbar-nav > li > a:hover {
          color: #fff;
          background-color: #3384C9; } }
  @media only screen and (min-width: 768px) and (min-width: 992px) {
    .navbar-default .navbar-nav > li > a i {
      position: absolute;
      width: 30px;
      top: 9px;
      font-size: 30px;
      font-size: 3rem; } }
    @media only screen and (min-width: 768px) {
      .navbar-default .navbar-nav > li.active > a {
        color: #fff;
        background-color: #3384C9; }
        .navbar-default .navbar-nav > li.active > a:hover, .navbar-default .navbar-nav > li.active > a:focus {
          color: #fff;
          background-color: #3384C9;
          cursor: pointer; } }
    .navbar-default .navbar-nav .open .dropdown-menu > li > a {
      padding: 10px 15px 10px 25px; }
      .navbar-default .navbar-nav .open .dropdown-menu > li > a i {
        margin-right: 6px; }

@media only screen and (min-width: 768px) {
  .navbar-default-fl .navbar-nav > li {
    width: 33.33333%; } }

.navbar-default .navbar-nav > li.overseas-links {
  width: 100%;
  color: #777;
  text-align: center; }
  @media only screen and (min-width: 768px) {
    .navbar-default .navbar-nav > li.overseas-links {
      display: none; } }

.navbar-default-fl .navbar-nav > li.overseas-links {
  width: 100%;
  color: #777;
  text-align: center; }
  @media only screen and (min-width: 768px) {
    .navbar-default-fl .navbar-nav > li.overseas-links {
      display: none; } }

.nav .open > a,
.nav .open > a:focus,
.nav .open > a:hover {
  color: #fff !important;
  background-color: #3384C9 !important;
  border-color: #e7e7e7; }

.noticeBlock {
  margin: 20px 0;
  background-color: #eee;
  padding: 15px;
  border: 1px solid #ddd;
  color: #666; }
  .noticeBlock .listItem {
    font-size: 14px;
    font-size: 1.4rem; }
    .noticeBlock .listItem a {
      color: #666;
      text-decoration: underline; }
      .noticeBlock .listItem a:hover {
        color: #333;
        -webkit-transition: .2s;
        transition: .2s;
        text-decoration: none; }
  .noticeBlock .paragraph {
    font-size: 14px;
    font-size: 1.4rem;
    margin: 0; }

.sealAside li {
  display: table-header-group; }
  .sealAside li div {
    display: table-cell; }
    .sealAside li div:nth-of-type(1) {
      width: 61%; }

.section-block--user-voice .section-block__header {
  position: relative;
  margin-bottom: 24px; }
  .section-block--user-voice .section-block__header .anchor {
    position: absolute;
    display: inline-block;
    top: 0;
    right: 0; }

.section-block--interview p.note {
  color: #f00;
  font-size: 90%; }

.section-block--interview .section-block__header {
  margin-bottom: 40px; }
  .section-block--interview .section-block__header img {
    display: block;
    max-width: 100%;
    margin: 20px auto 10px; }
  .section-block--interview .section-block__header .name {
    font-size: 20px;
    font-size: 2rem;
    display: block;
    text-align: center;
    margin-bottom: 20px; }
  .section-block--interview .section-block__header .heading3 {
    font-family: "Yu Mincho", "YuMincho", YuGothic,"游ゴシック","Yu Gothic","メイリオ",Meiryo,sans-serif;
    margin: 20px 0;
    font-weight: bold;
    line-height: 1.3; }
    @media only screen and (min-width: 768px) {
      .section-block--interview .section-block__header .heading3 {
        margin: 40px 0; } }

.section-block--interview .section-block__contents .heading4 {
  font-size: 18px;
  font-size: 1.8rem;
  font-family: YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, sans-serif;
  color: #333;
  background-color: #cfe6fb;
  padding: 15px;
  margin-bottom: 24px;
  font-weight: bold;
  line-height: 1.4; }

.section-block--interview .section-block__contents .paragraph {
  font-family: YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, sans-serif;
  font-size: 16px;
  font-size: 1.6rem; }
  .section-block--interview .section-block__contents .paragraph + .heading4 {
    margin-top: 40px; }
    @media only screen and (min-width: 768px) {
      .section-block--interview .section-block__contents .paragraph + .heading4 {
        margin-top: 60px; } }
  .section-block--interview .section-block__contents .paragraph--answer {
    margin-bottom: 20px; }

section {
  margin-bottom: 20px;
  font-size: 16px;
  font-size: 1.6rem; }
  section:before, section:after {
    content: "";
    display: table; }
  section:after {
    clear: both; }
  section {
    *zoom: 1; }
  @media only screen and (min-width: 992px) {
    section {
      padding: 0;
      margin-bottom: 30px; } }
  section > section {
    padding: 15px;
    background-color: #fff;
    margin-bottom: 40px; }
    @media only screen and (min-width: 992px) {
      section > section {
        padding: 30px;
        -webkit-box-shadow: 0 0 4px rgba(0, 0, 0, 0.3);
        box-shadow: 0 0 4px rgba(0, 0, 0, 0.3); } }

@media only screen and (min-width: 992px) {
  .namihokoridani img {
    width: 200px;
    height: auto; } }

@media only screen and (min-width: 768px) {
  .sectionTitleBlock {
    margin-bottom: 30px; } }

.sectionTitleBlock .sectionTitle {
  padding: 10px 15px;
  background-color: #2b90ec;
  border-top: 5px solid #1376d1;
  border-bottom: 5px solid #1376d1;
  color: #fff; }
  .sectionTitleBlock .sectionTitle--interview {
    font-family: "Yu Mincho", "YuMincho", YuGothic,"游ゴシック","Yu Gothic","メイリオ",Meiryo,sans-serif; }
  .sectionTitleBlock .sectionTitle .sectionTitledlp {
    font-size: 18px;
    font-size: 1.8rem; }
    @media only screen and (min-width: 992px) {
      .sectionTitleBlock .sectionTitle .sectionTitledlp {
        margin-left: 12px;
        font-size: 22px;
        font-size: 2.2rem; } }
  .sectionTitleBlock .sectionTitle span {
    display: block;
    margin-top: 6px;
    font-size: 14px;
    font-size: 1.4rem; }
    @media only screen and (min-width: 992px) {
      .sectionTitleBlock .sectionTitle span {
        display: inline;
        margin-top: 0;
        margin-left: 12px; } }

h2.sectionTitle {
  font-size: 22px;
  font-size: 2.2rem; }
  @media only screen and (min-width: 992px) {
    h2.sectionTitle {
      font-size: 28px;
      font-size: 2.8rem; } }

h3.sectionTitle {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  padding-left: 14px;
  border-left: 6px solid #2b90ec;
  line-height: 1.4; }
  @media only screen and (min-width: 992px) {
    h3.sectionTitle {
      font-size: 26px;
      font-size: 2.6rem; } }

@media only screen and (min-width: 992px) {
  br.sectionTitlediverted {
    display: none; } }

h4.sectionTitle {
  color: #333;
  background-color: transparent;
  padding: 10px 0;
  margin-top: 30px;
  border-bottom: 1px solid #ccc;
  padding-left: 1em;
  text-indent: -1em;
  font-size: 16px;
  font-size: 1.6rem; }
  @media only screen and (min-width: 992px) {
    h4.sectionTitle {
      font-size: 20px;
      font-size: 2rem; } }
  h4.sectionTitle:before {
    content: "■";
    color: #2b90ec; }

h5.sectionTitle {
  font-weight: bold;
  margin-top: 20px;
  font-size: 14px;
  font-size: 1.4rem;
  background-color: #f2f2f2;
  padding: 16px 15px; }
  @media only screen and (min-width: 992px) {
    h5.sectionTitle {
      font-size: 18px;
      font-size: 1.8rem; } }

.subscription.price {
  color: #AA1926;
  font-size: 24px;
  font-weight: bold; }

.table > thead > tr > th {
  border-bottom: none;
  color: #fff;
  background-color: #2b90ec;
  border-top: 1px solid #2b90ec;
  border-left: 1px solid #2b90ec;
  border-right: 1px solid #fff; }

.table > thead:first-child > tr:first-child > th {
  border-top: 1px solid #2b90ec; }

.table > thead:first-child > tr:first-child > th:last-child {
  border-right: 1px solid #2b90ec; }

.table tbody > tr > td {
  vertical-align: middle;
  border-right: 1px solid #ddd; }

.table tbody > tr > td:first-child {
  border-left: 1px solid #ddd; }

.table tbody > tr:last-child > td {
  border-bottom: 1px solid #ddd; }

.table tbody > tr.danger > td {
  color: #AA1926; }

.tableBlock {
  width: 100%;
  margin: 20px 0;
  border-left: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
  border-right: 1px solid #ddd; }
  @media only screen and (min-width: 992px) {
    .tableBlock {
      display: table;
      border-top: 1px solid #ddd;
      border-bottom: none;
      border-right: none; } }
  @media only screen and (min-width: 992px) {
    .tableBlock .tableDl {
      display: table-row-group;
      border: 1px solid #ddd; } }
  .tableBlock .tableDl .tableDt, .tableBlock .tableDl .tableDd {
    vertical-align: middle;
    padding: 16px; }
    @media only screen and (min-width: 992px) {
      .tableBlock .tableDl .tableDt, .tableBlock .tableDl .tableDd {
        display: table-cell; } }
  .tableBlock .tableDl .tableDt {
    background-color: #f2f2f2;
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd; }
    @media only screen and (min-width: 992px) {
      .tableBlock .tableDl .tableDt {
        border-top: none;
        width: 30%; } }
  .tableBlock .tableDl .tableDd {
    background-color: #fff; }
    @media only screen and (min-width: 992px) {
      .tableBlock .tableDl .tableDd {
        border-bottom: 1px solid #ddd;
        border-left: 1px solid #ddd;
        border-right: 1px solid #ddd; } }
    .tableBlock .tableDl .tableDd img {
      width: 150px;
      display: block;
      margin: 0 auto; }

.section-block--user-voice .section-block__header {
  position: relative;
  margin-bottom: 24px; }
  .section-block--user-voice .section-block__header .anchor {
    position: absolute;
    display: inline-block;
    top: 0;
    right: 0; }

.section-block--interview p.note {
  color: #f00;
  font-size: 90%; }

.section-block--interview .section-block__header {
  margin-bottom: 40px; }
  .section-block--interview .section-block__header img {
    display: block;
    max-width: 100%;
    margin: 20px auto 10px; }
  .section-block--interview .section-block__header .name {
    font-size: 20px;
    font-size: 2rem;
    display: block;
    text-align: center;
    margin-bottom: 20px; }
  .section-block--interview .section-block__header .heading3 {
    font-family: "Yu Mincho", "YuMincho", YuGothic,"游ゴシック","Yu Gothic","メイリオ",Meiryo,sans-serif;
    margin: 20px 0;
    font-weight: bold;
    line-height: 1.3; }
    @media only screen and (min-width: 768px) {
      .section-block--interview .section-block__header .heading3 {
        margin: 40px 0; } }

.section-block--interview .section-block__contents .heading4 {
  font-size: 18px;
  font-size: 1.8rem;
  font-family: YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, sans-serif;
  color: #333;
  background-color: #cfe6fb;
  padding: 15px;
  margin-bottom: 24px;
  font-weight: bold;
  line-height: 1.4; }

.section-block--interview .section-block__contents .paragraph {
  font-family: YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, sans-serif;
  font-size: 16px;
  font-size: 1.6rem; }
  .section-block--interview .section-block__contents .paragraph + .heading4 {
    margin-top: 40px; }
    @media only screen and (min-width: 768px) {
      .section-block--interview .section-block__contents .paragraph + .heading4 {
        margin-top: 60px; } }
  .section-block--interview .section-block__contents .paragraph--answer {
    margin-bottom: 20px; }

section {
  margin-bottom: 20px;
  font-size: 16px;
  font-size: 1.6rem; }
  section:before, section:after {
    content: "";
    display: table; }
  section:after {
    clear: both; }
  section {
    *zoom: 1; }
  @media only screen and (min-width: 992px) {
    section {
      padding: 0;
      margin-bottom: 30px; } }
  section > section {
    padding: 15px;
    background-color: #fff;
    margin-bottom: 40px; }
    @media only screen and (min-width: 992px) {
      section > section {
        padding: 30px;
        -webkit-box-shadow: 0 0 4px rgba(0, 0, 0, 0.3);
        box-shadow: 0 0 4px rgba(0, 0, 0, 0.3); } }

@media only screen and (min-width: 992px) {
  .namihokoridani img {
    width: 200px;
    height: auto; } }

.btnCustom {
  border: none;
  font-family: inherit;
  font-size: inherit;
  color: inherit;
  background: none;
  cursor: pointer;
  padding: 10px 30px;
  display: inline-block;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-weight: 700;
  outline: none;
  position: relative;
  -webkit-transition: all 0.3s;
  transition: all 0.3s; }
  @media only screen and (min-width: 992px) {
    .btnCustom {
      font-size: 20px;
      font-size: 2rem;
      padding: 20px 50px;
      margin: 15px 0; } }
  .btnCustom:after {
    content: "";
    position: absolute;
    z-index: -1;
    -webkit-transition: all 0.3s;
    transition: all 0.3s; }
  .btnCustom:hover, .btnCustom:active, .btnCustom:focus {
    text-decoration: none; }
  .btnCustom i {
    display: inline-block;
    margin-right: 6px; }

.btnPurchase {
  margin-top: 40px;
  text-align: center; }
  .btnPurchase a {
    background: #fba848;
    color: #fff !important;
    -webkit-box-shadow: 0 6px #d15428;
    box-shadow: 0 6px #d15428;
    -webkit-transition: none;
    transition: none;
    border-radius: 5px;
    width: 100%; }
    .btnPurchase a:hover {
      -webkit-box-shadow: 0 4px #d15428;
      box-shadow: 0 4px #d15428;
      top: 2px;
      background: #fa9016; }
    .btnPurchase a:active {
      -webkit-box-shadow: 0 0 #d15428;
      box-shadow: 0 0 #d15428;
      top: 6px; }

.btnPurchase-fl {
  margin-top: 30px;
  display: block; }
  @media only screen and (min-width: 992px) {
    .btnPurchase-fl {
      margin-top: 10px;
      display: inline-block;
      float: right; } }

.btnPurchase-fl-feature {
  max-width: 774px;
  margin: 0 auto; }
  .btnPurchase-fl-feature a {
    display: block;
    width: 90%;
    margin: 0 auto;
    background-color: #f96117;
    color: #fff;
    border-radius: 5px;
    font-size: 2rem;
    padding: 16px 0;
    text-align: center; }
    @media only screen and (min-width: 992px) {
      .btnPurchase-fl-feature a {
        width: 55%; } }

.btnPurchase--green {
  margin-top: 40px;
  text-align: center; }
  .btnPurchase--green a {
    background: #63ca4b;
    color: #AA1926 !important;
    position: relative;
    font-size: 24px;
    font-size: 2.4rem;
    padding: 10px 65px;
    -webkit-box-shadow: 0 6px #399025;
    box-shadow: 0 6px #399025;
    -webkit-transition: none;
    transition: none;
    border-radius: 5px; }
    .btnPurchase--green a:hover {
      -webkit-box-shadow: 0 4px #399025;
      box-shadow: 0 4px #399025;
      top: 2px;
      background: #4baf33; }
    .btnPurchase--green a:active {
      -webkit-box-shadow: 0 0 #399025;
      box-shadow: 0 0 #399025;
      top: 6px; }
    @media only screen and (min-width: 992px) {
      .btnPurchase--green a {
        padding: 10px 80px;
        font-size: 28px;
        font-size: 2.8rem; } }

.btnPurchase + section {
  margin-top: 40px; }

/*--------------------------------------
 * refactoring
--------------------------------------*/
.button {
  color: #fff !important;
  display: inline-block;
  background-color: #999;
  padding: 8px 55px;
  border-radius: 6px;
  text-decoration: none; }
  .button:hover {
    text-decoration: none; }
  @media only screen and (min-width: 768px) {
    .button {
      font-size: 16px;
      font-size: 1.6rem; } }
  .button--default {
    border-radius: 4px;
    padding: 16px 55px; }
  .button--regist {
    border: 2px solid #3384c9;
    background: -webkit-gradient(linear, left top, left bottom, from(#50cae8), color-stop(8%, #3fa1d6), color-stop(18%, #3384c9), to(#3384c9));
    background: linear-gradient(to bottom, #50cae8 0%, #3fa1d6 8%, #3384c9 18%, #3384c9 100%); }
    .button--regist:hover {
      background: #4690d0; }
  .button--login {
    border: 2px solid #f35211;
    background: -webkit-gradient(linear, left top, left bottom, from(#fb881c), color-stop(8%, #f87518), color-stop(18%, #f35211), to(#f35211));
    background: linear-gradient(to bottom, #fb881c 0%, #f87518 8%, #f35211 18%, #f35211 100%);
    margin-left: 15px; }
    .button--login:hover {
      background: #f46429; }
    @media only screen and (min-width: 992px) {
      .button--login {
        margin-left: 0px; } }
    @media only screen and (min-width: 1200px) {
      .button--login {
        margin-left: 15px; } }

/*--------------------------------------
 * movie
--------------------------------------*/
.btnMovie {
  margin-top: 40px;
  text-align: center; }
  .btnMovie a {
    background: #4d93ce;
    color: #fff !important;
    -webkit-box-shadow: 0 6px #274f71;
    box-shadow: 0 6px #274f71;
    -webkit-transition: none;
    transition: none;
    border-radius: 5px;
    width: 100%; }
    .btnMovie a:hover {
      -webkit-box-shadow: 0 4px #274f71;
      box-shadow: 0 4px #274f71;
      top: 2px;
      background: #327ab6; }
    .btnMovie a:active {
      -webkit-box-shadow: 0 0 #215077;
      box-shadow: 0 0 #215077;
      top: 6px; }

.btnMovie--green {
  margin-top: 40px;
  text-align: center; }
  .btnMovie--green a {
    background: #4d93ce;
    color: #AA1926 !important;
    position: relative;
    font-size: 24px;
    font-size: 2.4rem;
    padding: 10px 65px;
    -webkit-box-shadow: 0 6px #215e92;
    box-shadow: 0 6px #215e92;
    -webkit-transition: none;
    transition: none;
    border-radius: 5px; }
    .btnMovie--green a:hover {
      -webkit-box-shadow: 0 4px #d15428;
      box-shadow: 0 4px #d15428;
      top: 2px;
      background: #327ab6; }
    .btnMovie--green a:active {
      -webkit-box-shadow: 0 0 #d15428;
      box-shadow: 0 0 #d15428;
      top: 6px; }
    @media only screen and (min-width: 992px) {
      .btnMovie--green a {
        padding: 10px 80px;
        font-size: 28px;
        font-size: 2.8rem; } }

.btnMovie + section {
  margin-top: 40px; }

.supplement {
  width: 100%;
  margin: 40px auto;
  background: #efefef;
  padding: 30px; }
  @media only screen and (min-width: 768px) {
    .supplement {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      max-width: 640px; } }
  .supplement__heading {
    text-align: center;
    font-weight: bold;
    margin-bottom: 30px; }
    @media only screen and (min-width: 768px) {
      .supplement__heading {
        width: 100%; } }
  .supplement__text {
    line-height: 1.6; }
    @media only screen and (min-width: 768px) {
      .supplement__text {
        width: 60%;
        padding-right: 20px; } }
  .supplement__img {
    margin-top: 20px;
    text-align: center; }
    @media only screen and (min-width: 768px) {
      .supplement__img {
        width: 40%;
        margin-top: 0; } }

.subscription.price {
  color: #AA1926;
  font-size: 24px;
  font-weight: bold; }

.table > thead > tr > th {
  border-bottom: none;
  color: #fff;
  background-color: #2b90ec;
  border-top: 1px solid #2b90ec;
  border-left: 1px solid #2b90ec;
  border-right: 1px solid #fff; }

.table > thead:first-child > tr:first-child > th {
  border-top: 1px solid #2b90ec; }

.table > thead:first-child > tr:first-child > th:last-child {
  border-right: 1px solid #2b90ec; }

.table tbody > tr > td {
  vertical-align: middle;
  border-right: 1px solid #ddd; }

.table tbody > tr > td:first-child {
  border-left: 1px solid #ddd; }

.table tbody > tr:last-child > td {
  border-bottom: 1px solid #ddd; }

.table tbody > tr.danger > td {
  color: #AA1926; }

.tableBlock {
  width: 100%;
  margin: 20px 0;
  border-left: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
  border-right: 1px solid #ddd; }
  @media only screen and (min-width: 992px) {
    .tableBlock {
      display: table;
      border-top: 1px solid #ddd;
      border-bottom: none;
      border-right: none; } }
  @media only screen and (min-width: 992px) {
    .tableBlock .tableDl {
      display: table-row-group;
      border: 1px solid #ddd; } }
  .tableBlock .tableDl .tableDt, .tableBlock .tableDl .tableDd {
    vertical-align: middle;
    padding: 16px; }
    @media only screen and (min-width: 992px) {
      .tableBlock .tableDl .tableDt, .tableBlock .tableDl .tableDd {
        display: table-cell; } }
  .tableBlock .tableDl .tableDt {
    background-color: #f2f2f2;
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd; }
    @media only screen and (min-width: 992px) {
      .tableBlock .tableDl .tableDt {
        border-top: none;
        width: 30%; } }
  .tableBlock .tableDl .tableDd {
    background-color: #fff; }
    @media only screen and (min-width: 992px) {
      .tableBlock .tableDl .tableDd {
        border-bottom: 1px solid #ddd;
        border-left: 1px solid #ddd;
        border-right: 1px solid #ddd; } }
    .tableBlock .tableDl .tableDd img {
      width: 150px;
      display: block;
      margin: 0 auto; }

.pagination {
  width: 100%;
  padding: 0 15px; }
  @media only screen and (min-width: 768px) {
    .pagination {
      display: table; } }
  @media only screen and (min-width: 768px) {
    .pagination .prev, .pagination .next {
      display: table-cell;
      width: 50%; } }
  .pagination .prev a, .pagination .next a {
    font-size: 18px;
    font-size: 1.8rem;
    display: inline-block;
    text-decoration: underline;
    vertical-align: middle;
    padding: 12px; }
    @media only screen and (min-width: 992px) {
      .pagination .prev a:hover, .pagination .next a:hover {
        text-decoration: none; } }
    .pagination .prev a i, .pagination .next a i {
      font-size: 30px;
      font-size: 3rem;
      display: inline-block;
      vertical-align: -3px; }
  .pagination .prev {
    text-align: left; }
  .pagination .next {
    text-align: right; }

.paragraph {
  font-size: 14px;
  font-size: 1.4rem;
  margin: 30px 0;
  word-break: break-all;
  line-height: 1.8; }
  .paragraph strong.emphasis {
    color: #e70031; }
  @media only screen and (min-width: 992px) {
    .paragraph {
      font-size: 16px;
      font-size: 1.6rem; } }
  .paragraph--Attention {
    color: #e70031; }
  .paragraph--ImageWrapper {
    text-align: center;
    padding: 20px;
    border: 1px solid #ddd; }
  @media only screen and (min-width: 768px) {
    .paragraph--productlist-description {
      font-size: 16px;
      font-size: 1.6rem; } }
  @media only screen and (min-width: 1200px) {
    .paragraph--productlist-description {
      font-size: 20px;
      font-size: 2rem; } }

.paragraph-en {
  word-break: normal; }

.danger {
  color: #AA1926; }

.pageNews .paragraph > a {
  text-decoration: underline; }
  .pageNews .paragraph > a:hover {
    text-decoration: none; }

@media only screen and (min-width: 992px) {
  .presentBoxWrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; } }

.presentBoxWrapper .presentBox {
  border: 2px solid #2b90ec;
  margin: 20px 0;
  padding: 15px; }
  .presentBoxWrapper .presentBox .presentBoxTitle {
    text-align: center;
    padding-bottom: 10px;
    border-bottom: 1px dashed #ddd;
    font-size: 16px;
    font-size: 1.6rem; }
    .presentBoxWrapper .presentBox .presentBoxTitle span {
      font-size: 48px;
      font-size: 4.8rem;
      font-weight: bold; }
  .presentBoxWrapper .presentBox .presentBoxContent .paragraph {
    padding-bottom: 10px;
    border-bottom: 1px dashed #ddd; }
    .presentBoxWrapper .presentBox .presentBoxContent .paragraph:nth-last-of-type(1) {
      border-bottom: none; }
  @media only screen and (min-width: 992px) {
    .presentBoxWrapper .presentBox {
      float: left;
      width: 31.3%;
      margin-right: 3%; }
      .presentBoxWrapper .presentBox:nth-last-of-type(1) {
        margin-right: 0; } }
  @media only screen and (min-width: 992px) {
    .presentBoxWrapper .presentBox:first-child > .presentBoxContent > .paragraph:nth-of-type(1) {
      height: 151px;
      padding-top: 50px; }
    .presentBoxWrapper .presentBox:first-child > .presentBoxContent .noticeBlock {
      margin-top: 48px; } }

.privilege {
  border: 1px solid #2b90ec;
  margin-bottom: 20px; }
  @media only screen and (min-width: 992px) {
    .privilege {
      width: 48%;
      float: left;
      margin-right: 2%; }
      .privilege:nth-of-type(2n) {
        margin-right: 0; } }
  .privilegeTitle {
    background-color: #2b90ec;
    color: #fff;
    text-align: center;
    padding: 8px 0; }
  .privilegeContent {
    padding: 0 15px; }
    .privilegeContent strong {
      display: block;
      color: #e70031;
      text-align: center;
      font-size: 16px;
      font-size: 1.6rem; }

.productList {
  margin: 0; }
  .productList .productListItem {
    position: relative;
    margin: 0 10px; }
    @media only screen and (min-width: 992px) {
      .productList .productListItem {
        margin: 0; } }
    .productList .productListItem img.productListItemThumbnail {
      width: 30%; }
    .productList .productListItem.recommend:before {
      content: '';
      display: block;
      position: absolute;
      width: 150px;
      height: 150px;
      top: -5px;
      left: -5px;
      background: transparent url(/img/product/ribbon.png) no-repeat 0 0;
      z-index: 100; }
    .productList .productListItem.recommend:after {
      content: 'おすすめ商品';
      position: absolute;
      font-size: 20px;
      font-size: 2rem;
      font-weight: bold;
      line-height: 1;
      color: #fff;
      width: 212px;
      -webkit-transform: rotate(-45deg);
      transform: rotate(-45deg);
      z-index: 101;
      top: 10px;
      left: -20px; }
    .productList .productListItem.exchange:before {
      content: '';
      display: block;
      position: absolute;
      width: 150px;
      height: 150px;
      top: -5px;
      left: -5px;
      background: transparent url(/img/product/ribbonExchange.png) no-repeat 0 0;
      z-index: 100; }
    .productList .productListItem.exchange:after {
      content: '詰替商品';
      position: absolute;
      font-size: 20px;
      font-size: 2rem;
      font-weight: bold;
      line-height: 1;
      color: #fff;
      width: 212px;
      -webkit-transform: rotate(-45deg);
      transform: rotate(-45deg);
      z-index: 101;
      top: -5px;
      left: -8px; }
    .productList .productListItem.subscription:before {
      content: '';
      display: block;
      position: absolute;
      width: 150px;
      height: 150px;
      top: -5px;
      left: -5px;
      background: transparent url(/img/product/ribbonSubscription.png) no-repeat 0 0;
      z-index: 100; }
    .productList .productListItem.subscription:after {
      content: '定期セット';
      position: absolute;
      font-size: 20px;
      font-size: 2rem;
      font-weight: bold;
      line-height: 1;
      color: #fff;
      width: 212px;
      -webkit-transform: rotate(-45deg);
      transform: rotate(-45deg);
      z-index: 101;
      top: 0px;
      left: -10px; }
    .productList .productListItem.subscription.exchange:after {
      content: '定期詰替セット';
      position: absolute;
      font-size: 20px;
      font-size: 2rem;
      font-weight: bold;
      line-height: 1;
      color: #fff;
      width: 212px;
      -webkit-transform: rotate(-45deg);
      transform: rotate(-45deg);
      z-index: 101;
      top: 14px;
      left: -23px; }
    .productList .productListItemPanel {
      border: 1px solid #ddd;
      -webkit-box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.2);
      box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.2);
      margin-bottom: 30px;
      background: #fff;
      padding: 20px 10px; }
      .productList .productListItemPanel:before, .productList .productListItemPanel:after {
        content: "";
        display: table; }
      .productList .productListItemPanel:after {
        clear: both; }
      .productList .productListItemPanel {
        *zoom: 1; }
      @media only screen and (min-width: 992px) {
        .productList .productListItemPanel {
          padding: 30px 20px; } }
    .productList .productListItemPanel-r {
      margin-bottom: 30px;
      background: #fff;
      padding: 20px 10px; }
      .productList .productListItemPanel-r:before, .productList .productListItemPanel-r:after {
        content: "";
        display: table; }
      .productList .productListItemPanel-r:after {
        clear: both; }
      .productList .productListItemPanel-r {
        *zoom: 1; }
      @media only screen and (min-width: 992px) {
        .productList .productListItemPanel-r {
          padding: 30px 20px; } }
    .productList .productListItemPhoto {
      margin: 0 auto; }
    .productList .productListItemNumber:before {
      content: '（商品番号: '; }
    .productList .productListItemNumber:after {
      content: '）'; }
    .productList .productListItemName {
      text-align: center;
      font-size: 16px;
      font-size: 1.6rem;
      margin-top: 5px;
      line-height: 1.4;
      border: 1px solid #999;
      padding: 10px 15px;
      background: #1376d1;
      color: #fff; }
      .productList .productListItemName strong {
        display: block;
        font-size: 18px;
        font-size: 1.8rem;
        letter-spacing: 1px; }
      @media only screen and (min-width: 768px) {
        .productList .productListItemName {
          text-align: left; } }
      @media only screen and (min-width: 1200px) {
        .productList .productListItemName {
          font-size: 20px;
          font-size: 2rem; }
          .productList .productListItemName strong {
            font-size: 24px;
            font-size: 2.4rem; } }
    .productList .productListItemDescription {
      font-size: 16px;
      font-size: 1.6rem;
      margin-top: 10px;
      padding-left: 15px; }
      .productList .productListItemDescription span.attention {
        color: #AA1926;
        padding: 3px;
        margin-right: 3px;
        display: block; }
        @media only screen and (min-width: 768px) {
          .productList .productListItemDescription span.attention {
            display: inline; } }
    .productList .productListItemPrice {
      display: inline-block;
      margin-top: 5px;
      color: #AA1926;
      font-size: 18px;
      font-size: 1.8rem;
      font-weight: bold;
      padding-left: 15px; }
      .productList .productListItemPrice span {
        font-size: 1.3rem;
        display: block; }
      @media only screen and (min-width: 992px) {
        .productList .productListItemPrice {
          font-size: 24px;
          font-size: 2.4rem; }
          .productList .productListItemPrice span {
            padding-left: 10px;
            font-size: 1.8rem;
            display: inline-block; } }
    .productList .productListItemDetail {
      margin-top: 15px;
      display: inline-block;
      width: 100%;
      padding: 10px;
      text-align: center;
      background-color: #1376d1;
      color: #fff !important;
      border-radius: 4px;
      position: relative;
      text-transform: uppercase;
      -webkit-box-shadow: 0 6px #0f5ca2;
      box-shadow: 0 6px #0f5ca2; }
      @media only screen and (min-width: 992px) {
        .productList .productListItemDetail {
          font-size: 18px;
          font-size: 1.8rem;
          float: right;
          background: none;
          -webkit-box-shadow: none;
          box-shadow: none;
          color: #1376d1 !important;
          text-align: right;
          padding: 0;
          width: auto; } }
      .productList .productListItemDetail:hover, .productList .productListItemDetail:active, .productList .productListItemDetail:focus {
        text-decoration: none;
        cursor: pointer; }
        @media only screen and (min-width: 992px) {
          .productList .productListItemDetail:hover, .productList .productListItemDetail:active, .productList .productListItemDetail:focus {
            text-decoration: underline; } }
    .productList .productListItemMembers {
      margin-top: 15px;
      display: inline-block;
      width: 100%;
      padding: 10px;
      text-align: center;
      background-color: #26BF78;
      color: #fff !important;
      border-radius: 4px;
      position: relative;
      text-transform: uppercase;
      -webkit-box-shadow: 0 6px #1e945d;
      box-shadow: 0 6px #1e945d; }
      @media only screen and (min-width: 992px) {
        .productList .productListItemMembers {
          font-size: 18px;
          font-size: 1.8rem;
          float: right;
          background: none;
          -webkit-box-shadow: none;
          box-shadow: none;
          color: #1376d1 !important;
          text-align: right;
          padding: 0;
          width: auto; } }
      .productList .productListItemMembers:hover, .productList .productListItemMembers:active, .productList .productListItemMembers:focus {
        text-decoration: none;
        cursor: pointer; }
        @media only screen and (min-width: 992px) {
          .productList .productListItemMembers:hover, .productList .productListItemMembers:active, .productList .productListItemMembers:focus {
            text-decoration: underline; } }
  .productList .productListItem-enNumber:before {
    content: '(Stock number :'; }
  .productList .productListItem-enNumber:after {
    content: ')'; }

.checkListPlace {
  border: 1px solid #ddd;
  margin-bottom: 30px;
  background: #fff;
  -webkit-box-shadow: 0 0 3px #999;
  box-shadow: 0 0 3px #999; }

.checkListPlace-r {
  border: 1px solid #ddd;
  margin-bottom: 30px;
  background: #f1f6fe;
  padding: 20px 10px; }

h3.captureTextBoxTitle {
  font-size: 4rem;
  margin-bottom: 10px;
  color: #0278C3;
  position: relative;
  font-weight: bold;
  text-align: center;
  text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.5);
  font-size: 22px;
  font-size: 2.2rem; }
  @media only screen and (min-width: 992px) {
    h3.captureTextBoxTitle {
      font-size: 40px;
      font-size: 4rem;
      margin-bottom: 10px;
      color: #0278C3; } }
  h3.captureTextBoxTitle:before {
    position: absolute;
    top: 50%;
    z-index: 1;
    content: '';
    display: block;
    width: 100%;
    height: 1px;
    background-color: #ccc; }
  h3.captureTextBoxTitle span {
    font-size: 18px;
    font-size: 1.8rem;
    position: relative;
    z-index: 2;
    display: inline-block;
    margin: 0 1.5em;
    padding: 0 .5em;
    background-color: #fff;
    text-align: left; }
    @media only screen and (min-width: 992px) {
      h3.captureTextBoxTitle span {
        font-size: 36px;
        font-size: 3.6rem;
        margin-bottom: 10px;
        color: #0278C3; } }
    @media only screen and (min-width: 992px) {
      h3.captureTextBoxTitle span {
        position: relative;
        z-index: 2;
        display: inline-block;
        margin: 0 1.5em;
        padding: 0 .5em;
        background-color: #fff;
        text-align: left; } }

h4.tlrsalesform {
  text-align: center;
  background: #f35211;
  color: #fff;
  padding: 10px;
  margin-top: 10px;
  margin-bottom: 10px;
  margin-left: -40px;
  margin-right: -40px; }
  @media only screen and (min-width: 992px) {
    h4.tlrsalesform {
      margin: 20px 0 10px 0; } }

h4.tlosalesform {
  margin-bottom: 10px;
  margin-top: 50px;
  text-align: center;
  background: #aaa;
  color: #fff;
  padding: 10px;
  margin-left: -40px;
  margin-right: -40px; }
  @media only screen and (min-width: 992px) {
    h4.tlosalesform {
      margin: 20px 0 10px 0; } }

h4.tlosalesform-fl {
  background: #1376d1; }

.productListicon {
  margin: 20px; }
  @media only screen and (min-width: 992px) {
    .productListicon {
      text-align: right;
      margin: 0; } }
  .productListicon span.free {
    background: #aa1926;
    color: #fff;
    padding: 4px;
    margin: 10px; }
  .productListicon span.off {
    background: #19aa2c;
    color: #fff;
    padding: 4px;
    /* margin: 10px 10px 0; */ }

.productList-r {
  margin: 5px; }
  .productList-r .productListItem {
    position: relative;
    margin: 0 10px; }
    @media only screen and (min-width: 992px) {
      .productList-r .productListItem {
        margin: 0; } }
    .productList-r .productListItem.recommend:before {
      content: '';
      display: block;
      position: absolute;
      width: 150px;
      height: 150px;
      top: -5px;
      left: -5px;
      background: transparent url(/img/product/ribbon.png) no-repeat 0 0;
      z-index: 100; }
    .productList-r .productListItem.recommend:after {
      content: 'おすすめ商品';
      position: absolute;
      font-size: 20px;
      font-size: 2rem;
      font-weight: bold;
      line-height: 1;
      color: #fff;
      width: 212px;
      -webkit-transform: rotate(-45deg);
      transform: rotate(-45deg);
      z-index: 101;
      top: 10px;
      left: -20px; }
    .productList-r .productListItem.exchange:before {
      content: '';
      display: block;
      position: absolute;
      width: 150px;
      height: 150px;
      top: -5px;
      left: -5px;
      background: transparent url(/img/product/ribbonExchange.png) no-repeat 0 0;
      z-index: 100; }
    .productList-r .productListItem.exchange:after {
      content: '詰替商品';
      position: absolute;
      font-size: 20px;
      font-size: 2rem;
      font-weight: bold;
      line-height: 1;
      color: #fff;
      width: 212px;
      -webkit-transform: rotate(-45deg);
      transform: rotate(-45deg);
      z-index: 101;
      top: -5px;
      left: -8px; }
    .productList-r .productListItem.subscription:before {
      content: '';
      display: block;
      position: absolute;
      width: 150px;
      height: 150px;
      top: -5px;
      left: -5px;
      background: transparent url(/img/product/ribbonSubscription.png) no-repeat 0 0;
      z-index: 100; }
    .productList-r .productListItem.subscription:after {
      content: '定期セット';
      position: absolute;
      font-size: 20px;
      font-size: 2rem;
      font-weight: bold;
      line-height: 1;
      color: #fff;
      width: 212px;
      -webkit-transform: rotate(-45deg);
      transform: rotate(-45deg);
      z-index: 101;
      top: 0px;
      left: -10px; }
    .productList-r .productListItem.subscription.exchange:after {
      content: '定期詰替セット';
      position: absolute;
      font-size: 20px;
      font-size: 2rem;
      font-weight: bold;
      line-height: 1;
      color: #fff;
      width: 212px;
      -webkit-transform: rotate(-45deg);
      transform: rotate(-45deg);
      z-index: 101;
      top: 14px;
      left: -23px; }
    .productList-r .productListItemPanel {
      border: 1px solid #ddd;
      -webkit-box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.2);
      box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.2);
      margin-bottom: 30px;
      background: #fff;
      padding: 20px 10px; }
      .productList-r .productListItemPanel:before, .productList-r .productListItemPanel:after {
        content: "";
        display: table; }
      .productList-r .productListItemPanel:after {
        clear: both; }
      .productList-r .productListItemPanel {
        *zoom: 1; }
      @media only screen and (min-width: 992px) {
        .productList-r .productListItemPanel {
          padding: 30px 20px; } }
    .productList-r .productListItemPanel-r {
      margin-bottom: 30px;
      background: #fff;
      padding: 20px 10px; }
      .productList-r .productListItemPanel-r:before, .productList-r .productListItemPanel-r:after {
        content: "";
        display: table; }
      .productList-r .productListItemPanel-r:after {
        clear: both; }
      .productList-r .productListItemPanel-r {
        *zoom: 1; }
      @media only screen and (min-width: 992px) {
        .productList-r .productListItemPanel-r {
          padding: 20px; } }
    .productList-r .productListItemPhoto {
      margin: 0 auto; }
    .productList-r .productListItemNumber:before {
      content: '（商品番号: '; }
    .productList-r .productListItemNumber:after {
      content: '）'; }
    .productList-r .productListItemNumber-en:before {
      content: '(Stock number : '; }
    .productList-r .productListItemNumber-en:after {
      content: ' )'; }
    .productList-r .productListItemNumber-tw:before {
      content: '(產品編號： '; }
    .productList-r .productListItemNumber-tw:after {
      content: ' )'; }
    .productList-r .productListItemNumber-cn:before {
      content: '(产品编号：'; }
    .productList-r .productListItemNumber-cn:after {
      content: ' )'; }
    .productList-r .productListItemName {
      text-align: center;
      font-size: 16px;
      font-size: 1.6rem;
      margin-top: 5px;
      line-height: 1.4;
      border: 1px solid #999;
      padding: 10px 15px;
      background: #1376d1;
      color: #fff; }
      .productList-r .productListItemName strong {
        display: block;
        font-size: 18px;
        font-size: 1.8rem;
        letter-spacing: 1px; }
      @media only screen and (min-width: 768px) {
        .productList-r .productListItemName {
          text-align: left; } }
      @media only screen and (min-width: 1200px) {
        .productList-r .productListItemName {
          font-size: 20px;
          font-size: 2rem; }
          .productList-r .productListItemName strong {
            font-size: 34px;
            font-size: 3.4rem; } }
    .productList-r .productListItemDescription {
      font-size: 16px;
      font-size: 1.6rem;
      margin-top: 10px;
      padding-left: 15px;
      margin-bottom: 14px; }
      .productList-r .productListItemDescription span.attention {
        color: #AA1926;
        padding: 3px;
        margin-right: 3px;
        display: block; }
        @media only screen and (min-width: 768px) {
          .productList-r .productListItemDescription span.attention {
            display: inline; } }
    .productList-r .productListItemPrice {
      display: inline-block;
      margin-top: 5px;
      color: #AA1926;
      font-size: 18px;
      font-size: 1.8rem;
      font-weight: bold;
      padding-left: 15px; }
      .productList-r .productListItemPrice span {
        font-size: 1.3rem;
        display: block; }
      @media only screen and (min-width: 992px) {
        .productList-r .productListItemPrice {
          font-size: 24px;
          font-size: 2.4rem; }
          .productList-r .productListItemPrice span {
            padding-left: 10px;
            font-size: 1.8rem;
            display: inline-block; } }
    .productList-r .productListItemCourse {
      margin-top: 15px;
      display: inline-block;
      width: 100%;
      padding: 10px;
      text-align: center;
      background-color: #f37f50;
      color: #fff !important;
      border-radius: 4px;
      position: relative;
      text-transform: uppercase;
      -webkit-box-shadow: 0 6px #c7400a;
      box-shadow: 0 6px #c7400a; }
      @media only screen and (min-width: 992px) {
        .productList-r .productListItemCourse {
          font-size: 16px;
          font-size: 1.6rem;
          float: right;
          margin-top: 5px;
          background: none;
          -webkit-box-shadow: none;
          box-shadow: none;
          color: #f35211 !important;
          text-align: right;
          padding: 0;
          width: auto; } }
    .productList-r .productListItemDetail {
      margin-top: 15px;
      display: inline-block;
      width: 100%;
      padding: 10px;
      text-align: center;
      background-color: #1376d1;
      color: #fff !important;
      border-radius: 4px;
      position: relative;
      text-transform: uppercase;
      -webkit-box-shadow: 0 6px #0f5ca2;
      box-shadow: 0 6px #0f5ca2; }
      @media only screen and (min-width: 992px) {
        .productList-r .productListItemDetail {
          font-size: 18px;
          font-size: 1.8rem;
          float: right;
          background: none;
          -webkit-box-shadow: none;
          box-shadow: none;
          color: #1376d1 !important;
          text-align: right;
          padding: 0;
          width: auto; } }
      .productList-r .productListItemDetail:hover, .productList-r .productListItemDetail:active, .productList-r .productListItemDetail:focus {
        text-decoration: none;
        cursor: pointer; }
        @media only screen and (min-width: 992px) {
          .productList-r .productListItemDetail:hover, .productList-r .productListItemDetail:active, .productList-r .productListItemDetail:focus {
            text-decoration: underline; } }
    .productList-r .productListItemMembers {
      margin-top: 15px;
      display: inline-block;
      width: 100%;
      padding: 10px;
      text-align: center;
      background-color: #26BF78;
      color: #fff !important;
      border-radius: 4px;
      position: relative;
      text-transform: uppercase;
      -webkit-box-shadow: 0 6px #1e945d;
      box-shadow: 0 6px #1e945d; }
      @media only screen and (min-width: 992px) {
        .productList-r .productListItemMembers {
          font-size: 18px;
          font-size: 1.8rem;
          float: right;
          background: none;
          -webkit-box-shadow: none;
          box-shadow: none;
          color: #1376d1 !important;
          text-align: right;
          padding: 0;
          width: auto; } }
      .productList-r .productListItemMembers:hover, .productList-r .productListItemMembers:active, .productList-r .productListItemMembers:focus {
        text-decoration: none;
        cursor: pointer; }
        @media only screen and (min-width: 992px) {
          .productList-r .productListItemMembers:hover, .productList-r .productListItemMembers:active, .productList-r .productListItemMembers:focus {
            text-decoration: underline; } }

.lum-lightbox {
  z-index: 999; }

#productModal .modal-dialog {
  border-radius: 0; }
  @media only screen and (min-width: 768px) {
    #productModal .modal-dialog {
      width: 750px; } }
  @media only screen and (min-width: 992px) {
    #productModal .modal-dialog {
      width: 900px; } }
  #productModal .modal-dialog .modal-content {
    border-radius: 0; }
    #productModal .modal-dialog .modal-content .modal-header {
      background: #1376d1;
      color: #fff; }
      #productModal .modal-dialog .modal-content .modal-header .modal-title {
        font-size: 18px;
        font-size: 1.8rem;
        position: relative; }
        #productModal .modal-dialog .modal-content .modal-header .modal-title span {
          display: block; }
          #productModal .modal-dialog .modal-content .modal-header .modal-title span:first-child {
            margin-top: 20px; }
          @media only screen and (min-width: 768px) {
            #productModal .modal-dialog .modal-content .modal-header .modal-title span {
              display: inline-block; }
              #productModal .modal-dialog .modal-content .modal-header .modal-title span:first-child {
                margin-top: 0;
                font-size: 24px;
                font-size: 2.4rem; } }
      #productModal .modal-dialog .modal-content .modal-header .close {
        position: absolute;
        top: 10px;
        right: 10px;
        width: 24px;
        height: 24px;
        color: white;
        outline: 0;
        opacity: 1; }
        #productModal .modal-dialog .modal-content .modal-header .close span {
          font-size: 24px;
          font-size: 2.4rem; }
        @media only screen and (min-width: 992px) {
          #productModal .modal-dialog .modal-content .modal-header .close {
            top: 15px;
            right: 15px;
            width: 30px;
            height: 30px;
            font-size: 30px;
            font-size: 3rem; } }
        #productModal .modal-dialog .modal-content .modal-header .close:hover {
          opacity: 1; }
    #productModal .modal-dialog .modal-content .modal-body {
      padding-bottom: 30px; }
      @media only screen and (min-width: 992px) {
        #productModal .modal-dialog .modal-content .modal-body {
          padding-bottom: 60px; } }
      #productModal .modal-dialog .modal-content .modal-body .cf #productPhoto {
        text-align: center;
        max-width: 100%; }
        @media only screen and (min-width: 768px) {
          #productModal .modal-dialog .modal-content .modal-body .cf #productPhoto {
            float: left;
            margin-right: 20px; } }
      #productModal .modal-dialog .modal-content .modal-body .cf .luminous-box {
        width: 90%;
        margin: 0 auto;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
        #productModal .modal-dialog .modal-content .modal-body .cf .luminous-box a.luminous {
          width: 33%;
          padding: 2px; }
      #productModal .modal-dialog .modal-content .modal-body .titleLine {
        background: #1376d1;
        color: #fff;
        padding: 5px 25px;
        margin: 15px -15px 10px; }
        @media only screen and (min-width: 992px) {
          #productModal .modal-dialog .modal-content .modal-body .titleLine {
            margin: 30px 15px 20px; } }
      #productModal .modal-dialog .modal-content .modal-body #productCatch {
        margin-top: 20px;
        font-size: 16px;
        font-size: 1.6rem;
        color: #AA1926; }
        @media only screen and (min-width: 992px) {
          #productModal .modal-dialog .modal-content .modal-body #productCatch {
            margin-top: 0;
            font-size: 18px;
            font-size: 1.8rem; } }
      #productModal .modal-dialog .modal-content .modal-body #purchaseArea {
        border: 1px solid #999;
        background: #efefef;
        padding: 10px 15px;
        margin: 15px 0; }
        #productModal .modal-dialog .modal-content .modal-body #purchaseArea #productPrice,
        #productModal .modal-dialog .modal-content .modal-body #purchaseArea #productPrice2,
        #productModal .modal-dialog .modal-content .modal-body #purchaseArea #productPrice3,
        #productModal .modal-dialog .modal-content .modal-body #purchaseArea #productPrice4 {
          color: #AA1926;
          font-size: 16px;
          font-size: 1.6rem;
          font-weight: bold; }
          @media only screen and (min-width: 992px) {
            #productModal .modal-dialog .modal-content .modal-body #purchaseArea #productPrice,
            #productModal .modal-dialog .modal-content .modal-body #purchaseArea #productPrice2,
            #productModal .modal-dialog .modal-content .modal-body #purchaseArea #productPrice3,
            #productModal .modal-dialog .modal-content .modal-body #purchaseArea #productPrice4 {
              font-size: 24px;
              font-size: 2.4rem; } }
          #productModal .modal-dialog .modal-content .modal-body #purchaseArea #productPrice:before,
          #productModal .modal-dialog .modal-content .modal-body #purchaseArea #productPrice2:before,
          #productModal .modal-dialog .modal-content .modal-body #purchaseArea #productPrice3:before,
          #productModal .modal-dialog .modal-content .modal-body #purchaseArea #productPrice4:before {
            content: "商品価格: "; }
          #productModal .modal-dialog .modal-content .modal-body #purchaseArea #productPrice:after,
          #productModal .modal-dialog .modal-content .modal-body #purchaseArea #productPrice2:after,
          #productModal .modal-dialog .modal-content .modal-body #purchaseArea #productPrice3:after,
          #productModal .modal-dialog .modal-content .modal-body #purchaseArea #productPrice4:after {
            content: " 円"; }
        #productModal .modal-dialog .modal-content .modal-body #purchaseArea .productPrice3-en:before {
          content: "Price : " !important; }
        #productModal .modal-dialog .modal-content .modal-body #purchaseArea .productPrice3-en:after {
          content: " yen" !important; }
        #productModal .modal-dialog .modal-content .modal-body #purchaseArea .productPrice3-tw:before {
          content: "產品價格：" !important; }
        #productModal .modal-dialog .modal-content .modal-body #purchaseArea .productPrice3-tw:after {
          content: " 日元" !important; }
        #productModal .modal-dialog .modal-content .modal-body #purchaseArea .productPrice3-cn:before {
          content: "产品价格：" !important; }
        #productModal .modal-dialog .modal-content .modal-body #purchaseArea .productPrice3-cn:after {
          content: " 日元" !important; }
        #productModal .modal-dialog .modal-content .modal-body #purchaseArea #productPrice,
        #productModal .modal-dialog .modal-content .modal-body #purchaseArea #productPrice2 {
          font-size: 13px;
          font-size: 1.3rem; }
          @media only screen and (min-width: 992px) {
            #productModal .modal-dialog .modal-content .modal-body #purchaseArea #productPrice,
            #productModal .modal-dialog .modal-content .modal-body #purchaseArea #productPrice2 {
              font-size: 18px;
              font-size: 1.8rem; } }
          #productModal .modal-dialog .modal-content .modal-body #purchaseArea #productPrice:before,
          #productModal .modal-dialog .modal-content .modal-body #purchaseArea #productPrice2:before {
            content: " (税込: "; }
          #productModal .modal-dialog .modal-content .modal-body #purchaseArea #productPrice:after,
          #productModal .modal-dialog .modal-content .modal-body #purchaseArea #productPrice2:after {
            content: " 円)"; }
        #productModal .modal-dialog .modal-content .modal-body #purchaseArea #productPrice4:before {
          content: "2回目以降価格: "; }
        #productModal .modal-dialog .modal-content .modal-body #purchaseArea form#cartForm {
          margin-top: 10px;
          font-size: 16px;
          font-size: 1.6rem; }
          #productModal .modal-dialog .modal-content .modal-body #purchaseArea form#cartForm > div:before, #productModal .modal-dialog .modal-content .modal-body #purchaseArea form#cartForm > div:after {
            content: "";
            display: table; }
          #productModal .modal-dialog .modal-content .modal-body #purchaseArea form#cartForm > div:after {
            clear: both; }
          #productModal .modal-dialog .modal-content .modal-body #purchaseArea form#cartForm > div {
            *zoom: 1; }
          #productModal .modal-dialog .modal-content .modal-body #purchaseArea form#cartForm > div select.form-control {
            display: inline-block;
            width: auto;
            margin: 0 8px; }
          #productModal .modal-dialog .modal-content .modal-body #purchaseArea form#cartForm > div span {
            display: inline-block;
            margin-top: 2px; }
          @media only screen and (min-width: 992px) {
            #productModal .modal-dialog .modal-content .modal-body #purchaseArea form#cartForm {
              font-size: 20px;
              font-size: 2rem; }
              #productModal .modal-dialog .modal-content .modal-body #purchaseArea form#cartForm > div span {
                margin-top: 6px; } }
          #productModal .modal-dialog .modal-content .modal-body #purchaseArea form#cartForm .btnPurchase {
            display: block;
            margin: 0;
            float: right; }
            @media only screen and (min-width: 768px) {
              #productModal .modal-dialog .modal-content .modal-body #purchaseArea form#cartForm .btnPurchase {
                margin-top: 10px; } }
            #productModal .modal-dialog .modal-content .modal-body #purchaseArea form#cartForm .btnPurchase a.btnCustom {
              margin: 0 0 10px 0;
              text-align: center;
              padding: 8px 12px;
              background: #fba848;
              color: #fff !important;
              -webkit-box-shadow: 0 6px #d15428;
              box-shadow: 0 6px #d15428;
              -webkit-transition: none;
              transition: none;
              border-radius: 5px;
              letter-spacing: 2px; }
              #productModal .modal-dialog .modal-content .modal-body #purchaseArea form#cartForm .btnPurchase a.btnCustom:hover {
                -webkit-box-shadow: 0 4px #d15428;
                box-shadow: 0 4px #d15428;
                top: 2px;
                background: #fa9016; }
              #productModal .modal-dialog .modal-content .modal-body #purchaseArea form#cartForm .btnPurchase a.btnCustom:active {
                -webkit-box-shadow: 0 0 #d15428;
                box-shadow: 0 0 #d15428;
                top: 6px; }
              #productModal .modal-dialog .modal-content .modal-body #purchaseArea form#cartForm .btnPurchase a.btnCustom:last-child {
                margin-top: 20px; }
                @media only screen and (min-width: 768px) {
                  #productModal .modal-dialog .modal-content .modal-body #purchaseArea form#cartForm .btnPurchase a.btnCustom:last-child {
                    margin-top: 0; } }
      #productModal .modal-dialog .modal-content .modal-body .flowList {
        margin: 30px 0; }
        #productModal .modal-dialog .modal-content .modal-body .flowList:before, #productModal .modal-dialog .modal-content .modal-body .flowList:after {
          content: "";
          display: table; }
        #productModal .modal-dialog .modal-content .modal-body .flowList:after {
          clear: both; }
        #productModal .modal-dialog .modal-content .modal-body .flowList {
          *zoom: 1; }
        #productModal .modal-dialog .modal-content .modal-body .flowList .step {
          position: relative;
          text-align: center;
          font-size: 16px;
          font-size: 1.6rem; }
          #productModal .modal-dialog .modal-content .modal-body .flowList .step span {
            background: #f96117;
            color: #fff;
            display: inline-block;
            font-size: 10px;
            font-size: 1rem;
            width: 60px;
            height: 60px;
            vertical-align: middle;
            text-align: center;
            border-radius: 50%;
            padding-top: 22px;
            line-height: 1;
            -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.2);
            box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.2);
            position: absolute;
            top: -10px;
            left: 50%;
            z-index: 100;
            margin-left: -170px; }
            @media only screen and (min-width: 768px) {
              #productModal .modal-dialog .modal-content .modal-body .flowList .step span {
                margin-left: 0;
                left: 0px; } }
          #productModal .modal-dialog .modal-content .modal-body .flowList .step img {
            display: inline-block;
            max-width: 100%; }
          #productModal .modal-dialog .modal-content .modal-body .flowList .step .flowText {
            text-align: left;
            width: 320px;
            max-width: 100%;
            margin: 10px auto 30px; }
            @media only screen and (min-width: 992px) {
              #productModal .modal-dialog .modal-content .modal-body .flowList .step .flowText {
                margin-bottom: 0; } }
          #productModal .modal-dialog .modal-content .modal-body .flowList .step .flowText2 {
            text-align: left;
            width: 320px;
            max-width: 100%;
            margin: 10px auto 30px; }
            @media only screen and (min-width: 992px) {
              #productModal .modal-dialog .modal-content .modal-body .flowList .step .flowText2 {
                margin-bottom: 0;
                width: auto; } }
          @media only screen and (min-width: 768px) {
            #productModal .modal-dialog .modal-content .modal-body .flowList .step:nth-child(3) .flowText {
              margin-bottom: 0; }
            #productModal .modal-dialog .modal-content .modal-body .flowList .step:last-child .flowText {
              margin-bottom: 0; } }
        @media only screen and (min-width: 992px) {
          #productModal .modal-dialog .modal-content .modal-body .flowList {
            margin-left: 10px;
            font-size: 16px;
            font-size: 1.6rem; } }
        #productModal .modal-dialog .modal-content .modal-body .flowList#flowList2 {
          display: none; }
      #productModal .modal-dialog .modal-content .modal-body #productSet ul {
        list-style-type: disc;
        padding-left: 25px; }
        @media only screen and (min-width: 992px) {
          #productModal .modal-dialog .modal-content .modal-body #productSet ul {
            font-size: 16px;
            font-size: 1.6rem; } }
      #productModal .modal-dialog .modal-content .modal-body #productSize > ul:before, #productModal .modal-dialog .modal-content .modal-body #productSize > ul:after {
        content: "";
        display: table; }
      #productModal .modal-dialog .modal-content .modal-body #productSize > ul:after {
        clear: both; }
      #productModal .modal-dialog .modal-content .modal-body #productSize > ul {
        *zoom: 1; }
      #productModal .modal-dialog .modal-content .modal-body #productSize > ul > li {
        margin-bottom: 10px; }
        #productModal .modal-dialog .modal-content .modal-body #productSize > ul > li:last-child {
          margin-bottom: 0; }
        @media only screen and (min-width: 768px) {
          #productModal .modal-dialog .modal-content .modal-body #productSize > ul > li {
            float: left;
            width: 48%; }
            #productModal .modal-dialog .modal-content .modal-body #productSize > ul > li:nth-child(even) {
              float: right; } }
        @media only screen and (min-width: 992px) {
          #productModal .modal-dialog .modal-content .modal-body #productSize > ul > li {
            float: left;
            width: 48%;
            font-size: 16px;
            font-size: 1.6rem; }
            #productModal .modal-dialog .modal-content .modal-body #productSize > ul > li:nth-child(even) {
              float: right; } }
        #productModal .modal-dialog .modal-content .modal-body #productSize > ul > li p {
          font-size: 15px;
          font-size: 1.5rem;
          font-weight: bold;
          margin-bottom: 6px; }
          @media only screen and (min-width: 992px) {
            #productModal .modal-dialog .modal-content .modal-body #productSize > ul > li p {
              font-size: 16px;
              font-size: 1.6rem; } }
        #productModal .modal-dialog .modal-content .modal-body #productSize > ul > li ul {
          list-style: disc;
          padding-left: 25px; }
          #productModal .modal-dialog .modal-content .modal-body #productSize > ul > li ul li {
            font-size: 13px;
            font-size: 1.3rem; }
            @media only screen and (min-width: 992px) {
              #productModal .modal-dialog .modal-content .modal-body #productSize > ul > li ul li {
                font-size: 14px;
                font-size: 1.4rem; } }
      #productModal .modal-dialog .modal-content .modal-body #productAdditionalInfo {
        padding: 0; }
        #productModal .modal-dialog .modal-content .modal-body #productAdditionalInfo .innerText {
          padding: 0 40px; }
      @media only screen and (min-width: 992px) {
        #productModal .modal-dialog .modal-content .modal-body > div {
          padding: 0 40px; } }
      #productModal .modal-dialog .modal-content .modal-body #upcellArea:before, #productModal .modal-dialog .modal-content .modal-body #upcellArea:after,
      #productModal .modal-dialog .modal-content .modal-body #exchangeArea:before,
      #productModal .modal-dialog .modal-content .modal-body #exchangeArea:after {
        content: "";
        display: table; }
      #productModal .modal-dialog .modal-content .modal-body #upcellArea:after,
      #productModal .modal-dialog .modal-content .modal-body #exchangeArea:after {
        clear: both; }
      #productModal .modal-dialog .modal-content .modal-body #upcellArea,
      #productModal .modal-dialog .modal-content .modal-body #exchangeArea {
        *zoom: 1; }
      @media only screen and (min-width: 992px) {
        #productModal .modal-dialog .modal-content .modal-body #upcellArea,
        #productModal .modal-dialog .modal-content .modal-body #exchangeArea {
          padding: 0; } }
      #productModal .modal-dialog .modal-content .modal-body #upcellArea .btnPurchase,
      #productModal .modal-dialog .modal-content .modal-body #exchangeArea .btnPurchase {
        display: inline-block;
        margin: 0; }
        #productModal .modal-dialog .modal-content .modal-body #upcellArea .btnPurchase a.btnCustom,
        #productModal .modal-dialog .modal-content .modal-body #exchangeArea .btnPurchase a.btnCustom {
          margin: 0 0 10px 0;
          text-align: center;
          padding: 8px 12px;
          background: #fba848;
          color: #fff !important;
          -webkit-box-shadow: 0 6px #d15428;
          box-shadow: 0 6px #d15428;
          -webkit-transition: none;
          transition: none;
          border-radius: 5px;
          letter-spacing: 2px; }
          #productModal .modal-dialog .modal-content .modal-body #upcellArea .btnPurchase a.btnCustom:hover,
          #productModal .modal-dialog .modal-content .modal-body #exchangeArea .btnPurchase a.btnCustom:hover {
            -webkit-box-shadow: 0 4px #d15428;
            box-shadow: 0 4px #d15428;
            top: 2px;
            background: #fa9016; }
          #productModal .modal-dialog .modal-content .modal-body #upcellArea .btnPurchase a.btnCustom:active,
          #productModal .modal-dialog .modal-content .modal-body #exchangeArea .btnPurchase a.btnCustom:active {
            -webkit-box-shadow: 0 0 #d15428;
            box-shadow: 0 0 #d15428;
            top: 6px; }
          #productModal .modal-dialog .modal-content .modal-body #upcellArea .btnPurchase a.btnCustom:last-child,
          #productModal .modal-dialog .modal-content .modal-body #exchangeArea .btnPurchase a.btnCustom:last-child {
            margin-top: 20px; }
            @media only screen and (min-width: 768px) {
              #productModal .modal-dialog .modal-content .modal-body #upcellArea .btnPurchase a.btnCustom:last-child,
              #productModal .modal-dialog .modal-content .modal-body #exchangeArea .btnPurchase a.btnCustom:last-child {
                margin-top: 0; } }
      #productModal .modal-dialog .modal-content .modal-body #upcellArea .productInner,
      #productModal .modal-dialog .modal-content .modal-body #exchangeArea .productInner {
        padding: 0;
        border: none;
        position: relative; }
        #productModal .modal-dialog .modal-content .modal-body #upcellArea .productInner:before, #productModal .modal-dialog .modal-content .modal-body #upcellArea .productInner:after,
        #productModal .modal-dialog .modal-content .modal-body #exchangeArea .productInner:before,
        #productModal .modal-dialog .modal-content .modal-body #exchangeArea .productInner:after {
          content: "";
          display: table; }
        #productModal .modal-dialog .modal-content .modal-body #upcellArea .productInner:after,
        #productModal .modal-dialog .modal-content .modal-body #exchangeArea .productInner:after {
          clear: both; }
        #productModal .modal-dialog .modal-content .modal-body #upcellArea .productInner,
        #productModal .modal-dialog .modal-content .modal-body #exchangeArea .productInner {
          *zoom: 1; }
        #productModal .modal-dialog .modal-content .modal-body #upcellArea .productInner .nameInner,
        #productModal .modal-dialog .modal-content .modal-body #exchangeArea .productInner .nameInner {
          font-size: 16px;
          font-size: 1.6rem;
          margin-top: 10px; }
        #productModal .modal-dialog .modal-content .modal-body #upcellArea .productInner .priceInner,
        #productModal .modal-dialog .modal-content .modal-body #exchangeArea .productInner .priceInner {
          color: #AA1926;
          font-size: 16px;
          font-size: 1.6rem;
          font-weight: bold;
          margin-top: 10px; }
          #productModal .modal-dialog .modal-content .modal-body #upcellArea .productInner .priceInner:before,
          #productModal .modal-dialog .modal-content .modal-body #exchangeArea .productInner .priceInner:before {
            content: "商品価格: "; }
          #productModal .modal-dialog .modal-content .modal-body #upcellArea .productInner .priceInner.firstTime:before,
          #productModal .modal-dialog .modal-content .modal-body #exchangeArea .productInner .priceInner.firstTime:before {
            content: "商品価格（初回）: "; }
          #productModal .modal-dialog .modal-content .modal-body #upcellArea .productInner .priceInner.secondTime:before,
          #productModal .modal-dialog .modal-content .modal-body #exchangeArea .productInner .priceInner.secondTime:before {
            content: "商品価格（2回目以降）: "; }
          #productModal .modal-dialog .modal-content .modal-body #upcellArea .productInner .priceInner .noTaxPrice:after,
          #productModal .modal-dialog .modal-content .modal-body #exchangeArea .productInner .priceInner .noTaxPrice:after {
            content: " 円";
            font-size: 16px;
            font-size: 1.6rem; }
          #productModal .modal-dialog .modal-content .modal-body #upcellArea .productInner .priceInner .taxPrice,
          #productModal .modal-dialog .modal-content .modal-body #exchangeArea .productInner .priceInner .taxPrice {
            font-size: 13px;
            font-size: 1.3rem; }
            @media only screen and (min-width: 992px) {
              #productModal .modal-dialog .modal-content .modal-body #upcellArea .productInner .priceInner .taxPrice,
              #productModal .modal-dialog .modal-content .modal-body #exchangeArea .productInner .priceInner .taxPrice {
                font-size: 16px;
                font-size: 1.6rem; } }
            #productModal .modal-dialog .modal-content .modal-body #upcellArea .productInner .priceInner .taxPrice:before,
            #productModal .modal-dialog .modal-content .modal-body #exchangeArea .productInner .priceInner .taxPrice:before {
              content: " (税込: "; }
            #productModal .modal-dialog .modal-content .modal-body #upcellArea .productInner .priceInner .taxPrice:after,
            #productModal .modal-dialog .modal-content .modal-body #exchangeArea .productInner .priceInner .taxPrice:after {
              content: " 円)"; }
        #productModal .modal-dialog .modal-content .modal-body #upcellArea .productInner .priceInner-en:before,
        #productModal .modal-dialog .modal-content .modal-body #exchangeArea .productInner .priceInner-en:before {
          content: "Price : "; }
        #productModal .modal-dialog .modal-content .modal-body #upcellArea .productInner .priceInner-en:after,
        #productModal .modal-dialog .modal-content .modal-body #exchangeArea .productInner .priceInner-en:after {
          content: " yen"; }
        #productModal .modal-dialog .modal-content .modal-body #upcellArea .productInner .priceInner-tw:before,
        #productModal .modal-dialog .modal-content .modal-body #exchangeArea .productInner .priceInner-tw:before {
          content: "產品價格："; }
        #productModal .modal-dialog .modal-content .modal-body #upcellArea .productInner .priceInner-tw:after,
        #productModal .modal-dialog .modal-content .modal-body #exchangeArea .productInner .priceInner-tw:after {
          content: " 日元"; }
        #productModal .modal-dialog .modal-content .modal-body #upcellArea .productInner .priceInner-cn:before,
        #productModal .modal-dialog .modal-content .modal-body #exchangeArea .productInner .priceInner-cn:before {
          content: "产品价格："; }
        #productModal .modal-dialog .modal-content .modal-body #upcellArea .productInner .priceInner-cn:after,
        #productModal .modal-dialog .modal-content .modal-body #exchangeArea .productInner .priceInner-cn:after {
          content: " 日元"; }
        #productModal .modal-dialog .modal-content .modal-body #upcellArea .productInner .btnPurchase,
        #productModal .modal-dialog .modal-content .modal-body #exchangeArea .productInner .btnPurchase {
          text-align: center; }
        @media only screen and (min-width: 992px) {
          #productModal .modal-dialog .modal-content .modal-body #upcellArea .productInner,
          #productModal .modal-dialog .modal-content .modal-body #exchangeArea .productInner {
            padding: 0 40px; }
            #productModal .modal-dialog .modal-content .modal-body #upcellArea .productInner .nameInner,
            #productModal .modal-dialog .modal-content .modal-body #exchangeArea .productInner .nameInner {
              font-size: 20px;
              font-size: 2rem; }
            #productModal .modal-dialog .modal-content .modal-body #upcellArea .productInner .priceInner,
            #productModal .modal-dialog .modal-content .modal-body #exchangeArea .productInner .priceInner {
              font-size: 20px;
              font-size: 2rem; }
            #productModal .modal-dialog .modal-content .modal-body #upcellArea .productInner .btnPurchase,
            #productModal .modal-dialog .modal-content .modal-body #exchangeArea .productInner .btnPurchase {
              position: absolute;
              right: 40px;
              bottom: 0; } }
      #productModal .modal-dialog .modal-content .modal-body #upcellArea .subscriptionDesc {
        padding: 0;
        font-size: 16px;
        font-size: 1.6rem; }
        @media only screen and (min-width: 992px) {
          #productModal .modal-dialog .modal-content .modal-body #upcellArea .subscriptionDesc {
            padding: 0 40px; } }
      #productModal .modal-dialog .modal-content .modal-body #upcellArea .meritList {
        display: inline-block;
        background: #b7daf9;
        color: #AA1926;
        margin: 0;
        border: apx solid #ccc;
        padding: 10px;
        font-size: 16px;
        font-size: 1.6rem;
        font-weight: bold;
        margin-top: 10px; }
        @media only screen and (min-width: 992px) {
          #productModal .modal-dialog .modal-content .modal-body #upcellArea .meritList {
            margin: 10px 40px;
            padding: 10px 20px;
            font-size: 18px;
            font-size: 1.8rem; } }

.lum-lightbox {
  z-index: 3000; }

@media screen and (max-width: 460px) {
  .lum-lightbox-inner img {
    max-width: 85vw !important;
    /* 軽くスワイプで左端から右端まで動かせる量 */
    max-height: 85vh !important;
    /* 上下に適度に余白 */ } }

.youtube {
  position: relative;
  width: 100%;
  margin: 20px auto;
  padding-top: 56.25%;
  overflow: hidden; }
  .youtube iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important; }

@media only screen and (min-width: 992px) {
  .youtube.info {
    width: 60%;
    padding-top: 42%; } }

#items {
  max-width: 1170px;
  margin: 0 auto; }
  #items .item-dialog .item-content .item-header .item-title {
    font-size: 18px;
    font-size: 1.8rem;
    position: relative; }
    #items .item-dialog .item-content .item-header .item-title span {
      display: block; }
      #items .item-dialog .item-content .item-header .item-title span:first-child {
        margin-top: 20px; }
      @media only screen and (min-width: 768px) {
        #items .item-dialog .item-content .item-header .item-title span {
          display: inline-block; }
          #items .item-dialog .item-content .item-header .item-title span:first-child {
            margin-top: 0;
            font-size: 24px;
            font-size: 2.4rem; } }
  #items .item-dialog .item-content .item-header .close {
    position: absolute;
    top: 10px;
    right: 10px;
    width: 24px;
    height: 24px;
    color: white;
    outline: 0;
    opacity: 1; }
    #items .item-dialog .item-content .item-header .close span {
      font-size: 24px;
      font-size: 2.4rem; }
    @media only screen and (min-width: 992px) {
      #items .item-dialog .item-content .item-header .close {
        top: 15px;
        right: 15px;
        width: 30px;
        height: 30px;
        font-size: 30px;
        font-size: 3rem; } }
    #items .item-dialog .item-content .item-header .close:hover {
      opacity: 1; }
  #items .item-dialog .item-content .item-body {
    padding-bottom: 30px; }
    @media only screen and (min-width: 992px) {
      #items .item-dialog .item-content .item-body {
        padding-bottom: 60px; } }
    #items .item-dialog .item-content .item-body .productListItemName {
      font-size: 2.4rem;
      margin: 30px 0 20px; }
      #items .item-dialog .item-content .item-body .productListItemName span {
        font-size: 1.8rem; }
    #items .item-dialog .item-content .item-body .productSet ul {
      list-style-type: disc;
      padding-left: 25px; }
      @media only screen and (min-width: 992px) {
        #items .item-dialog .item-content .item-body .productSet ul {
          font-size: 16px;
          font-size: 1.6rem; } }
    #items .item-dialog .item-content .item-body .cf ul {
      list-style-type: disc;
      padding-left: 25px; }
      @media only screen and (min-width: 992px) {
        #items .item-dialog .item-content .item-body .cf ul {
          font-size: 16px;
          font-size: 1.6rem; } }
    #items .item-dialog .item-content .item-body .cf .productListItemDescription {
      padding-left: 0; }
    #items .item-dialog .item-content .item-body .cf #productPhoto {
      text-align: center;
      max-width: 100%; }
      @media only screen and (min-width: 768px) {
        #items .item-dialog .item-content .item-body .cf #productPhoto {
          float: left;
          margin-right: 20px; } }
    #items .item-dialog .item-content .item-body .cf .luminous-box {
      width: 90%;
      margin: 0 auto;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
      #items .item-dialog .item-content .item-body .cf .luminous-box a.luminous {
        width: 33%;
        padding: 2px; }
    #items .item-dialog .item-content .item-body .cf .titleLine {
      background: #1376d1;
      color: #fff;
      padding: 5px 25px;
      margin: 15px -15px 10px; }
      @media only screen and (min-width: 992px) {
        #items .item-dialog .item-content .item-body .cf .titleLine {
          margin: 30px 15px 20px; } }
    #items .item-dialog .item-content .item-body .cf #productCatch {
      margin: 20px 0;
      background-color: #efefef;
      padding: 10px 15px;
      font-size: 16px;
      font-size: 1.6rem;
      color: #AA1926; }
      @media only screen and (min-width: 992px) {
        #items .item-dialog .item-content .item-body .cf #productCatch {
          font-size: 18px;
          font-size: 1.8rem; } }
    #items .item-dialog .item-content .item-body .cf #purchaseArea {
      border: 1px solid #999;
      background: #efefef;
      padding: 10px 15px;
      margin: 15px 0; }
      #items .item-dialog .item-content .item-body .cf #purchaseArea #productPrice,
      #items .item-dialog .item-content .item-body .cf #purchaseArea #productPrice2,
      #items .item-dialog .item-content .item-body .cf #purchaseArea #productPrice3,
      #items .item-dialog .item-content .item-body .cf #purchaseArea #productPrice4 {
        color: #AA1926;
        font-size: 16px;
        font-size: 1.6rem;
        font-weight: bold; }
        @media only screen and (min-width: 992px) {
          #items .item-dialog .item-content .item-body .cf #purchaseArea #productPrice,
          #items .item-dialog .item-content .item-body .cf #purchaseArea #productPrice2,
          #items .item-dialog .item-content .item-body .cf #purchaseArea #productPrice3,
          #items .item-dialog .item-content .item-body .cf #purchaseArea #productPrice4 {
            font-size: 24px;
            font-size: 2.4rem; } }
        #items .item-dialog .item-content .item-body .cf #purchaseArea #productPrice:before,
        #items .item-dialog .item-content .item-body .cf #purchaseArea #productPrice2:before,
        #items .item-dialog .item-content .item-body .cf #purchaseArea #productPrice3:before,
        #items .item-dialog .item-content .item-body .cf #purchaseArea #productPrice4:before {
          content: "商品価格: "; }
        #items .item-dialog .item-content .item-body .cf #purchaseArea #productPrice:after,
        #items .item-dialog .item-content .item-body .cf #purchaseArea #productPrice2:after,
        #items .item-dialog .item-content .item-body .cf #purchaseArea #productPrice3:after,
        #items .item-dialog .item-content .item-body .cf #purchaseArea #productPrice4:after {
          content: " 円"; }
      #items .item-dialog .item-content .item-body .cf #purchaseArea .productPrice3-en:before {
        content: "Price : " !important; }
      #items .item-dialog .item-content .item-body .cf #purchaseArea .productPrice3-en:after {
        content: " yen" !important; }
      #items .item-dialog .item-content .item-body .cf #purchaseArea .productPrice3-tw:before {
        content: "產品價格：" !important; }
      #items .item-dialog .item-content .item-body .cf #purchaseArea .productPrice3-tw:after {
        content: " 日元" !important; }
      #items .item-dialog .item-content .item-body .cf #purchaseArea .productPrice3-cn:before {
        content: "产品价格：" !important; }
      #items .item-dialog .item-content .item-body .cf #purchaseArea .productPrice3-cn:after {
        content: " 日元" !important; }
      #items .item-dialog .item-content .item-body .cf #purchaseArea #productPrice,
      #items .item-dialog .item-content .item-body .cf #purchaseArea #productPrice2 {
        font-size: 13px;
        font-size: 1.3rem; }
        @media only screen and (min-width: 992px) {
          #items .item-dialog .item-content .item-body .cf #purchaseArea #productPrice,
          #items .item-dialog .item-content .item-body .cf #purchaseArea #productPrice2 {
            font-size: 18px;
            font-size: 1.8rem; } }
        #items .item-dialog .item-content .item-body .cf #purchaseArea #productPrice:before,
        #items .item-dialog .item-content .item-body .cf #purchaseArea #productPrice2:before {
          content: " (税込: "; }
        #items .item-dialog .item-content .item-body .cf #purchaseArea #productPrice:after,
        #items .item-dialog .item-content .item-body .cf #purchaseArea #productPrice2:after {
          content: " 円)"; }
      #items .item-dialog .item-content .item-body .cf #purchaseArea #productPrice4:before {
        content: "2回目以降価格: "; }
      #items .item-dialog .item-content .item-body .cf #purchaseArea form#cartForm {
        margin-top: 10px;
        font-size: 16px;
        font-size: 1.6rem; }
        #items .item-dialog .item-content .item-body .cf #purchaseArea form#cartForm > div:before, #items .item-dialog .item-content .item-body .cf #purchaseArea form#cartForm > div:after {
          content: "";
          display: table; }
        #items .item-dialog .item-content .item-body .cf #purchaseArea form#cartForm > div:after {
          clear: both; }
        #items .item-dialog .item-content .item-body .cf #purchaseArea form#cartForm > div {
          *zoom: 1; }
        #items .item-dialog .item-content .item-body .cf #purchaseArea form#cartForm > div select.form-control {
          display: inline-block;
          width: auto;
          margin: 0 8px; }
        #items .item-dialog .item-content .item-body .cf #purchaseArea form#cartForm > div span {
          display: inline-block;
          margin-top: 2px; }
        @media only screen and (min-width: 992px) {
          #items .item-dialog .item-content .item-body .cf #purchaseArea form#cartForm {
            font-size: 20px;
            font-size: 2rem; }
            #items .item-dialog .item-content .item-body .cf #purchaseArea form#cartForm > div span {
              margin-top: 6px; } }
        #items .item-dialog .item-content .item-body .cf #purchaseArea form#cartForm .btnPurchase {
          display: block;
          margin: 0;
          float: right; }
          @media only screen and (min-width: 768px) {
            #items .item-dialog .item-content .item-body .cf #purchaseArea form#cartForm .btnPurchase {
              margin-top: 10px; } }
          #items .item-dialog .item-content .item-body .cf #purchaseArea form#cartForm .btnPurchase a.btnCustom {
            margin: 0 0 10px 0;
            text-align: center;
            padding: 8px 12px;
            background: #fba848;
            color: #fff !important;
            -webkit-box-shadow: 0 6px #d15428;
            box-shadow: 0 6px #d15428;
            -webkit-transition: none;
            transition: none;
            border-radius: 5px;
            letter-spacing: 2px; }
            #items .item-dialog .item-content .item-body .cf #purchaseArea form#cartForm .btnPurchase a.btnCustom:hover {
              -webkit-box-shadow: 0 4px #d15428;
              box-shadow: 0 4px #d15428;
              top: 2px;
              background: #fa9016; }
            #items .item-dialog .item-content .item-body .cf #purchaseArea form#cartForm .btnPurchase a.btnCustom:active {
              -webkit-box-shadow: 0 0 #d15428;
              box-shadow: 0 0 #d15428;
              top: 6px; }
            #items .item-dialog .item-content .item-body .cf #purchaseArea form#cartForm .btnPurchase a.btnCustom:last-child {
              margin-top: 20px; }
              @media only screen and (min-width: 768px) {
                #items .item-dialog .item-content .item-body .cf #purchaseArea form#cartForm .btnPurchase a.btnCustom:last-child {
                  margin-top: 0; } }
    #items .item-dialog .item-content .item-body .flowList {
      margin: 30px 0; }
      #items .item-dialog .item-content .item-body .flowList:before, #items .item-dialog .item-content .item-body .flowList:after {
        content: "";
        display: table; }
      #items .item-dialog .item-content .item-body .flowList:after {
        clear: both; }
      #items .item-dialog .item-content .item-body .flowList {
        *zoom: 1; }
      #items .item-dialog .item-content .item-body .flowList .step {
        position: relative;
        text-align: center;
        font-size: 16px;
        font-size: 1.6rem; }
        #items .item-dialog .item-content .item-body .flowList .step span {
          background: #f96117;
          color: #fff;
          display: inline-block;
          font-size: 10px;
          font-size: 1rem;
          width: 60px;
          height: 60px;
          vertical-align: middle;
          text-align: center;
          border-radius: 50%;
          padding-top: 22px;
          line-height: 1;
          -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.2);
          box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.2);
          position: absolute;
          top: -10px;
          left: 50%;
          z-index: 100;
          margin-left: -170px; }
          @media only screen and (min-width: 768px) {
            #items .item-dialog .item-content .item-body .flowList .step span {
              margin-left: 0;
              left: 0px; } }
        #items .item-dialog .item-content .item-body .flowList .step img {
          display: inline-block;
          max-width: 100%; }
        #items .item-dialog .item-content .item-body .flowList .step .flowText {
          text-align: left;
          width: 320px;
          max-width: 100%;
          margin: 10px auto 30px; }
          @media only screen and (min-width: 992px) {
            #items .item-dialog .item-content .item-body .flowList .step .flowText {
              margin-bottom: 0; } }
        #items .item-dialog .item-content .item-body .flowList .step .flowText2 {
          text-align: left;
          width: 320px;
          max-width: 100%;
          margin: 10px auto 30px; }
          @media only screen and (min-width: 992px) {
            #items .item-dialog .item-content .item-body .flowList .step .flowText2 {
              margin-bottom: 0;
              width: auto; } }
        @media only screen and (min-width: 768px) {
          #items .item-dialog .item-content .item-body .flowList .step:nth-child(3) .flowText {
            margin-bottom: 0; }
          #items .item-dialog .item-content .item-body .flowList .step:last-child .flowText {
            margin-bottom: 0; } }
      @media only screen and (min-width: 992px) {
        #items .item-dialog .item-content .item-body .flowList {
          margin-left: 10px;
          font-size: 16px;
          font-size: 1.6rem; } }
      #items .item-dialog .item-content .item-body .flowList#flowList2 {
        display: none; }
    #items .item-dialog .item-content .item-body #productSet ul {
      list-style-type: disc;
      padding-left: 25px; }
      @media only screen and (min-width: 992px) {
        #items .item-dialog .item-content .item-body #productSet ul {
          font-size: 16px;
          font-size: 1.6rem; } }
    #items .item-dialog .item-content .item-body #productSize > ul:before, #items .item-dialog .item-content .item-body #productSize > ul:after {
      content: "";
      display: table; }
    #items .item-dialog .item-content .item-body #productSize > ul:after {
      clear: both; }
    #items .item-dialog .item-content .item-body #productSize > ul {
      *zoom: 1; }
    #items .item-dialog .item-content .item-body #productSize > ul > li {
      margin-bottom: 10px; }
      #items .item-dialog .item-content .item-body #productSize > ul > li:last-child {
        margin-bottom: 0; }
      @media only screen and (min-width: 768px) {
        #items .item-dialog .item-content .item-body #productSize > ul > li {
          float: left;
          width: 48%; }
          #items .item-dialog .item-content .item-body #productSize > ul > li:nth-child(even) {
            float: right; } }
      @media only screen and (min-width: 992px) {
        #items .item-dialog .item-content .item-body #productSize > ul > li {
          float: left;
          width: 48%;
          font-size: 16px;
          font-size: 1.6rem; }
          #items .item-dialog .item-content .item-body #productSize > ul > li:nth-child(even) {
            float: right; } }
      #items .item-dialog .item-content .item-body #productSize > ul > li p {
        font-size: 15px;
        font-size: 1.5rem;
        font-weight: bold;
        margin-bottom: 6px; }
        @media only screen and (min-width: 992px) {
          #items .item-dialog .item-content .item-body #productSize > ul > li p {
            font-size: 16px;
            font-size: 1.6rem; } }
      #items .item-dialog .item-content .item-body #productSize > ul > li ul {
        list-style: disc;
        padding-left: 25px; }
        #items .item-dialog .item-content .item-body #productSize > ul > li ul li {
          font-size: 13px;
          font-size: 1.3rem; }
          @media only screen and (min-width: 992px) {
            #items .item-dialog .item-content .item-body #productSize > ul > li ul li {
              font-size: 14px;
              font-size: 1.4rem; } }
    #items .item-dialog .item-content .item-body #productAdditionalInfo {
      padding: 0; }
      #items .item-dialog .item-content .item-body #productAdditionalInfo .innerText {
        padding: 0 40px; }
    @media only screen and (min-width: 992px) {
      #items .item-dialog .item-content .item-body > div {
        padding: 0 40px; } }
    #items .item-dialog .item-content .item-body #upcellArea:before, #items .item-dialog .item-content .item-body #upcellArea:after,
    #items .item-dialog .item-content .item-body #exchangeArea:before,
    #items .item-dialog .item-content .item-body #exchangeArea:after {
      content: "";
      display: table; }
    #items .item-dialog .item-content .item-body #upcellArea:after,
    #items .item-dialog .item-content .item-body #exchangeArea:after {
      clear: both; }
    #items .item-dialog .item-content .item-body #upcellArea,
    #items .item-dialog .item-content .item-body #exchangeArea {
      *zoom: 1; }
    @media only screen and (min-width: 992px) {
      #items .item-dialog .item-content .item-body #upcellArea,
      #items .item-dialog .item-content .item-body #exchangeArea {
        padding: 0; } }
    #items .item-dialog .item-content .item-body #upcellArea .btnPurchase,
    #items .item-dialog .item-content .item-body #exchangeArea .btnPurchase {
      display: inline-block;
      margin: 0; }
      #items .item-dialog .item-content .item-body #upcellArea .btnPurchase a.btnCustom,
      #items .item-dialog .item-content .item-body #exchangeArea .btnPurchase a.btnCustom {
        margin: 0 0 10px 0;
        text-align: center;
        padding: 8px 12px;
        background: #fba848;
        color: #fff !important;
        -webkit-box-shadow: 0 6px #d15428;
        box-shadow: 0 6px #d15428;
        -webkit-transition: none;
        transition: none;
        border-radius: 5px;
        letter-spacing: 2px; }
        #items .item-dialog .item-content .item-body #upcellArea .btnPurchase a.btnCustom:hover,
        #items .item-dialog .item-content .item-body #exchangeArea .btnPurchase a.btnCustom:hover {
          -webkit-box-shadow: 0 4px #d15428;
          box-shadow: 0 4px #d15428;
          top: 2px;
          background: #fa9016; }
        #items .item-dialog .item-content .item-body #upcellArea .btnPurchase a.btnCustom:active,
        #items .item-dialog .item-content .item-body #exchangeArea .btnPurchase a.btnCustom:active {
          -webkit-box-shadow: 0 0 #d15428;
          box-shadow: 0 0 #d15428;
          top: 6px; }
        #items .item-dialog .item-content .item-body #upcellArea .btnPurchase a.btnCustom:last-child,
        #items .item-dialog .item-content .item-body #exchangeArea .btnPurchase a.btnCustom:last-child {
          margin-top: 20px; }
          @media only screen and (min-width: 768px) {
            #items .item-dialog .item-content .item-body #upcellArea .btnPurchase a.btnCustom:last-child,
            #items .item-dialog .item-content .item-body #exchangeArea .btnPurchase a.btnCustom:last-child {
              margin-top: 0; } }
    #items .item-dialog .item-content .item-body #upcellArea .productInner,
    #items .item-dialog .item-content .item-body #exchangeArea .productInner {
      padding: 0;
      border: none;
      position: relative; }
      #items .item-dialog .item-content .item-body #upcellArea .productInner:before, #items .item-dialog .item-content .item-body #upcellArea .productInner:after,
      #items .item-dialog .item-content .item-body #exchangeArea .productInner:before,
      #items .item-dialog .item-content .item-body #exchangeArea .productInner:after {
        content: "";
        display: table; }
      #items .item-dialog .item-content .item-body #upcellArea .productInner:after,
      #items .item-dialog .item-content .item-body #exchangeArea .productInner:after {
        clear: both; }
      #items .item-dialog .item-content .item-body #upcellArea .productInner,
      #items .item-dialog .item-content .item-body #exchangeArea .productInner {
        *zoom: 1; }
      #items .item-dialog .item-content .item-body #upcellArea .productInner .nameInner,
      #items .item-dialog .item-content .item-body #exchangeArea .productInner .nameInner {
        font-size: 16px;
        font-size: 1.6rem;
        margin-top: 10px; }
      #items .item-dialog .item-content .item-body #upcellArea .productInner .priceInner,
      #items .item-dialog .item-content .item-body #exchangeArea .productInner .priceInner {
        color: #AA1926;
        font-size: 16px;
        font-size: 1.6rem;
        font-weight: bold;
        margin-top: 10px; }
        #items .item-dialog .item-content .item-body #upcellArea .productInner .priceInner:before,
        #items .item-dialog .item-content .item-body #exchangeArea .productInner .priceInner:before {
          content: "商品価格: "; }
        #items .item-dialog .item-content .item-body #upcellArea .productInner .priceInner.firstTime:before,
        #items .item-dialog .item-content .item-body #exchangeArea .productInner .priceInner.firstTime:before {
          content: "商品価格（初回）: "; }
        #items .item-dialog .item-content .item-body #upcellArea .productInner .priceInner.secondTime:before,
        #items .item-dialog .item-content .item-body #exchangeArea .productInner .priceInner.secondTime:before {
          content: "商品価格（2回目以降）: "; }
        #items .item-dialog .item-content .item-body #upcellArea .productInner .priceInner .noTaxPrice:after,
        #items .item-dialog .item-content .item-body #exchangeArea .productInner .priceInner .noTaxPrice:after {
          content: " 円";
          font-size: 16px;
          font-size: 1.6rem; }
        #items .item-dialog .item-content .item-body #upcellArea .productInner .priceInner .taxPrice,
        #items .item-dialog .item-content .item-body #exchangeArea .productInner .priceInner .taxPrice {
          font-size: 13px;
          font-size: 1.3rem; }
          @media only screen and (min-width: 992px) {
            #items .item-dialog .item-content .item-body #upcellArea .productInner .priceInner .taxPrice,
            #items .item-dialog .item-content .item-body #exchangeArea .productInner .priceInner .taxPrice {
              font-size: 16px;
              font-size: 1.6rem; } }
          #items .item-dialog .item-content .item-body #upcellArea .productInner .priceInner .taxPrice:before,
          #items .item-dialog .item-content .item-body #exchangeArea .productInner .priceInner .taxPrice:before {
            content: " (税込: "; }
          #items .item-dialog .item-content .item-body #upcellArea .productInner .priceInner .taxPrice:after,
          #items .item-dialog .item-content .item-body #exchangeArea .productInner .priceInner .taxPrice:after {
            content: " 円)"; }
      #items .item-dialog .item-content .item-body #upcellArea .productInner .priceInner-en:before,
      #items .item-dialog .item-content .item-body #exchangeArea .productInner .priceInner-en:before {
        content: "Price : "; }
      #items .item-dialog .item-content .item-body #upcellArea .productInner .priceInner-en:after,
      #items .item-dialog .item-content .item-body #exchangeArea .productInner .priceInner-en:after {
        content: " yen"; }
      #items .item-dialog .item-content .item-body #upcellArea .productInner .priceInner-tw:before,
      #items .item-dialog .item-content .item-body #exchangeArea .productInner .priceInner-tw:before {
        content: "產品價格："; }
      #items .item-dialog .item-content .item-body #upcellArea .productInner .priceInner-tw:after,
      #items .item-dialog .item-content .item-body #exchangeArea .productInner .priceInner-tw:after {
        content: " 日元"; }
      #items .item-dialog .item-content .item-body #upcellArea .productInner .priceInner-cn:before,
      #items .item-dialog .item-content .item-body #exchangeArea .productInner .priceInner-cn:before {
        content: "产品价格："; }
      #items .item-dialog .item-content .item-body #upcellArea .productInner .priceInner-cn:after,
      #items .item-dialog .item-content .item-body #exchangeArea .productInner .priceInner-cn:after {
        content: " 日元"; }
      #items .item-dialog .item-content .item-body #upcellArea .productInner .btnPurchase,
      #items .item-dialog .item-content .item-body #exchangeArea .productInner .btnPurchase {
        text-align: center; }
      @media only screen and (min-width: 992px) {
        #items .item-dialog .item-content .item-body #upcellArea .productInner,
        #items .item-dialog .item-content .item-body #exchangeArea .productInner {
          padding: 0 40px; }
          #items .item-dialog .item-content .item-body #upcellArea .productInner .nameInner,
          #items .item-dialog .item-content .item-body #exchangeArea .productInner .nameInner {
            font-size: 20px;
            font-size: 2rem; }
          #items .item-dialog .item-content .item-body #upcellArea .productInner .priceInner,
          #items .item-dialog .item-content .item-body #exchangeArea .productInner .priceInner {
            font-size: 20px;
            font-size: 2rem; }
          #items .item-dialog .item-content .item-body #upcellArea .productInner .btnPurchase,
          #items .item-dialog .item-content .item-body #exchangeArea .productInner .btnPurchase {
            position: absolute;
            right: 40px;
            bottom: 0; } }
    #items .item-dialog .item-content .item-body #upcellArea .subscriptionDesc {
      padding: 0;
      font-size: 16px;
      font-size: 1.6rem; }
      @media only screen and (min-width: 992px) {
        #items .item-dialog .item-content .item-body #upcellArea .subscriptionDesc {
          padding: 0 40px; } }
    #items .item-dialog .item-content .item-body #upcellArea .meritList {
      display: inline-block;
      background: #b7daf9;
      color: #AA1926;
      margin: 0;
      border: apx solid #ccc;
      padding: 10px;
      font-size: 16px;
      font-size: 1.6rem;
      font-weight: bold;
      margin-top: 10px; }
      @media only screen and (min-width: 992px) {
        #items .item-dialog .item-content .item-body #upcellArea .meritList {
          margin: 10px 40px;
          padding: 10px 20px;
          font-size: 18px;
          font-size: 1.8rem; } }

.lum-lightbox {
  z-index: 3000; }

@media screen and (max-width: 460px) {
  .lum-lightbox-inner img {
    max-width: 85vw !important;
    /* 軽くスワイプで左端から右端まで動かせる量 */
    max-height: 85vh !important;
    /* 上下に適度に余白 */ } }

#product {
  margin-top: -30px; }
  #product h3 {
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-weight: bold;
    font-size: 24px;
    font-size: 2.4rem;
    text-align: center;
    color: #AA1926;
    line-height: 1.4;
    letter-spacing: 1px; }
    #product h3 sup {
      font-size: 12px;
      font-size: 1.2rem; }
    #product h3 strong {
      font-size: 30px;
      font-size: 3rem; }
    @media only screen and (min-width: 768px) {
      #product h3 {
        font-size: 36px;
        font-size: 3.6rem; }
        #product h3 sup {
          font-size: 20px;
          font-size: 2rem; }
        #product h3 strong {
          font-size: 48px;
          font-size: 4.8rem; } }
  #product .productImage {
    margin-top: 30px; }
    #product .productImage:before, #product .productImage:after {
      content: "";
      display: table; }
    #product .productImage:after {
      clear: both; }
    #product .productImage {
      *zoom: 1; }
    #product .productImage img {
      margin: 0 auto; }
    #product .productImage p {
      text-align: center; }
      #product .productImage p.productName {
        font-size: 18px;
        font-size: 1.8rem;
        font-weight: bold;
        margin-top: 10px; }
    #product .productImage .productDescription {
      font-size: 16px;
      font-size: 1.6rem; }
  #product .caution {
    font-size: 12px;
    font-size: 1.2rem;
    margin-top: 20px;
    margin-left: 2em;
    position: relative; }
    #product .caution:before {
      content: "※";
      position: absolute;
      left: -1.5em; }

.specialty {
  font-size: 16px;
  font-size: 1.6rem;
  margin-top: 15px;
  border: 3px solid #2b90ec;
  border-radius: 4px;
  padding: 10px;
  list-style: disc;
  padding-left: 30px; }
  .specialty li {
    margin-bottom: 5px; }
    .specialty li strong {
      color: #AA1926;
      font-size: 18px;
      font-size: 1.8rem;
      margin-left: 4px;
      font-weight: bold; }
    .specialty li span {
      font-size: 12px;
      font-size: 1.2rem;
      margin-left: 4px; }

.productIntroduction {
  margin: 40px 0;
  border: 2px solid #ddd;
  padding: 20px; }
  .productIntroduction__title {
    margin-bottom: 20px; }
  @media only screen and (min-width: 992px) {
    .productIntroduction__inner {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between; } }
  .productIntroduction__inner img {
    width: 100%; }
  @media only screen and (min-width: 768px) {
    .productIntroduction__inner__image {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between; } }
  @media only screen and (min-width: 992px) {
    .productIntroduction__inner__image {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column; } }
  .productIntroduction__inner__image img {
    display: block;
    max-width: 300px;
    margin: 0 auto; }
    @media only screen and (min-width: 992px) {
      .productIntroduction__inner__image img {
        max-width: 250px; } }
  .productIntroduction__inner__text {
    width: 100%; }
    .productIntroduction__inner__text .paragraph a:before {
      content: "";
      display: inline-block;
      width: 16px;
      vertical-align: middle;
      height: 0;
      border-top: .6em solid transparent;
      border-bottom: .6em solid transparent;
      border-left: 0.6em solid #ffa726;
      margin-left: 0.6em;
      margin-right: -0.5em; }
    @media only screen and (min-width: 992px) {
      .productIntroduction__inner__text {
        width: calc(100% - 30%); }
        .productIntroduction__inner__text .paragraph {
          margin-top: 0;
          margin-bottom: 0; }
          .productIntroduction__inner__text .paragraph:nth-of-type(2) {
            float: left;
            width: 60%;
            padding-right: 10px; }
          .productIntroduction__inner__text .paragraph + img {
            max-width: 200px; }
            .productIntroduction__inner__text .paragraph + img + span {
              display: block; } }
    @media only screen and (min-width: 1200px) {
      .productIntroduction__inner__text {
        width: calc(100% - 26%); } }

.feature-copy01 {
  font-size: 1.6rem; }
  @media only screen and (min-width: 992px) {
    .feature-copy01 {
      font-size: 3rem; } }
  .feature-copy01 .copy-big01 {
    font-size: 3rem; }
    @media only screen and (min-width: 992px) {
      .feature-copy01 .copy-big01 {
        font-size: 5rem; } }

.feature-copy02 {
  text-decoration: underline;
  text-decoration-thickness: 1px;
  font-weight: normal !important;
  line-height: 1.5; }
  @media only screen and (min-width: 992px) {
    .feature-copy02 {
      font-size: 4rem; } }

h3.feature-copy03 {
  font-size: 1.8rem;
  color: #fff;
  line-height: 1.5; }
  @media only screen and (min-width: 992px) {
    h3.feature-copy03 {
      font-size: 3rem; } }

.feature-txt01 {
  text-align: start !important;
  font-size: 1.8rem;
  line-height: 1.5; }
  @media only screen and (min-width: 992px) {
    .feature-txt01 {
      font-size: 2.4rem; } }
  .feature-txt01 .feature-caution {
    font-size: 1.4rem; }

.feature-blue-txt {
  color: #3384c9; }

.feature-orange-txt {
  color: #e25513; }

.voiceBox .customerIcon {
  float: left;
  width: 100px;
  height: auto; }
  @media only screen and (min-width: 992px) {
    .voiceBox .customerIcon {
      float: none;
      margin-top: 12px; } }
  @media only screen and (min-width: 992px) {
    .voiceBox .customerIcon + div {
      margin-top: 15px; } }
  .voiceBox .customerIcon + div ul {
    float: left;
    margin-top: 20px;
    margin-left: 20px; }
    @media only screen and (min-width: 992px) {
      .voiceBox .customerIcon + div ul {
        margin-top: 6px;
        float: none;
        margin-left: 0; } }

.voiceBox .voice {
  margin-top: 15px; }
  @media only screen and (min-width: 992px) {
    .voiceBox .voice {
      position: relative;
      border: 1px solid #ddd;
      border-radius: 8px;
      padding: 10px; }
      .voiceBox .voice:before, .voiceBox .voice:after {
        content: "";
        position: absolute;
        top: 45px;
        right: 100%;
        border: solid transparent;
        height: 0;
        width: 0;
        pointer-events: none; }
      .voiceBox .voice:before {
        border-color: rgba(221, 221, 221, 0);
        border-right-color: #dddddd;
        border-width: 11px;
        margin-top: -11px; }
      .voiceBox .voice:after {
        border-color: rgba(255, 255, 255, 0);
        border-right-color: #ffffff;
        border-width: 10px;
        margin-top: -10px; } }

.result {
  border: 1px solid #ddd;
  padding: 10px;
  margin-bottom: 30px; }
  @media only screen and (min-width: 768px) {
    .result {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      max-width: 600px;
      margin: 20px auto 30px; } }
  .result figure {
    margin: 0 0 16px; }
    .result figure img {
      background: #efefef; }
  @media only screen and (min-width: 768px) {
    .result__image {
      width: 40%; } }
  @media only screen and (min-width: 768px) {
    .result__text .dl-list {
      margin-top: 10px;
      margin-left: 24px; } }

.privilege-description {
  background-color: #eef4fe;
  padding: 10px;
  margin-bottom: 30px; }
  .privilege-description figure {
    margin: 10px; }

#news .news li {
  border-bottom: 1px dotted #e7e7e7;
  margin-bottom: 10px;
  padding: 8px 0; }
  #news .news li:last-child {
    border: none; }

#introProduct {
  margin-top: 50px; }
  @media (min-width: 1200px) {
    #introProduct .container {
      width: 1140px; } }
  #introProduct .introProductBox {
    padding: 10px 0 10px 0; }
    #introProduct .introProductBox img {
      border: 1px solid #ddd;
      -webkit-box-shadow: 0 0 3px #999;
      box-shadow: 0 0 3px #999;
      background-color: #fff;
      padding: 10px; }
  @media (max-width: 768px) {
    #introProduct .col-xs-12.col-md-6 img {
      margin-top: 10px; }
    #introProduct .container {
      padding-left: 0;
      padding-right: 0; } }
  #introProduct .introProductArea p {
    text-align: left;
    margin: 10px 0 0 10px; }
    #introProduct .introProductArea p:before {
      content: "";
      vertical-align: -4px;
      display: inline-block;
      width: 18px;
      height: 18px;
      margin-right: 10px;
      background: -webkit-gradient(linear, left top, left bottom, from(#3581c4), to(#0f52aa));
      background: linear-gradient(to bottom, #3581c4 0%, #0f52aa 100%);
      border-radius: 50%; }
    #introProduct .introProductArea p:after {
      content: "";
      position: relative;
      top: -15px;
      left: 7px;
      width: 0;
      height: 0;
      display: block;
      border-style: solid;
      border-width: 4px 0 4px 6px;
      border-color: transparent transparent transparent #fff; }
  @media (max-width: 768px) {
    #introProduct .col-xs-12.col-md-6 {
      padding-left: 0px;
      padding-right: 0px; } }

#introAllergy {
  padding-bottom: 20px; }
  @media (min-width: 1200px) {
    #introAllergy .container {
      width: 1140px; } }

.introAllergyArea ul {
  font-size: 0; }
  .introAllergyArea ul li {
    display: inline-block;
    font-size: 12px;
    margin-right: 10px; }
  .introAllergyArea ul img {
    border: 1px solid #ddd;
    -webkit-box-shadow: 0 0 3px #999;
    box-shadow: 0 0 3px #999;
    background-color: #fff;
    padding: 10px;
    margin: 5px; }

h3.uservoicesTitle {
  position: relative;
  display: inline-block;
  padding: 20px 10px;
  width: auto;
  min-width: 115px;
  line-height: 34px;
  color: #19283C;
  margin: 20px 0 50px;
  text-align: center;
  background: #fff;
  border: 3px solid #19283C;
  z-index: 0; }
  @media only screen and (min-width: 992px) {
    h3.uservoicesTitle {
      width: 100%;
      margin: 50px 0 80px;
      padding: 50px 0;
      font-size: 40px;
      font-size: 4rem; } }

.userVoices {
  border: 1px solid #3384C9;
  padding: 10px;
  -webkit-box-shadow: 0 0 3px #999;
  box-shadow: 0 0 3px #999;
  margin-bottom: 40px; }
  @media only screen and (min-width: 992px) {
    .userVoices {
      margin-bottom: 70px; } }
  .userVoices h3.captureTextBoxTitle {
    position: relative;
    font-weight: bold;
    text-align: center;
    margin-bottom: 30px;
    padding-top: 20px;
    font-size: 22px;
    font-size: 2.2rem; }
    @media only screen and (min-width: 992px) {
      .userVoices h3.captureTextBoxTitle {
        font-size: 40px;
        font-size: 4rem;
        margin-bottom: 40px;
        color: #333;
        text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.5); } }
    @media only screen and (min-width: 992px) {
      .userVoices h3.captureTextBoxTitle span {
        position: relative;
        z-index: 2;
        display: inline-block;
        margin: 0 1.5em;
        padding: 0 .5em;
        background-color: #fafafa;
        text-align: left; } }
    .userVoices h3.captureTextBoxTitle strong {
      background: -webkit-gradient(linear, left top, left bottom, color-stop(40%, transparent), color-stop(40%, #ffff66));
      background: linear-gradient(transparent 40%, #ffff66 40%); }
      @media only screen and (min-width: 992px) {
        .userVoices h3.captureTextBoxTitle strong {
          background: none; } }
    @media only screen and (min-width: 992px) {
      .userVoices h3.captureTextBoxTitle:before {
        position: absolute;
        top: 0%;
        z-index: -1;
        content: '';
        display: block;
        width: 100%;
        height: 80px;
        background: #ddf2ff;
        /* Old browsers */
        /* FF3.6-15 */
        /* Chrome10-25,Safari5.1-6 */
        background: -webkit-gradient(linear, left top, left bottom, from(#ddf2ff), to(white));
        background: linear-gradient(to bottom, #ddf2ff 0%, white 100%);
        /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ddf2ff', endColorstr='#ffffff',GradientType=0 );
        /* IE6-9 */ } }
  .userVoices p.arrow {
    text-align: left;
    margin: 10px 0 0 30px; }
    .userVoices p.arrow:before {
      content: "";
      vertical-align: -4px;
      display: inline-block;
      width: 18px;
      height: 18px;
      margin-right: 10px;
      background: -webkit-gradient(linear, left top, left bottom, from(#3581c4), to(#0f52aa));
      background: linear-gradient(to bottom, #3581c4 0%, #0f52aa 100%);
      border-radius: 50%; }
    .userVoices p.arrow:after {
      content: "";
      position: relative;
      top: -15px;
      left: 7px;
      width: 0;
      height: 0;
      display: block;
      border-style: solid;
      border-width: 4px 0 4px 6px;
      border-color: transparent transparent transparent #fff; }
  .userVoices .userVoicesBox {
    margin-bottom: 16px;
    border: 1px solid #C8DEF1;
    padding: 10px; }
    .userVoices .userVoicesBox img.border {
      border-bottom: 1px solid #ccc;
      padding-bottom: 20px; }
  .userVoices .captureTextBox {
    margin-bottom: 16px; }
    @media only screen and (min-width: 992px) {
      .userVoices .captureTextBox {
        margin-bottom: 40px; } }
    .userVoices .captureTextBox .captureTextContents strong {
      color: #333;
      font-size: 16px;
      font-size: 1.6rem; }
      @media only screen and (min-width: 992px) {
        .userVoices .captureTextBox .captureTextContents strong {
          font-size: 16px;
          font-size: 1.6rem; } }
    .userVoices .captureTextBox .captureTextContents strong.attention {
      color: #333;
      font-size: 16px;
      font-size: 1.6rem; }
      @media only screen and (min-width: 992px) {
        .userVoices .captureTextBox .captureTextContents strong.attention {
          font-size: 16px;
          font-size: 1.6rem; } }

.introPointArea {
  height: 100%; }
  .introPointArea span {
    background-color: #ffff66;
    padding: 2px;
    font-size: 22px;
    font-weight: bold; }
  .introPointArea p {
    font-size: 22px;
    font-weight: bold; }
  .introPointArea .bdboxarea {
    border: 3px solid #86a3b8;
    padding: 16px;
    border-radius: 10px;
    color: #333; }
  .introPointArea .summarydisc, .introPointArea .summarysub {
    font-size: 16px;
    color: #fff;
    background: #16456c;
    height: 110px;
    margin-top: 20px;
    padding: 24px;
    position: relative;
    background-size: 72px auto;
    border-radius: 7px;
    line-height: 1.2; }
    @media only screen and (min-width: 992px) {
      .introPointArea .summarydisc, .introPointArea .summarysub {
        font-size: 26px;
        font-size: 2.6rem; } }
  .introPointArea .summarysub {
    background: #3c8632; }
    @media only screen and (min-width: 992px) {
      .introPointArea .summarysub {
        font-size: 26px;
        font-size: 2.6rem; } }
  .introPointArea .subscriptionexp {
    font-size: 16px;
    color: #333;
    margin: auto;
    position: relative; }
    @media only screen and (min-width: 992px) {
      .introPointArea .subscriptionexp {
        font-size: 26px !important; } }
  .introPointArea .sub6tbg {
    background: url(../img/1000lp-sub6t-bg.jpg) repeat-y center top;
    height: 100%;
    margin-top: 10px;
    padding-bottom: 30px; }
  .introPointArea table#datagraph {
    width: 530px;
    border: 1px #E3E3E3 solid;
    border-collapse: collapse;
    border-spacing: 0; }
  .introPointArea table#datagraph th {
    padding: 5px;
    border: #E3E3E3 solid;
    border-width: 0 0 1px 1px;
    background: #F5F5F5;
    font-weight: bold;
    line-height: 120%;
    text-align: center; }
  .introPointArea table#datagraph td {
    padding: 5px;
    border: 1px #E3E3E3 solid;
    border-width: 0 0 1px 1px;
    text-align: center; }

h2.point {
  font-size: 18px;
  color: #fff;
  background: url(/img/bemirror.gif) 12px 20px no-repeat #16456c;
  height: 100px;
  margin-top: 40px;
  text-align: center;
  padding: 20px 10px 0 20px;
  position: relative;
  background-size: 0;
  border-radius: 20px 20px 0 0;
  line-height: 1; }
  @media only screen and (min-width: 992px) {
    h2.point {
      background-size: 72px auto;
      font-size: 30px;
      margin: 20px; } }
  h2.point:after {
    content: '';
    background: url(/img/bar.gif) left top no-repeat;
    font-size: 30px;
    font-size: 3rem;
    height: 6px;
    width: 100%;
    position: absolute;
    left: 0;
    bottom: 0; }

h2.place, h2.voices, h2.teiki, h2.present, section#subscriptions h2.teiki {
  font-size: 24px;
  color: #fff;
  background: url(/img/beplace.gif) 12px 20px no-repeat #f3ad11;
  height: 100px;
  margin-top: 40px;
  text-align: center;
  padding: 20px 5px 0 20px;
  position: relative;
  background-size: 0;
  border-radius: 20px 20px 0 0;
  line-height: 1; }
  @media only screen and (min-width: 992px) {
    h2.place, h2.voices, h2.teiki, h2.present, section#subscriptions h2.teiki {
      background-size: 72px auto;
      font-size: 50px;
      margin: 20px; } }
  h2.place:after, h2.voices:after, h2.teiki:after, h2.present:after, section#subscriptions h2.teiki:after {
    content: '';
    background: url(/img/bar3.gif) left top no-repeat;
    font-size: 50px;
    font-size: 5rem;
    height: 6px;
    width: 100%;
    position: absolute;
    left: 0;
    bottom: 0; }

h2.voices {
  background: url(/img/bevoices.gif) 12px 20px no-repeat #67863a;
  background-size: 0;
  padding: 30px 10px 0 20px;
  font-size: 34px; }
  @media only screen and (min-width: 992px) {
    h2.voices {
      background-size: 72px auto;
      font-size: 50px;
      margin: 20px; } }
  h2.voices:after {
    content: '';
    background: url(/img/bar2.gif) left top no-repeat;
    font-size: 50px;
    font-size: 5rem;
    height: 6px;
    width: 100%;
    position: absolute;
    left: 0;
    bottom: 0; }

h2.teiki {
  background: url(/img/beteiki.gif) 12px 20px no-repeat #67863a;
  background-size: 0;
  padding: 30px 10px 0 20px;
  font-size: 34px; }
  @media only screen and (min-width: 992px) {
    h2.teiki {
      background-size: 72px auto;
      font-size: 50px;
      margin: 20px; } }
  h2.teiki:after {
    content: '';
    background: url(/img/bar2.gif) left top no-repeat;
    font-size: 50px;
    font-size: 5rem;
    height: 6px;
    width: 100%;
    position: absolute;
    left: 0;
    bottom: 0; }

h2.present {
  background: url(/img/bepst.gif) 12px 20px no-repeat #67863a;
  background-size: 0;
  padding: 30px 10px 0 20px;
  font-size: 24px; }
  @media only screen and (min-width: 992px) {
    h2.present {
      background-size: 72px auto;
      font-size: 50px;
      margin: 20px; } }
  h2.present:after {
    content: '';
    background: url(/img/bar2.gif) left top no-repeat;
    font-size: 50px;
    font-size: 5rem;
    height: 6px;
    width: 100%;
    position: absolute;
    left: 0;
    bottom: 0; }

section#subscriptions h2.teiki {
  height: 80px; }
  @media only screen and (min-width: 992px) {
    section#subscriptions h2.teiki {
      height: 100px; } }

.order-complete {
  height: 100%; }
  .order-complete p.bold {
    font-size: 22px;
    font-weight: bold; }

section#feature {
  background: #fff; }
  section#feature .col-md-12 {
    padding-left: 0;
    padding-right: 0; }
  section#feature .container {
    background: #fff;
    margin: 10px auto 60px;
    border-radius: 16px; }
  section#feature ul, section#feature ol {
    margin: 20px 0 0 0;
    padding: 0;
    list-style: none;
    display: inline-block;
    text-align: left; }
  section#feature h2.FeaturesectinTitle {
    color: #16456c;
    font-weight: bold;
    font-size: 22px;
    font-size: 2.2rem; }
    @media only screen and (min-width: 992px) {
      section#feature h2.FeaturesectinTitle {
        font-size: 28px;
        font-size: 2.8rem; } }
  section#feature h3 {
    color: #16456c;
    font-weight: bold; }
  section#feature .FeaturesectionMain {
    background-image: url(../img/featurelp_main.jpg);
    background-position: center top;
    background-repeat: no-repeat;
    background-size: cover;
    height: auto; }
    @media only screen and (min-width: 992px) {
      section#feature .FeaturesectionMain {
        height: 420px; } }

section#featurepr .triangle_right {
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 0;
  border-top: .6em solid transparent;
  border-bottom: .6em solid transparent;
  border-left: 0.6em solid #ffa726; }

section#featurepr a.linktxt {
  color: #2b90ec !important;
  font-size: 14px !important; }

section#featurebtm .introPointBox h3 {
  color: #16456c;
  font-weight: bold; }

section#featurebtm .pbn {
  margin: 0;
  padding: 0; }
  @media only screen and (min-width: 992px) {
    section#featurebtm .pbn {
      margin-left: 20px; } }

section#featurebtm .pbnl {
  margin: 0;
  padding: 0; }
  @media only screen and (min-width: 992px) {
    section#featurebtm .pbnl {
      margin-left: 0; } }

h3.feature-safety-txt {
  background-color: #3384c9;
  padding: 10px; }

.feature-safety {
  display: block;
  background-color: #fdf8e4;
  min-height: auto;
  padding: 10px; }

.bdboxarea {
  border: 2px solid #ccc;
  padding: 16px;
  border-radius: 10px;
  color: #333;
  background: #fff; }

.bdboxareafl {
  background: #f7efe8;
  padding: 20px;
  border-radius: 10px;
  color: #333; }
  @media only screen and (min-width: 992px) {
    .bdboxareafl {
      background: #f7efe8;
      padding: 20px;
      border-radius: 10px;
      color: #333; } }
  .bdboxareafl h4 {
    color: #fff;
    font-weight: bold;
    text-align: left;
    background: rgba(247, 133, 16, 0.74);
    padding: 10px;
    border-radius: 10px; }

.bdboxareafl1 {
  background: #f7efe8;
  padding: 20px;
  border-radius: 10px;
  color: #333; }
  @media only screen and (min-width: 992px) {
    .bdboxareafl1 {
      background: #f7efe8;
      padding: 20px;
      border-radius: 10px;
      color: #333;
      margin-right: 10px; } }
  .bdboxareafl1 h4 {
    color: #fff;
    font-weight: bold;
    text-align: left;
    background: rgba(247, 133, 16, 0.74);
    padding: 10px;
    border-radius: 10px; }

.bdboxareafl2 {
  background: #f7efe8;
  padding: 20px;
  border-radius: 10px;
  color: #333; }
  @media only screen and (min-width: 992px) {
    .bdboxareafl2 {
      background: #f7efe8;
      padding: 20px;
      border-radius: 10px;
      color: #333;
      margin-left: 10px; } }
  .bdboxareafl2 h4 {
    color: #fff;
    font-weight: bold;
    text-align: left;
    background: rgba(247, 133, 16, 0.74);
    padding: 10px;
    border-radius: 10px; }

.paragraph {
  margin-top: 10px;
  margin-bottom: 5px; }
  @media only screen and (min-width: 992px) {
    .paragraph {
      margin-top: 20px;
      margin-bottom: 20px; } }

.table-word {
  word-break: break-all; }

section#subscriptions a:hover img {
  opacity: 0.5;
  -moz-opacity: 0.5;
  filter: alpha(opacity=50); }

section#subscriptions .container {
  background: #f1f6fe;
  height: 100%;
  padding: 5px; }
  @media only screen and (min-width: 992px) {
    section#subscriptions .container {
      margin: 0 auto 60px; } }

section#subscriptions .col-xs-12 {
  padding: 5px; }

section#subscriptions ul, section#subscriptions ol {
  margin: 0;
  padding: 0;
  list-style: none;
  text-align: left; }

section#subscriptions h3 {
  color: #16456c;
  font-weight: bold; }

section#subscriptions h4 {
  color: #3e3017;
  font-weight: bold;
  background: #f7dda0;
  padding: 20px 10px;
  border-bottom: 2px solid;
  border-radius: 5px;
  font-size: 22px; }

section#subscriptions .dlListBlock p {
  font-size: 16px;
  font-weight: normal !important; }
  section#subscriptions .dlListBlock p a {
    margin-top: 0; }

section#subscriptions .subinfoarea {
  padding: 5px; }
  @media only screen and (min-width: 992px) {
    section#subscriptions .subinfoarea {
      padding: 0 80px 20px; } }

section#subscriptions .sub6theaderbg {
  background-image: url(); }
  @media only screen and (min-width: 992px) {
    section#subscriptions .sub6theaderbg {
      background-image: url(../img/subscriptionsheaderbfg.jpg);
      background-repeat: no-repeat;
      background-position: right bottom;
      height: 324px; } }

section#subscriptions .sub6theaderbgproduct {
  margin: 20px auto 20px; }
  @media only screen and (min-width: 992px) {
    section#subscriptions .sub6theaderbgproduct {
      text-align: left;
      margin: 40px 20px 20px 40px; } }

section#subscriptions .sub6theaderread {
  margin: 10px auto 20px; }
  @media only screen and (min-width: 992px) {
    section#subscriptions .sub6theaderread {
      text-align: left;
      margin: 20px 20px 20px 40px; } }

section#subscriptions .sub6theaderspimage {
  margin: 10px auto 20px; }
  @media only screen and (min-width: 992px) {
    section#subscriptions .sub6theaderspimage {
      display: none; } }

section#subscriptions .sub6theaderpresent {
  margin: 10px auto 20px; }
  @media only screen and (min-width: 992px) {
    section#subscriptions .sub6theaderpresent {
      text-align: left;
      margin: 20px 20px 20px 40px; } }

section#subscriptions span.deliverytext01 {
  background: #f3510d !important;
  padding: 10px 25px;
  margin-left: 30px;
  color: #fff; }

section#subscriptions .deliverytext02 {
  margin-left: 0; }
  @media only screen and (min-width: 992px) {
    section#subscriptions .deliverytext02 {
      margin-left: 30px; } }

section#subscriptions .deliverytext03 {
  background: #ece9e9;
  border-radius: 10px;
  padding: 10px; }
  @media only screen and (min-width: 992px) {
    section#subscriptions .deliverytext03 {
      margin-left: 30px;
      padding: 20px; } }
  section#subscriptions .deliverytext03 span {
    background: #ece9e9 !important;
    font-size: 18px !important;
    font-weight: normal !important; }

section#subscriptions .deliverytext04 {
  font-size: 22px;
  color: #111; }
  @media only screen and (min-width: 992px) {
    section#subscriptions .deliverytext04 {
      color: #5e420a;
      font-size: 26px;
      font-size: 2.6rem; } }

section#subscriptions .deliverytext05 {
  background: #fff;
  border: 2px solid #ccc;
  border-radius: 10px;
  padding: 10px;
  font-size: 20px;
  font-weight: normal; }
  @media only screen and (min-width: 992px) {
    section#subscriptions .deliverytext05 {
      margin-left: 30px;
      width: 90%;
      padding: 20px; } }

section#subscriptions .introPointArea p {
  font-size: 18px; }

section#subscriptions .comparePrice {
  background: #fff;
  padding-bottom: 5px; }
  @media only screen and (min-width: 992px) {
    section#subscriptions .comparePrice {
      padding-bottom: 20px; } }

section#subscriptions .dlListBlock .dlList--dlAccordion .dlListDt--question {
  font-size: 1.4em !important; }

section#subscriptions .dlListBlock span {
  background: #ffcc33 !important;
  padding: 2px 5px !important; }

section#subscriptions .dlListBlock p {
  font-weight: bold; }

@media only screen and (min-width: 992px) {
  section#subscriptions .dlListBlock {
    width: 86%; } }

section#subscriptions h2.teiki {
  background: url(/img/beteiki2.gif) 12px 20px no-repeat #3384C9;
  background-size: 0;
  padding: 30px 10px 0 10px;
  font-size: 20px; }
  @media only screen and (min-width: 992px) {
    section#subscriptions h2.teiki {
      background-size: 72px auto;
      font-size: 50px;
      margin: 20px;
      padding: 30px 10px 0 20px; } }
  section#subscriptions h2.teiki:after {
    content: '';
    background: url(/img/bar4.gif) left top no-repeat;
    font-size: 50px;
    font-size: 5rem;
    height: 6px;
    width: 100%;
    position: absolute;
    left: 0;
    bottom: 0; }

section#subscriptions select {
  width: 94%; }
  @media only screen and (min-width: 992px) {
    section#subscriptions select {
      width: 60%; } }

@media only screen and (min-width: 992px) {
  section#subscriptions .anntelsp {
    display: none; } }

section#subscriptions .anntelpc {
  display: none; }
  @media only screen and (min-width: 992px) {
    section#subscriptions .anntelpc {
      display: block; } }

.simulation-title {
  font-size: 26px;
  font-size: 2.6rem;
  line-height: 1.6;
  margin: 30px 0 20px; }
  @media only screen and (min-width: 768px) {
    .simulation-title {
      font-size: 40px;
      font-size: 4rem;
      margin: 48px 0 20px; } }

.simulation-text {
  text-align: left;
  max-width: 700px;
  margin: 20px auto; }
  @media only screen and (min-width: 768px) {
    .simulation-text {
      font-size: 22px;
      font-size: 2.2rem; } }

/**
 * @file _voice-subscriptions.scss
 * voice/subscriptions.html で使用するsytle
 * 汎用性はないので当ファイルに閉じ込める
 */
.subscriptions-voice #main {
  margin-top: 0; }
  .subscriptions-voice #main p {
    line-height: 1.8; }
    @media only screen and (min-width: 768px) {
      .subscriptions-voice #main p {
        font-size: 24px;
        font-size: 2.4rem; } }
    .subscriptions-voice #main p.attention {
      line-height: 1.3; }

.subscriptions-voice em {
  font-weight: bold !important;
  font-style: normal !important; }

.subscriptions-voice section {
  margin-bottom: 0; }

.subscriptions-voice .subscriptions {
  width: 100%; }
  .subscriptions-voice .subscriptions > h1 {
    text-align: center; }
    .subscriptions-voice .subscriptions > h1 img {
      display: block;
      margin: 0 auto; }
  .subscriptions-voice .subscriptions small {
    font-size: 10px;
    font-size: 1rem;
    display: block;
    margin-top: 8px; }
    @media only screen and (min-width: 768px) {
      .subscriptions-voice .subscriptions small {
        margin-top: 20px;
        text-align: right; } }

.subscriptions-voice .voice-subscriptions.large-margin {
  margin-bottom: 100px; }
  @media only screen and (min-width: 768px) {
    .subscriptions-voice .voice-subscriptions.large-margin {
      margin-bottom: 200px; } }

.subscriptions-voice .voice-subscriptions .section-header {
  background: #539570; }
  .subscriptions-voice .voice-subscriptions .section-header h2 {
    font-size: 18px;
    font-size: 1.8rem;
    color: #fff;
    padding: 10px 0 8px;
    line-height: 1.6;
    text-align: center; }
    @media screen and (min-width: 568px) {
      .subscriptions-voice .voice-subscriptions .section-header h2 {
        font-size: 24px;
        font-size: 2.4rem;
        padding: 20px 0 16px; } }
    @media only screen and (min-width: 768px) {
      .subscriptions-voice .voice-subscriptions .section-header h2 {
        font-size: 40px;
        font-size: 4rem;
        padding: 30px 0 24px; } }
  .subscriptions-voice .voice-subscriptions .section-header.section-header--customer-voice {
    background: #fff;
    position: relative; }
    .subscriptions-voice .voice-subscriptions .section-header.section-header--customer-voice h2 {
      position: absolute;
      top: 0;
      left: 50%;
      -webkit-transform: translate(-50%, 0);
      transform: translate(-50%, 0);
      width: 90%;
      padding: 10px;
      margin: -40px auto 20px;
      border: 6px solid #f46429;
      color: #f46429;
      background: #fff;
      z-index: 100; }
      @media only screen and (min-width: 768px) {
        .subscriptions-voice .voice-subscriptions .section-header.section-header--customer-voice h2 {
          max-width: 770px;
          margin: -110px auto 20px;
          padding: 40px; } }

.subscriptions-voice .voice-subscriptions .section-body {
  background: #fff;
  padding: 30px 0; }
  .subscriptions-voice .voice-subscriptions .section-body__solution, .subscriptions-voice .voice-subscriptions .section-body__voice {
    background: #eee; }
  .subscriptions-voice .voice-subscriptions .section-body__ranking {
    position: relative;
    margin-top: 30px;
    border-bottom: 2px solid #ccc;
    display: block; }
    .subscriptions-voice .voice-subscriptions .section-body__ranking::after {
      position: absolute;
      content: '';
      display: block;
      bottom: -21px;
      left: 50%;
      width: 40px;
      height: 40px;
      -webkit-transform: translate(-50%, 0) rotate(45deg);
      transform: translate(-50%, 0) rotate(45deg);
      background-color: #fff;
      border-bottom: 2px solid #ccc;
      border-right: 2px solid #ccc;
      border-top: transparent;
      border-left: transparent; }
    @media only screen and (min-width: 992px) {
      .subscriptions-voice .voice-subscriptions .section-body__ranking .ranking {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
        .subscriptions-voice .voice-subscriptions .section-body__ranking .ranking .list__ranking {
          width: 50%;
          margin-top: 40px; }
        .subscriptions-voice .voice-subscriptions .section-body__ranking .ranking .ranking__image {
          width: 50%; } }
    @media only screen and (min-width: 992px) {
      .subscriptions-voice .voice-subscriptions .section-body__ranking .ranking--even .list__ranking {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2; }
      .subscriptions-voice .voice-subscriptions .section-body__ranking .ranking--even .ranking__image {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1; } }
    @media only screen and (min-width: 992px) {
      .subscriptions-voice .voice-subscriptions .section-body__ranking .list__ranking {
        width: 50%;
        padding: 20px; } }
    .subscriptions-voice .voice-subscriptions .section-body__ranking .list__ranking li {
      position: relative;
      margin-bottom: 20px; }
      .subscriptions-voice .voice-subscriptions .section-body__ranking .list__ranking li:nth-child(1) {
        color: #f46429;
        font-weight: bold;
        border: 4px solid #f0d12f;
        padding: 20px 0;
        text-align: center; }
        @media screen and (max-width: 320px) {
          .subscriptions-voice .voice-subscriptions .section-body__ranking .list__ranking li:nth-child(1) {
            font-size: 18px;
            font-size: 1.8rem; } }
        @media screen and (min-width: 576px) {
          .subscriptions-voice .voice-subscriptions .section-body__ranking .list__ranking li:nth-child(1) {
            font-size: 28px;
            font-size: 2.8rem; } }
        @media only screen and (min-width: 768px) {
          .subscriptions-voice .voice-subscriptions .section-body__ranking .list__ranking li:nth-child(1) {
            padding: 40px 0 30px; } }
        .subscriptions-voice .voice-subscriptions .section-body__ranking .list__ranking li:nth-child(1):before {
          content: "";
          position: absolute;
          top: -27px;
          left: 50%;
          -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
          display: inline-block;
          width: 49px;
          height: 36px;
          background: url(../img/voice/subscriptions/subscription_ranking_crown01.png) #fff no-repeat;
          background-size: contain; }
          @media only screen and (min-width: 768px) {
            .subscriptions-voice .voice-subscriptions .section-body__ranking .list__ranking li:nth-child(1):before {
              width: 98px;
              height: 72px;
              top: -50px; } }
      .subscriptions-voice .voice-subscriptions .section-body__ranking .list__ranking li:nth-child(2), .subscriptions-voice .voice-subscriptions .section-body__ranking .list__ranking li:nth-child(3) {
        font-size: 17px;
        font-size: 1.7rem; }
        @media screen and (max-width: 320px) {
          .subscriptions-voice .voice-subscriptions .section-body__ranking .list__ranking li:nth-child(2), .subscriptions-voice .voice-subscriptions .section-body__ranking .list__ranking li:nth-child(3) {
            font-size: 14px;
            font-size: 1.4rem; } }
        @media screen and (min-width: 576px) {
          .subscriptions-voice .voice-subscriptions .section-body__ranking .list__ranking li:nth-child(2), .subscriptions-voice .voice-subscriptions .section-body__ranking .list__ranking li:nth-child(3) {
            width: 280px;
            margin-right: auto;
            margin-left: auto; } }
        @media only screen and (min-width: 768px) {
          .subscriptions-voice .voice-subscriptions .section-body__ranking .list__ranking li:nth-child(2), .subscriptions-voice .voice-subscriptions .section-body__ranking .list__ranking li:nth-child(3) {
            font-size: 20px;
            font-size: 2rem;
            width: 350px; } }
        .subscriptions-voice .voice-subscriptions .section-body__ranking .list__ranking li:nth-child(2):before, .subscriptions-voice .voice-subscriptions .section-body__ranking .list__ranking li:nth-child(3):before {
          content: "";
          display: inline-block;
          vertical-align: -.2em;
          width: 40px;
          height: 30px;
          margin-right: 10px;
          background: url(../img/voice/subscriptions/subscription_ranking_crown02.png) #fff no-repeat;
          background-size: contain; }
          @media only screen and (min-width: 768px) {
            .subscriptions-voice .voice-subscriptions .section-body__ranking .list__ranking li:nth-child(2):before, .subscriptions-voice .voice-subscriptions .section-body__ranking .list__ranking li:nth-child(3):before {
              width: 80px;
              height: 60px;
              vertical-align: -.6em; } }
      .subscriptions-voice .voice-subscriptions .section-body__ranking .list__ranking li:nth-child(3):before {
        background: url(../img/voice/subscriptions/subscription_ranking_crown03.png) #fff no-repeat;
        background-size: contain; }
    .subscriptions-voice .voice-subscriptions .section-body__ranking .ranking__image {
      position: relative; }
      .subscriptions-voice .voice-subscriptions .section-body__ranking .ranking__image img {
        display: block;
        margin: 20px auto; }
      .subscriptions-voice .voice-subscriptions .section-body__ranking .ranking__image h3 {
        display: none; }
  @media screen and (min-width: 576px) {
    .subscriptions-voice .voice-subscriptions .section-body__ranking--right .list__ranking li:nth-child(2),
    .subscriptions-voice .voice-subscriptions .section-body__ranking--right .list__ranking li:nth-child(3) {
      width: 370px;
      margin-right: auto;
      margin-left: auto; } }
  @media only screen and (min-width: 768px) {
    .subscriptions-voice .voice-subscriptions .section-body__ranking--right .list__ranking li:nth-child(2),
    .subscriptions-voice .voice-subscriptions .section-body__ranking--right .list__ranking li:nth-child(3) {
      width: 430px; } }
  .subscriptions-voice .voice-subscriptions .section-body__solution {
    padding-top: 40px; }
    .subscriptions-voice .voice-subscriptions .section-body__solution h3 {
      margin-bottom: 30px; }
      .subscriptions-voice .voice-subscriptions .section-body__solution h3 img {
        display: block;
        margin: 20px auto; }
        @media only screen and (min-width: 768px) {
          .subscriptions-voice .voice-subscriptions .section-body__solution h3 img {
            margin: 40px auto; } }
    .subscriptions-voice .voice-subscriptions .section-body__solution .description__image img {
      display: block;
      margin: 20px auto; }
    @media only screen and (min-width: 992px) {
      .subscriptions-voice .voice-subscriptions .section-body__solution .description {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
        .subscriptions-voice .voice-subscriptions .section-body__solution .description__text {
          width: 70%;
          padding-right: 40px; }
        .subscriptions-voice .voice-subscriptions .section-body__solution .description__image {
          width: 30%; } }
    @media only screen and (min-width: 768px) {
      .subscriptions-voice .voice-subscriptions .section-body__solution .description.normal {
        display: block; }
        .subscriptions-voice .voice-subscriptions .section-body__solution .description.normal .description__text,
        .subscriptions-voice .voice-subscriptions .section-body__solution .description.normal .description__image {
          width: 100%;
          padding: 0; } }
    @media only screen and (min-width: 768px) {
      .subscriptions-voice .voice-subscriptions .section-body__solution .list--image-list {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        max-width: 600px;
        margin: 60px auto 30px; } }
    @media only screen and (min-width: 768px) {
      .subscriptions-voice .voice-subscriptions .section-body__solution .list--image-list li {
        width: 50%;
        padding: 0 10px; } }
    .subscriptions-voice .voice-subscriptions .section-body__solution .list--image-list li figure {
      display: block;
      margin: 16px auto; }
      .subscriptions-voice .voice-subscriptions .section-body__solution .list--image-list li figure figcaption {
        margin-top: 10px;
        text-align: center; }
  .subscriptions-voice .voice-subscriptions .section-body__voice .list--customer-voice {
    margin: 13% 0;
    padding: 10px 16px;
    background: #fff;
    border-radius: 6px; }
    @media only screen and (min-width: 768px) {
      .subscriptions-voice .voice-subscriptions .section-body__voice .list--customer-voice {
        margin: 140px 0 40px;
        padding: 40px; } }
    .subscriptions-voice .voice-subscriptions .section-body__voice .list--customer-voice li {
      position: relative;
      padding: 16px 0 20px 16px;
      border-bottom: 1px dashed #bbb; }
      @media only screen and (min-width: 768px) {
        .subscriptions-voice .voice-subscriptions .section-body__voice .list--customer-voice li {
          padding: 16px 0 20px 42px; } }
      .subscriptions-voice .voice-subscriptions .section-body__voice .list--customer-voice li::before {
        content: "";
        position: absolute;
        top: 24px;
        left: 0;
        display: inline-block;
        vertical-align: middle;
        border-radius: 50%;
        width: 8px;
        height: 8px;
        background: #539570; }
        @media only screen and (min-width: 768px) {
          .subscriptions-voice .voice-subscriptions .section-body__voice .list--customer-voice li::before {
            width: 16px;
            height: 16px;
            top: 27px; } }
      .subscriptions-voice .voice-subscriptions .section-body__voice .list--customer-voice li:last-child {
        border: none;
        padding-bottom: 10px; }
      .subscriptions-voice .voice-subscriptions .section-body__voice .list--customer-voice li p span {
        display: block;
        text-align: right; }

.subscriptions-voice .voice-subscriptions.voice-subscriptions--melit .section-header h2 {
  background: #fff; }

@media only screen and (min-width: 768px) {
  .subscriptions-voice .voice-subscriptions.voice-subscriptions--melit .section-body .list--subscriptions-melit {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; } }

.subscriptions-voice .voice-subscriptions.voice-subscriptions--melit .section-body .list--subscriptions-melit li {
  margin-bottom: 16px; }
  .subscriptions-voice .voice-subscriptions.voice-subscriptions--melit .section-body .list--subscriptions-melit li:last-child {
    margin-bottom: 0; }
  @media only screen and (min-width: 768px) {
    .subscriptions-voice .voice-subscriptions.voice-subscriptions--melit .section-body .list--subscriptions-melit li {
      width: 50%;
      margin-bottom: 0; } }

.subscriptions-voice .voice-subscriptions--submit h2 {
  margin-top: 40px; }
  @media only screen and (min-width: 992px) {
    .subscriptions-voice .voice-subscriptions--submit h2 {
      margin-top: 80px; } }

.subscriptions-voice .voice-subscriptions--submit .anchor {
  display: block;
  width: 100%;
  max-width: 700px;
  margin: 30px auto 0; }
  @media only screen and (min-width: 768px) {
    .subscriptions-voice .voice-subscriptions--submit .anchor {
      margin-top: 80px; }
      .subscriptions-voice .voice-subscriptions--submit .anchor:hover {
        opacity: .8; } }

html.line main {
  font-family: "Hiragino Kaku Gothic ProN", "メイリオ", sans-serif; }

.line-list--customer-voice + .paragraph {
  margin-top: 6px;
  text-align: right; }

.line-heading1 {
  line-height: 1.4;
  color: #2677C5;
  text-align: center;
  margin-top: 20px; }

.line-heading2 {
  line-height: 1.4;
  font-weight: bold;
  margin-bottom: 30px; }
  .line-heading2--privilege {
    font-size: 18px;
    font-size: 1.8rem;
    text-align: center;
    color: #24B425; }
    .line-heading2--privilege em:nth-of-type(2) {
      background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(0, #FFE588));
      background: linear-gradient(transparent 60%, #FFE588 0); }
    @media only screen and (min-width: 768px) {
      .line-heading2--privilege {
        font-size: 28px;
        font-size: 2.8rem; } }
    .line-heading2--privilege em {
      font-size: 32px;
      font-size: 3.2rem;
      font-style: normal; }
  .line-heading2--voice {
    color: #fff;
    text-align: center;
    padding: 16px 0 8px;
    background: #24B425; }
    @media only screen and (min-width: 992px) {
      .line-heading2--voice {
        font-size: 40px;
        font-size: 4rem;
        padding: 24px 0 16px; } }
  .line-heading2--inspection {
    font-size: 20px;
    font-size: 2rem;
    text-align: center;
    font-weight: bold;
    margin-bottom: 20px; }
    @media only screen and (min-width: 992px) {
      .line-heading2--inspection {
        font-size: 26px;
        font-size: 2.6rem;
        margin-bottom: 40px; } }
  .line-heading2--line-friend {
    color: #2677C5;
    text-align: center;
    font-weight: bold; }
  .line-heading2--qr {
    color: #24B425;
    text-align: center;
    margin-bottom: 30px; }
    .line-heading2--qr strong {
      background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(0, #FFE588));
      background: linear-gradient(transparent 60%, #FFE588 0); }
    @media only screen and (min-width: 768px) {
      .line-heading2--qr strong:nth-of-type(1) {
        margin-right: 1px; }
      .line-heading2--qr strong:nth-of-type(2) {
        margin-left: -8px; } }
    @media only screen and (min-width: 992px) {
      .line-heading2--qr {
        font-size: 40px;
        font-size: 4rem; } }

.line-heading3 {
  line-height: 1.4;
  margin-bottom: 30px; }
  .line-heading3--voice {
    font-weight: bold;
    margin-bottom: 30px;
    font-size: 16px;
    font-size: 1.6rem;
    text-align: center;
    color: #24B425; }
    .line-heading3--voice em {
      font-size: 19px;
      font-size: 1.9rem;
      font-style: normal; }
    @media only screen and (min-width: 992px) {
      .line-heading3--voice {
        letter-spacing: .2rem;
        font-size: 30px;
        font-size: 3rem; }
        .line-heading3--voice em {
          font-size: 35px;
          font-size: 3.5rem; } }
  .line-heading3--line-friend {
    font-size: 16px;
    font-size: 1.6rem;
    text-align: center;
    color: #fff;
    background: #2677C5;
    padding: 10px;
    letter-spacing: .2rem; }
    @media only screen and (min-width: 992px) {
      .line-heading3--line-friend {
        font-size: 22px;
        font-size: 2.2rem; } }

.line-heading4 {
  line-height: 1.4;
  font-size: 20px;
  font-size: 2rem;
  margin-bottom: 16px;
  font-weight: bold; }
  @media only screen and (min-width: 992px) {
    .line-heading4 {
      font-size: 25px;
      font-size: 2.5rem; } }
  @media screen and (min-width: 480px) {
    .line-heading4--step-title {
      font-size: 25px;
      font-size: 2.5rem; } }
  @media only screen and (min-width: 992px) {
    .line-heading4--step-title {
      font-size: 20px;
      font-size: 2rem; } }

.line-sub-text {
  font-size: 22px;
  font-size: 2.2rem;
  display: block;
  color: #2677C5;
  margin-top: 30px;
  text-align: center;
  font-weight: bold; }
  @media screen and (max-width: 320px) {
    .line-sub-text {
      font-size: 20px;
      font-size: 2rem; } }
  @media only screen and (min-width: 768px) {
    .line-sub-text {
      font-size: 34px;
      font-size: 3.4rem;
      margin-top: 60px; } }
  @media only screen and (min-width: 992px) {
    .line-sub-text {
      font-size: 40px;
      font-size: 4rem; } }

.line-section {
  padding: 20px 0; }
  .line-section--privilege {
    background: #fbf7e3; }
  .line-section--inspection {
    padding: 20px 0;
    background: #F3F8FC; }
    .line-section--inspection .line-block__img img {
      display: block;
      margin: 20px auto; }
      @media only screen and (min-width: 992px) {
        .line-section--inspection .line-block__img img {
          margin: 0 auto; } }
    @media only screen and (min-width: 992px) {
      .line-section--inspection {
        padding: 40px 0; }
        .line-section--inspection .line-block {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -ms-flex-wrap: wrap;
          flex-wrap: wrap;
          -webkit-box-pack: center;
          -ms-flex-pack: center;
          justify-content: center; }
          .line-section--inspection .line-block__text {
            font-size: 18px;
            font-size: 1.8rem;
            width: 40%;
            padding-right: 40px;
            margin-right: 40px; }
            .line-section--inspection .line-block__text .paragraph {
              margin: 0; }
          .line-section--inspection .line-block__img {
            width: 30%; } }

.line-block--bg-gray {
  background: #efefef;
  padding-top: 40px; }

@media only screen and (min-width: 992px) {
  .line-list--privilege {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between; } }

.line-list--privilege > .list__item {
  position: relative;
  text-align: left;
  background: #fff;
  margin-bottom: 20px;
  padding: 20px;
  -webkit-box-shadow: 0 0 6px #999;
  box-shadow: 0 0 6px #999;
  box-shadow: 0 0 6px #999; }
  .line-list--privilege > .list__item:nth-child(1) {
    text-align: center; }
  @media screen and (min-width: 390px) {
    .line-list--privilege > .list__item:nth-child(2) {
      text-align: center; } }
  @media only screen and (min-width: 992px) {
    .line-list--privilege > .list__item {
      font-size: 20px;
      font-size: 2rem;
      margin-bottom: 40px;
      width: 48%;
      text-align: center; }
      .line-list--privilege > .list__item:nth-child(3) {
        width: 100%; }
        .line-list--privilege > .list__item:nth-child(3) .line-block {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -ms-flex-wrap: wrap;
          flex-wrap: wrap;
          -webkit-box-pack: center;
          -ms-flex-pack: center;
          justify-content: center;
          -webkit-box-align: center;
          -ms-flex-align: center;
          align-items: center; }
          .line-list--privilege > .list__item:nth-child(3) .line-block__img {
            width: 50%;
            padding-right: 30px; } }
        @media only screen and (min-width: 992px) and (min-width: 1200px) {
          .line-list--privilege > .list__item:nth-child(3) .line-block__img {
            padding-right: 0; } }
  @media only screen and (min-width: 992px) {
          .line-list--privilege > .list__item:nth-child(3) .line-block__text {
            width: 50%;
            text-align: left;
            line-height: 1.8; } }
  .line-list--privilege > .list__item > .privilege-flag {
    position: absolute;
    top: 8px;
    left: -10px; }
    @media only screen and (min-width: 992px) {
      .line-list--privilege > .list__item > .privilege-flag {
        width: 200px;
        left: -17px; } }
  .line-list--privilege > .list__item img:not(.privilege-flag) {
    display: block;
    margin: 20px auto; }
    @media only screen and (min-width: 992px) {
      .line-list--privilege > .list__item img:not(.privilege-flag) {
        max-height: 160px;
        margin-bottom: 30px; } }
  .line-list--privilege > .list__item .line-heading3 {
    color: #f46429;
    text-align: left;
    font-weight: bold;
    padding-left: 104px; }
    @media only screen and (min-width: 992px) {
      .line-list--privilege > .list__item .line-heading3 {
        font-size: 40px;
        font-size: 4rem;
        padding-left: 190px;
        padding-top: 5px; } }

.line-list--customer-voice {
  border: 4px solid #24B425;
  border-radius: 4px;
  padding: 0 10px; }
  .line-list--customer-voice > .list__item {
    padding: 15px;
    border-top: 1px dotted #ddd; }
    .line-list--customer-voice > .list__item:first-child {
      border-top: none; }
    @media only screen and (min-width: 992px) {
      .line-list--customer-voice > .list__item .paragraph {
        margin-bottom: 20px;
        font-size: 20px;
        font-size: 2rem; } }
    .line-list--customer-voice > .list__item .name {
      font-size: 12px;
      font-size: 1.2rem;
      color: #666;
      display: block;
      text-align: right;
      margin-bottom: 30px; }
      @media only screen and (min-width: 992px) {
        .line-list--customer-voice > .list__item .name {
          font-size: 16px;
          font-size: 1.6rem; } }

@media only screen and (min-width: 992px) {
  .line-list--step {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-bottom: 80px; } }

.line-list--step > .list__item {
  background: #fff;
  margin-bottom: 20px;
  padding: 20px;
  -webkit-box-shadow: 0 0 6px #999;
  box-shadow: 0 0 6px #999;
  color: #24B425;
  text-align: center; }
  .line-list--step > .list__item img {
    display: block;
    margin: 0 auto;
    border: 1px solid #ddd; }
  .line-list--step > .list__item:nth-child(3) img {
    border: none; }
    @media only screen and (min-width: 992px) {
      .line-list--step > .list__item:nth-child(3) img {
        max-height: 217px; } }
  @media only screen and (min-width: 992px) {
    .line-list--step > .list__item {
      width: 31%;
      margin: 0 10px; } }

.line-regist-img {
  position: relative; }
  @media only screen and (min-width: 768px) {
    .line-regist-img::before, .line-regist-img::after {
      content: "";
      position: absolute;
      top: -90px;
      display: block;
      width: 120px;
      height: 84px; } }
  @media only screen and (min-width: 768px) and (min-width: 992px) {
    .line-regist-img::before, .line-regist-img::after {
      width: 190px;
      height: 134px; } }
  @media only screen and (min-width: 768px) {
    .line-regist-img::before {
      left: 0;
      background: url(../img/line/line_stars_left.png) no-repeat 50% 50%/contain; } }
  @media only screen and (min-width: 768px) and (min-width: 1200px) {
    .line-regist-img::before {
      left: 80px; } }
  @media only screen and (min-width: 768px) {
    .line-regist-img::after {
      right: 0;
      background: url(../img/line/line_stars_right.png) no-repeat 50% 50%/contain; } }
  @media only screen and (min-width: 768px) and (min-width: 1200px) {
    .line-regist-img::after {
      right: 80px; } }

.campaign-section {
  -webkit-box-shadow: none;
  box-shadow: none; }

.youtube.campaign-youtube {
  margin: 30px auto; }
  @media screen and (min-width: 560px) {
    .youtube.campaign-youtube {
      max-width: 560px;
      padding-top: 320px; } }

.table > tbody > tr:nth-child(even) {
  background: #fff; }

.table > tbody > tr:nth-of-type(odd) {
  background: #f1f6fe; }

.campaign-product {
  margin-top: 20px;
  padding: 10px;
  border: 1px solid #3384c9;
  border-radius: 4px; }
  .campaign-product__thumbnail {
    text-align: center;
    margin-bottom: 10px; }
    .campaign-product__thumbnail img {
      width: 80%; }
  .campaign-product__infomation .paragraph {
    padding: 10px;
    background: #e8e8e8;
    line-height: 1.2;
    border-radius: 4px; }
  .campaign-product .button--campaign-product-subscription {
    max-width: 480px;
    margin: 10px auto 0; }
    @media screen and (max-width: 566px) {
      .campaign-product .button--campaign-product-subscription {
        max-width: 90%;
        margin-bottom: 10px; } }
    @media only screen and (min-width: 768px) {
      .campaign-product .button--campaign-product-subscription {
        margin: 20px auto;
        font-size: 22px;
        font-size: 2.2rem; } }
  .campaign-product--single .campaign-product__infomation {
    text-align: center; }
  .campaign-product--single .campaign-product__button-area + .paragraph {
    display: none; }
  @media screen and (min-width: 600px) {
    .campaign-product--single {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center; }
      .campaign-product--single .campaign-product__thumbnail {
        width: 30%; }
      .campaign-product--single .campaign-product__right {
        width: 70%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between; }
        .campaign-product--single .campaign-product__right .campaign-product__infomation {
          width: calc(50% - 5px);
          text-align: center; }
          .campaign-product--single .campaign-product__right .campaign-product__infomation .paragraph {
            display: none; }
        .campaign-product--single .campaign-product__right .campaign-product__button-area {
          width: calc(50% - 5px); }
          .campaign-product--single .campaign-product__right .campaign-product__button-area a.button.button--campaign-product-subscription {
            font-size: 16px;
            font-size: 1.6rem;
            margin: 0 0 auto; }
        .campaign-product--single .campaign-product__right .campaign-product__button-area + .paragraph {
          width: 100%;
          padding: 10px;
          background: #e8e8e8;
          line-height: 1.2;
          border-radius: 4px;
          display: block; } }
  @media only screen and (min-width: 992px) {
    .campaign-product--single .campaign-product__infomation {
      width: 30%; }
    .campaign-product--single .campaign-product__button-area {
      width: 30%; }
    .campaign-product--single .campaign-product__button-area + .paragraph {
      display: block; } }

.campaign-section .campaign-product-subscription-list {
  margin-top: 0;
  background-color: #f2f2f2; }
  @media only screen and (min-width: 992px) {
    .campaign-section .campaign-product-subscription-list {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center; } }
  .campaign-section .campaign-product-subscription-list li {
    text-align: center;
    padding: 15px; }
    @media only screen and (min-width: 992px) {
      .campaign-section .campaign-product-subscription-list li {
        width: calc(50% - 10px);
        text-align: center; } }

.campaign-section .campaign-product-privileges-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-top: 10px;
  padding: 10px;
  background: #f1f6fe; }
  .campaign-section .campaign-product-privileges-list li {
    width: calc(100% /2  - 5px);
    margin-bottom: 10px;
    text-align: center; }
    .campaign-section .campaign-product-privileges-list li img {
      width: 100%; }
    .campaign-section .campaign-product-privileges-list li:nth-last-child(1), .campaign-section .campaign-product-privileges-list li:nth-last-child(2) {
      margin-bottom: 0; }
    @media screen and (min-width: 500px) {
      .campaign-section .campaign-product-privileges-list li {
        width: calc(100% / 3 - 5px); } }
    @media only screen and (min-width: 992px) {
      .campaign-section .campaign-product-privileges-list li {
        width: calc(100% / 6 - 5px); } }

.campaign-section__bg-dark {
  color: #fff;
  padding: 20px 15px;
  background: #1e364e; }
  @media only screen and (min-width: 992px) {
    .campaign-section__bg-dark__header .paragraph {
      font-size: 22px;
      font-size: 2.2rem; } }
  .campaign-section__bg-dark__header div:nth-of-type(2) {
    margin: 20px 0; }
  @media only screen and (min-width: 768px) {
    .campaign-section__bg-dark__header {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      padding: 20px 0;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center; }
      .campaign-section__bg-dark__header div:nth-of-type(1) {
        width: calc(65% - 10px); }
      .campaign-section__bg-dark__header div:nth-of-type(2) {
        width: calc(35% - 10px);
        text-align: right;
        margin: 0; } }
  .campaign-section__bg-dark__bg-white {
    color: #000;
    background: #fff;
    padding: 20px 15px;
    background: url(/img/campaign-lp/bg.jpg) repeat;
    border-radius: 8px; }
    .campaign-section__bg-dark__bg-white .title {
      font-size: 16px;
      font-size: 1.6rem;
      border: 1px solid #2b90ec;
      margin: 10px 0 20px;
      background: #fff; }
      @media only screen and (min-width: 992px) {
        .campaign-section__bg-dark__bg-white .title {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
          .campaign-section__bg-dark__bg-white .title span {
            font-size: 20px;
            font-size: 2rem; } }
      .campaign-section__bg-dark__bg-white .title span:nth-of-type(1) {
        display: block;
        color: #fff;
        text-align: center;
        padding: 10px;
        background: #2b90ec; }
        @media only screen and (min-width: 992px) {
          .campaign-section__bg-dark__bg-white .title span:nth-of-type(1) {
            width: 200px;
            padding: 9px 0 0; } }
      .campaign-section__bg-dark__bg-white .title span:nth-of-type(2) {
        display: block;
        padding: 8px; }
        @media only screen and (min-width: 992px) {
          .campaign-section__bg-dark__bg-white .title span:nth-of-type(2) {
            width: 70%; } }

.button--campaign-product-subscription {
  display: block;
  background: -webkit-gradient(linear, left top, right top, from(#00946e), to(#007a5a));
  background: linear-gradient(to right, #00946e, #007a5a);
  text-align: center;
  margin: 10px 0 auto;
  padding: 14px 20px;
  -webkit-box-shadow: 0 4px 5px rgba(0, 0, 0, 0.3);
  box-shadow: 0 4px 5px rgba(0, 0, 0, 0.3); }
  .button--campaign-product-subscription:hover {
    opacity: .6;
    -webkit-box-shadow: none;
    box-shadow: none; }
  @media only screen and (min-width: 768px) {
    .button--campaign-product-subscription {
      margin: 20px 0 auto; } }

.hearing__body {
  background: #e8e8e8;
  padding: 10px;
  border-radius: 4px; }
  @media only screen and (min-width: 768px) {
    .hearing__body {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      padding: 20px 10px; } }
  .hearing__body__graph {
    text-align: center;
    margin-bottom: 20px; }
    @media only screen and (min-width: 768px) {
      .hearing__body__graph {
        width: 30%;
        margin-bottom: 0; } }
    .hearing__body__graph img {
      width: 70%;
      margin: 0 auto; }
      @media only screen and (min-width: 768px) {
        .hearing__body__graph img {
          width: 100%; } }
  @media only screen and (min-width: 768px) {
    .hearing__body__text {
      width: 70%;
      padding-left: 20px; } }
  .hearing__body__text h4 {
    color: #3384c9;
    line-height: 1.4; }
    @media only screen and (min-width: 768px) {
      .hearing__body__text h4 {
        font-size: 20px;
        font-size: 2rem; } }
    @media only screen and (min-width: 992px) {
      .hearing__body__text h4 {
        font-size: 30px;
        font-size: 3rem; } }

.campaign-arrow {
  text-align: center; }
  .campaign-arrow img {
    width: 174px;
    height: auto; }
    @media only screen and (min-width: 768px) {
      .campaign-arrow img {
        width: auto; } }

.campaign-coupon {
  border: 4px solid #3384c9;
  max-width: 438px;
  margin: 0 auto; }
  .campaign-coupon__header {
    padding: 10px 10px 0 10px; }
  .campaign-coupon__body {
    padding: 10px; }
    .campaign-coupon__body .campaign-coupon__coupon {
      text-align: center;
      border: 2px solid #3384c9;
      margin-bottom: 10px; }
      .campaign-coupon__body .campaign-coupon__coupon span {
        display: block;
        font-size: 16px;
        font-size: 1.6rem; }
        .campaign-coupon__body .campaign-coupon__coupon span:nth-of-type(1) {
          color: #fff;
          background: #3384c9; }
        .campaign-coupon__body .campaign-coupon__coupon span:nth-of-type(2) {
          padding: 4px 0; }
        @media only screen and (min-width: 992px) {
          .campaign-coupon__body .campaign-coupon__coupon span {
            font-size: 28px;
            font-size: 2.8rem; } }
    .campaign-coupon__body ul {
      list-style-type: disc;
      padding-left: 16px; }
      .campaign-coupon__body ul li {
        font-size: 10px; }
  .campaign-coupon__footer {
    color: #fff;
    font-size: 12px;
    padding: 7px 10px 2px;
    background: #3384c9; }

.campaign-reason {
  padding: 0;
  margin: 30px 0;
  border: 1px solid #3384c9; }
  .campaign-reason__header {
    padding: 4px 8px;
    background: #3384c9; }
    .campaign-reason__header h2 {
      padding: 6px 0; }
  .campaign-reason__content {
    padding: 10px; }
    @media only screen and (min-width: 768px) {
      .campaign-reason__content__right {
        width: calc(65% - 10px); } }
    @media only screen and (min-width: 992px) {
      .campaign-reason__content__right .paragraph {
        font-size: 18px;
        font-size: 1.8rem; } }
    .campaign-reason__content__right h4 {
      color: #ff641e;
      margin: 10px 0;
      line-height: 1.4; }
    @media only screen and (min-width: 768px) {
      .campaign-reason__content__right h5 {
        font-size: 20px;
        font-size: 2rem; } }
    @media only screen and (min-width: 768px) {
      .campaign-reason__content__left {
        width: calc(35% - 10px); } }
    @media only screen and (min-width: 992px) {
      .campaign-reason__content .reason-list {
        max-width: 992px;
        margin: 0 auto; } }
    .campaign-reason__content .reason-list li {
      border-bottom: 1px solid #ddd; }
      @media only screen and (min-width: 768px) {
        .campaign-reason__content .reason-list li {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -ms-flex-wrap: wrap;
          flex-wrap: wrap;
          -webkit-box-pack: justify;
          -ms-flex-pack: justify;
          justify-content: space-between; } }
      .campaign-reason__content .reason-list li .paragraph {
        text-align: left; }
      .campaign-reason__content .reason-list li:last-child {
        border-bottom: none; }
      .campaign-reason__content .reason-list li h3 {
        text-align: center;
        margin: 20px 0; }
        @media only screen and (min-width: 768px) {
          .campaign-reason__content .reason-list li h3 {
            width: 100%;
            margin: 30px 0; } }
      .campaign-reason__content .reason-list li .patent-list li {
        border-bottom: none; }
        .campaign-reason__content .reason-list li .patent-list li h5 {
          font-weight: bold;
          background: #e8e8e8;
          padding: 8px 8px 5px;
          line-height: 1.4;
          width: 100%; }

.how-to-use h2 {
  font-size: 14px;
  font-size: 1.4rem;
  color: #fff;
  background-color: #2ca6e0;
  padding: 8px;
  text-align: center;
  margin-bottom: 20px; }
  @media only screen and (min-width: 768px) {
    .how-to-use h2 {
      font-size: 22px;
      font-size: 2.2rem;
      padding: 12px 0 8px; } }
  @media only screen and (min-width: 992px) {
    .how-to-use h2 {
      font-size: 30px;
      font-size: 3rem;
      padding: 16px 0 10px; } }

.how-to-use h3 {
  position: relative;
  font-size: 12px;
  font-size: 1.2rem;
  color: #1d2087;
  padding-left: 24px;
  line-height: 1.6;
  margin-bottom: 20px;
  font-weight: bold; }
  @media only screen and (min-width: 992px) {
    .how-to-use h3 {
      font-size: 18px;
      font-size: 1.8rem; } }
  .how-to-use h3:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    margin-top: -10px;
    display: block;
    width: 20px;
    height: 20px;
    background: #1d2087;
    border-radius: 50%; }

@media only screen and (min-width: 768px) {
  .how-to-use__images {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between; } }

@media only screen and (min-width: 992px) {
  .how-to-use__images {
    max-width: 992px;
    margin: 0 auto; } }

.how-to-use__left {
  margin-bottom: 20px; }

@media only screen and (min-width: 768px) {
  .how-to-use__left, .how-to-use__right {
    width: 50%; } }

.how-to-use02 h2 {
  font-size: 14px;
  font-size: 1.4rem;
  color: #fff;
  background-color: #2ca6e0;
  padding: 8px;
  text-align: center;
  margin-bottom: 20px; }
  @media only screen and (min-width: 768px) {
    .how-to-use02 h2 {
      font-size: 22px;
      font-size: 2.2rem;
      padding: 12px 0 8px; } }
  @media only screen and (min-width: 992px) {
    .how-to-use02 h2 {
      font-size: 30px;
      font-size: 3rem;
      padding: 16px 0 10px; } }

.how-to-use02 .how-to-use-list {
  max-width: 992px;
  margin: 0 auto; }
  @media only screen and (min-width: 768px) {
    .how-to-use02 .how-to-use-list {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between; } }
  .how-to-use02 .how-to-use-list li {
    margin-bottom: 20px; }
    @media only screen and (min-width: 768px) {
      .how-to-use02 .how-to-use-list li {
        width: calc(50% - 5px);
        margin-bottom: 30px; } }
    .how-to-use02 .how-to-use-list li:last-child {
      margin-bottom: 0; }

.exchange h2 {
  font-size: 14px;
  font-size: 1.4rem;
  color: #fff;
  background-color: #2ca6e0;
  padding: 8px;
  text-align: center;
  margin-bottom: 20px; }
  @media only screen and (min-width: 768px) {
    .exchange h2 {
      font-size: 22px;
      font-size: 2.2rem;
      padding: 12px 0 8px; } }
  @media only screen and (min-width: 992px) {
    .exchange h2 {
      font-size: 30px;
      font-size: 3rem;
      padding: 16px 0 10px; } }

.exchange h3 {
  position: relative;
  font-size: 12px;
  font-size: 1.2rem;
  color: #1d2087;
  padding-left: 24px;
  line-height: 1.6;
  margin-bottom: 20px;
  font-weight: bold; }
  @media only screen and (min-width: 992px) {
    .exchange h3 {
      font-size: 18px;
      font-size: 1.8rem; } }
  .exchange h3:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    margin-top: -10px;
    display: block;
    width: 20px;
    height: 20px;
    background: #1d2087;
    border-radius: 50%; }

.exchange__content {
  max-width: 992px;
  margin: 0 auto; }
  @media only screen and (min-width: 768px) {
    .exchange__content .exchange-list {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between; } }
  .exchange__content .exchange-list li {
    margin-bottom: 20px; }
    @media only screen and (min-width: 768px) {
      .exchange__content .exchange-list li {
        width: calc(100% / 3 - 5px); } }

.voice h2 {
  font-size: 14px;
  font-size: 1.4rem;
  color: #fff;
  background-color: #2ca6e0;
  padding: 8px;
  text-align: center;
  margin-bottom: 20px; }
  @media only screen and (min-width: 768px) {
    .voice h2 {
      font-size: 22px;
      font-size: 2.2rem;
      padding: 12px 0 8px; } }
  @media only screen and (min-width: 992px) {
    .voice h2 {
      font-size: 30px;
      font-size: 3rem;
      padding: 16px 0 10px; } }

@media only screen and (min-width: 768px) {
  .voice .voice-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between; } }

@media only screen and (min-width: 768px) {
  .voice .voice-list li {
    width: calc(50% - 10px); } }

.voice .voice-list li .voice__content h3 {
  font-size: 18px;
  font-size: 1.8rem;
  color: #3384c9;
  background: #e8e8e8;
  padding: 10px 4px 7px;
  font-weight: bold; }

.voice .voice-list li .voice__content .paragraph span {
  color: #ff641e; }

.campaign-service {
  background: #e8e8e8;
  padding: 15px; }
  .campaign-service h2 {
    font-size: 14px;
    font-size: 1.4rem;
    text-align: center;
    color: #3384C9;
    font-weight: bold;
    border: 2px solid #3384C9;
    line-height: 1.6;
    background: #f1f6fe;
    padding: 12px;
    max-width: 420px;
    margin: -60px auto 20px; }
    @media only screen and (min-width: 768px) {
      .campaign-service h2 {
        font-size: 22px;
        font-size: 2.2rem;
        max-width: 600px;
        margin: -60px auto 20px; } }
  .campaign-service .campaign-service-privileges h3 {
    margin-bottom: 20px; }
  @media screen and (min-width: 400px) {
    .campaign-service .campaign-service-privileges__list {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between; } }
  .campaign-service .campaign-service-privileges__list li {
    text-align: center;
    margin-bottom: 20px; }
    @media screen and (min-width: 400px) {
      .campaign-service .campaign-service-privileges__list li {
        width: calc(100% / 2 - 10px); } }
    @media only screen and (min-width: 768px) {
      .campaign-service .campaign-service-privileges__list li {
        width: calc(100% / 3 - 10px); } }
    .campaign-service .campaign-service-privileges__list li:last-child {
      margin-bottom: 0; }
  .campaign-service .campaign-service-presents__text {
    font-size: 14px;
    font-size: 1.4rem; }
    @media only screen and (min-width: 768px) {
      .campaign-service .campaign-service-presents__text {
        text-align: center;
        margin-bottom: 20px; } }
  @media only screen and (min-width: 768px) {
    .campaign-service .campaign-service-presents__list {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between; } }
  .campaign-service .campaign-service-presents__list .tac {
    margin-bottom: 10px; }
    @media only screen and (min-width: 768px) {
      .campaign-service .campaign-service-presents__list .tac {
        margin-bottom: 20px; } }
  .campaign-service .campaign-service-presents__list li {
    background: #fff;
    padding: 10px;
    border: 2px solid #ddd;
    margin-bottom: 20px; }
    @media only screen and (min-width: 768px) {
      .campaign-service .campaign-service-presents__list li {
        width: calc(100% / 3 - 10px); } }
    .campaign-service .campaign-service-presents__list li h4 {
      font-size: 14px;
      font-size: 1.4rem;
      color: #3384C9;
      font-weight: bold; }

.campaign-question h2 {
  font-size: 14px;
  font-size: 1.4rem;
  color: #fff;
  background-color: #2ca6e0;
  padding: 8px;
  text-align: center;
  margin: 20px 0; }
  @media only screen and (min-width: 768px) {
    .campaign-question h2 {
      font-size: 22px;
      font-size: 2.2rem;
      padding: 12px 0 8px; } }
  @media only screen and (min-width: 992px) {
    .campaign-question h2 {
      font-size: 30px;
      font-size: 3rem;
      padding: 16px 0 10px; } }

@media screen and (min-width: 500px) {
  .question-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; } }

.question-list li {
  margin-bottom: 20px; }
  @media screen and (min-width: 500px) {
    .question-list li {
      width: 50%; } }
  @media only screen and (min-width: 992px) {
    .question-list li {
      width: 25%; } }

.campaign-c .campaign-section {
  padding: 0; }

.campaign-c .campaign-section__bg-dark {
  color: #333;
  background-color: #f4eade; }
  @media only screen and (min-width: 992px) {
    .campaign-c .campaign-section__bg-dark {
      padding: 20px 30px; } }

.campaign-c .campaign-section__bg-dark__bg-white .title {
  display: block;
  text-align: left;
  font-weight: bold;
  padding: 15px 10px 10px;
  line-height: 1.6; }
  @media only screen and (min-width: 768px) {
    .campaign-c .campaign-section__bg-dark__bg-white .title {
      text-align: center; } }

.campaign-c .list.list--campaign-c-reason {
  margin: 30px; }
  @media screen and (min-width: 570px) {
    .campaign-c .list.list--campaign-c-reason {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between; } }
  .campaign-c .list.list--campaign-c-reason .list__item {
    width: 80%;
    margin: 0 auto 30px; }
    @media screen and (min-width: 570px) {
      .campaign-c .list.list--campaign-c-reason .list__item {
        width: 30%; } }

.campaign-c .campaign-section.campaign-section--doctor {
  margin-bottom: 40px; }
  @media only screen and (min-width: 992px) {
    .campaign-c .campaign-section.campaign-section--doctor {
      margin-bottom: 80px; } }
  .campaign-c .campaign-section.campaign-section--doctor h2 {
    font-size: 18px;
    font-size: 1.8rem;
    padding: 4px 0;
    border-top: 2px solid #ccc;
    border-bottom: 2px solid #ccc;
    margin-bottom: 40px;
    line-height: 1.6; }
    @media only screen and (min-width: 992px) {
      .campaign-c .campaign-section.campaign-section--doctor h2 {
        font-size: 24px;
        font-size: 2.4rem;
        text-align: center; } }
    .campaign-c .campaign-section.campaign-section--doctor h2 span {
      display: block;
      width: 100%;
      padding: 14px 0 8px;
      border-top: 1px dashed #ccc;
      border-bottom: 1px dashed #ccc; }
  .campaign-c .campaign-section.campaign-section--doctor .row {
    padding: 0 15px;
    margin-bottom: 30px; }
    @media only screen and (min-width: 992px) {
      .campaign-c .campaign-section.campaign-section--doctor .row {
        padding: 0; } }
  .campaign-c .campaign-section.campaign-section--doctor h3 {
    font-size: 16px;
    font-size: 1.6rem;
    position: relative;
    line-height: 1.6;
    color: #ed8c72;
    padding: 4px;
    background-color: #f4eade;
    margin-bottom: 20px; }
    @media only screen and (min-width: 992px) {
      .campaign-c .campaign-section.campaign-section--doctor h3 {
        font-size: 20px;
        font-size: 2rem; } }
    .campaign-c .campaign-section.campaign-section--doctor h3 span {
      display: block;
      border: 1px solid #fff;
      padding: 8px 8px 8px 28px; }
      @media only screen and (min-width: 992px) {
        .campaign-c .campaign-section.campaign-section--doctor h3 span {
          padding: 12px 8px 8px 40px; } }
      .campaign-c .campaign-section.campaign-section--doctor h3 span::after {
        content: "";
        display: block;
        position: absolute;
        top: 18px;
        left: 12px;
        width: 12px;
        height: 14px;
        background: url(/img/campaign-c-lp/campaign-icon-question.png) no-repeat 50% 50%/contain; }
        @media only screen and (min-width: 992px) {
          .campaign-c .campaign-section.campaign-section--doctor h3 span::after {
            top: 18px;
            width: 24px;
            height: 28px; } }
  .campaign-c .campaign-section.campaign-section--doctor .paragraph.paragraph--answer {
    position: relative;
    padding-left: 20px; }
    @media only screen and (min-width: 992px) {
      .campaign-c .campaign-section.campaign-section--doctor .paragraph.paragraph--answer {
        padding-left: 40px; } }
    .campaign-c .campaign-section.campaign-section--doctor .paragraph.paragraph--answer::after {
      content: "";
      display: block;
      position: absolute;
      top: 4px;
      left: 0;
      width: 12px;
      height: 14px;
      background: url(/img/campaign-c-lp/campaign-icon-answer.png) no-repeat 50% 50%/contain; }
      @media only screen and (min-width: 992px) {
        .campaign-c .campaign-section.campaign-section--doctor .paragraph.paragraph--answer::after {
          top: 0;
          width: 24px;
          height: 28px; } }
    .campaign-c .campaign-section.campaign-section--doctor .paragraph.paragraph--answer span {
      font-weight: bold;
      display: inline;
      background: #fef0d9; }
  .campaign-c .campaign-section.campaign-section--doctor .list.list--note {
    font-size: 12px;
    font-size: 1.2rem;
    margin-top: 20px;
    background: #f2f2f2;
    padding: 10px; }
    @media only screen and (min-width: 992px) {
      .campaign-c .campaign-section.campaign-section--doctor .list.list--note {
        margin-left: 38px; } }

/*# sourceMappingURL=style.css.map */
