@charset "UTF-8";
:root {
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 62.5%;
  line-height: 1;
  letter-spacing: -.5px;
  color: #231815;
  -webkit-font-feature-settings: 'palt';
  font-feature-settings: 'palt';
  -webkit-text-size-adjust: 100%;
}

:root * {
  font-weight: inherit;
  list-style: none;
}

/*デバイスが縦向きの場合*/
/*デバイスが横向きの場合*/
html,
body {
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
}

img {
  width: 100%;
  vertical-align: bottom;
}

.l-wrapper {
  width: 100%;
  height: 100%;
  background-image: url("../images/sp.png");
  background-repeat: no-repeat;
  background-position: top center;
  background-size: 100%;
}

.l-inner {
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  margin: auto;
}

.pc,
.col-sm-num {
  display: none;
}

.sbr {
  display: block;
}

.visible {
  display: block;
}

.hidden {
  display: none;
}

#message,
#customers,
#campaign,
#simulate,
#faq,
#store,
#howto {
  margin-top: -12.5%;
  padding-top: 12.5%;
}

/*
 サイト内共通
 */
.content-title {
  font-size: 3.8vw;
  font-weight: bold;
  padding-bottom: 2%;
  text-align: center;
}

.content-sub {
  width: 56%;
  margin: auto;
}

.entry-btn a {
  font-size: 3.8vw;
  line-height: 1.5;
  position: relative;
  display: block;
  box-sizing: border-box;
  width: 67%;
  min-height: 200px;
  margin: auto;
  padding: 10% 0;
  text-align: center;
  font-style: bold;
  text-decoration: none;
  color: #fff;
  background-image: url("../images/930x200.png");
  background-repeat: no-repeat;
}

.entry-btn span {
  font-size: 2.6vw;
  display: block;
  -webkit-transform: scale(0.7, 0.7);
  transform: scale(0.7, 0.7);
  white-space: nowrap;
}

.conf-btn a {
  font-size: 2.6vw;
  line-height: 1.5;
  position: relative;
  display: block;
  box-sizing: border-box;
  width: 67%;
  min-height: 50px;
  margin: auto;
  padding: 2.5% 0;
  text-align: center;
  text-decoration: none;
  color: #fff;
  background-color: #40292e;
  background-image: url("../images/ids/img-arrow-down.png");
  background-repeat: no-repeat;
  background-position: bottom 10px center;
  background-size: 3.5%;
}

.conf-btn span {
  font-size: 2.6vw;
  display: block;
  -webkit-transform: scale(0.7, 0.7);
  transform: scale(0.7, 0.7);
  white-space: nowrap;
}

.c-header {
  position: fixed;
  z-index: 999;
  overflow: hidden;
  width: 100%;
  background: #fff;
}

.c-header__logo {
  width: 100%;
  margin: auto;
  padding: 3.5% 0;
  text-align: center;
  background: #fff;
}

.c-header__logo img {
  width: 27%;
  margin: auto;
  text-align: center;
}

.c-header__open {
  position: absolute;
  top: 0;
  right: 0;
  width: 12.8%;
}

.c-header__close {
  position: absolute;
  z-index: 9999;
  top: 0;
  right: 0;
  width: 12.8%;
}

.c-header__sp-close {
  position: fixed;
  z-index: 99;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  overflow-y: auto;
  width: 100%;
  height: 100%;
  background: black;
}

.c-header__anchor {
  font-size: 3.8vw;
  text-align: center;
}

.c-header__anchor li {
  border-bottom: 1px #fff solid;
}

.c-header__anchor a {
  display: block;
  padding: 5% 0;
  text-decoration: none;
  color: #fff;
}

.c-main {
  position: relative;
  padding-top: 12%;
  opacity: 1.6;
  background: #fff;
}

.c-main__adjust {
  padding-bottom: 5%;
}

.c-main__kv {
  position: relative;
  width: 100%;
  background-image: url("../images/ids/bg-main.jpg");
  background-repeat: no-repeat;
  background-position: center top;
  background-size: cover;
}

.c-main__catch {
  width: 82%;
  margin: auto;
  padding: 14% 0 12%;
}

.c-main__scroll {
  position: absolute;
  right: 0;
  bottom: 4%;
  left: 0;
  width: 8%;
  margin: auto;
}

.c-main__lead {
  font-weight: bold;
  line-height: 2.4;
  padding: 5% 0 7%;
  text-align: center;
}

.c-main__lead span {
  color: #b81c22;
}

.c-main__caption {
  font-size: 3.0vw;
  font-weight: bold;
  width: 88%;
  margin: auto;
  padding: 2.5% 0;
  text-align: center;
  color: #fff;
  background: #40292e;
}

