@import"https://fonts.googleapis.com/css?family=Oswald&display=swap";
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, main, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline
}

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section {
  display: block
}

body {
  line-height: 1
}

ol, ul {
  list-style: none
}

blockquote, q {
  quotes: none
}

blockquote:before, blockquote:after, q:before, q:after {
  content: '';
  content: none
}

table {
  border-collapse: collapse;
  border-spacing: 0
}

.sp {
	display: none !important;
}

.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0
}

.slick-list:focus {
  outline: none
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand
}

.slick-slider .slick-track, .slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0)
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto
}

.slick-track:before, .slick-track:after {
  content: "";
  display: table
}

.slick-track:after {
  clear: both
}

.slick-loading .slick-track {
  visibility: hidden
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none
}

[dir=rtl] .slick-slide {
  float: right
}

.slick-slide img {
  display: block
}

.slick-slide.slick-loading img {
  display: none
}

.slick-slide.dragging img {
  pointer-events: none
}

.slick-initialized .slick-slide {
  display: block
}

.slick-loading .slick-slide {
  visibility: hidden
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent
}

.slick-arrow.slick-hidden {
  display: none
}

.slick-loading .slick-list {
  background: #fff url(ajax-loader.gif) center center no-repeat
}

@font-face {
  font-family: slick;
  src: url(fonts/slick.eot);
  src: url(fonts/slick.eot?#iefix) format("embedded-opentype"), url(fonts/slick.woff) format("woff"), url(fonts/slick.ttf) format("truetype"), url(fonts/slick.svg#slick) format("svg")
}

.slick-prev, .slick-next {
  position: absolute;
  display: block;
  height: 20px;
  width: 20px;
  line-height: 0;
  font-size: 0;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none
}

.slick-prev:hover, .slick-prev:focus, .slick-next:hover, .slick-next:focus {
  outline: none;
  background: transparent;
  color: transparent
}

.slick-prev:hover:before, .slick-prev:focus:before, .slick-next:hover:before, .slick-next:focus:before {
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"
}

.slick-prev.slick-disabled:before, .slick-next.slick-disabled:before {
  opacity: .25;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=25)"
}

.slick-prev:before, .slick-next:before {
  font-family: slick;
  font-size: 20px;
  line-height: 1;
  color: #fff;
  opacity: .75;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=75)";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale
}

.slick-prev {
  left: -25px
}

[dir=rtl] .slick-prev {
  left: auto;
  right: -25px
}

.slick-prev:before {
  content: "←"
}

[dir=rtl] .slick-prev:before {
  content: "→"
}

.slick-next {
  right: -25px
}

[dir=rtl] .slick-next {
  left: -25px;
  right: auto
}

.slick-next:before {
  content: "→"
}

[dir=rtl] .slick-next:before {
  content: "←"
}

.slick-dotted.slick-slider {
  margin-bottom: 30px
}

.slick-dots {
  position: absolute;
  bottom: -25px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%
}

.slick-dots li {
  position: relative;
  display: inline-block;
  height: 20px;
  width: 20px;
  margin: 0 5px;
  padding: 0;
  cursor: pointer
}

.slick-dots li button {
  border: 0;
  background: transparent;
  display: block;
  height: 20px;
  width: 20px;
  outline: none;
  line-height: 0;
  font-size: 0;
  color: transparent;
  padding: 5px;
  cursor: pointer
}

.slick-dots li button:hover, .slick-dots li button:focus {
  outline: none
}

.slick-dots li button:hover:before, .slick-dots li button:focus:before {
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"
}

.slick-dots li button:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "•";
  width: 20px;
  height: 20px;
  font-family: slick;
  font-size: 6px;
  line-height: 20px;
  text-align: center;
  color: #000;
  opacity: .25;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=25)";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale
}

.slick-dots li.slick-active button:before {
  color: #000;
  opacity: .75;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=75)"
}

body {
  colo: #000;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", Hiragino Kaku Gothic Pro, "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", MS PGothic, sans-serif;
  font-size: 16px;
  line-height: 1.65;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  font-weight: 500
}

a {
  text-decoration: underline;
  outline: none;
  color: #0089fc
}

p {
  margin-bottom: 1.85
}

main {
  display: block
}

strong {
  font-weight: 700
}

img {
  max-width: 100%;
  height: auto
}

div, article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  box-sizing: border-box
}

.l-container {
  max-width: 1040px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 20px;
  padding-right: 20px
}

.c-panel {
  padding: 40px;
  background-color: #FFF
}

.c-panel__hero {
  background-color: #fff;
  border-radius: 10px;
  overflow: hidden;
  max-width: 440px;
  position: relative;
  z-index: 30
}

.c-panel__hero__header {
  background-image: url(../img/gradient1.jpg);
  color: #FFF;
  text-align: center;
  padding-top: 10px;
  padding-bottom: 10px;
  background-repeat: no-repeat;
  background-size: 100% 100%
}

.c-panel__hero__main {
  padding: 5px 25px
}

.c-panel__hero__footer {
  text-align: center;
  padding-bottom: 20px
}

.c-panel__white {
  background-color: #fff;
  box-shadow: 0 0 5px rgba(0, 0, 0, .15)
}

.c-panel__error {
  color: red;
  background-color: #fff0f0;
  padding: 8px;
  font-size: 14px;
  border: 1px solid red;
  margin-top: 5px
}

.c-title {
  font-weight: 700;
  line-height: 1.5
}

.c-title__bar {
  font-weight: 700;
  font-size: 24px;
  background-image: url(../img/gradient1.jpg);
  color: #FFF;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  display: -webkit-flex;
  display: flex;
  height: 60px;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center
}

input[type=text], input[type=email], input[type=tel], input[type=password], input[type=number], select, textarea {
  border: 1px solid #e1e1e1;
  box-sizing: border-box;
  padding: 0 20px;
  font-family: inherit;
  font-size: 16px;
  background-color: #f8f8f8;
  border-radius: 3px
}

