@charset "UTF-8";

.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
  border: 0;
  -webkit-clip-path: inset(50%);
  clip-path: inset(50%);
}

.z-first {
  z-index: 104;
}

.z-modal_item {
  z-index: 103;
}

.z-modal {
  z-index: 102;
}

.z-navbtn {
  z-index: 101;
}

.z-navbg {
  z-index: 100;
}

@-webkit-keyframes fadein01 {
  0% {
    opacity: 0;
    -webkit-transform: translateY(100px);
    transform: translateY(100px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@keyframes fadein01 {
  0% {
    opacity: 0;
    -webkit-transform: translateY(100px);
    transform: translateY(100px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@-webkit-keyframes fadeIn {
  100% {
    opacity: 1;
  }
}

@keyframes fadeIn {
  100% {
    opacity: 1;
  }
}

@-webkit-keyframes fadeInOut {
  0% {
    opacity: 0;
  }
  30% {
    opacity: 1;
  }
  80% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

@keyframes fadeInOut {
  0% {
    opacity: 0;
  }
  30% {
    opacity: 1;
  }
  80% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

@-webkit-keyframes jumpAni {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  50% {
    -webkit-transform: translateY(-15px);
    transform: translateY(-15px);
  }
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@keyframes jumpAni {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  50% {
    -webkit-transform: translateY(-15px);
    transform: translateY(-15px);
  }
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@-webkit-keyframes circle-accent {
  0% {
    border: 1px solid #0b308e;
    opacity: 1;
    -webkit-transform: scale(0);
    transform: scale(0);
  }
  100% {
    border: 1px solid #0b308e;
    opacity: 0;
    -webkit-transform: scale(1.5);
    transform: scale(1.5);
  }
}

@keyframes circle-accent {
  0% {
    border: 1px solid #0b308e;
    opacity: 1;
    -webkit-transform: scale(0);
    transform: scale(0);
  }
  100% {
    border: 1px solid #0b308e;
    opacity: 0;
    -webkit-transform: scale(1.5);
    transform: scale(1.5);
  }
}

@-webkit-keyframes circle-accent2 {
  0% {
    opacity: 1;
    -webkit-transform: scale(0);
    transform: scale(0);
  }
  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

@keyframes circle-accent2 {
  0% {
    opacity: 1;
    -webkit-transform: scale(0);
    transform: scale(0);
  }
  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

@-webkit-keyframes ani01 {
  0% {
    -webkit-transform: translateX(0) translateY(0);
    transform: translateX(0) translateY(0);
  }
  30% {
    -webkit-transform: translateX(-10px) translateY(-15px);
    transform: translateX(-10px) translateY(-15px);
  }
  60% {
    -webkit-transform: translateX(10px) translateY(-15px);
    transform: translateX(10px) translateY(-15px);
  }
  100% {
    -webkit-transform: translateX(0) translateY(0);
    transform: translateX(0) translateY(0);
  }
}

@keyframes ani01 {
  0% {
    -webkit-transform: translateX(0) translateY(0);
    transform: translateX(0) translateY(0);
  }
  30% {
    -webkit-transform: translateX(-10px) translateY(-15px);
    transform: translateX(-10px) translateY(-15px);
  }
  60% {
    -webkit-transform: translateX(10px) translateY(-15px);
    transform: translateX(10px) translateY(-15px);
  }
  100% {
    -webkit-transform: translateX(0) translateY(0);
    transform: translateX(0) translateY(0);
  }
}

@-webkit-keyframes ani02_bal1 {
  0% {
    opacity: 0;
  }
  80% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

@keyframes ani02_bal1 {
  0% {
    opacity: 0;
  }
  80% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

@-webkit-keyframes ani02_bal2 {
  0% {
    opacity: 0;
  }
  25% {
    opacity: 0;
  }
  80% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

@keyframes ani02_bal2 {
  0% {
    opacity: 0;
  }
  25% {
    opacity: 0;
  }
  80% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

@-webkit-keyframes ani03 {
  0% {
    -webkit-transform: translateY(0) translateX(0);
    transform: translateY(0) translateX(0);
  }
  20% {
    -webkit-transform: translateY(-10px) translateX(-5px);
    transform: translateY(-10px) translateX(-5px);
  }
  40% {
    -webkit-transform: translateY(-10px) translateX(15px);
    transform: translateY(-10px) translateX(15px);
  }
  60% {
    -webkit-transform: translateY(-5px) translateX(-5px);
    transform: translateY(-5px) translateX(-5px);
  }
  80% {
    -webkit-transform: translateY(-5px) translateX(10px);
    transform: translateY(-5px) translateX(10px);
  }
  100% {
    -webkit-transform: translateY(0) translateX(0);
    transform: translateY(0) translateX(0);
  }
}

@keyframes ani03 {
  0% {
    -webkit-transform: translateY(0) translateX(0);
    transform: translateY(0) translateX(0);
  }
  20% {
    -webkit-transform: translateY(-10px) translateX(-5px);
    transform: translateY(-10px) translateX(-5px);
  }
  40% {
    -webkit-transform: translateY(-10px) translateX(15px);
    transform: translateY(-10px) translateX(15px);
  }
  60% {
    -webkit-transform: translateY(-5px) translateX(-5px);
    transform: translateY(-5px) translateX(-5px);
  }
  80% {
    -webkit-transform: translateY(-5px) translateX(10px);
    transform: translateY(-5px) translateX(10px);
  }
  100% {
    -webkit-transform: translateY(0) translateX(0);
    transform: translateY(0) translateX(0);
  }
}

@-webkit-keyframes ani04 {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  100% {
    -webkit-transform: translateY(-8px);
    transform: translateY(-8px);
  }
}

@keyframes ani04 {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  100% {
    -webkit-transform: translateY(-8px);
    transform: translateY(-8px);
  }
}

@-webkit-keyframes slideIn {
  0% {
    opacity: 0;
    -webkit-transform: translateY(70px);
    transform: translateY(70px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@keyframes slideIn {
  0% {
    opacity: 0;
    -webkit-transform: translateY(70px);
    transform: translateY(70px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@-webkit-keyframes stick1 {
  0% {
    -webkit-transform: translateY(0) rotate(60deg);
    transform: translateY(0) rotate(60deg);
  }
  50% {
    -webkit-transform: translateY(-10px) translateX(-5px) rotate(60deg);
    transform: translateY(-10px) translateX(-5px) rotate(60deg);
  }
  100% {
    -webkit-transform: translateY(0) rotate(60deg);
    transform: translateY(0) rotate(60deg);
  }
}

@keyframes stick1 {
  0% {
    -webkit-transform: translateY(0) rotate(60deg);
    transform: translateY(0) rotate(60deg);
  }
  50% {
    -webkit-transform: translateY(-10px) translateX(-5px) rotate(60deg);
    transform: translateY(-10px) translateX(-5px) rotate(60deg);
  }
  100% {
    -webkit-transform: translateY(0) rotate(60deg);
    transform: translateY(0) rotate(60deg);
  }
}

@-webkit-keyframes stick2 {
  0% {
    -webkit-transform: translateY(0) rotate(-60deg);
    transform: translateY(0) rotate(-60deg);
  }
  50% {
    -webkit-transform: translateY(-10px) translateX(5px) rotate(-60deg);
    transform: translateY(-10px) translateX(5px) rotate(-60deg);
  }
  100% {
    -webkit-transform: translateY(0) rotate(-60deg);
    transform: translateY(0) rotate(-60deg);
  }
}

@keyframes stick2 {
  0% {
    -webkit-transform: translateY(0) rotate(-60deg);
    transform: translateY(0) rotate(-60deg);
  }
  50% {
    -webkit-transform: translateY(-10px) translateX(5px) rotate(-60deg);
    transform: translateY(-10px) translateX(5px) rotate(-60deg);
  }
  100% {
    -webkit-transform: translateY(0) rotate(-60deg);
    transform: translateY(0) rotate(-60deg);
  }
}

@-webkit-keyframes shakeApp01 {
  0% {
    -webkit-transform: rotate(-15deg);
    transform: rotate(-15deg);
  }
  40% {
    -webkit-transform: rotate(15deg);
    transform: rotate(15deg);
  }
  80% {
    -webkit-transform: rotate(-15deg);
    transform: rotate(-15deg);
  }
}

@keyframes shakeApp01 {
  0% {
    -webkit-transform: rotate(-15deg);
    transform: rotate(-15deg);
  }
  40% {
    -webkit-transform: rotate(15deg);
    transform: rotate(15deg);
  }
  80% {
    -webkit-transform: rotate(-15deg);
    transform: rotate(-15deg);
  }
}

@-webkit-keyframes shakeApp02 {
  0% {
  }
  30% {
    -webkit-transform: rotate(20deg);
    transform: rotate(20deg);
    -webkit-transform-origin: center top;
    transform-origin: center top;
  }
  60% {
    -webkit-transform: rotate(-20deg);
    transform: rotate(-20deg);
    -webkit-transform-origin: center top;
    transform-origin: center top;
  }
  100% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
    -webkit-transform-origin: center top;
    transform-origin: center top;
  }
}

@keyframes shakeApp02 {
  0% {
  }
  30% {
    -webkit-transform: rotate(20deg);
    transform: rotate(20deg);
    -webkit-transform-origin: center top;
    transform-origin: center top;
  }
  60% {
    -webkit-transform: rotate(-20deg);
    transform: rotate(-20deg);
    -webkit-transform-origin: center top;
    transform-origin: center top;
  }
  100% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
    -webkit-transform-origin: center top;
    transform-origin: center top;
  }
}

@-webkit-keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@-webkit-keyframes fadeInSpot {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-20px);
    transform: translateY(-20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@keyframes fadeInSpot {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-20px);
    transform: translateY(-20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@-webkit-keyframes fadeInImages {
  0% {
    opacity: 0;
    -webkit-transform: translateY(20px);
    transform: translateY(20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@keyframes fadeInImages {
  0% {
    opacity: 0;
    -webkit-transform: translateY(20px);
    transform: translateY(20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

body {
  font-weight: 500;
  color: #000;
  letter-spacing: 0;
  counter-reset: practice flowtext;
  background-color: #fff;
  -webkit-font-smoothing: antialiased;
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-weight: normal;
  font-size: 1.6rem;
  line-height: 1.75;
}

@-ms-viewport {
  width: auto;
}

a {
  display: block;
  color: #000;
  text-decoration: none;
  cursor: pointer;
}

a:hover {
  text-decoration: none;
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
ul,
ol,
dl {
  margin: 0;
}

figure {
  margin: 0;
}

p {
  margin: 0;
}

/* Lazyload
------------------------------------------ */
#index-mvTitle {
  opacity: 0;
}

#index-mvPhone01 {
  opacity: 0;
}

#index-mvPhone02 {
  opacity: 0;
}

.cmn-headerPc {
  opacity: 0;
}

.follow-dl {
  opacity: 0;
}

.sub-mvPhone {
  opacity: 0;
}

.sub-mvCont {
  opacity: 0;
}

#index-mv {
  opacity: 0;
}

#share-mv {
  opacity: 0;
}

.index-intro .baloon {
  opacity: 0;
}

#ana-ft03_02.active {
  -webkit-animation: shakeApp01 0.6s ease;
  animation: shakeApp01 0.6s ease;
}

#amc-ft03_01.active {
  -webkit-animation: shakeApp02 0.6s ease;
  animation: shakeApp02 0.6s ease;
}

._bgc-primary {
  background-color: color(primary) !important;
}

._bgc-blue1 {
  background-color: color(blue1) !important;
}

._bgc-blue2 {
  background-color: color(blue2) !important;
}

._bgc-blue3 {
  background-color: color(blue3) !important;
}

._bgc-text {
  background-color: color(text) !important;
}

._bgc-white {
  background-color: #fff !important;
}

._block {
  display: block !important;
}

._inline {
  display: inline !important;
}

._inline-block {
  display: inline-block !important;
}

._table {
  display: table !important;
}

._table-row {
  display: table-row !important;
}

._table-cell {
  display: table-cell !important;
}

._fx {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
}

._fx.-flex-start {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-line-pack: start;
  align-content: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}

._fx.-flex-end {
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -ms-flex-line-pack: end;
  align-content: flex-end;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
}

._fx.-center {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-line-pack: center;
  align-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

._fx.-stretch {
  -ms-flex-line-pack: stretch;
  align-content: stretch;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
}

._fx.-fxd-c {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

._fx.-fxd-cr {
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -ms-flex-direction: column-reverse;
  flex-direction: column-reverse;
}

._fx.-fxd-r {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
}

._fx.-fxd-rr {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}

._fx.-wrap {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

._fx.-nowrap {
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

._fx.-jc-fs {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
}

._fx.-jc-fe {
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}

._fx.-jc-c {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

._fx.-jc-sb {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

._fx.-jc-sa {
  -ms-flex-pack: distribute;
  justify-content: space-around;
}

._fx.-ac-c {
  -ms-flex-line-pack: center;
  align-content: center;
}

._fx.-ac-s {
  -ms-flex-line-pack: stretch;
  align-content: stretch;
}

._fx.-ac-fs {
  -ms-flex-line-pack: start;
  align-content: flex-start;
}

._fx.-ac-fe {
  -ms-flex-line-pack: end;
  align-content: flex-end;
}

._fx.-ac-sb {
  -ms-flex-line-pack: justify;
  align-content: space-between;
}

._fx.-ac-sa {
  -ms-flex-line-pack: distribute;
  align-content: space-around;
}

._fx.-ai-c {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

._fx.-ai-s {
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
}

._fx.-ai-fs {
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}

._fx.-ai-fe {
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
}

._fx.-ai-b {
  -webkit-box-align: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
}

._fi {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
}

._fi.-glow {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}

._fi.-glow2 {
  -webkit-box-flex: 2;
  -ms-flex-positive: 2;
  flex-grow: 2;
}

._fi.-glow3 {
  -webkit-box-flex: 3;
  -ms-flex-positive: 3;
  flex-grow: 3;
}

._fi.-glow4 {
  -webkit-box-flex: 4;
  -ms-flex-positive: 4;
  flex-grow: 4;
}

._fi.-glow5 {
  -webkit-box-flex: 5;
  -ms-flex-positive: 5;
  flex-grow: 5;
}

._fi.-shrink {
  -ms-flex-negative: 1;
  flex-shrink: 1;
}

._fi.-shrink2 {
  -ms-flex-negative: 2;
  flex-shrink: 2;
}

._fi.-shrink3 {
  -ms-flex-negative: 3;
  flex-shrink: 3;
}

._fi.-shrink4 {
  -ms-flex-negative: 4;
  flex-shrink: 4;
}

._fi.-shrink5 {
  -ms-flex-negative: 5;
  flex-shrink: 5;
}

._fi.-order1 {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
}

._fi.-order2 {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
}

._fi.-order3 {
  -webkit-box-ordinal-group: 4;
  -ms-flex-order: 3;
  order: 3;
}

._fi.-order4 {
  -webkit-box-ordinal-group: 5;
  -ms-flex-order: 4;
  order: 4;
}

._fi.-order5 {
  -webkit-box-ordinal-group: 6;
  -ms-flex-order: 5;
  order: 5;
}

._fi.-order6 {
  -webkit-box-ordinal-group: 7;
  -ms-flex-order: 6;
  order: 6;
}

._fi.-order7 {
  -webkit-box-ordinal-group: 8;
  -ms-flex-order: 7;
  order: 7;
}

._fi.-order8 {
  -webkit-box-ordinal-group: 9;
  -ms-flex-order: 8;
  order: 8;
}

._fi.-order9 {
  -webkit-box-ordinal-group: 10;
  -ms-flex-order: 9;
  order: 9;
}

._fi.-order10 {
  -webkit-box-ordinal-group: 11;
  -ms-flex-order: 10;
  order: 10;
}

._fzxs,
._fzxxs {
  font-size: 1rem;
  line-height: 1.8;
}

._fzs {
  font-size: 1.4rem;
  line-height: 1.5714;
}

._fzm {
  font-size: 1.6rem;
  line-height: 1.5;
}

._m0 {
  margin: 0 !important;
}

._mt0 {
  margin-top: 0 !important;
}

._mb0 {
  margin-bottom: 0 !important;
}

._ml0 {
  margin-left: 0 !important;
}

._mr0 {
  margin-right: 0 !important;
}

._ma {
  margin: auto !important;
}

._mta {
  margin-top: auto !important;
}

._mba {
  margin-bottom: auto !important;
}

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

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

._m0a {
  margin: 0 auto !important;
}

._ta-l {
  text-align: left !important;
}

._ta-r {
  text-align: right !important;
}

._ta-c {
  text-align: center !important;
}

._ta-j {
  text-align: justify !important;
}

.common-footer .footer-upper {
  background-color: #222222;
}

.common-footer .footer-upper .upper-wrap {
  padding: 55px 0 53px;
}

.common-footer .footer-upper .upper-nav {
  padding-bottom: 45px;
  margin-bottom: 45px;
  border-bottom: 1px solid #999999;
}

.common-footer .footer-upper .upper-nav .list {
  text-align: center;
}

.common-footer .footer-upper .upper-nav .item {
  position: relative;
  padding: 0 24px;
}

.common-footer .footer-upper .upper-nav .item + .item {
  padding-top: 32px;
}

.common-footer .footer-upper .upper-nav .item a {
  font-weight: bold;
  color: #fff;
  font-size: 1.3rem;
  line-height: 1;
}

.common-footer .footer-sns {
  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;
}

.common-footer .footer-sns > p {
  -webkit-box-flex: 0;
  -ms-flex: none;
  flex: none;
  width: 38px;
  margin-right: 24px;
}

.common-footer .footer-sns .sns + .sns {
  margin-left: 12px;
}

.common-footer .footer-sns .sns a {
  position: relative;
  display: inline-block;
  width: 50px;
  height: 50px;
  border-radius: 50%;
}

.common-footer .footer-sns .sns .twitter {
  background: #1da1f2;
  -webkit-transition: all ease 0.3s;
  transition: all ease 0.3s;
}

.common-footer .footer-sns .sns .twitter > span {
  position: absolute;
  top: 50%;
  left: 50%;
  display: inline-block;
  width: 19px;
  height: 15px;
  -webkit-transform: translateY(-50%) translateX(-50%);
  transform: translateY(-50%) translateX(-50%);
}

.common-footer .footer-sns .sns .twitter > span::before,
.common-footer .footer-sns .sns .twitter > span::after {
  position: absolute;
  width: 19px;
  height: 15px;
  text-align: center;
  content: "";
  background-size: contain;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}

.common-footer .footer-sns .sns .twitter > span::before {
  background-image: url(/serviceinfo/mobile/app/image/icon-twitter.svg);
  opacity: 1;
}

.common-footer .footer-sns .sns .twitter > span::after {
  background-image: url(/serviceinfo/mobile/app/image/icon-twitter_blue.svg);
  opacity: 0;
}

.common-footer .footer-sns .facebook {
  background: #3b5a9a;
  -webkit-transition: all ease 0.3s;
  transition: all ease 0.3s;
}

.common-footer .footer-sns .facebook > span {
  position: absolute;
  top: 50%;
  left: 50%;
  display: inline-block;
  width: 12px;
  height: 22px;
  -webkit-transform: translateY(-50%) translateX(-50%);
  transform: translateY(-50%) translateX(-50%);
}

.common-footer .footer-sns .facebook > span::before,
.common-footer .footer-sns .facebook > span::after {
  position: absolute;
  width: 12px;
  height: 22px;
  text-align: center;
  content: "";
  background-size: contain;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}

.common-footer .footer-sns .facebook > span::before {
  background-image: url(/serviceinfo/mobile/app/image/icon-fb.svg);
  opacity: 1;
}

.common-footer .footer-sns .facebook > span::after {
  background-image: url(/serviceinfo/mobile/app/image/icon-fb_blue.svg);
  opacity: 0;
}

.common-footer .footer-lower {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 35px 0 28px;
  margin: auto;
  text-align: center;
}

.common-footer .footer-lower .logo {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
  margin: 33px auto 0;
}

.common-footer .footer-lower .logo > a {
  width: 70px;
}

.common-footer .footer-lower .lower-nav {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
  width: 100%;
  margin-left: auto;
}

.common-footer .footer-lower .lower-nav .list {
  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;
  height: 100%;
}

.common-footer .footer-lower .lower-nav .item + .item {
  margin-left: 17px;
}

.common-footer .footer-lower .lower-nav .item a {
  font-size: 1.3rem;
  line-height: 1;
  color: #000;
}

.common-footer .footer-lower .copyright {
  -webkit-box-ordinal-group: 4;
  -ms-flex-order: 3;
  order: 3;
  width: 100%;
  margin-top: 8px;
  line-height: 1;
}

.common-footer .footer-lower .copyright > small {
  font-size: 1.1rem;
  line-height: 1;
}

.common-footer .footer-lower .copyright > small > span {
  display: inline-block;
}

.header-pc {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 8;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  height: 70px;
  margin: 0 auto;
  background-color: #fff;
}

.header-pc .header-logo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-right: 2.5%;
  margin-left: 2.3438%;
}

.header-pc .header-logo > a {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  width: 244px;
}

.header-pc .header-timeline {
  position: relative;
  padding: 0 4.5313%;
  margin-left: auto;
  height: 100%;
}

.header-pc .header-timeline a {
  font-weight: bold;
  color: #000;
  font-size: 1.3rem;
  line-height: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 100%;
}

.header-pc .header-timeline a::after {
  position: absolute;
  right: 0;
  bottom: 30px;
  left: 0;
  width: 6px;
  height: 6px;
  margin: auto;
  content: "";
  background-color: #00a7ea;
  border-radius: 50%;
  opacity: 0;
  -webkit-transition: all ease 0.3s;
  transition: all ease 0.3s;
}

.header-pc .header-timeline a:hover::after {
  bottom: 12px;
  opacity: 1;
  -webkit-transition: all ease 0.3s;
  transition: all ease 0.3s;
}

.header-pc .header-app a {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 230px;
  height: 70px;
  font-weight: bold;
  color: #fff;
  background-color: #00a7ea;
  -webkit-transition: all ease 0.3s;
  transition: all ease 0.3s;
  font-size: 1.4rem;
  line-height: 1;
}

.header-pc .header-app a:hover {
  background-color: #0b308e;
  -webkit-transition: all ease 0.3s;
  transition: all ease 0.3s;
}

.header-sp {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 8;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  height: 48px;
  background-color: #fff;
}

.header-sp .logo {
  width: 70px;
  margin-left: 3.0556%;
}

.header-sp .logo span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.header-sp .logo .ioj {
  margin-top: 4px;
}

.header-sp .title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 90px;
  margin-right: 69px;
  margin-left: auto;
}

.header-sp .header-timeline {
  margin-right: 20px;
  margin-left: auto;
  height: 100%;
}

.header-sp .header-timeline a {
  font-weight: bold;
  color: #000;
  font-size: 1.1rem;
  line-height: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 100%;
}

.header-sp .header-applink {
  position: inherit;
  z-index: 7;
  height: 100vh;
}

.header-sp .header-applink .lists {
  width: 77.7778%;
  max-width: 560px;
  padding-top: 35px;
  margin: 0 auto;
}

.header-sp .header-applink .item {
  position: relative;
  overflow: hidden;
}

.header-sp .header-applink .item:not(:first-child) {
  margin-top: 20px;
}

.header-sp .header-applink .item a {
  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;
  font-weight: bold;
  color: #000;
  background-color: #fff;
}

.header-sp .header-applink .item img {
  width: 71px;
}

.header-sp .header-applink .item > .phone {
  position: absolute;
  bottom: -38px;
  left: 26px;
  width: 71px;
  -webkit-filter: drop-shadow(4px 3px 20px rgba(106, 115, 118, 0.3));
  filter: drop-shadow(4px 3px 20px rgba(106, 115, 118, 0.3));
}

.header-sp .header-applink .item > .arrow {
  position: relative;
}

.header-sp .header-applink .item > .arrow::after {
  position: absolute;
  top: 0;
  right: 18px;
  bottom: 0;
  width: 8px;
  height: 13px;
  margin: auto;
  content: "";
  background-image: url(/serviceinfo/mobile/app/image/arrow.svg);
  background-size: contain;
}

.header-sp .header-applink .item > .apptop {
  font-size: 1.6rem;
  line-height: 1;
  height: 70px;
}

.header-sp .header-applink .item > .apppage {
  font-size: 1.5rem;
  line-height: 1;
  position: relative;
  height: 120px;
  padding-left: 38px;
}

.header-sp .header-applink .item > .amcpage {
  font-size: 1.5rem;
  line-height: 1.5333;
  position: relative;
  height: 115px;
  padding-left: 58px;
}

.header-sp .header-applink .dl-btn {
  width: 77.7778%;
  max-width: 560px;
  padding-bottom: 100px;
  margin: 0 auto;
}

.header-sp .header-applink .dl-btn > .appdl {
  position: relative;
  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;
  height: 80px;
  margin-top: 47px;
  overflow: visible;
  font-weight: bold;
  color: #fff;
  background-color: #00a7ea;
  font-size: 1.8rem;
  line-height: 1;
}

.header-sp .header-applink .dl-btn > .appdl .airplane {
  position: absolute;
  top: -26px;
  left: 20px;
  z-index: 100;
  display: inline-block;
  width: 85px;
  height: 26px;
  content: "";
  background-image: url(/serviceinfo/mobile/app/image/airplane.png);
  background-repeat: no-repeat;
  background-size: contain;
  -webkit-transform: rotate(10deg);
  transform: rotate(10deg);
}

.nav-global {
  position: fixed;
  top: 48px;
  right: 0;
  width: 100%;
  height: 100vh;
  overflow: auto;
  text-align: center;
  visibility: hidden;
  opacity: 0;
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
}

.nav-global.active {
  visibility: visible;
  opacity: 1;
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
}

.nav-global .bg-nav {
  position: relative;
  width: 100%;
  height: 120%;
  padding: 0;
  margin: 0 auto;
  background: #f7f7f7;
}

.nav-global .nav-wrapper {
  width: 100%;
  height: 100%;
  overflow-x: hidden;
}

.nav-global .sitename {
  position: absolute;
  position: relative;
  top: 20px;
  left: 5.5556%;
  width: 90px;
  margin: 0;
  line-height: 1;
}

.nav-global .links {
  position: absolute;
  top: 180px;
  right: 50px;
}

.nav-global .links > li {
  position: relative;
  margin: auto 0;
  list-style-type: none;
}

.nav-global .links > li:not(:last-of-type) {
  margin: 0 0 30px 0;
}

.nav-global .links > li::before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 7px;
  height: 2px;
  margin: auto;
  content: "";
  background-color: #000;
}

.nav-global .links a {
  display: block;
  padding: 0 0 0 19px;
  color: #000;
  text-align: left;
  text-decoration: none;
  letter-spacing: 0.1em;
  font-weight: bold;
  font-size: 1.6rem;
  line-height: 1;
}

.nav-global .links a.logo {
  position: relative;
  height: 16px;
}

.nav-global .links a.logo::before {
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 100;
  width: 70px;
  height: 16px;
  margin: auto;
  content: "";
  background-repeat: no-repeat;
  background-size: contain;
}

.nav-global .links a.logo::after {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 70px;
  height: 16px;
  margin: auto;
  content: "";
  background-repeat: no-repeat;
  background-size: contain;
}

.nav-global .links a.logo img {
  width: 100%;
}

.nav-toggle {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 10;
  display: block;
  width: 48px;
  height: 48px;
  padding: 0;
  text-align: center;
  cursor: pointer;
  background-color: #00a7ea;
  border: none;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.nav-toggle .line {
  position: absolute;
  right: 0;
  left: 0;
  display: block;
  width: 20px;
  margin: auto;
  border-bottom: solid 1px #fff;
  -webkit-transition: all 300ms ease;
  transition: all 300ms ease;
}

.nav-toggle .line:nth-child(1) {
  top: 16px;
}

.nav-toggle .line:nth-child(2) {
  top: 24px;
}

.nav-toggle .line:nth-child(3) {
  top: 32px;
}

.modal-toggle {
  position: fixed;
}

#wrap-container {
  max-width: none;
  padding: 0;
  margin-right: calc(((100vw - 100%) / 2) * -1);
  margin-left: calc(((100vw - 100%) / 2) * -1);
}

#wrap-container #contents:first-child:before {
  display: none;
}

.app-container {
  position: relative;
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-weight: normal;
}

.app-container img {
  width: 100%;
}

.main-cont {
  position: relative;
}

.over-section {
  margin-right: calc(((100vw - 100%) / 2) * -1);
  margin-left: calc(((100vw - 100%) / 2) * -1);
}

.bg-blue {
  background-color: #f5fcff;
}

.cmn-section {
  width: 83.3333%;
  max-width: 600px;
  margin: 0 auto;
}

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

.cmn-btn a {
  font-size: 1.4rem;
  line-height: 1;
  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;
  width: 100%;
  max-width: 320px;
  height: 55px;
  font-weight: bold;
  color: #fff;
  background-color: #0b308e;
  border: 2px solid #0b308e;
  -webkit-transition: all ease 0.3s;
  transition: all ease 0.3s;
}

.cmn-modal {
  position: inherit;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9;
  width: 100%;
  height: 100%;
  overflow: auto;
  visibility: hidden;
  background-color: #f1f7fa;
  opacity: 0;
  -webkit-transition: opacity ease 0.3s;
  transition: opacity ease 0.3s;
}

.cmn-modal.-open {
  visibility: visible;
  opacity: 1;
  -webkit-transition: opacity ease 0.3s;
  transition: opacity ease 0.3s;
}

.time-section > .inner {
  margin-left: auto;
  margin-right: auto;
  width: 88.8889%;
}

.follow-dl {
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 7;
  width: 100%;
}

.follow-dl a {
  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;
  width: 100%;
  height: 60px;
  font-weight: bold;
  color: #fff;
  background-color: #00a7ea;
  font-size: 1.4rem;
  line-height: 1;
}

.scroll-top {
  position: absolute;
  right: 20px;
  bottom: 20px;
}

.scroll-top > a {
  position: relative;
  width: 40px;
  height: 40px;
  background: #fff;
  border-radius: 50%;
  -webkit-filter: drop-shadow(0px 1px 8px rgba(106, 115, 118, 0.1));
  filter: drop-shadow(0px 1px 8px rgba(106, 115, 118, 0.1));
}

.scroll-top > a::before {
  position: absolute;
  width: 16px;
  height: 9px;
  content: "";
  background-image: url(/serviceinfo/mobile/app/image/pagetop.png);
  background-size: contain;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}

.hdl-ttl {
  text-align: center;
}

.hdl-ttl .mainttl {
  margin: 0 auto;
  color: #00a7ea;
  text-transform: uppercase;
  font-family: "Montserrat", sans-serif;
  font-weight: 400;
  font-size: 3rem;
  line-height: 1;
}

.hdl-ttl .subttl {
  font-size: 1.4rem;
  line-height: 1;
  margin-top: 20px;
  font-weight: bold;
}

.about-app .about-wrap {
  position: relative;
}

.about-app .about-wrap::before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  width: 98.4375%;
  height: 1px;
  margin: auto;
  content: "";
  background-color: #dddddd;
}

.about-app .about-wrap:last-child::after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  content: "";
  background-color: #dddddd;
}

.about-app .about-wrap > .inner {
  padding: 42px 0 40px;
  text-align: center;
}

.about-app .about-wrap > .inner > .about-ttls > .subtitle {
  font-size: 1.4rem;
  line-height: 1;
  font-weight: bold;
  color: #00a7ea;
  letter-spacing: 0.06em;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
}

.about-app .about-wrap > .inner > .about-ttls > .title {
  font-size: 1.6rem;
  line-height: 1.625;
  margin-top: 12px;
  font-weight: bold;
}

.about-app .about-wrap > .inner > .about-icons {
  margin-top: 26px;
}

.about-app .about-wrap > .inner > .icons {
  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;
}

.about-app .about-wrap > .inner > .icons > .icon {
  display: inline-block;
  width: 89px;
}

.about-app .about-wrap > .inner > .icons > .icon.phone {
  width: 50px;
  -webkit-filter: drop-shadow(0px 1px 20px rgba(106, 115, 118, 0.3));
  filter: drop-shadow(0px 1px 20px rgba(106, 115, 118, 0.3));
}

.about-app .about-wrap > .inner > .icons > .icon + .icon {
  margin-left: 21px;
}

.about-app .about-download {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-top: 30px;
}

.about-app .about-download .app + .app {
  margin-left: 19px;
}

.about-app .about-download .store {
  margin: 0 auto;
}

.about-app .about-download .store.-apple {
  width: 119px;
}

.about-app .about-download .store.-andloid {
  width: 134px;
}

.about-app .about-download .qrcode {
  width: 100px;
  margin: 0 auto;
}

.about-app .detail-btn {
  max-width: 230px;
  margin-top: 33px;
}

.about-app .detail-btn > a {
  margin: 0 auto;
}

.dl-contents {
  position: relative;
  padding: 62px 0 91px;
  background: -webkit-gradient(
    linear,
    left bottom,
    left top,
    from(#efefef),
    to(#fff)
  );
  background: linear-gradient(to top, #efefef, #fff);
}

.dl-contents .dl-wrap {
  width: 88.8889%;
  margin: 0 auto;
}

.dl-contents .dl-apps {
  margin-top: 38px;
}

.dl-contents .dl-topics {
  margin-top: 50px;
  border-top: 1px solid #cccccc;
  border-bottom: 1px solid #cccccc;
}

.dl-contents .dl-topics.active .aticle a::after {
  -webkit-transition: all ease 0.3s;
  transition: all ease 0.3s;
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
}

.dl-contents .dl-topics .aticle a {
  position: relative;
  display: inline-block;
  width: 100%;
  padding: 24px 0 22px;
  font-weight: bold;
  color: #000;
  text-align: center;
  font-size: 1.4rem;
  line-height: 1;
}

.dl-contents .dl-topics .aticle a::before,
.dl-contents .dl-topics .aticle a::after {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  content: "";
  background-color: #000;
}

.dl-contents .dl-topics .aticle a::before {
  right: 17px;
  width: 16px;
  height: 2px;
}

.dl-contents .dl-topics .aticle a::after {
  right: 24px;
  width: 2px;
  height: 16px;
  -webkit-transition: all ease 0.3s;
  transition: all ease 0.3s;
}

.dl-contents .dl-topics .detail {
  display: none;
}

.dl-contents .dl-topics .text-cont {
  width: 90.8333%;
  padding-bottom: 30px;
  padding-left: 1em;
  margin: 0 auto;
}

.dl-contents .dl-topics .text-cont > ul li {
  position: relative;
  font-size: 1.4rem;
  line-height: 1.4286;
}

.dl-contents .dl-topics .text-cont > ul li::before {
  position: absolute;
  left: -1em;
  content: "・";
}

.dl-contents .dl-topics .text-cont > ul li + li {
  margin-top: 12px;
}

.dl-contents .lp-note {
  width: 88.8889%;
  padding-top: 50px;
  margin-right: auto;
  margin-left: auto;
}

.dl-contents .lp-note p {
  color: #666666;
  font-size: 1.2rem;
  line-height: 1.6667;
}

.dl-modal {
  min-height: 1000px;
  padding-top: 24.8611%;
  background-image: inherit;
}

.dl-modal .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: wrap;
  flex-flow: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 95.2381%;
  max-width: 300px;
  margin: auto;
}

.dl-modal .inner > .about-icons {
  width: 50%;
  margin-top: 0;
}

.dl-modal .title {
  text-align: center;
}

.dl-modal .title .mainttl {
  font-size: 2.6rem;
  line-height: 1;
  color: #00a7ea;
  text-transform: uppercase;
  font-family: "Montserrat", sans-serif;
  font-weight: 400;
}

.dl-modal .title .subttl {
  margin-top: 15px;
  font-size: 1.2rem;
  line-height: 1;
  font-weight: bold;
}

.dl-modal .about-ttls {
  text-align: left;
}

.dl-modal .about-ttls .title {
  text-align: left;
}

.dl-modal .about-download {
  width: 100%;
}

.function-flow {
  padding-top: 57px;
}

.function-flow > .title {
  width: 269px;
  margin-left: auto;
  margin-right: auto;
}

.function-flow > .list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: wrap;
  flex-flow: wrap;
  margin-top: 26px;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 74.375%;
  margin-left: auto;
  margin-right: auto;
}

.function-flow .item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -ms-flex-flow: column-reverse;
  flex-flow: column-reverse;
  width: 44.1177%;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}

.function-flow .item:nth-child(2n) {
  margin-left: 10.5042%;
}

.function-flow .item:nth-child(n + 3) {
  margin-top: 20px;
}

.function-flow .item:not(:last-child) .image {
  position: relative;
}

.function-flow .item:not(:last-child) .image::after {
  position: absolute;
  content: "";
  background-image: url(/serviceinfo/mobile/timeline/image/icon-arrow.svg);
  width: 10px;
  height: 22px;
  background-repeat: no-repeat;
  background-size: contain;
  top: 0;
  bottom: 0;
  margin: auto;
  right: -22%;
}

.function-flow .item .text {
  font-size: 1.3rem;
  line-height: 1.6154;
  counter-increment: flowtext;
  position: relative;
  margin-top: 34px;
}

.function-flow .item .text::before {
  position: absolute;
  color: #000;
  content: "0" counter(flowtext);
  color: #00a7ea;
  font-size: 1.5rem;
  line-height: 1;
  left: 0;
  top: -20px;
}

.function-flow .item .image {
  width: 95.2381%;
  margin-left: auto;
  margin-right: auto;
  -webkit-filter: drop-shadow(4px 3px 20px rgba(106, 115, 118, 0.3));
  filter: drop-shadow(4px 3px 20px rgba(106, 115, 118, 0.3));
  min-height: 1px;
}

.function-flow .attention {
  color: #777777;
  font-size: 1.1rem;
  line-height: 1.7273;
  width: 81.25%;
  margin-left: auto;
  margin-right: auto;
  padding-top: 14px;
  padding-left: 11px;
}

.function-flow .attention .notes li {
  padding-left: 1em;
  text-indent: -1em;
}

.function-flow .attention .notes li::before {
  content: "・";
}

.function-list .item {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -ms-flex-flow: column-reverse;
  flex-flow: column-reverse;
  opacity: 0;
}

.function-list .item:nth-child(n + 2) {
  margin-top: 87px;
}

.function-list .item .label {
  position: absolute;
  z-index: 2;
  top: -15px;
  right: 26px;
  background-color: #0b308e;
  border-radius: 4px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
  padding: 10px;
}

.function-list .item .label .new {
  color: #fff;
  letter-spacing: 0.06em;
  font-size: 1.2rem;
  line-height: 1;
  text-transform: uppercase;
  padding-right: 8px;
}

.function-list .item .label .time {
  color: #fff;
  font-size: 1.1rem;
  line-height: 1;
  font-family: "Montserrat", sans-serif;
  font-weight: 400;
  letter-spacing: 0.06em;
}

.function-list .item .text .ttl {
  font-size: 1.4rem;
  line-height: 1.7857;
  margin-top: 22px;
  font-weight: bold;
  text-align: center;
}

.function-list .item .text > p {
  font-size: 1.4rem;
  line-height: 1.7857;
  margin-top: 18px;
}

.slide-wrap {
  position: relative;
  pointer-events: none;
}

.slide-wrap::before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 5;
  width: 100%;
  padding-top: 199%;
  content: "";
  background-image: url(/serviceinfo/mobile/timeline/image/phone-frame.png);
  background-repeat: no-repeat;
  background-position: top center;
  background-size: contain;
}

.slide-wrap .slider {
  overflow: hidden;
  pointer-events: auto;
}

.slide-wrap .slider,
.slide-wrap .slider-phone {
  z-index: 4;
}

.slide-wrap .slider-frame {
  padding: 5.3623% 6.087% 4.9275%;
}

.slide-wrap .slick-track {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.time-about {
  padding: 24px 0 51px;
  text-align: center;
  background-color: #fff;
}

.time-about > .inner {
  opacity: 0;
}

.time-about .about-title {
  position: relative;
  display: inline-block;
  width: 180px;
}

.time-about .textarea {
  margin-top: 22px;
}

.time-about .textarea p {
  font-size: 1.6rem;
  line-height: 1.6875;
  font-weight: bold;
  letter-spacing: 0.06em;
}

.time-about .pr {
  font-size: 1.4rem;
  line-height: 1.7857;
  font-weight: bold;
  margin: 15px 15px 0 15px;
}

.time-about .about-child {
  position: relative;
  display: inline-block;
  margin-top: 33px;
  margin-right: auto;
  margin-left: auto;
}

.time-about .about-child .txt {
  font-family: "Lato", sans-serif;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1;
  position: absolute;
  top: -10px;
  right: -10px;
  text-transform: uppercase;
  opacity: 0;
}

.time-about .about-child .illust {
  display: block;
  width: 78px;
}

.time-closing {
  padding: 25px 0 80px;
}

.time-closing .textarea {
  padding: 13px 26px;
  text-align: center;
  background-color: #eaf9ff;
  font-size: 1.1rem;
  line-height: 1.6364;
}

.time-closing .notes {
  margin-top: 40px;
  color: #666666;
  font-size: 1.1rem;
  line-height: 1.2727;
}

.time-dl {
  padding-bottom: 84px;
  position: relative;
  background-color: #ffffff;
}

.time-dl > .notes {
  color: #666666;
  font-size: 1.1rem;
  line-height: 1;
  width: 88.8889%;
  padding-top: 34px;
  margin-left: auto;
  margin-right: auto;
}

.time-dl .dl-wrap {
  padding: 221px 0 53px;
  background-image: url(/serviceinfo/mobile/timeline/image/download-bg_sp.png);
  background-repeat: no-repeat;
  background-size: cover;
}

.time-dl .dl-wrap > .inner {
  position: relative;
}

.time-dl .dl-wrap > .inner.-active .spot {
  -webkit-animation: fadeInSpot 0.5s forwards;
  animation: fadeInSpot 0.5s forwards;
  -webkit-animation-delay: 0.6s;
  animation-delay: 0.6s;
}

.time-dl .dl-app {
  position: relative;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-flow: column;
  flex-flow: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 300px;
  height: 220px;
  margin: auto;
  background-image: url(/serviceinfo/mobile/timeline/image/download-contbg_sp.svg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  -webkit-filter: drop-shadow(4px 3px 20px rgba(106, 115, 118, 0.3));
  filter: drop-shadow(4px 3px 20px rgba(106, 115, 118, 0.3));
}

.time-dl .dl-app .app {
  width: 80px;
  margin-left: 27px;
  min-height: 1px;
}

.time-dl .dl-app .dl .dltitle {
  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;
  margin-top: 19px;
  margin-left: 25px;
  font-size: 1.4rem;
  line-height: 1;
  font-weight: bold;
}

.time-dl .dl-app .dl .wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 24px;
  margin-left: 27px;
}

.time-dl .dl-app .dl .ios {
  width: 104px;
}

.time-dl .dl-app .dl .andloid {
  width: 117px;
  margin-left: 15px;
}

.time-dl .dl-app .object {
  position: absolute;
  bottom: -53px;
  z-index: 1;
}

.time-dl .dl-app .object.-tower {
  left: -18px;
  width: 42px;
}

.time-dl .dl-app .object.-building {
  right: -17px;
  width: 68px;
}

.time-dl .phone {
  position: absolute;
  top: -178px;
  right: 0;
  left: 0;
  z-index: 0;
  width: 160px;
  margin: auto;
  -webkit-filter: drop-shadow(0px 1px 20px rgba(106, 115, 118, 0.3));
  filter: drop-shadow(0px 1px 20px rgba(106, 115, 118, 0.3));
}

.time-function {
  background-color: #d9f3ff;
  padding-top: 56px;
}

.function-section {
  padding-top: 64px;
}

.function-section + .function-section {
  padding-top: 85px;
}

.function-section:nth-of-type(3) {
  padding-bottom: 68px;
}

.function-section.-column01 > .inner {
  position: relative;
  padding: 75px 0 40px;
  background-color: #fff;
  border-radius: 10px;
}

.function-section.-column01 .label {
  position: absolute;
  z-index: 2;
  top: -15px;
  left: 115px;
  background-color: #0b308e;
  border-radius: 4px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
  padding: 10px;
}

.function-section.-column01 .label .updated {
  color: #fff;
  letter-spacing: 0.06em;
  font-size: 1.4rem;
  line-height: 1;
  padding-right: 8px;
}

.function-section.-column01 .label .time {
  color: #fff;
  font-family: "Montserrat", sans-serif;
  font-weight: 400;
  letter-spacing: 0.06em;
  font-size: 1.2rem;
  line-height: 1;
}

.function-section.-column03 {
  padding-top: 105px;
  padding-bottom: 72px;
  background-color: #fff;
}

.function-section.-column03 > .inner {
  width: 72.2222%;
}

.function-section.-column03 .number {
  top: -53px;
  left: 12px;
}

.function-section.-column03 .number .num {
  font-size: 6.4rem;
  line-height: 1;
}

.function-section.-column03 .text > p {
  margin-right: -4px;
  margin-left: -4px;
}

.function-section .body {
  width: 86.5625%;
  margin-right: auto;
  margin-left: auto;
}

.function-section .number {
  position: absolute;
  top: -42px;
  left: 20px;
  color: #0b308e;
}

.function-section .number .num {
  font-family: "Montserrat", sans-serif;
  font-weight: 400;
  font-size: 7.5rem;
  line-height: 1;
  position: relative;
  margin-top: 12px;
}

.function-section .desc {
  text-align: center;
}

.function-section .desc .function-title {
  position: relative;
  display: inline-block;
}

.function-section .desc .function-title .spot {
  position: absolute;
  top: -5px;
  left: -32px;
  display: inline-block;
  width: 24px;
  opacity: 0;
}

.function-section .desc .function-title .title {
  display: block;
}

.function-section .desc .function-title .title.-function01 {
  width: 148px;
}

.function-section .desc .function-title .title.-function02 {
  width: 204px;
}

.function-section .desc .function-title .title.-function03 {
  width: 172px;
}

.function-section .desc .textarea {
  font-size: 1.5rem;
  line-height: 1.8;
  width: 90.2527%;
  margin: 21px auto 0;
  text-align: left;
}

.function-section .images {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-top: 33px;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}

.function-section .images .phone {
  width: 45.8484%;
  -webkit-filter: drop-shadow(4px 3px 20px rgba(106, 115, 118, 0.3));
  filter: drop-shadow(4px 3px 20px rgba(106, 115, 118, 0.3));
}

.time-mv {
  position: relative;
  height: 131.9444vw;
  padding-top: 24.4444vw;
  margin-bottom: 103.3333vw;
  background-image: url(/serviceinfo/mobile/timeline/image/mv-bg_sp.png);
  background-repeat: no-repeat;
  background-size: contain;
}

.time-mv .mv-cont {
  width: 88.8889vw;
  margin-right: auto;
  margin-left: auto;
}

.time-mv .mv-cont .body {
  position: relative;
  height: 68.8889vw;
  text-align: center;
  background-image: url(/serviceinfo/mobile/timeline/image/mv-contbg_sp.png);
  background-repeat: no-repeat;
  background-size: contain;
  opacity: 0;
}

.time-mv .mv-cont .body .label {
  font-family: "Lato", sans-serif;
  font-weight: 400;
  position: relative;
  display: inline-block;
  padding: 2.7778vw 12.0833vw 2.7778vw 5.5556vw;
  margin-top: 10vw;
  font-size: 2.9167vw;
  line-height: 1;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  background-color: #f7de09;
  border-radius: 27px;
}

.time-mv .mv-cont .body .label > span {
  position: absolute;
  top: 0;
  right: 4.8611vw;
  bottom: 0;
  display: inline-block;
  width: 4.3056vw;
  height: 4.1667vw;
  margin: auto;
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}

.time-mv .mv-cont .mv-title {
  padding-top: 11.6667vw;
}

.time-mv .mv-cont .mv-title .copy {
  display: block;
  width: 52.2222vw;
  margin-right: 10vw;
  margin-left: 25vw;
  line-height: 1;
  position: relative;
}

.time-mv .mv-cont .mv-title .copy::before {
  position: absolute;
  content: "";
  background-image: url(/serviceinfo/mobile/timeline/image/icon-shiori.svg);
  background-size: contain;
  background-repeat: no-repeat;
  width: 5.4167vw;
  height: 5.1389vw;
  left: -7.2222vw;
  top: 1.3889vw;
}

.time-mv .mv-cont .mv-title .title {
  position: relative;
  display: block;
  width: 68.6111vw;
  padding-top: 7.5vw;
  margin-left: 13.1944vw;
}

.time-mv .mv-cont .mv-title .spot {
  position: absolute;
  right: 7.6389vw;
  bottom: 6.9444vw;
  z-index: 1;
  display: block;
  width: 5.2778vw;
}

.time-mv .mv-cont .object {
  position: absolute;
  z-index: 3;
  bottom: -38.6111vw;
}

.time-mv .mv-cont .object.-tower {
  left: 1.3889vw;
  display: block;
  width: 13.1944vw;
}

.time-mv .mv-cont .object.-building {
  right: -1.6667vw;
  display: block;
  width: 19.4444vw;
}

.time-mv .mv-cont .mv-app {
  position: absolute;
  bottom: -125.5556vw;
  width: 100%;
}

.time-mv .mv-cont .mv-app .app {
  position: relative;
  width: 25vw;
  margin-left: 16.6667vw;
}

.time-mv .mv-cont .mv-app .app::before {
  position: absolute;
  top: 8.3333vw;
  right: -29.8611vw;
  font-size: 4.1667vw;
  font-weight: bold;
  content: "ダウンロード";
}

.time-mv .mv-cont .mv-app .dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding-top: 9.7222vw;
}

.time-mv .mv-cont .mv-app .dl .ios {
  width: 33.0556vw;
}

.time-mv .mv-cont .mv-app .dl .andloid {
  width: 37.2222vw;
  margin-left: 4.7222vw;
}

.time-mv .mv-cont .phone {
  position: absolute;
  top: 71.3889vw;
  right: 0;
  left: 0;
  width: 44.1667vw;
  margin: auto;
  overflow: visible;
  opacity: 0;
  -webkit-filter: drop-shadow(0px 1px 20px rgba(106, 115, 118, 0.3));
  filter: drop-shadow(0px 1px 20px rgba(106, 115, 118, 0.3));
}

@media print, screen and (min-width: 768px) {
  a[href^="tel:"] {
    color: color(text);
    text-decoration: none;
    pointer-events: none;
  }
  ._sp {
    display: none !important;
  }
  ._fzxs,
  ._fzxxs {
    font-size: 1.2rem;
    line-height: 1.6667;
  }
  ._fzs {
    font-size: 1.4rem;
    line-height: 1.7143;
  }
  ._fzm {
    font-size: 1.6rem;
    line-height: 1.625;
  }
  ._fzxs-pc,
  ._fzxxs-pc {
    font-size: 0.75rem !important;
    line-height: 1.6667 !important;
  }
  ._fzs-pc {
    font-size: 0.875rem !important;
    line-height: 1.7143 !important;
  }
  ._fzm-pc {
    font-size: 1rem !important;
    line-height: 1.625 !important;
  }
  .common-footer .footer-upper .upper-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 54px 0;
  }
  .common-footer .footer-upper .upper-nav {
    padding-bottom: 0;
    margin-bottom: 0;
    border: none;
  }
  .common-footer .footer-upper .upper-nav .list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    height: 100%;
  }
  .common-footer .footer-upper .upper-nav .item::before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 2px;
    height: 14px;
    margin: auto;
    content: "";
    background-color: #999999;
  }
  .common-footer .footer-upper .upper-nav .item:last-child::after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 2px;
    height: 14px;
    margin: auto;
    content: "";
    background-color: #999999;
  }
  .common-footer .footer-upper .upper-nav .item + .item {
    padding-top: 0;
    -webkit-transition: opacity ease 0.3;
    transition: opacity ease 0.3;
  }
  .common-footer .footer-upper .upper-nav .item a {
    -webkit-transition: opacity ease 0.3s;
    transition: opacity ease 0.3s;
  }
  .common-footer .footer-upper .upper-nav .item a:hover {
    opacity: 0.7;
    -webkit-transition: opacity ease 0.3s;
    transition: opacity ease 0.3s;
  }
  .common-footer .footer-sns {
    -webkit-box-pack: inherit;
    -ms-flex-pack: inherit;
    justify-content: inherit;
    margin-left: auto;
  }
  .common-footer .footer-sns > p {
    width: 52px;
  }
  .common-footer .footer-sns .sns + .sns {
    margin-left: 14px;
  }
  .common-footer .footer-sns .sns a {
    width: 56px;
    height: 56px;
  }
  .common-footer .footer-sns .sns .twitter > span::before,
  .common-footer .footer-sns .sns .twitter > span::after {
    width: 21px;
    height: 17px;
  }
  .common-footer .footer-sns .sns .twitter > span {
    width: 21px;
    height: 17px;
  }
  .common-footer .footer-sns .sns .twitter:hover {
    background: #fff;
    -webkit-transition: all ease 0.3s;
    transition: all ease 0.3s;
  }
  .common-footer .footer-sns .sns .twitter:hover > span::before {
    opacity: 0;
  }
  .common-footer .footer-sns .sns .twitter:hover > span::after {
    opacity: 1;
  }
  .common-footer .footer-sns .facebook > span::before,
  .common-footer .footer-sns .facebook > span::after {
    width: 13px;
    height: 25px;
  }
  .common-footer .footer-sns .facebook > span {
    width: 13px;
    height: 25px;
  }
  .common-footer .footer-sns .facebook:hover {
    background: #fff;
    -webkit-transition: all ease 0.3s;
    transition: all ease 0.3s;
  }
  .common-footer .footer-sns .facebook:hover > span::before {
    opacity: 0;
  }
  .common-footer .footer-sns .facebook:hover > span::after {
    opacity: 1;
  }
  .header-sp .header-applink .item > .phone {
    -webkit-filter: drop-shadow(8px 6px 40px rgba(106, 115, 118, 0.3));
    filter: drop-shadow(8px 6px 40px rgba(106, 115, 118, 0.3));
  }
  .modal-toggle {
    position: absolute;
  }
  .cmn-section {
    width: 93.75%;
    max-width: 1200px;
  }
  .cmn-btn a {
    width: 240px;
    height: 60px;
  }
  .cmn-btn a:hover {
    color: #0b308e;
    background-color: #fff;
    -webkit-transition: all ease 0.3s;
    transition: all ease 0.3s;
  }
  .cmn-modal {
    position: fixed;
    top: 0;
  }
  .cmn-modal::before {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 150%;
    content: "";
    background-color: #1d1d1d;
    opacity: 0.4;
  }
  .cmn-modal.-open {
    background-color: transparent;
  }
  .time-section > .inner {
    max-width: 1120px;
  }
  .scroll-top {
    bottom: 30px;
  }
  .scroll-top > a {
    -webkit-filter: drop-shadow(0px 2px 16px rgba(106, 115, 118, 0.1));
    filter: drop-shadow(0px 2px 16px rgba(106, 115, 118, 0.1));
    -webkit-transition: all ease 0.3s;
    transition: all ease 0.3s;
  }
  .scroll-top > a {
    width: 48px;
    height: 48px;
  }
  .scroll-top > a:hover {
    opacity: 0.5;
  }
  .hdl-ttl .mainttl {
    font-size: 4.4rem;
    line-height: 1;
  }
  .hdl-ttl .subttl {
    margin-top: 32px;
    font-size: 1.6rem;
    line-height: 1;
  }
  .about-app {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .about-app .about-wrap {
    margin-right: auto;
  }
  .about-app .about-wrap::before {
    display: none;
  }
  .about-app .about-wrap:last-child {
    margin-right: 0;
    margin-left: auto;
  }
  .about-app .about-wrap:last-child::after {
    display: none;
  }
  .about-app .about-wrap > .inner {
    padding: 0;
  }
  .about-app .about-wrap > .inner > .about-ttls > .title {
    margin-top: 14px;
    font-size: 1.8rem;
    line-height: 1.4444;
  }
  .about-app .about-wrap > .inner > .about-icons {
    margin-top: 52px;
  }
  .about-app .about-wrap > .inner > .icons > .icon {
    width: 127px;
  }
  .about-app .about-wrap > .inner > .icons > .icon.phone {
    -webkit-filter: drop-shadow(0px 2px 40px rgba(106, 115, 118, 0.3));
    filter: drop-shadow(0px 2px 40px rgba(106, 115, 118, 0.3));
  }
  .about-app .about-wrap > .inner > .icons > .icon.phone {
    width: 72px;
  }
  .about-app .about-wrap > .inner > .icons > .icon + .icon {
    margin-left: 9.375%;
  }
  .about-app .about-download {
    margin-top: 40px;
  }
  .about-app .about-download .store.-apple {
    width: 140px;
  }
  .about-app .about-download .store.-andloid {
    width: 158px;
  }
  .about-app .about-download .store a {
    -webkit-transition: opacity ease 0.3s;
    transition: opacity ease 0.3s;
  }
  .about-app .about-download .store a:hover {
    opacity: 0.6;
    -webkit-transition: opacity ease 0.3s;
    transition: opacity ease 0.3s;
  }
  .about-app .about-download .qrcode {
    margin-top: 35px;
  }
  .about-app .detail-btn {
    margin-top: 57px;
  }
  .dl-contents {
    padding: 100px 0 90px;
  }
  .dl-contents .dl-wrap {
    width: 93.75%;
    max-width: 1200px;
  }
  .dl-contents .dl-apps {
    position: relative;
    width: 76.6667%;
    margin: 0 auto;
    margin-top: 69px;
  }
  .dl-contents .dl-apps:before {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    width: 1px;
    height: 100%;
    margin: auto;
    content: "";
    background-color: #dddddd;
  }
  .dl-contents .dl-topics {
    width: 80%;
    max-width: 960px;
    margin: 0 auto;
    margin-top: 100px;
  }
  .dl-contents .dl-topics .aticle a {
    font-size: 1.8rem;
    line-height: 1;
    padding: 36px 0;
    -webkit-transition: opacity ease 0.3s;
    transition: opacity ease 0.3s;
  }
  .dl-contents .dl-topics .aticle a:hover {
    opacity: 0.5;
    -webkit-transition: opacity ease 0.3s;
    transition: opacity ease 0.3s;
  }
  .dl-contents .dl-topics .aticle a::before {
    right: 19px;
    width: 20px;
  }
  .dl-contents .dl-topics .aticle a::after {
    right: 28px;
    height: 20px;
  }
  .dl-contents .dl-topics .text-cont {
    width: 82.9167%;
  }
  .dl-contents .dl-topics .text-cont > ul li {
    font-size: 1.6rem;
    line-height: 1.5;
  }
  .dl-contents .lp-note {
    width: 75%;
    max-width: 960px;
    padding-top: 80px;
  }
  .dl-contents .lp-note p {
    font-size: 1.4rem;
    line-height: 1.7143;
  }
  .dl-modal {
    min-height: 900px;
    padding: 0;
  }
  .dl-modal > .dl-wrap {
    position: relative;
    width: 87.5%;
    max-width: 1120px;
    padding: 53px 0 72px;
    margin: 60px auto 0;
    overflow: auto;
    background-color: #f1f7fa;
  }
  .dl-modal .inner {
    display: block;
  }
  .dl-modal .inner > .about-icons {
    width: 100%;
  }
  .dl-modal .title .mainttl {
    font-size: 3.2rem;
    line-height: 1;
  }
  .dl-modal .title .subttl {
    margin-top: 20px;
    font-size: 1.4rem;
    line-height: 1;
  }
  .dl-modal .about-ttls {
    width: 100%;
    text-align: center;
  }
  .dl-modal .about-ttls .title {
    text-align: center;
  }
  .dl-modal .dl-icons {
    margin-top: 32px;
  }
  .function-flow {
    padding-top: 104px;
  }
  .function-flow > .title {
    width: 480px;
  }
  .function-flow > .list {
    width: 90.1042%;
    margin-top: 92px;
    max-width: 865px;
  }
  .function-flow .item {
    opacity: 0;
    width: 20.1156%;
  }
  .function-flow .item:nth-child(2n) {
    margin-left: 0;
  }
  .function-flow .item:nth-child(n + 2) {
    margin-left: 0;
  }
  .function-flow .item:nth-child(n + 3) {
    margin-top: 0;
  }
  .function-flow .item:not(:last-child) .image::after {
    width: 15px;
    height: 30px;
  }
  .function-flow .item .text {
    margin-top: 52px;
    font-size: 1.4rem;
    line-height: 1.7857;
  }
  .function-flow .item .text::before {
    font-size: 2rem;
    line-height: 1;
    top: -32px;
  }
  .function-flow .item .image {
    -webkit-filter: drop-shadow(8px 6px 40px rgba(106, 115, 118, 0.3));
    filter: drop-shadow(8px 6px 40px rgba(106, 115, 118, 0.3));
  }
  .function-flow .item .image {
    width: 100%;
  }
  .function-flow .attention {
    padding-top: 30px;
    font-size: 1.3rem;
    line-height: 1.6923;
    width: 79.4643%;
  }
  .function-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: baseline;
    -ms-flex-align: baseline;
    align-items: baseline;
    margin-top: 50px;
  }
  .function-list.-column02 .item {
    width: 44.6429%;
  }
  .function-list.-column02 .item:nth-child(n + 2) {
    margin-left: 10.7143%;
  }
  .function-list .item {
    width: 26.7857%;
  }
  .function-list .item:nth-child(n + 2) {
    margin-top: 0;
    margin-left: 9.8214%;
  }
  .function-list .item .label {
    border-radius: 8px;
    padding: 12px 18px;
    top: -19px;
    right: inherit;
    left: 139px;
  }
  .function-list .item .label .new {
    font-size: 1.3rem;
    line-height: 1;
    padding-right: 12px;
  }
  .function-list .item .label .time {
    font-size: 1.2rem;
    line-height: 1;
  }
  .function-list .item .text .ttl {
    font-size: 1.8rem;
    line-height: 1.5556;
    margin-top: 45px;
    letter-spacing: 0.06em;
  }
  .function-list .item .text > p {
    font-size: 1.5rem;
    line-height: 1.8667;
    margin-top: 18px;
  }
  .time-about {
    padding: 120px 0 103px;
  }
  .time-about > .inner {
    position: relative;
  }
  .time-about .about-title {
    width: 301px;
  }
  .time-about .textarea {
    margin-top: 39px;
  }
  .time-about .textarea p {
    font-size: 2rem;
    line-height: 2.2;
  }
  .time-about .pr {
    font-size: 1.6rem;
    line-height: 1.875;
    margin: 30px 0 0 0;
  }
  .time-about .about-child {
    position: absolute;
    bottom: 22px;
    margin-top: 0;
    margin-left: 0;
    right: calc(50% - 400px);
    bottom: -6px;
  }
  .time-about .about-child .txt {
    font-size: 1.4rem;
    line-height: 1;
    top: -12px;
    right: -21px;
  }
  .time-about .about-child .illust {
    width: 101px;
  }
  .time-closing {
    padding: 79px 0 83px;
  }
  .time-closing > .inner {
    max-width: 960px;
  }
  .time-closing .textarea {
    padding: 26px 0;
    font-size: 1.4rem;
    line-height: 1.7143;
  }
  .time-closing .notes {
    font-size: 1.4rem;
    line-height: 1.7143;
    margin-top: 55px;
  }
  .time-dl > .notes {
    padding-top: 80px;
    font-size: 1.4rem;
    line-height: 1;
    width: 78.9063%;
    max-width: 970px;
  }
  .time-dl .dl-wrap {
    overflow: hidden;
    background-image: url(/serviceinfo/mobile/timeline/image/download-bg.png);
    background-size: cover;
  }
  .time-dl .dl-wrap > .inner {
    margin-right: auto;
    margin-left: auto;
  }
  .time-dl .dl-app {
    -webkit-filter: drop-shadow(8px 6px 40px rgba(106, 115, 118, 0.3));
    filter: drop-shadow(8px 6px 40px rgba(106, 115, 118, 0.3));
  }
  .time-dl .dl-app {
    z-index: 0;
    -ms-flex-flow: nowrap;
    flex-flow: nowrap;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    background-image: url(/serviceinfo/mobile/timeline/image/download-contbg.svg);
    background-position: left;
  }
  .time-dl .dl-app .dl .dltitle {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    margin-top: 0;
  }
  .time-dl .dl-app .dl .wrap {
    margin-left: 0;
  }
  .time-dl .dl-app .object.-building {
    right: inherit;
  }
  .time-dl .phone {
    -webkit-filter: drop-shadow(0px 2px 40px rgba(106, 115, 118, 0.3));
    filter: drop-shadow(0px 2px 40px rgba(106, 115, 118, 0.3));
  }
  .time-dl .phone {
    left: inherit;
  }
  .time-function {
    padding-top: 87px;
  }
  .function-section {
    padding-top: 87px;
  }
  .function-section + .function-section {
    padding-top: 150px;
  }
  .function-section:nth-of-type(3) {
    padding-bottom: 102px;
  }
  .function-section.-reverse .body {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }
  .function-section.-reverse .number {
    right: 8.3036%;
    left: inherit;
  }
  .function-section.-reverse .images {
    margin-right: 11.25%;
    margin-left: 0;
  }
  .function-section.-column01 + .function-section.-column01 > .inner {
    padding: 54px 0 54px;
  }
  .function-section.-column01 > .inner {
    padding: 79px 0 78px;
    border-radius: 20px;
  }
  .function-section.-column01 > .inner .phone {
    opacity: 0;
  }
  .function-section.-column01 > .inner.-active .images .phone {
    -webkit-animation: fadeInImages 0.6s forwards;
    animation: fadeInImages 0.6s forwards;
    -webkit-animation-delay: 0.6s;
    animation-delay: 0.6s;
  }
  .function-section.-column01 > .inner.-active .images .phone:nth-child(2) {
    -webkit-animation-delay: 1s;
    animation-delay: 1s;
  }
  .function-section.-column01 .label {
    border-radius: 8px;
    padding: 12px 18px;
    top: -19px;
    left: 244px;
  }
  .function-section.-column01 .label .updated {
    padding-right: 12px;
  }
  .function-section.-column03 {
    padding-top: 122px;
    padding-bottom: 67px;
  }
  .function-section.-column03 > .inner {
    width: 87.5%;
  }
  .function-section.-column03 .number {
    top: -43px;
    left: 16px;
  }
  .function-section.-column03 .number .num {
    font-size: 7.4rem;
    line-height: 1;
  }
  .function-section.-column03 .text > p {
    margin-right: 0;
    margin-left: 0;
  }
  .function-section .body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    width: 85.7143%;
  }
  .function-section .number {
    top: -54px;
    left: 6.5179%;
  }
  .function-section .number .num {
    font-size: 13rem;
    line-height: 1;
    margin-top: 0;
  }
  .function-section .desc {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-flow: column;
    flex-flow: column;
    width: 35.2083%;
    padding-top: 91px;
    text-align: left;
  }
  .function-section .desc .function-title .spot {
    top: -9px;
    left: -45px;
    width: 39px;
  }
  .function-section .desc .textarea {
    font-size: 1.7rem;
    line-height: 1.8824;
    width: 100%;
    margin: 41px 0 0;
  }
  .function-section .images {
    width: 53.3333%;
    margin-left: 11.25%;
    margin-top: 0;
  }
  .function-section .images .phone {
    -webkit-filter: drop-shadow(8px 6px 40px rgba(106, 115, 118, 0.3));
    filter: drop-shadow(8px 6px 40px rgba(106, 115, 118, 0.3));
  }
  .function-section .images .phone {
    width: 45.1172%;
  }
  .time-mv {
    height: 55.4688vw;
    padding-top: 11.7188vw;
    margin-bottom: 0;
    background-image: url(/serviceinfo/mobile/timeline/image/mv-bg.png);
  }
  .time-mv .mv-cont {
    position: relative;
    width: 81.875vw;
  }
  .time-mv .mv-cont .body {
    -webkit-filter: drop-shadow(0px 1px 20px rgba(106, 115, 118, 0.3));
    filter: drop-shadow(0px 1px 20px rgba(106, 115, 118, 0.3));
    width: 63.3594vw;
    height: 37.5vw;
    margin-left: 0.3125vw;
    text-align: left;
    background-image: url(/serviceinfo/mobile/timeline/image/mv-contbg.png);
  }
  .time-mv .mv-cont .body .label {
    padding: 1.25vw 5.1563vw 1.0938vw 2.4219vw;
    margin-top: 2.6563vw;
    margin-left: 9.5313vw;
    font-size: 1.25vw;
  }
  .time-mv .mv-cont .body .label > span {
    right: 1.875vw;
    width: 2.1094vw;
    height: 2.0313vw;
  }
  .time-mv .mv-cont .mv-title {
    padding-top: 5.3125vw;
  }
  .time-mv .mv-cont .mv-title .copy {
    width: 23.5156vw;
    margin-right: 0;
    margin-left: 21.1719vw;
  }
  .time-mv .mv-cont .mv-title .copy::before {
    width: 3.0469vw;
    height: 2.8906vw;
    left: -4.2188vw;
    top: 0.5469vw;
  }
  .time-mv .mv-cont .mv-title .title {
    width: 40.1563vw;
    padding-top: 3.2813vw;
    margin-left: 10.7031vw;
  }
  .time-mv .mv-cont .mv-title .spot {
    right: 4.4531vw;
    bottom: 4.0625vw;
    width: 3.2031vw;
  }
  .time-mv .mv-cont .object {
    bottom: -6.25vw;
  }
  .time-mv .mv-cont .object.-tower {
    right: inherit;
    left: -1.9531vw;
    width: 6.6406vw;
  }
  .time-mv .mv-cont .object.-building {
    left: 9.2969vw;
    width: 9.0625vw;
  }
  .time-mv .mv-cont .mv-app {
    position: inherit;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 3.2031vw;
    margin-left: 11.0938vw;
    bottom: 0;
  }
  .time-mv .mv-cont .mv-app .app {
    width: 9.8438vw;
    margin-left: 0;
  }
  .time-mv .mv-cont .mv-app .app::before {
    top: 0.9375vw;
    right: -18.9844vw;
    font-size: 1.25vw;
  }
  .time-mv .mv-cont .mv-app .dl {
    padding-top: 4.5313vw;
    margin-left: 2.4219vw;
  }
  .time-mv .mv-cont .mv-app .dl .ios {
    width: 11.6406vw;
  }
  .time-mv .mv-cont .mv-app .dl .andloid {
    width: 13.125vw;
    margin-left: 2.4219vw;
  }
  .time-mv .mv-cont .phone {
    -webkit-filter: drop-shadow(0px 2px 40px rgba(106, 115, 118, 0.3));
    filter: drop-shadow(0px 2px 40px rgba(106, 115, 118, 0.3));
  }
  .time-mv .mv-cont .phone {
    top: -3.0469vw;
    right: 0;
    left: inherit;
    width: 25.9375vw;
  }
}

@media screen and (max-width: 767px) {
  ._tablet {
    display: none !important;
  }
  ._pc {
    display: none !important;
  }
  ._sp-hide {
    display: none !important;
  }
  ._fzxs-sp,
  ._fzxxs-sp {
    font-size: 0.625rem !important;
    line-height: 1.8 !important;
  }
  ._fzs-sp {
    font-size: 0.875rem !important;
    line-height: 1.5714 !important;
  }
  ._fzm-sp {
    font-size: 1rem !important;
    line-height: 1.5 !important;
  }
}

@media print, screen and (min-width: 1024px) {
  ._tablet {
    display: none !important;
  }
  ._pc-hide {
    display: none !important;
  }
  .common-footer .footer-lower {
    -ms-flex-wrap: inherit;
    flex-wrap: inherit;
    width: 95.3125%;
    max-width: 1220px;
    height: 70px;
    padding: 24px 0;
  }
  .common-footer .footer-lower .logo {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
    margin: 0;
  }
  .common-footer .footer-lower .logo > a {
    width: 200px;
  }
  .common-footer .footer-lower .lower-nav {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    width: auto;
  }
  .common-footer .footer-lower .lower-nav .list {
    -webkit-box-pack: inherit;
    -ms-flex-pack: inherit;
    justify-content: inherit;
  }
  .common-footer .footer-lower .lower-nav .item + .item {
    margin-left: 24px;
  }
  .common-footer .footer-lower .copyright {
    width: auto;
    margin-top: -7px;
    margin-left: 5.1639%;
    line-height: inherit;
  }
  .common-footer .footer-lower .copyright > small {
    font-size: 1.2rem;
    line-height: 1;
  }
  .nav-global.active {
    top: 0;
  }
  .nav-global .sitename {
    top: 60px;
    left: 10.9375%;
    width: 19.375%;
    margin: 0;
  }
  .nav-global .sitename {
    top: 50%;
    left: 50%;
    width: 248px;
    height: 108px;
    margin-top: -524px;
    margin-left: -500px;
  }
  .nav-global .links {
    top: 22.6563vh;
    right: 19.5313vw;
  }
  .nav-global .links > li:not(:last-of-type) {
    margin: 0 0 60px 0;
  }
  .nav-global .links > li::before {
    width: 14px;
    height: 4px;
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
  }
  .nav-global .links > li:hover::before {
    left: -5px;
    background-color: #0b308e;
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
  }
  .nav-global .links a {
    padding: 0 0 0 34px;
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
    font-size: 3.2rem;
    line-height: 1;
  }
  .nav-global .links a:hover {
    color: #0b308e;
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
  }
  .nav-global .links a:hover::before {
    background-color: #0b308e;
  }
  .nav-global .links a.logo {
    height: 32px;
  }
  .nav-global .links a.logo:hover::before {
    background-color: #00a7ea;
    opacity: 0;
  }
  .nav-global .links a.logo::before {
    width: 135px;
    height: 32px;
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
  }
  .nav-global .links a.logo::after {
    width: 135px;
    height: 32px;
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
  }
  .nav-toggle {
    top: 0;
    right: 0;
    width: 64px;
    height: 64px;
  }
  .nav-toggle .line {
    border-bottom: solid 2px #fff;
  }
  .nav-toggle .line:nth-child(1) {
    top: 32px;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
  .nav-toggle .line:nth-child(2) {
    display: none;
  }
  .nav-toggle .line:nth-child(3) {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .about-app .about-download {
    margin-top: 45px;
  }
  .about-app .about-download .app + .app {
    margin-top: 0;
    margin-left: 29px;
  }
}

@media screen and (max-width: 1023px) {
  ._wide {
    display: none !important;
  }
  ._wide-hide {
    display: none !important;
  }
  .nav-toggle.active span:nth-child(1) {
    top: 22px;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
  .nav-toggle.active span:nth-child(2) {
    top: 22px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .nav-toggle.active span:nth-child(3) {
    top: 22px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
}

@media screen and (min-width: 768px) and (max-width: 1023px) {
  ._tablet-hide {
    display: none !important;
  }
  .about-app .about-download {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-flow: column;
    flex-flow: column;
  }
  .about-app .about-download .app + .app {
    margin-top: 20px;
    margin-left: 0;
  }
}

@media all and (-ms-high-contrast: none) {
  .header-sp .header-applink .item > .phone {
    border-radius: 48px;
    -webkit-box-shadow: 4px 3px 20px 1px rgba(106, 115, 118, 0.3);
    box-shadow: 4px 3px 20px 1px rgba(106, 115, 118, 0.3);
  }
  .scroll-top > a {
    border-radius: 50%;
    -webkit-box-shadow: 0px 0px 8px 1px rgba(106, 115, 118, 0.1);
    box-shadow: 0px 0px 8px 1px rgba(106, 115, 118, 0.1);
  }
  .about-app .about-wrap > .inner > .icons > .icon.phone {
    border-radius: 48px;
    -webkit-box-shadow: 0px 0px 20px 1px rgba(106, 115, 118, 0.3);
    box-shadow: 0px 0px 20px 1px rgba(106, 115, 118, 0.3);
  }
  .function-flow .item .image {
    border-radius: 20px 20px 0 0;
    -webkit-box-shadow: 4px 3px 20px 1px rgba(106, 115, 118, 0.3);
    box-shadow: 4px 3px 20px 1px rgba(106, 115, 118, 0.3);
  }
  .time-dl .dl-app {
    border-radius: 20px;
    -webkit-box-shadow: 4px 3px 20px 1px rgba(106, 115, 118, 0.3);
    box-shadow: 4px 3px 20px 1px rgba(106, 115, 118, 0.3);
  }
  .time-dl .phone {
    border-radius: 48px;
    -webkit-box-shadow: 0px 0px 20px 1px rgba(106, 115, 118, 0.3);
    box-shadow: 0px 0px 20px 1px rgba(106, 115, 118, 0.3);
  }
  .function-section .images .phone {
    border-radius: 48px;
    -webkit-box-shadow: 4px 3px 20px 1px rgba(106, 115, 118, 0.3);
    box-shadow: 4px 3px 20px 1px rgba(106, 115, 118, 0.3);
  }
  .time-mv .mv-cont .phone {
    border-radius: 48px;
    -webkit-box-shadow: 0px 0px 20px 1px rgba(106, 115, 118, 0.3);
    box-shadow: 0px 0px 20px 1px rgba(106, 115, 118, 0.3);
  }
}

@media print, screen and (min-width: 768px) and (max-width: 1279px) {
  .scroll-top {
    right: 30px;
  }
  .time-dl .dl-wrap {
    padding: 7.0313vw 0;
  }
  .time-dl .dl-wrap > .inner {
    width: 69.8438vw;
  }
  .time-dl .dl-app {
    width: 67.8125vw;
    height: 21.1719vw;
    margin-right: auto;
    margin-left: auto;
  }
  .time-dl .dl-app .app {
    width: 9.0625vw;
    margin-top: 2.2656vw;
    margin-left: 7.4219vw;
  }
  .time-dl .dl-app .dl {
    margin-left: 2.4219vw;
  }
  .time-dl .dl-app .dl .dltitle {
    margin-left: 6.25vw;
    font-size: 1.4063vw;
  }
  .time-dl .dl-app .dl .wrap {
    margin-top: 3.75vw;
  }
  .time-dl .dl-app .dl .ios {
    width: 11.6406vw;
  }
  .time-dl .dl-app .dl .andloid {
    width: 13.125vw;
    margin-left: 2.4219vw;
  }
  .time-dl .dl-app .object {
    bottom: -7.0313vw;
  }
  .time-dl .dl-app .object.-tower {
    left: -6.1719vw;
    width: 5.8594vw;
  }
  .time-dl .dl-app .object.-building {
    left: 3.75vw;
    width: 9.8438vw;
  }
  .time-dl .phone {
    top: -4.2188vw;
    width: 21.25vw;
  }
  .function-section .desc .function-title .title.-function01 {
    width: 18.4375vw;
  }
  .function-section .desc .function-title .title.-function02 {
    width: 25.3906vw;
  }
  .function-section .desc .function-title .title.-function03 {
    width: 21.5625vw;
  }
}

@media screen and (min-width: 1280px) {
  .scroll-top {
    right: calc(50% - 610px);
  }
  .time-dl .dl-wrap {
    padding: 90px 0;
  }
  .time-dl .dl-wrap > .inner {
    width: 894px;
  }
  .time-dl .dl-app {
    width: 100%;
    height: 271px;
  }
  .time-dl .dl-app .app {
    width: 116px;
    margin-top: 29px;
    margin-left: 95px;
  }
  .time-dl .dl-app .dl {
    margin-left: 31px;
  }
  .time-dl .dl-app .dl .dltitle {
    margin-left: 80px;
    font-size: 1.8rem;
    line-height: 1;
  }
  .time-dl .dl-app .dl .wrap {
    margin-top: 48px;
  }
  .time-dl .dl-app .dl .ios {
    width: 149px;
  }
  .time-dl .dl-app .dl .andloid {
    width: 168px;
    margin-left: 31px;
  }
  .time-dl .dl-app .object {
    bottom: -90px;
  }
  .time-dl .dl-app .object.-tower {
    left: -79px;
    width: 75px;
  }
  .time-dl .dl-app .object.-building {
    left: 48px;
    width: 126px;
  }
  .time-dl .phone {
    top: -54px;
    width: 272px;
  }
  .function-section .desc .function-title .title.-function01 {
    width: 236px;
  }
  .function-section .desc .function-title .title.-function02 {
    width: 325px;
  }
  .function-section .desc .function-title .title.-function03 {
    width: 276px;
  }
}

@media print, screen and (min-width: 768px) and (min-width: 768px) {
  .time-mv .mv-cont .body {
    -webkit-filter: drop-shadow(0px 2px 40px rgba(106, 115, 118, 0.3));
    filter: drop-shadow(0px 2px 40px rgba(106, 115, 118, 0.3));
  }
}
