@charset "UTF-8";

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,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-style: normal;
  vertical-align: baseline;
}

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

table {
  border-collapse: collapse;
  border-spacing: 0;
  word-break: break-word;　
  width: 100%; 
}

fieldset, img {
  border: 0;
}

address, caption, cite, code, dfn, em, strong, th, var {
  font-style: normal;
  font-weight: normal;
}

li {
  list-style: none;
}

caption, th {
  text-align: left;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: normal;
}

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

abbr, acronym {
  border: 0;
  font-variant: normal;
}

sup {
  vertical-align: text-top;
}

sub {
  vertical-align: text-bottom;
}

input, textarea, select {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
}

input, textarea, select {
  *font-size: 100%;
}

legend {
  color: #000;
}


*,
::before,
::after {
  border-style: solid;
  border-width: 0;
}

:root {
  box-sizing: border-box;
}

@media screen {
  [hidden~="screen"] {
    display: inherit;
  }
  [hidden~="screen"]:not(:active):not(:focus):not(:target) {
    clip: rect(0 0 0 0) !important;
    position: absolute !important;
  }
}

img {
  vertical-align: bottom;
}

.clearfix:after,
.cf:after {
  visibility: hidden;
  display: block;
  font-size: 0;
  content: " ";
  clear: both;
  height: 0;
}

* html .clearfix, * html .cf {
  zoom: 1;
}

/* IE6 */
*:first-child + html .clearfix, *:first-child + html .cf {
  zoom: 1;
}

/* IE7 */
/*------------------------------------------------------*/
/* noneImages */
/*------------------------------------------------------*/
.noneImages {
  display: none;
}

.nf-message {
  display: none;
}

* {
  -webkit-appearance: none;
}

/*------------------------------------------------------*/
/*  base */
/*------------------------------------------------------*/
html { height: 100%; font-size: 62.5%; }

body { width: 100%; margin: 0px; padding: 0px; font-family: 'Noto Sans JP', -apple-system, BlinkMacSystemFont, 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', '游ゴシック  Medium', meiryo, sans-serif; color: #000000; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

body a { color: #000; text-decoration: none; }

input, button, textarea, select { -webkit-appearance: none; -moz-appearance: none; appearance: none; }

::-moz-selection { background: #035b90; color: #fff; } /* #035b90 */

::selection { background: #035b90; color: #fff; }

::-moz-selection { background: #035b90; color: #fff; }

.alphaBtn:hover { cursor: pointer; }

.obj { position: absolute; }

.layout { width: 1500px; height: 100%; text-align: center; position: absolute; left: 50%; top: 6542px; margin-left: -750px; }

@media screen and (max-width: 750px) { .layout { width: 100%; left: 0; margin-left: 0; top: 279px; } }

#wrapper { position: relative; overflow: hidden; min-width: 100%; margin: 0 auto; min-height: 100%; padding-top: 174px; font-size: 1.4rem; line-height: 2.5rem; }

@media screen and (max-width: 850px) { #wrapper { padding-top: 90px; } }

@media screen and (max-width: 486px) { #wrapper { padding-top: 90px; } }

.fl { float: left; }

.fr { float: right; }

@media screen and (min-width: 951px) { .cont-min951 { display: inline-block; } }

@media screen and (max-width: 950px) { .cont-min951 { display: none !important; } }

@media screen and (min-width: 951px) { .cont-max950 { display: none !important; } }

@media screen and (max-width: 950px) { .cont-max950 { display: inline-block; } }

@media screen and (min-width: 851px) { .cont-min851 { display: inline-block; } }

@media screen and (max-width: 850px) { .cont-min851 { display: none !important; } }

@media screen and (min-width: 851px) { .cont-max850 { display: none !important; } }

@media screen and (max-width: 850px) { .cont-max850 { display: inline-block; } }

@media screen and (min-width: 751px) { .cont-min751 { display: inline-block; } }

@media screen and (max-width: 750px) { .cont-min751 { display: none !important; } }

@media screen and (min-width: 751px) { .cont-max750 { display: none !important; } }

@media screen and (max-width: 750px) { .cont-max750 { display: inline-block; } }

@media screen and (min-width: 640px) { .cont-min641 { display: inline-block; } }

@media screen and (max-width: 639px) { .cont-min641 { display: none !important; } }

@media screen and (min-width: 640px) { .cont-max640 { display: none !important; } }

@media screen and (max-width: 639px) { .cont-max640 { display: inline-block; } }

@media screen and (min-width: 321px) { .cont-min321 { display: inline-block; } }

@media screen and (max-width: 320px) { .cont-min321 { display: none !important; } }

@media screen and (min-width: 321px) { .cont-max320 { display: none !important; } }

@media screen and (max-width: 320px) { .cont-max320 { display: inline-block; } }

@media screen and (min-width: 487px) { .cont-sp { display: none !important; } }

@media screen and (max-width: 486px) { .cont-sp { display: inline-block; } }

@media screen and (min-width: 487px) { .cont-pc { display: inline-block; } }

@media screen and (max-width: 486px) { .cont-pc { display: none !important; } }

.display-none {
  display: none !important; }

@media screen and (max-width: 320px) {
  .display-none-sss {
    display: none !important; } }
@media screen and (max-width: 480px) {
  .display-none-ss {
    display: none !important; } }
@media screen and (max-width: 768px) {
  .display-none-s {
    display: none !important; } }
@media screen and (min-width: 769px) {
  .display-none-l {
    display: none !important; } }
@media screen and (min-width: 1300px) {
  .display-none-ll {
    display: none !important; } }
@media screen and (min-width: 1000px) {
  .display-none-m {
    display: none !important; } }
@media screen and (max-width: 1000px) {
  .display-none-mm {
    display: none !important; } }

img { cursor: default !important; }

a img { cursor: pointer !important; }

/*------------------------------------------------------*/
/*  common */
/*------------------------------------------------------*/
.block {
  position: relative;
  margin: 0 auto;
}

.breadnav {
  position: relative;
  height: auto;
  min-height: 37px;
  margin-bottom: 12px;
  margin-top: 6px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 8px 0;
}
.breadnav > ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  padding-left: 49px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-flow: wrap-reverse row-reverse;
          flex-flow: wrap-reverse row-reverse;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
@media screen and (max-width: 850px) {
  .breadnav > ul {
    padding: 0 7vw;
  }
}
.breadnav > ul > li {
  overflow: hidden;
  padding-right: 22px;
  position: relative;
  margin-bottom: 8px;
  margin-right: 6px;
}
.breadnav > ul > li > span, .breadnav > ul > li a {
  font-size: 1.4rem;
  line-height: 2rem;
  display: block;
  padding-left: 0;
  font-weight: 500;
  padding-right: 0;
  position: relative;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 750px) {
  .breadnav > ul > li > span, .breadnav > ul > li a {
    font-size: 1.2rem;
  }
}
.breadnav > ul > li > span {
  font-size: 1.4rem;
  padding-left: 0;
}
.breadnav > ul > li > span.fontp {
  font-size: 1.5rem;
}
@media screen and (max-width: 750px) {
  .breadnav > ul > li > span {
    font-size: 1.2rem;
  }
}
@media screen and (max-width: 750px) {
  .breadnav > ul > li.-break span {
    line-height: 19px;
  }
}
.breadnav > ul > li:first-of-type {
  margin-right: 0;
  padding-right: 0;
}
.breadnav > ul > li:first-of-type > span, .breadnav > ul > li:first-of-type a {
  padding-left: 0;
}
.breadnav > ul > li > a {
  background: transparent;
  color: #035b90;
  -webkit-transition: all 0.2s ease-out 0s;
  -o-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}
.breadnav > ul > li > a > p {
  position: relative;
  z-index: 1;
}
.breadnav > ul > li > a > p::after {
  content: "";
  width: 100%;
  height: 1px;
  background: #035b90;
  position: absolute;
  left: 0;
  bottom: 0;
  -webkit-transition: all 0.2s ease-out 0s;
  -o-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}
.breadnav > ul > li > a::before {
  content: "";
  width: 6px;
  height: 6px;
  position: absolute;
  border-radius: 0;
  -moz-border-radius: 0;
  -webkit-border-radius: 0;
  -o-border-radius: 0;
  -ms-border-radius: 0;
  -ms-transform: rotate(45deg) translateY(-50%);
      transform: rotate(45deg) translateY(-50%);
  -webkit-transform: rotate(45deg) translateY(-50%);
  background: #035b90;
  right: -13px;
  top: 50%;
}
.breadnav > ul > li > a::after {
  content: "";
  width: 6px;
  height: 6px;
  position: absolute;
  border-radius: 0;
  -moz-border-radius: 0;
  -webkit-border-radius: 0;
  -o-border-radius: 0;
  -ms-border-radius: 0;
  -ms-transform: rotate(45deg) translateY(-50%);
      transform: rotate(45deg) translateY(-50%);
  -webkit-transform: rotate(45deg) translateY(-50%);
  background: #fff;
  right: -11px;
  top: 50%;
  -webkit-transition: all 0.2s ease-out 0s;
  -o-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}
.breadnav > ul > li > a:hover {
  background: transparent;
}
.breadnav > ul > li > a:hover::after {
  background: #fff;
}
.breadnav > ul > li > a:hover > p::after {
  left: auto;
  right: 0;
  width: 0;
}
@media screen and (max-width: 750px) {
  .breadnav {
    margin-top: -1px;
  }
  .breadnav > ul > li {
    margin-left: 4px;
    margin-right: 0;
  }
  .breadnav > ul > li > a::before {
    right: -10px;
  }
  .breadnav > ul > li > a::after {
    right: -8px;
  }
}

main {
  position: relative;
  display: block;
  margin: 0 auto 140px auto;
}

main.mb0 { 
  margin-bottom: 0;
}

.fontp {
  font-family: 'poppins';
}

.section-title {
  font-size: 1.7rem;
  line-height: 3.7rem;
  font-weight: 700;
  text-align: center;
}

.row-fluid [class*="span"] {
  min-height: 0 !important;
}

/*------------------------------------------------------*/
/*  header */
/*------------------------------------------------------*/
.page-linkpos {
  position: absolute;
  top: -100px;
}

.head {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  z-index: 999;
  background: #fff;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}
@media screen and (max-width: 850px) {
  .head {
    padding-bottom: 20px;
  }
  .head::before {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: calc(100vh + 100px);
    left: 100%;
    top: 0;
    background: #2d2d2d;
    -webkit-transition: all 0.2s ease-out 0s;
    transition: all 0.2s ease-out 0s;
  }
  .head.-open::before {
    left: 0;
  }
  .head.-open .head-left > .tel {
    background: url(https://remotelock.kke.co.jp/hubfs/image/renewal2018/foot/tel.png) no-repeat 0 0 #fff;
    background-size: contain;
    -webkit-background-size: contain;
  }
  .head.-open .head-left > .tel img {
    opacity: 0;
    filter: alpha(opacity=0);
  }
  .head.-open .head-left > .tel .txt {
    color: #2d2d2d;
  }
  .head.-open .head-logo {
    background: url(https://remotelock.kke.co.jp/hubfs/image/renewal2018/foot/logo.png) no-repeat 0 0;
    background-size: contain;
    -webkit-background-size: contain;
  }
}
@media screen and (max-width: 1150px) and (min-width: 851px) {
  .head.-fix .head-main {
    padding-top: 101px;
  }
  .head.-fix .head-main > a {
    position: absolute;
    left: 0;
    top: 40px;
  }
  .head.-fix .head-left {
    left: auto;
    right: 422px;
  }
}
.head-main {
  margin: 0 49px;
  position: relative;
  padding-top: 40px;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
  text-align: center;
}
@media screen and (max-width: 1400px) {
  .head-main {
    margin: 0 auto;
    width: 92%;
  }
}
.head-main > a {
  display: inline-block;
  margin: 0 auto;
}
.head-logo {
  width: 218px;
  height: 0;
  padding-top: 36px;
  overflow: hidden;
  margin: 0 auto 25px auto;
  background: url(https://remotelock.kke.co.jp/hubfs/renewal2018/image/renewal2018/head/logo.png) no-repeat 0 0;
  background-size: contain;
  -webkit-background-size: contain;
}
.head-nav {
  text-align: left;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}
@media screen and (min-width: 1120px) {
  .head-nav {
    height: 34px !important;
  }
}
@media screen and (min-width: 851px) {
  .head-nav.-fix {
    height: 54px !important;
  }
  .head-nav.-fix > ul > .item {
    padding-bottom: 20px !important;
  }
  .head-nav.-fix .head-nav__sub {
    top: 54px;
  }
}
@media screen and (max-width: 850px) {
  .head-nav {
    height: calc(100vh - 90px) !important;
  }
  .head-nav.-open {
    height: calc(100vh - 90px) !important;
    overflow: auto;
  }
}
@media screen and (min-width: 851px) {
  .head-nav:not(.-open) > ul > .item {
    padding-bottom: 18px;
  }
  .head-nav:not(.-open) > ul > .item:hover > a::after {
    bottom: -8px;
    opacity: 1;
    filter: alpha(opacity=100);
  }
  .head-nav:not(.-open) > ul > .item.-hassub:hover .head-nav__sub {
    height: auto;
  }
  .head-nav:not(.-open) > ul > .item.-hassub:hover .head-nav__sub .head-sub__inner {
    -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
            transform: translateY(0);
  }
}
.head-nav > ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  display: -webkit-flex;
}
@media screen and (min-width: 851px) {
  .head-nav > ul {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-justify-content: center;
    -webkit-box-align: top;
        -ms-flex-align: top;
            align-items: top;
    -webkit-align-items: top;
  }
}
.head-nav > ul > .item {
  font-size: 1.3rem;
  line-height: 3.4rem;
  margin: 0 6px;
  font-weight: 500;
  position: relative;
  padding-left: 10px;
  padding-right: 10px;
}
.head-nav > ul > .item > a {
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
  display: inline-block;
  padding: 0 8px;
  position: relative;
}
.head-nav > ul > .item > a::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -5px;
  margin-left: -3px;
  width: 7px;
  height: 7px;
  border-radius: 50% 50%;
  -moz-border-radius: 50% 50%;
  -webkit-border-radius: 50% 50%;
  -o-border-radius: 50% 50%;
  -ms-border-radius: 50% 50%;
  background: #000;
  opacity: 0;
  filter: alpha(opacity=0);
  -webkit-transition: all 0.2s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0s;
  transition: all 0.2s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0s;
}
.head-nav > ul > .item.-current > a {
  color: #035b90;
}
.head-nav > ul > .item.-current > a::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -8px;
  margin-left: -3px;
  width: 7px;
  height: 7px;
  border-radius: 50% 50%;
  -moz-border-radius: 50% 50%;
  -webkit-border-radius: 50% 50%;
  -o-border-radius: 50% 50%;
  -ms-border-radius: 50% 50%;
  background: #035b90;
  opacity: 1;
  filter: alpha(opacity=100);
}
.head-nav__sub {
  position: absolute;
  height: 0;
  top: 52px;
  left: -73px;
  color: #fff;
  width: 356px;
  overflow: hidden;
}
.head-nav__sub a {
  color: #fff;
}
@media screen and (max-width: 1119px) and (min-width: 851px) {
  .head-nav > ul > .item {
    margin: 0 4px;
    padding-left: 6px;
    padding-right: 6px;
  }
}
.head-sub__inner {
  display: block;
  position: relative;
  padding: 42px 50px 0;
  background: #035b90;
  -webkit-transform: translateY(-100%);
      -ms-transform: translateY(-100%);
          transform: translateY(-100%);
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}
.head-sub__item {
  font-size: 13px;
  line-height: 30px;
  margin-bottom: 5px;
  position: relative;
}
.head-sub__item.-hassublist > p {
  padding-right: 29px;
  display: inline-block;
  position: relative;
  cursor: pointer;
}
.head-sub__item.-hassublist > p > span {
  display: block;
  font-size: 0;
  width: 10px;
  height: 10px;
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}
.head-sub__item.-hassublist > p > span::before {
  content: "";
  width: 2px;
  height: 10px;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translateY(-50%) translateX(-50%);
      -ms-transform: translateY(-50%) translateX(-50%);
          transform: translateY(-50%) translateX(-50%);
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
  background: #fff;
}
.head-sub__item.-hassublist > p > span::after {
  content: "";
  width: 10px;
  height: 2px;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translateY(-50%) translateX(-50%);
      -ms-transform: translateY(-50%) translateX(-50%);
          transform: translateY(-50%) translateX(-50%);
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
  background: #fff;
}
@media screen and (min-width: 751px) {
  .head-sub__item.-hassublist > p:hover > span::before {
    -webkit-transform: translateY(-50%) translateX(-50%) rotate(90deg);
        -ms-transform: translateY(-50%) translateX(-50%) rotate(90deg);
            transform: translateY(-50%) translateX(-50%) rotate(90deg);
  }
}
.head-sub__item.-hassublist > p.-open > span::before {
  -webkit-transform: translateY(-50%) translateX(-50%) rotate(90deg);
      -ms-transform: translateY(-50%) translateX(-50%) rotate(90deg);
          transform: translateY(-50%) translateX(-50%) rotate(90deg);
}
.head-sub__item.-hassublist > p.-open:hover > span::before {
  -webkit-transform: translateY(-50%) translateX(-50%) rotate(45deg);
      -ms-transform: translateY(-50%) translateX(-50%) rotate(45deg);
          transform: translateY(-50%) translateX(-50%) rotate(45deg);
}
.head-sub__item.-hassublist > p.-open:hover > span::after {
  -webkit-transform: translateY(-50%) translateX(-50%) rotate(45deg);
      -ms-transform: translateY(-50%) translateX(-50%) rotate(45deg);
          transform: translateY(-50%) translateX(-50%) rotate(45deg);
}
.head-sub__item > a {
  display: inline-block;
  position: relative;
}
.head-sub__item > a::after {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 7px;
  height: 7px;
  border-radius: 50% 50%;
  -moz-border-radius: 50% 50%;
  -webkit-border-radius: 50% 50%;
  -o-border-radius: 50% 50%;
  -ms-border-radius: 50% 50%;
  background: #fff;
  opacity: 0;
  filter: alpha(opacity=0);
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-transition: all 0.2s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0s;
  transition: all 0.2s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0s;
}
@media screen and (min-width: 751px) {
  .head-sub__item > a:hover::after {
    left: -25px;
    opacity: 1;
    filter: alpha(opacity=100);
  }
}
.head-sub__item.-top {
  margin-top: 31px;
  padding: 16px 0 13px;
}
.head-sub__item.-top::before {
  content: "";
  width: calc(100% + 100px);
  height: 1px;
  background: #00456c;
  position: absolute;
  left: -50px;
  top: 0;
}
.head-sub__item.-top > a {
  padding-right: 25px;
}
.head-sub__item.-top > a::after {
  content: "";
  position: absolute;
  left: auto;
  right: 0;
  top: 50%;
  width: 5px;
  height: 9px;
  border-radius: 0;
  -moz-border-radius: 0;
  -webkit-border-radius: 0;
  -o-border-radius: 0;
  -ms-border-radius: 0;
  background: url(https://remotelock.kke.co.jp/hubfs/renewal2018/image/renewal2018/common/arrow_nav.svg) no-repeat 0 0;
  background-size: contain;
  opacity: 1;
  filter: alpha(opacity=100);
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (min-width: 751px) {
  .head-sub__item.-top > a:hover::after {
    left: auto;
    right: -5px;
    opacity: 1;
    filter: alpha(opacity=100);
  }
}
.head-sub__sublist {
  height: 0;
  overflow: hidden;
}
.head-sub__sublist.-open {
  height: auto;
}
.head-sublist {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding: 11px 0;
  width: calc(100% + 20px);
  position: relative;
  left: -10px;
}
.head-sublist > li {
  width: 50%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding-left: 25px;
  padding-right: 5px;
}
.head-sublist > li > a {
  display: inline-block;
  position: relative;
}
.head-sublist > li > a::after {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 7px;
  height: 7px;
  border-radius: 50% 50%;
  -moz-border-radius: 50% 50%;
  -webkit-border-radius: 50% 50%;
  -o-border-radius: 50% 50%;
  -ms-border-radius: 50% 50%;
  background: #fff;
  opacity: 0;
  filter: alpha(opacity=0);
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-transition: all 0.1s ease-out 0s;
  transition: all 0.1s ease-out 0s;
}
@media screen and (min-width: 751px) {
  .head-sublist > li > a:hover::after {
    left: -15px;
    opacity: 1;
    filter: alpha(opacity=100);
  }
}
.head-sublist.-single > li {
  width: 100%;
}
.head-left {
  position: absolute;
  left: 0;
  top: 35px;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
  opacity: 1;
  filter: alpha(opacity=100);
}
@media screen and (max-width: 486px) {
  .head-left {
    top: 15px;
    left: 15px;
  }
}
.head-left > .tel {
  width: 39px;
  height: 39px;
  background: #2d2d2d;
  overflow: hidden;
  border-radius: 20px 20px;
  -moz-border-radius: 20px 20px;
  -webkit-border-radius: 20px 20px;
  -o-border-radius: 20px 20px;
  -ms-border-radius: 20px 20px;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}
@media screen and (min-width: 487px) {
  .head-left > .tel:hover {
    width: 156px;
  }
  .head-left > .tel:hover > .txt {
    display: block;
  }
}
.head-left > .tel > .icon {
  width: 39px;
}
.head-left > .tel > .txt {
  width: 120px;
  position: absolute;
  left: 43px;
  top: 0px;
  font-size: 1.4rem;
  line-height: 3.9rem;
  color: #fff;
  font-family: "poppins";
  letter-spacing: 0.04em;
  display: none;
}
.head-right {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  display: -webkit-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-justify-content: center;
  -webkit-box-align: top;
      -ms-flex-align: top;
          align-items: top;
  -webkit-align-items: top;
  position: absolute;
  right: 0;
  top: 35px;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}
@media screen and (min-width: 851px) {
  .head-right.-sp {
    display: none;
  }
}
@media screen and (max-width: 850px) {
  .head-right {
    position: relative;
    right: 0;
    top: 0;
    margin-top: 40px;
  }
  .head-right.-pc {
    display: none;
  }
}
.head-right > a {
  display: block;
  height: 39px;
  font-size: 1rem;
  line-height: 3.9rem;
  vertical-align: miiddle;
  color: #fff;
  background: #2d2d2d;
  font-weight: 500;
  border-radius: 20px 20px;
  -moz-border-radius: 20px 20px;
  -webkit-border-radius: 20px 20px;
  -o-border-radius: 20px 20px;
  -ms-border-radius: 20px 20px;
  position: relative;
}
.head-right > a > p {
  font-size: 1rem;
  line-height: 3.9rem;
  vertical-align: middle;
  color: #fff;
  position: relative;
}
.head-right > a::before {
  content: "";
  width: 0;
  height: 39px;
  position: absolute;
  left: 50%;
  top: 0;
  background: #035b90;
  border-radius: 20px 20px;
  -moz-border-radius: 20px 20px;
  -webkit-border-radius: 20px 20px;
  -o-border-radius: 20px 20px;
  -ms-border-radius: 20px 20px;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}
@media screen and (min-width: 851px) {
  .head-right > a:hover::before {
    width: 100%;
    left: 0;
  }
}
.head-right > .dl {
  letter-spacing: 0.04rem;
  padding: 0 25px;
}
.head-right > .regist {
  letter-spacing: 0.04rem;
  padding: 0 19px;
  margin-left: 4px;
}
.head-right > .signin {
  width: 39px;
  height: 39px;
  background: #035b90;
  margin-left: 14px;
  overflow: hidden;
  border-radius: 20px 20px;
  -moz-border-radius: 20px 20px;
  -webkit-border-radius: 20px 20px;
  -o-border-radius: 20px 20px;
  -ms-border-radius: 20px 20px;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}
@media screen and (min-width: 487px) {
  .head-right > .signin:hover {
    width: 110px;
  }
  .head-right > .signin:hover > .txt {
    display: block;
  }
}
.head-right > .signin::before {
  display: none;
}
.head-right > .signin > .icon {
  width: 39px;
}
.head-right > .signin > .txt {
  width: 120px;
  position: absolute;
  left: 43px;
  top: 0px;
  font-size: 1rem;
  line-height: 3.7rem;
  color: #fff;
  letter-spacing: 0.04em;
  display: none;
}
.head-right > .tel {
  width: 39px;
  height: 39px;
  background: #2d2d2d;
  overflow: hidden;
  border-radius: 20px 20px;
  -moz-border-radius: 20px 20px;
  -webkit-border-radius: 20px 20px;
  -o-border-radius: 20px 20px;
  -ms-border-radius: 20px 20px;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
  position: relative;
  margin-left: 4px;
  display: none;
}
@media screen and (min-width: 851px) {
  .head-right > .tel:hover {
    width: 160px;
  }
  .head-right > .tel:hover > .txt {
    display: block;
  }
}
.head-right > .tel > .icon {
  width: 39px;
}
.head-right > .tel > .txt {
  width: 120px;
  position: absolute;
  left: 39px;
  top: 0;
  font-size: 1.4rem;
  line-height: 3.9rem;
  color: #fff;
  font-family: "poppins";
  letter-spacing: 0.04em;
  display: none;
}
.head-btn {
  width: 39px;
  height: 39px;
  position: absolute;
  right: 0;
  top: 25px;
  cursor: pointer;
  border-radius: 50% 50%;
  -moz-border-radius: 50% 50%;
  -webkit-border-radius: 50% 50%;
  -o-border-radius: 50% 50%;
  -ms-border-radius: 50% 50%;
  background: #035b90;
}
@media screen and (min-width: 487px) {
  .head-btn {
    display: none;
  }
}
.head-btn > .line {
  position: absolute;
  left: 14px;
  height: 3px;
  background: #fff;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
  border-radius: 2px 2px;
  -moz-border-radius: 2px 2px;
  -webkit-border-radius: 2px 2px;
  -o-border-radius: 2px 2px;
  -ms-border-radius: 2px 2px;
}
.head-btn > .line.-t {
  width: 11px;
  top: 14px;
  -ms-transform: rotate(0deg);
      transform: rotate(0deg);
  -webkit-transform: rotate(0deg);
}
.head-btn > .line.-c {
  width: 11px;
  top: 19px;
  opacity: 1;
  filter: alpha(opacity=100);
}
.head-btn > .line.-b {
  width: 7px;
  top: 24px;
  -ms-transform: rotate(0deg);
      transform: rotate(0deg);
  -webkit-transform: rotate(0deg);
}
.head-btn.-open > .line.-t {
  -ms-transform: rotate(-45deg);
      transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  top: 19px;
}
.head-btn.-open > .line.-c {
  opacity: 0;
  filter: alpha(opacity=0);
}
.head-btn.-open > .line.-b {
  -ms-transform: rotate(45deg);
      transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  top: 19px;
  width: 11px;
}
@media screen and (max-width: 850px) {
  .head {
    height: 80px;
  }
  .head .head-main {
    width: 86%;
    margin: 0 auto;
  }
  .head .head-logo {
    width: 178px;
    padding-top: 29px;
    background: url(https://2864453.fs1.hubspotusercontent-na1.net/hubfs/2864453/image/renewal2018/head/logo_sp.png) no-repeat 0 0;
    background-size: contain;
    -webkit-background-size: contain;
    position: absolute;
    left: 0;
    top: 30px;
  }
  .head .head-btn {
    display: block;
    right: -5px;
  }
  .head .head-left {
    top: 25px;
    left: auto;
    right: 42px;
    z-index: 1;
  }
  .head .head-right.-sp {
    position: relative;
    display: block;
    width: 51%;
    max-width: 161px;
    margin: 0 auto;
    top: 0;
    right: 0;
    text-align: center;
  }
  .head .head-right.-sp .head-right__block1 {
    margin-bottom: 47px;
  }
  .head .head-right.-sp .head-right__block1 a {
    display: block;
    height: 55px;
    font-size: 1.3rem;
    line-height: 5.2rem;
    color: #fff;
    background: #035b90;
    font-weight: 500;
    border-radius: 28px 28px;
    -moz-border-radius: 28px 28px;
    -webkit-border-radius: 28px 28px;
    -o-border-radius: 28px 28px;
    -ms-border-radius: 28px 28px;
    position: relative;
    text-align: center;
    margin-bottom: 16px;
    position: relative;
    opacity: 0;
    filter: alpha(opacity=0);
    top: 10px;
  }
  .head .head-right.-sp .head-right__block1 a > p {
    position: relative;
  }
  .head .head-right.-sp .head-right__block1 a.dl {
    letter-spacing: 0.04rem;
    padding: 0 25px;
    -webkit-transition: all 0.2s ease-out 0.36s;
    transition: all 0.2s ease-out 0.36s;
  }
  .head .head-right.-sp .head-right__block1 a.regist {
    letter-spacing: 0.04rem;
    padding: 0 19px;
    margin-left: 0px;
    margin-bottom: 22px;
    -webkit-transition: all 0.2s ease-out 0.38s;
    transition: all 0.2s ease-out 0.38s;
  }
  .head .head-right.-sp .head-right__block1 a.tel {
    width: 39px;
    height: 39px;
    line-height: 39px;
    background: #fff;
    display: inline-block;
    margin: 0 5px;
    -webkit-transition: all 0.2s ease-out 0.4s;
    transition: all 0.2s ease-out 0.4s;
  }
  .head .head-right.-sp .head-right__block1 a.tel > p {
    height: 39px;
  }
  .head .head-right.-sp .head-right__block1 a.signin {
    background: #fff;
    -webkit-transition: all 0.2s ease-out 0.42s;
    transition: all 0.2s ease-out 0.42s;
  }
  .head .head-right.-sp .head-right__block1 a.signin > p.icon {
    width: 39px;
    height: 39px;
    position: absolute;
    left: 10px;
    top: -5px;
  }
  .head .head-right.-sp .head-right__block1 a.signin > p.txt {
    color: #2d2d2d;
    padding-left: 15px;
  }
  .head .head-right.-sp .head-right__block2 {
    width: 300px;
    position: relative;
    left: 50%;
    margin-left: -150px;
    color: #fff;
  }
  .head .head-right.-sp .head-right__block2 > h3 {
    font-size: 1.2rem;
    margin-bottom: 14px;
  }
  .head .head-right.-sp .head-right__block2 > .tel {
    margin-bottom: 18px;
  }
  .head .head-right.-sp .head-right__block2 > .tel > a {
    font-family: "poppins";
    font-size: 2rem;
    letter-spacing: 0.02em;
    font-weight: 500;
    color: #fff;
  }
  .head .head-right.-sp .head-right__block2 > .tel > span {
    font-size: 1.1rem;
  }
  .head .head-right.-sp .head-right__block2 > .mail {
    padding-bottom: 150px;
  }
  .head .head-right.-sp .head-right__block2 > .mail > a {
    font-family: "poppins";
    font-size: 1.4rem;
    letter-spacing: 0.02em;
    font-weight: 500;
    color: #fff;
  }
  .head .head-right.-sp .head-right__block2 > .mail > span {
    display: inline-block;
    margin-top: 10px;
  }
  .head .head-nav {
    position: absolute;
    top: 80px;
    width: 120%;
    left: 110%;
    /* background: $gray; */
  }
  .head .head-nav.-open {
    left: -10%;
  }
  .head .head-nav.-open > ul > .item {
    top: 0;
    opacity: 1;
    filter: alpha(opacity=100);
  }
  .head .head-nav.-open .head-right.-sp a {
    top: 0;
    opacity: 1;
    filter: alpha(opacity=100);
  }
  .head .head-nav > ul {
    width: 86%;
    max-width: 630px;
    margin: 0 auto 20px auto;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    padding-top: 35px;
    height: 230px;
  }
  .head .head-nav > ul > .item {
    font-size: 1.4rem;
    margin: 0 auto 15px auto;
    width: 50%;
    position: relative;
    opacity: 0;
    filter: alpha(opacity=0);
    top: 10px;
  }
  .head .head-nav > ul > .item a {
    color: #fff;
    display: block;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    padding-left: 28%;
  }
  .head .head-nav > ul > .item.-current a {
    color: #fff;
  }
  .head .head-nav > ul > .item.-current::after {
    background: #fff;
    left: 12%;
    top: 15px;
  }
  .head .head-nav > ul > .item:nth-child(1) {
    -webkit-transition: all 0.2s ease-out 0.2s;
    transition: all 0.2s ease-out 0.2s;
  }
  .head .head-nav > ul > .item:nth-child(2) {
    -webkit-transition: all 0.2s ease-out 0.22s;
    transition: all 0.2s ease-out 0.22s;
  }
  .head .head-nav > ul > .item:nth-child(3) {
    -webkit-transition: all 0.2s ease-out 0.24s;
    transition: all 0.2s ease-out 0.24s;
  }
  .head .head-nav > ul > .item:nth-child(4) {
    -webkit-transition: all 0.2s ease-out 0.26s;
    transition: all 0.2s ease-out 0.26s;
  }
  .head .head-nav > ul > .item:nth-child(5) {
    -webkit-transition: all 0.2s ease-out 0.28s;
    transition: all 0.2s ease-out 0.28s;
  }
  .head .head-nav > ul > .item:nth-child(6) {
    -webkit-transition: all 0.2s ease-out 0.3s;
    transition: all 0.2s ease-out 0.3s;
  }
  .head .head-nav > ul > .item:nth-child(7) {
    -webkit-transition: all 0.2s ease-out 0.32s;
    transition: all 0.2s ease-out 0.32s;
  }
  .head .head-nav > ul > .item:nth-child(8) {
    -webkit-transition: all 0.2s ease-out 0.34s;
    transition: all 0.2s ease-out 0.34s;
  }
}
@media screen and (min-width: 1220px) {
  .head.-small {
    height: 65px;
  }
  .head.-small .head-main {
    padding-top: 13px;
  }
  .head.-small .head-main > a {
    display: block;
    position: absolute;
    left: 0;
    top: 14px;
    width: 38px;
  }
  .head.-small .head-logo {
    width: 38px;
    padding-top: 39px;
    background: url(https://2864453.fs1.hubspotusercontent-na1.net/hubfs/2864453/image/renewal2018/head/logo-small.png) no-repeat 0 0;
    background-size: contain;
    -webkit-background-size: contain;
    margin-bottom: 0;
  }
  .head.-small .head-nav {
    position: absolute;
    left: 60px;
  }
  .head.-small .head-nav > ul > .item {
    margin: 0 2px;
  }
}
@media screen and (min-width: 1220px) and (max-width: 1360px) {
  .head.-small .head-nav > ul > .item {
    padding-left: 3px;
    padding-right: 3px;
  }
}
@media screen and (min-width: 1220px) {
  .head.-small .head-nav > ul > .item::after {
    bottom: -5px;
    margin-left: -3px;
    width: 7px;
    height: 7px;
  }
  .head.-small .head-nav > ul > .item:hover::after {
    bottom: -10px;
  }
  .head.-small .head-nav > ul > .item.-current::after {
    bottom: -10px;
  }
  .head.-small .head-nav > ul > .item.-current:hover::after {
    bottom: -10px;
  }
  .head.-small .head-right {
    right: 0;
    top: 13px;
  }
  .head.-small .head-left {
    opacity: 0;
    filter: alpha(opacity=0);
    top: 25px;
  }
}
@media screen and (max-width: 1219px) and (min-width: 851px) {
  .head.-small {
    height: 90px;
  }
  .head.-small .head-main {
    width: 95%;
    margin: 0 auto;
  }
  .head.-small .head-logo {
    width: 178px;
    padding-top: 29px;
    background: url(https://2864453.fs1.hubspotusercontent-na1.net/hubfs/2864453/image/renewal2018/head/logo_sp.png) no-repeat 0 0;
    background-size: contain;
    -webkit-background-size: contain;
    position: absolute;
    left: 0;
    top: 30px;
  }
  .head.-small .head-btn {
    display: block;
    right: 0;
  }
  .head.-small .head-left {
    display: none;
  }
  .head.-small .head-right {
    top: 25px;
    right: 47px;
  }
  .head.-small .head-right.-sp {
    position: relative;
    display: block;
    margin: 0 auto;
    top: 0;
    right: 0;
    text-align: center;
  }
  .head.-small .head-right.-sp .head-right__block1 {
    margin-bottom: 47px;
  }
  .head.-small .head-right.-sp .head-right__block1 a {
    display: inline-block;
    height: 55px;
    font-size: 1.3rem;
    line-height: 5.2rem;
    color: #fff;
    background: #035b90;
    font-weight: 500;
    border-radius: 28px 28px;
    -moz-border-radius: 28px 28px;
    -webkit-border-radius: 28px 28px;
    -o-border-radius: 28px 28px;
    -ms-border-radius: 28px 28px;
    position: relative;
    text-align: center;
    margin-bottom: 16px;
    position: relative;
    opacity: 0;
    filter: alpha(opacity=0);
    top: 10px;
    margin: 0 10px;
  }
  .head.-small .head-right.-sp .head-right__block1 a > p {
    position: relative;
  }
  .head.-small .head-right.-sp .head-right__block1 a.dl {
    letter-spacing: 0.04rem;
    padding: 0 25px;
    -webkit-transition: all 0.2s ease-out 0.36s;
    transition: all 0.2s ease-out 0.36s;
  }
  .head.-small .head-right.-sp .head-right__block1 a.regist {
    letter-spacing: 0.04rem;
    padding: 0 19px;
    margin-left: 0px;
    margin-bottom: 22px;
    -webkit-transition: all 0.2s ease-out 0.38s;
    transition: all 0.2s ease-out 0.38s;
  }
  .head.-small .head-right.-sp .head-right__block1 a.tel {
    width: 39px;
    height: 39px;
    line-height: 39px;
    background: #fff;
    display: inline-block;
    margin: 0 5px;
    -webkit-transition: all 0.2s ease-out 0.4s;
    transition: all 0.2s ease-out 0.4s;
  }
  .head.-small .head-right.-sp .head-right__block1 a.tel > p {
    height: 39px;
  }
  .head.-small .head-right.-sp .head-right__block1 a.signin {
    background: #fff;
    -webkit-transition: all 0.2s ease-out 0.42s;
    transition: all 0.2s ease-out 0.42s;
    width: 160px;
  }
  .head.-small .head-right.-sp .head-right__block1 a.signin > p.icon {
    width: 39px;
    height: 39px;
    position: absolute;
    left: 10px;
    top: -5px;
  }
  .head.-small .head-right.-sp .head-right__block1 a.signin > p.txt {
    color: #2d2d2d;
    padding-left: 15px;
  }
  .head.-small .head-right.-sp .head-right__block2 {
    width: 300px;
    position: relative;
    left: 50%;
    margin-left: -150px;
    color: #fff;
  }
  .head.-small .head-right.-sp .head-right__block2 > h3 {
    font-size: 1.2rem;
    margin-bottom: 14px;
  }
  .head.-small .head-right.-sp .head-right__block2 > .tel {
    margin-bottom: 18px;
  }
  .head.-small .head-right.-sp .head-right__block2 > .tel > a {
    font-family: "poppins";
    font-size: 2rem;
    letter-spacing: 0.02em;
    font-weight: 500;
    color: #fff;
  }
  .head.-small .head-right.-sp .head-right__block2 > .tel > span {
    font-size: 1.1rem;
  }
  .head.-small .head-right.-sp .head-right__block2 > .mail {
    padding-bottom: 20px;
  }
  .head.-small .head-right.-sp .head-right__block2 > .mail > a {
    font-family: "poppins";
    font-size: 1.4rem;
    letter-spacing: 0.02em;
    font-weight: 500;
    color: #fff;
  }
  .head.-small .head-right .tel {
    display: block;
  }
  .head.-small .head-nav {
    display: none;
  }
}
.head-mobile {
  position: absolute;
  width: 100vw;
  left: 100%;
  top: 90px;
  height: calc(100vh - 90px);
}
.head-mobile.-open {
  left: 0;
}
@media screen and (max-width: 850px) {
  .head-mobile {
    top: 80px;
  }
}
.head-mobile::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background: #2d2d2d;
}
.head-mobile__inner {
  width: 100%;
  height: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  overflow: auto;
}
.head-mobile__nav {
  width: 84vw;
  margin: 0 auto;
  max-width: 1150px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-top: 50px;
  padding-bottom: 15px;
}
.head-mobile__nav > div {
  width: 50%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (min-width: 851px) {
  .head-mobile__nav > div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .head-mobile__nav > div:nth-of-type(1) {
    width: 66%;
  }
  .head-mobile__nav > div:nth-of-type(2) {
    width: 33%;
  }
  .head-mobile__nav > div:nth-of-type(2) > ul {
    width: 100%;
  }
  .head-mobile__nav > div > ul {
    width: 50%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding-left: 10%;
  }
}
@media screen and (max-width: 850px) {
  .head-mobile__nav > div:nth-of-type(1) {
    width: 60%;
  }
  .head-mobile__nav > div:nth-of-type(2) {
    width: 40%;
  }
}
.head-mobile__nav2 {
  width: 84vw;
  margin: 0 auto 48px;
  max-width: 1150px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (min-width: 851px) {
  .head-mobile__nav2 {
    padding-left: 4%;
  }
}
.head-mobile__nav2 > p {
  margin-right: 45px;
}
@media screen and (max-width: 850px) {
  .head-mobile__nav2 > p {
    margin-right: 25px;
  }
}
.head-mobile__nav2 a {
  color: #fff;
  font-size: 1.2rem;
  display: inline-block;
  position: relative;
}
.head-mobile__nav2 a::after {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 7px;
  height: 7px;
  border-radius: 50% 50%;
  -moz-border-radius: 50% 50%;
  -webkit-border-radius: 50% 50%;
  -o-border-radius: 50% 50%;
  -ms-border-radius: 50% 50%;
  background: #fff;
  opacity: 0;
  filter: alpha(opacity=0);
  -webkit-transition: all 0.2s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0s;
  transition: all 0.2s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0s;
}
@media screen and (min-width: 751px) {
  .head-mobile__nav2 a:hover::after {
    left: -15px;
    opacity: 1;
  }
}
.head-mobile__nav3 {
  position: relative;
}
.head-mobile__list a {
  color: #fff;
}
.head-mobile__list > .item {
  font-size: 1.5rem;
  line-height: 3.4rem;
  font-weight: 500;
  position: relative;
  margin-bottom: 21px;
}
.head-mobile__list > .item > a {
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
  display: inline-block;
  padding: 0;
  position: relative;
}
.head-mobile__list > .item > a::after {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 7px;
  height: 7px;
  border-radius: 50% 50%;
  -moz-border-radius: 50% 50%;
  -webkit-border-radius: 50% 50%;
  -o-border-radius: 50% 50%;
  -ms-border-radius: 50% 50%;
  background: #fff;
  opacity: 0;
  filter: alpha(opacity=0);
  -webkit-transition: all 0.2s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0s;
  transition: all 0.2s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0s;
}
@media screen and (min-width: 751px) {
  .head-mobile__list > .item > a:hover::after {
    left: -15px;
    opacity: 1;
  }
}
.head-mobile__list > .item.-current > a {
  color: #fff;
}
.head-mobile__list > .item.-current > a::after {
  left: -15px;
  opacity: 1;
  filter: alpha(opacity=100);
}
.head-mobile .head-right__block1 {
  margin-bottom: 47px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.head-mobile .head-right__block1 > a {
  display: inline-block;
  height: 55px;
  font-size: 1.3rem;
  line-height: 5.2rem;
  color: #fff;
  background: #035b90;
  font-weight: 500;
  border-radius: 28px 28px;
  -moz-border-radius: 28px 28px;
  -webkit-border-radius: 28px 28px;
  -o-border-radius: 28px 28px;
  -ms-border-radius: 28px 28px;
  position: relative;
  text-align: center;
  margin-bottom: 16px;
  position: relative;
  opacity: 1;
  top: 10px;
}
.head-mobile .head-right__block1 > a > p {
  position: relative;
}
.head-mobile .head-right__block1 > a.dl {
  letter-spacing: 0.04rem;
  padding: 0 25px;
}
.head-mobile .head-right__block1 > a.regist {
  letter-spacing: 0.04rem;
  padding: 0 19px;
  margin: 0 25px;
  -webkit-transition: all 0.2s ease-out 0.38s;
  transition: all 0.2s ease-out 0.38s;
}
.head-mobile .head-right__block1 > a.tel {
  width: 39px;
  height: 39px;
  line-height: 39px;
  background: #fff;
  display: inline-block;
  margin: 0 5px;
}
.head-mobile .head-right__block1 > a.tel > p {
  height: 39px;
}
.head-mobile .head-right__block1 > a.signin {
  background: #fff;
  -webkit-transition: all 0.2s ease-out 0.42s;
  transition: all 0.2s ease-out 0.42s;
}
.head-mobile .head-right__block1 > a.signin > p.icon {
  width: 39px;
  height: 39px;
  position: absolute;
  left: 10px;
  top: -5px;
}
.head-mobile .head-right__block1 > a.signin > p.txt {
  color: #2d2d2d;
  padding-left: 45px;
  padding-right: 25px;
}
@media screen and (max-width: 850px) {
  .head-mobile .head-right__block1 {
    width: 160px;
    display: block;
    margin: 0 auto 47px;
  }
  .head-mobile .head-right__block1 > a {
    display: block;
    margin-bottom: 14px;
  }
  .head-mobile .head-right__block1 > a.regist {
    margin: 0 0 14px 0;
  }
}
.head-mobile .head-right {
  position: relative;
}
.head-mobile .head-right__block2 {
  position: relative;
  text-align: center;
  color: #fff;
}
.head-mobile .head-right__block2 > h3 {
  font-size: 1.2rem;
  margin-bottom: 14px;
}
.head-mobile .head-right__block2 > .tel {
  margin-bottom: 18px;
}
.head-mobile .head-right__block2 > .tel > a {
  font-family: "poppins";
  font-size: 2rem;
  letter-spacing: 0.02em;
  font-weight: 500;
  color: #fff;
}
.head-mobile .head-right__block2 > .tel > span {
  font-size: 1.1rem;
}
.head-mobile .head-right__block2 > .mail {
  padding-bottom: 120px;
}
.head-mobile .head-right__block2 > .mail > a {
  font-family: "poppins";
  font-size: 1.4rem;
  letter-spacing: 0.02em;
  font-weight: 500;
  color: #fff;
}
.head-mobile .head-right__block2 > .mail > span {
  display: inline-block;
  margin-top: 10px;
}
.head-mobile .head-nav__sub {
  position: relative;
  height: auto;
  top: 0;
  left: 0;
  color: #fff;
  width: 100%;
  overflow: visible;
}
.head-mobile .head-nav__sub a {
  color: #fff;
}
.head-mobile .head-sub__inner {
  display: block;
  position: relative;
  padding: 10px 5px 18px;
  background: transparent;
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}
.head-mobile .head-sub__item {
  font-size: 12px;
  margin-bottom: 2px;
}
.head-mobile .head-sub__item.-hassublist > a {
  display: none;
}
.head-mobile .head-sub__item > a {
  display: inline-block;
  position: relative;
}
.head-mobile .head-sub__item > a::after {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 7px;
  height: 7px;
  border-radius: 50% 50%;
  -moz-border-radius: 50% 50%;
  -webkit-border-radius: 50% 50%;
  -o-border-radius: 50% 50%;
  -ms-border-radius: 50% 50%;
  background: #fff;
  opacity: 0;
  filter: alpha(opacity=0);
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-transition: all 0.2s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0s;
  transition: all 0.2s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0s;
}
@media screen and (min-width: 751px) {
  .head-mobile .head-sub__item > a:hover::after {
    left: -25px;
    opacity: 1;
    filter: alpha(opacity=100);
  }
}
.head-mobile .head-sub__item.-top {
  display: none;
}
@media screen and (min-width: 751px) {
  .head-mobile .head-sub__item.-hassublist:hover .head-sub__sublist {
    max-height: none;
  }
}
.head-mobile .head-sub__sublist {
  max-height: none;
  height: 0;
  overflow: hidden;
  -webkit-transition: none;
  transition: none;
}
.head-mobile .head-sub__sublist.-open {
  height: auto;
}
.head-mobile .head-sublist {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding: 6px 0 17px;
  width: 100%;
  position: relative;
  left: 0;
}
.head-mobile .head-sublist > li {
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding-left: 25px;
  padding-right: 5px;
  margin-bottom: 2px;
}
@media screen and (max-width: 850px) {
  .head-mobile .head-sublist > li {
    padding-left: 5px;
  }
}
.head-mobile .head-sublist > li.-form {
  display: block;
}
.head-mobile .head-sublist > li > a {
  display: inline-block;
  position: relative;
}
.head-mobile .head-sublist > li > a::after {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 7px;
  height: 7px;
  border-radius: 50% 50%;
  -moz-border-radius: 50% 50%;
  -webkit-border-radius: 50% 50%;
  -o-border-radius: 50% 50%;
  -ms-border-radius: 50% 50%;
  background: #fff;
  opacity: 0;
  filter: alpha(opacity=0);
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-transition: all 0.1s ease-out 0s;
  transition: all 0.1s ease-out 0s;
}
@media screen and (min-width: 751px) {
  .head-mobile .head-sublist > li > a:hover::after {
    left: -15px;
    opacity: 1;
    filter: alpha(opacity=100);
  }
}
.head-mobile .head-sublist.-single > li {
  width: 100%;
}

/*------------------------------------------------------*/
/*  foot */
/*------------------------------------------------------*/
.foot {
  width: 100%;
  position: relative;
  color: #fff;
  background: #2d2d2d;
}
.foot-main {
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  margin: 0 90px;
  position: relative;
  padding: 70px 0 140px 0;
}
@media screen and (max-width: 1310px) {
  .foot-main {
    padding-bottom: 50px;
  }
}
@media screen and (max-width: 1240px) {
  .foot-main {
    width: 95%;
    margin: 0 auto;
    padding-bottom: 50px;
  }
}
@media screen and (max-width: 850px) {
  .foot-main {
    width: 86%;
    margin: 0 auto;
    padding-top: 51px;
    padding-bottom: 35px;
  }
}
.foot-box {
  margin-bottom: 51px;
}
@media screen and (min-width: 851px) {
  .foot-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    display: -webkit-flex;
    -webkit-box-align: top;
        -ms-flex-align: top;
            align-items: top;
    -webkit-align-items: top;
  }
}
@media screen and (max-width: 850px) {
  .foot-box {
    letter-spacing: -0.4em;
    margin-bottom: 15px;
  }
}
.foot-box2 {
  letter-spacing: -0.4em;
  line-height: 1.3em;
}
@media screen and (min-width: 951px) {
  .foot-box2 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    display: -webkit-flex;
    -webkit-box-align: top;
        -ms-flex-align: top;
            align-items: top;
    -webkit-align-items: top;
  }
}
.foot-box > a {
  display: inline-block;
  vertical-align: middle;
  height: 39px;
  font-size: 1.4rem;
  line-height: 3.9rem;
  color: #fff;
  background: #035b90;
  font-weight: 500;
  border-radius: 20px 20px;
  -moz-border-radius: 20px 20px;
  -webkit-border-radius: 20px 20px;
  -o-border-radius: 20px 20px;
  -ms-border-radius: 20px 20px;
  position: relative;
}
.foot-box > a > p {
  position: relative;
}
.foot-box > a::before {
  content: "";
  width: 0;
  height: 39px;
  position: absolute;
  left: 50%;
  top: 0;
  background: #000;
  border-radius: 20px 20px;
  -moz-border-radius: 20px 20px;
  -webkit-border-radius: 20px 20px;
  -o-border-radius: 20px 20px;
  -ms-border-radius: 20px 20px;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}
.foot-box > a:hover::before {
  width: 100%;
  left: 0;
}
.foot-box > .dl {
  letter-spacing: 0.04rem;
  padding: 0 25px;
}
@media screen and (max-width: 650px) {
  .foot-box > .dl {
    padding: 0 20px;
  }
}
@media screen and (max-width: 320px) {
  .foot-box > .dl {
    padding: 0 12px;
  }
}
.foot-box > .regist {
  letter-spacing: 0.04rem;
  padding: 0 19px;
  margin-left: 7px;
}
@media screen and (max-width: 650px) {
  .foot-box > .regist {
    padding: 0 17px;
  }
}
@media screen and (max-width: 320px) {
  .foot-box > .regist {
    padding: 0 14px;
  }
}
.foot-box > .signin {
  width: 39px;
  height: 39px;
  margin-left: 15px;
  overflow: hidden;
  border-radius: 20px 20px;
  -moz-border-radius: 20px 20px;
  -webkit-border-radius: 20px 20px;
  -o-border-radius: 20px 20px;
  -ms-border-radius: 20px 20px;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}
@media screen and (min-width: 751px) {
  .foot-box > .signin:hover {
    background: #000;
    width: 110px;
  }
  .foot-box > .signin:hover > .txt {
    display: block;
  }
}
@media screen and (max-width: 750px) {
  .foot-box > .signin {
    width: 105px;
    margin-left: 7px;
  }
  .foot-box > .signin > .txt {
    display: block !important;
  }
}
.foot-box > .signin::before {
  display: none;
}
.foot-box > .signin > .icon {
  width: 39px;
}
.foot-box > .signin > .txt {
  width: 120px;
  position: absolute;
  left: 43px;
  top: 0px;
  font-size: 1rem;
  line-height: 3.7rem;
  color: #fff;
  letter-spacing: 0.04em;
  display: none;
}
@media screen and (max-width: 486px) {
  .foot-box > .signin > .txt {
    top: 1px;
  }
}
@media screen and (max-width: 320px) {
  .foot-box > .signin {
    width: 80px;
  }
  .foot-box > .signin > .icon {
    position: relative;
    left: -5px;
  }
  .foot-box > .signin > .txt {
    left: 30px;
  }
}
.foot-tel {
  position: absolute;
  right: 0;
  top: 70px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 850px) {
  .foot-tel {
    top: 50px;
    right: -5px;
  }
}
@media screen and (max-width: 486px) {
  .foot-tel {
    top: 45px;
  }
}
.foot-tel > .tel {
  width: 39px;
  height: 39px;
  background: #fff;
  overflow: hidden;
  border-radius: 20px 20px;
  -moz-border-radius: 20px 20px;
  -webkit-border-radius: 20px 20px;
  -o-border-radius: 20px 20px;
  -ms-border-radius: 20px 20px;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
  position: relative;
}
@media screen and (min-width: 751px) {
  .foot-tel > .tel:hover {
    width: 170px;
  }
  .foot-tel > .tel:hover > .txt {
    display: block;
  }
}
.foot-tel > .tel > .icon {
  width: 39px;
}
.foot-tel > .tel > .txt {
  font-weight: 500;
  width: 124px;
  position: absolute;
  left: 39px;
  top: 1px;
  font-size: 1.4rem;
  line-height: 3.7rem;
  color: #2d2d2d;
  font-family: "poppins";
  letter-spacing: 0.04em;
  display: none;
}
.foot-support {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-right: 50px;
}
@media screen and (max-width: 950px) {
  .foot-support {
    margin-right: 7px;
  }
}
.foot-support__item {
  margin-left: 7px;
}
.foot-support__item > a {
  display: inline-block;
  vertical-align: top;
  height: 39px;
  font-size: 1.1rem;
  line-height: 3.5rem;
  color: #fff;
  border: 1px solid #fff;
  font-weight: 500;
  border-radius: 20px 20px;
  -moz-border-radius: 20px 20px;
  -webkit-border-radius: 20px 20px;
  -o-border-radius: 20px 20px;
  -ms-border-radius: 20px 20px;
  position: relative;
  padding: 0 20px;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: transparent;
}
.foot-support__item > a > span {
  position: relative;
}
.foot-support__item > a:hover {
  color: #2d2d2d;
  background: #fff;
}
@media screen and (max-width: 850px) {
  .foot-support {
    margin-right: 0;
    margin-bottom: 40px;
  }
  .foot-support__item {
    margin-left: 0;
    margin-right: 7px;
  }
}
.foot-logo {
  width: 220px;
  margin-right: 54px;
  padding-top: 6px;
  font-size: 0;
  line-height: 0;
}
@media screen and (max-width: 850px) {
  .foot-logo {
    width: 204px;
    padding-top: 0;
    margin-bottom: 32px;
  }
}
.foot-nav {
  margin-bottom: 33px;
}
.foot-nav a {
  color: #fff;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
  display: inline-block;
  position: relative;
}
.foot-nav a::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 5px;
  margin-left: -3px;
  width: 7px;
  height: 7px;
  border-radius: 50% 50%;
  -moz-border-radius: 50% 50%;
  -webkit-border-radius: 50% 50%;
  -o-border-radius: 50% 50%;
  -ms-border-radius: 50% 50%;
  background: #fff;
  opacity: 0;
  filter: alpha(opacity=0);
  -webkit-transition: all 0.2s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0s;
  transition: all 0.2s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0s;
}
.foot-nav a > a {
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}
@media screen and (min-width: 851px) {
  .foot-nav a.-current::after {
    top: -12px;
    opacity: 1;
    filter: alpha(opacity=100);
  }
  .foot-nav a:hover::after {
    top: -12px;
    opacity: 1;
    filter: alpha(opacity=100);
  }
}
@media screen and (max-width: 750px) {
  .foot-nav a.-current::after {
    left: -15%;
    top: 12px;
    opacity: 1;
    filter: alpha(opacity=100);
  }
}
.foot-nav > ul > .item > .item-main {
  font-size: 1.3rem;
  line-height: 3rem;
}
.foot-nav > ul > .item > p {
  padding-left: 2px;
  margin-top: 3px;
}
.foot-nav > ul > .item > p:first-of-type {
  margin-top: 12px;
}
@media screen and (max-width: 850px) {
  .foot-nav > ul > .item > p:first-of-type {
    margin-top: 0;
  }
}
@media screen and (max-width: 850px) {
  .foot-nav > ul > .item > p {
    padding-left: 10px;
    margin-top: 7px;
    display: none;
  }
  .foot-nav > ul > .item > p:first-of-type {
    margin-top: 9px;
  }
}
.foot-nav > ul > .item > p > a {
  font-size: 1.2rem;
  line-height: 2.4rem;
}
.foot-nav > ul > .item > p > a::after {
  left: 0;
  top: 6px;
}
@media screen and (min-width: 851px) {
  .foot-nav > ul > .item > p > a:hover::after {
    left: -19px;
  }
}
.foot-nav > ul > .item > p > a.item-en {
  font-family: "poppins";
  font-weight: 500;
  letter-spacing: 0.02em;
}
.foot-nav > ul > .item > p > a.item-en2 {
  line-height: 1.7rem;
  margin-top: 4px;
  display: inline-block;
}
.foot-nav > ul > .item > p > a.item-en2 > span {
  font-weight: 700;
  font-size: 1.1rem;
}
.foot-nav > ul.foot-nav__list1 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  max-width: 1400px;
  margin-bottom: 40px;
}
@media screen and (max-width: 1219px) and (min-width: 851px) {
  .foot-nav > ul.foot-nav__list1 {
    gap: 40px;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}
@media screen and (max-width: 850px) {
  .foot-nav > ul.foot-nav__list1 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    height: 190px;
    margin-bottom: 17px;
  }
  .foot-nav > ul.foot-nav__list1 > .item {
    width: 50% !important;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    padding-left: 5%;
    margin-bottom: 7px;
  }
}
.foot-nav > ul.foot-nav__list2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  display: -webkit-flex;
  -webkit-box-align: top;
      -ms-flex-align: top;
          align-items: top;
  -webkit-align-items: top;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  max-width: 1600px;
  margin-bottom: 31px;
  gap: 10px 0;
}
.foot-nav > ul.foot-nav__list2 > .item {
  margin-right: 44px;
  position: relative;
}
.foot-nav > ul.foot-nav__list2 > .item > .item-main {
  font-size: 1.2rem;
}
.foot-nav > ul.foot-nav__list2 > .item.item12 > a {
  display: block;
  position: relative;
  top: 50%;
  -webkit-transform: translateY(-26px);
      -ms-transform: translateY(-26px);
          transform: translateY(-26px);
}
@media screen and (max-width: 850px) {
  .foot-nav > ul.foot-nav__list2 {
    padding-left: 16px;
    margin-bottom: 37px;
  }
  .foot-nav > ul.foot-nav__list2 > .item {
    margin-right: 50px;
  }
}
@media screen and (max-width: 850px) and (max-width: 320px) {
  .foot-nav > ul.foot-nav__list2 > .item:nth-child(2) {
    margin-right: 0px;
  }
}
@media screen and (max-width: 850px) {
  .foot-nav > ul.foot-nav__list2 > .item.item12 {
    width: 109px;
  }
}
@media screen and (max-width: 500px) {
  .foot-nav > ul.foot-nav__list2 > .item.item12 {
    margin-top: 41px;
    position: relative;
    left: -16px;
  }
}
.foot-nav__app {
  width: 110px;
}
.foot-nav__app::after {
  display: none;
}
.foot-nav2 {
  margin-bottom: 30px;
}
@media screen and (max-width: 650px) {
  .foot-nav2 {
    display: none;
  }
}
.foot-nav2 a {
  display: inline-block;
  color: #fff;
  font-size: 1.2rem;
  line-height: 3rem;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
  position: relative;
}
.foot-nav2 a::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 5px;
  margin-left: -3px;
  width: 7px;
  height: 7px;
  border-radius: 50% 50%;
  -moz-border-radius: 50% 50%;
  -webkit-border-radius: 50% 50%;
  -o-border-radius: 50% 50%;
  -ms-border-radius: 50% 50%;
  background: #fff;
  opacity: 0;
  filter: alpha(opacity=0);
  -webkit-transition: all 0.2s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0s;
  transition: all 0.2s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0s;
}
.foot-nav2 a:first-of-type {
  margin-right: 41px;
}
@media screen and (min-width: 851px) {
  .foot-nav2 a:hover::after {
    top: -10px;
    opacity: 1;
    filter: alpha(opacity=100);
  }
}
.foot-about {
  width: 100%;
  max-width: 428px;
  display: inline-block;
  letter-spacing: normal;
  vertical-align: top;
  margin-right: 118px;
}
@media screen and (max-width: 950px) {
  .foot-about {
    margin-bottom: 13px;
  }
}
.foot-about > .txt {
  font-size: 1rem;
  line-height: 2.1rem;
  letter-spacing: 0.02em;
  margin-bottom: 13px;
}
.foot-about > .txt2 {
  font-size: 1rem;
  line-height: 2.1rem;
  letter-spacing: 0.02em;
  margin-bottom: -2px;
}
.foot-about > a {
  color: #fff;
  display: inline-block;
  font-family: "poppins";
  font-weight: 500;
  position: relative;
  font-size: 1rem;
}
.foot-about > a::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 1px;
  background: #fff;
  left: 0;
  bottom: 4px;
  -webkit-transition: all 0.2s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0s;
  transition: all 0.2s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0s;
}
.foot-about > a:hover::before {
  width: 0;
  left: 50%;
}
.foot-contact {
  letter-spacing: normal;
  padding-top: 2px;
  position: relative;
  max-width: 640px;
}
@media screen and (min-width: 1311px) {
  .foot-contact {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    width: calc(100% - 546px);
  }
}
@media screen and (max-width: 1310px) {
  .foot-contact1 {
    margin-bottom: 30px;
  }
  .foot-contact2 {
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 950px) {
  .foot-contact {
    margin-bottom: 26px;
  }
}
@media screen and (max-width: 850px) {
  .foot-contact1 {
    margin-bottom: 5px;
  }
}
@media screen and (min-width: 751px) {
  .foot-contact2 {
    position: relative;
    top: -3px;
    margin-right: 32px;
  }
}
.foot-contact > div > .title {
  font-family: "poppins";
  font-size: 1.2rem;
  line-height: 1.8rem;
  font-weight: 500;
  margin-bottom: 9px;
}
.foot-contact > div > dl {
  position: relative;
  padding-left: 30px;
  margin-bottom: 11px;
}
@media screen and (max-width: 850px) {
  .foot-contact > div > dl {
    margin-bottom: -2px;
  }
}
.foot-contact > div > dl > dt {
  width: 15px;
  position: absolute;
  left: 0;
  top: 4px;
  font-size: 0;
  line-height: 0;
}
.foot-contact > div > dl > dd {
  font-size: 1.2rem;
  line-height: 2.3rem;
}
.foot-contact > div > dl > dd span, .foot-contact > div > dl > dd a {
  font-family: "poppins";
  font-weight: 500;
  letter-spacing: 0.02em;
  color: #fff;
  margin-right: 17px;
  position: relative;
  display: inline-block;
}
@media screen and (max-width: 750px) {
  .foot-contact > div > dl > dd a {
    margin-right: 0px;
  }
  .foot-contact > div > dl > dd span {
    margin-right: 8px;
  }
}
.foot-contact > div > dl > dd a::before {
  content: "";
  position: absolute;
  width: 0;
  height: 1px;
  background: #fff;
  left: 50%;
  bottom: 0;
  -webkit-transition: all 0.2s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0s;
  transition: all 0.2s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0s;
}
.foot-contact > div > dl > dd a:hover::before {
  width: 100%;
  left: 0;
}
.foot-contact > div > h3 {
  font-size: 1.2rem;
  margin-bottom: 9px;
}
@media screen and (min-width: 751px) {
  .foot-contact > div > h3 {
    margin-bottom: 0;
  }
}
.foot-contact > div > h3.company {
  font-size: 1.2rem;
  margin-bottom: 10px;
}
@media screen and (min-width: 751px) {
  .foot-contact > div > h3.company {
    margin-bottom: 6px;
  }
}
.foot-contact__box {
  letter-spacing: -0.4em;
  margin-top: 4px;
}
.foot-contact__box > dl {
  vertical-align: top;
  letter-spacing: normal;
  position: relative;
  padding-left: 30px;
  margin-bottom: 6px;
}
@media screen and (min-width: 751px) {
  .foot-contact__box > dl {
    margin-bottom: 4px;
  }
}
.foot-contact__box > dl:first-of-type {
  padding-left: 27px;
  margin-right: 36px;
}
@media screen and (max-width: 850px) {
  .foot-contact__box > dl:first-of-type {
    margin-right: 0;
    margin-bottom: -5px;
  }
}
.foot-contact__box > dl > dt {
  width: 15px;
  position: absolute;
  left: 0;
  top: 4px;
  font-size: 0;
  line-height: 0;
}
.foot-contact__box > dl > dd {
  font-size: 1.2rem;
  line-height: 2.3rem;
}
.foot-contact__box > dl > dd a {
  font-family: "poppins";
  font-weight: 500;
  letter-spacing: 0.02em;
  color: #fff;
  margin-right: 17px;
  position: relative;
  display: inline-block;
  font-size: 1.3rem;
}
@media screen and (max-width: 750px) {
  .foot-contact__box > dl > dd a {
    margin-right: 0px;
  }
}
.foot-contact__box > dl > dd p {
  font-size: 1.6rem;
  font-family: "poppins";
  font-weight: 500;
  letter-spacing: 0.04em;
}
.foot-contact__box > dl > dd p > span {
  font-size: 1.2rem;
  display: inline-block;
  margin: 0 8px;
  position: relative;
  top: -1px;
}
@media screen and (max-width: 750px) {
  .foot-contact__box > dl > dd p > span {
    font-size: 1rem;
  }
}
@media screen and (max-width: 850px) {
  .foot-contact__box > dl > dd p {
    font-size: 1.2rem;
  }
}
.foot-contact__box > dl > dd > span {
  font-size: 1.1rem;
  display: inline-block;
  position: relative;
  line-height: 12px;
  top: -4px;
  left: -5px;
}
@media screen and (max-width: 850px) {
  .foot-contact__box > dl > dd > span {
    margin-left: 0px;
    top: -5px;
    left: -6px;
  }
}
.foot-contact__box > dl > dd a::before {
  content: "";
  position: absolute;
  width: 0;
  height: 1px;
  background: #fff;
  left: 50%;
  bottom: 0;
  -webkit-transition: all 0.2s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0s;
  transition: all 0.2s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0s;
}
.foot-contact__box > dl > dd a:hover::before {
  width: 100%;
  left: 0;
}
.foot-contact__box > dl:last-of-type > dt {
  top: 5px;
}
.foot-social {
  display: inline-block;
  padding-top: 35px;
  position: relative;
  left: -5px;
}
@media screen and (min-width: 751px) {
  .foot-social {
    padding-top: 10px;
  }
}
@media screen and (max-width: 850px) {
  .foot-social {
    padding-top: 10px;
  }
}
.foot-social li {
  display: inline-block;
  margin-right: 10px;
  position: relative;
}
.foot-social li a {
  display: block;
  font-size: 0;
  line-height: 0;
}
.foot-social li a::before {
  content: "";
  width: 0;
  height: 39px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-top: -20px;
  margin-left: 0;
  background: #035b90;
  border-radius: 20px 20px;
  -moz-border-radius: 20px 20px;
  -webkit-border-radius: 20px 20px;
  -o-border-radius: 20px 20px;
  -ms-border-radius: 20px 20px;
  -webkit-transition: all 0.2s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0s;
  transition: all 0.2s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0s;
}
.foot-social li a:hover::before {
  width: 39px;
  margin-left: -20px;
}
.foot-social li a img {
  width: 20px;
  position: relative;
}
.foot-copy {
  font-family: "poppins";
  font-size: 1rem;
  line-height: 1.8rem;
  margin-top: 11px;
  position: absolute;
  left: 0;
  bottom: 67px;
}
@media screen and (max-width: 1310px) {
  .foot-copy {
    max-width: 428px;
  }
}
@media screen and (max-width: 950px) {
  .foot-copy {
    position: relative;
    bottom: 0;
    padding-right: 60px;
  }
}
.foot-totop {
  display: inline-block;
  width: 39px;
  height: 39px;
  font-size: 1rem;
  line-height: 3.9rem;
  background: #fff;
  font-weight: 500;
  border-radius: 20px 20px;
  -moz-border-radius: 20px 20px;
  -webkit-border-radius: 20px 20px;
  -o-border-radius: 20px 20px;
  -ms-border-radius: 20px 20px;
  position: absolute;
  cursor: pointer;
  right: 0;
  bottom: 70px;
}
@media screen and (max-width: 850px) {
  .foot-totop {
    right: -5px;
    bottom: 40px;
  }
}
.foot-totop img {
  position: absolute;
  left: 0;
  top: 0;
  cursor: pointer !important;
  -webkit-transition: all 0.15s ease-out 0s;
  transition: all 0.15s ease-out 0s;
}
.foot-totop img.-default {
  opacity: 1;
  filter: alpha(opacity=100);
}
.foot-totop img.-hover {
  opacity: 0;
  filter: alpha(opacity=0);
}
.foot-totop::before {
  content: "";
  width: 0;
  height: 41px;
  position: absolute;
  left: 50%;
  top: -1px;
  background: #035b90;
  border-radius: 20px 20px;
  -moz-border-radius: 20px 20px;
  -webkit-border-radius: 20px 20px;
  -o-border-radius: 20px 20px;
  -ms-border-radius: 20px 20px;
  -webkit-transition: all 0.15s ease-out 0s;
  transition: all 0.15s ease-out 0s;
}
.foot-totop:hover::before {
  width: 41px;
  left: -1px;
}
.foot-totop:hover img.-default {
  opacity: 0;
  filter: alpha(opacity=0);
}
.foot-totop:hover img.-hover {
  opacity: 1;
  filter: alpha(opacity=100);
}
/*------------------------------------------------------*/
/*  top */
/*------------------------------------------------------*/
#wrapper.top-wrapper {
  padding-top: 155px;
}

@media screen and (max-width: 750px) {
  #wrapper.top-wrapper {
    padding-top: 90px;
  }
}

#wrapper main {
  margin-bottom: 0;
}

.top-wrapper {
  padding-top: 155px;
}

.top-main {
  height: 575px;
  overflow: hidden;
  position: relative;
  background: #000;
}

@media screen and (max-width: 750px) {
  .top-main {
    height: 580px;
  }
}

.top-main .slide1 {
  width: 100%;
  height: 575px;
  position: relative;
}

@media screen and (max-width: 750px) {
  .top-main .slide1 {
    height: 580px;
  }
}

.top-main .slide1 .base1 {
  width: 1500px;
  height: 575px;
  overflow: hidden;
  position: absolute;
  left: 50%;
  top: 0;
  margin-left: -469px;
}

@media screen and (max-width: 750px) {
  .top-main .slide1 .base1 {
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    margin-top: 0;
    margin-left: 0;
    background: url(https://remotelock.kke.co.jp/hubfs/image/renewal2018/top/main/01/bg_sp.png) no-repeat center top;
    background-size: cover;
    -webkit-background-size: cover;
  }
}

.top-main .slide1 .base1 > p {
  width: 2000px;
  height: 2000px;
  background: #1f1f1f;
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  transform-origin: left center;
  -webkit-transform-origin: left center;
  position: absolute;
  left: 288px;
  top: 50%;
  margin-top: -1000px;
  -webkit-transition: all 0.5s ease-out 0s;
  transition: all 0.5s ease-out 0s;
}

.top-main .slide1 .base1 > p.-dark {
  background: #070707;
}

.top-main .slide1 .base1 > p.-dark::before {
  transform: scale(0, 0);
  -webkit-transform: scale(0, 0);
  opacity: 0;
  filter: alpha(opacity=0);
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}

.top-main .slide1 .base1 > p::before {
  content: '';
  width: 700px;
  height: 700px;
  position: absolute;
  left: -360px;
  top: 50%;
  margin-top: -350px;
  background-image: -webkit-gradient(radial, center center, 5, center center, 290, from(#6a6a6a), to(#1f1f1f));
  background-image: -ms-gradient(radial, center center, 5, center center, 290, from(#6a6a6a), to(#1f1f1f));
  background-image: gradient(radial, center center, 5, center center, 290, from(#6a6a6a), to(#1f1f1f));
  opacity: 1;
  filter: alpha(opacity=100);
  -webkit-transition: all 0.3s ease-out 0.3s;
  transition: all 0.3s ease-out 0.3s;
}

@media screen and (max-width: 750px) {
  .top-main .slide1 .base1 > p {
    display: none;
  }
}

.top-main .slide1 .base2 {
  width: 1500px;
  height: 575px;
  overflow: hidden;
  position: absolute;
  right: 50%;
  top: 0;
  margin-right: -120px;
}

@media screen and (max-width: 750px) {
  .top-main .slide1 .base2 {
    display: none;
  }
}

.top-main .slide1 .base2 > p {
  width: 2000px;
  height: 2000px;
  background: #383838;
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  transform-origin: right center;
  -webkit-transform-origin: right center;
  position: absolute;
  right: 288px;
  top: 50%;
  margin-top: -1000px;
}

.top-main .slide1 .base2-slide2 {
  width: calc(100%+20px);
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}

.top-main .slide1 .base2-slide2 p {
  width: 22px;
  height: 22px;
  border-radius: 50% 50%;
  background: #fff;
  margin: 7px;
  display: inline-block;
  opacity: 0;
  filter: alpha(opacity=0);
}

.top-main .slide1 .base2-slide2 p.-dot1 {
  -webkit-animation: top-dot1 1.8s ease-out forwards 0s;
  animation: top-dot1 1.8s ease-out forwards 0s;
}

.top-main .slide1 .base2-slide2 p.-dot1.-hide {
  opacity: 0.3;
  filter: alpha(opacity=30);
  -webkit-animation: top-dot1--hide 0.6s ease-out forwards 0s;
  animation: top-dot1--hide 0.6s ease-out forwards 0s;
}

.top-main .slide1 .base2-slide2 p.-dot2 {
  -webkit-animation: top-dot2 1.8s ease-out forwards 0.2s;
  animation: top-dot2 1.8s ease-out forwards 0.2s;
}

.top-main .slide1 .base2-slide2 p.-dot2.-hide {
  opacity: 0.2;
  filter: alpha(opacity=20);
  -webkit-animation: top-dot2--hide 0.6s ease-out forwards 0.1s;
  animation: top-dot2--hide 0.6s ease-out forwards 0.1s;
}

.top-main .slide1 .base2-slide2 p.-dot3 {
  -webkit-animation: top-dot3 1.8s ease-out forwards 0.4s;
  animation: top-dot3 1.8s ease-out forwards 0.4s;
}

.top-main .slide1 .base2-slide2 p.-dot3.-hide {
  opacity: 0.1;
  filter: alpha(opacity=10);
  -webkit-animation: top-dot3--hide 0.6s ease-out forwards 0.2s;
  animation: top-dot3--hide 0.6s ease-out forwards 0.2s;
}

.top-main .slide1 .base2-slide2 p.-dot4 {
  -webkit-animation: top-dot4 1.8s ease-out forwards 0.1s;
  animation: top-dot4 1.8s ease-out forwards 0.1s;
}

.top-main .slide1 .base2-slide2 p.-dot5 {
  -webkit-animation: top-dot5 1.8s ease-out forwards 0.3s;
  animation: top-dot5 1.8s ease-out forwards 0.3s;
}

.top-main .slide1 .base2-slide2 p.-dot5.-hide {
  opacity: 0.2;
  filter: alpha(opacity=20);
  -webkit-animation: top-dot5--hide 0.5s ease-out forwards 0.1s;
  animation: top-dot5--hide 0.5s ease-out forwards 0.1s;
}

.top-main .slide1 .base2-slide2 p.-dot6 {
  -webkit-animation: top-dot1 1.8s ease-out forwards 0.3s;
  animation: top-dot1 1.8s ease-out forwards 0.3s;
}

.top-main .slide1 .base2-slide2 p.-dot6.-hide {
  opacity: 0.3;
  filter: alpha(opacity=30);
  -webkit-animation: top-dot1--hide 0.7s ease-out forwards 0.2s;
  animation: top-dot1--hide 0.7s ease-out forwards 0.2s;
}

.top-main .slide1 .base2-slide2 p.-dot7 {
  -webkit-animation: top-dot2 1.8s ease-out forwards 0.7s;
  animation: top-dot2 1.8s ease-out forwards 0.7s;
}

.top-main .slide1 .base2-slide2 p.-dot7.-hide {
  opacity: 0.2;
  filter: alpha(opacity=20);
  -webkit-animation: top-dot2--hide 0.4s ease-out forwards 0.1s;
  animation: top-dot2--hide 0.4s ease-out forwards 0.1s;
}

.top-main .slide1 .base2-slide2 p.-dot8 {
  -webkit-animation: top-dot3 1.8s ease-out forwards 0.9s;
  animation: top-dot3 1.8s ease-out forwards 0.9s;
}

.top-main .slide1 .base2-slide2 p.-dot8.-hide {
  opacity: 0.1;
  filter: alpha(opacity=10);
  -webkit-animation: top-dot3--hide 0.5s ease-out forwards 0.3s;
  animation: top-dot3--hide 0.5s ease-out forwards 0.3s;
}

.top-main .slide1 .base2-slide2 p.-dot9 {
  -webkit-animation: top-dot4 1.8s ease-out forwards 0.6s;
  animation: top-dot4 1.8s ease-out forwards 0.6s;
}

.top-main .slide1 .base2-slide2 p.-dot10 {
  -webkit-animation: top-dot5 1.8s ease-out forwards 0.1s;
  animation: top-dot5 1.8s ease-out forwards 0.1s;
}

.top-main .slide1 .base2-slide2 p.-dot10.-hide {
  opacity: 0.2;
  filter: alpha(opacity=20);
  -webkit-animation: top-dot5--hide 0.6s ease-out forwards 0s;
  animation: top-dot5--hide 0.6s ease-out forwards 0s;
}

.top-main .slide1 .lock {
  width: 216px;
  position: absolute;
  left: 50%;
  top: 112px;
  margin-left: -322px;
}

.top-main .slide1 .lock > p {
  width: 100%;
  position: absolute;
  left: 0;
  top: 0;
}

.top-main .slide1 .lock > p img {
  position: relative;
}

.top-main .slide1 .lock > p.lock-btn {
  opacity: 0;
  filter: alpha(opacity=0);
}

.top-main .slide1 .lock-btn.-show.-push1 {
  -webkit-animation: top-lock-btn 0.8s ease-out forwards 0s;
  animation: top-lock-btn 0.8s ease-out forwards 0s;
}

.top-main .slide1 .lock-btn.-show.-push2 {
  -webkit-animation: top-lock-btn 0.8s ease-out forwards 0.5s;
  animation: top-lock-btn 0.8s ease-out forwards 0.5s;
}

.top-main .slide1 .lock-btn.-show.-push3 {
  -webkit-animation: top-lock-btn 0.8s ease-out forwards 1s;
  animation: top-lock-btn 0.8s ease-out forwards 1s;
}

.top-main .slide1 .lock-btn.-show.-push4 {
  -webkit-animation: top-lock-btn 0.8s ease-out forwards 1.5s;
  animation: top-lock-btn 0.8s ease-out forwards 1.5s;
}

@media screen and (max-width: 750px) {
  .top-main .slide1 .lock {
    width: 47.6%;
    margin-left: 0;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    top: 40px;
  }
}

.top-main .slide1 .hand {
  width: 221px;
  position: absolute;
  left: 50%;
  top: 229px;
  margin-left: -380px;
  display: none;
}

.top-main .slide1 .hand.-show {
  display: block;
}

.top-main .slide1 .hand img {
  position: relative;
  opacity: 0;
  filter: alpha(opacity=0);
}

@media screen and (max-width: 750px) {
  .top-main .slide1 .hand {
    width: 46.6%;
    left: 12.2%;
    top: 156px;
    margin-left: 0;
  }
}

.top-main .slide1 .txt {
  color: #fff;
  position: absolute;
  left: 50%;
  top: 196px;
  z-index: 1;
  display: none;
}

.top-main .slide1 .txt.-show {
  display: block;
}

.top-main .slide1 .txt > h2 {
  font-size: 3.1rem;
  line-height: 4.6rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  margin-bottom: 19px;
}

.top-main .slide1 .txt > h2 > span {
  opacity: 0;
  filter: alpha(opacity=0);
  position: relative;
  display: inline-block;
}

.top-main .slide1 .txt p {
  font-size: 1.3rem;
  line-height: 2.4rem;
  letter-spacing: 0.02em;
  position: relative;
}

.top-main .slide1 .txt p > span {
  opacity: 0;
  filter: alpha(opacity=0);
  position: relative;
  display: inline-block;
}

@media screen and (max-width: 750px) {
  .top-main .slide1 .txt {
    width: 84%;
    left: 8%;
    top: auto;
    bottom: 80px;
  }
  .top-main .slide1 .txt > h2 {
    font-size: 2.5rem;
    line-height: 4.0rem;
  }
  .top-main .slide1 .txt p {
    font-size: 1.2rem;
    line-height: 2.4rem;
  }
}

.top-main .slide1 .txt-slide2 {
  color: #fff;
  position: absolute;
  left: 50%;
  top: 196px;
  z-index: 1;
}

.top-main .slide1 .txt-slide2 > h2 {
  font-size: 3.1rem;
  line-height: 4.6rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  margin-bottom: 19px;
}

.top-main .slide1 .txt-slide2 > h2 > span {
  opacity: 0;
  filter: alpha(opacity=0);
  position: relative;
  display: inline-block;
}

.top-main .slide1 .txt-slide2 p {
  font-size: 1.3rem;
  line-height: 2.4rem;
  letter-spacing: 0.02em;
  position: relative;
}

.top-main .slide1 .txt-slide2 p > span {
  opacity: 0;
  filter: alpha(opacity=0);
  position: relative;
  display: inline-block;
}

@media screen and (max-width: 750px) {
  .top-main .slide1 .txt-slide2 {
    width: 84%;
    left: 8%;
    top: auto;
    bottom: 80px;
  }
  .top-main .slide1 .txt-slide2 > h2 {
    font-size: 2.5rem;
    line-height: 4.0rem;
  }
  .top-main .slide1 .txt-slide2 p {
    font-size: 1.2rem;
    line-height: 2.4rem;
  }
}

.top-main .slide1 .dl {
  text-align: center;
  width: 125px;
  height: 125px;
  border-radius: 50% 50%;
  background: #035b90;
  position: absolute;
  left: 50%;
  top: 367px;
  margin-left: 278px;
  opacity: 0;
  filter: alpha(opacity=0);
}

.top-main .slide1 .dl::before {
  content: '';
  width: 0;
  height: 125px;
  background: #000;
  border-radius: 50% 50%;
  -ms-border-radius: 50% 50%;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
  position: absolute;
  left: 50%;
  top: 0;
}

.top-main .slide1 .dl > p {
  font-size: 1.3rem;
  line-height: 1.9rem;
  letter-spacing: 0.02em;
  position: relative;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  color: #fff;
  font-weight: 700;
}

.top-main .slide1 .dl:hover::before {
  width: 100%;
  left: 0;
}

@media screen and (max-width: 750px) {
  .top-main .slide1 .dl {
    margin-left: 70px;
    top: auto;
    bottom: 14px;
  }
}

.top-main .cover {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}

.top-main .cover .cover1 {
  width: 1500px;
  height: 575px;
  overflow: hidden;
  position: absolute;
  right: 50%;
  top: 0;
  margin-right: -120px;
}

.top-main .cover .cover1 > .inner {
  overflow: hidden;
  width: 100%;
  height: 575px;
  position: absolute;
  left: 0;
  top: 0;
  -webkit-transition: all 0.6s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0.55s;
  transition: all 0.6s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0.55s;
}

.top-main .cover .cover1 > .inner > p {
  width: 100%;
  height: 575px;
  position: absolute;
  left: 0;
  top: 0;
}

.top-main .cover .cover1 > .inner > p::before {
  content: '';
  width: 2000px;
  height: 2000px;
  background: #035b90;
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  transform-origin: right center;
  -webkit-transform-origin: right center;
  position: absolute;
  right: 288px;
  top: 50%;
  margin-top: -1000px;
}

.top-main .cover .cover1 > .inner2 {
  top: auto;
  bottom: 0;
  -webkit-transition: all 0.3s ease-out 0.1s;
  transition: all 0.3s ease-out 0.1s;
}

.top-main .cover .cover1 > .inner2 > p {
  top: auto;
  bottom: 0;
}

.top-main .cover .cover1 > .inner2 > p::before {
  background: #fff;
}

.top-main .cover .cover2 {
  width: 1500px;
  height: 575px;
  overflow: hidden;
  position: absolute;
  left: 50%;
  top: 0;
  margin-left: -457px;
}

.top-main .cover .cover2 > .inner {
  overflow: hidden;
  width: 100%;
  height: 575px;
  position: absolute;
  left: 0;
  bottom: 0;
  -webkit-transition: all 0.6s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0.45s;
  transition: all 0.6s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0.45s;
}

.top-main .cover .cover2 > .inner > p {
  width: 100%;
  height: 575px;
  position: absolute;
  left: 0;
  bottom: 0;
}

.top-main .cover .cover2 > .inner > p::before {
  content: '';
  width: 2000px;
  height: 2000px;
  background: #000;
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  transform-origin: left center;
  -webkit-transform-origin: left center;
  position: absolute;
  left: 288px;
  top: 50%;
  margin-top: -1000px;
}

.top-main .cover .cover2 > .inner2 {
  top: 0;
  -webkit-transition: all 0.3s ease-out 0.1s;
  transition: all 0.3s ease-out 0.1s;
}

.top-main .cover .cover2 > .inner2 > p {
  top: 0;
}

.top-main .cover .cover2 > .inner2 > p::before {
  background: #fff;
  left: 287px;
}

.top-main .cover.-load .cover1 .inner {
  height: 0;
}

.top-main .cover.-load .cover2 .inner {
  height: 0;
}

.top-main .pager {
  display: flex;
  display: -webkit-flex;
  justify-content: center;
  -webkit-justify-content: center;
  align-items: center;
  -webkit-align-items: center;
  width: 200px;
  position: absolute;
  left: 50%;
  margin-left: -100px;
  bottom: 47px;
}

.top-main .pager > li {
  margin: 0 7px;
}

.top-main .pager > li > p {
  width: 8px;
  height: 8px;
  border-radius: 50% 50%;
  background: #fff;
  -webkit-transition: all 0.2s linear 0s;
  transition: all 0.2s linear 0s;
  transform: scale(1, 1);
  -webkit-transform: scale(1, 1);
  cursor: pointer;
}

.top-main .pager > li:hover > p {
  background: #035b90;
}

.top-main .pager > li.-current > p {
  transform: scale(2, 2);
  -webkit-transform: scale(2, 2);
  cursor: default;
}

.top-main .pager > li.-current:hover > p {
  background: #fff;
}

.top-topics {
  position: relative;
  padding: 65px 0 40px 0;
}

@media screen and (max-width: 750px) {
  .top-topics {
    height: auto;
    padding: 0;
  }
}

.top-topics > h2 {
  font-size: 1.3rem;
  font-weight: 500;
  line-height: 1.3rem;
  position: absolute;
  left: 90px;
  top: 62px;
  color: #2d2d2d;
}

@media screen and (max-width: 750px) {
  .top-topics > h2 {
   position: relative;
    width: 86%;
    margin: 0 auto 10px auto;
    left: 0;
    top: 0;
    text-align: left;
    padding-top: 30px;
  }
}

.top-topics > p {
  font-size: 1.3rem;
  line-height: 2.3rem;
  /*cursor: pointer;*/
  display: inline-block;
  letter-spacing: 0.02em;
  position: relative;
  padding-bottom: 2px;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  color: #2d2d2d;
}

.top-topics > p::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: 5px;
  width: 100%;
  height: 1px;
  background: #000;
}

.top-topics p a: {
  text-decoration: underline;
  color: #3574e3;
}


.top-topics p a:hover {
  text-decoration: none;
}

@media screen and (max-width: 750px) {
  .top-topics > p {
    width: 86%;
    margin: 0 auto;
    text-align: left;
    padding-bottom: 25px;
    top: 0;
    transform: translateY(0%);
    -webkit-transform: translateY(0%);
  }
  .top-topics > p::after {
    display: none;
  }
}

.top-main2 {
  height: 524px;
  margin-bottom: 134px;
  position: relative;
  color: #fff;
  z-index: 1;
}

@media screen and (max-width: 750px) {
  .top-main2 {
    height: 410px;
    margin-bottom: 70px;
  }
}

.top-main2 .slide1 {
  background: #035b90;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  height: 524px;
  padding-top: 156px;
}

.top-main2 .slide1 > h3 {
  font-size: 3.4rem;
  line-height: 4.4rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  margin-bottom: 24px;
}

.top-main2 .slide1 > h3 span {
  display: inline-block;
  margin: 0 15px;
}

.top-main2 .slide1 > .txt {
  font-size: 1.8rem;
  line-height: 3.6rem;
  letter-spacing: 0.13em;
}

@media screen and (max-width: 750px) {
  .top-main2 .slide1 {
    height: 410px;
    padding-top: 90px;
  }
  .top-main2 .slide1 > h3 {
    font-size: 2.6rem;
    line-height: 4.4rem;
  }
  .top-main2 .slide1 > .txt {
    font-size: 1.6rem;
    line-height: 3.2rem;
  }
}

.top-main2 .slide2 {
  width: 0;
  left: 50%;
  overflow: hidden;
  background: #2d2d2d;
  position: absolute;
  top: 0;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  height: 524px;
  padding-top: 158px;
  -webkit-transition: all 1s cubic-bezier(0.37, 0.82, 0.335, 1.19) 1s;
  transition: all 1s cubic-bezier(0.37, 0.82, 0.335, 1.19) 1s;
}

@media screen and (max-width: 750px) {
  .top-main2 .slide2 {
    height: 410px;
    padding-top: 50px;
  }
}

.top-main2 .slide2 > .inner {
  width: 950px;
  position: relative;
  left: 50%;
  margin-left: -475px;
}

.top-main2 .slide2 > .inner > h3 {
  font-size: 3.3rem;
  line-height: 3.6rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  margin-bottom: 24px;
}

.top-main2 .slide2 > .inner > h3 span {
  display: inline-block;
  margin: 0 15px;
}

.top-main2 .slide2 > .inner > .txt {
  font-size: 1.8rem;
  line-height: 3.6rem;
  letter-spacing: 0.08em;
}

@media screen and (max-width: 750px) {
  .top-main2 .slide2 > .inner > h3 {
    font-size: 2.4rem;
    line-height: 4.0rem;
  }
  .top-main2 .slide2 > .inner > .txt {
    font-size: 1.5rem;
    line-height: 3.2rem;
  }
}

.top-main2 .circle {
  position: absolute;
  width: 76px;
  height: 76px;
  left: 50%;
  margin-left: -38px;
  top: 360px;
  background: #0a4a6e;
  border-radius: 50% 50%;
}

@media screen and (max-width: 750px) {
  .top-main2 .circle {
    top: 275px;
  }
}

.top-main2 .circle::after {
  content: '';
  width: 26px;
  height: 26px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -13px;
  margin-top: -13px;
  background: #035b90;
  border-radius: 50% 50%;
  -webkit-transition: all 0.1s linear 1s;
  transition: all 0.1s linear 1s;
}

.top-main2 .circle > .-l {
  width: 38px;
  height: 76px;
  position: absolute;
  left: 0;
  top: 0;
  overflow: hidden;
}

.top-main2 .circle > .-l > p {
  width: 38px;
  height: 76px;
  position: relative;
  overflow: hidden;
  transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
  transform-origin: right center;
  -webkit-transform-origin: right center;
  -webkit-transition: all 0.5s linear 0s;
  transition: all 0.5s linear 0s;
}

.top-main2 .circle > .-l > p::before {
  content: '';
  width: 76px;
  height: 76px;
  border-radius: 50% 50%;
  background: #fff;
  position: absolute;
  left: 0;
  top: 0;
}

.top-main2 .circle > .-r {
  width: 38px;
  height: 76px;
  position: absolute;
  right: 0;
  top: 0;
  overflow: hidden;
}

.top-main2 .circle > .-r > p {
  width: 38px;
  height: 76px;
  position: relative;
  overflow: hidden;
  transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
  transform-origin: left center;
  -webkit-transform-origin: left center;
  -webkit-transition: all 0.5s linear 0.5s;
  transition: all 0.5s linear 0.5s;
}

.top-main2 .circle > .-r > p::before {
  content: '';
  width: 76px;
  height: 76px;
  border-radius: 50% 50%;
  background: #fff;
  position: absolute;
  right: 0;
  top: 0;
}

.top-main2.-change .slide2 {
  width: 100%;
  left: 0;
}

.top-main2.-change .circle::after {
  background: #2d2d2d;
}

.top-main2.-change .circle .-l p {
  transform: rotate(0deg);
  -webkit-transform: rotate(0deg);
}

.top-main2.-change .circle .-r p {
  transform: rotate(0deg);
  -webkit-transform: rotate(0deg);
}

.top-feature {
  position: relative;
}

.top-feature__wrap {
  position: relative;
}

.top-feature__wrap > .caption > h3 {
  font-size: 2.8rem;
  line-height: 3.7rem;
  font-weight: 700;
  margin-bottom: 24px;
}

.top-feature__wrap > .caption > p {
  font-size: 1.4rem;
  line-height: 2.3rem;
  letter-spacing: 0.02em;
  padding-left: 4px;
}

@media screen and (max-width: 750px) {
  .top-feature__wrap > .caption {
    padding-left: 22.6%;
    width: 75%;
    margin: 0 auto 40px auto;
  }
  .top-feature__wrap > .caption > h3 {
    font-size: 2.4rem;
    line-height: 3.5rem;
    margin-bottom: 15px;
  }
  .top-feature__wrap > .caption > p {
    font-size: 1.3rem;
  }
}

@media screen and (max-width: 750px) {
  .top-feature__wrap {
    margin: 0 auto;
  }
  .top-feature__wrap > .image {
    margin: 0 auto;
  }
}

.top-feature .item {
  position: relative;
}

.top-feature .item > .icon {
  width: 238px;
  height: 238px;
  position: absolute;
  left: 50%;
  top: 0;
}

.top-feature .item > .icon > .circle1 {
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  border-radius: 50% 50%;
  border: 4px solid #f8f8f8;
  width: 238px;
  height: 238px;
  position: absolute;
  left: 0;
  top: 0;
}

.top-feature .item > .icon > .circle2 {
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  border-radius: 50% 50%;
  border: 5px solid #f8f8f8;
  width: 120px;
  height: 120px;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-left: -60px;
  margin-top: -60px;
}

.top-feature .item > .icon > .circle3 {
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  border-radius: 50% 50%;
  border: 5px solid #035b90;
  position: absolute;
  width: 20px;
  height: 20px;
  top: 50%;
  left: 50%;
  margin-left: -10px;
  margin-top: -10px;
}

@media screen and (max-width: 750px) {
  .top-feature .item > .icon {
    margin-left: -70px !important;
    top: -101px !important;
    left: 0 !important;
  }
}

.top-feature .item > .line {
  -webkit-transition: all 0.5s linear 0s;
  transition: all 0.5s linear 0s;
}

.top-feature .item > .line.-hide {
  height: 0;
}

.top-feature .item1 {
  margin-bottom: 120px;
}

.top-feature .item1 .icon {
  margin-left: -549px;
  top: -18px;
}

.top-feature .item1 .icon > .circle1 {
  -webkit-animation: top-feature-circle 2s ease-out infinite;
  animation: top-feature-circle 2s ease-out infinite;
}

.top-feature .item1 .icon > .circle2 {
  -webkit-animation: top-feature-circle 2s ease-out infinite 0.2s;
  animation: top-feature-circle 2s ease-out infinite 0.2s;
}

@media screen and (max-width: 750px) {
  .top-feature .item1 .icon {
    margin-left: 40px;
    top: -40px;
  }
}

.top-feature .item1 .top-feature__wrap {
  z-index: 2;
  max-width: 868px;
  margin: 0 auto;
}

@media screen and (min-width: 751px) {
  .top-feature .item1 .top-feature__wrap {
    display: flex;
    display: -webkit-flex;
    justify-content: space-between;
    -webkit-justify-content: space-between;
    align-items: center;
    -webkit-align-items: center;
  }
  .top-feature .item1 .top-feature__wrap > .caption {
    padding-top: 10px;
    padding-left: 64px;
  }
}

.top-feature .item1 .top-feature__wrap > .image {
  max-width: 366px;
}

@media screen and (max-width: 750px) {
  .top-feature .item1 .top-feature__wrap > .image {
    width: 60%;
  }
}

.top-feature .item1 .line {
  position: absolute;
  width: 387px;
  height: 318px;
  left: 50%;
  top: -224px;
  margin-left: -416px;
  background: url(https://remotelock.kke.co.jp/hubfs/image/renewal2018/top/feature/line1.png);
  background-size: 387px 318px;
  -webkit-background-size: 387px 318px;
  z-index: 1;
  -webkit-transition: all 0.5s linear 1.5s;
  transition: all 0.5s linear 1.5s;
}

.top-feature .item2 {
  margin-bottom: 181px;
}

@media screen and (max-width: 750px) {
  .top-feature .item2 {
    margin-bottom: 90px;
  }
}

.top-feature .item2 .icon {
  margin-left: -119px;
  top: 5px;
}

.top-feature .item2 .icon > .circle1 {
  -webkit-animation: top-feature-circle 2s ease-out infinite 0.5s;
  animation: top-feature-circle 2s ease-out infinite 0.5s;
}

.top-feature .item2 .icon > .circle2 {
  -webkit-animation: top-feature-circle 2s ease-out infinite 0.7s;
  animation: top-feature-circle 2s ease-out infinite 0.7s;
}

@media screen and (max-width: 750px) {
  .top-feature .item2 .icon {
    margin-left: -250px;
    top: 85px;
  }
}

@media screen and (min-width: 751px) {
  .top-feature .item2 .top-feature__wrap {
    display: flex;
    display: -webkit-flex;
    justify-content: space-between;
    -webkit-justify-content: space-between;
    align-items: center;
    -webkit-align-items: center;
    flex-flow: row-reverse;
    -webkit-flex-flow: row-reverse;
    max-width: 736px;
    margin: 0 auto;
  }
  .top-feature .item2 .top-feature__wrap > .caption {
    padding-top: 38px;
    padding-right: 19px;
  }
}

.top-feature .item2 .top-feature__wrap > .image {
  width: 188px;
}

@media screen and (max-width: 750px) {
  .top-feature .item2 .top-feature__wrap > .image {
    width: 40%;
  }
}

.top-feature .item2 .line {
  position: absolute;
  width: 399px;
  height: 380px;
  left: 50%;
  top: -262px;
  margin-left: -415px;
  background: url(https://remotelock.kke.co.jp/hubfs/image/renewal2018/top/feature/line2.png);
  background-size: 399px 380px;
  -webkit-background-size: 399px 380px;
  z-index: 1;
}

.top-feature .item3 {
  margin-bottom: 82px;
}

.top-feature .item3 .icon {
  margin-left: -438px;
  top: -98px;
}

.top-feature .item3 .icon > .circle1 {
  -webkit-animation: top-feature-circle 2s ease-out infinite 1s;
  animation: top-feature-circle 2s ease-out infinite 1s;
}

.top-feature .item3 .icon > .circle2 {
  -webkit-animation: top-feature-circle 2s ease-out infinite 1.2s;
  animation: top-feature-circle 2s ease-out infinite 1.2s;
}

@media screen and (max-width: 750px) {
  .top-feature .item3 .icon {
    margin-left: 38px;
    top: 48px;
  }
}

.top-feature .item3 .top-feature__wrap > .image {
  position: absolute;
  right: -11px;
  top: -215px;
  max-width: 402px;
}

@media screen and (max-width: 750px) {
  .top-feature .item3 .top-feature__wrap > .image {
    width: 100%;
    position: relative;
    right: 0;
    top: 0;
    text-align: right;
    margin-bottom: 20px;
  }
  .top-feature .item3 .top-feature__wrap > .image img {
    width: 70%;
  }
}

.top-feature .item3 .top-feature__wrap > .caption {
  width: 504px;
  margin: 0 auto;
}

.top-feature .item3 .top-feature__wrap > .caption > h3 {
  margin-bottom: 19px;
}

@media screen and (max-width: 750px) {
  .top-feature .item3 .top-feature__wrap > .caption {
    width: 86%;
    margin: 0 auto;
  }
}

.top-feature .item3 .line {
  position: absolute;
  width: 289px;
  height: 336px;
  left: 50%;
  top: -339px;
  margin-left: -300px;
  background: url(https://remotelock.kke.co.jp/hubfs/image/renewal2018/top/feature/line3.png);
  background-size: 289px 336px;
  -webkit-background-size: 289px 336px;
  z-index: 1;
}

.top-feature .item4 {
  margin-bottom: 148px;
}

@media screen and (max-width: 750px) {
  .top-feature .item4 {
    margin-bottom: 80px;
  }
}

.top-feature .item4 .icon {
  margin-left: -131px;
  top: 73px;
}

.top-feature .item4 .icon > .circle1 {
  -webkit-animation: top-feature-circle 2s ease-out infinite 1.5s;
  animation: top-feature-circle 2s ease-out infinite 1.5s;
}

.top-feature .item4 .icon > .circle2 {
  -webkit-animation: top-feature-circle 2s ease-out infinite 1.7s;
  animation: top-feature-circle 2s ease-out infinite 1.7s;
}

@media screen and (max-width: 750px) {
  .top-feature .item4 .icon {
    margin-left: -131px;
    top: -123px;
  }
}

@media screen and (min-width: 751px) {
  .top-feature .item4 .top-feature__wrap {
    display: flex;
    display: -webkit-flex;
    justify-content: space-between;
    -webkit-justify-content: space-between;
    align-items: center;
    -webkit-align-items: center;
    flex-flow: row-reverse;
    -webkit-flex-flow: row-reverse;
    align-items: flex-end;
    -webkit-align-items: flex-end;
    max-width: 1146px;
    margin: 0 auto;
  }
  .top-feature .item4 .top-feature__wrap > .caption {
    padding-bottom: 14px;
    padding-right: 54px;
  }
}

.top-feature .item4 .top-feature__wrap > .image {
  width: 424px;
}

@media screen and (max-width: 750px) {
  .top-feature .item4 .top-feature__wrap > .image {
    width: 80%;
  }
}

.top-feature .item4 .top-feature__wrap > .caption > h3 {
  margin-bottom: 20px;
}

.top-feature .item4 .top-feature__wrap > .caption > p {
  font-size: 1.2rem;
  line-height: 2.3rem;
}

.top-feature .item4 .line {
  position: absolute;
  width: 228px;
  height: 315px;
  left: 50%;
  top: -138px;
  margin-left: -299px;
  background: url(https://remotelock.kke.co.jp/hubfs/image/renewal2018/top/feature/line4.png) no-repeat;
  background-size: 208px 315px;
  -webkit-background-size: 208px 315px;
  transform: rotate(-9deg);
  -webkit-transform: rotate(-9deg);
  transform-origin: left top;
  -webkit-transform-origin: left top;
  z-index: 1;
}

.top-partner {
  /*margin: 0 auto 86px auto;*/
  margin: auto;
  max-width: 1220px;
}

.top-airbnb {
  padding: 90px 0;
  background: #f7f7f7;
}

@media screen and (max-width: 750px) {
  .top-airbnb {
    padding: 50px 0;
  }
}

.top-airbnb__wrap {
  /*max-width: 682px;*/
  max-width: 760px;
  margin: 0 auto;
}

@media screen and (min-width: 751px) {
  .top-airbnb__wrap {
    display: flex;
    display: -webkit-flex;
    justify-content: space-between;
    -webkit-justify-content: space-between;
    align-items: center;
    -webkit-align-items: center;
  }
}

@media screen and (max-width: 750px) {
  .top-airbnb__wrap {
    width: 73.3%;
  }
}

.top-airbnb__wrap > .logo {
  width: 270px;
  padding-left: 13px;
}

@media screen and (max-width: 750px) {
  .top-airbnb__wrap > .logo {
    width: 100%;
    text-align: center;
    margin-bottom: 40px;
    padding-left: 0;
  }
  .top-airbnb__wrap > .logo img {
    width: 82px;
  }
}

.top-airbnb__wrap > .caption > h2 {
  font-size: 2.5rem;
  font-weight: 700;
  margin-bottom: 26px;
}

@media screen and (max-width: 750px) {
  .top-airbnb__wrap > .caption > h2 {
    font-size: 2.4rem;
    line-height: 3.3rem;
    text-align: center;
  }
}

.top-airbnb__wrap > .caption > .txt {
  font-size: 1.3rem;
  line-height: 2.3rem;
  letter-spacing: 0.02em;
  margin-bottom: 10px;
}

.top-airbnb__wrap > .caption > .note {
  font-size: 1.1rem;
  line-height: 1.9rem;
}

.top-airbnb__wrap > .caption > .note > li {
  position: relative;
  padding-left: 13px;
}

.top-airbnb__wrap > .caption > .note > li::before {
  content: '※';
  position: absolute;
  left: 0;
  top: 0;
}

.top-products {
  max-width: 1220px;
  margin: 0 auto 98px auto;
  position: relative;
}

.top-products h2 {
  font-size: 2.4rem;
  font-weight: 700;
  margin-bottom: 27px;
  padding-left: 77px;
}

@media screen and (max-width: 750px) {
  .top-products h2 {
    padding-left: 0;
    width: 86%;
    margin: 0 auto 20px auto;
    font-size: 1.9rem;
  }
}

.top-products .link-more {
  position: absolute;
  right: 50px;
  top: 2px;
}

@media screen and (max-width: 750px) {
  .top-products .link-more {
    right: 7%;
  }
}

.top-products__list {
  border: 1px solid #ececec;
  max-width: 1220px;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  margin: 0 auto;
}

@media screen and (min-width: 751px) {
  .top-products__list {
    display: flex;
    display: -webkit-flex;
    justify-content: center;
    -webkit-justify-content: center;
    align-items: flex-start;
    -webkit-align-items: flex-start;
  }
}

@media screen and (max-width: 750px) {
  .top-products__list {
    width: 86%;
  }
}

.top-products__list > li {
  width: 33.3%;
  text-align: center;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
}

@media screen and (max-width: 750px) {
  .top-products__list > li {
    width: 100% !important;
  }
}

.top-products__list > li > a {
  display: block;
  box-shadow: 0 0px 0px rgba(0, 0, 0, 0.2);
  padding-bottom: 42px;
  overflow: hidden;
}

.top-products__list > li > a:hover {
  z-index: 1;
}

.top-products__list > li > a > .image {
  margin: 0 auto 48px auto;
  max-width: 405px;
  position: relative;
}

.top-products__list > li > a > .image::before {
  content: '';
  display: block;
  width: 100%;
  padding-top: 91.3%;
  left: 0;
  top: 0;
}

.top-products__list > li > a > .image > .item {
  width: 100%;
  position: absolute;
  left: 100%;
  top: 0;
}

.top-products__list > li > a > .image > .item:first-of-type {
  left: 0;
}

.top-products__list > li > a > .image .pager {
  width: 100%;
  left: 0;
  position: absolute;
  bottom: -19px;
  display: flex;
  display: -webkit-flex;
  justify-content: center;
  -webkit-justify-content: center;
  align-items: flex-start;
  -webkit-align-items: flex-start;
}

.top-products__list > li > a > .image .pager-item {
  width: 7px;
  height: 7px;
  border-radius: 50% 50%;
  background: #656565;
  margin: 0 7px;
}

.top-products__list > li > a > .image .pager-item.-current {
  transform: scale(2.1, 2.1);
  -webkit-transform: scale(2.1, 2.1);
  background: #035b90;
}

.top-products__list > li > a > .name {
  font-size: 2.3rem;
  line-height: 2.8rem;
  font-weight: 500;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  padding-top: 19px;
  height: 71px;
  padding-left: 0;
  margin-bottom: 0;
}

.top-products__list > li > a > .name.-acs {
  padding-top: 0;
}

.top-products__list > li > a > .txt {
  font-size: 1.4rem;
  line-height: 2.4rem;
  margin-bottom: 66px;
}

.top-products__list > li > a > .icon {
  width: 30px;
  height: 30px;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  margin: 0 auto;
  border-radius: 50% 50%;
  border: 3px solid #000;
  position: relative;
}

.top-products__list > li > a > .icon::before {
  content: '';
  width: 2px;
  height: 8px;
  background: #000;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -1px;
  margin-top: -4px;
}

.top-products__list > li > a > .icon::after {
  content: '';
  width: 8px;
  height: 2px;
  background: #000;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -4px;
  margin-top: -1px;
}

.top-products__list > li.-center {
  width: 33.4%;
}

@media screen and (min-width: 751px) {
  .top-products__list > li.-center {
    border-right: 1px solid #ececec;
    border-left: 1px solid #ececec;
  }
}

@media screen and (max-width: 750px) {
  .top-products__list > li.-center {
    border-top: 1px solid #ececec;
    border-bottom: 1px solid #ececec;
  }
}

.top-products__link.-dl {
  box-sizing: border-box !important;
  -webkit-box-sizing: border-box !important;
  display: block;
  text-align: center;
  font-size: 1.4rem;
  line-height: 2.0rem;
  height: 148px;
  padding-top: 63px;
  position: relative;
  max-width: 1220px;
  margin: 0 auto;
  border-left: 1px solid #ececec;
  border-right: 1px solid #ececec;
  border-bottom: 1px solid #ececec;
}

@media screen and (max-width: 750px) {
  .top-products__link.-dl {
    width: 86%;
    height: 110px;
    padding-top: 44px;
  }
}

.top-products__link.-dl::before {
  content: '';
  position: absolute;
  left: 50%;
  top: 0;
  width: 0;
  height: 100%;
  -webkit-transition: all 0.3s ease-out 0s;
  transition: all 0.3s ease-out 0s;
  background: #035b90;
}

.top-products__link.-dl > .txt {
  position: relative;
  -webkit-transition: all 0.3s ease-out 0s;
  transition: all 0.3s ease-out 0s;
}

.top-products__link.-dl > .icon {
  width: 35px;
  position: relative;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-top: -18px;
  margin-left: 93px;
}

.top-products__link.-dl > .icon img {
  position: relative;
  top: 0;
  -webkit-transition: all 0.2s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0s;
  transition: all 0.2s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0s;
  opacity: 1;
  filter: alpha(opacity=100);
}

.top-products__link.-dl::after {
  content: '';
  width: 35px;
  height: 35px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-top: -18px;
  margin-left: 93px;
  background: url(https://remotelock.kke.co.jp/hubfs/image/renewal2018/top/product/icon_on.png) no-repeat 0 0;
  background-size: contain;
  -webkit-background-size: contain;
  opacity: 0;
  filter: alpha(opacity=0);
  -webkit-transition: all 0.2s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0s;
  transition: all 0.2s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0s;
}

.top-products__link.-dl:hover::before {
  width: 100%;
  left: 0;
}

.top-products__link.-dl:hover::after {
  opacity: 1;
  filter: alpha(opacity=100);
  margin-top: -12px;
}

.top-products__link.-dl:hover > .icon img {
  top: 6px;
  opacity: 0;
  filter: alpha(opacity=0);
}

.top-products__link.-dl:hover > .txt {
  color: #fff;
}

.top-dl {
  max-width: 1220px;
  margin: 0 auto 108px auto;
  position: relative;
  display: none;
}

@media screen and (max-width: 750px) {
  .top-dl {
    margin-bottom: 85px;
  }
}

.top-dl h2 {
  font-size: 2.4rem;
  font-weight: 700;
  margin-bottom: 27px;
  padding-left: 77px;
}

@media screen and (max-width: 750px) {
  .top-dl h2 {
    padding-left: 0;
    width: 86%;
    margin: 0 auto 20px auto;
  }
}

.top-dl > .lead {
  font-size: 1.4rem;
  line-height: 2.3rem;
  margin-bottom: 30px;
  font-weight: 500;
}

.top-dl__link {
  border: 1px solid #ececec;
}

@media screen and (min-width: 1001px) {
  .top-dl__link {
    display: flex;
    display: -webkit-flex;
    justify-content: center;
    -webkit-justify-content: center;
    align-items: top;
    -webkit-align-items: top;
  }
}

.top-dl__link .top-products__link.-dl {
  box-sizing: border-box !important;
  -webkit-box-sizing: border-box !important;
  border-left: none;
  border-right: none;
  padding-top: 56px;
}

@media screen and (min-width: 1001px) {
  .top-dl__link .top-products__link.-dl {
    width: 100%;
    border-bottom: none;
  }
  .top-dl__link .top-products__link.-dl:nth-child(2) {
    width: 100%;
    border-left: 1px solid #ececec;
    border-right: 1px solid #ececec;
  }
}

.top-dl__link .top-products__link.-dl > .icon {
  left: auto;
  right: 20px;
}

@media screen and (min-width: 751px) and (max-width: 1000px) {
  .top-dl__link .top-products__link.-dl {
    padding-top: 63px;
  }
  .top-dl__link .top-products__link.-dl > .txt br {
    display: none;
  }
}

.top-case {
  max-width: 1220px;
  margin: 0 auto 105px auto;
  position: relative;
}

@media screen and (max-width: 750px) {
  .top-case {
    margin-bottom: 45px;
  }
}

.top-case h2 {
  font-size: 2.4rem;
  font-weight: 700;
  margin-bottom: 32px;
  padding-left: 69px;
}

@media screen and (max-width: 750px) {
  .top-case h2 {
    padding-left: 0;
    width: 86%;
    margin: 0 auto 20px auto;
    font-size: 1.9rem;
  }
}

.top-case .lead {
  width: 100%;
  position: absolute;
  left: 0;
  top: 0;
  font-size: 1.2rem;
  line-height: 2.3rem;
}

@media screen and (max-width: 750px) {
  .top-case .lead {
    position: relative;
    margin-bottom: 20px;
    text-align: left !important;
    width: 86%;
    margin: 0 auto 35px auto;
  }
}

.top-case .link-more {
  position: absolute;
  right: 50px;
  top: 2px;
}

@media screen and (max-width: 750px) {
  .top-case .link-more {
    right: 7%;
  }
}

.top-case__list ul {
  letter-spacing: -.40em;
}

.top-case__list ul > .item {
  letter-spacing: normal;
  width: 50%;
  display: inline-block;
  vertical-align: top;
  text-align: center;
  position: relative;
}

@media screen and (max-width: 750px) {
  .top-case__list ul > .item {
    width: 100%;
    margin-bottom: 25px;
  }
}

.top-case__list ul > .item a > .hover {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background: #035b90;
  opacity: 0;
  filter: alpha(opacity=0);
  -webkit-transition: all 0.3s ease-out 0s;
  transition: all 0.3s ease-out 0s;
  overflow: hidden;
  cursor: pointer;
}

@media screen and (max-width: 750px) {
  .top-case__list ul > .item a > .hover {
    opacity: 1;
    filter: alpha(opacity=100);
    position: relative;
  }
}

@media screen and (max-width: 750px) {
  .top-case__list ul > .item a > .hover {
    width: 86%;
    margin: 0 auto;
    background: transparent;
  }
}

.top-case__list ul > .item a > .hover > .inner {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -39%);
  -webkit-transform: translate(-50%, -39%);
  width: 300px;
}

@media screen and (max-width: 750px) {
  .top-case__list ul > .item a > .hover > .inner {
    width: 100%;
    left: 0;
    top: 0;
    transform: translate(0, 0);
    -webkit-transform: translate(0, 0);
    position: relative;
    margin-bottom: 10px;
  }
}

.top-case__list ul > .item a > .hover > .inner > .txt {
  font-size: 2.1rem;
  font-weight: 700;
  color: #fff;
  margin-bottom: 24px;
}

@media screen and (max-width: 750px) {
  .top-case__list ul > .item a > .hover > .inner > .txt {
    position: relative;
    left: 0;
    top: 0;
    font-size: 1.5rem;
    margin-bottom: 0;
    color: #000;
    text-align: left;
  }
}

.top-case__list ul > .item a > .hover > .inner > .icon {
  width: 30px;
  height: 30px;
  margin: 0 auto;
  border-radius: 50% 50%;
  border: 3px solid #fff;
  position: relative;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
}

@media screen and (max-width: 750px) {
  .top-case__list ul > .item a > .hover > .inner > .icon {
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-52%);
    -webkit-transform: translateY(-52%);
    font-size: 1.5rem;
    margin-bottom: 0;
  }
}

.top-case__list ul > .item a > .hover > .inner > .icon::before {
  content: '';
  width: 2px;
  height: 8px;
  background: #fff;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
}

.top-case__list ul > .item a > .hover > .inner > .icon::after {
  content: '';
  width: 8px;
  height: 2px;
  background: #fff;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
}

.top-case__list ul > .item a:hover > .hover {
  opacity: 0.95;
  filter: alpha(opacity=95);
}

.top-news {
  max-width: 1120px;
  margin: 0 auto;
  position: relative;
}

.top-news__wrap {
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  padding-left: 288px;
  margin-bottom: 73px;
}

@media screen and (max-width: 750px) {
  .top-news__wrap {
    width: 86%;
    margin: 0 auto 40px auto;
    padding-left: 0;
  }
}

.top-news h2 {
  font-size: 2.4rem;
  font-weight: 700;
  margin-bottom: 32px;
  padding-left: 20px;
  position: absolute;
  top: 2px;
  left: 0;
}

@media screen and (max-width: 750px) {
  .top-news h2 {
    padding-left: 0;
    width: 86%;
    margin: 0 auto 20px auto;
    position: relative;
    font-size: 1.9rem;
  }
}

.top-news__new {
  color: #035b90;
  font-size: 1.2rem;
  font-weight: 500;
  position: absolute;
  left: 230px;
  top: -29px;
}

@media screen and (max-width: 750px) {
  .top-news__new {
    left: 0;
    top: 0;
    width: 86%;
    margin: 0 auto 20px auto;
    position: relative;
  }
}

.top-news__list > li {
  position: relative;
  margin-bottom: 12px;
}

@media screen and (max-width: 750px) {
  .top-news__list > li {
    padding-left: 20px;
    margin-bottom: 30px;
  }
}

.top-news__list > li > .date {
  display: inline-block;
  vertical-align: top;
  font-family: 'poppins';
  font-size: 1.2rem;
  line-height: 1.8rem;
  font-weight: 500;
  width: 96px;
  padding-top: 2px;
  position: relative;
}

@media screen and (max-width: 750px) {
  .top-news__list > li > .date {
    font-size: 1.3rem;
    display: block;
    margin-bottom: 8px;
  }
}

.top-news__list > li > .date > .new {
  position: absolute;
  width: 7px;
  height: 7px;
  background: #035b90;
  border-radius: 50% 50%;
  left: -46px;
  top: 7px;
}

@media screen and (max-width: 750px) {
  .top-news__list > li > .date > .new {
    left: -20px;
  }
}

.top-news__list > li > .title {
  display: inline-block;
  vertical-align: top;
  font-size: 1.3rem;
  line-height: 2.2rem;
}

.top-news__list > li > .title a:hover {
  text-decoration: underline;
}

.top-mm {
  margin-bottom: 0;
}

@media screen and (max-width: 750px) {
  .top-mm {
    width: 86%;
    margin: 0 auto;
  }
}

.top-mm__btn {
  /*border-top: 1.5px solid #e0e0e0;*/
  border-top: 1.5px solid #535353;
  border-bottom: 1.5px solid #535353;
  position: relative;
  cursor: pointer;
}

.top-mm__btn > .txt {
  font-size: 1.5rem;
  font-weight: 700;
  padding: 31px 0;
}

.top-mm__btn > .icon {
  width: 35px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-top: -18px;
  margin-left: 138px;
}

.top-mm__btn > .icon img {
  position: relative;
  top: 0;
  transform: rotate(0deg);
  -webkit-transform: rotate(0deg);
  -webkit-transition: all 0.2s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0s;
  transition: all 0.2s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0s;
}

@media screen and (max-width: 750px) {
  .top-mm__btn > .icon {
    left: auto;
    margin-left: 0;
    right: 20px;
  }
}

.top-mm__btn:hover > .icon img {
  top: 6px;
}

.top-mm.-open .top-mm__btn > .icon img {
  transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
}

.top-mm.-open .top-mm__btn:hover > .icon img {
  top: -6px;
}

.form-mm {
  margin-bottom: 92px;
  max-height: 0;
  overflow: hidden;
}

.form-mm.-open {
  max-height: 1000px;
}

@media screen and (min-width: 751px) {
  .form-mm .hs_cos_wrapper_type_form {
    max-width: 630px;
  }
  .form-mm .hs_cos_wrapper_type_form label {
    width: 160px;
    text-align: right;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    padding-right: 15px;
  }
  .form-mm .hs_cos_wrapper_type_form div.input {
    width: 470px;
    margin-right: 0 !important;
    display: inline-block;
  }
  .form-mm .hs_cos_wrapper_type_form .hs-error-msgs label {
    width: 100% !important;
    padding-right: 0;
  }
  .form-mm .hs_cos_wrapper_type_form select, .form-mm .hs_cos_wrapper_type_form input[type=text], .form-mm .hs_cos_wrapper_type_form input[type=tel], .form-mm .hs_cos_wrapper_type_form input[type=email] {
    width: 100% !important;
  }
  .form-mm .hs_cos_wrapper_type_form fieldset.form-columns-3 .hs-form-field {
    width: 50%;
  }
  .form-mm .hs_cos_wrapper_type_form fieldset.form-columns-3 .hs-form-field:nth-child(1) {
    width: 360px;
  }
  .form-mm .hs_cos_wrapper_type_form fieldset.form-columns-3 .hs-form-field:nth-child(1) div.input {
    width: 200px;
  }
  .form-mm .hs_cos_wrapper_type_form fieldset.form-columns-3 .hs-form-field:nth-child(2) {
    width: 270px;
  }
  .form-mm .hs_cos_wrapper_type_form fieldset.form-columns-3 .hs-form-field:nth-child(2) label {
    width: 70px;
  }
  .form-mm .hs_cos_wrapper_type_form fieldset.form-columns-3 .hs-form-field:nth-child(2) div.input {
    width: 200px;
  }
  .form-mm .hs_cos_wrapper_type_form fieldset.form-columns-3 .hs-form-field:last-of-type {
    width: 100%;
    margin-top: 20px;
  }
}

@media screen and (max-width: 750px) {
  .form-mm .hs_cos_wrapper_type_form {
    width: 86%;
    margin: 0 auto;
  }
  .form-mm .hs_cos_wrapper_type_form select, .form-mm .hs_cos_wrapper_type_form input[type=text], .form-mm .hs_cos_wrapper_type_form input[type=tel], .form-mm .hs_cos_wrapper_type_form input[type=email] {
    width: 100% !important;
  }
  .form-mm .hs_cos_wrapper_type_form div.input {
    margin-right: 0;
  }
  .form-mm .hs_cos_wrapper_type_form fieldset.form-columns-3 .hs-form-field {
    width: 100%;
    margin-bottom: 10px;
  }
  .form-mm .hs_cos_wrapper_type_form .hs-submit {
    margin-top: 50px;
  }
}

.form-mm form {
  padding-top: 65px;
}

@media screen and (max-width: 750px) {
  .form-mm form {
    padding-top: 40px;
    margin: 0 20px;
  }
}

@-webkit-keyframes top-feature-circle {
  0% {
    opacity: 0;
    filter: alpha(opacity=0);
    transform: scale(0, 0);
    -webkit-transform: scale(0, 0);
  }
  10% {
    opacity: 0;
    filter: alpha(opacity=0);
    transform: scale(0, 0);
    -webkit-transform: scale(0, 0);
  }
  80% {
    opacity: 1;
    filter: alpha(opacity=100);
  }
  100% {
    opacity: 0;
    filter: alpha(opacity=0);
    transform: scale(1.14, 1.14);
    -webkit-transform: scale(1.14, 1.14);
  }
}

@keyframes top-feature-circle {
  0% {
    opacity: 0;
    filter: alpha(opacity=0);
    transform: scale(0, 0);
    -webkit-transform: scale(0, 0);
  }
  10% {
    opacity: 0;
    filter: alpha(opacity=0);
    transform: scale(0, 0);
    -webkit-transform: scale(0, 0);
  }
  80% {
    opacity: 1;
    filter: alpha(opacity=100);
  }
  100% {
    opacity: 0;
    filter: alpha(opacity=0);
    transform: scale(1.14, 1.14);
    -webkit-transform: scale(1.14, 1.14);
  }
}

@-webkit-keyframes top-lock-btn {
  0% {
    opacity: 0;
    filter: alpha(opacity=0);
  }
  50% {
    opacity: 1;
    filter: alpha(opacity=100);
  }
  100% {
    opacity: 0;
    filter: alpha(opacity=0);
  }
}

@keyframes top-lock-btn {
  0% {
    opacity: 0;
    filter: alpha(opacity=0);
  }
  50% {
    opacity: 1;
    filter: alpha(opacity=100);
  }
  100% {
    opacity: 0;
    filter: alpha(opacity=0);
  }
}

@-webkit-keyframes top-dot1 {
  0% {
    opacity: 0;
    filter: alpha(opacity=0);
  }
  50% {
    opacity: 0.2;
    filter: alpha(opacity=20);
  }
  100% {
    opacity: 0.3;
    filter: alpha(opacity=30);
  }
}

@keyframes top-dot1 {
  0% {
    opacity: 0;
    filter: alpha(opacity=0);
  }
  50% {
    opacity: 0.2;
    filter: alpha(opacity=20);
  }
  100% {
    opacity: 0.3;
    filter: alpha(opacity=30);
  }
}

@-webkit-keyframes top-dot1--hide {
  0% {
    opacity: 0.3;
    filter: alpha(opacity=30);
  }
  100% {
    opacity: 0;
    filter: alpha(opacity=0);
  }
}

@keyframes top-dot1--hide {
  0% {
    opacity: 0.3;
    filter: alpha(opacity=30);
  }
  100% {
    opacity: 0;
    filter: alpha(opacity=0);
  }
}

@-webkit-keyframes top-dot2 {
  0% {
    opacity: 0;
    filter: alpha(opacity=0);
  }
  20% {
    opacity: 0.25;
    filter: alpha(opacity=25);
  }
  40% {
    opacity: 0;
    filter: alpha(opacity=0);
  }
  100% {
    opacity: 0.2;
    filter: alpha(opacity=20);
  }
}

@keyframes top-dot2 {
  0% {
    opacity: 0;
    filter: alpha(opacity=0);
  }
  20% {
    opacity: 0.25;
    filter: alpha(opacity=25);
  }
  40% {
    opacity: 0;
    filter: alpha(opacity=0);
  }
  100% {
    opacity: 0.2;
    filter: alpha(opacity=20);
  }
}

@-webkit-keyframes top-dot2--hide {
  0% {
    opacity: 0.2;
    filter: alpha(opacity=20);
  }
  100% {
    opacity: 0;
    filter: alpha(opacity=0);
  }
}

@keyframes top-dot2--hide {
  0% {
    opacity: 0.2;
    filter: alpha(opacity=20);
  }
  100% {
    opacity: 0;
    filter: alpha(opacity=0);
  }
}

@-webkit-keyframes top-dot3 {
  0% {
    opacity: 0;
    filter: alpha(opacity=0);
  }
  20% {
    opacity: 0;
    filter: alpha(opacity=0);
  }
  40% {
    opacity: 0.25;
    filter: alpha(opacity=25);
  }
  100% {
    opacity: 0.1;
    filter: alpha(opacity=10);
  }
}

@keyframes top-dot3 {
  0% {
    opacity: 0;
    filter: alpha(opacity=0);
  }
  20% {
    opacity: 0;
    filter: alpha(opacity=0);
  }
  40% {
    opacity: 0.25;
    filter: alpha(opacity=25);
  }
  100% {
    opacity: 0.1;
    filter: alpha(opacity=10);
  }
}

@-webkit-keyframes top-dot3--hide {
  0% {
    opacity: 0.1;
    filter: alpha(opacity=10);
  }
  100% {
    opacity: 0;
    filter: alpha(opacity=0);
  }
}

@keyframes top-dot3--hide {
  0% {
    opacity: 0.1;
    filter: alpha(opacity=10);
  }
  100% {
    opacity: 0;
    filter: alpha(opacity=0);
  }
}

@-webkit-keyframes top-dot4 {
  0% {
    opacity: 0;
    filter: alpha(opacity=0);
  }
  20% {
    opacity: 0;
    filter: alpha(opacity=0);
  }
  40% {
    opacity: 0.3;
    filter: alpha(opacity=30);
  }
  60% {
    opacity: 0.3;
    filter: alpha(opacity=30);
  }
  100% {
    opacity: 0;
    filter: alpha(opacity=0);
  }
}

@keyframes top-dot4 {
  0% {
    opacity: 0;
    filter: alpha(opacity=0);
  }
  20% {
    opacity: 0;
    filter: alpha(opacity=0);
  }
  40% {
    opacity: 0.3;
    filter: alpha(opacity=30);
  }
  60% {
    opacity: 0.3;
    filter: alpha(opacity=30);
  }
  100% {
    opacity: 0;
    filter: alpha(opacity=0);
  }
}

@-webkit-keyframes top-dot5 {
  0% {
    opacity: 0;
    filter: alpha(opacity=0);
  }
  60% {
    opacity: 0;
    filter: alpha(opacity=0);
  }
  80% {
    opacity: 0.4;
    filter: alpha(opacity=40);
  }
  100% {
    opacity: 0.2;
    filter: alpha(opacity=20);
  }
}

@keyframes top-dot5 {
  0% {
    opacity: 0;
    filter: alpha(opacity=0);
  }
  60% {
    opacity: 0;
    filter: alpha(opacity=0);
  }
  80% {
    opacity: 0.4;
    filter: alpha(opacity=40);
  }
  100% {
    opacity: 0.2;
    filter: alpha(opacity=20);
  }
}

@-webkit-keyframes top-dot5--hide {
  0% {
    opacity: 0.2;
    filter: alpha(opacity=20);
  }
  100% {
    opacity: 0;
    filter: alpha(opacity=0);
  }
}

@keyframes top-dot5--hide {
  0% {
    opacity: 0.2;
    filter: alpha(opacity=20);
  }
  100% {
    opacity: 0;
    filter: alpha(opacity=0);
  }
}

/*------------------------------------------------------*/
/*  product - index*/
/*------------------------------------------------------*/
.product-main {
  width: 100%;
  height: 569px;
  position: relative;
}

@media screen and (max-width: 750px) {
  .product-main {
    height: auto;
    margin-bottom: 82px;
  }
}

.product-main > .lead {
  width: 90%;
  max-width: 974px;
  margin: 0 auto;
  padding-top: 92px;
}

.product-main > .lead > h2 {
  font-size: 3.1rem;
  line-height: 4.5rem;
  font-weight: 700;
  width: 300px;
  margin-bottom: 32px;
}

.product-main > .lead > p {
  font-size: 1.2rem;
  line-height: 2.1rem;
  width: 290px;
}

@media screen and (max-width: 750px) {
  .product-main > .lead {
    width: 78.6%;
    padding-top: 240px;
  }
  .product-main > .lead > h2 {
    font-size: 2.6rem;
    line-height: 4.0rem;
    width: 100%;
    margin-bottom: 22px;
  }
  .product-main > .lead > p {
    width: 100%;
  }
}

.product-main > .product {
  width: 635px;
  position: absolute;
  left: 50%;
  top: -190px;
  margin-left: -48px;
}

.product-main > .product img {
  position: relative;
  top: 0;
}

@media screen and (max-width: 750px) {
  .product-main > .product {
    width: 89.3%;
    left: 28.5%;
    margin-left: 0;
    top: -100px;
  }
}

.product-list {
  border: 1px solid #ececec;
  max-width: 1220px;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  margin: 0 auto;
}

@media screen and (min-width: 751px) {
  .product-list {
    display: flex;
    display: -webkit-flex;
    justify-content: center;
    -webkit-justify-content: center;
    align-items: flex-start;
    -webkit-align-items: flex-start;
  }
}

@media screen and (max-width: 750px) {
  .product-list {
    width: 86%;
  }
}

.product-list > li {
  width: 33.3%;
  text-align: center;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
}

@media screen and (max-width: 750px) {
  .product-list > li {
    width: 100% !important;
  }
}

.product-list > li > a {
  display: block;
  box-shadow: 0 0px 0px rgba(0, 0, 0, 0.2);
  padding-bottom: 42px;
  overflow: hidden;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}

.product-list > li > a:hover {
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.2);
  z-index: 1;
}

.product-list > li > a > .image {
  margin: 0 auto 48px auto;
  max-width: 405px;
  position: relative;
}

.product-list > li > a > .image::before {
  content: '';
  display: block;
  width: 100%;
  padding-top: 91.3%;
  left: 0;
  top: 0;
}

.product-list > li > a > .image > .item {
  width: 100%;
  position: absolute;
  left: 100%;
  top: 0;
}

.product-list > li > a > .image > .item:first-of-type {
  left: 0;
}

.product-list > li > a > .image .pager {
  width: 100%;
  left: 0;
  position: absolute;
  bottom: -19px;
  display: flex;
  display: -webkit-flex;
  justify-content: center;
  -webkit-justify-content: center;
  align-items: flex-start;
  -webkit-align-items: flex-start;
}

.product-list > li > a > .image .pager-item {
  width: 7px;
  height: 7px;
  border-radius: 50% 50%;
  background: #656565;
  margin: 0 7px;
}

.product-list > li > a > .image .pager-item.-current {
  transform: scale(2.1, 2.1);
  -webkit-transform: scale(2.1, 2.1);
  background: #035b90;
}

.product-list > li > a > .name {
  font-size: 2.3rem;
  line-height: 2.8rem;
  font-weight: 500;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  padding-top: 19px;
  height: 71px;
  padding-left: 0;
  margin-bottom: 0;
}

.product-list > li > a > .name.-acs {
  padding-top: 0;
}

.product-list > li > a > .txt {
  font-size: 1.2rem;
  line-height: 1.9rem;
  margin-bottom: 34px;
}

.product-list > li > a > .icon {
  width: 30px;
  height: 30px;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  margin: 0 auto;
  border-radius: 50% 50%;
  border: 3px solid #000;
  position: relative;
}

.product-list > li > a > .icon::before {
  content: '';
  width: 2px;
  height: 8px;
  background: #000;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -1px;
  margin-top: -4px;
}

.product-list > li > a > .icon::after {
  content: '';
  width: 8px;
  height: 2px;
  background: #000;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -4px;
  margin-top: -1px;
}

.product-list > li.-center {
  width: 33.4%;
}

@media screen and (min-width: 751px) {
  .product-list > li.-center {
    border-right: 1px solid #ececec;
    border-left: 1px solid #ececec;
  }
}

@media screen and (max-width: 750px) {
  .product-list > li.-center {
    border-top: 1px solid #ececec;
    border-bottom: 1px solid #ececec;
  }
}

.product-layout {
  width: 100%;
  max-width: 1120px;
  text-align: center;
  margin: 0 auto;
  margin-bottom: 123px;
}

@media screen and (max-width: 750px) {
  .product-layout {
    margin-bottom: 80px;
  }
}

.product-layout > .title {
  margin-bottom: 64px;
  text-align: left;
  font-size: 2.4rem;
  line-height: 3.7rem;
}

@media screen and (max-width: 750px) {
  .product-layout > .title {
    width: 83%;
    margin: 0 auto 30px auto;
    font-size: 1.9rem;
  }
}

.product-layout > .image {
  width: 100%;
  max-width: 1120px;
  margin: 0 auto;
}

.product-hw {
  text-align: center;
  margin-bottom: 84px;
}

.product-hw > .title {
  margin-bottom: 34px;
  text-align: left;
  font-size: 2.4rem;
  line-height: 3.7rem;
}

@media screen and (max-width: 750px) {
  .product-hw > .title {
    width: 83%;
    margin: 0 auto 15px auto;
    font-size: 1.9rem;
  }
}

.product-hw > .image {
  width: 100%;
  max-width: 1120px;
  margin: 0 auto;
}

.product-hw > .product-cp {
  margin: 15px 15% 30px 15%; 
  max-width: 70%;
  text-align:left;
}

@media screen and (min-width: 1400px) {
  .product-hw > .product-cp {
  margin: 15px 20% 30px 20%; 
  max-width: 60%;
  text-align:left;
　}
}

@media screen and (max-width: 749px) {
  .product-hw > .product-cp {
  margin: 15px 5% 30px 5%; 
  max-width: 100%;
  text-align:left;
　}
}

.product-cp > h4  { 
  font-weight:bold;
  font-size: 16px; 
  line-height: 1.6;  
}

.product-cp > h4.cpmain  { 
  font-weight:bold;
  font-size: 18px; 
  line-height: 1.8;  
}

@media screen and (max-width: 750px) {
  .product-cp > h4.cpmain  { 
  font-weight:bold;
  font-size: 16px; 
  line-height: 1.6;  }}

.product-cp > p.cptext {
  text-align: center;
  padding: 8px 0px;
  
}

.product-cp > p {  
  font-size:14px;
  padding-top: 2px 0;
}  

.product-cp > p.cp-sub {
  font-size:18px;
  font-weight:bold;
  padding:  0;
}  

.product-cp > p > span.cp-bold {
  font-size:18px;
  font-weight:bold;
   padding:  0;

}  

.product-cp > p > span.cp-note {
  font-size:12px;
  padding:  0;

}  


.cp-cta  { 
  text-align: center;
  background-color: #0cb600;
  color: #ffffff;
  padding: 15px;
  margin: 10px auto;
  border-radius: 15px;
}

.cp-cta p {
  text-align: center;
  font-size: 20px; 
  font-weight: bold;
  line-height: 1.8;     
}

@media screen and (max-width: 750px) {
  .cp-cta p {
  font-size: 20px; 

　}
}


.product-cp > p  {
  padding: 0 50px 0 15px; 
  text-align: left; 
  font-size: 16px; 
  line-height: 1.6;  
}

@media screen and (max-width: 750px) {
  .product-cp > p  {
  padding: 5px 5px 0 20px; 
  font-size: 14px; 
  line-height: 1.6;  
}
}


.product-hw > dl.dlist {
  margin: 15px 10% 30px 10%; 
  max-width: 80%;
  text-align:left;
}


@media screen and (min-width: 1400px) {
  .product-hw > dl.dlist {
  margin: 15px 20% 30px 20%; 
  max-width: 55%;
  text-align:left;
　}
}


@media screen and (max-width: 750px) {
  .product-hw > dl.dlist {
  margin: 15px 5% 30px 5%; 
  max-width: 90%;
  text-align:left;
　}
}


dl.dlist > dt {
  position: relative;
  margin-top: 35px; 
  padding: 0 40px 0 40px; 
  text-align: left; 
  font-weight: bold; 
  font-size: 18px; 
  line-height: 1.5;  
}


@media screen and (max-width: 750px) {
  dl.dlist > dt {
  font-size: 16px; 
  padding: 0 40px 0 15px; 
  line-height: 1.3;  } }

dl.dlist > dd {
  position: relative;
  margin: 14px 0 0 8px; 
  padding: 12px 50px 0; 
  border-top: 1px dotted #d0d0d0; 
  line-height: 1.6;
  font-size: 16px;    
}

dl.dlist > dd:before {
 content : "・";
}


@media screen and (max-width: 750px) {
  dl.dlist > dd {
  padding: 5px 5px 0 20px; 
  font-size: 14px; 
  line-height: 1.6;  
}
}



dl.dlist >span.marker {
  color: #0600ff; text-decoration: underline;"   
     
}


.product-compare {
  margin-bottom: 90px;
}

@media screen and (max-width: 750px) {
  .product-compare .apply-list {
    margin-bottom: 30px;
    padding-top: 0;
  }
  .product-compare .apply-list > .item.-current .apply-select {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 12px 9px 12px;
    border-color: transparent transparent #035b90 transparent;
    margin-left: -12px;
    bottom: -31px;
  }
}

.product-compare > .title {
  max-width: 1122px;
  margin: 0 auto;
  margin-bottom: 34px;
  text-align: left;
  font-size: 2.4rem;
  line-height: 3.7rem;
}

@media screen and (max-width: 750px) {
  .product-compare > .title {
    width: 83%;
    margin: 0 auto 27px auto;
    font-size: 1.9rem;
  }
}

@media screen and (max-width: 750px) {
  .product-compare .table-wrap {
    width: 86%;
    margin: 0 auto;
    border-right: 1px solid #ececec;
  }
}

.product-compare__table {
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  max-width: 1122px;
  margin: 0 auto;
  border-left: 2px solid #ececec;
  border-top: 2px solid #ececec;
  border-bottom: 2px solid #ececec;
}

.product-compare__table tr {
  border-right: 2px solid #ececec;
}

.product-compare__table tr.cont-min751, .product-compare__table tr.cont-max750 {
  display: table-row;
}

@media screen and (max-width: 750px) {
  .product-compare__table tr {
    border-right: none;
  }
}

.product-compare__table tr.line1 th {
  padding-bottom: 0;
}

.product-compare__table tr.line1 td {
  padding-bottom: 40px;
}

.product-compare__table tr.line2 th, .product-compare__table tr.line5 th {
  padding-top: 4px;
}

.product-compare__table tr.line2 td img, .product-compare__table tr.line5 td img {
  margin: 0 3px;
}

.product-compare__table tr.line5 th {
  border-bottom: 1px solid #ececec;
  padding-bottom: 53px;
}

.product-compare__table tr.line5 td {
  border-bottom: 1px solid #ececec;
  padding-bottom: 53px;
}

.product-compare__table tr.line6 th {
  border-bottom: 1px solid #ececec;
  padding-bottom: 0;
}

.product-compare__table tr.line6 td {
  border-bottom: 1px solid #ececec;
  padding-top: 47px;
  padding-bottom: 43px;
}

.product-compare__table tr.line7 th {
  padding-bottom: 0;
  padding-top: 12px;
}

.product-compare__table tr.line7 td {
  padding-top: 43px;
}

@media screen and (max-width: 750px) {
  .product-compare__table tr {
    border-right: none;
  }
}

.product-compare__table th {
  width: 19%;
  vertical-align: middle;
  text-align: center;
  font-size: 1.2rem;
  line-height: 1.3rem;
  padding-bottom: 30px;
}

@media screen and (max-width: 750px) {
  .product-compare__table th {
    width: 40%;
    padding: 0 10px 30px 10px;
    line-height: 1.8rem;
  }
}

.product-compare__table td {
  width: 27%;
  border-left: 1px solid #ececec;
  vertical-align: middle;
  text-align: center;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  padding-bottom: 30px;
  font-size: 1.3rem;
  line-height: 1.3rem;
  position: relative;
}

@media screen and (max-width: 750px) {
  .product-compare__table td {
    width: 60%;
    font-size: 1.2rem;
    line-height: 1.8rem;
  }
}

.product-compare__table td > .image {
  width: 75%;
  margin: 0 auto 12px auto;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
}

.product-compare__table td > h3 {
  font-size: 1.6rem;
  font-weight: 500;
}

@media screen and (max-width: 750px) {
  .product-compare__table td > h3 {
    padding-top: 38px;
  }
}

.product-compare__table td > h4 {
  font-size: 1.3rem;
  margin-bottom: 28px;
}

.product-compare__table td > .list {
  width: 572px;
  margin: 0 auto;
  letter-spacing: -.40em;
  text-align: left;
  padding-left: 54px;
}

.product-compare__table td > .list > li {
  position: relative;
  letter-spacing: normal;
  display: inline-block;
  width: 286px;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  padding-left: 23px;
  margin-bottom: 0px;
  font-size: 1.3rem;
  line-height: 2.4rem;
}

.product-compare__table td > .list > li > .arrow {
  width: 7px;
  height: 7px;
  position: absolute;
  left: 2px;
  top: 10px;
  border-radius: 50% 50%;
  background: #035b90;
}

.product-compare__table td > .list > li::before {
  display: none;
}

@media screen and (max-width: 750px) {
  .product-compare__table td > .list {
    width: 80%;
    padding-left: 4px;
  }
  .product-compare__table td > .list > li {
    width: 100%;
  }
}

.product-compare__table td > .note {
  font-size: 1.0rem;
  position: absolute;
  left: 50%;
  margin-left: 20px;
  top: 1px;
}

.product-compare__table td img.icon1 {
  width: 18px;
}

.product-compare__table td img.icon2 {
  width: 17px;
}

@media screen and (max-width: 750px) {
  .product-compare__table {
    width: 100%;
    border-left: 1px solid #ececec;
    border-top: 2px solid #035b90;
    border-bottom: 1px solid #ececec;
  }
  .product-compare__table.-select1 .cell2, .product-compare__table.-select1 .cell3 {
    display: none;
  }
  .product-compare__table.-select2 .cell1, .product-compare__table.-select2 .cell3 {
    display: none;
  }
  .product-compare__table.-select3 .cell2, .product-compare__table.-select3 .cell1 {
    display: none;
  }
}

.product-link.-dl {
  box-sizing: border-box !important;
  -webkit-box-sizing: border-box !important;
  display: block;
  text-align: center;
  font-size: 1.4rem;
  line-height: 2.0rem;
  color: #fff;
  height: 148px;
  padding-top: 65px;
  position: relative;
  background: #035b90;
  max-width: 1220px;
  margin: 0 auto;
}

@media screen and (max-width: 750px) {
  .product-link.-dl {
    width: 86%;
    height: 110px;
    padding-top: 46px;
  }
}

.product-link.-dl::before {
  content: '';
  position: absolute;
  left: 50%;
  top: 0;
  width: 0;
  height: 100%;
  -webkit-transition: all 0.3s ease-out 0s;
  transition: all 0.3s ease-out 0s;
  background: #2d2d2d;
}

.product-link.-dl > .txt {
  position: relative;
}

.product-link.-dl > .icon {
  width: 27px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: 108px;
  margin-top: -13px;
}

.product-link.-dl > .icon img {
  position: relative;
  top: 0;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}

.product-link.-dl:hover::before {
  width: 100%;
  left: 0;
}

.product-link.-dl:hover > .icon img {
  top: 6px;
}

/*------------------------------------------------------*/
/*  product - single*/
/*------------------------------------------------------*/
@media screen and (min-width: 851px) {
  .product-single__main {
    width: 785px;
    height: 482px;
    margin: 48px auto 183px auto;
    padding-right: 35px;
    display: flex;
    display: -webkit-flex;
    justify-content: space-between;
    -webkit-justify-content: space-between;
    align-items: flex-start;
    -webkit-align-items: flex-start;
    flex-direction: row-reverse;
    -webkit-flex-direction: row-reverse;
  }
  .product-single__main.-ls7i {
    width: 940px;
  }
  .product-single__main > .item {
    width: 50%;
  }
}

@media screen and (max-width: 850px) {
  .product-single__main {
    width: 82%;
    margin: 0 auto 95px auto;
  }
}

.product-single__main.-tobira {
  margin-bottom: 93px;
}

@media screen and (max-width: 850px) {
  .product-single__main.-tobira {
    padding-top: 50px;
    margin-bottom: 70px;
  }
}

.product-single__main > .image {
  max-width: 422px;
  position: relative;
}

.product-single__main > .image.-ls7i img {
  width: 600px;
  position: relative;
  left: -92px;
  top: 0px;
}

@media screen and (max-width: 850px) {
  .product-single__main > .image.-ls7i img {
    width: 100%;
    left: 0;
    top: 0;
  }
}

.product-single__main > .image.-tobira p {
  max-width: 219px;
  position: relative;
}

@media screen and (min-width: 851px) {
  .product-single__main > .image.-tobira p {
    left: 8px;
    top: 29px;
  }
}

@media screen and (max-width: 850px) {
  .product-single__main > .image.-tobira p {
    max-width: 140px;
    margin: 0 auto;
  }
}

.product-single__main > .image .slide-wrap {
  width: 200%;
  position: relative;
  left: 0;
  display: flex;
  display: -webkit-flex;
  justify-content: space-between;
  -webkit-justify-content: space-between;
  align-items: flex-start;
  -webkit-align-items: flex-start;
  -webkit-transition: all 0.5s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0s;
  transition: all 0.5s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0s;
}

.product-single__main > .image .slide-wrap > .slide {
  width: 50%;
  -webkit-transition: all 0.5s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0s;
  transition: all 0.5s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0s;
}

.product-single__main > .image .slide-wrap > .slide.-black {
  opacity: 1;
  filter: alpha(opacity=100);
}

.product-single__main > .image .slide-wrap > .slide.-silver {
  opacity: 0;
  filter: alpha(opacity=0);
}

.product-single__main > .image .slide-wrap.-show2 {
  left: -100%;
}

.product-single__main > .image .slide-wrap.-show2 > .slide.-black {
  opacity: 0;
  filter: alpha(opacity=0);
}

.product-single__main > .image .slide-wrap.-show2 > .slide.-silver {
  opacity: 1;
  filter: alpha(opacity=100);
}

.product-single__main > .image .item {
  display: none;
}

.product-single__main > .image .item.-current {
  display: block;
}

@media screen and (max-width: 850px) {
  .product-single__main > .image {
    margin: 0 auto;
  }
}

.product-single__main > .info {
  max-width: 320px;
  padding-top: 38px;
  position: relative;
  z-index: 1;
}

.product-single__main > .info > h1 {
  font-size: 3.4rem;
  font-weight: 600;
  margin-bottom: 33px;
}

.product-single__main > .info > h1 > .jp {
  font-size: 2.6rem;
  display: inline-block;
  margin-top: 13px;
}

@media screen and (max-width: 850px) {
  .product-single__main > .info > h1 > .jp {
    font-size: 2.0rem;
  }
}

@media screen and (max-width: 850px) {
  .product-single__main > .info > h1 {
    font-size: 3.0rem;
  }
}

.product-single__main > .info > .caption {
  font-size: 1.9rem;
  line-height: 2.8rem;
  font-weight: 500;
}

@media screen and (min-width: 851px) {
  .product-single__main > .info > .caption {
    width: 450px;
  }
}

@media screen and (max-width: 850px) {
  .product-single__main > .info > .caption {
    font-size: 1.6rem;
    line-height: 2.7rem;
  }
}

.product-single__main > .info > .lead {
  font-size: 1.3rem;
  line-height: 2.3rem;
  margin-bottom: 53px;
}

@media screen and (max-width: 850px) {
  .product-single__main > .info {
    max-width: 100%;
    margin-bottom: 25px;
  }
}

.product-single__main > .info.-tobira {
  max-width: 410px;
  padding-top: 93px;
}

@media screen and (max-width: 850px) {
  .product-single__main > .info.-tobira {
    padding-top: 0;
    max-width: 100%;
  }
}

.product-single__main > .info.-tobira > h1 {
  margin-bottom: 41px;
}

@media screen and (max-width: 850px) {
  .product-single__main > .info.-tobira > h1 {
    margin-bottom: 30px;
  }
}

.product-single__main > .info.-tobira > .caption {
  margin-bottom: 12px;
}

@media screen and (min-width: 851px) {
  .product-single__main > .info.-tobira > .caption {
    width: 450px;
  }
}

@media screen and (min-width: 851px) {
  .product-single__main > .info.-tobira > .lead {
    width: 430px;
  }
}

.product-single__slidenav {
  letter-spacing: -.40em;
  position: relative;
  left: -4px;
}

@media screen and (max-width: 850px) {
  .product-single__slidenav {
    text-align: center;
  }
}

.product-single__slidenav > .item {
  width: 77px;
  letter-spacing: normal;
  display: inline-block;
  vertical-align: top;
  text-align: center;
  margin-right: 15px;
  cursor: pointer;
}

.product-single__slidenav > .item > .image {
  position: relative;
  margin-bottom: 4px;
  background: #fff;
}

.product-single__slidenav > .item > .image::after {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  border: 6px solid #eeeeee;
  border-radius: 50% 50%;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}

.product-single__slidenav > .item > .text {
  font-size: 1.0rem;
}

.product-single__slidenav > .item.-current {
  cursor: default;
}

.product-single__slidenav > .item.-current > .image::after {
  border: 6px solid #035b90;
}

.product-single__slidenav > .item:hover > .image::after {
  border: 12px solid #eeeeee;
}

.product-single__slidenav > .item:hover.-current > .image::after {
  border: 6px solid #035b90;
}

.product-guide {
  margin-bottom: 123px;
}

@media screen and (max-width: 750px) {
  .product-guide {
    margin-bottom: 70px;
  }
}

.product-guide > h2 {
  font-size: 2.4rem;
  margin-bottom: 32px;
}

.product-guide > h2 > span {
  font-size: 2.2rem;
}

@media screen and (max-width: 750px) {
  .product-guide > h2 {
    padding-left: 11%;
    text-align: left;
    font-size: 1.9rem;
    margin-bottom: 25px;
  }
  .product-guide > h2 > span {
    font-size: 1.7rem;
  }
}

.product-guide__list {
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
}

@media screen and (min-width: 640px) {
  .product-guide__list {
    display: flex;
    display: -webkit-flex;
    justify-content: center;
    -webkit-justify-content: center;
    align-items: flex-start;
    -webkit-align-items: flex-start;
  }
  .product-guide__list > .item {
    width: 50%;
  }
}

.product-guide__list > .item {
  position: relative;
  cursor: pointer;
  background: #000;
}

@media screen and (max-width: 639px) {
  .product-guide__list > .item {
    margin-bottom: 20px;
  }
}

.product-guide__list > .item > .thumbnail {
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
  opacity: 1;
  filter: alpha(opacity=100);
}

.product-guide__list > .item > .player {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
}

.product-guide__list > .item > .player > .icon {
  width: 92px;
  height: 92px;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  border: 4px solid #fff;
  border-radius: 50% 50%;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -46px;
  margin-top: -46px;
  cursor: pointer;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}

.product-guide__list > .item > .player > .icon > p {
  position: absolute;
  width: 92px;
  left: -4px;
  top: -4px;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}

.product-guide__list > .item > .player > .icon > p.default {
  opacity: 1;
  filter: alpha(opacity=100);
}

.product-guide__list > .item > .player > .icon > p.hover {
  opacity: 0;
  filter: alpha(opacity=0);
}

.product-guide__list > .item:hover > .thumbnail {
  opacity: 0.85;
  filter: alpha(opacity=85);
}

.product-guide__list > .item.-play {
  cursor: default;
}

.product-guide__list > .item.-play > .player {
  background: #000;
}

.product-guide__list > .item.-play > .player > .icon {
  display: none;
}

.product-scene {
  max-width: 1120px;
  margin: 0 auto 126px auto;
}

@media screen and (max-width: 750px) {
  .product-scene {
    margin-bottom: 80px;
  }
}

.product-scene > h2 {
  font-size: 2.4rem;
  margin-bottom: 33px;
}

@media screen and (max-width: 750px) {
  .product-scene > h2 {
    padding-left: 11%;
    text-align: left;
    font-size: 1.9rem;
    margin-bottom: 25px;
  }
}

.product-scene > .image {
  position: relative;
  margin-bottom: 33px;
}

.product-scene > .image > .slide {
  width: 100%;
  position: relative;
  overflow: hidden;
}

.product-scene > .image > .slide::before {
  content: '';
  display: block;
  width: 100%;
  padding-top: 41%;
  position: relative;
}

@media screen and (max-width: 750px) {
  .product-scene > .image > .slide::before {
    padding-top: 62.6%;
  }
}

.product-scene > .image > .slide > .item {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 100%;
  top: 0;
  overflow: hidden;
}

.product-scene > .image > .slide > .item:nth-child(1) {
  left: 0;
}

.product-scene > .image > .slide > .item .text {
  position: absolute;
  right: 33px;
  bottom: 33px;
  z-index: 1;
  text-align: right;
}

@media screen and (max-width: 750px) {
  .product-scene > .image > .slide > .item .text {
    right: 15px;
    bottom: 15px;
    max-width: calc(100% - 30px);
  }
}

.product-scene > .image > .slide > .item .text > h3 {
  font-size: 1.6rem;
  line-height: 1.8rem;
  display: inline-block;
  font-weight: 700;
  padding: 1px 2px 2px 2px;
  background: #fff;
  margin-bottom: 5px;
}

.product-scene > .image > .slide > .item .text > p {
  font-size: 1.2rem;
  line-height: 1.5rem;
  background: #fff;
  padding: 1px 2px 2px 2px;
}

.product-scene > .image > .slide > .item .img {
  overflow: hidden;
}

.product-scene > .image > .slide > .item img {
  position: relative;
}

@media screen and (max-width: 750px) {
  .product-scene > .image > .slide > .item img {
    width: 110%;
    left: -5%;
    top: 0 !important;
  }
}

.product-scene > .image .pager {
  position: absolute;
  right: 10px;
  bottom: -41px;
  display: flex;
  display: -webkit-flex;
  justify-content: center;
  -webkit-justify-content: center;
  align-items: flex-start;
  -webkit-align-items: flex-start;
}

@media screen and (max-width: 750px) {
  .product-scene > .image .pager {
    right: 0;
  }
}

.product-scene > .image .pager-item {
  width: 7px;
  height: 7px;
  border-radius: 50% 50%;
  background: #656565;
  margin: 0 7px;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
  cursor: pointer;
}

.product-scene > .image .pager-item.-current {
  transform: scale(2.1, 2.1);
  -webkit-transform: scale(2.1, 2.1);
  background: #035b90;
  cursor: default;
}

.product-scene > .image .pager-item:hover {
  transform: scale(2.1, 2.1);
  -webkit-transform: scale(2.1, 2.1);
}

@media screen and (max-width: 750px) {
  .product-scene > .image .pager {
    position: relative;
    margin-top: 30px;
    bottom: auto;
  }
}

.product-scene > .lead {
  font-size: 1.4rem;
  line-height: 2.6rem;
  padding-left: 19px;
}

@media screen and (max-width: 750px) {
  .product-scene > .lead {
    width: 78.6%;
    margin: 0 auto;
  }
}

.product-points {
  max-width: 1120px;
  margin: 0 auto 140px auto;
}

@media screen and (max-width: 750px) {
  .product-points {
    margin-bottom: 80px;
  }
}

.product-points__list {
  width: 100%;
  margin: 0 auto;
}

@media screen and (min-width: 640px) {
  .product-points__list {
    display: flex;
    display: -webkit-flex;
    justify-content: center;
    -webkit-justify-content: center;
    align-items: flex-start;
    -webkit-align-items: flex-start;
  }
  .product-points__list > .item {
    width: 50%;
  }
}

.product-points__list > .item {
  position: relative;
}

@media screen and (max-width: 639px) {
  .product-points__list > .item {
    margin-bottom: 50px;
  }
}

.product-points__list > .item > .image {
  position: relative;
  overflow: hidden;
  margin-bottom: 33px;
}

.product-points__list > .item.-ls5i--1 .cover {
  width: 100%;
  position: absolute;
  left: 0;
  top: 0;
  -webkit-transition: all 0.8s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0.3s;
  transition: all 0.8s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0.3s;
}

.product-points__list > .item.-ls5i--2 .balloon {
  width: 117px;
  height: 117px;
  position: absolute;
  top: 25%;
  right: 36.1%;
  border-radius: 50% 50%;
}

.product-points__list > .item.-ls5i--2 .balloon.-ls7i {
  top: 36.2%;
  right: 37.1%;
}

@media screen and (max-width: 639px) {
  .product-points__list > .item.-ls5i--2 .balloon {
    top: 13%;
  }
  .product-points__list > .item.-ls5i--2 .balloon.-ls7i {
    top: 21%;
  }
}

.product-points__list > .item.-ls5i--2 .balloon .base {
  width: 117px;
  height: 117px;
  background: #035b90;
  border-radius: 50% 50%;
  position: absolute;
  left: 0;
  top: 0;
  transform: rotate(-47deg) scale(0, 0);
  -webkit-transform: rotate(-47deg) scale(0, 0);
  -webkit-transition: all 0.3s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0.8s;
  transition: all 0.3s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0.8s;
}

.product-points__list > .item.-ls5i--2 .balloon .base::after {
  content: '';
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 10px 8px 0 8px;
  border-color: #035b90 transparent transparent transparent;
  position: absolute;
  left: 50%;
  bottom: 0px;
  margin-left: -8px;
  -webkit-transition: all 0.3s cubic-bezier(0.37, 0.82, 0.335, 1.19) 1s;
  transition: all 0.3s cubic-bezier(0.37, 0.82, 0.335, 1.19) 1s;
}

.product-points__list > .item.-ls5i--2 .balloon .txt {
  font-size: 1.3rem;
  line-height: 1.8rem;
  position: absolute;
  width: 100%;
  left: 0;
  top: 50%;
  text-align: center;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  opacity: 0;
  filter: alpha(opacity=0);
  -webkit-transition: all 0.3s cubic-bezier(0.37, 0.82, 0.335, 1.19) 1s;
  transition: all 0.3s cubic-bezier(0.37, 0.82, 0.335, 1.19) 1s;
  color: #fff;
}

.product-points__list > .item > .txt {
  font-size: 1.4rem;
  line-height: 2.6rem;
}

.product-points__list.-show .item.-ls5i--1 .cover {
  top: -120%;
}

.product-points__list.-show .item.-ls5i--2 .balloon .base {
  transform: rotate(-47deg) scale(1, 1);
  -webkit-transform: rotate(-47deg) scale(1, 1);
}

.product-points__list.-show .item.-ls5i--2 .balloon .base::after {
  bottom: -8px;
}

.product-points__list.-show .item.-ls5i--2 .balloon .txt {
  opacity: 1;
  filter: alpha(opacity=100);
}

.product-spec {
  margin-bottom: 58px;
}

@media screen and (max-width: 750px) {
  .product-spec {
    margin-bottom: 35px;
  }
}

.product-spec > h2 {
  font-size: 2.4rem;
  margin-bottom: 33px;
}

@media screen and (max-width: 750px) {
  .product-spec > h2 {
    padding-left: 11%;
    text-align: left;
    font-size: 1.9rem;
    margin-bottom: 25px;
  }
}

.product-spec > table {
  width: 86%;
  max-width: 980px;
  margin: 0 auto;
  border: 2px solid #ececec;
}

.product-spec > table tr th {
  width: 25.8%;
  text-align: center;
  border-right: 1px solid #ececec;
  vertical-align: middle;
  font-size: 1.2rem;
  line-height: 2.8rem;
  padding: 0 10px;
  position: relative;
}

.product-spec > table tr th > p {
  padding: 5px 0;
  position: relative;
}


@media screen and (max-width: 750px) {
  .product-spec .note {
      text-align: left;
  } }




.product-spec > table tr td {
  text-align: center;
  vertical-align: middle;
  border-right: 1px solid #ececec;
  width: 72%;
  font-size: 1.3rem;
  line-height: 2.8rem;
  padding: 0 10px;
  position: relative;
}

.product-spec > table tr td.cell1 {
  width: 12.2%;
}

.product-spec > table tr td > p {
  padding: 5px 0;
  position: relative;
}

.product-spec > table tr td > .note {
  width: 65%;
  text-align: left;
  margin: 0 auto;
}

@media screen and (max-width: 750px) {
  .product-spec > table tr td > p.note {
    width: 85%;
  }
}

.product-spec > table tr td > p > span {
  font-size: 1.0rem;
}

.product-spec > table tr:nth-child(even) th::before {
  content: '';
  background: #fbfbfb;
  width: calc(100% - 20px);
  height: 100%;
  position: absolute;
  left: 10px;
  top: 0;
}

@media screen and (max-width: 750px) {
  .product-spec > table tr:nth-child(even) th::before {
    width: 100%;
    left: 0;
  }
}

.product-spec > table tr:nth-child(even) td::before {
  content: '';
  background: #fbfbfb;
  width: calc(100% - 20px);
  height: 100%;
  position: absolute;
  left: 10px;
  top: 0;
}

@media screen and (max-width: 750px) {
  .product-spec > table tr:nth-child(even) td::before {
    width: 100%;
    left: 0;
  }
}

/*　無駄に余白が広かったのでコメントアウト
.product-spec > table tr.line1 th {
  padding-top: 34px;
}

.product-spec > table tr.line1 td {
  padding-top: 34px;
}  */

.product-spec > table tr.line5 td p,
.product-spec > table tr.line6 td p,
.product-spec > table tr.line10 td p {
  padding: 9px 0;
}

.product-spec > table tr.blank td {
  height: 35px;
}

@media screen and (max-width: 750px) {
  .product-spec > table tr td.cell1 {
    display: none;
  }
}


.product-contact {
  width: 86%;
  max-width: 725px;
  margin: 0 auto 50px auto;
  padding-top: 10px;
}

.product-contact > .section-title {
  font-size: 1.9rem;
  margin-bottom: 19px;
}

@media screen and (max-width: 750px) {
  .product-contact > .section-title {
    font-size: 1.9rem;
    line-height: 3.1rem;
  }
}

.product-contact > p {
  font-size: 1.3rem;
  text-align: center;
  margin-bottom: 34px;
}

.product-contact > .list li {
  font-size: 1.3rem;
}

.product-contact > .list li:before {
  content: '';
  width: 7px;
  height: 7px;
  position: absolute;
  left: -6px;
  top: 9px;
  background: #035b90;
}

.product-contact--note {
  text-align: center;
  font-size: 1.4rem;
  margin-top: 40px;
  margin-bottom: 84px;
}

.product-contact--note > a {
  display: inline-block;
  color: #035b90;
  font-weight: 700;
  position: relative;
  margin: 0 5px;
}

.product-contact--note > a::after {
  content: '';
  width: 100%;
  height: 1px;
  background: #035b90;
  position: absolute;
  left: 0;
  bottom: 1px;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}

.product-contact--note > a:hover::after {
  width: 0;
  left: 50%;
}

.product-tobira--illust {
  max-width: 555px;
  margin: 0 auto 93px auto;
}

@media screen and (max-width: 750px) {
  .product-tobira--illust {
    width: 90%;
    margin-bottom: 72px;
  }
}

.product-tobira--caption {
  max-width: 521px;
  margin: 0 auto 154px auto;
}

.product-tobira--caption > p {
  text-align: center;
  font-size: 1.2rem;
  line-height: 2.0rem;
  margin-top: 32px;
}

@media screen and (max-width: 750px) {
  .product-tobira--caption {
    max-width: 62.6%;
    margin-bottom: 72px;
  }
}

.product-tobira--guide {
  margin-bottom: 165px;
}

.product-tobira--guide > h2 {
  font-size: 2.4rem;
  margin-bottom: 38px;
}

.product-tobira--guide > .lead {
  text-align: center;
  font-size: 1.4rem;
  line-height: 2.6rem;
  margin-bottom: 44px;
}

.product-tobira--guide > ul {
  text-align: center;
}

@media screen and (min-width: 851px) {
  .product-tobira--guide > ul {
    max-width: 1280px;
    margin: 0 auto;
    display: flex;
    display: -webkit-flex;
    justify-content: center;
    -webkit-justify-content: center;
    align-items: flex-start;
    -webkit-align-items: flex-start;
  }
}

.product-tobira--guide > ul > li > p {
  margin-top: 32px;
}

@media screen and (max-width: 750px) {
  .product-tobira--guide > ul > li > p {
    margin-top: 20px;
    font-size: 1.3rem;
  }
}

@media screen and (max-width: 750px) {
  .product-tobira--guide > ul > li {
    margin-bottom: 40px;
  }
}

@media screen and (max-width: 750px) {
  .product-tobira--guide {
    margin-bottom: 90px;
  }
  .product-tobira--guide > h2 {
    text-align: left;
    font-size: 1.9rem;
    margin-bottom: 15px;
    padding: 0 7%;
  }
  .product-tobira--guide > .lead {
    text-align: left;
    font-size: 1.3rem;
    line-height: 2.3rem;
    padding: 0 9%;
    margin-bottom: 35px;
  }
}

.product-tobira--point {
  margin-bottom: 112px;
}

.product-tobira--point > .image {
  max-width: 480px;
  margin: 0 auto 70px auto;
}

.product-tobira--point > .text {
  text-align: center;
  font-size: 1.4rem;
  line-height: 2.6rem;
}

@media screen and (max-width: 750px) {
  .product-tobira--point {
    width: 84%;
    margin: 0 auto 90px auto;
  }
  .product-tobira--point > .image {
    max-width: 262px;
    margin-bottom: 40px;
  }
  .product-tobira--point > .text {
    text-align: left;
    font-size: 1.3rem;
    line-height: 2.3rem;
  }
}

.product-tobira--initial {
  text-align: center;
  margin-bottom: 107px;
}

.product-tobira--initial > h2 {
  font-size: 2.4rem;
  margin-bottom: 47px;
}

.product-tobira--initial > .text1 {
  font-size: 1.4rem;
  margin-bottom: 12px;
}

.product-tobira--initial > .text2 {
  font-size: 1.6rem;
  line-height: 2.8rem;
  font-weight: 700;
  margin-bottom: 14px;
}

.product-tobira--initial > .text3 {
  font-size: 1.4rem;
}

@media screen and (max-width: 750px) {
  .product-tobira--initial {
    width: 84%;
    margin: 0 auto 90px auto;
    text-align: left;
  }
  .product-tobira--initial > h2 {
    text-align: left;
    font-size: 1.9rem;
    margin-bottom: 25px;
  }
  .product-tobira--initial > .text1 {
    font-size: 1.3rem;
    margin-bottom: 12px;
  }
  .product-tobira--initial > .text2 {
    font-size: 1.4rem;
    line-height: 2.6rem;
  }
  .product-tobira--initial > .text3 {
    font-size: 1.3rem;
  }
}

.product-tobira--price {
  text-align: center;
  margin-bottom: 110px;
}

.product-tobira--price > h2 {
  font-size: 2.4rem;
  margin-bottom: 50px;
}

.product-tobira--price > .text2 {
  font-size: 1.4rem;
  margin-bottom: 10px;
}

.product-tobira--price > .text1 {
  font-size: 1.6rem;
  line-height: 2.6rem;
  font-weight: 700;
  margin-bottom: 12px;
}

.product-tobira--price > .text1 > span {
  font-size: 1.3rem;
}

@media screen and (max-width: 750px) {
  .product-tobira--price {
    width: 84%;
    margin: 0 auto 90px auto;
    text-align: left;
  }
  .product-tobira--price > h2 {
    text-align: left;
    font-size: 1.9rem;
    margin-bottom: 25px;
  }
  .product-tobira--price > .text2 {
    font-size: 1.3rem;
    line-height: 2.3rem;
    margin-bottom: 12px;
  }
  .product-tobira--price > .text1 {
    font-size: 1.4rem;
    line-height: 2.6rem;
  }
}




.btn-back {
  text-align: center;
  margin-bottom: 75px;
}

@media screen and (max-width: 750px) {
  .btn-back {
    margin-bottom: 50px;
  }
}

.btn-back > a {
  display: inline-block;
  margin: 0 auto;
  position: relative;
  font-size: 1.4rem;
  line-height: 3.1rem;
}

.btn-back > a > .arrow {
  width: 31px;
  height: 31px;
  position: absolute;
  left: -62px;
  top: 0;
}

.btn-back > a > .arrow img {
  position: relative;
  left: 0;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}

.btn-back > a:hover > .arrow img {
  left: -10px;
}

.btn-next {
  text-align: center;
}

.btn-next a {
  display: inline-block;
  margin: 0 auto;
  position: relative;
  font-size: 1.4rem;
  line-height: 3.1rem;
}

.btn-next a > .arrow {
  width: 31px;
  height: 31px;
  position: absolute;
  right: -62px;
  top: 0;
  transform: rotate(-180deg);
  -webkit-transform: rotate(-180deg);
}

.btn-next a > .arrow img {
  position: relative;
  left: 0;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}

.btn-next a:hover > .arrow img {
  left: -10px;
}

.btn-toapply {
  text-align: center;
  max-width: 1120px;
  height: 255px;
  background: #f5f5f5;
  margin: 0 auto 92px auto;
  display: block;
  position: relative;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}

.btn-toapply::before {
  content: '';
  width: 0;
  height: 100%;
  position: absolute;
  left: 50%;
  top: 0;
  background: #035b90;
  -webkit-transition: all 0.3s ease-out 0s;
  transition: all 0.3s ease-out 0s;
}

.btn-toapply > .txt {
  font-size: 1.6rem;
  line-height: 2.0rem;
  position: absolute;
  font-weight: 500;
  letter-spacing: 0.03em;
  left: 50%;
  top: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%);
}

.btn-toapply > .arrow {
  width: 31px;
  height: 31px;
  position: absolute;
  right: 139px;
  top: 50%;
  margin-top: -15px;
}

.btn-toapply > .arrow > p {
  position: absolute;
  left: 0;
  top: 0;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
  opacity: 1;
  filter: alpha(opacity=100);
}

.btn-toapply > .arrow > p.hover {
  opacity: 0;
  filter: alpha(opacity=0);
}

.btn-toapply > .arrow img {
  position: relative;
  left: 0;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}

.btn-toapply:hover {
  color: #fff;
}

.btn-toapply:hover::before {
  width: 100%;
  left: 0;
}

.btn-toapply:hover > .arrow > p {
  opacity: 0;
  filter: alpha(opacity=0);
}

.btn-toapply:hover > .arrow > p.hover {
  opacity: 1;
  filter: alpha(opacity=100);
}

.btn-toapply:hover > .arrow img {
  left: 10px;
}

@media screen and (max-width: 750px) {
  .btn-toapply {
    color: #fff;
    height: 115px;
    width: 86%;
  }
  .btn-toapply::before {
    width: 100%;
    left: 0;
  }
  .btn-toapply > .arrow {
    right: 50px;
  }
  .btn-toapply > .arrow > p {
    opacity: 0;
    filter: alpha(opacity=0);
  }
  .btn-toapply > .arrow > p.hover {
    opacity: 1;
    filter: alpha(opacity=100);
  }
  .btn-toapply > .arrow img {
    left: 10px;
  }
}

.feature-clear {
  position: absolute;
  width: 39%;
  left: 28%;
  bottom: -60px;
}

.feature-clear.-ls7i {
  left: 28%;
  bottom: -60px;
}

@media screen and (max-width: 850px) {
  .feature-clear.-ls7i {
    left: 23%;
    bottom: -60px;
  }
}

.input-range[type="range"] {
  -webkit-appearance: none;
  appearance: none;
  background-color: transparent;
  height: 1px;
  width: 100%;
  background: #cccccc;
}

.input-range[type="range"]:focus,
.input-range[type="range"]:active {
  outline: none;
}

.input-range[type="range"]::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  cursor: pointer;
  position: relative;
  border: none;
  width: 18px;
  height: 18px;
  display: block;
  background: #035b90;
  border-radius: 50% 50%;
}

/*------------------------------------------------------*/
/*  price */
/*------------------------------------------------------*/
.price-lead {
  text-align: center;
  font-size: 1.5rem;
  line-height: 3.1rem;
  margin-bottom: 37px;
}

@media screen and (min-width: 851px) {
  .price-lead {
    padding-top: 25px;
  }
}

@media screen and (max-width: 750px) {
  .price-lead {
    font-size: 1.3rem;
    line-height: 2.1rem;
    padding: 0 7.2%;
  }
}

.price-head {
  max-width: 774px;
  margin: 0 auto 70px auto;
  text-align: center;
}

@media screen and (min-width: 851px) {
  .price-head {
    display: flex;
    display: -webkit-flex;
    justify-content: space-between;
    -webkit-justify-content: space-between;
    align-items: flex-start;
    -webkit-align-items: flex-start;
    padding-top: 37px;
  }
}

@media screen and (max-width: 850px) {
  .price-head {
    width: 86%;
    padding-top: 25px;
    margin-bottom: 80px;
  }
}

.price-head h3 {
  text-align: center;
  font-size: 1.7rem;
  margin-bottom: 21px;
  font-weight: 700;
}

.price-head__initial {
  width: 478px;
}

@media screen and (max-width: 850px) {
  .price-head__initial {
    width: 86%;
    max-width: 509px;
    margin: 0 auto 50px auto;
  }
}

.price-head__list {
  display: flex;
  display: -webkit-flex;
  justify-content: space-between;
  -webkit-justify-content: space-between;
  align-items: flex-start;
  -webkit-align-items: flex-start;
}

.price-head__list > .item {
  max-width: 224px;
  text-align: center;
  font-size: 1.4rem;
  line-height: 2.0rem;
}

@media screen and (max-width: 850px) {
  .price-head__list > .item {
    width: 47%;
  }
}

.price-head__list > .item img {
  position: relative;
}

.price-head__list > .item > .image {
  position: relative;
  margin-bottom: 18px;
}

.price-head__list > .item > .image::before {
  content: '';
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  border-radius: 50% 50%;
  background: #2d2d2d;
}

.price-head__list > .item > .image img {
  position: relative;
  opacity: 0;
  filter: alpha(opacity=0);
  top: 20px;
}

.price-head__list > .item > .image > .arrow {
  width: 52px;
  height: 52px;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  border: 7px solid #2d2d2d;
  border-radius: 50% 50%;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -26px;
  margin-top: -26px;
}

.price-head__list > .item > .image > .arrow::before {
  content: '';
  width: 26px;
  height: 26px;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  border: 7px solid #2d2d2d;
  border-radius: 50% 50%;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -13px;
  margin-top: -13px;
}

.price-head__list > .item p {
  position: relative;
  opacity: 0;
  filter: alpha(opacity=0);
  top: 20px;
}

.price-head__list > .item.-show > .image img {
  opacity: 1;
  filter: alpha(opacity=100);
  top: 0;
}

.price-head__list > .item.-show p {
  opacity: 1;
  filter: alpha(opacity=100);
  top: 0;
}

.price-head__list > .item.item1 > .image img {
  -webkit-transition: all 0.2s ease-out 0.2s;
  transition: all 0.2s ease-out 0.2s;
}

.price-head__list > .item.item1 p {
  -webkit-transition: all 0.2s ease-out 0.5s;
  transition: all 0.2s ease-out 0.5s;
}

.price-head__list > .item.item2 > .image img {
  -webkit-transition: all 0.2s ease-out 0.3s;
  transition: all 0.2s ease-out 0.3s;
}

.price-head__list > .item.item2 p {
  -webkit-transition: all 0.2s ease-out 0.6s;
  transition: all 0.2s ease-out 0.6s;
}

.price-head__list > .item.item3 > .image img {
  -webkit-transition: all 0.2s ease-out 0.4s;
  transition: all 0.2s ease-out 0.4s;
}

.price-head__list > .item.item3 p {
  -webkit-transition: all 0.2s ease-out 0.7s;
  transition: all 0.2s ease-out 0.7s;
}

.price-head__running .price-head__list > .item {
  width: 100%;
}

.price-head__running .price-head__list > .item > .image::before {
  background: #035b90;
}

@media screen and (max-width: 850px) {
  .price-head__running {
    margin: 0 auto;
  }
  .price-head__running .price-head__list {
    width: 44%;
    margin: 0 auto;
    max-width: 236px;
  }
}

.price-merit {
  margin: 0 auto 80px auto;
  background: #035b90;
  color: #fff;
}

@media screen and (max-width: 750px) {
  .price-merit {
    margin-bottom: 80px;
  }
}

@media screen and (min-width: 751px) {
  .price-merit__wrapper {
    display: flex;
    display: -webkit-flex;
    justify-content: space-between;
    -webkit-justify-content: space-between;
    align-items: center;
    -webkit-align-items: center;
    flex-direction: row-reverse;
    -webkit-flex-direction: row-reverse;
    max-width: 750px;
    margin: 0 auto;
  }
}

.price-merit__wrapper > .image {
  width: 50%;
  max-width: 315px;
  padding-top: 48px;
  margin-left: 16px;
}

@media screen and (max-width: 750px) {
  .price-merit__wrapper > .image {
    text-align: center;
    margin: 0 auto 20px auto;
    padding-top: 30px;
  }
}

.price-merit__wrapper > .text {
  font-size: 1.3rem;
  line-height: 2.7rem;
}

.price-merit__wrapper > .text h3 {
  font-weight: 700;
  margin-bottom: 19px;
  font-size: 1.9rem;
}

@media screen and (max-width: 750px) {
  .price-merit__wrapper > .text {
    font-size: 1.2rem;
    line-height: 2.1rem;
    text-align: center;
    padding-top: 48px;
  }
}

.price-hardware {
  margin-bottom: 100px;
}

@media screen and (max-width: 750px) {
  .price-hardware {
    margin-bottom: 80px;
  }
}

.price-hardware > .section-title {
  margin-bottom: 60px;
  position: relative;
  text-align: left;
}

@media screen and (max-width: 750px) {
  .price-hardware > .section-title {
    margin-bottom: 20px;
  }
}

.price-hardware > .section-title > .inner {
  display: inline-block;
  padding-left: 50px;
  margin: 0 auto;
  position: relative;
}

.price-hardware > .section-title > .inner > .icon {
  width: 118px;
  position: absolute;
  top: 50%;
  margin-top: -59px;
  left: -70px;
}

.price-hardware > .price-title {
  margin-bottom: 34px;
}

@media screen and (max-width: 750px) {
  .price-hardware > .price-title {
    margin-bottom: 15px;
  }
}

.price-product {
  max-width: 1220px;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  margin: 0 auto;
}

@media screen and (min-width: 751px) {
  .price-product {
    display: flex;
    display: -webkit-flex;
    justify-content: center;
    -webkit-justify-content: center;
    align-items: flex-start;
    -webkit-align-items: flex-start;
    border-top: 1px solid #ececec;
    border-left: 1px solid #ececec;
    border-bottom: 1px solid #ececec;
  }
}

.price-product > li {
  width: 33.3%;
  text-align: center;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  border-right: 1px solid #ececec;
}

@media screen and (max-width: 750px) {
  .price-product > li {
    width: 100% !important;
    margin-bottom: 20px;
    position: relative;
  }
}

.price-product > li > .image {
  width: 100%;
}

@media screen and (max-width: 750px) {
  .price-product > li > .image {
    position: relative;
    width: 60%;
    left: -50px;
  }
}

.price-product > li > .text {
  position: relative;
}

@media screen and (min-width: 751px) {
  .price-product > li > .text {
    min-height: 120px;
  }
}

@media screen and (max-width: 750px) {
  .price-product > li > .text {
    position: absolute;
    width: 70%;
    left: 30%;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
  }
}

.price-product > li .name {
  font-size: 1.9rem;
  line-height: 2.4rem;
  font-weight: 500;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  padding-top: 15px;
  padding-left: 0;
  margin-bottom: 13px;
}

.price-product > li .name > span {
  font-size: 1.6rem;
  font-weight: 700;
}

.price-product > li .name.-acs {
  padding-top: 0px;
}

.price-product > li .name.-acs > span.fontp {
  font-size: 1.9rem;
  font-weight: 500;
}

@media screen and (max-width: 750px) {
  .price-product > li .name {
    padding-top: 0 !important;
    height: auto;
    margin-bottom: 10px;
    font-size: 1.5rem;
    line-height: 2.1rem;
  }
  .price-product > li .name > span {
    font-size: 1.3rem;
  }
  .price-product > li .name.-acs > span.fontp {
    font-size: 1.5rem;
  }
}

.price-product > li .price {
  font-size: 1.6rem;
  line-height: 1.9rem;
  font-weight: 700;
}

.price-product > li .price span {
  font-size: 1.3rem;
}

@media screen and (max-width: 750px) {
  .price-product > li .price {
    font-size: 1.4rem;
    margin-bottom: 0;
  }
  .price-product > li .price span {
    font-size: 1.2rem;
  }
}

.price-product > li.-center {
  width: 33.4%;
}

@media screen and (min-width: 751px) {
  .price-product > li.-center > .text {
    left: 0;
  }
}

@media screen and (min-width: 751px) {
  .price-product > li.product3 > .text {
    top: -4px;
  }
  .price-product > li.product3 > .text .name {
    margin-bottom: 7px;
  }
}

@media screen and (max-width: 750px) {
  .price-product > li.product3 > .text {
    padding-top: 0;
  }
}

.price-installation {
  text-align: center;
  margin-bottom: 128px;
}

@media screen and (max-width: 750px) {
  .price-installation {
    width: 86%;
    margin: 0 auto 80px auto;
  }
}

.price-installation > .section-title {
  margin-bottom: 42px;
  position: relative;
}

.price-installation > .section-title > .inner {
  display: inline-block;
  padding-left: 50px;
  margin: 0 auto;
  position: relative;
}

.price-installation > .section-title > .inner > .icon {
  width: 118px;
  position: absolute;
  top: 50%;
  margin-top: -59px;
  left: -70px;
}

.price-installation > .price-title {
  margin-bottom: 13px;
}

@media screen and (max-width: 750px) {
  .price-installation > .price-title {
    width: 100%;
    margin-bottom: 25px;
  }
}

.price-installation > .lead1 {
  font-size: 1.6rem;
  line-height: 3.1rem;
  margin-bottom: 16px;
}

@media screen and (max-width: 750px) {
  .price-installation > .lead1 {
    font-size: 1.5rem;
    line-height: 2.8rem;
  }
}

.price-installation > .lead2 {
  font-size: 1.3rem;
  line-height: 2.1rem;
  margin-bottom: 16px;
}

.price-installation > .lead3 {
  font-size: 1.4rem;
  line-height: 2.4rem;
}

@media screen and (max-width: 750px) {
  .price-installation > .lead3 {
    font-size: 1.3rem;
    line-height: 2.1rem;
  }
}

.price-cloud {
  margin-bottom: 62px;
}

@media screen and (max-width: 750px) {
  .price-cloud {
    width: 86%;
    margin: 0 auto 80px auto;
  }
}

.price-cloud > .section-title {
  margin-bottom: 30px;
  position: relative;
}

.price-cloud > .section-title > .inner {
  display: inline-block;
  padding-left: 50px;
  margin: 0 auto;
  position: relative;
}

.price-cloud > .section-title > .inner > .icon {
  width: 118px;
  position: absolute;
  top: 50%;
  margin-top: -59px;
  left: -70px;
}

@media screen and (max-width: 750px) {
  .price-cloud > .section-title > .inner > .icon {
    left: -50px;
  }
}

.price-cloud > .price-title {
  margin-bottom: 45px;
}

.price-cloud > .price-title > .icon::before {
  background: #035b90;
}

@media screen and (max-width: 750px) {
  .price-cloud > .price-title {
    width: 100%;
  }
}

.price-cloud > .lead {
  font-size: 1.4rem;
  line-height: 2.8rem;
  text-align: center;
  margin-bottom: 25px;
}

@media screen and (max-width: 750px) {
  .price-cloud > .lead {
    font-size: 1.3rem;
    line-height: 2.1rem;
  }
}

.price-cloud table {
  border: 2px solid #ececec;
  max-width: 980px;
  margin: 0 auto;
  text-align: center;
}

.price-cloud table tr {
  /* &.list1 {
						td {
							padding-top: 37px;
						}
					}
					
					&.list2 {
						td {
							padding-bottom: 37px;
						}
					} */
}

.price-cloud table tr.-odd {
  background: #fbfbfb;
}

.price-cloud table tr th {
  font-size: 1.2rem;
  padding: 10px 0px 10px 0px;
  text-align: center;
  border-right: 2px solid #ececec;
  border-bottom: 2px solid #ececec;
  vertical-align: middle;
}

.price-cloud table tr td {
  /* width: 33%; padding: 7px 0;*/
  font-size: 1.3rem;
  border-right: 2px solid #ececec;
  vertical-align: middle;
}

@media screen and (min-width: 751px) {
  .price-cloud table tr td {
    font-size: 1.5rem;
    padding: 3px 15px;
  }
    .price-cloud table th.title-column{
    width: 20%;
  }
    .price-cloud table th.space{
    width: 5%;
  }
  .price-cloud table th.plan-item{
    width: 25%;
  }
}

@media screen and (max-width: 750px) {
  .plan-table {
    width: 80%;
  }
  .plan-table .thead {
    display: none;
  }
  .plan-table tr {
    width: 100%;
  }
  .plan-table td {
    display: block;
    text-align: center;
    padding: 3px 10px;
    width: 100%;
  }
  .plan-table td:first-child {
    background: #035B90;
    color: #fff;
    font-weight: 700;
    text-align: center;
  }
  .plan-table td:before {
    content: attr(data-label);
    font-weight: bold;
    text-align: center;
    border-bottom: solid 1px #ccc;
  }
}


.price-cloud > .note {
  margin-top: 29px;
  max-width: 980px;
  margin: 23px auto 0 auto;
}

.price-cloud > .note > li {
  position: relative;
  font-size: 1.1rem;
  line-height: 1.9rem;
  padding-left: 14px;
}

.price-cloud > .note > li::before {
  content: '※';
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  color: #035b90;
}

.price-notice {
  width: 895px;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  margin: 0 auto 103px auto;
}

@media screen and (min-width: 751px) {
  .price-notice {
    display: flex;
    display: -webkit-flex;
    justify-content: space-between;
    -webkit-justify-content: space-between;
    align-items: flex-start;
    -webkit-align-items: flex-start;
  }
}

@media screen and (max-width: 750px) {
  .price-notice {
    width: 86%;
    margin: 0 auto 80px auto;
  }
}

@media screen and (max-width: 750px) {
  .price-notice > .box {
    margin-bottom: 40px;
  }
}

.price-notice > .box > h3 {
  font-size: 1.7rem;
  font-weight: 700;
  margin-bottom: 20px;
}

.price-notice > .box ul.list > li {
  font-size: 1.2rem;
  line-height: 2.0rem;
}

.price-notice > .box ul.list > li::before {
  width: 7px;
  height: 7px;
  background: #035b90;
  top: 7px;
}

.price-title {
  font-size: 2.4rem;
  line-height: 3.7rem;
  position: relative;
  text-align: left;
  width: 86.6%;
  max-width: 1124px;
  margin: 0 auto;
  padding-left: 84px;
  font-weight: 700;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
}

@media screen and (max-width: 750px) {
  .price-title {
    padding-left: 65px;
    font-size: 1.9rem;
  }
}

.price-title > .icon {
  width: 61px;
  height: 61px;
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -31px;
  border-radius: 50% 50%;
}

.price-title > .icon::before {
  content: '';
  display: block;
  width: 0;
  height: 100%;
  left: 50%;
  background: #2d2d2d;
  border-radius: 50% 50%;
  position: absolute;
  top: 0;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}

@media screen and (max-width: 750px) {
  .price-title > .icon {
    width: 50px;
    height: 50px;
    margin-top: -25px;
  }
}

.price-title > .icon img {
  position: relative;
}

.price-title span {
  position: relative;
  opacity: 0;
  filter: alpha(opacity=0);
  left: 20px;
  -webkit-transition: all 0.2s ease-out 0.2s;
  transition: all 0.2s ease-out 0.2s;
}

.price-title.-show > .icon::before {
  width: 100%;
  left: 0;
}

.price-title.-show span {
  left: 0;
  opacity: 1;
  filter: alpha(opacity=100);
}

.price-btn {
  text-align: center;
  margin-bottom: 92px;
}

.price-btn-toapply {
  display: inline-block;
  margin: 0 auto;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  font-size: 1.4rem;
  font-weight: 500;
  position: relative;
}

.price-btn-toapply > .arrow {
  width: 31px;
  position: absolute;
  right: -55px;
  top: 50%;
  margin-top: -15px;
  transform: rotate(-180deg);
  -webkit-transform: rotate(-180deg);
}

.price-btn-toapply > .arrow img {
  position: relative;
  left: 0;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}

.price-btn-toapply:hover img {
  left: -10px;
}

/*------------------------------------------------------*/
/*  installation */
/*------------------------------------------------------*/
.installation-lead {
  width: 86%;
  max-width: 800px;
  padding-top: 30px;
  margin: 0 auto 140px auto;
}

@media screen and (max-width: 750px) {
  .installation-lead {
    margin-bottom: 80px;
  }
}

.installation-lead > h2 {
  text-align: center;
  font-size: 3.1rem;
  line-height: 4.5rem;
  font-weight: 700;
  margin-bottom: 32px;
}

@media screen and (max-width: 750px) {
  .installation-lead > h2 {
    font-size: 2.6rem;
    line-height: 4.0rem;
  }
}

.installation-lead > p {
  font-size: 1.3rem;
  line-height: 2.2rem;
}

.installation-exp {
  width: 86%;
  max-width: 640px;
  margin: 0 auto 140px auto;
}

@media screen and (max-width: 750px) {
  .installation-exp {
    margin-bottom: 80px;
  }
}

.installation-exp > h2 {
  margin-bottom: 32px;
}

.installation-exp > .caption {
  font-size: 1.3rem;
  line-height: 2.1rem;
  margin-bottom: 20px;
  margin-top: 5px;
}

.installation-exp > .note {
  padding-top: 20px;
}

.installation-exp > .note > li {
  position: relative;
  font-size: 1.2rem;
  line-height: 2.1rem;
  padding-left: 15px;
}

.installation-exp > .note > li::before {
  content: '※';
  display: block;
  position: absolute;
  left: 0;
  top: 0;
}

.installation-conditions {
  margin-bottom: 50px;
}

.installation-conditions > h2 {
  margin-bottom: 32px;
}

@media screen and (min-width: 751px) {
  .installation-conditions {
    display: flex;
    display: -webkit-flex;
    justify-content: space-between;
    -webkit-justify-content: space-between;
    align-items: flex-start;
    -webkit-align-items: flex-start;
  }
}

.installation-conditions > .item {
  width: 45%;
}

@media screen and (max-width: 750px) {
  .installation-conditions > .item {
    width: 100%;
  }
}

.installation-conditions > .item .image {
  text-align: center;
  margin-bottom: 20px;
}

.installation-conditions > .item .image img {
  max-width: 300px;
}

.installation-conditions > .item > h3 {
  font-size: 1.5rem;
  font-weight: 500;
  text-align: center;
  margin-bottom: 30px;
}

.installation-conditions > .item > ul li {
  font-size: 1.3rem;
  line-height: 2.1rem;
  position: relative;
  padding-left: 20px;
  margin-bottom: 5px;
}

.installation-conditions > .item > ul li span {
  position: absolute;
  left: 0;
  top: 0;
}

.installation-cond {
  width: 86%;
  max-width: 900px;
  margin: 0 auto 140px auto;
}

@media screen and (max-width: 750px) {
  .installation-cond {
    margin-bottom: 80px;
  }
}

.installation-cond > .note {
  font-size: 1.2rem;
}

.installation-partner {
  width: 86%;
  max-width: 1120px;
  overflow-x: scroll;
  margin: 0 auto 140px auto;
}

.list-horizontal{
   /* display:table;
    table-layout:fixed;
    width:80%;
    padding: 10px 20px; */
}

.list-horizontal li {
  float: left;
}

.installation-partner > a.anchor{
    padding-top: 300px;
    margin-top: -300px;
  　text-decoration: underline;
}


@media screen and (max-width: 750px) {
  .installation-partner {
    margin-bottom: 80px;
  }
}

.installation-partner h2 {
  margin-bottom: 32px;
}

.installation-partner .lead {
  font-size: 1.3rem;
  line-height: 2.1rem;
  margin-bottom: 30px;
  max-width: 900px;
  margin: 0 auto 30px auto;
}

.installation-partner .form-mm {
  height: auto !important;
  max-height: 9999px;
  display: none;
}

.installation-partner .form-mm.-open {
  display: block;
}

.installation-partner__list {
  padding-top: 50px;
}

.installation-partner__list table {
  border: 2px solid #ececec;
  margin-bottom: 50px;
  width:100%;
}


.installation-partner__list table tr td {
  padding: 9px 10px 9px 10px;
  font-size: 1.3rem;
}

.installation-partner__list table tr td.area {
  padding: 15px 10px 15px 20px;
  font-size: 1.6rem;
  font-weight: 500;
  width: 100%;
}

.installation-partner__list table tr td.cell1 {
  width: 30%;
}

.installation-partner__list table tr td.cell2 {
  width: 28%;
}

.installation-partner__list table tr td.cell3 {
  width: 15%;
}

.installation-partner__list table tr td.cell4 {
  width: 12%;
}

.installation-partner__list table tr td.cell5 {
  width: 15%;
}

.installation-partner__list table tr td:nth-of-type(1) {
  width: 30%;
}

.installation-partner__list table tr td:nth-of-type(2){
  width: 30%;
}

.installation-partner__list table tr td:nth-of-type(3) {
  width: 15%;
}

.installation-partner__list table tr td:nth-of-type(4) {
  width: 10%;
}

.installation-partner__list table tr td:nth-of-type(5) {
  width: 15%;
}

@media screen and (max-width: 750px) {
  .installation-partner__list table tr td {
    display: block;
    width: 100% !important;
    padding: 0 10px 0 20px;
  }
  .installation-partner__list table tr td:first-of-type {
    padding-top: 10px;
  }
  .installation-partner__list table tr td:last-of-type {
    padding-bottom: 10px;
  }
}

.installation-partner__list table tr:nth-child(even) {
  background: #fbfbfb;
}

.installation-document {
  width: 86%;
  max-width: 1120px;
  margin: 0 auto 140px auto;
}

@media screen and (max-width: 750px) {
  .installation-document {
    margin-bottom: 80px;
  }
}

.installation-document h2 {
  margin-bottom: 32px;
}

.installation-document .lead {
  font-size: 1.3rem;
  line-height: 2.1rem;
  margin-bottom: 30px;
  max-width: 900px;
  margin: 0 auto 30px auto;
}

.installation-document table {
  border: 2px solid #ececec;
}

.installation-document table tr th {
  font-size: 1.4rem;
  font-weight: 500;
  padding: 12px 10px 12px 20px;
}

@media screen and (max-width: 750px) {
  .installation-document table tr th {
    display: block;
    width: 100% !important;
    padding: 0 10px 0 20px;
  }
  .installation-document table tr th:first-of-type {
    padding-top: 20px;
  }
}

.installation-document table tr td {
  padding: 12px 10px 12px 20px;
  font-size: 1.5rem;
  position: relative;
}

.installation-document table tr td.area {
  padding: 15px 10px 15px 20px 10px;
  font-size: 1.6rem;
  font-weight: 500;
}

.installation-document table tr td.cell1 {
  width: 25%;
}

.installation-document table tr td.cell2 {
  width: 15%;
}

.installation-document table tr td.cell3 {
  width: 45%;
}

.installation-document table tr td.cell4 {
  width: 20%;
}

@media screen and (max-width: 750px) {
  .installation-document table tr td {
    display: block;
    width: 100% !important;
    padding: 5px 10px 5px 20px;
  }
  .installation-document table tr td:last-of-type {
    padding-bottom: 20px;
  }
}

.installation-document table tr td a {
  display: inline-block;
  position: relative;
}

.installation-document table tr td a::after {
  content: '';
  display: block;
  width: 100%;
  height: 1px;
  background: #000;
  position: absolute;
  left: 0;
  bottom: -2px;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}

.installation-document table tr td a:hover::after {
  width: 0;
  left: 50%;
}

.installation-document table tr:nth-child(even) {
  background: #fbfbfb;
}

/*------------------------------------------------------*/
/*  casestudy */
/*------------------------------------------------------*/
.casestudy-lead {
  width: 86%;
  max-width: 800px;
  padding-top: 30px;
  margin: 0 auto 120px auto;
}

@media screen and (max-width: 750px) {
  .casestudy-lead {
    margin-bottom: 80px;
  }
}

.casestudy-lead > h2 {
  text-align: center;
  font-size: 28px;
  line-height: 4.5rem;
  font-weight: 700;
  margin-bottom: 32px;
}

@media screen and (max-width: 750px) {
  .casestudy-lead > h2 {
    font-size: 1.8rem;
    line-height: 3.0rem;
  }
}

.casestudy-lead > h3 {
  font-size: 20px;
  line-height: 2.2rem;
  font-weight: bold; 
  text-decoration: underline;
  margin-top: 28px;
  margin-bottom: 10px;
}

@media screen and (max-width: 750px) {
  .casestudy-lead > h3 {
  font-size: 18px;　
  line-height: 1.6rem; 
  margin-top: 20px;
  margin-bottom: 8px;  
      }
}

.casestudy-lead > p {
  font-size: 18px;
  line-height: 2.3rem;
  margin: 23px 0px;
}

@media screen and (max-width: 750px) {
  .casestudy-lead > p {
  font-size: 14px;　
  line-height: 1.7rem; 
      }
}

.casestudy-lead > p.note {
  font-size: 16px;
  line-height: 2.0rem;
  margin: 5px 0px;

}

.casestudy-lead > p  > a {
  color: #0600ff; 
  text-decoration: underline;
}

.casestudy-lead > p  > img {
  margin; 18px 0;
  text-align: center;
}

.casestudy-lead > ul.reccomend {
  margin: 16px 0px;
  
}  

.casestudy-lead > ul.reccomend > li {
  font-size: 18px;
  line-height: 2.2rem;
  margin: 8px;
}  

@media screen and (max-width: 750px) {
  .casestudy-lead > ul.reccomend > li {
  font-size: 14px;
  line-height: 16px;
  margin 8px;
  }  
}

.casestudy-lead > div {
 margin:  45px auto;  
}  


.casestudy-lead > div.kakomi-box3 {
    position: relative;
    padding: 1em 1.5em;
    margin: 4em 0;
    border: solid 3px #c71585;/*線*/
    border-radius: 8px;/*角の丸み*/
    color: #000000;/*文字色*/
    width:95%;
    font-size: 16x; 
}

.casestudy-lead > div.kakomi-box3 div.kakomi-box3_title {
    position: absolute;
    display: inline-block;
    top: -13px;
    left: 10px;
    padding: 0 10px;
    line-height: 1;
    font-size: 16px;/*タイトル文字サイズ*/
    background: #ffffff;/*タイトル文字背景色*/
    color: #c71585;/*タイトル文字色*/
    font-weight: bold;
}

.casestudy-lead > div.kakomi-box3 ol, .kakomi-box3 ul  {　}

.casestudy-lead > div.kakomi-box3 ol li, .kakomi-box3 ul li {
  font-size: 16px;
  line-height: 1.3;
  padding: 0.3em 0 0.3em 0;
}

.casestudy-lead > div.kakomi-box3 ol li::before, .kakomi-box3 ul li::before {
  content: "・";  
}

.casestudy-lead > div.kakomi-box3 p {
    font-size: 16px;
    margin: 0; 
    padding: 0; 
}

.casestudy-lead > div.kakomi-box3 a {
  color: #0600ff; 
  text-decoration: underline;
}



.casestudy-scene {
  max-width: 1220px;
  margin: 0 auto 140px auto;
}

@media screen and (min-width: 751px) {
  .casestudy-scene {
    width: 95%;
    max-width: 1220px;
  }
}

@media screen and (max-width: 750px) {
  .casestudy-scene {
    margin-bottom: 80px;
  }
}

.casestudy-scene > h2 {
  margin-bottom: 37px;
  font-size: 2.4rem;
}

@media screen and (max-width: 750px) {
  .casestudy-scene > h2 {
    font-size: 1.9rem;
  }
}

.casestudy-scene__item {
  margin-bottom: 30px;
  position: relative;
}

@media screen and (min-width: 751px) {
  .casestudy-scene__item {
    display: flex;
    display: -webkit-flex;
    justify-content: space-between;
    -webkit-justify-content: space-between;
    align-items: center;
    -webkit-align-items: center;
  }
  .casestudy-scene__item > .photo {
    width: 50%;
  }
  .casestudy-scene__item > .text {
    width: 50%;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    padding: 0 0 0 9%;
  }
}

@media screen and (max-width: 750px) {
  .casestudy-scene__item {
    margin-bottom: 40px;
  }
  .casestudy-scene__item h3 {
    width: 86%;
    margin: 0 7% 10px 7%;
    font-size: 1.5rem;
    font-weight: 700;
  }
}

.casestudy-scene__item > .text > h3 {
  font-size: 2.0rem;
  font-weight: 700;
  margin-bottom: 27px;
}

@media screen and (max-width: 750px) {
  .casestudy-scene__item > .text > ul {
    width: 86%;
    margin: 15px 7% 0 7%;
  }
}

.casestudy-scene__item > .text > ul > li {
  font-size: 1.2rem;
  line-height: 2.1rem;
  margin-bottom: 21px;
  position: relative;
}

.casestudy-scene__item > .text > ul > li::before {
  content: '';
  display: block;
  width: 7px;
  height: 7px;
  background: #000;
  position: absolute;
  left: -29px;
  top: 8px;
  border-radius: 50% 50%;
}

@media screen and (max-width: 750px) {
  .casestudy-scene__item > .text > ul > li {
    padding-left: 20px;
    margin-bottom: 5px;
  }
  .casestudy-scene__item > .text > ul > li::before {
    left: 0;
  }
}

.casestudy-scene__item .link-more {
  position: absolute;
  bottom: 0;
  right: 0;
}

@media screen and (max-width: 750px) {
  .casestudy-scene__item .link-more {
    top: 0;
    right: 3%;
    font-size: 1.2rem;
    padding-right: 30px;
  }
}

.casestudy-story {
  max-width: 1140px;
  margin: 0 auto 150px auto;
}

@media screen and (max-width: 1139px) {
  .casestudy-story {
    max-width: 760px;
  }
}

@media screen and (max-width: 750px) {
  .casestudy-story {
    width: 86%;
    margin-bottom: 80px;
  }
}

.casestudy-story > h2 {
  margin-bottom: 42px;
  font-size: 2.4rem;
}

@media screen and (max-width: 750px) {
  .casestudy-story > h2 {
    font-size: 1.9rem;
  }
}

.casestudy-story > ul {
  letter-spacing: -.40em;
}

.casestudy-story > ul > .item {
  width: 380px;
  letter-spacing: normal;
  display: inline-block;
  vertical-align: top;
  position: relative;
}

@media screen and (max-width: 750px) {
  .casestudy-story > ul > .item {
    width: 100%;
    margin-bottom: 30px;
  }
}

.casestudy-story > ul > .item a {
  display: block;
  position: relative;
  color: #fff;
}

@media screen and (max-width: 750px) {
  .casestudy-story > ul > .item a {
    display: flex;
    display: -webkit-flex;
    justify-content: space-between;
    -webkit-justify-content: space-between;
    align-items: top;
    -webkit-align-items: top;
    color: #000;
  }
  .casestudy-story > ul > .item a > .thumbnail {
    width: 40%;
    position: relative;
    text-align: center;
  }
  .casestudy-story > ul > .item a > .thumbnail > .inner {
    position: relative;
    display: inline-block;
    margin: 0 auto;
  }
  .casestudy-story > ul > .item a > .thumbnail > .inner > .icon {
    font-size: 1.1rem;
    line-height: 2.0rem;
    position: relative;
    padding-right: 25px;
    margin-top: 10px;
  }
  .casestudy-story > ul > .item a > .thumbnail > .inner > .icon > .arrow {
    width: 20px;
    height: 20px;
    border-radius: 50% 50%;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    border: 2px solid #000;
    position: absolute;
    right: 0px;
    bottom: 0px;
  }
  .casestudy-story > ul > .item a > .thumbnail > .inner > .icon > .arrow::before {
    content: '';
    width: 6px;
    height: 2px;
    background: #000;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -3px;
    margin-top: -1px;
  }
  .casestudy-story > ul > .item a > .thumbnail > .inner > .icon > .arrow::after {
    content: '';
    width: 2px;
    height: 6px;
    background: #000;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -1px;
    margin-top: -3px;
  }
}

.casestudy-story > ul > .item a > .cover {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  padding: 56px 16% 0 16%;
}

.casestudy-story > ul > .item a > .cover::before {
  content: '';
  width: 100%;
  height: 100%;
  background: #035b90;
  opacity: 0;
  filter: alpha(opacity=0);
  position: absolute;
  left: 0;
  top: 0;
  -webkit-transition: all 0.3s ease-out 0.2s;
  transition: all 0.3s ease-out 0.2s;
}

.casestudy-story > ul > .item a > .cover > .lead {
  font-size: 1.1rem;
  line-height: 2.0rem;
  position: relative;
}

.casestudy-story > ul > .item a > .cover > h3 {
  font-size: 1.4rem;
  position: relative;
  margin-bottom: 11px;
  opacity: 0;
  filter: alpha(opacity=0);
  top: 10px;
  -webkit-transition: all 0.3s ease-out 0.1s;
  transition: all 0.3s ease-out 0.1s;
}

.casestudy-story > ul > .item a > .cover > h3 > span {
  font-size: 1.1rem;
}

.casestudy-story > ul > .item a > .cover .text {
  font-size: 1.1rem;
  line-height: 2.0rem;
  position: relative;
  opacity: 0;
  filter: alpha(opacity=0);
  top: 10px;
  -webkit-transition: all 0.3s ease-out 0s;
  transition: all 0.3s ease-out 0s;
}

.casestudy-story > ul > .item a > .cover > .icon {
  width: 28px;
  height: 28px;
  border-radius: 50% 50%;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  border: 3px solid #fff;
  position: absolute;
  left: 50%;
  margin-left: -14px;
  bottom: 35px;
  -webkit-transition: all 0.3s ease-out 0.2s;
  transition: all 0.3s ease-out 0.2s;
  opacity: 0;
  filter: alpha(opacity=0);
}

.casestudy-story > ul > .item a > .cover > .icon::before {
  content: '';
  width: 8px;
  height: 2px;
  background: #fff;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -4px;
  margin-top: -1px;
}

.casestudy-story > ul > .item a > .cover > .icon::after {
  content: '';
  width: 2px;
  height: 8px;
  background: #fff;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -1px;
  margin-top: -4px;
}

@media screen and (max-width: 750px) {
  .casestudy-story > ul > .item a > .cover {
    width: 60%;
    position: relative;
    padding: 0 0 0 5%;
  }
  .casestudy-story > ul > .item a > .cover::before {
    display: none;
  }
  .casestudy-story > ul > .item a > .cover > .lead {
    font-size: 1.1rem;
    line-height: 2.0rem;
    position: relative;
  }
  .casestudy-story > ul > .item a > .cover > h3 {
    font-size: 1.2rem;
    line-height: 1.5rem;
    opacity: 1;
    filter: alpha(opacity=100);
    top: 0;
  }
  .casestudy-story > ul > .item a > .cover > h3 > span {
    font-size: 1.0rem;
  }
  .casestudy-story > ul > .item a > .cover .text {
    opacity: 1;
    filter: alpha(opacity=100);
    top: 0;
  }
}

.casestudy-story > ul > .item a:hover > .cover::before {
  -webkit-transition: all 0.3s ease-out 0s;
  transition: all 0.3s ease-out 0s;
  opacity: 0.95;
  filter: alpha(opacity=95);
}

.casestudy-story > ul > .item a:hover > .cover > h3 {
  -webkit-transition: all 0.3s ease-out 0.1s;
  transition: all 0.3s ease-out 0.1s;
  opacity: 1;
  filter: alpha(opacity=100);
  top: 0;
}

.casestudy-story > ul > .item a:hover > .cover .text {
  -webkit-transition: all 0.3s ease-out 0.2s;
  transition: all 0.3s ease-out 0.2s;
  opacity: 1;
  filter: alpha(opacity=100);
  top: 0;
}

.casestudy-story > ul > .item a:hover > .cover .icon {
  -webkit-transition: all 0.3s ease-out 0s;
  transition: all 0.3s ease-out 0s;
  opacity: 1;
  filter: alpha(opacity=100);
}

/*------------------------------------------------------*/
/*  casestudy - single 　あるけどここは複製、2022年時点ではpage-installation.cssを参照? 謎　　*/   
/*------------------------------------------------------*/
.casestudy-single__head {
  width: 95%;
  max-width: 1220px;
  margin: 0 auto 60px auto;
}

@media screen and (max-width: 750px) {
  .casestudy-single__head {
    margin-bottom: 50px;
  }
}

.casestudy-single__head .caption {
  font-size: 2.0rem;
  text-align: center;
  margin-bottom: 15px;
  padding-top: 30px;
}

@media screen and (max-width: 750px) {
  .casestudy-single__head .caption {
    font-size: 1.4rem;
    margin-bottom: 5px;
  }
}

.casestudy-single__head h2 {
  font-size: 2.6rem;
  line-height: 3.8rem;
  text-align: center;
  font-weight: 700;
  margin-bottom: 50px;
}

@media screen and (max-width: 750px) {
  .casestudy-single__head h2 {
    width: 86%;
    font-size: 1.8rem;
    line-height: 2.4rem;
    margin: 0 auto 25px auto;
  }
}

@media screen and (min-width: 751px) {
  .casestudy-single__head .wrap {
    display: flex;
    display: -webkit-flex;
    justify-content: space-between;
    -webkit-justify-content: space-between;
    align-items: center;
    -webkit-align-items: center;
  }
  .casestudy-single__head .wrap > .widget-span {
    display: flex;
    display: -webkit-flex;
    justify-content: space-between;
    -webkit-justify-content: space-between;
    align-items: center;
    -webkit-align-items: center;
  }
  .casestudy-single__head .wrap > .widget-span > .row-depth-2 {
    width: 50%;
  }
  .casestudy-single__head .wrap > .widget-span > .row-depth-2:last-of-type {
    width: 45%;
  }
  .casestudy-single__head .wrap.-page2 > .widget-span > .row-depth-2 {
    width: 100% !important;
  }
}

.casestudy-single__head .wrap .photo img {
  width: 100% !important;
}

.casestudy-single__head .wrap .text {
  text-align: center;
}

@media screen and (max-width: 750px) {
  .casestudy-single__head .wrap .text {
    margin-top: 15px;
  }
}

.casestudy-single__head .wrap .text .logo {
  margin-bottom: 30px;
}

@media screen and (max-width: 750px) {
  .casestudy-single__head .wrap .text .logo img {
    max-width: 60%;
  }
}

.casestudy-single__head .wrap .text .name {
  font-size: 1.8rem;
}

.casestudy-single__head .wrap .text .name span {
  font-size: 1.4rem;
}

.casestudy-single__head .wrap .text .url {
  font-size: 1.2rem;
  font-family: 'poppins';
  text-decoration: none;
}

.casestudy-single__head .wrap .text .url:hover {
  text-decoration: underline;
}

.casestudy-single__head .wrap .text .txt {
  width: 90%;
  margin: 30px auto 0 auto;
  text-align: left;
  font-size: 1.3rem;
  line-height: 2.1rem;
}

@media screen and (max-width: 750px) {
  .casestudy-single__head .wrap .text .txt {
    width: 86%;
  }
}

.casestudy-single__head .wrap .text .btn-back {
  margin-top: 40px;
}

.casestudy-single__lead {
  width: 86%;
  max-width: 1040px;
  margin: 0 auto 80px auto;
  font-size: 1.3rem;
  line-height: 2.1rem;
}

@media screen and (max-width: 750px) {
  .casestudy-single__lead {
    margin-bottom: 50px;
  }
}

.casestudy-single__lead span {
  font-weight: 700;
}

.casestudy-single__lead a {
  color: #0600ff; text-decoration: underline;
}



.casestudy-single__point {
  width: 86%;
  max-width: 1040px;
  margin: 0 auto 80px auto;
}

@media screen and (max-width: 750px) {
  .casestudy-single__point table {
    border: 2px solid #ececec;
  }
}

.casestudy-single__point table tr {
  height: auto !important;
}

.casestudy-single__point table tr th {
  font-size: 1.8rem;
  font-weight: 500;
  vertical-align: middle;
  width: 20%;
  text-align: center;
  height: auto !important;
  position: relative;
}

@media screen and (min-width: 751px) {
  .casestudy-single__point table tr th {
    color: #fff;
  }
  .casestudy-single__point table tr th::before {
    content: '';
    width: 150px;
    height: 150px;
    position: absolute;
    border-radius: 50% 50%;
    background: #035b90;
    z-index: -1;
    left: 50%;
    top: 50%;
    transform: translateX(-50%) translateY(-50%);
    -webkit-transform: translateX(-50%) translateY(-50%);
  }
}

@media screen and (max-width: 750px) {
  .casestudy-single__point table tr th {
    display: block;
    width: 100% !important;
    padding: 25px 0 15px 0;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    border-bottom: none;
    border-right: none;
    border-right: 1px solid #ececec;
    color: #035b90;
  }
  .casestudy-single__point table tr th::before {
    content: '';
    width: 20px;
    height: 2px;
    background: #035b90;
    position: absolute;
    left: 50%;
    top: 38px;
    margin-top: -1px;
    margin-left: 50px;
  }
  .casestudy-single__point table tr th::after {
    content: '';
    width: 20px;
    height: 2px;
    background: #035b90;
    position: absolute;
    right: 50%;
    top: 38px;
    margin-top: -1px;
    margin-right: 50px;
  }
}

.casestudy-single__point table tr td {
  padding: 30px 50px 30px 50px;
  font-size: 1.5rem;
  position: relative;
  height: auto !important;
}

.casestudy-single__point table tr td .caption {
  font-size: 1.8rem;
  font-weight: 500;
  margin-bottom: 15px;
}

@media screen and (max-width: 750px) {
  .casestudy-single__point table tr td {
    display: block;
    width: 100% !important;
    padding: 5px 20px 25px 20px;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    border-bottom: 1px solid #ececec;
    font-size: 1.3rem;
  }
  .casestudy-single__point table tr td .caption {
    font-size: 1.6rem;
  }
}

.casestudy-single__faq {
  width: 86%;
  max-width: 1040px;
  margin: 0 auto 100px auto;
}

@media screen and (max-width: 750px) {
  .casestudy-single__faq {
    margin-bottom: 80px;
  }
}

.casestudy-single__faq .item {
  margin-bottom: 60px;
}

.casestudy-single__faq .item dt {
  position: relative;
  padding-left: 60px;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 47px;
  margin-bottom: 25px;
}

@media screen and (max-width: 750px) {
  .casestudy-single__faq .item dt {
    font-size: 1.5rem;
    line-height: 28px;
  }
}

.casestudy-single__faq .item dt > .faq-q {
  display: block;
  left: 0;
  top: 0;
}

.casestudy-single__faq .item dd {
  position: relative;
  padding-left: 60px;
  font-size: 1.6rem;
  line-height: 2.6rem;
}

@media screen and (max-width: 750px) {
  .casestudy-single__faq .item dd {
    font-size: 1.3rem;
  }
}

.casestudy-single__faq .item dd .caption {
  font-size: 2.0rem;
  line-height: 2.8rem;
  font-weight: 500;
  margin-bottom: 10px;
  color: #035b90;
}

@media screen and (max-width: 750px) {
  .casestudy-single__faq .item dd .caption {
    font-size: 1.6rem;
    margin-top:0px;
    margin-bottom:10px;
  }
}

 .casestudy-single__faq .item dd p {
  margin-top: 26px;
  margin-bottom: 26px;
}   


@media screen and (max-width: 750px) {
   .casestudy-single__faq .item dd p {
  margin-top: 20px;
  margin-bottom: 20px;
  }   }
  
  

 .casestudy-single__faq .item dd p.note {
  font-size: 12px; 
  margin-top: 30px;
  margin-bottom: 18px;
}   


.casestudy-single__faq .item dd.comment {
  margin-top: 20px;
}

.casestudy-single__faq .item dd.comment .fromkke {
  font-weight: 500;
  padding-left: 15px;
  position: relative;
}

.casestudy-single__faq .item dd.comment .fromkke:before {
  content: '';
  width: 5px;
  height: 5px;
  position: absolute;
  left: 0;
  top: 8px;
  background: #035b90;
  border-radius: 50% 50%;
}

.casestudy-single__faq .item dd.comment .fromkke a {
  text-decoration: underline;
}

.casestudy-single__faq .item dd figure {
  display: block;
  text-align: center;
  margin-top: 40px;
  margin-bottom: 40px;
}

.casestudy-single__faq .item dd figure img {
  max-width: 60%;
}

@media screen and (max-width: 750px) { 
 .casestudy-single__faq .item dd figure img {
  max-width: 90%;
  }}

.casestudy-single__faq .item dd figure img.large {
  max-width: 800px; 
  max-height: 450px;
  text-align:　center;
  margin-left: auto; 
  margin-right: auto;
}

.casestudy-single__faq .item dd figure p.figcaption {
  display: block;
  font-size: 14px;
  line-height: 1.5em;
  max-width: 65%;
  margin: 5px auto;
}

@media screen and (max-width: 750px) { 
 .casestudy-single__faq .item dd figure p.figcaption {
  max-width: 95%;
  }}

.casestudy-single__faq .item dd .faq-a {
  left: 0;
  top: -17px;
}

.casestudy-single__faq .item dd .faq-a::before {
  background: url(https://remotelock.kke.co.jp/hubfs/image/renewal2018/faq/a_off.png) no-repeat 0 0;
  background-size: contain;
  -webkit-background-size: contain;
  opacity: 1;
  filter: alpha(opacity=100);
}

.casestudy-single__faq .item dd .btn-next {
  margin-top: 30px;
}

.casestudy-single__faq a {
  color: #0600ff; 
  text-decoration: underline;
}


.casestudy-single__next {
  max-width: 1220px;
  margin: 0 auto;
}

.casestudy-single__next h2 {
  margin-bottom: 35px;
}

@media screen and (max-width: 750px) {
  .casestudy-single__next h2 {
    margin-bottom: 20px;
  }
}

.casestudy-single__next .lead {
  font-size: 1.6rem;
  text-align: center;
  margin-bottom: 25px;
}

@media screen and (max-width: 750px) {
  .casestudy-single__next .lead {
    font-size: 1.3rem;
    line-height: 2.1rem;
  }
}

.casestudy-single__next .list {
  width: 600px;
  margin: 0 auto 50px auto;
  letter-spacing: -.40em;
}

.casestudy-single__next .list li {
  display: inline-block;
  width: 50%;
  letter-spacing: normal;
  vertical-align: top;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
}

.casestudy-single__next .list li::before {
  background: #035b90;
}

@media screen and (max-width: 750px) {
  .casestudy-single__next .list {
    width: 86%;
    margin-bottom: 25px;
  }
  .casestudy-single__next .list li {
    width: 100%;
  }
}

.casestudy-single__comment {
  max-width: 1040px;
  margin: -30px auto 60px 60px;
  font-size: 1.3rem;
  line-height: 2.4rem;
  background: #f7f7f7;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  padding: 15px 25px;
}

.casestudy-single__comment > p {
  font-size: 1.2rem;
  margin: 8px auto;
}



.casestudy-single__comment > p:first-of-type {
  font-weight: 500;
  font-size: 1.4rem;
  margin-top:0px;
  margin-bottom: 3px;
}

@media screen and (max-width: 750px) {
  .casestudy-single__comment {
    width: 86%;
    margin-bottom: 80px;
  }
}

.casestudy-single__merit {
  max-width: 1040px;
  margin: 0 auto 80px auto;
  font-size: 1.5rem;
  line-height: 2.1rem;
  text-align: center;
}

@media screen and (max-width: 750px) {
  .casestudy-single__merit {
    width: 86%;
    margin-bottom: 80px;
  }
}

.casestudy-single__merit .list {
  width: 600px;
  margin: 30px auto 0 auto;
}

.casestudy-single__merit .list li {
  font-size: 1.3rem;
  line-height: 2.1rem;
  text-align: left;
}

@media screen and (max-width: 486px) {
  .casestudy-single__merit .list {
    width: 100%;
  }
}

.casestudy-single__summary > .lead {
  width: 86%;
  max-width: 1040px;
  margin: 0 auto 15px auto;
  font-size: 1.6rem;
  line-height: 2.4rem;
  text-align:center;
  font-weight:bold;
}

@media screen and (max-width: 750px) {
  .casestudy-single__summary > .lead {
    font-size:14px:
  }
}

.casestudy-single__summary a {
  display: block;
  text-align: center;
  color: #fff;
  width: 86%;
  padding: 62px 0;
  max-width: 1040px;
  margin: 0 auto;
  margin-bottom: 80px;
  background: #035b90;
  position: relative;
}

.casestudy-single__summary a::before {
  content: '';
  position: absolute;
  left: 50%;
  top: 0;
  width: 0;
  height: 100%;
  -webkit-transition: all 0.3s ease-out 0s;
  transition: all 0.3s ease-out 0s;
  background: #2d2d2d;
}

.casestudy-single__summary a > span {
  font-size: 1.4rem;
  position: relative;
}

.casestudy-single__summary a > .icon {
  width: 31px;
  position: absolute;
  top: 50%;
  margin-top: -15px;
  right: 50%;
  margin-right: -146px;
}

.casestudy-single__summary a > .icon img {
  position: relative;
  left: 0;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}

.casestudy-single__summary a:hover::before {
  width: 100%;
  left: 0;
}

.casestudy-single__summary a:hover > .icon img {
  left: 6px;
}

@media screen and (max-width: 750px) {
  .casestudy-single__summary a {
    width: 86%;
    margin: 40px auto 80px auto;
    padding: 30px 0;
  }
  .casestudy-single__summary a > span {
    display: inline-block;
    padding-right: 16px;
  }
  .casestudy-single__summary a > .icon {
    margin-right: -136px;
  }
}

/*------------------------------------------------------*/
/*  casestudy - scene */
/*------------------------------------------------------*/
@media screen and (min-width: 751px) {
  .scene-single .breadnav {
    margin-bottom: 0;
  }
}

.scene-image {
  max-width: 1280px;
  margin: 0 auto;
}

@media screen and (min-width: 751px) {
  .scene-image {
    display: flex;
    display: -webkit-flex;
    justify-content: space-between;
    -webkit-justify-content: space-between;
    align-items: center;
    -webkit-align-items: center;
  }
}

@media screen and (max-width: 750px) {
  .scene-image {
    margin: 0 auto 60px auto;
  }
}

.single-image{
  display: block;
  width: 70%;
  max-width: 800px;
  position: relative;
  margin: auto;
  text-align: center;
}

.scene-image > .image {
  width: 50%;
  position: relative;
  overflow: hidden;
}

@media screen and (max-width: 750px) {
  .scene-image > .image {
    width: 100%;
  }
}

.scene-image > .image::before {
  content: '';
  display: block;
  width: 100%;
  padding-top: 70.3%;
  position: relative;
}

.scene-image > .image > ul {
  position: absolute;
  width: 100%;
  left: 0;
  top: 0;
}

.scene-image > .image > ul > li {
  width: 100%;
  position: absolute;
  left: 100%;
  top: 0;
}

.scene-image > .image > ul > li:first-of-type {
  left: 0;
}

.scene-image > .text {
  width: 50%;
}

@media screen and (max-width: 750px) {
  .scene-image > .text {
    width: 100%;
  }
}

.scene-image > .text > .inner {
  max-width: 326px;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
}

@media screen and (max-width: 750px) {
  .scene-image > .text > .inner {
    max-width: 86%;
    margin-bottom: 20px;
  }
}

.scene-image > .text > .inner > h2 {
  font-size: 2.7rem;
  line-height: 4.2rem;
  font-weight: 700;
  margin-bottom: 22px;
}

@media screen and (max-width: 750px) {
  .scene-image > .text > .inner > h2 {
    text-align: center;
    font-size: 2.4rem;
    line-height: 3.2rem;
    padding-top: 20px;
  }
}

.scene-image > .text > .inner > h3 {
  font-size: 1.9rem;
  line-height: 2.5rem;
  font-weight: 700;
  margin-bottom: 10px;
}

@media screen and (max-width: 750px) {
  .scene-image > .text > .inner > h3 {
    text-align: center;
    font-size: 1.6rem;
    line-height: 2.4rem;
  }
}

.scene-image > .text > .inner > p {
  font-size: 1.3rem;
  line-height: 2.5rem;
}

.scene-image > .text > .inner > p.txt1 {
  margin-bottom: 40px;
}

.scene-image2 {
  margin-bottom: 112px;
}

@media screen and (min-width: 751px) {
  .scene-image2 {
    align-items: flex-start;
    -webkit-align-items: flex-start;
    flex-direction: row-reverse;
    -webkit-flex-direction: row-reverse;
  }
}

@media screen and (min-width: 1190px) {
  .scene-image2 {
    align-items: center;
    -webkit-align-items: center;
  }
}

.scene-image2 > .text > .inner {
  width: 88%;
  max-width: 490px;
}

@media screen and (min-width: 751px) {
  .scene-image2 > .text > .inner {
    margin-top: 52px;
    margin-left: 6px;
  }
}

@media screen and (min-width: 1190px) {
  .scene-image2 > .text > .inner {
    margin-top: 92px;
  }
}

@media screen and (max-width: 750px) {
  .scene-image2 > .text > .inner {
    width: 86%;
    max-width: 100%;
  }
}

.scene-image2 > .text > .inner > p {
  line-height: 2.1rem;
  margin-bottom: 40px;
}

.scene-title {
  text-align: center;
  font-weight: 700;
  font-size: 2.7rem;
  line-height: 3.7rem;
}

.scene-title > .en {
  font-size: 3.0rem;
  letter-spacing: -0.02em;
  display: inline-block;
  margin-right: 18px;
}

.scene-title > .en .blue {
  color: #035b90;
}

@media screen and (max-width: 750px) {
  .scene-title {
    font-size: 2.4rem;
    line-height: 3.4rem;
  }
  .scene-title > .en {
    font-size: 2.6rem;
    margin-right: 8px;
  }
}

@media screen and (max-width: 486px) {
  .scene-title > .en {
    margin-right: 0;
  }
}

.scene-feature {
  max-width: 1140px;
  margin: 0 auto 137px auto;
}

@media screen and (max-width: 750px) {
  .scene-feature {
    margin-bottom: 85px;
  }
}

.scene-feature > .scene-title {
  margin-bottom: 48px;
}

@media screen and (max-width: 750px) {
  .scene-feature > .scene-title {
    margin-bottom: 30px;
  }
}

@media screen and (min-width: 581px) {
  .scene-feature__list {
    display: flex;
    display: -webkit-flex;
    align-items: flex-start;
    -webkit-align-items: flex-start;
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
  }
}

.scene-feature__list > .item {
  position: relative;
}

@media screen and (min-width: 851px) {
  .scene-feature__list > .item {
    width: 33.3%;
  }
}

@media screen and (max-width: 850px) {
  .scene-feature__list > .item {
    width: 50%;
    margin-bottom: 60px;
  }
}

@media screen and (max-width: 580px) {
  .scene-feature__list > .item {
    width: 100%;
  }
}

.scene-feature__list > .item > .no {
  position: absolute;
  width: 52px;
  height: 52px;
  left: -20px;
  top: -15px;
  text-align: center;
  z-index: 1;
  color: #fff;
}

@media screen and (max-width: 850px) {
  .scene-feature__list > .item > .no {
    left: -5px;
  }
}

.scene-feature__list > .item > .no::before {
  content: '';
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background: #035b90;
  border-radius: 50% 50%;
}

.scene-feature__list > .item > .no > span {
  position: relative;
  font-size: 1.8rem;
  position: relative;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  font-weight: 700;
  display: block;
}

.scene-feature__list > .item > .image {
  width: 100%;
  position: relative;
  background: #2d2d2d;
  margin-bottom: 38px;
}

.scene-feature__list > .item > .image::before {
  content: '';
  display: block;
  position: relative;
  padding-top: 68.4%;
}

.scene-feature__list > .item > .image > .icon {
  position: absolute;
}

.scene-feature__list > .item > .image > .icon1 {
  width: 32.9%;
  left: 18%;
  top: 24%;
}

.scene-feature__list > .item > .image > .icon2 {
  width: 18.4%;
  left: 62%;
  top: 24%;
}

.scene-feature__list > .item > .image > .icon3 {
  width: 23.1%;
  left: 21%;
  top: 23.8%;
}

.scene-feature__list > .item > .image > .icon4 {
  width: 29.4%;
  left: 53.8%;
  top: 24%;
}

.scene-feature__list > .item > .image > .icon5 {
  width: 16%;
  left: 19%;
  top: 24%;
}

.scene-feature__list > .item > .image > .icon6 {
  width: 36.8%;
  left: 45.2%;
  top: 24%;
}

.scene-feature__list > .item > h3 {
  text-align: center;
  font-size: 1.7rem;
  line-height: 2.4rem;
  font-weight: 700;
  margin-bottom: 18px;
}

.scene-feature__list > .item > .txt {
  font-size: 1.2rem;
  line-height: 2.1rem;
  padding: 0 8%;
}

.scene-feature__list > .item2 > .image {
  background: #383838;
}

.scene-feature__list > .item3 > .no {
  left: -26px;
}

@media screen and (max-width: 850px) {
  .scene-feature__list > .item3 > .no {
    left: -5px;
  }
}

.scene-receipt {
  margin-bottom: 152px;
}

@media screen and (max-width: 750px) {
  .scene-receipt {
    margin-bottom: 85px;
  }
}

.scene-receipt > .scene-title {
  margin-bottom: 10px;
}

.scene-receipt > .lead {
  text-align: center;
  font-size: 1.3rem;
  line-height: 2.1rem;
  margin-bottom: 35px;
}

.scene-receipt__block {
  width: 95%;
  max-width: 990px;
  margin: 0 auto;
}

@media screen and (min-width: 851px) {
  .scene-receipt__block {
    display: flex;
    display: -webkit-flex;
    justify-content: space-between;
    -webkit-justify-content: space-between;
    align-items: flex-start;
    -webkit-align-items: flex-start;
    flex-direction: row-reverse;
    -webkit-flex-direction: row-reverse;
  }
}

@media screen and (max-width: 850px) {
  .scene-receipt__block {
    width: 86%;
  }
}

.scene-receipt__block > .text {
  width: 46%;
  max-width: 474px;
  position: relative;
}

@media screen and (max-width: 850px) {
  .scene-receipt__block > .text {
    width: 100%;
    max-width: 100%;
    margin: 0 auto 50px auto;
  }
}

.scene-receipt__block > .text > .lead {
  font-size: 1.2rem;
  line-height: 2.1rem;
  padding-left: 12px;
}

.scene-receipt__block > .image {
  width: 50%;
  max-width: 408px;
  position: relative;
  margin-right: 26px;
  top: -3px;
}

@media screen and (max-width: 850px) {
  .scene-receipt__block > .image {
    width: 86%;
    margin: 0 auto 70px auto;
  }
}

.scene-receipt__block > .image::before {
  content: '';
  display: block;
  position: relative;
  padding-top: 92.6%;
}

.scene-receipt__block > .image > .arrow {
  position: absolute;
}

.scene-receipt__block > .image > .arrow1 {
  width: 6.3%;
  left: 17.3%;
  top: 37%;
}

.scene-receipt__block > .image > .arrow2 {
  width: 9%;
  left: 50%;
  bottom: 10px;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
}

.scene-receipt__block > .image > .arrow3 {
  width: 6.6%;
  right: 14.3%;
  top: 37.3%;
}

.scene-receipt__step {
  margin-bottom: 50px;
}

.scene-receipt__step > h3 {
  font-size: 1.3rem;
  font-weight: 700;
  padding-left: 12px;
  margin-bottom: 5px;
}

@media screen and (max-width: 486px) {
  .scene-receipt__step > h3 {
    padding-left: 4px;
  }
}

.scene-receipt__step .item {
  position: relative;
  padding-left: 80px;
  margin-bottom: 33px;
  min-height: 46px;
}

@media screen and (max-width: 486px) {
  .scene-receipt__step .item {
    padding-left: 50px;
  }
}

.scene-receipt__step .item > .no {
  position: absolute;
  width: 54px;
  height: 54px;
  left: 0px;
  top: -3px;
  text-align: center;
  z-index: 1;
  color: #fff;
}

.scene-receipt__step .item > .no::before {
  content: '';
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background: #035b90;
  border-radius: 50% 50%;
}

.scene-receipt__step .item > .no > span {
  position: relative;
  font-size: 1.8rem;
  position: relative;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  font-weight: 700;
  display: block;
}

@media screen and (max-width: 486px) {
  .scene-receipt__step .item > .no {
    width: 39px;
    height: 39px;
  }
  .scene-receipt__step .item > .no > span {
    font-size: 1.5rem;
  }
}

.scene-receipt__step .item > .txt {
  font-size: 1.3rem;
  line-height: 2.3rem;
}

.scene-receipt__image {
  width: 47.5%;
  position: absolute;
}

.scene-receipt__image::before {
  content: '';
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  border-radius: 50% 50%;
  background: #2d2d2d;
}

.scene-receipt__image img {
  position: relative;
}

.scene-receipt__image > .no {
  position: absolute;
  width: 54px;
  height: 54px;
  text-align: center;
  z-index: 1;
  color: #fff;
}

.scene-receipt__image > .no::before {
  content: '';
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background: #035b90;
  border-radius: 50% 50%;
}

.scene-receipt__image > .no > span {
  position: relative;
  font-size: 1.8rem;
  position: relative;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  font-weight: 700;
  display: block;
}

@media screen and (max-width: 486px) {
  .scene-receipt__image > .no {
    width: 39px;
    height: 39px;
  }
  .scene-receipt__image > .no > span {
    font-size: 1.5rem;
  }
}

.scene-receipt__image > .txt {
  position: absolute;
  font-size: 1.3rem;
  line-height: 2.0rem;
  width: 100%;
}

.scene-receipt__image.item1 {
  top: -2px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  margin-left: 4px;
}

.scene-receipt__image.item1 > .no {
  right: -22px;
  top: 11%;
}

.scene-receipt__image.item1 > .txt {
  width: auto;
  right: -94px;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
}

.scene-receipt__image.item2 {
  bottom: 0;
  left: 0;
}

.scene-receipt__image.item2 > .no {
  left: -18px;
  bottom: 9%;
}

.scene-receipt__image.item2 > .txt {
  left: 0;
  bottom: -50px;
}

.scene-receipt__image.item3 {
  bottom: 0;
  right: 0;
}

.scene-receipt__image.item3 > .no {
  right: -18px;
  bottom: 9%;
}

.scene-receipt__image.item3 > .txt {
  left: 0;
  bottom: -50px;
}

.scene-recommend {
  margin-bottom: 156px;
}

@media screen and (max-width: 750px) {
  .scene-recommend {
    margin-bottom: 85px;
  }
}

.scene-recommend > .scene-title {
  margin-bottom: 42px;
}

@media screen and (max-width: 486px) {
  .scene-recommend > .scene-title {
    margin-bottom: 20px;
  }
}

.scene-recommend__wrap {
  width: 90%;
  max-width: 554px;
  display: flex;
  display: -webkit-flex;
  justify-content: space-between;
  -webkit-justify-content: space-between;
  align-items: flex-start;
  -webkit-align-items: flex-start;
  margin: 0 auto 44px auto;
}

.scene-recommend__wrap > .item {
  width: 46.2%;
  text-align: center;
  position: relative;
}

@media screen and (max-width: 486px) {
  .scene-recommend__wrap > .item {
    padding-top: 130px;
  }
}

.scene-recommend__wrap > .item > .image {
  border-radius: 50% 50%;
  overflow: hidden;
  position: relative;
}

.scene-recommend__wrap > .item > .image img {
  position: relative;
}

.scene-recommend__wrap > .item > .image::before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background: #eaeaea;
}

.scene-recommend__wrap > .item > .for {
  font-size: 1.4rem;
  line-height: 2.1rem;
}

@media screen and (max-width: 486px) {
  .scene-recommend__wrap > .item > .for {
    font-size: 1.2rem;
    line-height: 1.8rem;
  }
}

.scene-recommend__wrap > .item > h3 {
  font-size: 2.6rem;
  letter-spacing: -0.02em;
  font-weight: 700;
}

.scene-recommend__wrap > .item > h3 > span {
  color: #035b90;
}

@media screen and (max-width: 486px) {
  .scene-recommend__wrap > .item > h3 {
    font-size: 2.0rem;
  }
}

.scene-recommend__wrap > .item > .point {
  width: 162px;
  height: 162px;
  color: #fff;
  position: absolute;
  bottom: 30px;
}

@media screen and (max-width: 486px) {
  .scene-recommend__wrap > .item > .point {
    width: 140px;
    height: 140px;
  }
}

.scene-recommend__wrap > .item > .point::before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background: #035b90;
  border-radius: 50% 50%;
}

.scene-recommend__wrap > .item > .point > span {
  font-size: 1.2rem;
  line-height: 1.8rem;
  display: block;
  position: relative;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
}

@media screen and (max-width: 486px) {
  .scene-recommend__wrap > .item > .point > span {
    font-size: 1.0rem;
  }
}

.scene-recommend__wrap > .item > .point::after {
  content: '';
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 9.5px 0 9.5px 17px;
  border-color: transparent transparent transparent #035b90;
  position: absolute;
}

.scene-recommend__wrap > .item1 > .image {
  margin-bottom: 36px;
}

.scene-recommend__wrap > .item1 > .for {
  margin-bottom: 22px;
}

.scene-recommend__wrap > .item1 > .point {
  left: -196px;
  bottom: 37px;
}

.scene-recommend__wrap > .item1 > .point::after {
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  right: 10px;
  bottom: 16px;
}

@media screen and (max-width: 850px) {
  .scene-recommend__wrap > .item1 > .point {
    left: -96px;
    top: -45px;
  }
}

@media screen and (max-width: 486px) {
  .scene-recommend__wrap > .item1 > .point {
    left: -30px;
    top: -5px;
  }
  .scene-recommend__wrap > .item1 > .point::after {
    transform: rotate(70deg);
    -webkit-transform: rotate(70deg);
    right: 49px;
    bottom: -9px;
  }
}

.scene-recommend__wrap > .item2 > .image {
  margin-bottom: 20px;
}

@media screen and (max-width: 486px) {
  .scene-recommend__wrap > .item2 > .image {
    margin-bottom: 23px;
  }
}

.scene-recommend__wrap > .item2 > .for {
  margin-bottom: 17px;
}

.scene-recommend__wrap > .item2 > .point {
  right: -196px;
  bottom: 37px;
}

.scene-recommend__wrap > .item2 > .point::after {
  transform: rotate(255deg);
  -webkit-transform: rotate(255deg);
  left: 12px;
  bottom: 23px;
}

@media screen and (max-width: 850px) {
  .scene-recommend__wrap > .item2 > .point {
    right: -96px;
    top: -45px;
  }
}

@media screen and (max-width: 486px) {
  .scene-recommend__wrap > .item2 > .point {
    right: -30px;
    top: -5px;
  }
  .scene-recommend__wrap > .item2 > .point::after {
    transform: rotate(226deg);
    -webkit-transform: rotate(226deg);
    left: 51px;
    bottom: -4px;
  }
}

.scene-recommend > .note {
  font-size: 1.1rem;
  line-height: 2.0rem;
  text-align: center;
}

.scene-recommend > .note span {
  color: #035b90;
}

.scene-check {
  margin-bottom: 155px;
}

@media screen and (max-width: 750px) {
  .scene-check {
    margin-bottom: 85px;
  }
}

.scene-check > h2 {
  font-size: 2.4rem;
  text-align: center;
  font-weight: 700;
  margin-bottom: 48px;
}

@media screen and (max-width: 639px) {
  .scene-check > h2 {
    font-size: 1.9rem;
    margin-bottom: 25px;
  }
}

.scene-check__wrap {
  margin: 0 auto;
  position: relative;
}

@media screen and (max-width: 639px) {
  .scene-check__wrap {
    width: 100% !important;
  }
}

.scene-check__list {
  margin: 0 auto;
  position: relative;
}

.scene-check__listw {
  position: relative;
  width: 100%;
  overflow: hidden;
}

@media screen and (max-width: 639px) {
  .scene-check__listw {
    margin-left: 7%;
  }
}

.scene-check__list > .item {
  width: 260px;
  margin: 0 10px;
  text-align: center;
  float: left;
}

.scene-check__list > .item a {
  display: block;
}

.scene-check__list > .item a > .image {
  position: relative;
  overflow: hidden;
  margin-bottom: 19px;
}

.scene-check__list > .item a > .image::before {
  content: '';
  display: block;
  position: relative;
  width: 100%;
  padding-top: 57.7%;
}

.scene-check__list > .item a > .image img {
  width: 100%;
  position: absolute;
  left: 0;
  top: 0;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
  transform: scale(1, 1);
  -webkit-transform: scale(1, 1);
}

.scene-check__list > .item a > .tag {
  display: inline-block;
  padding: 1px 15px 3px 15px;
  position: relative;
  background: #035b90;
  margin-bottom: 16px;
}

.scene-check__list > .item a > .tag > span {
  color: #fff;
  font-size: 1.1rem;
  line-height: 1.6rem;
}

.scene-check__list > .item a > .txt {
  font-size: 1.2rem;
  line-height: 2.0rem;
}

@media screen and (min-width: 751px) {
  .scene-check__list > .item a:hover > .image img {
    transform: scale(1.05, 1.05);
    -webkit-transform: scale(1.05, 1.05);
  }
  .scene-check__list > .item a:hover > .txt {
    text-decoration: underline;
  }
}

@media screen and (max-width: 639px) {
  .scene-check__list > .item {
    width: 39vw;
    margin: 0 6vw 35px 0;
  }
}

.scene-check__arrow {
  width: 46px;
  position: absolute;
  margin-top: -23px;
  display: none;
}

.scene-check__arrow::before {
  content: '';
  width: 100%;
  height: 100%;
  border-radius: 50% 50%;
  background: #2d2d2d;
  position: absolute;
  left: 0;
  top: 0;
}

.scene-check__arrow img {
  position: relative;
  cursor: pointer !important;
}

.scene-check__arrowl {
  left: -13px;
}

.scene-check__arrowr {
  right: -13px;
}

@media screen and (min-width: 640px) {
  .scene-check__arrow {
    top: 75px !important;
  }
}

@media screen and (max-width: 639px) {
  .scene-check__arrow {
    width: 36px;
    margin-top: 0;
  }
  .scene-check__arrowl {
    left: calc(7% - 18px);
  }
  .scene-check__arrowr {
    right: calc(7% - 18px);
  }
}

.scene-form {
  padding-bottom: 80px;
}

.scene-form .inner {
  margin-bottom: 28px;
}

.scene-form .inner > h2 {
  text-align: center;
  font-size: 2.4rem;
  line-height: 3.2rem;
  font-weight: bold;
  margin-bottom: 31px;
}

@media screen and (max-width: 486px) {
  .scene-form .inner > h2 {
    font-size: 1.9rem;
    line-height: 2.4rem;
  }
}

.scene-form .inner > .lead {
  text-align: center;
  font-size: 1.3rem;
  line-height: 2.1rem;
  margin-bottom: 55px;
}

@media screen and (max-width: 486px) {
  .scene-form .inner > .lead {
    font-size: 1.2rem;
    margin-bottom: 28px;
  }
}

.scene-form .inner > .note {
  width: 86%;
  max-width: 700px;
  margin: 0 auto;
  transform: translateX(24px);
  -webkit-transform: translateX(24px);
}

@media screen and (max-width: 750px) {
  .scene-form .inner > .note {
    transform: translateX(0);
    -webkit-transform: translateX(0);
  }
}

.scene-form .inner > .note > li {
  font-size: 1.3rem;
  line-height: 2.5rem;
  position: relative;
  padding-left: 24px;
}

.scene-form .inner > .note > li::before {
  content: '';
  display: block;
  position: absolute;
  left: 0;
  top: 10px;
  width: 6px;
  height: 6px;
  border-radius: 50% 50%;
  background: #035b90;
}

.scene-form .inner h3 {
  text-align: center;
  font-size: 1.5rem;
  font-weight: 700;
  margin-bottom: 11px;
}

.scene-form .inner > .tel {
  text-align: center;
  position: relative;
  margin-bottom: 34px;
}

.scene-form .inner > .tel > .icon {
  width: 35px;
  position: absolute;
  left: 50%;
  margin-left: -129px;
  top: -4px;
}

.scene-form .inner > .tel > span,
.scene-form .inner > .tel > a {
  font-size: 2.7rem;
  font-weight: 700;
  letter-spacing: -.01em;
}

/*------------------------------------------------------*/
/*  system */
/*------------------------------------------------------*/
.system-head {
  margin-bottom: 93px;
}

@media screen and (min-width: 851px) {
  .system-head {
    display: flex;
    display: -webkit-flex;
    justify-content: space-between;
    -webkit-justify-content: space-between;
    align-items: center;
    -webkit-align-items: center;
    max-width: 1280px;
    margin: 0 auto 93px auto;
    position: relative;
    top: -24px;
  }
}

.system-head > .text {
  width: 39.8%;
  text-align: center;
}

.system-head > .text > .inner {
  width: 90%;
  max-width: 317px;
  margin: 0 auto;
  text-align: left;
  margin-top: 10px;
}

.system-head > .text > .inner > h2 {
  font-weight: 700;
  font-size: 3.8rem;
  letter-spacing: -.02em;
  margin-bottom: 26px;
  position: relative;
  opacity: 0;
  filter: alpha(opacity=0);
}

.system-head > .text > .inner > h2 > span {
  font-size: 3.0rem;
  color: #035b90;
  display: inline-block;
  margin: 0 9px;
}

.system-head > .text > .inner > p {
  font-size: 1.3rem;
  line-height: 2.3rem;
  position: relative;
  opacity: 0;
  filter: alpha(opacity=0);
}

@media screen and (max-width: 850px) {
  .system-head > .text {
    width: 100%;
    margin-bottom: 35px;
  }
  .system-head > .text > .inner {
    width: 86%;
    max-width: 100%;
    padding-top: 30px;
  }
  .system-head > .text > .inner > h2 {
    text-align: center;
    font-size: 3.2rem;
  }
  .system-head > .text > .inner > h2 > span {
    font-size: 2.8rem;
  }
}

.system-head > .figure {
  width: 60.2%;
  background: #2d2d2d;
}

@media screen and (max-width: 850px) {
  .system-head > .figure {
    width: 100%;
  }
}

.system-head > .figure img {
  position: relative;
  opacity: 0;
  filter: alpha(opacity=0);
}

.system-feature {
  margin-bottom: 52px;
}

@media screen and (max-width: 750px) {
  .system-feature {
    margin-bottom: 80px;
  }
}

.system-feature > h2 {
  text-align: center;
  font-size: 2.4rem;
  font-weight: 700;
  margin-bottom: 61px;
}

@media screen and (max-width: 750px) {
  .system-feature > h2 {
    font-size: 1.9rem;
    line-height: 2.7rem;
    text-align: center;
    margin-bottom: 35px;
  }
}

.system-feature__list {
  margin: 0 auto;
  position: relative;
}

@media screen and (min-width: 751px) {
  .system-feature__list {
    display: flex;
    display: -webkit-flex;
    justify-content: space-between;
    -webkit-justify-content: space-between;
    align-items: flex-start;
    -webkit-align-items: flex-start;
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    width: 95%;
    max-width: 1090px;
  }
}

@media screen and (max-width: 750px) {
  .system-feature__list {
    width: 86%;
  }
}

.system-feature__list > .item {
  width: 48.6%;
  margin-bottom: 74px;
}

.system-feature__list > .item > .thumbnail {
  position: relative;
  margin-bottom: 63px;
  opacity: 0;
  filter: alpha(opacity=0);
}

.system-feature__list > .item > .thumbnail > .tag {
  width: 194px;
  height: 80px;
  background: #035b90;
  color: #fff;
  position: absolute;
  text-align: center;
  left: 50%;
  bottom: 0;
  transform: translateX(-47%) translateY(43%);
  -webkit-transform: translateX(-47%) translateY(43%);
}

.system-feature__list > .item > .thumbnail > .tag > span {
  font-size: 1.7rem;
  font-weight: 700;
  position: relative;
  display: block;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
}

.system-feature__list > .item > .text {
  width: 89%;
  margin: 0 auto;
}

.system-feature__list > .item > .text > h3 {
  font-size: 1.9rem;
  font-weight: 700;
  margin-bottom: 16px;
  position: relative;
  opacity: 0;
  filter: alpha(opacity=0);
}

.system-feature__list > .item > .text > p {
  font-size: 1.2rem;
  line-height: 2.1rem;
  position: relative;
  opacity: 0;
  filter: alpha(opacity=0);
}

@media screen and (max-width: 750px) {
  .system-feature__list > .item {
    width: 100%;
    margin-bottom: 50px;
  }
  .system-feature__list > .item > .text {
    width: 96%;
  }
  .system-feature__list > .item > .text > h3 {
    font-size: 1.8rem;
    margin-bottom: 10px;
  }
}

.system-merit {
  margin-bottom: 49px;
}

@media screen and (max-width: 750px) {
  .system-merit {
    margin-bottom: 60px;
  }
}

.system-merit > h2 {
  text-align: center;
  font-size: 2.4rem;
  font-weight: 700;
  margin-bottom: 52px;
}

@media screen and (max-width: 750px) {
  .system-merit > h2 {
    font-size: 1.9rem;
    line-height: 2.7rem;
    text-align: center;
    margin-bottom: 35px;
  }
}

.system-merit__list {
  max-width: 1160px;
  margin: 0 auto;
  position: relative;
}

@media screen and (min-width: 751px) {
  .system-merit__list {
    display: flex;
    display: -webkit-flex;
    justify-content: space-between;
    -webkit-justify-content: space-between;
    align-items: flex-start;
    -webkit-align-items: flex-start;
  }
}

.system-merit__list > .item {
  width: 50%;
}

.system-merit__list > .item1 > .image {
  background: #2d2d2d;
}

@media screen and (max-width: 486px) {
  .system-merit__list > .item1 > .image img {
    position: relative;
    width: 110%;
    left: -5%;
  }
}

.system-merit__list > .item2 > .image {
  background: #333333;
}

@media screen and (max-width: 486px) {
  .system-merit__list > .item2 > .image img {
    position: relative;
    width: 110%;
    left: -5%;
  }
}

.system-merit__list > .item > .text {
  text-align: center;
  font-size: 1.6rem;
  margin-top: 24px;
}

@media screen and (max-width: 750px) {
  .system-merit__list > .item {
    width: 100%;
  }
  .system-merit__list > .item1 {
    margin-bottom: 60px;
  }
  .system-merit__list > .item > .text {
    margin-top: 20px;
    font-size: 1.4rem;
  }
}

.system-point {
  margin-bottom: 163px;
}

@media screen and (max-width: 750px) {
  .system-point {
    margin-bottom: 70px;
  }
}

.system-point > h2 {
  font-size: 2.9rem;
  text-align: center;
  font-weight: 700;
  color: #035b90;
  letter-spacing: -0.02em;
  margin-bottom: 21px;
}

.system-point__list {
  display: flex;
  display: -webkit-flex;
  justify-content: center;
  -webkit-justify-content: center;
  align-items: flex-start;
  -webkit-align-items: flex-start;
  flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  margin: 0 auto;
  position: relative;
}

.system-point__list > .item {
  text-align: center;
  width: 190px;
  margin: 0 19px 35px 19px;
}

.system-point__list > .item > .image {
  width: 178px;
  margin: 0 auto 28px auto;
  position: relative;
}

.system-point__list > .item > .image > span {
  display: block;
  width: 0;
  height: 100%;
  background: #2d2d2d;
  border-radius: 50% 50%;
  position: absolute;
  left: 0;
  top: 0;
}

.system-point__list > .item > .image img {
  position: relative;
  left: 0;
  top: 0;
  width: 100%;
  opacity: 0;
  filter: alpha(opacity=0);
}

.system-point__list > .item > .image2 {
  margin-bottom: 17px;
}

.system-point__list > .item > .text {
  font-size: 1.3rem;
  line-height: 2.2rem;
  position: relative;
  opacity: 0;
  filter: alpha(opacity=0);
}

@media screen and (max-width: 486px) {
  .system-point__list {
    width: 86%;
    margin: 0 auto;
    justify-content: space-between;
    -webkit-justify-content: space-between;
  }
  .system-point__list > .item {
    width: 46%;
    margin: 0 0 35px 0;
  }
  .system-point__list > .item > .image {
    width: 100%;
  }
  .system-point__list > .item > .text {
    font-size: 1.2rem;
    line-height: 1.9rem;
  }
}

.system-connection {
  margin-bottom: 104px;
}

@media screen and (max-width: 750px) {
  .system-connection {
    margin-bottom: 50px;
  }
}

.system-connection > h2 {
  font-size: 2.4rem;
  text-align: center;
  font-weight: 700;
  margin-bottom: 68px;
}

@media screen and (max-width: 750px) {
  .system-connection > h2 {
    font-size: 1.9rem;
    line-height: 2.7rem;
    text-align: center;
    margin-bottom: 50px;
  }
}

.system-connection__block {
  width: 90%;
  max-width: 880px;
  margin: 0 auto 84px auto;
}

@media screen and (min-width: 751px) {
  .system-connection__block {
    display: flex;
    display: -webkit-flex;
    justify-content: space-between;
    -webkit-justify-content: space-between;
    align-items: center;
    -webkit-align-items: center;
  }
}

.system-connection__block > .logo {
  width: 207px;
  position: relative;
  margin-right: 20px;
}

.system-connection__block > .logo::before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  border-radius: 50% 50%;
  background: #f9f9f9;
}

.system-connection__block > .logo img {
  position: relative;
}

.system-connection__block > .text {
  width: 580px;
}

.system-connection__block > .text > h3 {
  font-size: 1.9rem;
  font-weight: 700;
  line-height: 2.5rem;
  margin-bottom: 14px;
}

.system-connection__block > .text > div {
  font-size: 1.2rem;
  line-height: 2.1rem;
  margin-bottom: 22px;
}

.system-connection__block > .text > div > p {
  margin-bottom: 10px;
}

.system-connection__block > .text > .link a {
  display: inline-block;
  position: relative;
  font-size: 1.4rem;
  line-height: 2.0rem;
}

.system-connection__block > .text > .link a::before {
  content: '';
  display: block;
  position: absolute;
  width: 100%;
  height: 2px;
  background: #000;
  left: 0;
  bottom: -5px;
  -webkit-transition: all 0.1s ease-out 0s;
  transition: all 0.1s ease-out 0s;
}

.system-connection__block > .text > .link a > .icon {
  width: 32px;
  position: absolute;
  right: -50px;
  top: 50%;
  margin-top: -13px;
}

.system-connection__block > .text > .link a > .icon::before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 50% 50%;
  background: #2d2d2d;
  position: absolute;
  left: 0;
  top: 0;
}

.system-connection__block > .text > .link a > .icon img {
  position: relative;
}

.system-connection__block > .text > .link a:hover::before {
  height: 4px;
}

@media screen and (max-width: 750px) {
  .system-connection__block > .text > .link a {
    font-weight: 700;
  }
  .system-connection__block > .text > .link a::before {
    height: 1px;
  }
  .system-connection__block > .text > .link a > .icon::before {
    background: #035b90;
  }
}

@media screen and (max-width: 750px) {
  .system-connection__block {
    position: relative;
    width: 86%;
    text-align: center;
  }
  .system-connection__block > .text {
    width: 100%;
  }
  .system-connection__block > .text > h3 {
    padding-left: 0;
    font-size: 1.7rem;
    margin-bottom: 20px;
  }
  .system-connection__block > .text > .logo {
    width: 55%;
    position: relative;
    margin: 0 auto 25px auto;
  }
  .system-connection__block > .text > .logo::before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    border-radius: 50% 50%;
    background: #f9f9f9;
  }
  .system-connection__block > .text > .logo img {
    position: relative;
  }
  .system-connection__block > .text > div {
    padding-left: 5px;
    margin-bottom: 27px;
  }
  .system-connection__block > .text > div.link a {
    padding-right: 40px;
  }
  .system-connection__block > .text > div.link a::before {
    width: calc(100% - 40px);
  }
  .system-connection__block > .text > div.link a > .icon {
    right: 0;
  }
}

.system-connection > .note {
  text-align: center;
  font-size: 1.0rem;
  line-height: 2.1rem;
}

.system-connection > .note span {
  color: #035b90;
}

@media screen and (max-width: 750px) {
  .system-connection > .note {
    width: 86%;
    margin: 0 auto;
    text-align: left;
    margin-top: -20px;
  }
}

.system-api {
  background: #f9f9f9;
  padding: 72px 0 95px 0;
  position: relative;
}

@media screen and (max-width: 750px) {
  .system-api {
    padding-top: 50px;
    padding-bottom: 2px;
  }
}

.system-api__inner {
  width: 95%;
  max-width: 880px;
  margin: 0 auto;
}

.system-api__wrap1 {
  padding-bottom: 65px;
  position: relative;
  margin-bottom: 80px;
}

@media screen and (max-width: 750px) {
  .system-api__wrap1 {
    width: 86%;
    padding-bottom: 60px;
    margin: 0 auto 60px auto;
  }
}

.system-api__wrap1::after {
  content: '';
  width: 1120px;
  height: 2px;
  background: #fff;
  position: absolute;
  left: 50%;
  bottom: 0;
  margin-left: -560px;
}

@media screen and (max-width: 750px) {
  .system-api__wrap1::after {
    width: 100%;
    left: 0;
    margin-left: 0;
    height: 3px;
    bottom: -2px;
  }
}

.system-api__wrap1 .block {
  position: relative;
}

@media screen and (min-width: 751px) {
  .system-api__wrap1 .block {
    display: flex;
    display: -webkit-flex;
    justify-content: space-between;
    -webkit-justify-content: space-between;
    align-items: flex-start;
    -webkit-align-items: flex-start;
    flex-direction: row-reverse;
    -webkit-flex-direction: row-reverse;
  }
}

.system-api__wrap1 .block > .text {
  max-width: 412px;
}

.system-api__wrap1 .block > .text > h2 {
  font-size: 2.4rem;
  font-weight: 700;
  margin-bottom: 21px;
  text-align: center;
}

@media screen and (max-width: 750px) {
  .system-api__wrap1 .block > .text > h2 {
    font-size: 1.7rem;
  }
}

.system-api__wrap1 .block > .text > .text {
  font-size: 1.3rem;
  line-height: 2.3rem;
}

.system-api__wrap1 .block > .image {
  max-width: 333px;
  margin-left: 51px;
  padding-top: 10px;
}

@media screen and (max-width: 750px) {
  .system-api__wrap1 .block > .image {
    margin: 0 auto;
    max-width: 280px;
    padding-top: 30px;
  }
}

@media screen and (max-width: 750px) {
  .system-api__wrap2 {
    width: 86%;
    margin: 0 auto 60px auto;
  }
}

.system-api__wrap2 .block {
  margin-bottom: 50px;
  text-align: center;
}

@media screen and (max-width: 750px) {
  .system-api__wrap2 .block {
    margin-bottom: 60px;
  }
}

.system-api__wrap2 .block > h2 {
  font-size: 2.4rem;
  font-weight: 700;
  margin-bottom: 24px;
}

@media screen and (max-width: 750px) {
  .system-api__wrap2 .block > h2 {
    font-size: 1.7rem;
  }
}

.system-api__wrap2 .block > .text {
  font-size: 1.3rem;
  line-height: 2.3rem;
  margin-bottom: 51px;
}

.system-api__wrap2 .block:last-of-type {
  margin-bottom: 0;
}

.system-api__wrap2 .block:first-of-type {
  padding: 0 0 78px 0;
  position: relative;
  margin-bottom: 78px;
}

.system-api__wrap2 .block:first-of-type::after {
  content: '';
  width: 1120px;
  height: 2px;
  background: #fff;
  position: absolute;
  left: 50%;
  bottom: 0;
  margin-left: -560px;
}

@media screen and (max-width: 750px) {
  .system-api__wrap2 .block:first-of-type::after {
    width: 100%;
    height: 4px;
    left: 0;
    bottom: -3px;
    margin-left: 0;
  }
}

@media screen and (max-width: 750px) {
  .system-api__wrap2 .block:first-of-type {
    padding-bottom: 60px;
    margin-bottom: 60px;
  }
}

.system-api__case {
  max-width: 730px;
  margin: 0 auto;
}

@media screen and (min-width: 751px) {
  .system-api__case > .item {
    display: flex;
    display: -webkit-flex;
    justify-content: space-between;
    -webkit-justify-content: space-between;
    align-items: center;
    -webkit-align-items: center;
    flex-direction: row-reverse;
    -webkit-flex-direction: row-reverse;
  }
}

.system-api__case > .item > .photo {
  width: 35.6%;
  max-width: 260px;
}

@media screen and (max-width: 750px) {
  .system-api__case > .item > .photo {
    width: 100%;
    max-width: 100%;
  }
}

.system-api__case > .item > .text {
  width: 55%;
  text-align: left;
  position: relative;
}

@media screen and (max-width: 750px) {
  .system-api__case > .item > .text {
    width: 100%;
    max-width: 100%;
    margin-bottom: 25px;
  }
}

.system-api__case > .item > .text > h3 {
  position: relative;
  padding-left: 62px;
  font-size: 1.6rem;
  font-weight: 700;
  margin-bottom: 20px;
}

.system-api__case > .item > .text .icon {
  width: 39px;
  height: 39px;
  position: absolute;
  left: 0;
  top: -7px;
}

@media screen and (max-width: 750px) {
  .system-api__case > .item > .text .icon {
    top: 4px;
  }
}

.system-api__case > .item > .text .icon::before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  border-radius: 50% 50%;
  background: #035b90;
}

.system-api__case > .item > .text .icon img {
  position: relative;
}

.system-api__case > .item > .text > p {
  font-size: 1.2rem;
  line-height: 2.4rem;
}

.system-btn a {
  display: block;
  text-align: center;
  color: #fff;
  padding: 62px 0;
  max-width: 1220px;
  margin: 0 auto;
  margin-bottom: 80px;
  background: #035b90;
  position: relative;
}

.system-btn a::before {
  content: '';
  position: absolute;
  left: 50%;
  top: 0;
  width: 0;
  height: 100%;
  -webkit-transition: all 0.3s ease-out 0s;
  transition: all 0.3s ease-out 0s;
  background: #2d2d2d;
}

.system-btn a > span {
  font-size: 1.4rem;
  position: relative;
}

.system-btn a > .icon {
  width: 31px;
  position: absolute;
  top: 50%;
  margin-top: -15px;
  right: 50%;
  margin-right: -146px;
}

.system-btn a > .icon img {
  position: relative;
  left: 0;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}

.system-btn a:hover::before {
  width: 100%;
  left: 0;
}

.system-btn a:hover > .icon img {
  left: 6px;
}

@media screen and (max-width: 750px) {
  .system-btn a {
    width: 86%;
    margin: 40px auto 80px auto;
    padding: 30px 0;
  }
  .system-btn a > span {
    display: inline-block;
    padding-right: 16px;
  }
  .system-btn a > .icon {
    margin-right: -136px;
  }
}

/*------------------------------------------------------*/
/*  apply */
/*------------------------------------------------------*/
.apply-list {
  display: flex;
  display: -webkit-flex;
  justify-content: center;
  -webkit-justify-content: center;
  align-items: top;
  -webkit-align-items: top;
  padding-top: 30px;
  margin-bottom: 85px;
}

@media screen and (max-width: 750px) {
  .apply-list {
    margin-bottom: 50px;
  }
}

.apply-list > .item {
  width: 27%;
  max-width: 195px;
  margin: 0 30px;
  position: relative;
  border-radius: 50% 50%;
  cursor: pointer;
}

@media screen and (max-width: 750px) {
  .apply-list > .item {
    margin: 0 8px;
  }
}

.apply-list > .item > .image {
  position: relative;
  margin-bottom: 17px;
}

.apply-list > .item > .image::after {
  content: '';
  width: 100%;
  height: 100%;
  position: absolute;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  border-radius: 50% 50%;
  border: 7px solid #f1f1f1;
  left: 0;
  top: 0;
  -webkit-transition: all 0.2s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0s;
  transition: all 0.2s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0s;
}

.apply-list > .item:hover > .image::after {
  border: 13px solid #f1f1f1;
}

.apply-list > .item.-current {
  cursor: default;
}

.apply-list > .item.-current > .image::after {
  border: 13px solid #035b90;
}

.apply-list > .item.-current > .name {
  color: #035b90;
}

.apply-list > .item.-current .apply-select {
  bottom: -86px;
}

@media screen and (max-width: 750px) {
  .apply-list > .item.-current .apply-select {
    bottom: -51px;
  }
}

.apply-list > .item > .name {
  font-size: 1.6rem;
  line-height: 2.1rem;
  padding-top: 11px;
}

.apply-list > .item > .name:nth-child(3) {
  padding-top: 0;
}

@media screen and (min-width: 751px) {
  .apply-list > .item > .name span {
    font-size: 1.5rem;
    font-weight: 700;
  }
}

@media screen and (max-width: 750px) {
  .apply-list > .item > .name {
    font-size: 1.1rem;
    line-height: 1.5rem;
  }
  .apply-list > .item > .name span {
    font-size: 1.0rem;
  }
}

.apply-wrap {
  color: #fff;
  position: relative;
}

.apply-select {
  width: 48px;
  position: absolute;
  left: 50%;
  bottom: -102px;
  -webkit-transition: all 0.2s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0s;
  transition: all 0.2s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0s;
  margin-left: -24px;
}

@media screen and (max-width: 750px) {
  .apply-select {
    width: 34px;
    bottom: -66px;
    margin-left: -17px;
  }
}

.apply-single {
  display: none;
}

.apply-single.-show {
  display: block;
}

.apply-step {
  position: relative;
}

.apply-step.-step1 {
  background: #036197;
}

@media screen and (min-width: 751px) {
  .apply-step.-step1 {
    padding: 109px 0 98px 0;
  }
  .apply-step.-step1 .no {
    top: 118px;
  }
}

@media screen and (max-width: 750px) {
  .apply-step.-step1 {
    padding: 50px 6.7% 50px 6.7%;
  }
}

.apply-step.-step1 a.btn {
  color: #036197;
}

.apply-step.-step1 .apply-arrow {
  position: absolute;
  left: 50%;
  bottom: 0;
  margin: 0;
  transform: translateX(-50%) translateY(50%);
  -webkit-transform: translateX(-50%) translateY(50%);
}

.apply-step.-step2 {
  background: #035788;
}

@media screen and (min-width: 751px) {
  .apply-step.-step2 {
    padding: 90px 0 96px 0;
  }
  .apply-step.-step2 .no {
    top: 99px;
  }
  .apply-step.-step2 .txt {
    margin-bottom: 42px;
  }
}

@media screen and (max-width: 750px) {
  .apply-step.-step2 {
    padding: 50px 6.7% 50px 6.7%;
  }
}

.apply-step.-step2 a.btn {
  color: #035788;
}

.apply-step.-step2 .apply-arrow {
  position: absolute;
  left: 50%;
  bottom: -2px;
  margin: 0;
  transform: translateX(-50%) translateY(50%);
  -webkit-transform: translateX(-50%) translateY(50%);
}

.apply-step.-step3 {
  background: #024e79;
}

@media screen and (min-width: 751px) {
  .apply-step.-step3 {
    padding: 94px 0 96px 0;
  }
  .apply-step.-step3 .caption {
    margin-bottom: 20px;
  }
  .apply-step.-step3 .no {
    top: 99px;
  }
}

@media screen and (max-width: 750px) {
  .apply-step.-step3 {
    padding: 50px 6.7% 50px 6.7%;
  }
}

.apply-step.-step3 a.btn {
  color: #024e79;
}

.apply-step.-step3 .apply-arrow {
  position: absolute;
  left: 50%;
  bottom: 0;
  margin: 0;
  transform: translateX(-50%) translateY(50%);
  -webkit-transform: translateX(-50%) translateY(50%);
}

.apply-step.-step4 {
  background: #02446a;
}

@media screen and (min-width: 751px) {
  .apply-step.-step4 {
    padding: 89px 0 124px 0;
  }
  .apply-step.-step4 .no {
    top: 96px;
  }
  .apply-step.-step4 .caption {
    margin-bottom: 18px;
  }
  .apply-step.-step4 .txt2 {
    margin-bottom: 15px;
  }
}

@media screen and (max-width: 750px) {
  .apply-step.-step4 {
    padding: 50px 6.7% 50px 6.7%;
  }
}

.apply-step.-step4 a.btn {
  color: #02446a;
}

.apply-step.-step4 .apply-arrow {
  position: absolute;
  left: 50%;
  bottom: 0;
  margin: 0;
  transform: translateX(-50%) translateY(50%);
  -webkit-transform: translateX(-50%) translateY(50%);
}

.apply-step .caption {
  font-size: 2.4rem;
  line-height: 3.7rem;
  margin-bottom: 16px;
}

@media screen and (max-width: 750px) {
  .apply-step .caption {
    font-size: 2.1rem;
  }
}

.apply-step .txt {
  font-size: 1.3rem;
  line-height: 2.5rem;
  margin-bottom: 38px;
}

@media screen and (max-width: 750px) {
  .apply-step .txt {
    font-size: 1.2rem;
    line-height: 2.1rem;
  }
}

.apply-step .txt2 {
  margin-bottom: -5px;
}

.apply-step .txt a {
  color: #fff;
  display: inline-block;
  position: relative;
  margin: 0 4px;
}

.apply-step .txt a::before {
  content: '';
  width: 100%;
  height: 2px;
  background: #fff;
  position: absolute;
  left: 0;
  bottom: 2px;
  -webkit-transition: all 0.1s ease-out 0s;
  transition: all 0.1s ease-out 0s;
}

.apply-step .txt a:hover::before {
  height: 3px;
}

.apply-step .note {
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  width: 300px;
  margin: 13px auto 0 auto;
  padding-left: 15px;
  font-size: 1.1rem;
  line-height: 2.0rem;
  margin-bottom: 44px;
  position: relative;
  text-align: left;
}

.apply-step .note::before {
  content: '※';
  position: absolute;
  left: 0;
  top: 0;
}

.apply-step .note a {
  color: #fff;
  display: inline-block;
  position: relative;
  margin: 0 4px;
}

.apply-step .note a::before {
  content: '';
  width: 100%;
  height: 2px;
  background: #fff;
  position: absolute;
  left: 0;
  bottom: -2px;
  -webkit-transition: all 0.1s ease-out 0s;
  transition: all 0.1s ease-out 0s;
}

.apply-step .note a:hover::before {
  height: 3px;
}

.apply-step a.btn {
  display: inline-block;
  height: 39px;
  font-size: 1.4rem;
  line-height: 2.1rem;
  color: #035b90;
  background: #fff;
  font-weight: 700;
  border-radius: 46px 46px;
  position: relative;
  padding: 26px 0 26px 30px;
  width: 233px;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
  margin-right: 26px;
}

@media screen and (max-width: 750px) {
  .apply-step a.btn {
    margin-right: 0;
  }
}

.apply-step a.btn > p {
  position: relative;
}

.apply-step a.btn > p.icon {
  position: absolute;
  width: 47px;
  height: 47px;
  left: 25px;
  top: 50%;
  margin-top: -23px;
}

.apply-step a.btn > p.icon img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}

.apply-step a.btn > p.icon img.-default {
  opacity: 1;
  filter: alpha(opacity=100);
}

.apply-step a.btn > p.icon img.-hover {
  opacity: 0;
  filter: alpha(opacity=0);
}

.apply-step a.btn::before {
  content: '';
  width: 0;
  height: 100%;
  position: absolute;
  left: 50%;
  top: 0;
  background: #2d2d2d;
  border-radius: 46px 46px;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}

.apply-step a.btn:hover {
  color: #fff;
}

.apply-step a.btn:hover p.icon img.-default {
  opacity: 0;
  filter: alpha(opacity=0);
}

.apply-step a.btn:hover p.icon img.-hover {
  opacity: 1;
  filter: alpha(opacity=100);
}

.apply-step a.btn:hover::before {
  width: 100%;
  left: 0;
}

.apply-step .no {
  width: 110px;
  height: 110px;
  position: absolute;
  left: 50%;
  top: 9px;
  margin-left: -461px;
  color: #035b90;
  border-radius: 50% 50%;
  background: #fff;
}

@media screen and (max-width: 750px) {
  .apply-step .no {
    position: relative;
    margin: 0 auto;
    left: 0;
    top: 0;
    margin-bottom: 30px;
  }
}

.apply-step .no > .txt {
  font-size: 1.4rem;
  line-height: 100%;
  padding-top: 26px;
  margin-bottom: 4px;
}

.apply-step .no > .numeric {
  font-size: 3.8rem;
  line-height: 100%;
}

.apply-step .list {
  width: 86.6%;
  max-width: 405px;
  margin: 0 auto;
  margin-top: 13px;
}

.apply-step .list > li {
  font-size: 1.3rem;
  line-height: 2.5rem;
  margin-bottom: 0;
}

.apply-step .list > li::before {
  width: 7px;
  height: 7px;
  background: #fff;
  left: -3px;
}

.apply-step .list a {
  color: #fff;
  display: inline-block;
  position: relative;
  margin: 0 4px;
}

.apply-step .list a::before {
  content: '';
  width: 100%;
  height: 2px;
  background: #fff;
  position: absolute;
  left: 0;
  bottom: -2px;
  -webkit-transition: all 0.1s ease-out 0s;
  transition: all 0.1s ease-out 0s;
}

.apply-step .list a:hover::before {
  height: 3px;
}

.apply-arrow {
  width: 34px;
  margin: 80px auto 70px auto;
  z-index: 1;
}

@media screen and (max-width: 750px) {
  .apply-arrow {
    margin: 58px auto;
  }
}

/*------------------------------------------------------*/
/*  tokusho */
/*------------------------------------------------------*/
.tokusho-title {
  text-align: center;
  margin-bottom: 40px;
}

.tokusho-item {
  width: 86.6%;
  max-width: 950px;
  margin: 0 auto 40px auto;
  font-size: 1.4rem;
  line-height: 2.2rem;
}

.tokusho-item a {
  text-decoration: underline;
}

.tokusho-item > h3 {
  font-size: 1.6rem;
  margin-bottom: 5px;
  font-weight: 500;
}

.tokusho-item > p {
  font-size: 1.4rem;
  line-height: 2.2rem;
  margin-left: 18px;
}

.tokusho-item > p > span {
  font-size: 1.5rem;
}

.tokusho-item > ul {
  margin-left: 18px;
}

.tokusho-item > ul > li {
  position: relative;
  padding-left: 15px;
}

.tokusho-item > ul > li::before {
  content: '';
  width: 3px;
  height: 3px;
  background: #000;
  border-radius: 50% 50%;
  position: absolute;
  left: 0;
  top: 10px;
}

/*------------------------------------------------------*/
/*  faq */
/*------------------------------------------------------*/
.faq-title {
  text-align: center;
  margin-bottom: 40px;
}

.faq-lead {
  font-size: 1.4rem;
  line-height: 3.0rem;
  width: 86.6%;
  max-width: 950px;
  margin: 0 auto 67px auto;
  text-align: center;
  padding-top: 45px;
}

.faq-lead a {
  display: inline-block;
  text-decoration: none;
  position: relative;
  font-weight: 700;
  margin: 0 5px;
}

.faq-lead a::before {
  content: '';
  width: 100%;
  height: 2px;
  background: #000;
  position: absolute;
  left: 0;
  bottom: 2px;
  -webkit-transition: all 0.1s ease-out 0s;
  transition: all 0.1s ease-out 0s;
}

.faq-lead a:hover::before {
  height: 3px;
}

.faq-item {
  width: 86.6%;
  max-width: 1120px;
  margin: 0 auto 5px auto;
  font-size: 1.2rem;
  line-height: 2.0rem;
  background: #fafafa;
  text-align: center;
  -webkit-transition: all 0.15s ease-in-out 0s;
  transition: all 0.15s ease-in-out 0s;
}

.faq-item > dt {
  font-size: 1.6rem;
  line-height: 3.0rem;
  position: relative;
  padding: 34px 25px 33px 25px;
  cursor: pointer;
  -webkit-transition: all 0.15s ease-in-out 0s;
  transition: all 0.15s ease-in-out 0s;
  background: transparent;
}

.faq-item > dt::before {
  content: '';
  display: block;
  width: 32px;
  height: 32px;
  background: url(https://remotelock.kke.co.jp/hubfs/image/renewal2018/faq/arrow_down.png) no-repeat 0 0;
  background-size: contain;
  -webkit-background-size: contain;
  position: absolute;
  right: 49px;
  top: 32px;
  -webkit-transition: all 0.15s ease-in-out 0s;
  transition: all 0.15s ease-in-out 0s;
  opacity: 1;
  filter: alpha(opacity=100);
}

.faq-item > dt::after {
  content: '';
  display: block;
  width: 32px;
  height: 32px;
  background: url(https://remotelock.kke.co.jp/hubfs/image/renewal2018/faq/arrow_up.png) no-repeat 0 0;
  background-size: contain;
  -webkit-background-size: contain;
  position: absolute;
  right: 49px;
  top: 32px;
  -webkit-transition: all 0.15s ease-in-out 0s;
  transition: all 0.15s ease-in-out 0s;
  opacity: 0;
  filter: alpha(opacity=0);
}

.faq-item > dt:hover {
  background: #036197;
  color: #fff;
}

.faq-item > dt:hover::before {
  background: url(https://remotelock.kke.co.jp/hubfs/image/renewal2018/faq/arrow_down_w.png) no-repeat 0 0;
  background-size: contain;
  -webkit-background-size: contain;
}

.faq-item > dt:hover .faq-q::before {
  opacity: 0;
  filter: alpha(opacity=0);
}

.faq-item > dt:hover .faq-q::after {
  opacity: 1;
  filter: alpha(opacity=100);
}

@media screen and (max-width: 750px) {
  .faq-item > dt {
    padding: 34px 60px 33px 60px;
  }
  .faq-item > dt::before {
    right: 20px;
  }
  .faq-item > dt::after {
    right: 20px;
  }
}

.faq-item > dd {
  font-size: 1.7rem;
  line-height: 3.0rem;
  position: relative;
  height: 0;
  overflow: hidden;
}

.faq-item.-show {
  background: #036197;
  color: #fff;
}

.faq-item.-show > dt::before {
  opacity: 0;
  filter: alpha(opacity=0);
}

.faq-item.-show > dt::after {
  opacity: 1;
  filter: alpha(opacity=100);
}

.faq-item.-show > dt .faq-q::before {
  opacity: 0;
  filter: alpha(opacity=0);
}

.faq-item.-show > dt .faq-q::after {
  opacity: 1;
  filter: alpha(opacity=100);
}

.faq-item.-show > dd .faq-a::before {
  opacity: 1;
  filter: alpha(opacity=100);
  top: 0;
}

.faq-item.-show > dd span {
  opacity: 1;
  filter: alpha(opacity=100);
  top: 0;
}

.faq-q {
  position: absolute;
  width: 47px;
  height: 0;
  padding-top: 47px;
  overflow: hidden;
  left: 39px;
  top: 26px;
  font-size: 0rem;
}

@media screen and (max-width: 750px) {
  .faq-q {
    left: 10px;
  }
}

.faq-q::before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  background: url(https://remotelock.kke.co.jp/hubfs/image/renewal2018/faq/q_off.png) no-repeat 0 0;
  background-size: contain;
  -webkit-background-size: contain;
  position: absolute;
  left: 0;
  top: 0;
  -webkit-transition: all 0.15s ease-in-out 0s;
  transition: all 0.15s ease-in-out 0s;
  opacity: 1;
  filter: alpha(opacity=100);
}

.faq-q::after {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  background: url(https://remotelock.kke.co.jp/hubfs/image/renewal2018/faq/q_on.png) no-repeat 0 0;
  background-size: contain;
  -webkit-background-size: contain;
  position: absolute;
  left: 0;
  top: 0;
  -webkit-transition: all 0.15s ease-in-out 0s;
  transition: all 0.15s ease-in-out 0s;
  opacity: 0;
  filter: alpha(opacity=0);
}

.faq-a {
  position: absolute;
  width: 47px;
  height: 0;
  padding-top: 47px;
  overflow: hidden;
  left: 39px;
  top: 0px;
  font-size: 0rem;
}

@media screen and (max-width: 750px) {
  .faq-a {
    left: 10px;
    top: -9px;
  }
}

.faq-a::before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  background: url(https://remotelock.kke.co.jp/hubfs/image/renewal2018/faq/a.png) no-repeat 0 0;
  background-size: contain;
  -webkit-background-size: contain;
  position: absolute;
  left: 0;
  top: 10px;
  -webkit-transition: all 0.15s ease-in-out 0.2s;
  transition: all 0.15s ease-in-out 0.2s;
  opacity: 0;
  filter: alpha(opacity=0);
}

.faq-a__inner {
  position: relative;
  padding: 9px 100px 34px 100px;
}

.faq-a__inner span {
  -webkit-transition: all 0.15s ease-in-out 0.25s;
  transition: all 0.15s ease-in-out 0.25s;
  opacity: 0;
  filter: alpha(opacity=0);
  top: 10px;
  position: relative;
  color: #fff;
}

@media screen and (max-width: 750px) {
  .faq-a__inner {
    padding: 0 20px 39px 60px;
  }
}

.faq-wrap {
  padding-bottom: 84px;
}

/*------------------------------------------------------*/
/*  privacy */
/*------------------------------------------------------*/
.privacy-title {
  text-align: center;
  margin-bottom: 40px;
}

.privacy-lead {
  font-size: 1.3rem;
  line-height: 2.5rem;
  width: 86.6%;
  max-width: 950px;
  margin: 0 auto 100px auto;
}

.privacy-lead a {
  text-decoration: underline;
}

.privacy-lead2 {
  font-size: 1.3rem;
  line-height: 2.5rem;
  width: 86.6%;
  max-width: 950px;
  margin: 0 auto 40px auto;
}

.privacy-lead2 a {
  text-decoration: underline;
}

.privacy-item {
  width: 86.6%;
  max-width: 950px;
  margin: 0 auto 40px auto;
  font-size: 1.2rem;
  line-height: 2.5rem;
}

.privacy-item a {
  text-decoration: underline;
}

.privacy-item > h3 {
  font-size: 1.5rem;
  margin-bottom: 5px;
  font-weight: 500;
}

.privacy-item > p {
  font-size: 1.2rem;
  line-height: 2.5rem;
  margin-left: 18px;
}

.privacy-item > p > span {
  font-size: 1.3rem;
}

.privacy-item > ul {
  margin-left: 18px;
}

.privacy-item > ul > li {
  position: relative;
  padding-left: 15px;
}

.privacy-item > ul > li::before {
  content: '';
  width: 3px;
  height: 3px;
  background: #000;
  border-radius: 50% 50%;
  position: absolute;
  left: 0;
  top: 10px;
}

/*------------------------------------------------------*/
/*  contact */
/*------------------------------------------------------*/
.contact-title {
  margin-bottom: 40px;
}

.contact-lead {
  width: 86.6%;
  max-width: 750px;
  margin: 0 auto;
  font-size: 1.3rem;
  margin-bottom: 30px;
  text-align: center;
}

.hs_cos_wrapper_type_form {
  width: 86.6%;
  max-width: 750px;
  margin: 0 auto;
}

.contact-form form {
  width: 86.6%;
}

.hs_cos_wrapper_type_form form,
.contact-form form {
  max-width: 750px;
  margin: 0 auto;
}

.hs_cos_wrapper_type_form form label,
.contact-form form label {
  display: inline-block;
  margin-bottom: 5px;
}

.hs_cos_wrapper_type_form form label span,
.contact-form form label span {
  font-size: 1.3rem;
  line-height: 2.0rem;
  font-weight: 700;
}

.hs_cos_wrapper_type_form form label span.hs-form-required,
.contact-form form label span.hs-form-required {
  color: #ff0000;
}

.hs_cos_wrapper_type_form form fieldset,
.contact-form form fieldset {
  max-width: 100%;
  margin-bottom: 20px;
}

.hs_cos_wrapper_type_form form input[type=text],
.hs_cos_wrapper_type_form form input[type=tel],
.hs_cos_wrapper_type_form form input[type=email],
.contact-form form input[type=text], .contact-form form input[type=tel], .contact-form form input[type=email] {
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  width: 90%;
  height: 45px;
  font-size: 1.6rem;
  border: none;
  background: #f4f4f4;
  padding: 0 10px;
}

@media screen and (max-width: 400px) {
  .hs_cos_wrapper_type_form form input[type=text],
  .hs_cos_wrapper_type_form form input[type=tel],
  .hs_cos_wrapper_type_form form input[type=email],
  .contact-form form input[type=text], .contact-form form input[type=tel], .contact-form form input[type=email] {
    width: 100% !important;
  }
}

.hs_cos_wrapper_type_form form textarea,
.contact-form form textarea {
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  width: 90%;
  height: 135px;
  font-size: 1.6rem;
  line-height: 35px;
  border: none;
  background: #f4f4f4;
  padding: 0 10px;
}

@media screen and (max-width: 400px) {
  .hs_cos_wrapper_type_form form textarea,
  .contact-form form textarea {
    width: 100% !important;
  }
}

.hs_cos_wrapper_type_form form select,
.contact-form form select {
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  width: 100%;
  height: 45px;
  font-size: 1.6rem;
  line-height: 45px;
  border: none;
  padding: 0 10px;
  background: url(https://2864453.fs1.hubspotusercontent-na1.net/hubfs/2864453/image/renewal2018/common/select_arrow.png) no-repeat 99% center #f4f4f4;
  background-size: 35px 35px;
  -webkit-background-size: 35px 35px;
}

@media screen and (max-width: 400px) {
  .hs_cos_wrapper_type_form form select,
  .contact-form form select {
    width: 100% !important;
  }
}

.hs-error-msgs {
  color: #035b90;
  margin-top: 5px;
  font-size: 1.1rem;
}

.hs_cos_wrapper_type_form form label span.hs-form-required {
  color: #035b90;
  position: relative;
  margin-left: 5px;
  top: 3px;
  font-size: smaller; 
}

.hs-form-booleancheckbox label {
  position: relative;
  padding-left: 30px;
  font-size: 1.4rem;
}

.hs-form-booleancheckbox label::after {
  content: '';
  width: 8px;
  height: 12px;
  position: absolute;
  left: 6px;
  top: 50%;
  margin-top: -6px;
  transform: rotate(39deg);
  -webkit-transform: rotate(39deg);
  border-bottom: 2px solid #2d2d2d;
  border-right: 2px solid #2d2d2d;
  opacity: 0;
  filter: alpha(opacity=0);
}

input[type=checkbox]:checked + .hs-form-booleancheckbox label::after {
  opacity: 1;
  filter: alpha(opacity=100);
}

.hs-form-booleancheckbox label::before {
  position: absolute;
  top: 50%;
  left: 0px;
  display: block;
  margin-top: -10px;
  width: 25px;
  height: 25px;
  border: 1px solid #222;
  content: '';
  background: #f4f4f4;
}

.hs-form-booleancheckbox label.-checked::after {
  opacity: 1;
  filter: alpha(opacity=100);
}

.hs_submit {
  text-align: center;
}

.hs_submit > .actions {
  display: inline-block;
  height: 90px;
  color: #fff;
  background: #035b90;
  border-radius: 45px 45px;
  position: relative;
  margin: 0 auto;
  cursor: pointer;
}

.hs_submit > .actions > p {
  position: relative;
}

.hs_submit > .actions::before {
  content: '';
  width: 0;
  height: 90px;
  position: absolute;
  left: 50%;
  top: 0;
  background: #2d2d2d;
  border-radius: 45px 45px;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}

.hs_submit > .actions:hover::before {
  width: 100%;
  left: 0;
}

.hs_submit > .actions .hs-button {
  background: none;
  color: #fff;
  display: block;
  width: 100%;
  font-size: 1.7rem;
  position: relative;
  line-height: 90px;
  letter-spacing: 0.2em;
  cursor: pointer;
  font-weight: 700;
  padding: 0 50px;
  min-width: 200px;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
}

.contact-tel {
  padding-top: 30px;
}

.contact-tel .inner {
  margin-bottom: 48px;
}

.contact-tel .inner > h2 {
  text-align: center;
  font-size: 2.4rem;
  line-height: 3.2rem;
  font-weight: bold;
  margin-bottom: 8px;
}

@media screen and (max-width: 486px) {
  .contact-tel .inner > h2 {
    max-width: 86%;
    margin: 32px auto 8px auto;  
    font-size: 2.0rem;
    line-height: 2.4rem;
  }
}

.contact-tel .inner h3 {
  text-align: center;
  font-size: 1.7rem;
  font-weight: 700;
  margin-bottom: 11px;
}

.contact-tel .inner > .tel {
  text-align: center;
  position: relative;
  margin-bottom: 54px;
}

.contact-tel .inner > .tel > .icon {
  width: 35px;
  position: absolute;
  left: 50%;
  margin-left: -129px;
  top: -4px;
}

.contact-tel .inner > .tel > span,
.contact-tel .inner > .tel > a {
  font-size: 2.7rem;
  font-weight: 700;
  letter-spacing: -.01em;
}

.contact-tel .inner p {
  font-size: 18px;  
  text-align: center;  
  margin-bottom: 48px;
}

@media screen and (max-width: 486px) {
  .contact-tel .inner p {
  font-size:　12px;
  margin-bottom: 16px;  
  }}

@media screen and (max-width: 486px) {
.contact-tel .inner p.note {
    font-size:　9px;
    margin-bottom: 26px;
  }
}

.contact-tel .inner .url a { 
 text-decoration: underline;
 color: #036197;
}



.contact-formwrap {
  max-width: 1000px;
  margin: 0 auto;
  padding-bottom: 80px;
}

.contact-tab > ul {
  display: flex;
  display: -webkit-flex;
  justify-content: space-between;
  -webkit-justify-content: space-between;
  align-items: flex-start;
  -webkit-align-items: flex-start;
}

.contact-tab > ul > li {
  width: 33.3%;
  text-align: center;
  padding-bottom: 30px;
  position: relative;
  cursor: pointer;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  min-height: 112px;
}

@media screen and (max-width: 639px) {
  .contact-tab > ul > li {
    padding-left: 5%;
    padding-right: 5%;
    padding-bottom: 20px;
    min-height: 70px;
  }
}

.contact-tab > ul > li > span {
  font-size: 1.6rem;
  font-weight: 500;
  display: inline-block;
  position: relative;
}

.contact-tab > ul > li > span::after {
  content: '';
  position: absolute;
  left: 50%;
  bottom: -2px;
  width: 0;
  height: 1px;
  background: #035b90;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}

@media screen and (max-width: 639px) {
  .contact-tab > ul > li > span {
    font-size: 1.4rem;
  }
}

.contact-tab > ul > li > p {
  margin-top: 10px;
  font-size: 1.2rem;
  line-height: 1.8rem;
}

.contact-tab > ul > li:hover > span::after {
  width: 100%;
  left: 0;
}

.contact-tab > ul > li.-current {
  cursor: default;
}

.contact-tab > ul > li.-current > span {
  color: #035b90;
}

.contact-tab > ul > li.-current::after {
  content: '';
  display: block;
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 12px 9px 12px;
  border-color: transparent transparent #035b90 transparent;
  margin-left: -12px;
  left: 50%;
  bottom: 0px;
}

.contact-tab > ul > li.-current:hover > span::after {
  width: 0;
  left: 50%;
}

.contact-form {
  padding-top: 40px;
  border-top: 3px solid #035b90;
}

.contact-form .item {
  display: none;
}

.contact-form .item.-current {
  display: block;
}

.contact-access {
  padding-bottom: 80px;
  width: 86.6%;
  max-width: 1120px;
  margin: 0 auto;
}

.contact-access h3 {
  text-align: center;
  font-size: 1.7rem;
  font-weight: 700;
  margin-bottom: 11px;
}

.contact-access .map {
  width: 100%;
  height: 450px;
  margin-bottom: 30px;
}

@media screen and (max-width: 486px) {
  .contact-access .map {
    height: 350px;
  }
}

.contact-access .address {
  font-size: 1.4rem;
  line-height: 2.4rem;
}

/*------------------------------------------------------*/
/*  static */
/*------------------------------------------------------*/
.-left {
  text-align: left;
}

.-center {
  text-align: center;
}

.-right {
  text-align: right;
}

h1 {
  font-size: 3.0rem;
}

h2 {
  font-size: 2.4rem;
}

h3 {
  font-size: 1.8rem;
}

h4 {
  font-size: 1.4rem;
}

h5 {
  font-size: 1.2rem;
}

h6 {
  font-size: 1.0rem;
}

.section-block {
  width: 86.6%;
  max-width: 1120px;
  margin: 0 auto;
}

.-mw1000 {
  max-width: 1000px;
}

.-mw950 {
  max-width: 950px;
}

.-mw900 {
  max-width: 900px;
}

.-mw850 {
  max-width: 850px;
}

.-mw800 {
  max-width: 800px;
}

.-mw750 {
  max-width: 750px;
}

.-mw700 {
  max-width: 700px;
}

.font10 {
  font-size: 1.0rem;
  line-height: 1.6rem;
}

.font12 {
  font-size: 1.2rem;
  line-height: 1.8rem;
}

.font14 {
  font-size: 1.4rem;
  line-height: 2.0rem;
}

.font16 {
  font-size: 1.6rem;
  line-height: 2.2rem;
}

.font18 {
  font-size: 1.8rem;
  line-height: 2.4rem;
}

.fw100 {
  font-weight: 100;
}

.fw200 {
  font-weight: 200;
}

.fw300 {
  font-weight: 300;
}

.fw400 {
  font-weight: 400;
}

.fw500 {
  font-weight: 500;
}

.fw600 {
  font-weight: 600;
}

.fw700 {
  font-weight: 700;
}

.fw800 {
  font-weight: 800;
}

.fw900 {
  font-weight: 900;
}

.fontp {
  font-family: 'poppins';
}

.font-blue {
  color: #035b90;
}

.font-gray {
  color: #2d2d2d;
}

.mb5 {
  margin-bottom: 5px;
}

.mb10 {
  margin-bottom: 10px;
}

.mb15 {
  margin-bottom: 15px;
}

.mb20 {
  margin-bottom: 20px;
}

.mb25 {
  margin-bottom: 25px;
}

.mb30 {
  margin-bottom: 30px;
}

.mb35 {
  margin-bottom: 35px;
}

.mb40 {
  margin-bottom: 40px;
}

.mb45 {
  margin-bottom: 45px;
}

.mb50 {
  margin-bottom: 50px;
}

.mb55 {
  margin-bottom: 55px;
}

.mb60 {
  margin-bottom: 60px;
}

.mb65 {
  margin-bottom: 65px;
}

.mb70 {
  margin-bottom: 70px;
}

.mb75 {
  margin-bottom: 75px;
}

.mb80 {
  margin-bottom: 80px;
}

.mb85 {
  margin-bottom: 85px;
}

.mb90 {
  margin-bottom: 90px;
}

.mb95 {
  margin-bottom: 95px;
}

.mt5 {
  margin-top: 5px;
}

.mt10 {
  margin-top: 10px;
}

.mt15 {
  margin-top: 15px;
}

.mt20 {
  margin-top: 20px;
}

.mt25 {
  margin-top: 25px;
}

.mt30 {
  margin-top: 30px;
}

.mt35 {
  margin-top: 35px;
}

.mt40 {
  margin-top: 40px;
}

.mt45 {
  margin-top: 45px;
}

.mt50 {
  margin-top: 50px;
}

.mt55 {
  margin-top: 55px;
}

.mt60 {
  margin-top: 60px;
}

.mt65 {
  margin-top: 65px;
}

.mt70 {
  margin-top: 70px;
}

.mt75 {
  margin-top: 75px;
}

.mt80 {
  margin-top: 80px;
}

.mt85 {
  margin-top: 85px;
}

.mt90 {
  margin-top: 90px;
}

.mt95 {
  margin-top: 95px;
}

.ml5 {
  margin-left: 5px;
}

.ml10 {
  margin-left: 10px;
}

.ml15 {
  margin-left: 15px;
}

.ml20 {
  margin-left: 20px;
}

.ml25 {
  margin-left: 25px;
}

.ml30 {
  margin-left: 30px;
}

.ml35 {
  margin-left: 35px;
}

.ml40 {
  margin-left: 40px;
}

.ml45 {
  margin-left: 45px;
}

.ml50 {
  margin-left: 50px;
}

.ml55 {
  margin-left: 55px;
}

.ml60 {
  margin-left: 60px;
}

.ml65 {
  margin-left: 65px;
}

.ml70 {
  margin-left: 70px;
}

.ml75 {
  margin-left: 75px;
}

.ml80 {
  margin-left: 80px;
}

.ml85 {
  margin-left: 85px;
}

.ml90 {
  margin-left: 90px;
}

.ml95 {
  margin-left: 95px;
}

.mr5 {
  margin-right: 5px;
}

.mr10 {
  margin-right: 10px;
}

.mr15 {
  margin-right: 15px;
}

.mr20 {
  margin-right: 20px;
}

.mr25 {
  margin-right: 25px;
}

.mr30 {
  margin-right: 30px;
}

.mr35 {
  margin-right: 35px;
}

.mr40 {
  margin-right: 40px;
}

.mr45 {
  margin-right: 45px;
}

.mr50 {
  margin-right: 50px;
}

.mr55 {
  margin-right: 55px;
}

.mr60 {
  margin-right: 60px;
}

.mr65 {
  margin-right: 65px;
}

.mr70 {
  margin-right: 70px;
}

.mr75 {
  margin-right: 75px;
}

.mr80 {
  margin-right: 80px;
}

.mr85 {
  margin-right: 85px;
}

.mr90 {
  margin-right: 90px;
}

.mr95 {
  margin-right: 95px;
}

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

.pd10 {
  padding: 10px;
}

.code {
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  border: 1px solid #eaeaea;
  padding: 30px;
  font-family: 'poppins';
}

ul.list > li {
  font-size: 1.4rem;
  line-height: 2.5rem;
  margin-bottom: 5px;
  padding-left: 17px;
  position: relative;
}

ul.list > li:before {
  content: '';
  width: 5px;
  height: 5px;
  position: absolute;
  left: 0;
  top: 11px;
  background: #000;
  border-radius: 50% 50%;
}

@media screen and (min-width: 751px) {
  .column2 {
    display: flex;
    display: -webkit-flex;
    justify-content: space-between;
    -webkit-justify-content: space-between;
    align-items: center;
    -webkit-align-items: center;
  }
  .column2.-top {
    align-items: flex-start;
    -webkit-align-items: flex-start;
  }
  .column2.-bottom {
    align-items: flex-end;
    -webkit-align-items: flex-end;
  }
  .column2.-reverse {
    flex-flow: row-reverse;
    -webkit-flex-flow: row-reverse;
  }
  .column2 .image {
    width: 35%;
  }
  .column2 .article {
    width: 60%;
  }
}

@media screen and (max-width: 750px) {
  .column2 > .image {
    width: 100%;
    margin-bottom: 25px;
  }
  .column2 > .article {
    width: 100%;
  }
}

a.link-btn__white1 {
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  display: inline-block;
  font-size: 1.4rem;
  line-height: 2.1rem;
  color: #035b90;
  background: #fff;
  font-weight: 700;
  border-radius: 37px 37px;
  position: relative;
  padding: 26px 50px;
  height: 74px;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
  text-align: center;
}

a.link-btn__white1 > p {
  position: relative;
}

a.link-btn__white1::before {
  content: '';
  width: 0;
  height: 100%;
  position: absolute;
  left: 50%;
  top: 0;
  background: #2d2d2d;
  border-radius: 46px 46px;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}

a.link-btn__white1:hover {
  color: #fff;
}

a.link-btn__white1:hover::before {
  width: 100%;
  left: 0;
}

a.link-btn__white2 {
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  display: inline-block;
  font-size: 1.4rem;
  line-height: 2.1rem;
  color: #035b90;
  background: #fff;
  font-weight: 700;
  border-radius: 46px 46px;
  position: relative;
  padding: 24px 50px 26px 50px;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
  text-align: center;
}

a.link-btn__white2 > p {
  position: relative;
}

a.link-btn__white2::before {
  content: '';
  width: 0;
  height: 100%;
  position: absolute;
  left: 50%;
  top: 0;
  background: #2d2d2d;
  border-radius: 46px 46px;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}

a.link-btn__white2:hover {
  color: #fff;
}

a.link-btn__white2:hover::before {
  width: 100%;
  left: 0;
}

a.link-btn__blue1 {
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  display: inline-block;
  font-size: 1.4rem;
  line-height: 2.1rem;
  color: #fff;
  background: #035b90;
  font-weight: 700;
  border-radius: 37px 37px;
  position: relative;
  padding: 26px 50px;
  height: 74px;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
  text-align: center;
}

a.link-btn__blue1 > p {
  position: relative;
}

a.link-btn__blue1::before {
  content: '';
  width: 0;
  height: 100%;
  position: absolute;
  left: 50%;
  top: 0;
  background: #2d2d2d;
  border-radius: 46px 46px;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}

a.link-btn__blue1:hover {
  color: #fff;
}

a.link-btn__blue1:hover::before {
  width: 100%;
  left: 0;
}

a.link-btn__blue2 {
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  display: inline-block;
  font-size: 1.4rem;
  line-height: 2.1rem;
  color: #fff;
  background: #035b90;
  font-weight: 700;
  border-radius: 46px 46px;
  position: relative;
  padding: 24px 50px 26px 50px;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
  text-align: center;
}

a.link-btn__blue2 > p {
  position: relative;
}

a.link-btn__blue2::before {
  content: '';
  width: 0;
  height: 100%;
  position: absolute;
  left: 50%;
  top: 0;
  background: #2d2d2d;
  border-radius: 46px 46px;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}

a.link-btn__blue2:hover {
  color: #fff;
}

a.link-btn__blue2:hover::before {
  width: 100%;
  left: 0;
}

table.table-line {
  border-left: 1px solid #ececec;
  border-top: 1px solid #ececec;
}

table.table-line th, table.table-line td {
  padding: 10px 15px;
  border-right: 1px solid #ececec;
  border-bottom: 1px solid #ececec;
}

.column {
  display: flex;
  display: -webkit-flex;
  justify-content: space-between;
  -webkit-justify-content: space-between;
  align-items: center;
  -webkit-align-items: center;
}

.column.-top {
  align-items: flex-start;
  -webkit-align-items: flex-start;
}

.column.-bottom {
  align-items: flex-end;
  -webkit-align-items: flex-end;
}

.column.-reverse {
  flex-flow: row-reverse;
  -webkit-flex-flow: row-reverse;
}

.column .image {
  width: 35%;
}

.column .article {
  width: 60%;
}

.-w10p {
  width: 10%;
}

.-w15p {
  width: 15%;
}

.-w20p {
  width: 20%;
}

.-w25p {
  width: 25%;
}

.-w30p {
  width: 30%;
}

.-w35p {
  width: 35%;
}

.-w40p {
  width: 40%;
}

.-w45p {
  width: 45%;
}

.-w50p {
  width: 50%;
}

.-w55p {
  width: 55%;
}

.-w60p {
  width: 60%;
}

.-w65p {
  width: 65%;
}

.-w70p {
  width: 70%;
}

.-w75p {
  width: 75%;
}

.-w80p {
  width: 80%;
}

.-w85p {
  width: 85%;
}

.-w90p {
  width: 90%;
}

.-w95p {
  width: 95%;
}

.link-more {
  display: inline-block;
  position: relative;
  font-size: 1.3rem;
  line-height: 25px;
  padding-right: 38px;
}

.link-more > .icon {
  width: 25px;
  height: 25px;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  border-radius: 13px 13px;
  border: 3px solid #035b90;
  position: absolute;
  right: 0;
  top: 0;
  -webkit-transition: all 0.2s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0s;
  transition: all 0.2s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0s;
}

.link-more > .icon::before {
  content: '';
  width: 2px;
  height: 8px;
  background: #035b90;
  position: absolute;
  right: 9px;
  top: 6px;
  -webkit-transition: all 0.2s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0s;
  transition: all 0.2s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0s;
}

.link-more > .icon::after {
  content: '';
  width: 8px;
  height: 2px;
  background: #035b90;
  position: absolute;
  right: 6px;
  top: 9px;
  -webkit-transition: all 0.2s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0s;
  transition: all 0.2s cubic-bezier(0.37, 0.82, 0.335, 1.19) 0s;
}

.link-more:hover > .icon {
  background: #035b90;
}

.link-more:hover > .icon::before {
  background: #fff;
}

.link-more:hover > .icon::after {
  background: #fff;
}

/*------------------------------------------------------*/
/*  seminar */
/*------------------------------------------------------*/

.seminar {
  width: 86%;
  max-width: 950px;
  padding-top: 30px;
  margin: 0 auto 50px auto;
}

@media screen and (max-width: 750px) {
  .seminar {
    width: 90%;
    margin-bottom: 40px;
    padding-top: 15px;
  }
} 

.seminar > h2 {
  text-align: center;
  font-size: 3.2rem;
  line-height: 1;
  font-weight: 700;
  margin-bottom: 16px;
}

@media screen and (max-width: 750px) {
  .seminar > h2 {
    font-size: 1.8rem;
    line-height: 1.4;
    margin-top: 10px;
    margin-bottom: 10px;
  }
}

.seminar > p.subtitle {
  text-align: center;
  font-size: 2.2rem;
  font-weight: bold;
  line-height: 1.5; 
  margin-top: 10px;
  margin-bottom: 10px;
}

@media screen and (max-width: 750px) {
  .seminar > p.subtitle {
    font-size: 1.4rem;
    line-height: 1.5; 
    margin-top: 6px;
    margin-bottom: 6px;
  }
}

.seminar > p > span.pc-large { font-size: 24px; font-weight: bold;  }


@media screen and (max-width: 750px) {
  .seminar > p > span.pc-large {
      font-size: 16px;  
  } }
    
.seminar > h3 {
  text-align: left;
  border-bottom:solid;
  border-width:5px;
  border-color:#035b90;
  font-size: 2.6rem;
  line-height: 4.5rem;
  font-weight: 700;
  margin-top: 48px;
  margin-bottom: 32px;
}

@media screen and (max-width: 750px) {
  .seminar > h3 {
    margin-top: 32px;
    margin-bottom: 32px;
  }
}

.seminar > h4 {
  text-align: left;
  font-size: 1.8rem;
  line-height: 2.5rem;
  font-weight: 700;
  margin-bottom: 20px;
}

.seminar > p {
  font-size: 1.6rem;
  line-height: 2.2rem;
  margin: 30px 0 ;
}

@media screen and (max-width: 750px) {
  .seminar > p {
  font-size: 1.3rem;
  line-height: 2.2rem;
  margin: 20px 5px 20px 5px;
  }
}

.seminar > p > a {
  color: #0600ff; text-decoration: underline;
}

.seminar > img {
 display: block;
 max-width: 100%;
 text-align: center;
 margin-top: 50px;
 margin-bottom: 50px; 
 margin-left: auto;
 margin-right: auto;
}

@media screen and (max-width: 750px) {
  .seminar > img {
     margin-top: 20px; 
     margin-bottom: 20px; 
  }
}

.seminar > ul  {
  text-align: left;
  margin: 0.5em auto;
  font-size: 16px;
}  

.seminar > ul > li {
  margin: 13px 0 13px 0;
  padding-left: 20px;
  font-size: 16px;
}

.seminar > ul.seminar-topic  {
  text-align: left;
  margin: 0.5em auto;
}  

@media screen and (max-width: 750px) {
  .seminar > ul.seminar-topic  {  margin: 0 auto;
  } }

.seminar > ul.seminar-topic > li {
  margin: 13px 0 13px 0;
  padding-left: 20px;
  font-size: 16px;
}

@media screen and (max-width: 750px) {
  .seminar > ul.seminar-topic > li {
     margin: 8px 0 8px 0;
     padding-left: 8px;
     font-size: 13px;    
  }
}

.seminar > ul.seminar-topic > li::before {
 content: "・";
}


.seminar > dl.speaker {  
  margin-top: 24px;
  margin-bottom: 40px;
}

.seminar > dl.speaker > dt {
  font-weight: bold;
  font-size: 18px;
}

.seminar > dl.speaker > dt > a {
  color: #000000; text-decoration: underline;
}


.seminar > dl.speaker > dd.txt1 {
  font-size: 1.6rem;
  line-height: 2.2rem;
  margin: 25px 0 ;
  padding-left: 8px;
}

.seminar > dl.speaker > dd.txt2 {
  font-size: 1.6rem;
  line-height: 2.2rem;
  margin: 25px 0 ;
  padding-left: 8px;
}

@media screen and (max-width: 750px) {
  .seminar > dl.speaker > dd.txt1, .seminar > dl.speaker > dd.txt2  {
    font-size: 1.3rem;
    line-height: 2.2rem;
    margin: 16px 0 ;
    padding-left: 8px;  
  }
}


div.seminar-box {
  background: #FFF;
  box-shadow: 0px 0px 0px 10px #FFF;/*線の外側*/
  border: dashed 2px #035b90;/*破線*/
  border-radius: 20px;
  padding: 0.5em 0.3em 0.8em 0.3em; 
  width:90%;
  margin: 40px auto;
  font-size: 16px;
  vertical-align: middle;
}

@media screen and (max-width: 750px) {
  div.seminar-box {
     padding: 0.5em 0.3em 0.8em 0.3em; 
     width: 100%;
     margin: 20px auto;
     font-size: 14px;
  }
}

div.seminar-box-title {
  text-align: center;
  border-bottom:solid;
  border-width:5px;
  border-color:#035b90;
  font-size: 2.4rem;
  line-height: 4.5rem;
  font-weight: 700;
  margin-bottom: 10px;
}

@media screen and (max-width: 750px) {
  div.seminar-box-title { 
  font-size: 18px;
  line-height: 3.2rem;
  font-weight: bold;
  margin-bottom: 10px;
  }
}

div.seminar-box ol, div.seminar-box-title ul {
  text-align: left;
  margin-bottom: 10px;

}

div.seminar-box ol li, div.seminar-box ul li {
  line-height: 1.3em;
  padding: 0.5em ;
  font-size: 15px;
  font-weight: normal;
}

div.seminar-box img {
 display: block;
 max-width: 100%;
 text-align: center;
 margin-top: 20px;
 margin-bottom: 20px; 
}

div.seminar-box p {
  text-align: left;
  font-size: 16px;
  line-height: 1.3em;
  padding: 0.3em 0;
  margin: 0.5em auto;
}  



/*------------------------------------------------------*/
/*  HubDB Resource Library https://designers.hubspot.com/code-gallery/entry/founders/katelynae-HubDB-Resource-Library?hsLang=en */
/*------------------------------------------------------*/
/*-- body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    color: #33475b;
     background-color: rgb(245, 248, 250);
    font-family: "AvenirNext","Helvetica Neue",Helvetica,Arial,sans-serif;
    line-height: 1.625;
    margin: 0;
    padding: 0;
} --*/

body .resources-container {
    max-width: 1141px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
}

.resources-sidebar-container {
  width: 28%;
}

.sidebar-filters {
    padding: 34px 22px;
    background-color: #fff;
    border-radius: 4px;
    box-shadow: 0 0 11px rgba(33,33,33,.2);
}

.sidebar-filters h2 {
    font-size: 19.5px;
    font-weight: 400;
    letter-spacing: 0;
    margin: 0;
    padding-bottom: 10px;
    border-bottom: 2px solid #e8e8e8;
    color: #475761;
}

.sidebar-filters .filter-group {
    border: none;
    border-bottom: 2px solid #e8e8e8;
    padding: 30px 0;
    margin: 2px 0;
}

.sidebar-filters .filter-group h3 {
    font-size: 15px;
    font-weight: 400;
    margin: 0 0 4px;
    color: #475761;
}

.filter-group .filter-search {
    display: -webkit-flex;
    display: flex;
    width: 100%;
    margin: 3px 0;
}

.filter-search form {
  position: relative;
}

.filter-group input#search-by {
    flex: 1 0 auto;
    font-size: 14px;
    padding: 0 8px;
    min-height: 34px;
    letter-spacing: .1px;
    line-height: 2.5;
    border: 1px solid #dbe2eb;
    border-radius: 3px 0 0 3px;
    border-right: none;
    max-width: calc(100% - 30px);
    -webkit-appearance: none;
}

.filter-group .search-button {
    position: absolute;
    top: 0px;
    right: 0px;
    height: 34px;
    background-color: transparent;
    border: 1px solid #dbe2eb;
    border-radius: 0 3px 3px 0;
    border-left: none;
    width: 30px;
    padding: 0;
    -webkit-appearance: none;
}

.search-button:before {
    content: "";
    position: absolute;
    top: 17px;
    left: 16px;
    height: 6px;
    width: 2px;
    background-color: #00769b;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.search-button:after {
    content: " ";
    color: #00769b;
    position: absolute;
    top: 10px;
    left: 7px;
    width: 10px;
    height: 10px;
    border: 2px solid currentColor;
    border-radius: 100%;
}

.filter-group a {
    display: block;
    line-height: 1.2;
    font-size: 14.5px;
    padding: 4.5px 0;
    color: #0091ae;
    font-weight: 500;
    text-decoration: none;
}

.filter-group a:hover {
    color: #007a8c;
    text-decoration: underline;
}

.sidebar-social {
    margin-bottom: 20px;
}

.sidebar-social h3 {
    font-size: 15.25px;
    font-weight: 400;
    text-align: center;
    text-transform: uppercase;
    margin: 23px 0 11px;
    letter-spacing: 0;
    color: #475761;
}

.sidebar-social-icons {
  text-align: center;
}

.sidebar-social a {
  text-decoration: none;
}

.resources-results-container {
  width: 70%;
}

.resource-items-container {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -webkit-flex-wrap: wrap;
    flex-flow: row wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}

.resource-items-container .resource-item {
    background-color: #fff;
    border-radius: 4px;
    box-shadow: 0 0 11px rgba(33,33,33,.2);
    background-color: #f7f7f7;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-align-content: center;
    align-content: center;
    position: relative;
    transition: box-shadow .3s;
    width: 31.5%;
    margin-bottom: 25px;
}

.resource-items-container .resource-item:hover {
    box-shadow: 0 10px 50px -5px rgba(0,0,0,.15);
}

.resource-items-container .resource-item .item-content {
    padding: 19px;
    -webkit-order: 2;
    order: 2;
    transition: filter .3s;
}

.resource-item h2 {
    font-size: 1.24em;
    font-weight: 400;
    line-height: 1.3;
    letter-spacing: .02em;
    margin: 0;
    color: #475761;
}

.resource-item h2 a {
    color: #000;
    font-weight: 500;
    text-decoration: none;
}

.resource-item .tag {
    color: #a7a9ac;
    font-size: 14px;
}

.resource-items-container .resource-item .item-image {
    height: 163px;
    background-color: #fff;
    margin: 0;
    overflow: hidden;
    -webkit-order: 1;
    order: 1;
    transition: filter .3s;
}

.resource-item .item-image .item-link {
    position: relative;
    width: 100%;
    display: block;
    height: 100%;
}

.resource-item .item-image .item-link img {
    max-height: 100%;
    position: absolute;
    top: -100%;
    bottom: -100%;
    left: -100%;
    right: -100%;
    margin: auto;
    max-width: 100%;
}

.resource-items-container .resource-item figcaption {
    padding: 19px;
    border-radius: 4px;
    color: #fff;
    position: absolute;
    z-index: 1;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    opacity: 0;
    transition: background-color .3s,opacity .3s;
}

.resource-items-container .resource-item:hover figcaption {
    background-color: rgba(81,111,144,.85);
    opacity: 1;
}

.resource-items-container .resource-item figcaption strong {
    letter-spacing: .02em;
    line-height: 1.25em;
    display: block;
}

.resource-item .item-cta {
    position: absolute;
    text-align: center;
    left: 19px;
    bottom: 19px;
    right: 19px;
    z-index: 2;
    display: inline-block;
    background-color: #ff7a59;
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    padding: 8px 25px;
    border-radius: 4px;
    font-family: proxima-nova,Helvetica Neue,Helvetica,Arial,sans-serif;
    transition: background-color .5s;
}

.item-cta:hover {
    text-decoration: none;
    color: #fff;
    background-color: #ff8f73;
}

.resource-item.featured {
  width: 100%;
  flex-direction: row;
}

.resource-item.featured .item-content {
    padding: 88px 9px 65px 19px;
    width: 63%;
    align-self: center; 
}

.resource-item.featured .item-content h2 {
  font-size: 1.79em;
  max-width: 415px;
}

.resource-item.featured .item-image {
  height: auto;
  width: 37%;
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
}

.resource-item.featured .item-image img {
    max-width: none;
    min-height: 100%;
    min-width: 100%;
    object-fit: cover;
}

.featured-ribbon {
    position: absolute;
    top: 0;
    right: 12px;
    height: 42px;
    width: 32px;
    transition: filter .3s;
}

.featured-ribbon:before {
    content: "";
    height: 32px;
    display: block;
    background-color: #f8cd9c;
}

.featured-ribbon:after {
    border-left: 16px solid #f8cd9c;
    border-right: 16px solid #f8cd9c;
    border-bottom: 10px solid transparent;
    bottom: 0;
    content: "";
    height: 0;
    left: 0;
    position: absolute;
    width: 0;
}

.featured-ribbon .featured-star {
    z-index: 1;
    position: absolute;
    top: 8px;
    left: 9px;
    display: block;
    background: url(https://53.fs1.hubspotusercontent-na1.net/hubfs/53/assets/hubspot.com/marketing-library/ml-sprite.png) 0 0;
    width: 15px;
    height: 15px;
    overflow: hidden;
}


blockquote {
    position: relative;
    margin: 10px 15px 15px 15px;
    padding: 10px ;
    box-sizing: border-box;
    font-style: italic;
    border: solid 2px #464646;
    color: #464646;
}


blockquote p {
    padding: 0;
    margin: 5px 0;
    line-height: 1.5;
    font-style: italic;

}

blockquote cite {
    display: block;
    text-align: right;
    color: #888888;
    font-size: 0.9em;
}

span.marker  {
  background: linear-gradient(transparent 70%,  #ffff66 60%);  
  font-weight: bold; 
}


.topic-banner {
  margin: 50p auto 80px auto;
  padding-left: 20px;
  padding-right 20px;
  background: #035b90;
  color: #fff; }

  @media screen and (max-width: 750px) {
    .topic-banner {
      margin-bottom: 80px; } }
  @media screen and (min-width: 751px) {
    .topic-banner__wrapper {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      display: -webkit-flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      -webkit-justify-content: space-between;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-align-items: center;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
      flex-direction: row-reverse;
      -webkit-flex-direction: row-reverse;
      max-width: 750px;
      margin: 0 auto; } }
  .topic-banner__wrapper > .image {
    width: 50%;   
     max-width: 420px;
   
    vertical-align: middle;}
    @media screen and (max-width: 750px) {
      .topic-banner__wrapper > .image {
        max-width: 350px;
        text-align: center;
        margin: 0 auto 20px auto;
        padding-top: 30px; } }
  .topic-banner__wrapper > .text {
    font-size: 1.3rem;
    line-height: 2.7rem; }
    .topic-banner__wrapper > .text h3 {
      font-weight: 700;
      margin-bottom: 19px;
      font-weight: bold;
      font-size: 18px;
      letter-spacing: .1em;
      line-height: 180%;
      padding: 20px 20px; }
    @media screen and (max-width: 750px) {
      .topic-banner__wrapper > .text {
        font-size: 1.2rem;
        line-height: 2.1rem;
        text-align: center;
        padding-top: 48px; } }

.page-title {
  font-size: 4.1rem;
  font-weight: 700;
  color: #fff;
  padding: 43px 49px 46px;
  background-color: #036197;
  background-image: url(https://remotelock.kke.co.jp/hubfs/renewal2018/image/renewal2018/common/pagetitle/msk1.png);
  background-size: 1180px 114px;
  background-repeat: no-repeat;
  background-position: right top;
  position: relative;
}
.page-title::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background: url(https://remotelock.kke.co.jp/hubfs/renewal2018/image/renewal2018/common/pagetitle/figure1.svg) no-repeat 0 0;
  background-size: contain;
}
.page-title::after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background: url(https://remotelock.kke.co.jp/hubfs/renewal2018/image/renewal2018/common/pagetitle/figure2.svg) no-repeat right top;
  background-size: contain;
}
.page-title p {
  position: relative;
  z-index: 1;
}

@media screen and (max-width: 1180px) {
  .page-title::before {
    display: none;
  }
}

@media screen and (max-width: 750px) {
  .page-title {
    padding: 0 0 3px 7vw;
    font-size: 2.7rem;
    letter-spacing: 0.02em;
    line-height: 7.2rem;
    background: url(https://remotelock.kke.co.jp/hubfs/renewal2018/image/renewal2018/common/pagetitle/bgsp.jpg) no-repeat right top;
    background-size: cover;
  }
  .page-title::before {
    display: none;
  }
  .page-title::after {
    display: none;
  }
}

/*------------------------------------------------------*/
/*  個別お知らせページ　汎用 */
/*------------------------------------------------------*/  
.single-news-head {
  width: 90%;
  max-width: 1120px;
  margin: 0 auto 30px auto;
}

.single-news-head h2 {
  width: 86.6%;
  max-width: 1120px;
  margin: 35px auto 50px auto;
  font-size: 26px;
  line-height: 3.7rem;
  font-weight: bold;
  text-align: center;
}

.single-news-head > p {
  text-align: left;
  font-size: 1.7rem;
  line-height: 3.1rem;
  margin-bottom: 16px; }

  @media screen and (max-width: 750px) {
    .single-news-head > p {
      font-size: 1.4rem;
      line-height: 1.8rem;
      padding: 0 3%;
       } }

.single-news-head > p.right { text-align: right; }

.single-news-head > p.right > img { width: 250px; }
  @media screen and (max-width: 750px) {
    .price-renewal-head > p.right > img { width: 150px; } }




/*------------------------------------------------------*/
/*  Price-renewal 詳細*/
/*------------------------------------------------------*/

.single-news-detail {  
  width: 90%;
  max-width: 1120px;
  margin: 50px auto 80px auto;
}
@media screen and (max-width: 750px) {
  .single-news-detail {
    margin-bottom: 35px; } }

.single-news-detail > h2 {
  margin: 30px auto;
  font-size: 22px;
  line-height: 3.7rem;
  font-weight: bold;
  text-align: left;
}
@media screen and (max-width: 750px) {
  .single-news-detail > h2  {
     font-size: 20px;
     margin: 20px auto; } }

.single-news-detail > h3 {
  text-align: left;
  font-size: 20px;
  font-weight: bold;
  margin-top: 33px; 
  margin-bottom: 33px; 
  margin-left: 30px;
}

@media screen and (max-width: 750px) {
  .single-news-detail > h3 {
    text-align: left;
    font-size: 18px;
    margin-left: 0px;
    margin-bottom: 20px;
  }
}

.single-news-detail > p {
  text-align: left;
  font-size: 1.7rem;
  line-height: 26px;
  margin-bottom: 8px;
  margin-left: 30px;
}

@media screen and (max-width: 750px) {
  .single-news-detail > p {
    text-align: left;
    font-size: 14px;
    line-height: 1.8rem;
    padding: 0 7.2%;
    margin-bottom: 20px;
    margin-left: 0px;  } }


.single-news-detail > p.note {
 width: 85%;
 max-width: 800px;
 font-size: 14px; 
 margin:0 auto 50px auto; 
 line-height: 18px;}

}

@media screen and (max-width: 750px) {
  .single-news-detail > p.note {
    width: 100%;
    margin:0 0 50px 0; 
    padding: 0;
    font-size: 9px; } }

.single-news-detail > p > a { color: #0600ff; text-decoration: underline; }

/* 簡易事例用 */

/**
 * Owl Carousel v2.3.4
 * Copyright 2013-2018 David Deutsch
 * Licensed under: SEE LICENSE IN https://github.com/OwlCarousel2/OwlCarousel2/blob/master/LICENSE
 */
.owl-carousel,.owl-carousel .owl-item{-webkit-tap-highlight-color:transparent;position:relative}.owl-carousel{display:none;width:100%;z-index:1}.owl-carousel .owl-stage{position:relative;-ms-touch-action:pan-Y;touch-action:manipulation;-moz-backface-visibility:hidden}.owl-carousel .owl-stage:after{content:".";display:block;clear:both;visibility:hidden;line-height:0;height:0}.owl-carousel .owl-stage-outer{position:relative;overflow:hidden;-webkit-transform:translate3d(0,0,0)}.owl-carousel .owl-item,.owl-carousel .owl-wrapper{-webkit-backface-visibility:hidden;-moz-backface-visibility:hidden;-ms-backface-visibility:hidden;-webkit-transform:translate3d(0,0,0);-moz-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0)}.owl-carousel .owl-item{min-height:1px;float:left;-webkit-backface-visibility:hidden;-webkit-touch-callout:none}.owl-carousel .owl-item img{display:block;width:100%}.owl-carousel .owl-dots.disabled,.owl-carousel .owl-nav.disabled{display:none}.no-js .owl-carousel,.owl-carousel.owl-loaded{display:block}.owl-carousel .owl-dot,.owl-carousel .owl-nav .owl-next,.owl-carousel .owl-nav .owl-prev{cursor:pointer;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.owl-carousel .owl-nav button.owl-next,.owl-carousel .owl-nav button.owl-prev,.owl-carousel button.owl-dot{background:0 0;color:inherit;border:none;padding:0!important;font:inherit}.owl-carousel.owl-loading{opacity:0;display:block}.owl-carousel.owl-hidden{opacity:0}.owl-carousel.owl-refresh .owl-item{visibility:hidden}.owl-carousel.owl-drag .owl-item{-ms-touch-action:pan-y;touch-action:pan-y;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.owl-carousel.owl-grab{cursor:move;cursor:grab}.owl-carousel.owl-rtl{direction:rtl}.owl-carousel.owl-rtl .owl-item{float:right}.owl-carousel .animated{animation-duration:1s;animation-fill-mode:both}.owl-carousel .owl-animated-in{z-index:0}.owl-carousel .owl-animated-out{z-index:1}.owl-carousel .fadeOut{animation-name:fadeOut}@keyframes fadeOut{0%{opacity:1}100%{opacity:0}}.owl-height{transition:height .5s ease-in-out}.owl-carousel .owl-item .owl-lazy{opacity:0;transition:opacity .4s ease}.owl-carousel .owl-item .owl-lazy:not([src]),.owl-carousel .owl-item .owl-lazy[src^=""]{max-height:0}.owl-carousel .owl-item img.owl-lazy{transform-style:preserve-3d}.owl-carousel .owl-video-wrapper{position:relative;height:100%;background:#000}.owl-carousel .owl-video-play-icon{position:absolute;height:80px;width:80px;left:50%;top:50%;margin-left:-40px;margin-top:-40px;background:url(owl.video.play.png) no-repeat;cursor:pointer;z-index:1;-webkit-backface-visibility:hidden;transition:transform .1s ease}.owl-carousel .owl-video-play-icon:hover{-ms-transform:scale(1.3,1.3);transform:scale(1.3,1.3)}.owl-carousel .owl-video-playing .owl-video-play-icon,.owl-carousel .owl-video-playing .owl-video-tn{display:none}.owl-carousel .owl-video-tn{opacity:0;height:100%;background-position:center center;background-repeat:no-repeat;background-size:contain;transition:opacity .4s ease}.owl-carousel .owl-video-frame{position:relative;z-index:1;height:100%;width:100%}
#casemodule .case-exam {
  margin-bottom: 170px;
  margin-left: 90px;
  margin-right: 90px;
  position: relative;
}
@media screen and (max-width: 750px) {
  #casemodule .case-exam {
    margin-top: -20px;
  }
}
@media screen and (min-width: 1731px) {
  #casemodule .case-exam {
    width: 1550px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (max-width: 1400px) {
  #casemodule .case-exam {
    margin-left: 4.6vw;
    margin-right: 4.6vw;
  }
}
#casemodule .case-exam .owl-carousel .owl-stage-outer {
  overflow: initial;
}
#casemodule .case-exam__title {
  text-align: center;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 4.7rem;
  margin-bottom: 35px;
}
@media screen and (max-width: 750px) {
  #casemodule .case-exam__title {
    text-align: left;
    font-size: 1.9rem;
    padding-left: 2.7vw;
    margin-bottom: 8px;
  }
}
#casemodule .case-exam__sort {
  width: 92.72%;
  margin: 0 auto 36px;
  background: #fff;
}
#casemodule .case-exam__sortwrap {
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 1180px) {
  #casemodule .case-exam__sort {
    position: relative;
    -webkit-transition: all 0.3s ease-out 0s;
    transition: all 0.3s ease-out 0s;
  }
  #casemodule .case-exam__sort.-show .case-sort__otherwrap {
    height: 300px;
  }
  #casemodule .case-exam__sort.-show .case-sort__showbutton .text.-txt1 {
    display: none;
  }
  #casemodule .case-exam__sort.-show .case-sort__showbutton .text.-txt2 {
    display: block;
  }
  #casemodule .case-exam__sort.-show .case-sort__showbutton .icon svg {
    -webkit-transform: translate(-50%, -50%) rotate(45deg);
        -ms-transform: translate(-50%, -50%) rotate(45deg);
            transform: translate(-50%, -50%) rotate(45deg);
  }
  #casemodule .case-exam__sort .case-sort__selectwrap {
    width: 100%;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
  #casemodule .case-exam__sort .case-sort__subtitle {
    display: none;
  }
  #casemodule .case-exam__sort .case-sort__other {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  #casemodule .case-exam__sort .case-sort__otherwrap {
    width: 100%;
    position: absolute;
    left: 0;
    top: 110px;
    height: 0;
    overflow: hidden;
    background: #fff;
    -webkit-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
  }
  #casemodule .case-exam__sort .case-sort__other .case-sort__button {
    width: 100%;
    text-align: center;
    padding-left: 0;
  }
  #casemodule .case-exam__sort .case-sort__other .case-sort__button .case-button {
    width: 152px;
    margin: 0 auto;
  }
  #casemodule .case-exam__sort .case-sort__showbutton {
    display: block;
    cursor: pointer;
    padding: 10px 0;
  }
  #casemodule .case-exam__sort .case-sort__showbutton > div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    cursor: pointer;
    width: 250px;
    margin: 0 auto;
  }
  #casemodule .case-exam__sort .case-sort__showbutton .text {
    color: #035b90;
    font-size: 1.8rem;
    margin-right: 10px;
  }
  #casemodule .case-exam__sort .case-sort__showbutton .text.-txt2 {
    display: none;
  }
  #casemodule .case-exam__sort .case-sort__showbutton .icon {
    width: 36px;
    height: 36px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    border: 1px solid #035b90;
    border-radius: 50% 50%;
    position: relative;
    -webkit-transition: all 0.2s ease-out 0s;
    transition: all 0.2s ease-out 0s;
  }
  #casemodule .case-exam__sort .case-sort__showbutton .icon svg {
    width: 12px;
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
  #casemodule .case-exam__sort .case-sort__showbutton .icon svg .st0 {
    fill: #035b90;
    -webkit-transition: all 0.2s ease-out 0s;
    transition: all 0.2s ease-out 0s;
  }
}
@media screen and (max-width: 1180px) and (min-width: 751px) {
  #casemodule .case-exam__sort .case-sort__showbutton:hover .icon {
    background: #035b90;
  }
  #casemodule .case-exam__sort .case-sort__showbutton:hover .icon svg .st0 {
    fill: #fff;
  }
}
@media screen and (max-width: 1180px) {
  #casemodule .case-exam__sort .case-sort__item {
    width: 49%;
    padding-right: 0;
  }
}
@media screen and (max-width: 750px) {
  #casemodule .case-exam__sort {
    width: 100%;
  }
  #casemodule .case-exam__sort.-show .case-sort__otherwrap {
    height: 240px;
  }
  #casemodule .case-exam__sort .case-sort__selectwrap {
    width: 100%;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
  #casemodule .case-exam__sort .case-sort__subtitle {
    display: none;
  }
  #casemodule .case-exam__sort .case-sort__item.-l {
    padding-right: 0;
  }
  #casemodule .case-exam__sort .case-sort__other {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  #casemodule .case-exam__sort .case-sort__otherwrap {
    top: 82px;
  }
  #casemodule .case-exam__sort .case-sort__other .case-sort__button {
    width: 100%;
    text-align: center;
  }
  #casemodule .case-exam__sort .case-sort__other .case-sort__button .case-button {
    width: 114px;
    margin: 0 auto;
  }
  #casemodule .case-exam__sort .case-sort__other .case-sort__item {
    padding-right: 0;
  }
  #casemodule .case-exam__sort .case-sort__showbutton {
    width: 150px;
    padding: 5px 0;
  }
  #casemodule .case-exam__sort .case-sort__showbutton > div {
    width: 100%;
  }
  #casemodule .case-exam__sort .case-sort__showbutton .text {
    color: #035b90;
    font-size: 1.3rem;
    line-height: 1.8rem;
    margin-right: 10px;
    text-align: right;
  }
  #casemodule .case-exam__sort .case-sort__showbutton .text.-txt2 {
    line-height: 3.6rem;
  }
  #casemodule .case-exam__sort .case-sort__showbutton .icon {
    width: 22px;
    height: 22px;
  }
  #casemodule .case-exam__sort .case-sort__showbutton .icon svg {
    width: 11px;
    position: absolute;
  }
  #casemodule .case-exam__sort .case-sort__item {
    width: 49%;
    padding-right: 0;
  }
}
#casemodule .case-exam__list {
  width: 92.72%;
  margin: 0 auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 1px solid #ececec;
  position: relative;
}
#casemodule .case-exam__list::before {
  content: "";
  width: 40vw;
  height: 100%;
  background-color: #fff;
  position: absolute;
  top: 0;
  right: 100%;
  z-index: 2;
  background-image: linear-gradient(to right, transparent, transparent 3px, #ececec 3px, #ececec 4px);
  background-size: 4px 1px;
  background-position: right top;
  background-repeat: repeat-y;
}
#casemodule .case-exam__list::after {
  content: "";
  width: 40vw;
  height: 100%;
  background: #fff;
  position: absolute;
  top: 0;
  left: calc(100% + 1px);
  z-index: 2;
}
@media screen and (max-width: 750px) {
  #casemodule .case-exam__list {
    width: 100%;
  }
}
#casemodule .case-exam__noresult {
  width: 92.72%;
  margin: 0 auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-top: none;
  text-align: center;
  box-sizing: border-box;
  font-size: 1.8rem;
  padding: 71px 50px 80px;
  display: none;
  position: relative;
  background: #fff;
  position: relative;
  top: -1px;
  z-index: 1;
  color: #035b90;
}
#casemodule .case-exam__noresult.-show {
  display: block;
}
#casemodule .case-exam__noresult br {
  display: none;
}
@media screen and (max-width: 750px) {
  #casemodule .case-exam__noresult {
    width: 100%;
    font-size: 1.4rem;
    line-height: 2rem;
    padding: 36px 20px 0;
  }
}
#casemodule .case-exam__copy {
  opacity: 0;
  position: absolute;
  left: 0;
  top: 0;
}
#casemodule .case-exam__block {
  position: relative;
}
#casemodule .case-exam__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 0 0 30px;
  width: 100%;
}
@media screen and (max-width: 1179px) {
  #casemodule .case-exam__item {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    padding: 0 0 50px;
  }
}
@media screen and (max-width: 750px) {
  #casemodule .case-exam__item {
    padding: 0 0 0;
  }
}
#casemodule .case-exam__nav {
  width: 72px;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  text-align: center;
  cursor: pointer;
  z-index: 3;
}
#casemodule .case-exam__nav.-hide {
  display: none;
}
#casemodule .case-exam__nav .icon {
  width: 100%;
  height: 72px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 1px solid #ececec;
  border-radius: 50%;
  font-size: 0;
  position: relative;
  margin-bottom: 2px;
  -webkit-transition: all 0.3s ease-out 0s;
  transition: all 0.3s ease-out 0s;
  left: 0;
}
#casemodule .case-exam__nav .icon svg {
  width: 19px;
  position: absolute;
  left: 48%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
#casemodule .case-exam__nav .icon .st0 {
  fill: #035b90;
}
#casemodule .case-exam__nav .text {
  font-size: 1.5rem;
  color: #035b90;
}
#casemodule .case-exam__nav.-l {
  left: -57px;
}
@media screen and (min-width: 751px) {
  #casemodule .case-exam__nav.-l:hover .icon {
    left: -8px;
  }
}
#casemodule .case-exam__nav.-r {
  right: -57px;
}
#casemodule .case-exam__nav.-r .icon {
  -webkit-transform: scale(-1, 1);
      -ms-transform: scale(-1, 1);
          transform: scale(-1, 1);
}
@media screen and (min-width: 751px) {
  #casemodule .case-exam__nav.-r:hover .icon {
    left: 8px;
  }
}
@media screen and (max-width: 750px) {
  #casemodule .case-exam__nav {
    width: 54px;
    z-index: 2;
  }
  #casemodule .case-exam__nav .icon {
    height: 54px;
    background: #fff;
  }
  #casemodule .case-exam__nav .icon svg {
    width: 12px;
    left: 74%;
  }
  #casemodule .case-exam__nav .text {
    display: none;
  }
  #casemodule .case-exam__nav.-l {
    left: auto;
    right: 100%;
    -webkit-transform: translate(9px, -50px);
        -ms-transform: translate(9px, -50px);
            transform: translate(9px, -50px);
  }
  #casemodule .case-exam__nav.-r {
    right: auto;
    left: 100%;
    -webkit-transform: translate(-9px, -50px);
        -ms-transform: translate(-9px, -50px);
            transform: translate(-9px, -50px);
  }
}
#casemodule .case-exam__pager {
  width: 192px;
  height: 54px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 1px solid #ececec;
  border-radius: 27px;
  position: relative;
  background: #fff;
  cursor: pointer;
}
#casemodule .case-exam__pagerwrap {
  width: 432px;
  position: absolute;
  left: 50%;
  bottom: -27px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: 1;
}
#casemodule .case-exam__pagerwrap.-hide {
  display: none;
}
#casemodule .case-exam__pagerwrap.-select .case-exam__pager {
  display: none;
}
#casemodule .case-exam__pagerwrap.-select .case-exam__pager.-other {
  display: block;
}
@media screen and (min-width: 751px) {
  #casemodule .case-exam__pagerwrap.-select {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
@media screen and (max-width: 750px) {
  #casemodule .case-exam__pagerwrap.-select {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
}
#casemodule .case-exam__pager::before {
  content: "";
  width: 35px;
  height: 35px;
  border-radius: 27px;
  background: #035b90;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-transition: all 0.3s ease-out 0s;
  transition: all 0.3s ease-out 0s;
}
#casemodule .case-exam__pager .icon {
  width: 35px;
  height: 35px;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  font-size: 0;
}
#casemodule .case-exam__pager .icon svg {
  width: 7px;
  position: absolute;
  left: 54%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
#casemodule .case-exam__pager .icon svg .st0 {
  fill: #fff;
}
#casemodule .case-exam__pager .text {
  font-size: 1.8rem;
  line-height: 5rem;
  color: #035b90;
  position: relative;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}
@media screen and (min-width: 751px) {
  #casemodule .case-exam__pager:hover::before {
    width: 100%;
    height: 100%;
  }
  #casemodule .case-exam__pager:hover .text {
    color: #fff;
  }
}
#casemodule .case-exam__pager.-l::before {
  left: 13px;
}
#casemodule .case-exam__pager.-l .icon {
  left: 13px;
  -webkit-transform: scale(-1, 1) translateY(-50%);
      -ms-transform: scale(-1, 1) translateY(-50%);
          transform: scale(-1, 1) translateY(-50%);
}
#casemodule .case-exam__pager.-l .text {
  padding-left: 76px;
}
@media screen and (min-width: 751px) {
  #casemodule .case-exam__pager.-l:hover::before {
    left: 0;
  }
}
#casemodule .case-exam__pager.-r::before {
  right: 13px;
}
#casemodule .case-exam__pager.-r .icon {
  right: 13px;
}
#casemodule .case-exam__pager.-r .text {
  padding-left: 42px;
}
@media screen and (min-width: 751px) {
  #casemodule .case-exam__pager.-r:hover::before {
    right: 0;
  }
}
#casemodule .case-exam__pager.-other {
  display: none;
}
@media screen and (max-width: 750px) {
  #casemodule .case-exam__pager {
    width: 90px;
    height: 23px;
    border: none;
  }
  #casemodule .case-exam__pagerwrap {
    width: 100%;
    bottom: -41px;
  }
  #casemodule .case-exam__pager::before {
    display: none;
  }
  #casemodule .case-exam__pager .icon {
    width: 23px;
    height: 23px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    border: 1px solid #035b90;
    border-radius: 50% 50%;
  }
  #casemodule .case-exam__pager .icon svg {
    width: 5px;
  }
  #casemodule .case-exam__pager .icon svg .st0 {
    fill: #035b90;
  }
  #casemodule .case-exam__pager .text {
    font-size: 1.3rem;
    line-height: 2.3rem;
  }
  #casemodule .case-exam__pager.-l .icon {
    left: 0;
  }
  #casemodule .case-exam__pager.-l .text {
    padding-left: 30px;
  }
  #casemodule .case-exam__pager.-r .icon {
    right: 0;
  }
  #casemodule .case-exam__pager.-r .text {
    padding-left: 0;
    text-align: right;
    padding-right: 30px;
  }
}
#casemodule .case-exam__pagenum {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  position: absolute;
  right: calc(3.59% + 18px);
  bottom: 15px;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  color: #035b90;
}
#casemodule .case-exam__pagenum.-hide {
  display: none;
}
#casemodule .case-exam__pagenum .current {
  font-size: 4rem;
  font-weight: 600;
  line-height: 4rem;
  letter-spacing: 0.04em;
  position: relative;
  top: 3px;
}
#casemodule .case-exam__pagenum .line {
  font-size: 1.2rem;
  line-height: 1.2rem;
  letter-spacing: 0.04em;
  margin: 0 9px 3px 8px;
}
#casemodule .case-exam__pagenum .total {
  font-size: 1.9rem;
  line-height: 1.9rem;
  letter-spacing: 0.04em;
}
@media screen and (max-width: 750px) {
  #casemodule .case-exam__pagenum {
    width: 90px;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: absolute;
    right: auto;
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    bottom: -40px;
  }
  #casemodule .case-exam__pagenum .current {
    font-size: 3rem;
    line-height: 3rem;
    top: 3px;
    width: 30px;
    text-align: right;
  }
  #casemodule .case-exam__pagenum .line {
    font-size: 1rem;
    line-height: 1rem;
  }
  #casemodule .case-exam__pagenum .total {
    font-size: 1.4rem;
    line-height: 1.4rem;
    width: 30px;
  }
}
#casemodule .case-exam__info {
  width: 52.94%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 40px 25px 10px;
  position: relative;
}
#casemodule .case-exam__info dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  margin-bottom: 16px;
}
#casemodule .case-exam__info dl dt {
  width: 160px;
  font-size: 1.6rem;
  line-height: 3rem;
  color: #035b90;
}
#casemodule .case-exam__info dl dd {
  width: calc(100% - 160px);
  font-size: 1.8rem;
  line-height: 3rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
#casemodule .case-exam__info dl dd a {
  color: #035b90;
  display: inline-block;
  position: relative;
}
#casemodule .case-exam__info dl dd a::after {
  content: "";
  width: 100%;
  height: 1px;
  background: #035b90;
  position: absolute;
  left: 0;
  bottom: 4px;
}
@media screen and (min-width: 751px) {
  #casemodule .case-exam__info dl dd a:hover::after {
    display: none;
  }
}
#casemodule .case-exam__info dl.name {
  margin-bottom: 20px;
}
#casemodule .case-exam__info dl.name dt {
  padding-top: 7px;
}
#casemodule .case-exam__info dl.name dd {
  padding-right: 100px;
  font-size: 2.9rem;
  line-height: 4rem;
  font-weight: 600;
  font-family: "Poppins", "Noto Sans JP", -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "游ゴシック  Medium", meiryo, sans-serif;
}
#casemodule .case-exam__info dl.products dt {
  padding-top: 3px;
}
#casemodule .case-exam__info dl.products dd {
  padding-top: 8px;
}
@media screen and (max-width: 1179px) {
  #casemodule .case-exam__info {
    width: 100%;
  }
}
@media screen and (max-width: 750px) {
  #casemodule .case-exam__info {
    padding: 5px 25px;
    position: relative;
  }
  #casemodule .case-exam__info dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    margin-bottom: 12px;
  }
  #casemodule .case-exam__info dl dt {
    width: 70px;
    font-size: 1.2rem;
    line-height: 2rem;
    color: #035b90;
  }
  #casemodule .case-exam__info dl dd {
    width: calc(100% - 70px);
    font-size: 1.4rem;
    line-height: 2rem;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  #casemodule .case-exam__info dl dd a::after {
    bottom: 1px;
  }
  #casemodule .case-exam__info dl.name {
    margin-bottom: 7px;
  }
  #casemodule .case-exam__info dl.name dt {
    padding-top: 0;
  }
  #casemodule .case-exam__info dl.name dd {
    padding-right: 0;
    font-size: 2.3rem;
    line-height: 3rem;
  }
  #casemodule .case-exam__info dl.products dt {
    padding-top: 0px;
  }
  #casemodule .case-exam__info dl.products dd {
    padding-top: 4px;
  }
}
@media screen and (max-width: 330px) {
  #casemodule .case-exam__info {
    padding: 5px 15px;
  }
}
#casemodule .case-exam__map {
  position: relative;
  display: innline-block;
  width: 19px;
  top: 5px;
  margin-left: 18px;
}
#casemodule .case-exam__map .icon1 {
  width: 100%;
  position: absolute;
  left: 0;
  top: 0;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}
#casemodule .case-exam__map .st0 {
  fill: #035b90;
}
#casemodule .case-exam__map::after {
  display: none;
}
@media screen and (min-width: 751px) {
  #casemodule .case-exam__map:hover .icon1 {
    top: -4px;
  }
}
@media screen and (max-width: 750px) {
  #casemodule .case-exam__map {
    width: 14px;
    top: 3px;
    margin-left: 12px;
  }
}
#casemodule .case-exam__photo {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 47.06%;
  padding-bottom: 30px;
}
#casemodule .case-exam__photo .photo-main {
  margin-bottom: 6px;
  background: #000;
}
#casemodule .case-exam__photo .photo-main p {
  width: 100%;
  position: relative;
}
#casemodule .case-exam__photo .photo-main p::before {
  content: "";
  padding-top: 60%;
  display: block;
}
#casemodule .case-exam__photo .photo-main p img {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  -o-object-fit: contain;
     object-fit: contain;
}
#casemodule .case-exam__photo .photo-thumb {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 50px;
}
#casemodule .case-exam__photo .photo-thumb div {
  width: 19%;
  position: relative;
  margin-right: 1.25%;
  cursor: pointer;
}
#casemodule .case-exam__photo .photo-thumb div:last-of-type {
  margin-right: 0;
}
#casemodule .case-exam__photo .photo-thumb div::after {
  content: "";
  width: 0;
  height: 4px;
  position: absolute;
  left: 50%;
  bottom: -7px;
  background: #035b90;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}
#casemodule .case-exam__photo .photo-thumb div p {
  position: relative;
  overflow: hidden;
}
#casemodule .case-exam__photo .photo-thumb div p::before {
  content: "";
  padding-top: 60%;
  display: block;
}
#casemodule .case-exam__photo .photo-thumb div p img {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: all 0.3s ease-out 0s;
  transition: all 0.3s ease-out 0s;
}
@media screen and (min-width: 751px) {
  #casemodule .case-exam__photo .photo-thumb div:hover {
    cursor: pointer;
  }
  #casemodule .case-exam__photo .photo-thumb div:hover img {
    -webkit-transform: scale(1.08);
        -ms-transform: scale(1.08);
            transform: scale(1.08);
  }
}
#casemodule .case-exam__photo .photo-thumb div.-current {
  pointer-events: none;
}
#casemodule .case-exam__photo .photo-thumb div.-current::after {
  width: 100%;
}
@media screen and (max-width: 1179px) {
  #casemodule .case-exam__photo {
    width: 100%;
    padding-bottom: 80px;
  }
}
@media screen and (max-width: 750px) {
  #casemodule .case-exam__photo {
    padding-bottom: 48px;
  }
  #casemodule .case-exam__photo .photo-main {
    margin-bottom: 6px;
  }
  #casemodule .case-exam__photo .photo-thumb {
    margin-bottom: 0;
  }
  #casemodule .case-exam__photo .photo-thumb div::after {
    height: 3px;
    bottom: -5px;
  }
}
#casemodule .case-exam__product {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
#casemodule .case-exam__product p {
  margin: 0 28px 20px 0;
}
#casemodule .case-exam__product p.-p5i {
  width: 24px;
}
#casemodule .case-exam__product p.-p7i {
  width: 29px;
}
#casemodule .case-exam__product p.-p8j {
  width: 25px;
}
#casemodule .case-exam__product p.-p8jf {
  width: 30px;
}
#casemodule .case-exam__product p.-p8jq {
  width: 28px;
}
#casemodule .case-exam__product p.-ptobira {
  width: 44px;
}
#casemodule .case-exam__product p.-p500i {
  width: 24px;
}
#casemodule .case-exam__product p.-p700i {
  width: 31px;
}
#casemodule .case-exam__product p.-p9j {
  width: 24px;
}
#casemodule .case-exam__product p.-p9jq {
  width: 28px;
}
@media screen and (max-width: 750px) {
  #casemodule .case-exam__product p {
    margin: 0 24px 14px 0;
  }
  #casemodule .case-exam__product p.-p5i {
    width: 20px;
  }
  #casemodule .case-exam__product p.-p7i {
    width: 24px;
  }
  #casemodule .case-exam__product p.-p8j {
    width: 21px;
  }
  #casemodule .case-exam__product p.-p8jf {
    width: 25px;
  }
  #casemodule .case-exam__product p.-p8jq {
    width: 25px;
  }
  #casemodule .case-exam__product p.-ptobira {
    width: 38px;
  }
  #casemodule .case-exam__product p.-p500i {
    width: 20px;
  }
  #casemodule .case-exam__product p.-p700i {
    width: 25px;
  }
  #casemodule .case-exam__product p.-p9j {
    width: 21px;
  }
  #casemodule .case-exam__product p.-p9jq {
    width: 25px;
  }
}
#casemodule .case-exam__logo p {
  width: 50%;
  margin: 0 auto;
  position: relative;
  min-height: 78px;
}
#casemodule .case-exam__logo p::before {
  content: "";
  padding-top: 20%;
  display: block;
}
#casemodule .case-exam__logo p img {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  -o-object-fit: contain;
     object-fit: contain;
}
@media screen and (max-width: 750px) {
  #casemodule .case-exam__logo {
    margin-top: 30px;
    margin-bottom: -18px;
  }
  #casemodule .case-exam__logo p {
    min-height: 54px;
  }
  #casemodule .case-exam__logo p::before {
    padding-top: 25%;
  }
}
#casemodule .case-exam__button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  right: 24px;
  top: 42px;
}
#casemodule .case-exam__button > div {
  width: 35px;
  height: 35px;
  position: relative;
  border-radius: 50% 50%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 1px solid #035b90;
  margin-left: 10px;
  cursor: pointer;
}
@media screen and (min-width: 751px) {
  #casemodule .case-exam__button > div {
    font-size: 0;
    line-height: 0;
  }
}
#casemodule .case-exam__button > div::before {
  content: "";
  width: 0;
  height: 100%;
  position: absolute;
  left: 50%;
  top: 0;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  border-radius: 18px 18px;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
  background: #035b90;
}
#casemodule .case-exam__button > div .icon {
  position: relative;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 19px;
}
#casemodule .case-exam__button > div .icon .st0 {
  fill: #035b90;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}
#casemodule .case-exam__button > div .balloon {
  width: 110px;
  height: 60px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: absolute;
  left: 50%;
  bottom: calc(100% + 1px);
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  overflow: hidden;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
  opacity: 0;
  pointer-events: none;
}
#casemodule .case-exam__button > div .balloon .text {
  width: 100%;
  text-align: center;
  color: #035b90;
  font-size: 1.4rem;
  line-height: 4.8rem;
  position: absolute;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  left: 0;
  bottom: 9px;
  border: 1px solid #ececec;
  background: #fff;
}
#casemodule .case-exam__button > div .balloon::before {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 9px 5px 0 5px;
  border-color: #ececec transparent transparent transparent;
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
}
#casemodule .case-exam__button > div .balloon::after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 9px 5px 0 5px;
  border-color: #fff transparent transparent transparent;
  position: absolute;
  bottom: 2px;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media screen and (min-width: 751px) {
  #casemodule .case-exam__button > div:hover::before {
    width: 100%;
  }
  #casemodule .case-exam__button > div:hover .balloon {
    bottom: calc(100% + 6px);
    opacity: 1;
  }
  #casemodule .case-exam__button > div:hover .icon .st0 {
    fill: #fff;
  }
}
@media screen and (max-width: 750px) {
  #casemodule .case-exam__button {
    position: relative;
    right: auto;
    top: auto;
    padding-left: 70px;
    margin-bottom: 26px;
  }
  #casemodule .case-exam__button > div {
    width: auto;
    height: auto;
    border: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-left: 14px;
  }
  #casemodule .case-exam__button > div:first-of-type {
    margin-left: 0;
  }
  #casemodule .case-exam__button > div .icon {
    width: 20px;
    height: 20px;
    position: relative;
    border-radius: 50% 50%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    border: 1px solid #035b90;
    margin-left: 0;
    font-size: 0;
    line-height: 0;
    cursor: pointer;
    left: 0;
    top: 0;
    -webkit-transform: translate(0);
        -ms-transform: translate(0);
            transform: translate(0);
    margin-right: 7px;
  }
  #casemodule .case-exam__button > div .icon svg {
    width: 12px;
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
  #casemodule .case-exam__button > div .icon .st0 {
    fill: #035b90;
    -webkit-transition: all 0.2s ease-out 0s;
    transition: all 0.2s ease-out 0s;
  }
  #casemodule .case-exam__button > div .text {
    font-size: 1.2rem;
    color: #035b90;
    position: relative;
  }
  #casemodule .case-exam__button > div .text::after {
    content: "";
    width: 100%;
    height: 1px;
    background: #035b90;
    position: absolute;
    left: 0;
    bottom: 5px;
  }
}
@media screen and (max-width: 330px) {
  #casemodule .case-exam__button > div {
    margin-left: 10px;
  }
  #casemodule .case-exam__button > div .text {
    font-size: 1rem;
  }
}
#casemodule .case-exam__link a {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 750px) {
  #casemodule .case-exam__link a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  #casemodule .case-exam__link a .icon {
    border: 1px solid #035b90;
  }
}
@media screen and (max-width: 750px) {
  #casemodule .case-exam {
    margin-bottom: 104px;
  }
}
#casemodule .case-sort__select {
  position: relative;
  background: #f5f5f5;
}
#casemodule .case-sort__selectwrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
#casemodule .case-sort__select::after {
  content: "";
  width: 14px;
  height: 8px;
  position: absolute;
  right: 14px;
  background: url(https://remotelock.kke.co.jp/hubfs/renewal2018/image/renewal2018/casestudy/icon/arrow2.svg) no-repeat 0 0;
  background-size: contain;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  font-size: 0;
  line-height: 0;
  pointer-events: none;
}
#casemodule .case-sort__showbutton {
  display: none;
}
#casemodule .case-sort__button {
  width: 200px;
  padding-top: 32px;
  position: relative;
}
#casemodule .case-sort__subtitle {
  font-size: 1.4rem;
  line-height: 5rem;
  white-space: nowrap;
  padding-right: 23px;
}
#casemodule .case-sort__item {
  width: 18.2%;
}
#casemodule .case-sort__item.-l {
  width: 21%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding-right: 40px;
}
#casemodule .case-sort__item.-hide {
  display: none;
}
#casemodule .case-sort__item > p {
  font-size: 1.6rem;
  color: #035b90;
  padding-left: 8px;
  margin-bottom: 7px;
}
#casemodule .case-sort__other {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
#casemodule .case-sort__otherwrap {
  width: 76%;
}
#casemodule .case-sort__other .case-sort__button {
  width: 151px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding-left: 13px;
}
#casemodule .case-sort__other .case-button {
  width: 100%;
  position: relative;
}
#casemodule .case-sort__other .case-button .case-button {
  position: relative;
  right: 0;
}
#casemodule .case-sort__other .case-sort__select {
  background: transparent;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 1px solid #ececec;
}
#casemodule .case-sort__other .case-sort__item {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding-right: 12px;
}
#casemodule .case-sort__other .case-sort__item > p {
  font-size: 1.4rem;
  margin-bottom: 4px;
}
#casemodule .case-sort__other .case-select {
  font-size: 1.5rem;
  line-height: 5rem;
}
@media screen and (max-width: 1180px) {
  #casemodule .case-sort__item.-l {
    width: 40%;
  }
}
@media screen and (max-width: 750px) {
  #casemodule .case-sort__select::after {
    width: 9px;
    height: 5px;
    right: 12px;
  }
  #casemodule .case-sort__item > p {
    font-size: 1.2rem;
    margin-bottom: 0;
  }
  #casemodule .case-sort__button {
    padding-top: 20px;
  }
  #casemodule .case-sort__other .case-sort__item {
    margin-bottom: 5px;
  }
  #casemodule .case-sort__other .case-sort__item > p {
    font-size: 1.2rem;
    margin-bottom: 0;
  }
  #casemodule .case-sort__other .case-select {
    line-height: 4.4rem;
  }
}
#casemodule .case-select {
  background: transparent;
  font-size: 1.7rem;
  line-height: 5.4rem;
  display: block;
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0 30px 0 14px;
  cursor: pointer;
  color: #000;
}
@media screen and (max-width: 750px) {
  #casemodule .case-select {
    line-height: 4.2rem;
    font-size: 1.5rem;
  }
}
#casemodule .case-button {
  height: 50px;
  border-radius: 25px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  cursor: pointer;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-bottom: 2px;
  background: #035b90;
}
#casemodule .case-button::before {
  content: "";
  width: 0;
  height: 100%;
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  background: #2d2d2d;
  border-radius: 27px;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}
#casemodule .case-button__text {
  font-size: 1.6rem;
  margin-right: 10px;
  position: relative;
  color: #fff;
}
#casemodule .case-button__icon {
  width: 20px;
  font-size: 0;
  line-height: 0;
  position: relative;
}
#casemodule .case-button__icon::before {
  content: "";
  display: block;
  padding-top: 100%;
}
#casemodule .case-button__icon img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
}
#casemodule .case-button__icon img.icon2 {
  display: none;
}
#casemodule .case-button.-break {
  border: 1px solid #c7c7c7;
  pointer-events: none;
  cursor: default;
  background: transparent;
}
#casemodule .case-button.-break .case-button__text {
  color: #c6c6c6;
}
#casemodule .case-button.-break .case-button__icon img.icon1 {
  display: none;
}
#casemodule .case-button.-break .case-button__icon img.icon2 {
  display: block;
}
@media screen and (min-width: 751px) {
  #casemodule .case-button:hover::before {
    width: 100%;
  }
}
@media screen and (max-width: 750px) {
  #casemodule .case-button {
    width: 114px;
    height: 42px;
    border-radius: 21px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    cursor: pointer;
  }
  #casemodule .case-button__text {
    font-size: 1.4rem;
    margin-right: 5px;
  }
  #casemodule .case-button__icon {
    width: 16px;
  }
}

/*------------------------------------------------------*/
/*  cookie */
/*------------------------------------------------------*/
#hs-banner-parent #hs-eu-cookie-confirmation {
  width: 100% !important;
  max-width: 100% !important;
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
  border-top: 1px solid #ececec;
  bottom: 0 !important;
}
#hs-banner-parent #hs-eu-cookie-confirmation #hs-eu-header-container {
  width: 37px;
  height: 37px;
  position: absolute;
  right: 90px;
  top: 12px;
  border-radius: 50% 50%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 1px solid #035b90;
  background: #fff;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
  display: none !important;
}
#hs-banner-parent #hs-eu-cookie-confirmation #hs-eu-header-container button {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  font-size: 0;
  line-height: 0;
}
#hs-banner-parent #hs-eu-cookie-confirmation #hs-eu-header-container button svg {
  width: 12px;
  height: 12px;
}
#hs-banner-parent #hs-eu-cookie-confirmation #hs-eu-header-container button svg path {
  fill: #035b90;
}
@media screen and (min-width: 751px) {
  #hs-banner-parent #hs-eu-cookie-confirmation #hs-eu-header-container:hover {
    background: #035b90;
  }
  #hs-banner-parent #hs-eu-cookie-confirmation #hs-eu-header-container:hover button svg path {
    fill: #fff;
  }
}
#hs-banner-parent #hs-eu-cookie-confirmation #hs-eu-cookie-confirmation-inner {
  padding: 34px 90px 34px;
  gap: 10px;
  min-height: auto;
}
#hs-banner-parent #hs-eu-cookie-confirmation #hs-eu-cookie-confirmation-inner div, #hs-banner-parent #hs-eu-cookie-confirmation #hs-eu-cookie-confirmation-inner p {
  color: #000;
  font-size: 1.5rem;
  line-height: 3.6rem;
}
#hs-banner-parent #hs-eu-cookie-confirmation #hs-eu-cookie-confirmation-inner #hs-eu-cookie-confirmation-buttons-area {
  position: absolute;
  right: 90px;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}
#hs-banner-parent #hs-eu-cookie-confirmation #hs-eu-cookie-confirmation-inner #hs-eu-policy-wording {
  padding-right: 360px;
}
#hs-banner-parent #hs-eu-cookie-confirmation #hs-eu-cookie-confirmation-inner #hs-eu-policy-wording a {
  border-bottom: 1px solid #000;
}
@media screen and (min-width: 751px) {
  #hs-banner-parent #hs-eu-cookie-confirmation #hs-eu-cookie-confirmation-inner #hs-eu-policy-wording a:hover {
    border-bottom: none;
  }
}
#hs-banner-parent #hs-eu-cookie-confirmation #hs-eu-cookie-confirmation-inner #hs-eu-cookie-disclaimer {
  padding-right: 280px;
  font-size: 1.2rem;
  line-height: 2.4rem;
  gap: 5px;
  display: none;
}
#hs-banner-parent #hs-eu-cookie-confirmation #hs-eu-cookie-confirmation-inner #hs-eu-cookie-disclaimer::before {
  content: "※";
}
#hs-banner-parent #hs-eu-cookie-confirmation #hs-eu-confirmation-button, #hs-banner-parent #hs-eu-cookie-confirmation #hs-eu-cookie-settings-button, #hs-banner-parent #hs-eu-cookie-confirmation #hs-eu-decline-button {
  font-size: 1.6rem;
  line-height: 4.6rem;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
  border: 1px solid #035b90;
  min-width: 156px;
  height: 48px;
  font-family: "Noto Sans JP", -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "游ゴシック  Medium", meiryo, sans-serif;
  font-weight: 500;
  text-decoration: none;
}
@media screen and (min-width: 751px) {
  #hs-banner-parent #hs-eu-cookie-confirmation #hs-eu-confirmation-button:hover, #hs-banner-parent #hs-eu-cookie-confirmation #hs-eu-cookie-settings-button:hover, #hs-banner-parent #hs-eu-cookie-confirmation #hs-eu-decline-button:hover {
    background: #fff;
    color: #035b90;
  }
}
#hs-banner-parent #hs-eu-cookie-confirmation #hs-eu-cookie-settings-button {
  color: #035b90;
}
@media screen and (min-width: 751px) {
  #hs-banner-parent #hs-eu-cookie-confirmation #hs-eu-cookie-settings-button:hover {
    background: #035b90;
    color: #fff;
  }
}
#hs-banner-parent #hs-eu-cookie-confirmation #hs-eu-opt-in-buttons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
#hs-banner-parent #hs-eu-cookie-confirmation #hs-eu-opt-in-buttons #hs-eu-decline-button {
  display: none;
}
@media screen and (max-width: 1400px) {
  #hs-banner-parent #hs-eu-cookie-confirmation #hs-eu-header-container {
    right: 4vw;
  }
  #hs-banner-parent #hs-eu-cookie-confirmation #hs-eu-cookie-confirmation-inner {
    padding-left: 4vw;
    padding-right: 4vw;
  }
  #hs-banner-parent #hs-eu-cookie-confirmation #hs-eu-cookie-confirmation-inner #hs-eu-cookie-confirmation-buttons-area {
    right: 4vw;
  }
}
@media screen and (max-width: 1000px) {
  #hs-banner-parent #hs-eu-cookie-confirmation #hs-eu-cookie-confirmation-inner #hs-eu-cookie-confirmation-buttons-area {
    position: relative;
    right: 0;
    top: 0;
    -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
            transform: translateY(0);
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: 20px;
  }
  #hs-banner-parent #hs-eu-cookie-confirmation #hs-eu-cookie-confirmation-inner #hs-eu-policy-wording {
    padding-right: 0;
  }
  #hs-banner-parent #hs-eu-cookie-confirmation #hs-eu-cookie-confirmation-inner #hs-eu-cookie-disclaimer {
    padding-right: 0;
  }
  #hs-banner-parent #hs-eu-cookie-confirmation #hs-eu-opt-in-buttons {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}
@media screen and (max-width: 750px) {
  #hs-banner-parent #hs-eu-cookie-confirmation #hs-eu-header-container {
    width: 21px;
    height: 21px;
    right: 4.6vw;
    top: 13px;
  }
  #hs-banner-parent #hs-eu-cookie-confirmation #hs-eu-header-container button svg {
    width: 9px;
    height: 9px;
  }
  #hs-banner-parent #hs-eu-cookie-confirmation #hs-eu-cookie-confirmation-inner {
    padding-top: 26px;
    padding-left: 7.6vw;
    padding-right: 7.6vw;
    padding-bottom: 30px;
    margin-top: 18px;
  }
  #hs-banner-parent #hs-eu-cookie-confirmation #hs-eu-cookie-confirmation-inner div, #hs-banner-parent #hs-eu-cookie-confirmation #hs-eu-cookie-confirmation-inner p {
    font-size: 1.2rem;
    line-height: 2.2rem;
  }
  #hs-banner-parent #hs-eu-cookie-confirmation #hs-eu-cookie-confirmation-inner #hs-eu-policy-wording {
    padding-right: 0;
  }
  #hs-banner-parent #hs-eu-cookie-confirmation #hs-eu-cookie-confirmation-inner #hs-eu-cookie-disclaimer {
    padding-right: 0;
    font-size: 1rem;
    line-height: 2rem;
  }
  #hs-banner-parent #hs-eu-cookie-confirmation #hs-eu-confirmation-button, #hs-banner-parent #hs-eu-cookie-confirmation #hs-eu-cookie-settings-button, #hs-banner-parent #hs-eu-cookie-confirmation #hs-eu-decline-button {
    font-size: 1.2rem;
    line-height: 3.4rem;
    height: 36px;
    min-width: 138px;
  }
  #hs-banner-parent #hs-eu-cookie-confirmation #hs-eu-opt-in-buttons {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}

#hs-modal #hs-modal-content #hs-modal-accept-all {
  border: 1px solid #035b90;
  background: #035b90;
  font-family: "Noto Sans JP", -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "游ゴシック  Medium", meiryo, sans-serif;
  font-weight: 500;
  text-decoration: none;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}
@media screen and (min-width: 751px) {
  #hs-modal #hs-modal-content #hs-modal-accept-all:hover {
    background: #fff;
    color: #035b90;
  }
}
#hs-modal #hs-modal-content #hs-modal-save-settings {
  border: 1px solid #035b90;
  color: #035b90;
  font-family: "Noto Sans JP", -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "游ゴシック  Medium", meiryo, sans-serif;
  font-weight: 500;
  text-decoration: none;
  -webkit-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}
@media screen and (min-width: 751px) {
  #hs-modal #hs-modal-content #hs-modal-save-settings:hover {
    background: #035b90;
    color: #fff;
  }
}
#hs-modal #hs-modal-content #hs-categories-container .hs-category-row .hs-toggle-switch.hs-toggle-selected-flag {
  background-color: #035b90;
  border-color: #035b90;
}
#hs-modal #hs-modal-content #hs-categories-container .hs-category-description.visible {
  margin-top: 10px;
}
@media screen and (max-width: 750px) {
  #hs-modal #hs-modal-content #hs-modal-footer {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  #hs-modal #hs-modal-content #hs-modal-accept-all, #hs-modal #hs-modal-content #hs-modal-save-settings {
    height: 36px;
    min-width: 138px;
    font-size: 1.2rem;
  }
}

/*------------------------------------------------------*/
/*  事例インタビュー印刷用 */
/*------------------------------------------------------*/
@media print {
		#wrapper {
			padding-top: 0;
		}
		#wrapper h2.page-title, #wrapper .breadnav {
			display: none;
		}
		#wrapper main h2.page-title, #wrapper main .breadnav {
			display: none;
		}
		.head, .foot {
			display: none;
		}
	.casestudy-single__head .wrap > .widget-span > .row-depth-2 {
		width: 60%;
		margin: 0 auto 20px;
	}

	.casestudy-single__head .wrap > .widget-span > .row-depth-2:last-of-type {
		width: 100%;
	}

	.casestudy-single__head .wrap.-page2 > .widget-span > .row-depth-2 {
		width: 100% !important;
	}
	.casestudy-single__head .wrap .photo img {
		width: 100% !important;
	}
.casestudy-single__head .wrap .text .logo {
  width: 70%;
  margin: 0 auto 20px auto;
  }
	.casestudy-single__head .wrap .text {
		text-align: center;
	}

	.casestudy-single__point,
	.casestudy-single__lead,
	.casestudy-single__faq {
		width: 95%;
	}
	.casestudy-single__head .wrap .text .txt {
		width: 100%;
	}

	.casestudy-single__point table tr th {
		padding: 10px 0 0;
		vertical-align: top;
		width: 15%;
		text-align: left;
	}

	.casestudy-single__point table tr td {
		box-sizing: border-box;
		padding: 10px 0 20px;
		width: 85%;
	}

	.casestudy-single__point table tr td  ul.list > li:before {
		width: auto;
		height: auto;
		content: '・';
		background: transparent;
		top: 0;
	}

	.casestudy-single__faq .item dt > .faq-q,
	.casestudy-single__faq .item dd .faq-a {
		height: auto;
		padding-top: 0;
		font-size: 2.2rem;
		top: 0;
	}

	.casestudy-single__faq .item dt {
		line-height: 2.8rem;
	}

	.casestudy-single__faq .item dt > .faq-q::before,
	.casestudy-single__faq .item dt > .faq-q::after,
	.casestudy-single__faq .item dd .faq-a::before {
		display: none;
	}

	.btn-back {
		display: none;
	}
  
  .hs-tools-menu.hs-collapsed {
    display: none;
  }
  
  .leadinModal-content {
    display: none !important;
  }
}