input[type=text]:focus, input[type=email]:focus, input[type=tel]:focus, input[type=password]:focus, input[type=number]:focus, select:focus, textarea:focus {
  background-color: #ebebeb;
  box-shadow: 0 0 3px rgba(115, 185, 255, .8)
}

input[type=text]::-webkit-input-placeholder, input[type=email]::-webkit-input-placeholder, input[type=tel]::-webkit-input-placeholder, input[type=password]::-webkit-input-placeholder, input[type=number]::-webkit-input-placeholder, select::-webkit-input-placeholder, textarea::-webkit-input-placeholder {
  color: #999
}

input[type=text]::-moz-placeholder, input[type=email]::-moz-placeholder, input[type=tel]::-moz-placeholder, input[type=password]::-moz-placeholder, input[type=number]::-moz-placeholder, select::-moz-placeholder, textarea::-moz-placeholder {
  color: #999
}

input[type=text]:-ms-input-placeholder, input[type=email]:-ms-input-placeholder, input[type=tel]:-ms-input-placeholder, input[type=password]:-ms-input-placeholder, input[type=number]:-ms-input-placeholder, select:-ms-input-placeholder, textarea:-ms-input-placeholder {
  color: #999
}

input[type=text]::placeholder, input[type=email]::placeholder, input[type=tel]::placeholder, input[type=password]::placeholder, input[type=number]::placeholder, select::placeholder, textarea::placeholder {
  color: #999
}

input[type=text]:-ms-input-placeholder, input[type=email]:-ms-input-placeholder, input[type=tel]:-ms-input-placeholder, input[type=password]:-ms-input-placeholder, input[type=number]:-ms-input-placeholder, select:-ms-input-placeholder, textarea:-ms-input-placeholder {
  color: #ddd
}

input[type=text]::-ms-input-placeholder, input[type=email]::-ms-input-placeholder, input[type=tel]::-ms-input-placeholder, input[type=password]::-ms-input-placeholder, input[type=number]::-ms-input-placeholder, select::-ms-input-placeholder, textarea::-ms-input-placeholder {
  color: #ddd
}

input[type=text], input[type=email], input[type=tel], input[type=password], input[type=number], select {
  height: 50px
}

textarea {
  height: 12em
}

.input-full {
  width: 100%
}

.label-radio {
  height: 50px;
  display: -webkit-inline-flex;
  display: inline-flex;
  -webkit-align-items: center;
  align-items: center;
  padding-left: 50px;
  padding-right: 20px;
  font-size: 17px;
  position: relative;
  cursor: pointer
}

.label-radio input {
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  position: absolute
}

.label-radio:before, .label-radio:after {
  transition: all .2s linear;
  position: absolute;
  left: 10px;
  top: 50%;
  content: ""
}

.label-radio:before {
  height: 24px;
  width: 24px;
  margin-top: -12px;
  border: 1px solid #BBB;
  border-radius: 50px
}

.label-radio:after {
  border-radius: 50px;
  box-sizing: border-box;
  height: 14px;
  width: 14px;
  background-color: #999;
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  margin-top: -6px;
  margin-left: 6px
}

.label-radio.is-active:after {
  box-sizing: border-box;
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"
}

.c-button {
  display: -webkit-inline-flex;
  display: inline-flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  text-align: center;
  box-sizing: border-box;
  font-family: inherit;
  text-decoration: none;
  background-color: #fff;
  border: none;
  padding: 0;
  margin: 0;
  outline: none;
  cursor: pointer;
  border-radius: 8px;
  color: #FFF
}

.c-button:hover {
  opacity: .9;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=90)"
}

.c-button__primary {
  background-color: transparent;
  border: none;
  padding: 0;
  margin: 0;
  width: 380px;
  height: 60px;
  font-weight: 700;
  font-size: 18px;
  box-shadow: 0 0 3px rgba(0, 0, 0, .15);
  border-bottom: 2px solid rgba(0, 0, 0, .25);
  border-top: 2px solid rgba(255, 255, 255, .6)
}

.c-button__color1 {
  background: linear-gradient(to bottom, #a6d13b 0, #7bb218 100%)
}

.c-button__color2 {
  background: linear-gradient(to bottom, #393da1 0, #161774 100%)
}

.c-button__color3 {
  background: linear-gradient(to bottom, #ffb001 0, #fe8400 100%);
  border-bottom: 1px solid #fe4902
}

.c-button__color4 {
  background: linear-gradient(to bottom, #00c901 0, #02a901 100%)
}

.c-button__info {
  height: 60px;
  width: 300px;
  background-color: #FFF;
  border-radius: 30px;
  border-bottom: 1px solid #1d2087
}

.c-buttonwrap {
  display: -webkit-inline-flex;
  display: inline-flex;
  padding: 4px;
  border-radius: 8px;
  border: 1px solid #EEE;
  background-color: rgba(0, 0, 0, .1);
  box-shadow: 0 0 2px rgba(0, 0, 0, .1) inset;
  box-sizing: border-box
}

.hide-all {
  display: none
}

.c-pill {
  background-color: #ccc;
  font-size: 12px;
  display: inline-block;
  border-radius: 5px;
  padding-left: 6px;
  padding-right: 6px;
  line-height: 1.5
}

.c-pill__required {
  background-color: #f1383c;
  color: #FFF
}

.c-pill__optional {
  background-color: #1d2087;
  color: #FFF
}

.c-postlist {
  margin-left: -10px;
  margin-right: -10px;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap
}

.c-postlist>* {
  box-sizing: border-box;
  width: 50%;
  padding-left: 10px;
  padding-right: 10px
}

.c-postlist__panel {
  color: #222;
  text-decoration: none;
  display: block;
  margin-bottom: 10px
}

.c-postlist__meta {
  margin-bottom: 5px
}

.c-postlist__label {
  font-size: 14px;
  display: inline-block;
  background-color: #CCC;
  color: #FFF;
  padding: 1px 8px
}

.c-postlist__date {
  display: block;
  font-size: 11px;
  margin-top: 3px
}

.c-postlist .cat-appli {
  background-color: #da483b
}

.c-postlist .cat-kessai, .c-postlist .cat-payment {
  background-color: #4486f4
}

.c-postlist .cat-phone, .c-postlist .cat-businessphone, .c-postlist .cat-business-phone {
  background-color: #1ca45c
}

.c-postlist .cat-hukugouki, .c-postlist .cat-mfp {
  background-color: #ff9e0f
}

.c-postlist .cat-translation {
  background-color: #d685b0
}

.c-postlist .cat-digitalsignag, .c-postlist .cat-digitalsignage {
  background-color: #cb6c58
}

.c-postlist .cat-posting {
  background-color: #a0c238
}

.c-postlist .cat-surveillancecamera, .c-postlist .cat-surveillancec {
  background-color: #d78114
}

.c-postlist .cat-cleaning {
  background-color: #008b9c
}

.c-postlist .cat-privacymark {
  background-color: #174e9e
}

.u-color__primary {
  color: #1d2087
}

header#header {
  padding-top: 6px;
  padding-bottom: 6px;
  background-color: #00cba1;
  color: #FFF
}

header#header .info {
  margin-left: auto
}

header#header .logo-title {
  position: absolute
}

header#header .logo-title img {
  display: block
}