.c-main__frame {
  box-sizing: border-box;
  width: 88%;
  margin: 0 auto;
  padding: 5%;
  background: #f2f2f2;
}

.c-main__frame .entry-btn a,
.c-main__frame .conf-btn a {
  width: 86%;
}

.c-main__frame .L {
  margin-bottom: 5%;
}

.c-main__frame-caption {
  font-size: 3.8vw;
  font-weight: bold;
  margin-bottom: 8%;
  text-align: center;
}

.c-main__frame-detail {
  font-size: 2.6vw;
  line-height: 1.5;
  box-sizing: border-box;
  margin: 0 auto 5%;
  padding: 3% 0;
  text-align: center;
  background: #fff;
}

.c-main__frame-detail span {
  font-size: 3.2vw;
  line-height: 1.8;
  display: block;
  padding-top: 3%;
}

.c-message {
  padding-top: 10%;
  padding-bottom: 6%;
  color: #fff;
  background-color: #9fa0a0;
}

.c-message__photo {
  position: relative;
  width: 82%;
  margin: auto;
  padding-top: 9%;
}

.c-message__photo p {
  font-size: 2.8vw;
  line-height: 1.8;
  padding-top: 4.5%;
}

.c-message__photo .bx-prev {
  position: absolute;
  top: 35.5%;
  left: -6.5%;
  display: block;
  width: 12.5%;
  height: 14%;
  opacity: .8;
  background-image: url("../images/ids/img-arrow-left.png");
  background-repeat: no-repeat;
  background-size: 100%;
}

.c-message__photo .bx-next {
  position: absolute;
  top: 35.5%;
  right: -6.5%;
  display: block;
  width: 12.5%;
  height: 14%;
  opacity: .8;
  background-image: url("../images/ids/img-arrow-right.png");
  background-repeat: no-repeat;
  background-size: 100%;
}

.c-customers {
  padding-top: 10%;
  padding-bottom: 10%;
  background-color: #e5dfe2;
}

.c-customers__photo {
  width: 87%;
  margin: auto;
  padding-top: 10%;
}

.c-customers__photo li {
  margin-bottom: 3%;
}

.c-customers__info {
  font-size: 2.8vw;
  line-height: 1.8;
  width: 87%;
  margin: auto;
  padding-top: 3%;
  padding-bottom: 11%;
}

.c-customers__comment {
  font-size: 2.8vw;
  line-height: 1.8;
  box-sizing: border-box;
  width: 87%;
  margin: 0 auto 10%;
  padding: 2.5%;
  background-color: #fff;
}

.c-campaign {
  font-family: 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3';
  padding-top: 10%;
  padding-bottom: 10%;
  background-color: #fff;
}

.c-campaign__icon {
  width: 100%;
  margin: auto;
  padding-bottom: 8%;
}

.c-campaign__title {
  font-size: 4.0vw;
  line-height: 2.0;
  padding: 6%;
  text-align: center;
}

.c-campaign__title span {
  font-size: 5.0vw;
  display: block;
}

.c-campaign__sub {
  font-size: 2.8vw;
  line-height: 2.4;
  padding-bottom: 6%;
  text-align: center;
}

.c-campaign__sub span {
  display: block;
}

.c-campaign__frame {
  width: 100%;
  margin: 0 auto 6%;
  padding: 7% 0;
  background-color: #f2f2f3;
}

.c-campaign__info-date {
  width: 87%;
  margin-bottom: 3%;
  margin-left: 5%;
}

.c-campaign__info-kikan {
  width: 87%;
  margin-left: 5%;
}

.c-campaign__present {
  margin: 0 auto;
}

.c-campaign__present::after {
  display: block;
  clear: both;
  content: '';
}

.c-campaign__present table {
  width: 90%;
  margin: auto;
}

.c-campaign__present th {
  font-size: 2.6vw;
  line-height: 1.5;
  width: 20%;
  text-align: center;
  vertical-align: middle;
  color: #fff;
  background-color: #000;
}

.c-campaign__present th span {
  font-size: 3.8vw;
  font-weight: bold;
}

.c-campaign__present td {
  font-size: 3.0vw;
  font-weight: bold;
  line-height: 1.5;
  padding: 2% 0;
  text-align: center;
  vertical-align: middle;
  background-color: #dcdddd;
}

.c-campaign__present-notice {
  font-size: 2.6vw;
  width: 90%;
  margin: auto;
  padding-top: 1%;
  text-align: right;
}

.c-campaign__present-item {
  font-size: 4.2vw;
  font-weight: bold;
  padding-top: 5%;
  padding-bottom: 3%;
  text-align: center;
}

