@charset "UTF-8";
/* color */
/* size */
/*****************************　　　
  Content
******************************/
* {
  margin: 0;
  padding: 0;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
       user-select: none;
}

input,
textarea {
  -webkit-user-select: auto;
  -moz-user-select: auto;
       user-select: auto;
}

*:focus {
  outline: none;
}

html {
  background-color: rgb(249, 229, 233);
}

body {
  font-family: "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", Arial, Verdana, sans-serif;
  font-size: 13px;
  background-color: rgb(249, 229, 233);
  overflow-y: scroll;
  overflow-x: hidden;
  color: #333333;
  letter-spacing: 0;
  line-height: 1.8;
}

a {
  text-decoration: none !important;
  color: #e14769;
  border-bottom: 1px solid #e14769;
}

.txt-link {
  cursor: pointer;
  color: #e14769;
  display: inline-block;
  word-break: break-all;
  text-decoration: none !important;
  padding-left: 4px;
  padding-right: 4px;
  padding-bottom: 2px;
  border-bottom: 1px solid #e14769;
}
.txt-link.no-bd {
  border-bottom: none;
}

.txt-link-blue {
  color: #1566c0 !important;
  font-weight: bold;
  font-size: 15px;
  border-bottom: 1px solid #1566c0;
}

.txt-link-gray {
  color: #999999 !important;
  font-weight: bold;
  font-size: 15px;
  border-bottom: 1px solid #999999;
}

.txt-link-disabled {
  color: #999999 !important;
  font-weight: bold;
  border-bottom: none;
}

a:hover,
a:focus {
  opacity: 0.7;
  color: #999999;
  border-bottom: 1px solid #999999;
}

p {
  font-size: 15px;
  margin-bottom: 16px;
}

.btn-main {
  position: relative;
  color: #e14769;
  background-color: #fff;
  border-color: #e14769;
  border-radius: 4px;
  padding-left: 30px;
  padding-right: 30px;
}
.btn-main:hover {
  color: #fff;
  background-color: #e14769;
  border-color: #e14769;
}
.btn-main.tal {
  padding-left: 16px;
}

.btn-block {
  width: 100%;
  display: block;
}

h1 {
  font-size: 20px;
  font-weight: bold;
  line-height: 1.4;
  margin-top: 24px;
  margin-bottom: 16px;
}

h2 {
  font-size: 17px;
  font-weight: bold;
  line-height: 1.4;
  margin-top: 16px;
  margin-bottom: 8px;
}

h3 {
  font-size: 15px;
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 8px;
}

h4 {
  font-size: 13px;
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 8px;
}

main {
  position: relative;
  min-height: calc(100vh - env(safe-area-inset-bottom));
  overflow-x: hidden;
  padding-bottom: env(safe-area-inset-bottom);
  background-color: rgb(249, 229, 233);
}

.btn-href {
  cursor: pointer;
}

/*****************************　　　
  Page
******************************/
.container-lg {
  max-width: 1140px;
}

.mv-grid {
  display: grid;
  grid-template-rows: 64% 36%;
  grid-template-columns: 40% 1fr;
  align-items: center;
}
.mv-grid > div:nth-child(1) {
  grid-row: 1/3;
  grid-column: 1;
  padding: 20px;
  text-align: right;
}
.mv-grid > div:nth-child(1) > img {
  width: auto;
  height: auto;
  max-height: 480px;
}
.mv-grid > div:nth-child(2) {
  grid-row: 1;
  grid-column: 2;
  text-align: center;
  align-self: end;
}
.mv-grid > div:nth-child(2) img {
  width: 50%;
  height: auto;
  max-width: 300px;
}
.mv-grid > div:nth-child(2) .message {
  font-weight: bold;
  font-size: 1.2rem;
}
.mv-grid > div:nth-child(3) {
  grid-row: 2;
  grid-column: 2;
  align-self: start;
}
.mv-grid > div:nth-child(3) p {
  max-width: 540px;
  margin: 0 auto;
}

.grid {
  display: grid;
  grid-template-rows: auto;
  grid-template-columns: 50% 1fr;
  align-items: center;
}
.grid.grid-col3 {
  align-items: start;
  grid-template-columns: 33.3333% 33.3334% 33.3333%;
}

@media only screen and (max-width: 768px) {
  .mv-grid {
    grid-template-rows: auto;
    grid-template-columns: 50% 1fr;
    align-items: center;
  }
  .mv-grid > div:nth-child(1) {
    grid-row: 1;
    grid-column: 1;
  }
  .mv-grid > div:nth-child(2) {
    grid-row: 1;
    grid-column: 2;
    align-self: center;
  }
  .mv-grid > div:nth-child(2) img {
    width: 66%;
    height: auto;
    max-width: 300px;
  }
  .mv-grid > div:nth-child(2) .message {
    font-size: 1rem;
  }
  .mv-grid > div:nth-child(3) {
    grid-row: 2;
    grid-column: 1/3;
  }
}
.download-btn {
  display: table;
  margin-top: 16px;
  width: 100%;
}
.download-btn > div {
  display: table-cell;
  width: 50%;
  padding: 0 16px;
}
@media only screen and (max-width: 768px) {
  .download-btn > div {
    padding: 0 8px;
  }
}
.download-btn > div:first-child {
  text-align: right;
}
.download-btn > div img {
  width: auto;
  height: 60px;
}
@media only screen and (max-width: 768px) {
  .download-btn > div img {
    height: 42px;
  }
}