header#header .button {
  width: 178px;
  height: 40px;
  white-space: nowrap
}

header#header .subtitle {
  line-height: 1.4;
  padding-left: 1em;
  text-align: center
}

header#header .subtitle__text {
  display: block;
  text-align: center;
  margin-left: auto;
  margin-right: auto
}

header#header .infolist {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center
}

header#header .infolist li {
  margin-left: 15px
}

header#header .infolist img {
  display: block
}

header#header .col-tel img {
  max-width: none
}

header#header .touch {
  text-align: center
}

header#header .dial {
  font-family: Oswald, sans-serif;
  font-size: 40px;
  color: #339;
  font-weight: 700;
  text-align: center;
  display: block;
  margin-left: auto;
  margin-right: auto;
  line-height: 1.4;
  margin-top: -.25em
}

header#header .dial:before {
  background: url(../img/icon_freedial.png) left top no-repeat;
  content: "";
  display: inline-block;
  background-size: contain;
  width: 34.28571px;
  height: 22.85714px;
  vertical-align: 2px;
  margin-right: 10px
}

header#header .dial a {
  color: inherit;
  text-decoration: none
}

header#header .touch__info {
  background-color: #f2f2f2;
  height: 30px;
  width: 17.5em;
  border-radius: 60px;
  margin-left: auto;
  margin-right: auto;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  text-align: center;
  font-weight: 700;
  color: #339;
  font-size: 15px
}

#footer {
  text-align: center;
  color: #FFF;
  font-size: 14px;
  padding-top: 10px;
  padding-bottom: 10px;
  background-color: #25d4ad
}

.wrapper {
  -ms-overflow-x: hidden;
  overflow-x: hidden
}

.bg-white, .bg-primary, .bg-secondary, .bg-third, .bg-minor, .bg-work, .bg-fourth, .bg-points, .bg-voice {
  background-repeat: no-repeat;
  background-size: cover;
  padding-top: 50px;
  padding-bottom: 50px;
  *zoom: 1
}

.bg-white:before, .bg-primary:before, .bg-secondary:before, .bg-third:before, .bg-minor:before, .bg-work:before, .bg-fourth:before, .bg-points:before, .bg-voice:before, .bg-white:after, .bg-primary:after, .bg-secondary:after, .bg-third:after, .bg-minor:after, .bg-work:after, .bg-fourth:after, .bg-points:after, .bg-voice:after {
  content: "";
  display: table
}

.bg-white:after, .bg-primary:after, .bg-secondary:after, .bg-third:after, .bg-minor:after, .bg-work:after, .bg-fourth:after, .bg-points:after, .bg-voice:after {
  clear: both
}

.bg-primary {
  background-image: url(../img/bg1.jpg)
}

.bg-secondary {
  background-image: url(../img/bg2.jpg)
}

.bg-third {
  background-image: url(../img/reason-bg.jpg)
}

.bg-minor {
  background-image: url(../img/bg3.png);
  padding-bottom: 0
}

.bg-work {
  background-image: url(../img/work-main-bg.jpg)
}

.bg-fourth {
  background-image: url(../img/bg4.jpg)
}

.bg-points {
  background-image: url(../img/gradient1.jpg)
}

.work-title {
  color: #FFF;
  font-size: 30px;
  text-align: center
}

.faq-badge__block {
  position: relative
}

.faq-badge__img {
  position: absolute;
  top: -80px;
  left: 50%;
  margin-left: -12em
}

#hero .hero-flex {
  display: -webkit-flex;
  display: flex;
  position: relative
}

#hero .hero-intro {
  color: #FFF
}

#hero .hero-main {
  font-size: 15px
}

#hero .hero-obj {
  position: absolute;
  top: -40px;
  right: -360px
}

#hero .title {
  font-size: 37px;
  text-align: center;
  margin-bottom: 15px
}

#hero .form-dl {
  margin-top: 10px;
  margin-bottom: 10px;
  width: 100%
}

#hero .form-dl dt {
  width: 8em;
  font-weight: 700
}

#hero .small {
  font-size: 12px;
  font-weight: 700
}

#hero .touch {
  text-align: center
}

#hero .dial {
  font-family: Oswald, sans-serif;
  font-size: 50px;
  color: #049781;
  font-weight: 700;
  letter-spacing: -.01em;
  white-space: nowrap
}

#hero .dial:before {
  background: url(../img/icon_freedial.png) left top no-repeat;
  content: "";
  display: inline-block;
  background-size: contain;
  width: 48px;
  height: 32px;
  vertical-align: 2px;
  margin-right: 10px
}

#hero .dial a {
  color: inherit;
  text-decoration: none
}

#hero .info {
  background-color: #f2f2f2;
  height: 35px;
  width: 20.8em;
  border-radius: 60px;
  margin-left: auto;
  margin-right: auto;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  font-weight: 700;
  color: #049781;
  margin-bottom: 15px
}

#hero .c-buttonwrap {
  width: 100%;
  margin-bottom: 20px
}

#hero p {
  text-align: center;
  margin-bottom: 5px
}