.c-campaign__present-detail {
  font-size: 2.8vw;
  line-height: 2.0;
  width: 90%;
  margin: 0 auto 7%;
}

.c-campaign__present-img {
  width: 90%;
  margin: auto;
  padding-bottom: 3%;
}

.c-campaign__notice {
  font-size: 2.6vw;
  line-height: 2.0;
  width: 90%;
  margin: 0 auto 7%;
}

.c-howto {
  padding-top: 10%;
  padding-bottom: 8%;
  color: #fff;
  background-color: #40292d;
}

.c-howto__info {
  margin: 11% auto 5%;
}

.c-howto table {
  width: 90%;
  margin: auto;
  color: #40292d;
  background-color: #fff;
}

.c-howto th {
  font-size: 3.8vw;
  font-weight: bold;
  box-sizing: border-box;
  width: 10%;
  padding: 3%;
  text-align: center;
  vertical-align: middle;
  border: 2px #40292d solid;
}

.c-howto td {
  font-size: 3.0vw;
  font-weight: bold;
  text-align: center;
  vertical-align: middle;
  border: 2px #40292d solid;
}

.c-howto__exp {
  font-size: 2.6vw;
  line-height: 1.7;
  width: 90%;
  margin: auto;
  padding-top: 1%;
  padding-bottom: 2%;
}

.c-howto__exp span {
  display: block;
}

.c-howto__arrow {
  width: 3%;
  margin: auto;
  padding-bottom: 3%;
}

.c-simulate {
  padding-top: 10%;
  padding-bottom: 10%;
  background-color: #fff;
}

.c-simulate__image {
  width: 88%;
  margin: 9% auto 0;
  padding-bottom: 4%;
  text-align: center;
}

.c-simulate__detail {
  font-size: 2.6vw;
  line-height: 1.8;
  width: 88%;
  margin: auto;
  padding-bottom: 10%;
}

.c-faq {
  padding-top: 10%;
  padding-bottom: 8%;
  color: #000;
  background-color: #efefef;
}

.c-faq__frame {
  font-size: 2.6vw;
  line-height: 1.6;
  width: 90%;
  margin: auto;
  padding: 3% 0;
}

.c-faq__frame dl {
  padding-top: 4%;
  padding-bottom: 4%;
  border-bottom: 1px #9fa0a0 solid;
}

.c-faq__frame dl:last-child {
  border-bottom: none;
}

.c-faq__frame dt {
  padding: 1% 0 1% 8%;
  background-image: url("../images/ids/icon-q.png");
  background-repeat: no-repeat;
  background-position: left 1% top 5px;
  background-size: 3.5%;
}

.c-faq__frame dd {
  padding: 1% 0 1% 8%;
  background-image: url("../images/ids/icon-a.png");
  background-repeat: no-repeat;
  background-position: left 1% top 5px;
  background-size: 3.5%;
}

.c-store {
  padding-top: 10%;
  background-color: #fff;
}

.c-store__list {
  width: 90%;
  margin: auto;
  padding-top: 6%;
}

.c-store__list::after {
  display: block;
  clear: both;
  content: '';
}

.c-store__list li {
  float: left;
  width: 48%;
  margin: 0 1% 5%;
}

.c-store__notice {
  font-size: 2.6vw;
  line-height: 1.5;
  width: 88%;
  margin: auto;
}

.c-store__sns {
  width: 90%;
  margin: auto;
  padding: 7% 0;
}

.c-store__sns::after {
  display: block;
  clear: both;
  content: '';
}

.c-store__sns li {
  float: left;
  width: 10%;
  margin: 0 5%;
}

.c-footer {
  padding-top: 10%;
  font-size: 2.6vw;
  padding-bottom: 10%;
  text-align: center;
  background-color: #fff;
}



/* 修正1224 */

.c-campaign__icon {
    width: 100%;
    margin: auto;
    padding-bottom: 3%;
}

.c-campaign__title {
    font-size: 4.0vw;
    line-height: 1.6;
    padding: 6%;
    text-align: center;
}

.c-campaign__sub span {
    display: block;
    line-height: 1.6;
}

.c-campaign__price {
    position: relative;
    padding-left: 15px;
    margin-left: 8px;
    font-weight: bold;
}
.c-campaign__price:before{
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 5px 0 5px 8.7px;
    border-color: transparent transparent transparent #ff0000;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
}

.c-caption{
	font-size: 2.8vw;
	text-align: center;
	padding: 20px;
	background-color: #efefef;
	line-height: 1.6;
}

.c-caption span{
	font-size: 2vw;
    line-height: 1.3;
    display: block;
    margin-top: 7px;
}