.feature {
  padding-bottom: 48px;
}
.feature h2 {
  margin-top: 32px;
  margin-bottom: 32px;
  text-align: center;
  font-weight: 500;
  font-size: 2rem;
}
.feature h2 span {
  display: inline-block;
  padding: 24px 120px;
  background-image: url("../../assets/img/tori2.png");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center left;
}
@media only screen and (max-width: 768px) {
  .feature h2 {
    font-size: 1.5rem;
    margin-top: 48px;
    margin-bottom: 16px;
  }
  .feature h2 span {
    padding: 12px 20px 12px 70px;
    background-size: 60px auto;
  }
}
.feature p {
  padding: 0 16px 16px;
}
@media only screen and (max-width: 768px) {
  .feature .grid {
    grid-template-columns: 1fr;
  }
}
.feature .figure-group {
  text-align: center;
}
.feature figure {
  position: relative;
  display: inline-block;
  margin: 0;
  margin-left: -30px;
  padding: 0;
  max-width: 33%;
  text-align: center;
}
.feature figure img {
  width: 100%;
  height: auto;
}
.feature figure:before {
  position: absolute;
  content: "";
  display: block;
  padding-top: 100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(rgba(255, 255, 255, 0), 0%, rgba(255, 255, 255, 0), 60%, rgb(249, 229, 233));
}
.feature figure:first-child {
  margin-left: 0;
}

.app_func h2 {
  margin-top: 32px;
  margin-bottom: 32px;
  text-align: center;
  font-weight: 500;
  font-size: 2rem;
}
.app_func h2 span {
  display: inline-block;
  padding: 24px 120px;
  background-image: url("../../assets/img/hula.png");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center left;
}
@media only screen and (max-width: 768px) {
  .app_func h2 {
    font-size: 1.5rem;
    margin-top: 48px;
    margin-bottom: 16px;
  }
  .app_func h2 span {
    padding: 12px 20px 12px 70px;
    background-size: 60px auto;
  }
}
.app_func p {
  padding: 0 16px 16px;
}
@media only screen and (max-width: 768px) {
  .app_func .grid.grid-col3 {
    grid-template-columns: 1fr;
  }
}

.app_column h2 {
  margin-top: 32px;
  margin-bottom: 32px;
  text-align: center;
  font-weight: 500;
  font-size: 2rem;
}
@media only screen and (max-width: 768px) {
  .app_column h2 {
    font-size: 1.5rem;
    margin-top: 48px;
    margin-bottom: 16px;
  }
}

.app_news {
  padding: 48px 16px;
}
.app_news h3 {
  color: #e14769;
}

.news {
  margin: 0 auto;
  padding: 32px 8px 16px;
  max-width: 960px;
}
.news h2 {
  margin: 0 0 16px;
}
.news h3 {
  font-weight: normal;
}
@media only screen and (max-width: 768px) {
  .news {
    padding: 16px 0;
  }
}
.news .news-list {
  border-top: 1px solid #ddd;
}
.news .news-list .news-item {
  border-bottom: 1px solid #ddd;
}

.news-list {
  border-top: 1px solid #ddd;
}
.news-list .news-item {
  position: relative;
  padding: 16px 0;
  border-bottom: 1px solid #ddd;
}
@media only screen and (max-width: 768px) {
  .news-list .news-item {
    padding: 8px 0;
  }
}
.news-list .news-item .news-date {
  position: absolute;
  top: 16px;
  left: 8px;
}
@media only screen and (max-width: 768px) {
  .news-list .news-item .news-date {
    position: relative;
    top: auto;
    left: auto;
  }
}
.news-list .news-item .news-title {
  padding-left: 9em;
}
@media only screen and (max-width: 768px) {
  .news-list .news-item .news-title {
    padding-left: 0;
  }
}
.news-list.news-sublist .news-item {
  padding: 8px 0;
}
.news-list.news-sublist .news-item .news-date {
  position: relative;
  top: auto;
  left: auto;
}
.news-list.news-sublist .news-item .news-title {
  padding-left: 0;
}

.news-detail,
.column-detail {
  margin: 0 auto;
  padding: 32px 16px 16px;
  max-width: 960px;
}
.news-detail h2,
.column-detail h2 {
  margin: 0 0 32px;
}
.news-detail figure,
.column-detail figure {
  margin: 0 auto 16px;
  max-width: 480px;
  padding: 0;
  display: block;
  text-align: center;
}
.news-detail figure img,
.column-detail figure img {
  width: auto;
  max-width: 100%;
  height: auto;
}
.news-detail .news-date,
.column-detail .news-date {
  margin-top: 16px;
}
.news-detail .news-content,
.column-detail .news-content {
  margin-top: 16px;
}