#intro .header {
  text-align: center;
  margin-bottom: 40px
}

#intro .content {
  font-weight: 700;
  line-height: 2.5
}

#intro .title-first {
  color: #1d2087;
  font-size: 30px
}

#intro .title-second {
  color: #1d2087;
  font-size: 22px;
  line-height: 1.81818;
  margin-bottom: 20px;
  padding-top: 15px
}

#intro .photo-image {
  border-radius: 10px
}

#intro strong {
  display: inline-block;
  position: relative
}

#intro strong:before {
  content: "";
  position: absolute;
  display: block;
  left: 0;
  bottom: 2px;
  height: 5px;
  width: 100%;
  background-color: #25d4ad;
  padding-left: 0;
  padding-right: 0
}

#intro strong .marker {
  position: relative
}

#intro .footer {
  text-align: center;
  margin-top: 40px
}

#intro .footer .lead {
  font-size: 25px;
  font-weight: 700;
  color: #1d2087
}

#reason .header {
  margin-bottom: 40px
}

#reason .content {
  background-image: url(../img/gradient3.jpg);
  color: #FFF;
  background-repeat: no-repeat;
  background-size: cover;
  min-width: 175px;
  position: relative;
  padding: 30px 20px;
  padding-top: 43px
}

#reason .header-title {
  color: #00cba1;
  font-size: 30px;
  text-align: center
}

#reason .header-title__logo {
  display: inline-block;
  position: relative
}

#reason .header-title__text {
  display: inline-block;
  padding-left: 5px;
  color: #049781
}

#reason .num {
  color: #1d2087;
  font-family: Oswald, sans-serif;
  font-size: 60px;
  position: absolute;
  top: -30px;
  left: 10px;
  line-height: 1;
  font-weight: 700
}

#reason .main-title {
  font-size: 20px;
  margin-bottom: 10px
}

#works .header {
  margin-bottom: 30px
}

#works .footer {
  margin-bottom: 20px
}

#works .lead {
  font-weight: 700;
  font-size: 23px;
  text-align: center
}

#works .color-primary {
  color: #1d2087
}

#logos .header {
  margin-bottom: 30px
}

#logos .panel {
  padding-top: 10px;
  padding-bottom: 10px
}

#logos .logo-list {
  text-align: center;
  margin-left: -5px;
  margin-right: -5px;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap
}

#logos .logo-list>* {
  box-sizing: border-box;
  width: 10%;
  padding-left: 5px;
  padding-right: 5px
}

#logos .logo-list li {
  margin-bottom: 10px
}

#logos .logo-list img {
  display: block
}

.area-cta .hero-flex {
  display: -webkit-flex;
  display: flex;
  position: relative
}

.area-cta .hero-intro {
  color: #FFF
}

.area-cta .hero-main {
  font-size: 15px
}

.area-cta .hero-panel__main {
  padding: 10px 25px
}

.area-cta .hero-panel__footer {
  text-align: center;
  padding-bottom: 20px
}

.area-cta .hero-obj {
  position: absolute;
  top: -40px;
  right: -270px
}

.area-cta .title {
  font-size: 33px;
  text-align: center;
  margin-bottom: 15px
}

.area-cta .buttonlist li {
  margin-top: 10px;
  margin-bottom: 10px
}

.area-cta .touch {
  text-align: center
}

.area-cta .dial {
  font-family: Oswald, sans-serif;
  font-size: 54px;
  color: #339;
  font-weight: 700;
  letter-spacing: -.01em;
  color: #049781
}

.area-cta .dial:before {
  background: url(../img/icon_freedial.png) left top no-repeat;
  content: "";
  display: inline-block;
  background-size: contain;
  width: 48px;
  height: 32px;
  vertical-align: 2px;
  margin-right: 10px
}

.area-cta .dial a {
  color: inherit;
  text-decoration: none
}

.area-cta .info {
  background-color: #f2f2f2;
  height: 35px;
  width: 20.8em;
  border-radius: 60px;
  margin-left: auto;
  margin-right: auto;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  font-weight: 700;
  color: #049781;
  margin-bottom: 10px
}

.area-cta .small {
  font-size: 12px
}

#compairintro .bg-compairintro {
  background-image: url(../img/compairintro-bg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  color: #FFF;
  padding-top: 50px;
  padding-bottom: 50px
}

#compairintro .header {
  text-align: center;
  position: relative
}

#compairintro .fig {
  text-align: center;
  padding-top: 25px;
  padding-bottom: 25px
}

#compairintro .footer {
  font-size: 20px;
  text-align: center
}

#compairintro .header-badge {
  position: absolute;
  left: 50%;
  top: -65px;
  margin-left: -415px
}

#compairintro .title-header {
  font-size: 25px
}

#compairmain .container {
  padding-top: 20px;
  padding-bottom: 20px
}

#compairmain .compairmain {
  display: -webkit-flex;
  display: flex
}

#compairmain .compair {
  width: 100%;
  box-sizing: border-box
}

#compairmain .compairother {
  background-color: #f9f9f9;
  position: relative
}

#compairmain .compairemeao {
  background-color: #fff;
  box-shadow: 0 0 5px rgba(0, 0, 0, .1);
  margin-top: -15px
}

#compairmain .comianrcontent {
  padding: 40px
}

#compairmain .compairheader {
  color: #FFF;
  font-weight: 700;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center
}

#compairmain .compairheader__other {
  font-size: 16px;
  height: 65px;
  background-image: url(../img/gradient2.png)
}

#compairmain .compairheader__emeao {
  height: 80px;
  font-size: 25px;
  background-image: url(../img/gradient1.jpg)
}

#compairmain .compairpanel {
  margin-bottom: 20px;
  position: relative
}

#compairmain .compairpanel:last-child {
  margin-bottom: 0
}

#compairmain .title-emeao img {
  position: relative;
  top: 8px;
  margin-right: 3px
}

#compairmain .photo {
  margin-bottom: 10px;
  text-align: center
}

#compairmain .caption {
  text-align: center
}

#compairmain .badge {
  position: absolute;
  top: -20px;
  left: -20px
}

#compairmain .footer {
  margin-top: 80px;
  margin-bottom: 50px
}

#compairmain .lead {
  font-weight: 700;
  text-align: center;
  font-size: 24px
}

#compairmain .color-secondary {
  color: #049781
}

#points .main {
  overflow: hidden
}

#points .wrap {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  overflow: hidden
}

#points .points {
  width: 270px;
  height: 270px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-justify-content: center;
  justify-content: center;
  border-radius: 100%;
  background-color: #fff;
  box-shadow: 0 0 12px rgba(0, 0, 0, .5);
  color: #238576;
  margin-top: 30px;
  margin-bottom: 30px
}

#points .points__header {
  margin-bottom: 20px
}

#points .points__main {
  font-size: 18px;
  text-align: center;
  font-weight: 700;
  position: relative;
  padding-top: 18px
}

#points .points__main:before {
  position: absolute;
  content: "";
  display: inline-block;
  height: 5px;
  width: 90px;
  margin-left: -45px;
  top: 0;
  left: 50%;
  background-color: #FC3
}

#points .footer {
  color: #FFF;
  text-align: center;
  font-weight: 700;
  font-size: 30px;
  text-shadow: 0 0 12px rgba(0, 0, 0, .4)
}

#points .title {
  text-align: center;
  line-height: 1.1;
  font-size: 20px;
  font-family: Oswald, sans-serif;
  font-weight: 700
}

#points .num {
  display: block;
  font-size: 40px
}

#points .points-line {
  margin-top: 5px;
  font-size: 28px;
  line-height: 1.2;
  position: relative;
  display: inline-block
}

#points .points-line:before {
  content: "";
  position: absolute;
  display: block;
  left: -10px;
  bottom: 0;
  height: 10px;
  width: 100%;
  background-color: #fc3;
  padding-left: 10px;
  padding-right: 10px
}

#points .points-line strong {
  position: relative;
  z-index: 10
}

#usages .header {
  text-align: center;
  margin-bottom: -20px
}

#usages .usage-frame {
  padding: 40px 70px;
  padding-top: 50px
}

#usages .title {
  color: #049781;
  font-size: 30px;
  display: inline-block;
  position: relative
}

#usages .title:before {
  content: "";
  display: block;
  height: 3px;
  background-color: #049781;
  position: absolute;
  width: 60px;
  bottom: 15px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  left: -70px
}

#usages .title:after {
  content: "";
  display: block;
  height: 3px;
  background-color: #049781;
  position: absolute;
  width: 60px;
  bottom: 15px;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  right: -70px
}

#usages .list {
  margin-left: -5px;
  margin-right: -5px;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap
}

#usages .list>* {
  box-sizing: border-box;
  width: 25%;
  padding-left: 5px;
  padding-right: 5px
}

#usages .list li {
  margin-bottom: 10px
}

#usages .list li .label {
  background-image: url(../img/gradient1.jpg);
  color: #FFF;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  display: -webkit-flex;
  display: flex;
  height: 48px;
  -webkit-align-items: center;
  align-items: center;
  text-align: center;
  -webkit-justify-content: center;
  justify-content: center
}

.bg-voice {
  padding-bottom: 100px;
  background-image: url(../img/voice-bg.png);
  background-size: auto;
  background-repeat: repeat;
  padding-bottom: 0
}

#voices .slider-voice {
  outline: none
}

#voices .slider-voice .slick-dots {
  margin-bottom: 0
}

#voices .slider-voice .slick-dots li button {
  background-color: #CCC;
  border-radius: 100%;
  width: 8px;
  height: 8px
}

#voices .slider-voice .slick-dots li button:before {
  content: none
}

#voices .slider-voice .slick-dots li.slick-active button {
  background-color: #049781
}

#voices .header {
  text-align: center;
  margin-bottom: 30px
}

#voices .main {
  padding-bottom: 40px
}

#voices .block {
  padding-top: 20px;
  padding-bottom: 20px;
  padding-left: 15px;
  padding-right: 15px;
  max-width: 340px;
  position: relative;
  padding-bottom: 40px
}

#voices .panel {
  background-color: #fff;
  box-shadow: 0 0 5px rgba(0, 0, 0, .15);
  padding: 20px;
  border-radius: 10px;
  position: relative
}

#voices .panel__main {
  min-height: 260px
}

#voices .panel__footer {
  padding-top: 20px;
  margin-top: 10px;
  font-size: 14px;
  position: relative;
  background-color: #93efe1;
  padding-left: 20px;
  padding-right: 20px;
  margin-left: -20px;
  margin-right: -20px
}

#voices .panel__photo {
  float: left;
  width: 60px
}

#voices .panel__meta {
  padding-left: 70px
}

#voices .balloon {
  background-color: #FFF;
  height: 40px;
  width: 40px;
  display: block;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  box-shadow: 0 0 10px rgba(0, 0, 0, .15);
  position: absolute;
  z-index: 0;
  bottom: 20px;
  left: 50%;
  margin-left: -20px
}

#voices .title {
  font-size: 30px;
  color: #049781
}

#voices .img {
  border-radius: 120px;
  width: 60px
}

#flow {
  padding-bottom: 20px
}

#flow .header {
  font-size: 30px;
  color: #1d2087;
  text-align: center;
  margin-bottom: 30px
}

#flow .main {
  display: -webkit-flex;
  display: flex;
  width: 100%;
  -webkit-justify-content: space-around;
  justify-content: space-around;
  text-align: center;
  margin-bottom: 20px
}

#flow .step {
  border-radius: 5px;
  overflow: hidden;
  background-color: #fff;
  box-shadow: 0 0 5px rgba(0, 0, 0, .15)
}

#flow .step__main {
  padding-top: 15px;
  color: #1d2087
}

#flow .step__header {
  height: 60px;
  color: #FFF;
  font-size: 24px;
  font-weight: 700;
  display: -webkit-flex;
  display: flex;
  background-image: url(../img/gradient1.jpg);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  -webkit-align-items: center;
  align-items: center
}