.column-list .row > div {
  margin-bottom: 16px;
}
.column-list figure {
  margin-bottom: 0;
  position: relative;
  display: inline-block;
  width: 100%;
  background-color: #eee;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}
.column-list figure:before {
  content: "";
  display: block;
  padding-top: 54%;
}
.column-list .card {
  height: 100%;
}
.column-list .card h3 {
  font-weight: normal;
}
.column-list .card p {
  margin-bottom: 0;
}

.column-search {
  margin: 48px 16px 0;
}
.column-search .keyword {
  font-size: 13px;
  background-image: url("../../assets/img/search.svg");
  background-repeat: no-repeat;
  background-size: 16px;
  background-position: 95% 50%;
}
.column-search .form-group-check {
  margin: 12px 0 24px;
}
.column-search .group-title {
  margin: 16px 0 0;
  border-bottom: 1px solid #ddd;
}

.column-sublist {
  margin: 48px 16px 32px;
}
.column-sublist h3 {
  font-weight: normal;
  border-bottom: 1px solid #ddd;
  margin-bottom: 12px;
}
.column-sublist .sublist {
  margin: 0;
  padding: 0;
  list-style: none;
}
.column-sublist .sublist a {
  position: relative;
  display: table;
  width: 100%;
  margin-bottom: 10px;
  border-bottom: none !important;
  color: #333333 !important;
}
.column-sublist .sublist a .fig {
  display: table-cell;
  margin: 0;
  padding: 0;
  width: 40%;
  vertical-align: top;
}
.column-sublist .sublist a .fig figure {
  margin-bottom: 0;
  position: relative;
  display: inline-block;
  width: 100%;
  background-color: #eee;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}
.column-sublist .sublist a .fig figure:before {
  content: "";
  display: block;
  padding-top: 54%;
}
.column-sublist .sublist a .title {
  display: table-cell;
  width: 60%;
  padding: 8px;
  vertical-align: top;
}

.form-group-check {
  margin-left: -4px;
  margin-right: -4px;
}
.form-group-check .form-check {
  position: relative;
  display: inline-block;
  margin: 0 2px 6px;
  padding-left: 0;
}
.form-group-check .form-check input {
  position: absolute;
  top: 0;
  left: 0;
  font-size: 0;
  line-height: 0;
  width: 0;
  height: 0;
  visibility: hidden;
}
.form-group-check .form-check input:checked + label {
  background-color: #e14769;
  color: #fff;
}
.form-group-check .form-check label {
  padding: 6px 12px;
  line-height: 1;
  background-color: #eee;
  border-radius: 8px;
}

.app_info {
  padding: 48px 16px 96px;
}
.app_info h3 {
  color: #e14769;
}
.app_info p + h3 {
  margin-top: 30px;
}

.header-section {
  height: 64px;
  position: fixed;
  width: 100%;
  top: 0;
  left: 0;
  background-color: #fff;
  border-bottom: 1px solid #ddd;
  z-index: 9999;
}

header .navbar {
  padding: 0 !important;
  margin: 0;
}
header .navbar .navbar-nav .nav-link {
  padding-left: 24px;
  padding-right: 24px;
}
header .navbar .navbar-nav .nav-link:hover {
  border-bottom: none;
  background-color: rgba(255, 255, 255, 0.5);
}
header .navbar .navbar-collapse {
  background-color: #fff;
  justify-content: flex-end;
}
@media only screen and (max-width: 768px) {
  header .navbar .navbar-collapse {
    margin-left: -12px;
    margin-right: -12px;
    background-color: rgb(249, 229, 233);
  }
}
header h1 {
  margin: 0;
  padding: 8px 0;
}
header h1 img {
  width: auto;
  height: 48px;
}

.content-section {
  padding-top: 64px;
  padding-bottom: 80px;
  background-color: #fff;
  min-height: calc(100vh - env(safe-area-inset-bottom) - 40px);
}

footer {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  background-color: #e14769;
  color: #fff;
  padding: 0;
  line-height: 40px;
  text-align: center;
}
footer a {
  color: #fff;
  border-bottom: 1px solid #fff;
}

.screenshot {
  display: block;
  text-align: center;
}
.screenshot > img {
  margin: 0 auto;
  width: 66%;
  max-width: 200px;
  height: auto;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
}
@media only screen and (max-width: 768px) {
  .screenshot > img {
    width: 50%;
    max-width: 180px;
  }
}

.mv {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
}
.mv > div:first-child {
  width: 40%;
}
.mv > div:last-child {
  width: 60%;
}
.mv .app-img {
  padding: 20px;
  text-align: right;
}
.mv .app-img > img {
  width: auto;
  height: auto;
  max-height: 480px;
}
.mv .message {
  padding: 20px;
}
.mv .message p {
  max-width: 540px;
  margin: 0 auto 1em;
}
.mv h1 {
  text-align: center;
}
.mv h1 img {
  width: 50%;
  height: auto;
  max-width: 300px;
}

.bg-welfem {
  position: relative;
  width: 100%;
  background-image: url("../../assets/img/lp_bg.png");
  background-repeat: no-repeat;
  background-position: bottom center;
  background-size: contain;
}
.bg-welfem::after {
  content: "";
  display: block;
  padding-top: 53%;
}
.bg-welfem p {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  text-align: center;
}

/*****************************　　　
  Panenation
******************************/
.page-link {
  color: #e14769;
}
.page-link:hover {
  color: #e14769;
}

.active > .page-link, .page-link.active {
  background-color: #e14769;
  border-color: #e14769;
  color: #fff;
}

/*****************************　　　
  Utilities
******************************/
/* list parts */
.list-common .fig {
  padding-right: 8px;
  width: 40%;
}
.list-common .fig img {
  width: 100%;
  height: aut0;
}
.list-common .fig.fig-s {
  width: 30%;
}
.list-common .category .badge {
  display: inline-block;
  background: #e14769;
  font-size: 11px;
  padding: 4px;
  color: #fff;
}
.list-common .category .badge + .badge {
  margin-left: 8px;
}
.list-common .date {
  font-size: 11px;
}
.list-common .title {
  font-size: 13px;
  font-weight: bold;
}
.list-common > div {
  padding-top: 16px;
  padding-bottom: 16px;
}
.list-common .border-row {
  padding-top: auto;
  padding-bottom: auto;
}
.list-common .border-row > div {
  padding-top: 16px;
  padding-bottom: 16px;
  border-bottom: 1px solid #dddddd;
}
.list-common .border-row:first-child > div {
  border-top: 1px solid #dddddd;
}
.list-common .border-row.none-border-top:first-child > div {
  border-top: none;
}
.list-common.list-common-gxs > div:first-child {
  padding-left: 16px;
}
.list-common.list-common-gxs > div:last-child {
  padding-right: 16px;
}
.list-common.list-common-gxs .border-row:first-child {
  padding-left: auto;
}
.list-common.list-common-gxs .border-row:first-child {
  padding-right: auto;
}
.list-common.list-common-gxs .border-row > div:first-child {
  padding-left: 16px;
}
.list-common.list-common-gxs .border-row > div:last-child {
  padding-right: 16px;
}
.list-common .detail-item-list {
  margin-top: 8px;
  margin-bottom: 0;
}
.list-common .detail-item-list dt {
  float: left;
  clear: left;
  border-right: 1px solid #dddddd;
  margin-bottom: 4px;
  color: #e14769;
}
.list-common .detail-item-list dd {
  float: left;
  margin-left: 0.5em;
  margin-bottom: 4px;
}
.list-common .detail-item-list.dt4em dt {
  width: 4.5em;
}
.list-common .detail-item-list:after {
  content: "";
  display: block;
  clear: both;
}
.list-common .detail-item-list.list-nowrap dt {
  float: none;
  padding-right: 8px;
  display: inline-block;
}
.list-common .detail-item-list.list-nowrap dd {
  float: none;
  display: inline-block;
  margin-left: 4px;
}
.list-common .detail-item-list.list-nowrap dd + dt {
  margin-left: 8px;
}

/* scroll */
.horizontal-scroll {
  width: 100%;
  overflow-x: scroll;
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.horizontal-scroll::-webkit-scrollbar {
  display: none;
}
.horizontal-scroll .horizontal-scroll-list {
  margin: 0;
  padding: 0 12px;
  list-style: none;
  display: table;
}
.horizontal-scroll .horizontal-scroll-list > li {
  display: table-cell;
  margin: 0;
  padding: 0 4px;
  width: 33.333%;
}
.horizontal-scroll .horizontal-scroll-list > li figure {
  position: relative;
  margin-bottom: 4px;
}
.horizontal-scroll .horizontal-scroll-list > li figure img {
  width: 100%;
  height: auto;
}
.horizontal-scroll .horizontal-scroll-list > li figure span.label {
  position: absolute;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.8);
  font-size: 11px;
  padding: 4px;
  color: #fff;
}

/* subheader */
.subheader {
  padding-top: 16px;
  margin-bottom: 8px;
}
.subheader h3 {
  font-size: 17px;
  margin-bottom: 0;
}

/* link-arrow */
.link-arrow {
  display: inline-block;
  position: relative;
  border-bottom: 2px solid #e14769;
  font-size: 13px;
  font-weight: bold;
  padding: 8px 16px 4px 0;
}
.link-arrow:after {
  position: absolute;
  top: calc(50% - 0.4em);
  right: 8px;
  content: "";
  width: 1em;
  height: 1em;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
}

/* link-map */
.link-map {
  display: inline-block;
  position: relative;
  padding-right: calc(1.2em + 8px);
}
.link-map:after {
  position: absolute;
  top: 0.2em;
  right: 0;
  content: "";
  width: 1.2em;
  height: 1.2em;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
}

.link-pin {
  display: inline-block;
  position: relative;
  padding-right: calc(1.2em + 8px);
}
.link-pin:after {
  position: absolute;
  top: 0.2em;
  right: 0;
  content: "";
  width: 1.2em;
  height: 1.2em;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
}

.link-update {
  display: inline-block;
  position: relative;
  padding-right: calc(1.2em + 8px);
}
.link-update:after {
  position: absolute;
  top: 0.2em;
  right: 0;
  content: "";
  width: 1.2em;
  height: 1.2em;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
}

/* display-table */
.disptable {
  display: table;
  width: 100%;
  margin: 0;
  padding: 0;
}
.disptable > div {
  display: table-cell;
  vertical-align: top;
}
.disptable.vam > div {
  vertical-align: middle;
}
.disptable.vam.disptable-row > div > div {
  vertical-align: middle;
}
.disptable.cell-c > div {
  text-align: center;
}
.disptable.disptable-row > div, .disptable.disptable-row > li {
  display: table-row;
}
.disptable.disptable-row > div > div, .disptable.disptable-row > li > div {
  position: relative;
  vertical-align: top;
  display: table-cell;
}
.disptable.disptable-row > div > div.cell-link-arrow, .disptable.disptable-row > li > div.cell-link-arrow {
  padding-right: 24px;
}
.disptable.disptable-row > div > div.cell-link-arrow:after, .disptable.disptable-row > li > div.cell-link-arrow:after {
  position: absolute;
  top: 23px;
  right: 10px;
  content: "";
  width: 10px;
  height: 10px;
  border-top: 2px solid #e14769;
  border-right: 2px solid #e14769;
  transform: rotate(45deg);
}
.disptable.disptable-row.cell-c > div > div, .disptable.disptable-row.cell-c > li > div {
  text-align: center;
}
.disptable img {
  width: 100%;
  height: auto;
}
.disptable.disptable-border {
  border-top: 1px solid #dddddd;
}
.disptable.disptable-border > div {
  border-bottom: 1px solid #dddddd;
  border-right: 1px solid #dddddd;
}
.disptable.disptable-border > div:last-child {
  border-right: none;
}
.disptable.disptable-border.disptable-row > div > div, .disptable.disptable-border.disptable-row > li > div {
  border-bottom: 1px solid #dddddd;
  border-right: 1px solid #dddddd;
}
.disptable.disptable-border.disptable-row > div > div:last-child, .disptable.disptable-border.disptable-row > li > div:last-child {
  border-right: none;
}
.disptable.disptable-border-bottom {
  border-top: 1px solid #dddddd;
}
.disptable.disptable-border-bottom > div {
  border-bottom: 1px solid #dddddd;
}
.disptable.disptable-border-bottom.disptable-row > div > div, .disptable.disptable-border-bottom.disptable-row > li > div {
  border-bottom: 1px solid #dddddd;
}
.disptable.cell-pss > div {
  padding: 8px;
}
.disptable.cell-pss.disptable-row > div, .disptable.cell-pss.disptable-row > li {
  padding: 0;
}
.disptable.cell-pss.disptable-row > div > div, .disptable.cell-pss.disptable-row > li > div {
  padding: 8px;
}
.disptable.cell-psh > div {
  padding: 10.6666666667px;
}
.disptable.cell-psh.disptable-row > div, .disptable.cell-psh.disptable-row > li {
  padding: 0;
}
.disptable.cell-psh.disptable-row > div > div, .disptable.cell-psh.disptable-row > li > div {
  padding: 10.6666666667px;
}
.disptable.cell-ps > div {
  padding: 16px;
}
.disptable.cell-ps.disptable-row > div, .disptable.cell-ps.disptable-row > li {
  padding: 0;
}
.disptable.cell-ps.disptable-row > div > div, .disptable.cell-ps.disptable-row > li > div {
  padding: 16px;
}

/* category */
.category {
  margin-bottom: 4px;
}
.category .badge {
  display: inline-block;
  background: rgb(249, 229, 233);
  font-size: 11px;
  font-weight: normal;
  padding: 4px 8px;
  color: #333333;
}
.category .badge + .badge {
  margin-left: 8px;
}
.category .badge.badge-m {
  padding: 8px;
}
.category .badge.badge-bg-gray {
  color: #333333;
  background: #efeae4;
}
.category .badge.badge-gold {
  background: #e14769;
}

.pcbr {
  display: inline-block;
}

.spbr {
  display: none;
}

.pcem {
  display: block;
}

.spem {
  display: none;
}

@media only screen and (max-width: 768px) {
  .pcbr {
    display: none !important;
  }
  .spbr {
    display: inline-block;
  }
  .pcem {
    display: none;
  }
  .spem {
    display: block;
  }
}
.dsib {
  display: inline-block;
}

.dsb {
  display: block;
}

/* border */
.bdt1 {
  border-top: 1px solid #dddddd;
}

.bdb1 {
  border-bottom: 1px solid #dddddd;
}

.bdtn {
  border-top: none;
}

.bdbn {
  border-bottom: none !important;
}

/* border-radius */
.bdr0 {
  border-radius: 0 !important;
}

.bdrss {
  border-radius: 4px !important;
}

/* badge */
.badge-square {
  position: relative;
  display: inline-block;
  margin-right: 4px;
}
.badge-square em {
  position: absolute;
  color: #fff;
  font-size: 13px;
  font-weight: bold;
  top: 0;
  left: 0;
  width: 24px;
  text-align: center;
  font-style: normal;
  line-height: 24px;
  display: inline-block;
}
.badge-square:before {
  content: "";
  width: 24px;
  height: 24px;
  display: inline-block;
  vertical-align: middle;
  background: #e14769;
}

/* width */
.w32px {
  width: 32px !important;
}

.w50px {
  width: 50px !important;
}

.w140px {
  width: 140px !important;
}

.w160px {
  width: 160px !important;
}

.w240px {
  width: 240px !important;
}

.w25per {
  width: 25% !important;
}

.w33per {
  width: 33% !important;
}

.w40per {
  width: 40% !important;
}

.w50per {
  width: 50% !important;
}

.w60per {
  width: 60% !important;
}

.w67per {
  width: 67% !important;
}

.w75per {
  width: 75% !important;
}

.w80per {
  width: 80% !important;
}

.w100per {
  width: 100% !important;
}

.wat {
  width: auto !important;
}

.w1em {
  width: 1em !important;
}

.w2em {
  width: 2em !important;
}

.w3em {
  width: 3em !important;
}

.w4em {
  width: 4em !important;
}

.w5em {
  width: 5em !important;
}

.w6em {
  width: 6em !important;
}

.w7em {
  width: 7em !important;
}

.w8em {
  width: 8em !important;
}

/* height */
.h5em {
  height: 5em !important;
}

.h8em {
  height: 8em !important;
}

.h100per {
  height: 100%;
}

/* icon */
.txt-copy {
  position: relative;
  display: inline-block;
  padding-right: 1.2em;
  font-weight: bold;
  color: #e14769;
  white-space: nowrap;
}
.txt-copy::after {
  top: -0.15em;
  position: absolute;
  right: 0;
  display: inline-block;
  content: "";
  width: 24px;
  height: 24px;
}

/* color */
.txt-white {
  color: #fff !important;
}

.txt-main {
  color: #e14769 !important;
}

.txt-dark {
  color: #e14769 !important;
}

.txt-red {
  color: #e00 !important;
}

.txt-normal {
  color: #333333 !important;
}

.txt-gray {
  color: #999999 !important;
}

.txt-gold {
  color: #e14769 !important;
}

/* bgcolor */
.bg-lightgray {
  background-color: #efeae4 !important;
}

.bg-gray {
  background-color: #dddddd !important;
}

.bg-main {
  background-color: #e14769 !important;
}

.bg-pink {
  background-color: rgb(249, 229, 233) !important;
}

.bg-graywhite {
  background-color: #ffffff !important;
}

.bg-green {
  background-color: rgb(205, 231, 171) !important;
}

.badge-gray {
  background-color: #999 !important;
}

.badge-main {
  background-color: #e14769 !important;
}

/* white-space */
.nowrap {
  white-space: nowrap;
}

.prewrap {
  white-space: pre-wrap;
}

.breakspaces {
  white-space: break-spaces;
}

/* min-width */
.minw180 {
  min-width: 180px !important;
}

/* text-align */
.tal {
  text-align: left !important;
}

.tar {
  text-align: right !important;
}

.tac {
  text-align: center !important;
}

/* vertical-align */
.vat {
  vertical-align: top !important;
}

.vam {
  vertical-align: middle !important;
}

.vab {
  vertical-align: bottom !important;
}

/* text-decoration */
.tdn {
  text-decoration: none !important;
}

.tdu {
  text-decoration: underline !important;
}

/* font-weight */
.fwn {
  font-weight: normal !important;
}

.fwb {
  font-weight: bold !important;
}

/* font-style */
.fsn {
  font-style: normal !important;
}

/* line-height */
.lhss {
  line-height: 11px !important;
}

.lhs {
  line-height: 13px !important;
}

.lhm {
  line-height: 15px !important;
}

.lhl {
  line-height: 17px !important;
}

.lhx {
  line-height: 20px !important;
}

/* font-size */
.fsss {
  font-size: 11px !important;
}

.fss {
  font-size: 13px !important;
}

.fsm {
  font-size: 15px !important;
}

.fsl {
  font-size: 17px !important;
}

.fsx {
  font-size: 20px !important;
}

.fsr8 {
  font-size: 0.8rem !important;
}

.fsr9 {
  font-size: 0.9rem !important;
}

.fsr10 {
  font-size: 1rem !important;
}

.fsr11 {
  font-size: 1.1rem !important;
}

.fsr12 {
  font-size: 1.2rem !important;
}

.fsr13 {
  font-size: 1.3rem !important;
}

.fsr14 {
  font-size: 1.4rem !important;
}

.fsr15 {
  font-size: 1.5rem !important;
}

.fsr16 {
  font-size: 1.6rem !important;
}

.fsr17 {
  font-size: 1.7rem !important;
}

.fsr18 {
  font-size: 1.8rem !important;
}

.fsr19 {
  font-size: 1.9rem !important;
}

.fsr20 {
  font-size: 2rem !important;
}

.fsr21 {
  font-size: 2.1rem !important;
}

.fsr22 {
  font-size: 2.2rem !important;
}

.fsr23 {
  font-size: 2.3rem !important;
}

.fsr24 {
  font-size: 2.4rem !important;
}

.fsr25 {
  font-size: 2.5rem !important;
}

.fsr26 {
  font-size: 2.6rem !important;
}

.fsr27 {
  font-size: 2.7rem !important;
}

.fsr28 {
  font-size: 2.8rem !important;
}

.fsr29 {
  font-size: 2.9rem !important;
}

.fsr30 {
  font-size: 3rem !important;
}

@media only screen and (max-width: 768px) {
  .sp_fsr14 {
    font-size: 1.4rem !important;
  }
  .sp_fsr15 {
    font-size: 1.5rem !important;
  }
  .sp_fsr16 {
    font-size: 1.6rem !important;
  }
  .sp_fsr17 {
    font-size: 1.7rem !important;
  }
  .sp_fsr18 {
    font-size: 1.8rem !important;
  }
}
/* space class
------------------------------------------------------------ */
.mtss {
  margin-top: 8px !important;
}

.mrss {
  margin-right: 8px !important;
}

.mbss {
  margin-bottom: 8px !important;
}

.mlss {
  margin-left: 8px !important;
}

.mts {
  margin-top: 16px !important;
}

.mrs {
  margin-right: 16px !important;
}

.mbs {
  margin-bottom: 16px !important;
}

.mls {
  margin-left: 16px !important;
}

.mtm {
  margin-top: 24px !important;
}

.mrm {
  margin-right: 24px !important;
}

.mbm {
  margin-bottom: 24px !important;
}

.mlm {
  margin-left: 24px !important;
}

.mtl {
  margin-top: 32px !important;
}

.mrl {
  margin-right: 32px !important;
}

.mbl {
  margin-bottom: 32px !important;
}

.mll {
  margin-left: 32px !important;
}

.mtl15 {
  margin-top: 48px !important;
}

.mrl15 {
  margin-right: 48px !important;
}

.mbl15 {
  margin-bottom: 48px !important;
}

.mll15 {
  margin-left: 48px !important;
}

.pass {
  padding: 8px !important;
}

.prsss {
  padding-right: 4px !important;
}

.plsss {
  padding-left: 4px !important;
}

.ptss {
  padding-top: 8px !important;
}

.prss {
  padding-right: 8px !important;
}

.pbss {
  padding-bottom: 8px !important;
}

.plss {
  padding-left: 8px !important;
}

.pts {
  padding-top: 16px !important;
}

.prs {
  padding-right: 16px !important;
}

.pbs {
  padding-bottom: 16px !important;
}

.pls {
  padding-left: 16px !important;
}

.pas {
  padding: 16px !important;
}

.pxs {
  padding-left: 16px !important;
  padding-right: 16px !important;
}

.ptm {
  padding-top: 24px !important;
}

.prm {
  padding-right: 24px !important;
}

.pbm {
  padding-bottom: 24px !important;
}

.plm {
  padding-left: 24px !important;
}

.ptl {
  padding-top: 32px !important;
}

.prl {
  padding-right: 32px !important;
}

.pbl {
  padding-bottom: 32px !important;
}

.pll {
  padding-left: 32px !important;
}

.ptl15 {
  padding-top: 48px !important;
}

.prl15 {
  padding-right: 48px !important;
}

.pbl15 {
  padding-bottom: 48px !important;
}

.pll15 {
  padding-left: 48px !important;
}

.pbl2 {
  padding-bottom: 64px !important;
}

.pbl3 {
  padding-bottom: 96px !important;
}

.pbl4 {
  padding-bottom: 128px !important;
}

.mtss-m {
  margin-top: -8px !important;
}

.mts-m {
  margin-top: -16px !important;
}

.mg0 {
  margin: 0 !important;
}

.mga {
  margin: auto !important;
}

.mra {
  margin-right: auto !important;
}

.mla {
  margin-left: auto !important;
}

.pd0 {
  padding: 0 !important;
}

.pd2 {
  padding: 2px !important;
}

.mt0 {
  margin-top: 0px !important;
}

.mr0 {
  margin-right: 0px !important;
}

.mb0 {
  margin-bottom: 0px !important;
}

.ml0 {
  margin-left: 0px !important;
}

.pt0 {
  padding-top: 0px !important;
}

.pt2 {
  padding-top: 2px !important;
}

.pr0 {
  padding-right: 0px !important;
}

.pb0 {
  padding-bottom: 0px !important;
}

.pb2 {
  padding-bottom: 1px !important;
}

.pl0 {
  padding-left: 0px !important;
}

.mt4 {
  margin-top: 4px !important;
}

.mt5 {
  margin-top: 5px !important;
}

.mr5 {
  margin-right: 5px !important;
}

.mb5 {
  margin-bottom: 5px !important;
}

.ml5 {
  margin-left: 5px !important;
}

.pt5 {
  padding-top: 5px !important;
}

.pr5 {
  padding-right: 5px !important;
}

.pb5 {
  padding-bottom: 5px !important;
}

.pl5 {
  padding-left: 5px !important;
}

.mt10 {
  margin-top: 10px !important;
}

.mr10 {
  margin-right: 10px !important;
}

.mb10 {
  margin-bottom: 10px !important;
}

.ml10 {
  margin-left: 10px !important;
}

.pt10 {
  padding-top: 10px !important;
}

.pr10 {
  padding-right: 10px !important;
}

.pb10 {
  padding-bottom: 10px !important;
}

.pl10 {
  padding-left: 10px !important;
}

.pt12 {
  padding-top: 12px !important;
}

.pb12 {
  padding-bottom: 12px !important;
}

.mt15 {
  margin-top: 15px !important;
}

.mr15 {
  margin-right: 15px !important;
}

.mb15 {
  margin-bottom: 15px !important;
}

.ml15 {
  margin-left: 15px !important;
}

.pt15 {
  padding-top: 15px !important;
}

.pr15 {
  padding-right: 15px !important;
}

.pb15 {
  padding-bottom: 15px !important;
}

.pl15 {
  padding-left: 15px !important;
}

.mt20 {
  margin-top: 20px !important;
}

.mr20 {
  margin-right: 20px !important;
}

.mb20 {
  margin-bottom: 20px !important;
}

.ml20 {
  margin-left: 20px !important;
}

.pt20 {
  padding-top: 20px !important;
}

.pr20 {
  padding-right: 20px !important;
}

.pb20 {
  padding-bottom: 20px !important;
}

.pl20 {
  padding-left: 20px !important;
}

.mt25 {
  margin-top: 25px !important;
}

.mr25 {
  margin-right: 25px !important;
}

.mb25 {
  margin-bottom: 25px !important;
}

.ml25 {
  margin-left: 25px !important;
}

.pt25 {
  padding-top: 25px !important;
}

.pr25 {
  padding-right: 25px !important;
}

.pb25 {
  padding-bottom: 25px !important;
}

.pl25 {
  padding-left: 25px !important;
}

.mt30 {
  margin-top: 30px !important;
}

.mr30 {
  margin-right: 30px !important;
}

.mb30 {
  margin-bottom: 30px !important;
}

.ml30 {
  margin-left: 30px !important;
}

.pt30 {
  padding-top: 30px !important;
}

.pr30 {
  padding-right: 30px !important;
}

.pb30 {
  padding-bottom: 30px !important;
}

.pl30 {
  padding-left: 30px !important;
}

.mt35 {
  margin-top: 35px !important;
}

.mr35 {
  margin-right: 35px !important;
}

.mb35 {
  margin-bottom: 35px !important;
}

.ml35 {
  margin-left: 35px !important;
}

.pt35 {
  padding-top: 35px !important;
}

.pr35 {
  padding-right: 35px !important;
}

.pb35 {
  padding-bottom: 35px !important;
}

.pl35 {
  padding-left: 35px !important;
}

.mt40 {
  margin-top: 40px !important;
}

.mr40 {
  margin-right: 40px !important;
}

.mb40 {
  margin-bottom: 40px !important;
}

.ml40 {
  margin-left: 40px !important;
}

.pt40 {
  padding-top: 40px !important;
}

.pr40 {
  padding-right: 40px !important;
}

.pb40 {
  padding-bottom: 40px !important;
}

.pl40 {
  padding-left: 40px !important;
}

.mt45 {
  margin-top: 45px !important;
}

.mr45 {
  margin-right: 45px !important;
}

.mb45 {
  margin-bottom: 45px !important;
}

.ml45 {
  margin-left: 45px !important;
}

.pt45 {
  padding-top: 45px !important;
}

.pr45 {
  padding-right: 45px !important;
}

.pb45 {
  padding-bottom: 45px !important;
}

.pl45 {
  padding-left: 45px !important;
}

.mt50 {
  margin-top: 50px !important;
}

.mr50 {
  margin-right: 50px !important;
}

.mb50 {
  margin-bottom: 50px !important;
}

.ml50 {
  margin-left: 50px !important;
}

.pt50 {
  padding-top: 50px !important;
}

.pr50 {
  padding-right: 50px !important;
}

.pb50 {
  padding-bottom: 50px !important;
}

.pl50 {
  padding-left: 50px !important;
}

.pa0 {
  padding: 0 !important;
}

.pas {
  padding: 16px !important;
}

.pass {
  padding: 8px !important;
}

/* min-wigth */
.miw-e2 {
  min-width: 2em !important;
}

/* min-height */
.mih-54p {
  min-height: 54px !important;
}

.mih-60p {
  min-height: 60px !important;
}

/* max-height */
.mxh-240p {
  max-height: 240px !important;
}

.mxh-320p {
  max-height: 320px !important;
}

/* position */
.pos-r {
  position: relative !important;
}

.pos-a {
  position: absolute !important;
}

.unit-txt {
  font-size: 13px;
  font-weight: normal;
  white-space: nowrap;
}
.unit-txt em {
  font-size: 17px;
  font-weight: bold;
  font-style: normal;
  display: inline-block;
  padding-right: 2px;
}/*# sourceMappingURL=style.css.map */