#flow .step__footer {
  padding: 10px;
  color: #FFF;
  display: -webkit-flex;
  display: flex;
  background-image: url(../img/gradient1.jpg);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  text-align: left;
  height: 97px
}

#flow .step__photo {
  margin-top: 10px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: flex-end;
  align-items: flex-end;
  -webkit-justify-content: center;
  justify-content: center
}

#flow .step__photo img {
  display: block
}

#flow .footer {
  font-size: 25px;
  color: #1d2087;
  font-weight: 700;
  text-align: center;
  margin-top: 30px
}

#flow .marker {
  color: red;
  position: relative;
  padding-left: 5px;
  padding-right: 5px;
  display: inline-block
}

#flow .marker:before {
  position: absolute;
  left: 0;
  height: 10px;
  content: "";
  display: block;
  width: 100%;
  background-color: #f7b52c;
  bottom: 5px
}

#flow .title-sm {
  font-size: 14px;
  padding-left: .5em;
  margin-left: .5em;
  position: relative
}

#flow .title-sm:before {
  content: "";
  background: #57599b;
  display: block;
  height: 2px;
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -10px;
  height: 20px;
  width: 2px
}

#flow strong {
  position: relative
}

#flow .strong {
  font-weight: 700
}

#faq .panel {
  margin-bottom: 50px
}

#faq .faq-dl {
  color: #1d2087;
  font-weight: 700;
  border-bottom: 1px solid #1d2087;
  padding-bottom: 15px;
  margin-bottom: 35px
}

#faq .faq-dl dt {
  border-bottom: 1px dotted #1d2087;
  padding-top: 10px;
  padding-bottom: 20px;
  font-size: 24px;
  position: relative;
  padding-left: 80px;
  min-height: 50px;
  color: #2ba996
}

#faq .faq-dl dt:before {
  content: "Q";
  background-color: #2ba996;
  height: 60px;
  width: 60px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  position: absolute;
  color: #FFF;
  font-size: 25px;
  top: 0;
  left: 0;
  font-weight: 700
}

#faq .faq-dl dd {
  padding-top: 35px;
  padding-bottom: 15px;
  font-size: 15px;
  position: relative;
  padding-left: 80px;
  line-height: 2
}

#faq .faq-dl dd:before {
  content: "A";
  height: 60px;
  width: 60px;
  background-color: #f5aa55;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  position: absolute;
  color: #FFF;
  font-size: 25px;
  top: 20px;
  left: 0;
  color: #1d2087;
  font-weight: 700
}

@media only screen and (min-width:768px) and (max-width:960px) {
  .hide-md {
    display: none
  }
  header#header .button {
    width: 300px;
    font-size: 23px;
    height: 65px
  }
  header#header .col-tel img {
    max-width: 260px
  }
}

@media only screen and (min-width:768px) {
  .c-postlist {
    margin-left: -10px;
    margin-right: -10px;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap
  }
  .c-postlist>* {
    box-sizing: border-box;
    width: 25%;
    padding-left: 10px;
    padding-right: 10px
  }
  header#header .container {
    padding-left: 20px;
    padding-right: 20px
  }
  header#header .button {
    width: 400px;
    height: 70px;
    font-size: 29px
  }
  #hero {
    padding-top: 57px;
    padding-bottom: 57px
  }
  #hero .hero-intro {
    width: 60%;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center
  }
  #hero .hero-main .title {
    font-size: 33px
  }
  #hero .hero-form {
    width: 40%
  }
  #hero .form-dl {
    display: table
  }
  #hero .form-dl dt, #hero .form-dl dd {
    display: table-cell;
    vertical-align: middle
  }
  #intro .photo {
    float: left
  }
  #intro .content {
    padding-left: 470px
  }
  #reason .row {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    max-width: 940px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 40px;
    margin-bottom: 40px
  }
  #reason .row:nth-child(odd) .photo {
    -webkit-order: 0;
    order: 0
  }
  #reason .row:nth-child(odd) .content {
    -webkit-order: -1;
    order: -1
  }
  #reason .row:nth-child(even) .photo {
    -webkit-order: 0;
    order: 0
  }
  #reason .row:nth-child(even) .content {
    -webkit-order: 1;
    order: 1
  }
  #reason .photo {
    margin-right: -30px
  }
  #reason .photo img {
    max-width: none
  }
  #reason .header-title__logo {
    top: 5px
  }
  #works .main {
    text-align: center
  }
  #works .footer {
    margin-bottom: 50px
  }
  #logos .panel {
    padding-left: 20px;
    padding-right: 20px
  }
  .area-cta .hero-intro {
    width: 59%;
    text-align: center;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    margin-top: -40px
  }
  .area-cta .hero-form {
    width: 41%
  }
  .area-cta .hero-panel__header {
    background-image: url(../img/gradient1.jpg);
    color: #FFF;
    text-align: center;
    padding-top: 10px;
    padding-bottom: 10px;
    background-repeat: no-repeat;
    background-size: 100% 100%
  }
  .area-cta .buttonlist li {
    padding-left: 25px;
    padding-right: 25px
  }
  .area-cta .buttonlist li .c-buttonwrap {
    width: 100%
  }
  #points .points-line__1 {
    padding-top: .35em;
    margin-bottom: .35em
  }
  #points .points-line__2 {
    padding-top: .35em;
    margin-bottom: .35em
  }
  #flow {
    padding-bottom: 40px
  }
  #flow .step__header {
    -webkit-justify-content: center;
    justify-content: center
  }
  #flow .step2-image {
    margin-bottom: 10px
  }
}

@media print, screen and (min-width:961px) {
  .hide-lg {
    display: none
  }
  header#header .logo-title {
    left: 50%;
    top: 20px;
    margin-left: -520px
  }
  header#header .dial a {
    pointer-events: none
  }
  #hero .dial a {
    pointer-events: none
  }
  #hero .c-title {
    font-size: 20px
  }
  #hero .hero-panel__header .c-title {
    font-size: 17px
  }
  .area-cta .dial a {
    pointer-events: none
  }
  #compairintro {
    margin-top: -1px
  }
  #usages .usage-frame {
    background-repeat: no-repeat;
    background-position: center bottom;
    background-image: url(../img/variety-frame.png);
    height: 318px;
    margin-bottom: 30px
  }
  .bg-voice {
    padding-bottom: 0
  }
  #voices .panel__footer {
    min-height: 120px
  }
  #flow .step {
    max-width: 300px;
    width: 100%
  }
  #flow .step__photo {
    height: 205px
  }
}

@media only screen and (max-width:767px) {
  .c-panel {
    padding: 20px
  }
  .c-panel__hero {
    margin-top: 15px
  }
  .c-panel__hero__header {
    font-size: 14px;
    padding-top: 7px;
    padding-bottom: 7px
  }
  .c-panel__hero__main {
    padding-left: 20px;
    padding-right: 20px
  }
  .c-panel__hero__footer {
    padding-left: 20px;
    padding-right: 20px;
    text-align: left;
    line-height: 1.3
  }
  .c-title__bar {
    height: 40px;
    font-size: 20px
  }
  .label-radio {
    font-size: 13px;
    padding-left: 23px
  }
  .label-radio:before {
    height: 15px;
    width: 15px;
    margin-top: -8.5px;
    left: 0
  }
  .label-radio:after {
    width: 9px;
    height: 9px;
    margin-top: -4.5px;
    left: -2px
  }
  .c-button__primary {
    width: 100%
  }
  .c-buttonwrap {
    width: 100%
  }
  .hide-sm {
    display: none
  }
  header#header .container {
    padding-left: 10px;
    padding-right: 10px
  }
  header#header .logo-title {
    top: 23px
  }
  header#header .logo-title img {
    width: 120px
  }
  header#header .button {
    font-size: 14px
  }
  header#header .subtitle__text {
    font-size: 12px
  }
  header#header .dial {
    font-size: 42.5px
  }
  header#header .dial:before {
    background: url(../img/icon_freedial.png) left top no-repeat;
    content: "";
    display: inline-block;
    background-size: contain;
    width: 39px;
    height: 25.5px
  }
  #footer {
    font-size: 13px
  }
  .bg-white, .bg-primary, .bg-secondary, .bg-third, .bg-minor, .bg-work, .bg-fourth, .bg-points, .bg-voice {
    padding-top: 20px;
    padding-bottom: 20px
  }
  .bg-white__sm {
    background: none!important
  }
  .bg-primary__faq {
    min-height: 110px;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center
  }
  .work-title {
    font-size: 22px
  }
  .faq-badge__img {
    width: 60px;
    margin-left: -8em;
    top: -60px
  }
  #hero {
    padding-top: 44px
  }
  #hero .hero-flex {
    -webkit-flex-direction: column;
    flex-direction: column;
    margin-top: -20px;
    padding-top: 20px
  }
  #hero .hero-intro {
    position: relative
  }
  #hero .hero-catch {
    width: 230px
  }
  #hero .hero-main {
    font-size: 12px
  }
  #hero .hero-obj {
    width: 250px;
    right: -60px;
    top: -20px
  }
  #hero .title {
    font-size: 20px;
    text-align: left;
    margin-bottom: 5px;
    text-shadow: 0 0 3px rgba(0, 0, 0, .5)
  }
  #hero .dial {
    font-size: 42.5px
  }
  #hero .dial:before {
    background: url(../img/icon_freedial.png) left top no-repeat;
    content: "";
    display: inline-block;
    background-size: contain;
    width: 39px;
    height: 25.5px
  }
  #hero .info {
    border-radius: 12px;
    width: 16em
  }
  #intro .content {
    font-size: 14px;
    line-height: 2.4;
    margin-bottom: 20px
  }
  #intro .title-first {
    font-size: 22px
  }
  #intro .title-second {
    font-size: 18px
  }
  #intro .footer .lead {
    font-size: 17px
  }
  #reason .header {
    margin-bottom: 20px
  }
  #reason .row {
    -webkit-flex-direction: column;
    flex-direction: column;
    margin-bottom: 20px
  }
  #reason .photo img {
    display: block;
    width: 100%
  }
  #reason .content {
    padding-top: 30px;
    padding-bottom: 20px
  }
  #reason .header-title {
    font-size: 18px
  }
  #reason .header-title__logo {
    width: 105px;
    top: 5px
  }
  #reason .num {
    font-size: 45px;
    top: -25px
  }
  #works .header {
    margin-bottom: 20px;
    margin-top: 10px
  }
  #works .lead {
    font-size: 16px
  }
  #logos .header {
    margin-bottom: 20px;
    margin-top: 10px
  }
  #logos .panel {
    padding: 5px
  }
  #logos .logo-list {
    margin-left: -5px;
    margin-right: -5px;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap
  }
  #logos .logo-list>* {
    box-sizing: border-box;
    width: 20%;
    padding-left: 5px;
    padding-right: 5px
  }
  #logos .logo-list li {
    margin-bottom: 5px
  }
  .area-cta .hero-flex {
    -webkit-flex-direction: column;
    flex-direction: column;
    margin-top: -20px;
    padding-top: 20px;
    overflow: hidden;
    margin-right: -20px
  }
  .area-cta .hero-intro {
    position: relative;
    padding-right: 20px
  }
  .area-cta .hero-catch {
    width: 300px
  }
  .area-cta .hero-main {
    font-size: 12px
  }
  .area-cta .hero-form {
    padding-right: 20px
  }
  .area-cta .hero-panel {
    margin-top: 15px;
    margin-bottom: 20px
  }
  .area-cta .hero-panel__header {
    text-align: center;
    padding-top: 10px
  }
  .area-cta .hero-panel__main {
    padding-left: 20px;
    padding-right: 20px
  }
  .area-cta .hero-panel__footer {
    padding-left: 20px;
    padding-right: 20px;
    line-height: 1.3
  }
  .area-cta .hero-obj {
    width: 250px;
    right: -130px;
    top: -20px
  }
  .area-cta .title {
    font-size: 22px;
    text-align: left;
    margin-bottom: 5px
  }
  .area-cta .buttonlist li {
    margin-top: 5px;
    margin-bottom: 5px
  }
  .area-cta .dial {
    font-size: 36px
  }
  .area-cta .dial:before {
    background: url(../img/icon_freedial.png) left top no-repeat;
    content: "";
    display: inline-block;
    background-size: contain;
    width: 39px;
    height: 25.5px
  }
  .area-cta .info {
    border-radius: 12px;
    width: 16em
  }
  #compairintro .bg-compairintro {
    padding-top: 70px
  }
  #compairintro .footer {
    font-size: 15px
  }
  #compairintro .header-badge {
    margin-left: 0;
    width: 94px;
    top: -95px;
    left: -20px
  }
  #compairintro .fig {
    width: 150px;
    margin-left: auto;
    margin-right: auto
  }
  #compairintro .title-header {
    font-size: 22px
  }
  #compairmain .compairmain {
    overflow: hidden;
    -webkit-flex-direction: column;
    flex-direction: column
  }
  #compairmain .compairemeao {
    margin-top: 30px
  }
  #compairmain .comianrcontent {
    padding: 20px
  }
  #compairmain .compairheader__other {
    height: 50px
  }
  #compairmain .compairheader__emeao {
    height: 60px;
    font-size: 20px;
    margin-bottom: 10px
  }
  #compairmain .badge {
    width: 80px
  }
  #compairmain .logowhite {
    width: 100px;
    vertical-align: -3px;
    margin-right: 6px
  }
  #compairmain .footer {
    margin-top: 40px;
    margin-bottom: 20px
  }
  #compairmain .lead {
    font-size: 16px
  }
  .bg-points {
    padding-top: 10px
  }
  #points {
    padding-left: 0;
    padding-right: 0
  }
  #points .wrap {
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: center;
    justify-content: center
  }
  #points .points {
    width: 175px;
    height: 175px;
    margin: 5px;
    margin-bottom: 0
  }
  #points .points__header {
    margin-bottom: 5px;
    margin-top: -15px
  }
  #points .points__main:before {
    width: 50px;
    margin-left: -25px
  }
  #points .points__main {
    font-size: 15px;
    padding-top: 10px
  }
  #points .footer {
    font-size: 20px;
    margin-top: 30px;
    margin-bottom: 20px
  }
  #points .title {
    font-size: 14px
  }
  #points .num {
    font-size: 30px
  }
  #points .points-line {
    font-size: 16px
  }
  #points .points-line:before {
    padding-left: 5px;
    padding-right: 5px;
    left: -5px;
    height: 7px
  }
  #usages .title {
    font-size: 18px;
    display: -webkit-inline-flex;
    display: inline-flex;
    background-color: #fff;
    padding-left: 40px;
    padding-right: 40px
  }
  #usages .title:before {
    width: 30px;
    left: 10px
  }
  #usages .title:after {
    width: 30px;
    right: 10px
  }
  #usages .list {
    margin-left: -3px;
    margin-right: -3px;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap
  }
  #usages .list>* {
    box-sizing: border-box;
    width: 50%;
    padding-left: 3px;
    padding-right: 3px
  }
  #usages .list li {
    margin-bottom: 6px
  }
  #usages .list li .label {
    height: 27px;
    font-size: 13px
  }
  #voices .header {
    margin-bottom: 15px
  }
  #voices .main {
    padding-bottom: 10px
  }
  #voices .block {
    padding-left: 10px;
    padding-right: 10px;
    max-width: 280px;
    margin-left: auto;
    margin-right: auto
  }
  #voices .balloon {
    bottom: 20px
  }
  #voices .title {
    font-size: 20px
  }
  #flow .header {
    font-size: 22px;
    margin-top: 10px
  }
  #flow .main {
    -webkit-flex-direction: column;
    flex-direction: column
  }
  #flow .footer {
    font-size: 22px;
    margin-top: 10px;
    margin-bottom: 20px
  }
  #flow .num {
    font-size: 1.4em;
    margin-left: .1em
  }
  #flow .step1-image {
    width: 110px
  }
  #flow .step3-image {
    width: 140px
  }
  #faq .panel {
    margin-bottom: 30px
  }
  #faq .faq-dl dt {
    padding-left: 50px;
    font-size: 18px;
    padding-top: 5px;
    padding-bottom: 5px
  }
  #faq .faq-dl dt:before {
    width: 40px;
    height: 40px;
    font-size: 18px
  }
  #faq .faq-dl dd {
    font-weight: 500;
    padding-left: 50px;
    padding-top: 25px;
    font-size: 14px;
    line-height: 1.65
  }
  #faq .faq-dl dd:before {
    width: 40px;
    height: 40px;
    font-size: 18px
  }
}

@media only screen and (max-width:960px) {
  header#header .col-tel {
    display: none
  }
  #usages .header {
    margin-bottom: -15px
  }
  #usages .usage-frame {
    border-image: url(../img/variety-dot.png) 12 repeat;
    border-image-repeat: repeat;
    border-image-width: 12px;
    border-style: solid;
    border-width: 16px;
    padding: 10px;
    background-color: #fff
  }
  #flow .step {
    margin-bottom: 20px
  }
  #flow .step__main {
    display: -webkit-flex;
    display: flex;
    padding-left: 20px;
    padding-right: 20px;
    -webkit-align-items: center;
    align-items: center;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap
  }
  #flow .step__header {
    text-align: left;
    padding-left: 10px;
    padding-right: 10px;
    font-size: 17px
  }
  #flow .step__content {
    -webkit-order: 2;
    order: 2;
    text-align: left;
    margin-left: 20px;
    font-size: 14px;
    width: calc(100% - (280px/2) - 10px)
  }
  #flow .step__title {
    font-family: Oswald, sans-serif;
    letter-spacing: .15em
  }
  #flow .step__footer {
    display: none
  }
  #flow .step__photo {
    width: 140px;
    margin-left: -10px
  }
}

/* 2019/11/29追加 */
@media only screen and (max-width:767px) {
  .pc {
	display: none;
  }
  .sp {
	display: block !important;
  }
  body {
	padding-bottom: 90px;
  }
}