@charset "UTF-8";
/* reset */
html {
  overflow-y: scroll; }

* {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

a {
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

dt, th, h1, h2, h3, h4, h5, h6 {
  font-weight: 500; }

section, figure, aside, header, footer, main, nav {
  display: block; }

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

table {
  border-collapse: collapse; }

caption, th {
  text-align: left; }

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

object,
embed {
  vertical-align: top; }

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: 500; }

img, abbr, acronym, fieldset {
  border: 0; }

li {
  list-style-type: none; }

img {
  vertical-align: bottom; }

hr {
  clear: both; }

/* --------------------------------------------------------
	01share style
	-------------------------------------------------------- */
.tal {
  text-align: left; }

.tar {
  text-align: right; }

.tac {
  text-align: center; }

.fwb {
  font-weight: bold; }

.fwn {
  font-weight: normal; }

/*CSS Rollover*/
a.cssRoll img {
  opacity: 1; }

a:hover.cssRoll img {
  opacity: 0.6; }

body {
  font-weight: 500;
  line-height: 1.7;
  color: #373737; }

a:link {
  text-decoration: none; }

a:visited {
  text-decoration: none; }

a:hover {
  text-decoration: underline; }

a:active {
  text-decoration: none; }

figure {
  display: block;
  -webkit-margin-before: 0;
  -webkit-margin-after: 0;
  -webkit-margin-start: 0;
  -webkit-margin-end: 0; }

em {
  font-weight: bold; }

/* ---------------------------
module
--------------------------- */
#wrapper {
  position: relative;
  overflow: hidden; }

body {
  font-family: "Yu Gothic", "YuGothic", "Hiragino Kaku Gothic Pro",  "Meiryo", verdana, "Osaka", "MS PGothic", Sans-Serif;
  font-weight: 500;
  color: #767d84;
  -webkit-text-size-adjust: 100%; }

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

a {
  color: #767d84; }

a:not([href^="tel:"]) {
  -webkit-transition: 0.2s;
  -o-transition: 0.2s;
  transition: 0.2s; }
  a:not([href^="tel:"]):hover {
    text-decoration: none;
    opacity: 0.4; }

a[href^="tel:"] {
  cursor: default; }

/* ---------------------------
l-header
--------------------------- */
.l-header {
  position: fixed;
  left: 0;
  top: 0;
  z-index: 1;
  width: 100%;
  z-index: 10;
  background: #fff;
  -webkit-box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.2);
  box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.2);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 100%;
  -webkit-transition: 0.4s;
  -o-transition: 0.4s;
  transition: 0.4s; }
  #cat-home .l-header {
    background: none;
    -webkit-box-shadow: none;
    box-shadow: none; }
  #cat-home.scrolled .l-header {
    background: #fff;
    -webkit-box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.2);
    box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.2); }
  .l-header-clear {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 100%; }
  .l-header-col1 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; }
  .l-header-col2 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; }
  .l-header-reserve {
    text-align: center; }
    .l-header-reserve a {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      color: #fff;
      background: #333333; }
    .l-header-reserve .ico {
      margin-bottom: 0.5em; }

/* ---------------------------
l-footer
--------------------------- */
.l-footer {
  position: relative; }
  .l-footer-clear-top {
    background: #333333;
    color: #FFF; }
  .l-footer-clear-bottom {
    background: #3D3D3D;
    color: #FFF;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    .l-footer-clear-bottom-title {
      font-size: 1.1rem;
      margin-bottom: 18px; }
  .l-footer-logo {
    margin-bottom: 1.5em;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    line-height: 1; }
  .l-footer-contact a {
    color: #FFF; }
  .l-footer-contact.bg-w a {
    color: #4A4F54;
    background: #FFF; }
  .l-footer-copyright {
    text-align: center; }
  .l-footer-pagetop {
    position: absolute; }
    .l-footer-pagetop a {
      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;
      background: #fff;
      -webkit-box-shadow: 0 1px 5px 0 rgba(0, 0, 0, 0.05);
      box-shadow: 0 1px 5px 0 rgba(0, 0, 0, 0.05); }
    .l-footer-pagetop img {
      -webkit-transform: rotate(-90deg);
      -ms-transform: rotate(-90deg);
      transform: rotate(-90deg); }

/* ---------------------------
l-post
--------------------------- */
.l-post-wrap {
  background: #fff; }

.l-post-side-sec-h {
  font-weight: bold;
  position: relative;
  padding-bottom: 0.8em;
  margin-bottom: 0.8em;
  border-bottom: 2px solid #b3b3b3;
  font-size: 1.2rem; }

.l-post-side-posts li {
  margin-bottom: 1em; }

.l-post-side-posts-date {
  color: #999999;
  font-size: 0.85rem; }

/* ---------------------------
l-wrap
--------------------------- */
/* ---------------------------
l-secType
--------------------------- */
.l-secType02 {
  border-top: 1px solid #e2e1dc; }

/* ---------------------------
btn
--------------------------- */
.m-btn01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  line-height: 1;
  position: relative;
  border-width: 1px;
  border-style: solid;
  letter-spacing: 0.1em;
  cursor: pointer; }
  .m-btn01:hover {
    text-decoration: none;
    opacity: 0.7; }
  .m-btn01.arrow-r:before {
    content: "";
    display: block;
    position: absolute;
    right: 10px;
    top: 50%;
    margin-top: -6px;
    width: 12px;
    height: 12px;
    background: url("../img/base/ico_arrow_01_wh.svg") center no-repeat;
    background-size: contain; }
  .m-btn01.arrow-r.u-c-c0:before {
    background-image: url("../img/base/ico_arrow_01_c0.svg"); }
  .m-btn01.arrow-l:before {
    content: "";
    display: block;
    position: absolute;
    left: 10px;
    top: 50%;
    margin-top: -8px;
    width: 16px;
    height: 16px;
    background: url("../img/base/ico_arrow_01_c2.svg") center no-repeat;
    background-size: contain;
    -webkit-transform: scaleX(-1);
    -ms-transform: scaleX(-1);
    transform: scaleX(-1); }

.m-btn02 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  line-height: 1;
  font-weight: bold;
  position: relative;
  border-radius: 2em;
  border-width: 1px;
  letter-spacing: 0.1em;
  cursor: pointer; }
  .m-btn02:hover {
    text-decoration: none;
    opacity: 0.7; }
  .m-btn02.arrow-r:before {
    content: "";
    display: block;
    position: absolute;
    right: 10px;
    top: 50%;
    margin-top: -8px;
    width: 16px;
    height: 16px;
    background: url("../img/base/ico_arrow_01_c2.svg") center no-repeat;
    background-size: contain; }
  .m-btn02.arrow-l:before {
    content: "";
    display: block;
    position: absolute;
    left: 10px;
    top: 50%;
    margin-top: -8px;
    width: 16px;
    height: 16px;
    background: url("../img/base/ico_arrow_01_c2.svg") center no-repeat;
    background-size: contain;
    -webkit-transform: scaleX(-1);
    -ms-transform: scaleX(-1);
    transform: scaleX(-1); }

/* ---------------------------
btns1col
--------------------------- */
.m-btns1col {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }
  .m-btns1col-item:not(:last-child) {
    margin-bottom: 10px; }
  .m-btns1col-item .m-btn01 {
    height: 100%; }

.m-alignRightBtn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end; }

.m-btns2col {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between; }
  .m-btns2col.is-jcc {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center; }
  .m-btns2col-item {
    width: 49%; }
    .m-btns2col-item .m-btn01 {
      height: 100%; }
    .m-btns2col.is-autoSize .m-btns2col-item {
      width: auto; }
    .is-jcc .m-btns2col-item:not(:last-child) {
      margin-right: 2%; }

.m-btns3col {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between; }
  .m-btns3col-item {
    width: 32%; }
    .m-btns3col-item .m-btn01 {
      height: 100%; }

/* ---------------------------
m-cols01
--------------------------- */
.m-cols01-links-item a {
  display: block;
  padding: 11px 10px; }

.m-cols01-links-item.is-current a {
  background: #b3b3b3;
  font-weight: bold; }

/* ---------------------------
m-gnav
--------------------------- */
.m-gnav-links-item .en {
  font-family: 'MuseoModerno', Sans-Serif;
  font-weight: 900;
  font-style: normal; }

.m-gnav-btn-lines {
  position: relative;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center; }
  .on .m-gnav-btn-lines {
    -webkit-transform: rotateY(-180deg);
    transform: rotateY(-180deg); }
  .m-gnav-btn-lines-item {
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    border-radius: 4px;
    width: 100%;
    background: #767d84; }
    .m-gnav-btn-lines-item:nth-child(1), .m-gnav-btn-lines-item:nth-child(3) {
      position: absolute;
      left: 0;
      top: 50%;
      margin-top: -1px; }
    .m-gnav-btn-lines-item:nth-child(1) {
      -webkit-transform: translateY(-350%);
      -ms-transform: translateY(-350%);
      transform: translateY(-350%); }
    .m-gnav-btn-lines-item:nth-child(3) {
      -webkit-transform: translateY(350%);
      -ms-transform: translateY(350%);
      transform: translateY(350%); }
    .m-gnav-btn.on .m-gnav-btn-lines-item:nth-child(1) {
      -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
      transform: rotate(45deg); }
    .m-gnav-btn.on .m-gnav-btn-lines-item:nth-child(2) {
      -webkit-transform: scaleX(0);
      -ms-transform: scaleX(0);
      transform: scaleX(0); }
    .m-gnav-btn.on .m-gnav-btn-lines-item:nth-child(3) {
      -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
      transform: rotate(-45deg); }

.m-gnav-sp-btn {
  border-radius: 30px;
  background: #7F9FB5;
  border: none; }
  .m-gnav-sp-btn a {
    border: none;
    color: #FFF; }

/* ---------------------------
h
--------------------------- */
.m-h01 {
  text-align: center; }
  .m-h01 .en {
    font-family: 'MuseoModerno', Sans-Serif;
    font-weight: 900;
    font-style: normal;
    display: block;
    font-weight: 200; }
  .m-h01 .ja {
    display: block; }

.m-h02 {
  margin-bottom: 1em; }
  .m-h02:before {
    content: "―";
    margin-right: 0.5em; }

.m-mv {
  background: #e2e8ec;
  position: relative; }
  .m-mv-txt01 {
    margin-bottom: 1rem;
    letter-spacing: 0.1em; }
  .m-mv-h .en {
    display: block; }
  .m-mv-txt02 {
    border-top: 1px solid #767d84;
    border-bottom: 1px solid #767d84;
    line-height: 1.4;
    letter-spacing: 0.1em;
    padding: 0.2em 0;
    display: inline-block; }
  .m-mv-txt03 {
    border-bottom: 1px solid #767D84;
    display: inline-block;
    margin-bottom: 7px;
    padding-bottom: 6px; }
  .m-mv-col2 {
    position: relative; }
  .m-mv-btn {
    position: absolute; }
  .m-mv-scroll {
    text-align: center;
    position: relative; }
    .m-mv-scroll-line {
      width: 1px;
      background: #767d84;
      margin: 0 auto; }
    .m-mv-scroll-dot {
      background: #767d84;
      width: 10px;
      height: 10px;
      border-radius: 50%;
      position: absolute;
      left: 50%;
      top: 0;
      margin-left: -5px; }
    .m-mv-scroll-txt {
      font-family: 'MuseoModerno', Sans-Serif;
      font-weight: 900;
      font-style: normal; }

.m-furusato {
  margin-bottom: 50px; }

.m-furusato-column {
  margin-top: 30px; }

.m-furusato-column-txt {
  font-size: 16px; }

.m-furusato-column-list-item a {
  color: #FFF;
  background: #767D84;
  padding: 10px 15px; }

.m-concept-lead {
  text-align: center;
  letter-spacing: 0.1em; }

.m-concept-txt {
  line-height: 1.8; }
  .m-concept-txt p {
    margin-bottom: 1.5em; }

.m-features {
  background: url() center no-repeat;
  background-size: cover;
  position: relative; }
  .m-features.is-01 {
    background-image: url("../img/home/features_bg_01.jpg"); }
  .m-features.is-02 {
    background: #cfd6d9; }
  .m-features.is-03 {
    background-image: url("../img/home/features_bg_03.jpg");
    background-position: center top; }
  .m-features.is-04 {
    background-image: url("../img/home/features_bg_04.jpg"); }
  .m-features-h {
    font-family: 'MuseoModerno', Sans-Serif;
    font-weight: 900;
    font-style: normal;
    text-align: center;
    font-weight: 200;
    line-height: 1.4; }
    .m-features-h .en {
      display: block; }
    .m-features-h .num {
      display: block; }
  .m-features-h02 {
    letter-spacing: 0.05em; }
  .m-features-txt {
    line-height: 2; }
  .m-features02-img {
    pointer-events: none; }

.m-scene-scenes-h {
  font-family: 'MuseoModerno', Sans-Serif;
  font-weight: 900;
  font-style: normal;
  color: #7f9fb5;
  font-weight: 100; }
  .m-scene-scenes-item:nth-child(2n) .m-scene-scenes-h {
    text-align: right; }

.m-scene-scenes-clear {
  position: relative; }
  .m-scene-scenes-clear:before {
    content: "";
    display: block;
    position: absolute;
    background: #f5f5f5;
    z-index: -1; }

.m-scene-scenes-label {
  color: #7f9fb5;
  background: #fff;
  line-height: 1.4;
  position: relative; }

.m-before {
  background: #f5f5f5; }
  .m-before-title {
    text-align: center;
    margin: 0 auto 20px; }
  .m-before-befores-item {
    background: #fff;
    -webkit-box-shadow: 0 1px 5px 0 rgba(0, 0, 0, 0.05);
    box-shadow: 0 1px 5px 0 rgba(0, 0, 0, 0.05); }
    .m-before-befores-item:not(:last-child) {
      margin-bottom: 10px; }
  .m-before-befores-head {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    cursor: pointer; }
    .m-before-befores-head .num {
      font-family: 'MuseoModerno', Sans-Serif;
      font-weight: 900;
      font-style: normal;
      color: #c1c0bc;
      line-height: 1;
      margin-right: 1em;
      font-weight: 200; }
    .m-before-befores-head-col1 {
      -webkit-box-flex: 1;
      -ms-flex: 1;
      flex: 1;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center; }
  .m-before-befores-btn {
    width: 10px;
    height: 10px;
    border-left: 2px solid #c1c0bc;
    border-bottom: 2px solid #c1c0bc;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
    cursor: pointer; }
    .is-active .m-before-befores-btn {
      -webkit-transform: rotate(135deg);
      -ms-transform: rotate(135deg);
      transform: rotate(135deg); }
  .m-before-befores-content {
    border-top: 1px solid #e2e8ec;
    padding-top: 1rem;
    display: none; }

#m-question {
  padding-top: 100px;
  margin-top: -100px; }

.m-app {
  background: #e2e8ec; }
  .m-app-h02 {
    text-align: center;
    margin-bottom: 1.5em; }
    .m-app-h02:before, .m-app-h02:after {
      content: "―";
      margin: 0 1em; }
  .m-app-lead {
    margin-bottom: 2em;
    line-height: 2; }
  .m-app-imgs {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center; }
  .m-app-download dt {
    text-align: center;
    margin-bottom: 1em; }
  .m-app-attention {
    background: #FFF;
    color: #F7803E;
    max-width: 940px;
    width: 100%;
    margin: 0 auto; }

.m-photo-list-num .slick-counter2 {
  color: #CECDCC; }

.m-photo-list-num .current2 {
  color: #4A4F54; }

.m-photo-list {
  max-width: 770px;
  width: 100%;
  margin: 70px auto 50px; }
  .m-photo-list .slick-list {
    overflow: inherit !important; }

.m-photo-list-item {
  margin: 0 auto;
  text-align: center; }
  .m-photo-list-item.slick-center {
    padding: 0;
    position: relative;
    z-index: 1;
    -moz-transform: scale(1.1, 1.1);
    -webkit-transform: scale(1.1, 1.1);
    -o-transform: scale(1.1, 1.1);
    -ms-transform: scale(1.1, 1.1); }
    .m-photo-list-item.slick-center img {
      opacity: 1;
      width: 100%; }
  .m-photo-list-item img {
    opacity: 0.5; }

.m-photo-list-num {
  text-align: center;
  font-family: 'MuseoModerno', Sans-Serif; }

.m-product-clear-link {
  background: #767d83;
  color: #FFF;
  font-size: 16px;
  padding: 10px 15px;
  margin: 10px 0;
  display: block;
  width: 100%;
  text-align: center; }

.m-product-col1 {
  height: 380px;
  overflow: hidden;
  position: relative; }

.m-product-openBtn {
  font-family: 'MuseoModerno', Sans-Serif;
  font-weight: 900;
  font-style: normal;
  color: #767d84;
  position: absolute;
  left: 0;
  bottom: 0;
  background: #fff;
  text-align: center;
  width: 100%;
  font-size: 1.6rem;
  cursor: pointer; }
  .m-product-openBtn.is-active {
    display: none; }
  .m-product-openBtn:before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    bottom: 100%;
    width: 100%;
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0)), to(white));
    background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, white 100%);
    background: -o-linear-gradient(top, rgba(255, 255, 255, 0) 0%, white 100%);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, white 100%); }
  .m-product-openBtn:after {
    content: "";
    display: block;
    position: absolute;
    left: 50%;
    bottom: 0;
    margin-left: -10px;
    width: 20px;
    height: 20px;
    background: url("../img/base/ico_arrow_01_c0.svg") center no-repeat;
    background-size: contain;
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg); }

.m-product-col2-in .slick-counter {
  text-align: center;
  font-size: 1.2rem;
  margin-top: 10px;
  font-family: 'MuseoModerno', Sans-Serif;
  color: #CECDCC; }
  .m-product-col2-in .slick-counter .current {
    color: #4A4F54; }

.m-product-img img {
  width: 100%; }

.m-company {
  background: #e2e8ec; }
  .m-company-lead {
    text-align: center;
    margin-bottom: 2em;
    padding-top: 1em;
    padding-bottom: 1em;
    position: relative; }
    .m-company-lead:before, .m-company-lead:after {
      content: "";
      display: block;
      position: absolute; }
    .m-company-lead:before {
      left: 0;
      top: 0; }
    .m-company-lead:after {
      right: 0;
      bottom: 0;
      -webkit-transform: rotate(180deg);
      -ms-transform: rotate(180deg);
      transform: rotate(180deg); }
  .m-company-overview {
    background: #fff;
    -webkit-box-shadow: 1px 2px 3px 0 rgba(0, 0, 0, 0.1);
    box-shadow: 1px 2px 3px 0 rgba(0, 0, 0, 0.1);
    border-radius: 6px; }
  .m-company-product-h {
    text-align: center;
    margin-bottom: 1em; }
  .m-company-product-lead {
    text-align: center;
    margin-bottom: 2em; }
  .m-company-productSec {
    background: #fff;
    -webkit-box-shadow: 1px 2px 3px 0 rgba(0, 0, 0, 0.1);
    box-shadow: 1px 2px 3px 0 rgba(0, 0, 0, 0.1);
    border-radius: 6px; }
    .m-company-productSec:not(:last-child) {
      margin-bottom: 1em; }
    .m-company-productSec-h {
      margin-bottom: 0.5em; }
    .m-company-productSec-spec {
      color: #7f9fb5;
      margin-bottom: 1em;
      font-size: 0.9rem; }
  .m-company-feature-h {
    color: #7f9fb5;
    margin-bottom: 1rem; }
  .m-company-feature-logo {
    margin-bottom: 2em; }
  .m-company-feature-btn {
    padding: 23px 14px 23px 60px !important; }
    .m-company-feature-btn span {
      color: #FFF;
      padding-right: 35px;
      position: relative; }
      .m-company-feature-btn span:after {
        content: "";
        width: 1px;
        height: 34px;
        background: #FFF;
        position: absolute;
        right: 20px;
        top: -5px; }

.m-patient {
  background: #fff;
  border-bottom: 1px solid #e2e1dc; }
  .m-patient-h {
    text-align: center;
    margin-bottom: 1.5em; }
  .m-patient-lead {
    text-align: center;
    position: relative; }
  .m-patient-map {
    text-align: center; }

/* ---------------------------
m-items
--------------------------- */
.m-items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }

.m-contiguousItems {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }

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

.m-mainContent-bg01 {
  background: url("../img/base/bg_02.png") 0 0; }

.slick-slide {
  height: auto !important; }

/* ---------------------------
m-post
--------------------------- */
.m-post01-img {
  text-align: center;
  margin-bottom: 30px; }

.m-post01-head {
  font-family: 'MuseoModerno', Sans-Serif;
  font-weight: 900;
  font-style: normal;
  position: relative;
  line-height: 1;
  text-align: center;
  margin-bottom: 30px; }
  .m-post01-head .bar {
    margin: 0 10px; }

.m-post01-h {
  font-weight: bold;
  margin-bottom: 1em; }

.m-post01-area a {
  border: 3px solid #767d84;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }

.m-post01-area-img img {
  border-radius: 50%; }

.m-post01-area-h {
  font-weight: bold;
  font-size: 1.2rem;
  margin-bottom: 1.2em; }

/* ---------------------------
m-posts
--------------------------- */
.m-posts01-clear {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between; }

.m-posts01-head {
  font-family: 'MuseoModerno', Sans-Serif;
  font-weight: 900;
  font-style: normal;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  position: relative;
  padding: 0 10px;
  line-height: 1; }
  .m-posts01-head .bar {
    color: #b3b3b3;
    margin: 10px 0; }
  .m-posts01-head:before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 2px;
    height: 100%;
    background: #767d84; }
  .m-posts01-head:after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 2px;
    background: #7f9fb5; }

.m-posts01-img {
  margin-bottom: 1em;
  position: relative; }
  .m-posts01-img:before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(127, 159, 181, 0.8);
    -webkit-transition: 0.2s;
    -o-transition: 0.2s;
    transition: 0.2s;
    opacity: 0; }
  a:hover .m-posts01-img:before {
    opacity: 1; }

.m-posts01-h {
  border-bottom: 1px solid #f0f3f3;
  padding-bottom: 1em;
  margin-bottom: 0.5em;
  font-weight: bold; }

.m-posts01-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }
  .m-posts01-area-icon {
    color: #767d84;
    background: #7f9fb5;
    border-radius: 50%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-right: 15px;
    font-size: 1.1rem; }

.m-posts02 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  .m-posts02-item a:hover {
    opacity: 1; }
  .m-posts02-in {
    position: relative; }
  .m-posts02-img {
    background: #fff;
    border: 1px solid #b3b3b3; }
    .m-posts02-img-in {
      background: url() center no-repeat;
      background-size: contain; }
  .m-posts02-head {
    font-size: 0.85rem;
    margin-bottom: 1em; }
    .m-posts02-head .date {
      margin-left: 1em; }
  .m-posts02-h {
    margin-bottom: 1em;
    letter-spacing: 0.1em; }
  .m-posts02-area {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; }
    .m-posts02-area-icon {
      color: #767d84;
      background: #7f9fb5;
      border-radius: 50%;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      margin-right: 15px; }
    .m-posts02-area-name {
      font-size: 0.85rem; }

/* ---------------------------
m-form
--------------------------- */
.m-form-quick {
  background: #e2e8ec; }
  .mw_wp_form_confirm .m-form-quick {
    display: none; }
  .m-form-quick-h .en {
    display: block; }
  .m-form-quick-h .ja {
    display: block;
    color: #4a4f54;
    margin-bottom: 1em; }
  .m-form-quick-price dt {
    font-size: 1.1rem; }
  .m-form-quick-price dd {
    font-weight: bold;
    line-height: 1.4; }
    .m-form-quick-price dd .num {
      font-size: 1.7em; }

.m-form-sec {
  background: #fcfcfc; }

.m-form-lead {
  margin-bottom: 2em; }
  .m-form-lead-attention {
    background-color: #F7803E;
    padding: 5px;
    font-size: 1.2rem;
    color: #fff;
    font-weight: bold; }
    .m-form-lead-attention a {
      color: #FFF;
      text-decoration: underline; }
  .m-form-lead-note {
    border: solid 1px #f7803e;
    display: block;
    color: #f7803e;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    text-align: left; }
    .m-form-lead-note span {
      border-bottom: 1px solid #F7803E;
      padding-bottom: 10px;
      display: block;
      margin-bottom: 10px; }

.m-form-error {
  background: #ffc0cb;
  color: #f7803e;
  padding: 2px 8px;
  display: block;
  font-size: 0.85rem; }

.m-form-wrap {
  border: 1px solid #999999; }

.m-form-h {
  font-weight: bold;
  text-align: center;
  margin-bottom: 1em;
  color: #fff; }

.mw_wp_form_confirm .m-form-lead,
.mw_wp_form_complete .m-form-lead {
  display: none; }

.m-form-table01 {
  width: 100%; }
  .m-form-table01 .must, .m-form-table01 .error {
    color: #f7803e; }
  .m-form-table01 > tbody > tr > th {
    font-weight: bold; }

.m-form-zipBtn {
  background: #7f9fb5;
  color: #fff;
  padding: 8px 10px;
  cursor: pointer; }

.m-form-radios.is-horizonal {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }

.m-form-radios-item {
  margin-bottom: 0.5em; }
  .is-horizonal .m-form-radios-item:not(:last-child) {
    margin-right: 1.3em; }

.m-form-privacy {
  overflow-y: scroll;
  padding: 1em;
  border: 1px solid #dedede;
  background: #f5f5f5; }
  .m-form-privacy section {
    border-bottom: 1px solid #dedede;
    padding-bottom: 1em;
    margin-bottom: 1em; }
  .m-form-privacy h3, .m-form-privacy h4 {
    font-weight: bold;
    font-size: 1.1rem;
    margin-bottom: 1em;
    margin-top: 1em; }
  .m-form-privacy table th, .m-form-privacy table td {
    border: 1px solid #dedede;
    padding: 8px; }
  .m-form-privacy dt {
    font-weight: bold;
    margin: 0.5em 0; }
  .mw_wp_form_confirm .m-form-privacy {
    display: none; }

.m-form-privacyAgree {
  margin-bottom: 2em; }
  .mw_wp_form_confirm .m-form-privacyAgree {
    display: none; }

.m-form-must {
  background: #f7803e;
  color: #fff;
  font-size: 0.8rem;
  padding: 1px 6px; }

.m-form-wrapping {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  .m-form-wrapping-img {
    margin-right: 10px; }

.m-form-noshis-item {
  margin-bottom: 1em; }

.m-form-noshis-clear {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }

.m-form-noshis-img {
  margin: 0 10px;
  border: 1px solid #999999; }

.m-form-noshis-label {
  font-size: 0.85rem; }

.m-form-naireTable {
  width: 100%; }
  .m-form-naireTable th {
    font-weight: bold;
    padding-right: 2em; }
  .m-form-naireTable th, .m-form-naireTable td {
    padding: 8px 0; }

.m-form-calenderInputWrap {
  position: relative; }
  .m-form-calenderInputWrap:after {
    content: "";
    display: block;
    position: absolute;
    right: 10px;
    top: 50%;
    width: 18px;
    height: 18px;
    margin-top: -9px;
    background: url("../img/base/ico_calendar_c1.svg") center no-repeat;
    background-size: cover;
    pointer-events: none; }

.m-form-checkboxSec {
  border: 1px solid #e2e1dc;
  border-radius: 6px;
  background: #fff;
  margin-bottom: 1.5em; }
  .m-form-checkboxSec-h {
    padding: 10px 15px;
    font-weight: bold;
    border-bottom: 1px solid #e2e1dc; }
  .m-form-checkboxSec-checkboxes {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }
    .m-form-checkboxSec-checkboxes-item {
      border-bottom: 1px dotted #e2e1dc;
      line-height: 1.4; }
      .m-form-checkboxSec-checkboxes-item input {
        display: none; }
    .m-form-checkboxSec-checkboxes-clear {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center; }
    .m-form-checkboxSec-checkboxes-ico {
      border: 1px solid #e2e1dc;
      background: #f9f9f7;
      border-radius: 4px; }
      input:checked + .m-form-checkboxSec-checkboxes-clear .m-form-checkboxSec-checkboxes-ico {
        border-color: #7f9fb5;
        background: #f9d9e7 url("../img/base/ico_check_02_c1.svg") center no-repeat;
        background-size: contain; }
    .m-form-checkboxSec-checkboxes-label {
      -webkit-box-flex: 1;
      -ms-flex: 1;
      flex: 1; }

.m-app-mv {
  background: #E2E8EC; }
  .m-app-mv-clear {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .m-app-mv-lead {
    color: #7f9fb5;
    border: solid 1px #7f9fb5;
    display: inline-block;
    border-radius: 30px;
    font-size: 1.1rem;
    padding: 5px 30px; }
  .m-app-mv-h {
    color: #4A4F54;
    letter-spacing: 5px; }
  .m-app-mv-txt01 {
    color: #4A4F54;
    font-size: 1.1rem;
    line-height: 1.8; }
  .m-app-mv-note01 {
    color: #4A4F54; }
  .m-app-mv-download-h {
    font-family: 'MuseoModerno', Sans-Serif;
    font-weight: 900;
    font-style: normal;
    font-size: 1.4rem;
    margin-top: 10px; }
  .m-app-mv-download-link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    .m-app-mv-download-link-item:last-child {
      margin-left: 30px; }
    .m-app-mv-download-link-txt {
      text-align: center;
      font-size: 0.9rem;
      margin-top: 10px; }

.m-app-scene-scenes-clear {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }

.m-app-scene-scenes-txts {
  margin: 0 auto; }

.m-app-scene-scenes-h {
  font-family: 'MuseoModerno', Sans-Serif;
  font-weight: 900;
  font-style: normal;
  border-bottom: solid 1px #7F9FB5;
  display: inline-block;
  line-height: 1;
  padding-bottom: 5px;
  color: #7F9FB5; }
  .m-app-scene-scenes-h .en {
    font-size: 1.4rem; }
  .m-app-scene-scenes-h .num {
    font-size: 1.6rem;
    padding-left: 5px; }

.m-app-scene-scenes-h02 {
  font-size: 1.8rem; }

.m-app-howto {
  background: #E2E8EC;
  position: relative;
  padding: 50px 0 0 0; }
  .m-app-howto-lead {
    text-align: center;
    letter-spacing: 1px; }
  .m-app-howto-clear {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative; }
  .m-app-howto-main {
    margin-right: auto; }
    .m-app-howto-main-item {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex; }
      .m-app-howto-main-item:not(:first-child) {
        padding-top: 140px; }
    .m-app-howto-main-h {
      font-family: 'MuseoModerno', Sans-Serif;
      font-weight: 900;
      font-style: normal;
      color: #7f9fb5;
      display: inline-block;
      border-bottom: solid 1px #7f9fb5;
      font-size: 1.4rem; }
    .m-app-howto-main-note {
      color: #6D9BB1;
      font-size: 0.9rem;
      margin-top: 25px; }
  .m-app-howto-nav {
    width: 15px; }
    .m-app-howto-nav-menu:before {
      content: "";
      position: absolute;
      top: -14px;
      left: -22px;
      background: url(/common/img/app/allow-p.svg) no-repeat;
      width: 55px;
      height: 18px;
      -webkit-transform: rotateZ(90deg);
      -ms-transform: rotate(90deg);
      transform: rotateZ(90deg); }
    .m-app-howto-nav-menu:after {
      content: "";
      position: absolute;
      bottom: -16px;
      left: -22px;
      background: url(/common/img/app/allow-p.svg) no-repeat;
      width: 55px;
      height: 18px;
      -webkit-transform: rotateZ(-90deg);
      -ms-transform: rotate(-90deg);
      transform: rotateZ(-90deg); }
    .m-app-howto-nav-list:not(:last-child) {
      margin-bottom: 12px; }
    .m-app-howto-nav-list a {
      display: block;
      background: #C3C2C1;
      border-radius: 100%;
      width: 10px;
      height: 10px; }
    .m-app-howto-nav-list.on a {
      background: #7F9FB5; }

.m-app-function-h {
  text-align: center;
  font-weight: bold; }

.m-app-function-functions-h {
  color: #7F9FB5;
  text-align: center;
  display: table;
  border-bottom: 1px solid #7F9FB5; }

.m-app-function-functions-txt {
  min-height: 100px; }

.m-app-download-clear {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }

.m-app-download-h {
  font-family: 'MuseoModerno', Sans-Serif;
  font-size: 1.7rem;
  color: #7F9FB5;
  margin-right: 100px; }

.m-app-download-col2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.m-app-download-col2-note {
  line-height: 35px; }

.m-app-quick {
  background: #E2E8EC; }

.m-app-quick-clear {
  background: #FFF;
  max-width: 945px;
  margin: 0 auto;
  border-radius: 5px; }

.m-app-quick-txt {
  letter-spacing: 4px; }

.m-app-quick-h02 {
  letter-spacing: 3px; }

.m-app-quick-links-col1 {
  width: 100%; }

.m-app-quick-links-col2 {
  width: 100%; }

.m-app-bread-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }

.m-app-bread-list-item a {
  position: relative;
  text-decoration: underline;
  padding-right: 5px; }

.m-app-bread-list-item:last-child {
  position: relative; }
  .m-app-bread-list-item:last-child:before {
    content: ">"; }

.slick-dots li.slick-active button:before {
  color: #7F9FB5 !important; }

.u-c-bk {
  color: #767d84 !important; }

.u-c-gy {
  color: #616161 !important; }

.u-c-c1 {
  color: #7f9fb5 !important; }

.u-c-c1l {
  color: #85756e !important; }

.u-c-c2 {
  color: #f7803e !important; }

.u-c-c3 {
  color: #dbc823 !important; }

.u-c-c4 {
  color: #00a99d !important; }

.u-c-c9 {
  color: #b3b3b3 !important; }

.u-c-c9_1 {
  color: #e2e1dc !important; }

.u-c-c9_2 {
  color: #f9f9f7 !important; }

.u-c-c9_3 {
  color: #a8a8a8 !important; }

.u-c-wh {
  color: #fff !important; }

.u-c-pk {
  color: #EEA295 !important; }

.u-bg-bk {
  background: #767d84 !important; }

.u-bg-gy {
  background: #616161 !important; }

.u-bg-c0 {
  background: #767d84 !important; }

.u-bg-c1 {
  background: #7f9fb5 !important; }

.u-bg-c1l {
  background: #85756e !important; }

.u-bg-c2 {
  background: #f7803e !important; }

.u-bg-c3 {
  background: #dbc823 !important; }

.u-bg-c4 {
  background: #00a99d !important; }

.u-bg-c9 {
  background: #b3b3b3 !important; }

.u-bg-c9_1 {
  background: #e2e1dc !important; }

.u-bg-c9_2 {
  background: #f9f9f7 !important; }

.u-bg-c9_3 {
  background: #a8a8a8 !important; }

.u-bg-c9d {
  background: #999999 !important; }

.u-bg-c4 {
  background: #00a99d !important; }

.u-bg-wh {
  background: #fff !important; }

.u-bg-pk {
  background: #EEA295 !important; }

.u-bd-bk {
  border-color: #767d84 !important; }

.u-bd-gy {
  border-color: #616161 !important; }

.u-bd-c0 {
  border-color: #767d84 !important; }

.u-bd-c1 {
  border-color: #7f9fb5 !important; }

.u-bd-c1l {
  border-color: #85756e !important; }

.u-bd-c2 {
  border-color: #f7803e !important; }

.u-bd-c3 {
  border-color: #dbc823 !important; }

.u-bd-c4 {
  border-color: #00a99d !important; }

.u-bd-wh {
  border-color: #fff !important; }

.u-bd-pk {
  border-color: #EEA295 !important; }

/* ---------------------------
input
--------------------------- */
.u-input {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  background: #f4f4f5;
  border: 1px solid #e2e1dc;
  position: relative;
  vertical-align: middle;
  resize: none;
  font-size: 1rem;
  border-radius: 6px; }
  .u-input:disabled {
    background: #e2e1dc; }
  .u-input.invalid {
    border-color: #d45252; }
  .u-input.size-max {
    width: 100%; }
  .u-input.size-s {
    width: 5em; }
  .m-form .u-input {
    margin-bottom: 4px;
    margin-right: 8px; }
  .u-input-radioLabel {
    padding: 8px;
    display: block;
    border: dotted #ccc 1px; }
  .u-input-radio01:not(:last-child) {
    border-bottom: 2px dotted #e2e1dc; }
  .u-input-radio01 input {
    opacity: 0;
    position: absolute; }
  .u-input-radio01 label {
    display: block; }
  .u-input-radio01-clear {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .u-input-radio01-ico {
    border: 1px solid #e2e1dc;
    background: #f9f9f7;
    border-radius: 50%;
    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; }
    input:checked + .u-input-radio01-clear .u-input-radio01-ico {
      border-color: #7f9fb5;
      background: #7f9fb5; }
      input:checked + .u-input-radio01-clear .u-input-radio01-ico:after {
        content: "";
        display: block;
        width: 40%;
        height: 40%;
        background: #f9d9e7;
        border-radius: 50%; }
    input:focus + .u-input-radio01-clear .u-input-radio01-ico {
      -webkit-box-shadow: 0 0 2px 1px #004AA1;
      box-shadow: 0 0 2px 1px #004AA1; }
  .u-input-radio01-txts {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1; }

.u-input02 {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border: none;
  border-bottom: 2px solid #e2e1dc;
  position: relative;
  vertical-align: middle;
  resize: none;
  font-size: 1rem; }
  .u-input02:focus {
    border-bottom-color: #7f9fb5;
    outline: none; }
  .u-input02:disabled {
    background: #e2e1dc; }
  .u-input02.invalid {
    border-color: #d45252; }
  .u-input02.size-max {
    width: 100%; }
  .u-input02.size-s {
    width: 5em; }
  .m-form .u-input02 {
    margin-bottom: 4px;
    margin-right: 8px; }
  .u-input02-radioLabel {
    padding: 8px;
    display: block;
    border: dotted #ccc 1px; }
  .u-input02-selectWrap {
    display: block; }

button, input[type="submit"] {
  font-family: "Yu Gothic", "YuGothic", "Hiragino Kaku Gothic Pro",  "Meiryo", verdana, "Osaka", "MS PGothic", Sans-Serif;
  font-weight: 500;
  border: none;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  font-size: 1rem;
  background: none;
  display: block;
  width: 100%; }

/* ---------------------------
m
--------------------------- */
/* align */
.u-align-c {
  text-align: center !important; }

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

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

.u-valign-t {
  vertical-align: top !important; }

.u-valign-m {
  vertical-align: middle !important; }

.u-valign-b {
  vertical-align: bottom !important; }

/* margin */
.u-ml-2xs {
  margin-left: 5px !important; }

.u-ml-xs {
  margin-left: 10px !important; }

.u-ml-s {
  margin-left: 20px !important; }

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

.u-ml-l {
  margin-left: 40px !important; }

.u-ml-xl {
  margin-left: 60px !important; }

.u-ml-2xl {
  margin-left: 80px !important; }

.u-ml-3xl {
  margin-left: 100px !important; }

/* margin */
.u-mr-2xs {
  margin-right: 5px !important; }

.u-mr-xs {
  margin-right: 10px !important; }

.u-mr-s {
  margin-right: 20px !important; }

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

.u-mr-l {
  margin-right: 40px !important; }

.u-mr-xl {
  margin-right: 60px !important; }

.u-mr-2xl {
  margin-right: 80px !important; }

.u-mr-3xl {
  margin-right: 100px !important; }

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

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

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

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

.u-mb-1e {
  margin-bottom: 1em !important; }

.u-mb-2e {
  margin-bottom: 2em !important; }

.u-mb-3e {
  margin-bottom: 3em !important; }

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

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

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

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

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

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

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

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

/* ---------------------------
link
--------------------------- */
.u-link01 {
  word-break: break-all;
  text-decoration: underline !important; }
  .u-link01:hover {
    text-decoration: none !important; }

.u-link-newTab:after {
  content: "";
  width: 12px;
  height: 12px;
  display: inline-block;
  background: url("../img/base/ico_newTab_c0.svg") center no-repeat;
  background-size: contain;
  margin-left: 4px; }

.u-link02 {
  position: relative;
  padding-right: 20px;
  font-size: 1.2rem;
  font-weight: bold; }
  .u-link02:after {
    content: "";
    display: block;
    width: 24px;
    height: 18px;
    background: url("../img/base/ico_arrow_01_c1.svg") center no-repeat;
    background-size: contain;
    position: absolute;
    left: 100%;
    top: 50%;
    margin-top: -9px; }

/* ---------------------------
list
--------------------------- */
.u-list01 li {
  margin-left: 1em; }
  .u-list01 li:before {
    content: "・";
    margin-left: -1em;
    position: absolute; }

.u-list02 {
  border: 1px solid #e2e1dc;
  border-radius: 6px;
  background: #f9f9f7; }
  .u-list02-item {
    font-weight: bold; }
    .u-list02-item:not(:last-child) {
      border-bottom: 2px dotted #e2e1dc; }

.u-list03 li {
  margin-left: 1em; }
  .u-list03 li:before {
    content: "›";
    margin-left: -0.5em;
    margin-right: 0.5em;
    color: #dbc823;
    font-size: 1.3rem; }

.u-list04 > li {
  margin-left: 1em; }
  .u-list04 > li:before {
    content: "•";
    margin-left: -1em;
    position: absolute;
    font-size: 1.5rem;
    line-height: 1; }

.u-list05 li {
  margin-left: 1em; }
  .u-list05 li:before {
    content: "※";
    margin-left: -1em;
    font-size: 1rem;
    line-height: auto; }

/* ---------------------------
u-wysiwyg
--------------------------- */
.u-wysiwyg {
  overflow: hidden;
  line-height: 2; }
  .u-wysiwyg a {
    text-decoration: underline;
    word-wrap: break-word;
    color: #b7b200; }
    .u-wysiwyg a:hover {
      text-decoration: none; }
    .u-wysiwyg a img {
      -webkit-transition: 0.2s;
      -o-transition: 0.2s;
      transition: 0.2s; }
      .u-wysiwyg a img:hover {
        opacity: 0.8; }
  .u-wysiwyg h1 {
    margin-top: 1.5em;
    margin-bottom: 0.5em;
    font-size: 2rem;
    font-weight: bold; }
  .u-wysiwyg h2 {
    margin-top: 1.5em;
    margin-bottom: 0.9em;
    font-weight: bold;
    line-height: 1.4;
    display: inline-block;
    border-bottom: 4px solid #7f9fb5; }
  .u-wysiwyg h3 {
    margin-top: 1.2em;
    margin-bottom: 0.7em;
    font-weight: bold;
    line-height: 1.4; }
  .u-wysiwyg h4, .u-wysiwyg h5, .u-wysiwyg h6 {
    margin-top: 1.5em;
    margin-bottom: 1em;
    font-weight: bold; }
  .u-wysiwyg ol {
    margin-top: 1em;
    margin-bottom: 1em;
    padding-left: 1.5em; }
    .u-wysiwyg ol li {
      list-style-type: decimal; }
  .u-wysiwyg ul {
    margin-top: 1em;
    margin-bottom: 1em;
    padding-left: 1.5em; }
    .u-wysiwyg ul li {
      list-style-type: disc;
      margin-bottom: 0.5em; }
  .u-wysiwyg p {
    margin-bottom: 1em; }
  .u-wysiwyg em {
    font-weight: normal; }
  .u-wysiwyg blockquote {
    border: 2px solid #b3b3b3; }
    .u-wysiwyg blockquote p:last-child {
      margin-bottom: 0; }
  .u-wysiwyg .aligncenter {
    display: block;
    margin: 0 auto; }
  .u-wysiwyg .alignright {
    float: right; }
  .u-wysiwyg .alignleft {
    float: left; }
  .u-wysiwyg .wp-caption {
    max-width: 100%; }
  .u-wysiwyg table {
    margin-bottom: 1em; }
  .u-wysiwyg figure {
    margin-bottom: 1em !important; }
  .u-wysiwyg hr {
    margin: 2em 0; }

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

.u-fwm {
  font-weight: 500 !important; }

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

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

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

/* ---------------------------
bordered
--------------------------- */
.u-bordered01 {
  border: 1px solid #999999; }

.u-bdt-c9d {
  border-top: 1px solid #999999; }

/* ---------------------------
fixedAfterScroll
--------------------------- */
.u-fixedAfterScroll {
  bottom: -100px; }
  .u-fixedAfterScroll.fixed {
    position: fixed;
    z-index: 10;
    -webkit-transition: 0.2s;
    -o-transition: 0.2s;
    transition: 0.2s; }

.u-onScrollAddClass {
  -webkit-transition: 1.0s;
  -o-transition: 1.0s;
  transition: 1.0s;
  opacity: 0;
  -webkit-transform: translateY(50px);
  -ms-transform: translateY(50px);
  transform: translateY(50px); }
  .u-onScrollAddClass.on {
    opacity: 1;
    -webkit-transform: translateY(0px);
    -ms-transform: translateY(0px);
    transform: translateY(0px); }

/* ---------------------------
folding
--------------------------- */
.u-folding-target {
  display: none; }

/* ---------------------------
u-table
--------------------------- */
.u-table01 {
  width: 100%; }
  .u-table01 th, .u-table01 td {
    border-bottom: 1px solid #e2e1dc;
    padding: 14px 0;
    vertical-align: top; }
  .u-table01 th {
    font-weight: bold;
    padding-right: 2em;
    white-space: nowrap; }

.u-table02 {
  width: 100%; }
  .u-table02 th, .u-table02 td {
    border: 1px solid #e2e1dc;
    padding: 10px;
    vertical-align: top;
    background: #fff; }
  .u-table02 th {
    font-weight: bold;
    padding-right: 2em;
    white-space: nowrap;
    border-right: none; }
  .u-table02 td {
    border-left: 2px dotted #e2e1dc;
    text-align: right; }

@media screen and (min-width: 1399px) {
  /* ==========================================================================
   Large
   ========================================================================== */
  .wrapin {
    max-width: calc( 1140px + 40px);
    margin: 0 auto;
    padding: 0 40px; }
  /* ---------------------------
module
--------------------------- */
  html {
    font-size: 16px; }
  /* ---------------------------
l-header
--------------------------- */
  .l-header {
    height: 100px; }
    .l-header-logo {
      margin-right: 30px; }
      .l-header-logo img {
        width: 194px; }
    .l-header-col1 {
      padding-left: 50px; }
    .l-header-col2 {
      padding-right: 2em;
      -webkit-box-flex: 1;
      -ms-flex: 1;
      flex: 1; }
    .l-header-reserve {
      z-index: 5; }
      .l-header-reserve .ico {
        width: 60px; }
      .l-header-reserve a {
        width: 118px;
        height: 118px; }
  /* ---------------------------
l-footer
--------------------------- */
  .l-footer-clear {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 64px 40px !important; }
    .l-footer-clear-bottom {
      padding: 27px 0 64px; }
      .l-footer-clear-bottom-col {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        width: 100%; }
      .l-footer-clear-bottom-flex {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex; }
      .l-footer-clear-bottom-flex2 {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex; }
      .l-footer-clear-bottom-list {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
        .l-footer-clear-bottom-list li {
          position: relative;
          padding-left: 24px;
          margin-right: 25px;
          min-width: 103px; }
          .l-footer-clear-bottom-list li a {
            color: #FFF;
            position: relative;
            font-size: 0.85rem; }
            .l-footer-clear-bottom-list li a:before {
              content: "";
              width: 4px;
              height: 1px;
              background-color: #FFF;
              position: absolute;
              top: 10px;
              left: -23px; }
      .l-footer-clear-bottom-list2 li {
        position: relative;
        padding-left: 24px;
        margin-right: 47px; }
        .l-footer-clear-bottom-list2 li a {
          color: #FFF;
          position: relative;
          font-size: 0.85rem; }
          .l-footer-clear-bottom-list2 li a:before {
            content: "";
            width: 4px;
            height: 1px;
            background-color: #FFF;
            position: absolute;
            top: 10px;
            left: -23px; }
      .l-footer-clear-bottom-col-l {
        margin-right: 72px;
        width: 550px; }
  .l-footer-col1 {
    width: 45%; }
  .l-footer-logo {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    .l-footer-logo .en {
      margin-right: 1em; }
      .l-footer-logo .en img {
        width: 190px; }
  .l-footer-col2 {
    width: 40%; }
  .l-footer-contact {
    max-width: 338px;
    width: 100%; }
    .l-footer-contact .m-company-feature-btn span {
      position: absolute;
      left: 19px; }
      .l-footer-contact .m-company-feature-btn span:after {
        content: "";
        width: 1px;
        height: 34px;
        background: #4A4F54;
        position: absolute;
        right: 20px;
        top: -5px; }
  .l-footer-copyright {
    padding: 20px 0; }
  .l-footer-pagetop {
    right: 120px;
    top: -53px; }
    .l-footer-pagetop a {
      width: 95px;
      height: 95px; }
    .l-footer-pagetop img {
      width: 20px;
      height: 40px; }
  /* ---------------------------
l-post
--------------------------- */
  .l-post-wrap {
    padding: 100px 50px; }
  .l-post-clear {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    max-width: 1000px;
    margin: 0 auto; }
  .l-post-main {
    width: 65%;
    max-width: 740px; }
  .l-post-side {
    width: 28%;
    max-width: 300px; }
    .l-post-side-sec:not(:last-child) {
      margin-bottom: 40px; }
  /* ---------------------------
l-wrap
--------------------------- */
  .l-wrap {
    max-width: calc( 1140px + 40px);
    margin: 0 auto;
    padding: 0 40px; }
    .l-wrap-780 {
      max-width: 860px;
      margin: 0 auto;
      padding-left: 40px;
      padding-right: 40px; }
    .l-wrap-800 {
      max-width: 880px;
      margin: 0 auto;
      padding-left: 40px;
      padding-right: 40px; }
    .l-wrap-900 {
      max-width: 980px;
      margin: 0 auto;
      padding-left: 40px;
      padding-right: 40px; }
    .l-wrap-960 {
      max-width: 1010px;
      margin: 0 auto;
      padding-left: 40px;
      padding-right: 40px; }
    .l-wrap-980 {
      max-width: 1060px;
      margin: 0 auto;
      padding-left: 40px;
      padding-right: 40px; }
    .l-wrap-1000 {
      max-width: 1080px;
      margin: 0 auto;
      padding-left: 40px;
      padding-right: 40px; }
    .l-wrap-1030 {
      max-width: 1110px;
      margin: 0 auto;
      padding-left: 40px;
      padding-right: 40px; }
    .l-wrap-1100 {
      max-width: 1180px;
      margin: 0 auto;
      padding-left: 40px;
      padding-right: 40px; }
    .l-wrap-1130 {
      max-width: 1210px;
      margin: 0 auto;
      padding-left: 40px;
      padding-right: 40px; }
    .l-wrap-1280 {
      max-width: 1360px;
      width: 100%;
      margin: 0 auto;
      padding-left: 40px;
      padding-right: 40px; }
    .l-wrap-1460 {
      max-width: 1560px;
      width: 100%;
      margin: 0 auto;
      padding-left: 40px;
      padding-right: 40px; }
  /* ---------------------------
l-secType
--------------------------- */
  .l-secType01 {
    padding-top: 80px;
    padding-bottom: 80px; }
  .l-secType02 {
    padding-top: 80px;
    padding-bottom: 80px; }
  /* ---------------------------
btn
--------------------------- */
  .m-btn01 {
    padding: 23px 14px;
    font-size: 1.1rem; }
    .m-btn01 .ico {
      width: 30px;
      margin-right: 15px; }
    .m-btn01.size-220pc {
      width: 220px; }
    .m-btn01.arrow-r {
      padding-right: 25px; }
    .m-btn01.arrow-l {
      padding-left: 25px; }
    .m-btn01.is-smallPadding {
      padding: 9px 6px;
      border-radius: 4px; }
  .m-btn02 {
    padding: 19px 14px; }
    .m-btn02 .ico {
      width: 30px;
      margin-right: 15px; }
    .m-btn02.size-220pc {
      width: 220px; }
    .m-btn02.arrow-r {
      padding-right: 25px; }
    .m-btn02.arrow-l {
      padding-left: 25px; }
    .m-btn02.is-smallPadding {
      padding: 7px 6px; }
  /* ---------------------------
btns1col
--------------------------- */
  .m-btns1col-item {
    width: 560px; }
  /* ---------------------------
m-cols01
--------------------------- */
  .m-cols01-clear {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between; }
  .m-cols01-col1 {
    width: 25%; }
  .m-cols01-col2 {
    width: 70%; }
  /* ---------------------------
m-gnav
--------------------------- */
  .m-gnav {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1; }
    .m-gnav-links {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      -webkit-box-pack: end;
      -ms-flex-pack: end;
      justify-content: flex-end;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center; }
      .m-gnav-links-item {
        margin-left: 2em; }
        .m-gnav-links-item a {
          border-bottom: 2px solid transparent;
          display: block;
          padding-bottom: 2px; }
        .m-gnav-links-item a:hover {
          opacity: 1;
          border-bottom-color: #767d84; }
        .m-gnav-links-item .en {
          display: none; }
        .m-gnav-links-item-hoveronly {
          position: fixed;
          top: 100px;
          left: 0;
          background: #767D84;
          width: 100%;
          height: 80px;
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-align: center;
          -ms-flex-align: center;
          align-items: center;
          -webkit-box-pack: end;
          -ms-flex-pack: end;
          justify-content: flex-end;
          padding-right: 200px;
          opacity: 0;
          pointer-events: none; }
          .m-gnav-links-item-hoveronly.on {
            opacity: 1;
            -webkit-transition: 1s;
            -o-transition: 1s;
            transition: 1s;
            -webkit-transform: translateY(0px);
            -ms-transform: translateY(0px);
            transform: translateY(0px);
            pointer-events: auto; }
          .m-gnav-links-item-hoveronly-list-item {
            position: relative;
            margin-right: 80px; }
            .m-gnav-links-item-hoveronly-list-item:before {
              content: "";
              width: 4px;
              height: 1px;
              background-color: #FFF;
              position: absolute;
              top: 10px;
              left: -23px; }
            .m-gnav-links-item-hoveronly-list-item a {
              color: #FFF; }
              .m-gnav-links-item-hoveronly-list-item a:hover {
                text-decoration: underline; }
    .m-gnav-btn {
      display: none; }
      .m-gnav-btn-lines {
        width: 31px;
        height: 50px; }
        .m-gnav-btn-lines-item {
          height: 3px; }
    .m-gnav-contact {
      display: none; }
    .m-gnav-contact-blue {
      background: #7F9FB5;
      padding: 8px 25px 0px;
      border-radius: 30px;
      margin-top: -4px; }
      .m-gnav-contact-blue a {
        color: #FFF; }
      .m-gnav-contact-blue:hover {
        border-bottom: none;
        opacity: 0.7; }
      .m-gnav-contact-blue a:hover {
        border-bottom: none;
        opacity: 0.7;
        border-bottom: 2px solid transparent; }
    .m-gnav-sp {
      display: none; }
  /* ---------------------------
h
--------------------------- */
  .m-h01 .en {
    font-size: 3.5rem; }
  .m-h02 {
    font-size: 1.5rem; }
  .m-mv {
    padding-top: 220px;
    padding-bottom: 50px; }
    .m-mv-clear {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between; }
    .m-mv-col1 {
      width: 32%; }
    .m-mv-txt01 {
      font-size: 1.8rem; }
    .m-mv-h {
      margin-bottom: 15px; }
      .m-mv-h .en {
        margin-bottom: 30px; }
    .m-mv-txt02 {
      font-size: 2rem; }
    .m-mv-txt03 {
      font-size: 1.2rem; }
      .m-mv-txt03 span {
        font-size: 1rem; }
    .m-mv-col2 {
      width: 60%; }
      .m-mv-col2-frame01, .m-mv-col2-frame02 {
        width: 76px;
        height: 76px;
        border-left: 8px solid #fff;
        border-top: 8px solid #fff;
        position: absolute; }
      .m-mv-col2-frame01 {
        left: 0;
        top: 0; }
      .m-mv-col2-frame02 {
        right: 0;
        bottom: 0;
        -webkit-transform: scale(-1);
        -ms-transform: scale(-1);
        transform: scale(-1); }
    .m-mv-btn {
      width: 207px;
      right: 42px;
      bottom: 15px; }
    .m-mv-img {
      position: relative;
      top: 30px; }
      .m-mv-img img {
        width: 113%;
        max-width: 113%;
        margin-left: -8%; }
    .m-mv-scroll-line {
      height: 60px; }
    .m-mv-scroll-txt {
      font-size: 1.5rem; }
  .m-furusato-column {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between; }
  .m-furusato-column-l {
    width: 48%; }
  .m-furusato-column-r {
    width: 69%; }
  .m-furusato-column-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end; }
  .m-furusato-column-list-item {
    margin-right: 10px; }
  .m-concept {
    padding: 150px 0; }
    .m-concept-lead {
      font-size: 3rem;
      margin-bottom: 1em; }
    .m-concept-txt {
      text-align: center; }
  .m-features {
    padding-top: 120px;
    padding-bottom: 400px; }
    .m-features.is-02 {
      padding-bottom: 200px; }
    .m-features-h {
      margin-bottom: 140px; }
      .is-02 .m-features-h {
        margin-bottom: 440px; }
      .m-features-h .en {
        font-size: 2.3rem; }
      .m-features-h .num {
        font-size: 3.5rem; }
    .m-features-h02 {
      font-size: 3.5rem; }
      .is-01 .m-features-h02 {
        margin-bottom: 100px;
        text-align: center; }
      .is-02 .m-features-h02 {
        text-align: right; }
      .is-03 .m-features-h02 {
        margin-bottom: 0.6em; }
      .is-04 .m-features-h02 {
        margin-bottom: 0.6em;
        text-align: right; }
    .m-features-txt {
      font-size: 1.25rem; }
      .is-01 .m-features-txt {
        max-width: 750px;
        margin: 0 auto; }
      .is-02 .m-features-txt {
        text-align: right; }
      .is-04 .m-features-txt {
        text-align: right; }
    .m-features02-img {
      position: absolute;
      left: 50%;
      bottom: 0;
      width: 1563px;
      margin-left: calc(-345px - 750px);
      bottom: -120px; }
  .m-scene {
    padding-top: 70px;
    padding-bottom: 230px; }
    .m-scene-scenes-item:not(:last-child) {
      margin-bottom: 80px; }
    .m-scene-scenes-h {
      font-size: 3.5rem;
      margin-bottom: 20px; }
    .m-scene-scenes-clear {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      margin-left: -40px;
      margin-right: -40px; }
      .m-scene-scenes-clear:before {
        top: -28px;
        width: 63%;
        height: 100%; }
      .m-scene-scenes-item:nth-child(2n+1) .m-scene-scenes-clear:before {
        right: 0; }
      .m-scene-scenes-item:nth-child(2n) .m-scene-scenes-clear {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse; }
        .m-scene-scenes-item:nth-child(2n) .m-scene-scenes-clear:before {
          left: 0; }
    .m-scene-scenes-img {
      width: 65%; }
    .m-scene-scenes-txts {
      width: 55%; }
      .m-scene-scenes-item:nth-child(2n+1) .m-scene-scenes-txts {
        margin-left: -5%; }
      .m-scene-scenes-item:nth-child(2n) .m-scene-scenes-txts {
        margin-right: -5%; }
    .m-scene-scenes-label {
      font-size: 2rem;
      padding: 40px; }
  .m-before {
    padding: 80px 0; }
    .m-before-title {
      font-size: 1.4rem; }
    .m-before-befores {
      margin-bottom: 50px; }
      .m-before-befores-head {
        padding: 20px 30px; }
        .m-before-befores-head .num {
          font-size: 2rem; }
        .m-before-befores-head .label {
          font-size: 1.3rem; }
      .m-before-befores-content {
        padding: 20px 30px; }
  .m-app {
    padding: 80px 0; }
    .m-app-h02 {
      font-size: 1.5rem; }
    .m-app-lead {
      text-align: center; }
    .m-app-slide-ctrl {
      display: none; }
    .m-app-imgs {
      width: 940px;
      margin: 0 auto 40px; }
      .m-app-imgs-item {
        width: 31%; }
        .m-app-imgs-item:not(:nth-child(3n)) {
          margin-right: 3%; }
    .m-app-attention {
      padding: 25px 80px;
      text-align: center; }
  .m-photo-list .slick-prev {
    width: 40px;
    height: 40px;
    top: 118%;
    left: 250px;
    z-index: 1; }
  .m-photo-list .slick-next {
    width: 40px;
    height: 40px;
    top: 118%;
    right: 250px; }
  .m-photo-list-num {
    font-size: 2rem;
    width: 180px;
    height: 55px;
    margin: 0 auto 30px; }
  .m-product {
    padding: 80px 0;
    background: #f5f5f5; }
    .m-product-in {
      background: #fff;
      padding: 60px 90px; }
    .m-product-clear {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
      flex-direction: row-reverse; }
    .m-product-col1 {
      width: 56%; }
    .m-product-table tr:nth-child(2n+1) th, .m-product-table tr:nth-child(2n+1) td {
      background: #e8edef; }
    .m-product-table th, .m-product-table td {
      padding: 8px 18px;
      vertical-align: top; }
    .m-product-table th {
      width: 40%;
      padding-right: 1em; }
    .m-product-openBtn {
      padding: 20px; }
      .m-product-openBtn:before {
        height: 160px; }
    .m-product-col2-in {
      width: 335px; }
      .m-product-col2-in .slick-prev {
        left: 90px;
        bottom: -3px;
        top: auto; }
      .m-product-col2-in .slick-next {
        right: 90px;
        bottom: -3px;
        top: auto; }
  .m-company {
    padding: 80px 0; }
    .m-company-lead {
      font-size: 2rem; }
      .m-company-lead:before, .m-company-lead:after {
        width: 76px;
        height: 76px;
        border-left: 8px solid #fff;
        border-top: 8px solid #fff; }
    .m-company-overview {
      padding: 70px 90px;
      margin-bottom: 70px; }
    .m-company-table {
      width: 100%; }
      .m-company-table th, .m-company-table td {
        border-bottom: 1px solid #e2e1dc;
        padding: 14px 0;
        vertical-align: top; }
      .m-company-table th {
        font-weight: bold;
        padding-right: 2em;
        white-space: nowrap; }
    .m-company-product-h {
      font-size: 1.6rem; }
    .m-company-productSec {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      padding: 70px 90px; }
      .m-company-productSec-col1 {
        width: 45%; }
      .m-company-productSec-h {
        font-size: 1.6rem; }
      .m-company-productSec-col2 {
        width: 50%; }
    .m-company-feature-h {
      font-size: 1.3rem; }
    .m-company-feature-btn {
      font-size: 1.2rem; }
  .m-patient {
    padding: 70px 0; }
    .m-patient-h {
      font-size: 1.6rem; }
    .m-patient-map {
      margin-top: -70px; }
  /* ---------------------------
m-items
--------------------------- */
  .m-items.is-fdrr-pc {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse; }
  .m-items.is-w800-pc {
    width: 800px;
    max-width: 100%;
    margin: 0 auto; }
  .m-items.col-pc2 .m-items-item {
    width: 48%;
    margin-bottom: 4%; }
    .m-items.col-pc2 .m-items-item:not(:nth-child(2n)) {
      margin-right: 4%; }
  .m-items.col-pc2.is-fdrr-pc .m-items-item:nth-child(2n) {
    margin-right: 4%; }
  .m-items.col-pc2.is-fdrr-pc .m-items-item:not(:nth-child(2n)) {
    margin-right: 0; }
  .m-items.col-pc3 .m-items-item {
    width: 31%;
    margin-bottom: 3%; }
    .m-items.col-pc3 .m-items-item:not(:nth-child(3n)) {
      margin-right: 3%; }
  .m-items.col-pc4 .m-items-item {
    width: 23%;
    margin-bottom: 4%; }
    .m-items.col-pc4 .m-items-item:not(:nth-child(4n)) {
      margin-right: 2.5%; }
  .m-items.col-pc5 .m-items-item {
    width: 18%;
    margin-bottom: 4%; }
    .m-items.col-pc5 .m-items-item:not(:nth-child(5n)) {
      margin-right: 2.2%; }
  .m-items.col-pc6 .m-items-item {
    width: 14.7%;
    margin-bottom: 4%; }
    .m-items.col-pc6 .m-items-item:not(:nth-child(6n)) {
      margin-right: 2.2%; }
  .m-contiguousItems-item {
    height: 100%; }
    .m-contiguousItems.col-pc2 .m-contiguousItems-item {
      width: calc(100% / 2); }
    .m-contiguousItems.col-pc3 .m-contiguousItems-item {
      width: calc(100% / 3); }
    .m-contiguousItems.col-pc4 .m-contiguousItems-item {
      width: calc(100% / 4); }
    .m-contiguousItems.col-pc5 .m-contiguousItems-item {
      width: calc(100% / 5); }
    .m-contiguousItems.col-pc6 .m-contiguousItems-item {
      width: calc(100% / 6); }
  .spOnly {
    display: none; }
  #wrapper {
    margin-top: 80px; }
    #cat-home #wrapper {
      margin-top: 0; }
  .m-mainContent-in {
    max-width: 1300px;
    margin: 0 auto;
    padding-top: 1px; }
  .m-mainContent-bg01 {
    padding-bottom: 120px; }
  /* ---------------------------
m-post
--------------------------- */
  .m-post01-h {
    font-size: 1.8rem; }
  .m-post01-area a {
    padding: 30px; }
  .m-post01-area-img {
    width: 130px;
    margin-right: 30px; }
  .m-post01-area-txts {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1; }
  /* ---------------------------
m-posts
--------------------------- */
  .m-posts01 {
    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; }
    .m-posts01-item {
      width: 47%;
      margin-bottom: 80px; }
    .m-posts01-head:after {
      height: 252px; }
    .m-posts01-h {
      font-size: 1.5em; }
    .m-posts01-area-icon {
      width: 46px;
      height: 46px; }
  .m-posts02 {
    margin-bottom: 30px; }
    .m-posts02-item {
      padding: 0 10px; }
    .m-posts02-img {
      padding: 8px; }
      .m-posts02-img-in {
        height: 20vw;
        max-height: 220px; }
    .m-posts02-txts {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      padding: 24px;
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%;
      -webkit-transition: 0.2s;
      -o-transition: 0.2s;
      transition: 0.2s;
      opacity: 0;
      color: #fff;
      background: rgba(0, 0, 0, 0.5); }
      a:hover .m-posts02-txts {
        opacity: 1; }
    .m-posts02-h {
      font-size: 1.1rem;
      border-bottom: 1px solid #fff;
      padding-bottom: 1em; }
    .m-posts02-area-icon {
      width: 40px;
      height: 40px; }
  /* ---------------------------
m-form
--------------------------- */
  .m-form {
    margin: 0 auto;
    padding: 70px 0;
    background: #fff;
    border: 1px solid #e2e8ec;
    border-radius: 4px; }
    .m-form-in {
      width: 800px;
      margin: 0 auto; }
    .m-form-quick {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      padding: 50px 50px 25px;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      margin-bottom: 40px; }
      .m-form-quick-img {
        width: 50%; }
        .m-form-quick-img img {
          -webkit-transform: rotate(-6deg);
          -ms-transform: rotate(-6deg);
          transform: rotate(-6deg); }
      .m-form-quick-txts {
        width: 48%; }
      .m-form-quick-h .en {
        margin-bottom: 30px; }
        .m-form-quick-h .en img {
          width: 205px; }
      .m-form-quick-h .ja {
        font-size: 1.2rem; }
      .m-form-quick-price dd {
        font-size: 1.5rem; }
    .m-form-sec {
      padding: 70px 0; }
    .m-form-lead {
      text-align: center; }
      .m-form-lead-note {
        padding: 20px;
        margin-bottom: 40px; }
    .m-form-wrap {
      padding: 40px; }
    .m-form-h {
      font-size: 2.4rem; }
    .m-form-table01 {
      margin-bottom: 30px; }
      .m-form-table01 > tbody > tr > th, .m-form-table01 > tbody > tr > td {
        padding: 20px 0;
        vertical-align: top; }
      .m-form-table01 > tbody > tr > th {
        width: 250px;
        padding-right: 20px; }
    .m-form-privacy {
      padding: 35px;
      height: 200px;
      max-width: 800px;
      margin: 0 auto 3em;
      font-size: 0.9rem; }
    .m-form-privacyAgree {
      text-align: center; }
    .m-form-must {
      float: right; }
    .m-form-popupContent {
      padding: 40px 0; }
    .m-form-checkboxSec-h {
      font-size: 1.2rem; }
    .m-form-checkboxSec-checkboxes-item {
      width: calc(100% / 3); }
      .m-form-checkboxSec-checkboxes-item:last-child, .m-form-checkboxSec-checkboxes-item:nth-child(3n+1):nth-last-child(3) {
        border-bottom: none; }
      .m-form-checkboxSec-checkboxes-item:not(:nth-child(3n)) {
        border-right: 1px dotted #e2e1dc; }
    .m-form-checkboxSec-checkboxes-clear {
      padding: 30px; }
    .m-form-checkboxSec-checkboxes-ico {
      width: 30px;
      height: 30px;
      margin-right: 15px; }
  .m-app-mv-clear {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 80px 0 115px 0; }
  .m-app-mv-col1 {
    width: 53%; }
  .m-app-mv-col2 {
    width: 36%; }
  .m-app-mv-lead {
    margin-top: 38px; }
  .m-app-mv-h {
    font-size: 2.9rem;
    margin-top: 34px;
    line-height: 1.6; }
  .m-app-mv-txt01 {
    margin-top: 35px; }
  .m-app-mv-note01 {
    font-size: 0.8rem;
    margin-top: 30px; }
  .m-app-mv-download {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 80px; }
    .m-app-mv-download-link {
      margin-left: 30px; }
  .m-app-scene {
    padding: 90px 0 120px 0; }
    .m-app-scene-scenes-clear:nth-child(even) {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
      flex-direction: row-reverse; }
    .m-app-scene-scenes-clear:not(:first-child) {
      margin-top: 80px; }
    .m-app-scene-scenes-img {
      width: 49%; }
    .m-app-scene-scenes-txts {
      width: 40%; }
    .m-app-scene-scenes-h02 {
      margin-top: 30px; }
    .m-app-scene-scenes-txt01 {
      margin-top: 20px;
      letter-spacing: 1px;
      line-height: 2; }
  .m-app-howto-lead {
    margin-top: 40px; }
    .m-app-howto-lead br {
      display: none; }
  .m-app-howto-clear {
    margin-top: 70px; }
  .m-app-howto-main {
    width: calc(100% - 185px); }
    .m-app-howto-main-txts {
      width: 40%;
      margin-right: auto;
      margin-top: 65px; }
    .m-app-howto-main-h02 {
      font-size: 1.9rem;
      margin-top: 38px; }
    .m-app-howto-main-txt01 p {
      margin-top: 35px;
      line-height: 1.6; }
    .m-app-howto-main-img {
      width: auto; }
      .m-app-howto-main-img.m-position {
        position: relative;
        right: -30px; }
  .m-app-function {
    padding: 70px 0px 88px; }
  .m-app-function-h {
    font-size: 2rem;
    margin-bottom: 55px; }
  .m-app-function-functions {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 0 28px; }
  .m-app-function-functions-item {
    width: 33%;
    max-width: 300px; }
  .m-app-function-functions-h {
    font-size: 1.2rem;
    margin: 0 auto 40px; }
  .m-app-function-functions-img {
    margin: 0 auto;
    max-width: 240px; }
  .m-app-download-clear {
    padding: 0 0 0 140px;
    min-height: 183px; }
  .m-app-download-col2-item {
    margin-right: 37px; }
    .m-app-download-col2-item span {
      display: none; }
  .m-app-quick {
    padding: 77px 0 91px; }
  .m-app-quick-clear {
    padding: 68px 20px 35px 75px; }
  .m-app-quick-clear-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 60px; }
  .m-app-quick-col1 {
    width: 70%;
    max-width: 366px; }
  .m-app-quick-txt {
    font-size: 2.3rem;
    line-height: 55px;
    margin-bottom: 12px; }
  .m-app-quick-h {
    max-width: 320px;
    margin-bottom: 36px; }
  .m-app-quick-h02 {
    font-size: 1.7rem; }
  .m-app-quick-col2 .pc-Only {
    display: block; }
  .m-app-quick-col2 .sp-Only {
    display: none; }
  .m-app-quick-links {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 8px 20px; }
  .m-app-quick-links-col1 {
    max-width: 358px;
    margin-right: 40px; }
    .m-app-quick-links-col1 a {
      width: 100%;
      height: 70px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      border: 1px solid #88959E;
      font-size: 1.1rem;
      position: relative; }
      .m-app-quick-links-col1 a:after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-left: 2px solid #c1c0bc;
        border-bottom: 2px solid #c1c0bc;
        -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        transform: rotate(-130deg);
        cursor: pointer;
        right: 23px; }
  .m-app-quick-links-col2 {
    max-width: 358px;
    margin-right: 40px;
    background: #88959E; }
    .m-app-quick-links-col2 a {
      width: 100%;
      height: 70px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      font-size: 1.1rem;
      position: relative;
      color: #FFF; }
      .m-app-quick-links-col2 a:after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-left: 2px solid #FFF;
        border-bottom: 2px solid #FFF;
        -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        transform: rotate(-130deg);
        cursor: pointer;
        right: 23px; }
  .m-app-bread-list {
    height: 46px; }
  /* ---------------------------
input
--------------------------- */
  .u-input {
    padding: 13px; }
    .u-input.size-m {
      width: 230px; }
    .u-input.padding-s {
      padding: 7px; }
    .u-input-radio01-clear {
      padding: 10px 0; }
    .u-input-radio01-ico {
      width: 30px;
      height: 30px;
      margin-right: 15px; }
  .u-input02 {
    padding: 13px; }
    .u-input02.size-m {
      width: 230px; }
    .u-input02.padding-s {
      padding: 7px; }
  /* ---------------------------
m
--------------------------- */
  /* align */
  /* margin */
  .u-mt-2xs {
    margin-top: 5px !important; }
  .u-mt-xs {
    margin-top: 10px !important; }
  .u-mt-s {
    margin-top: 20px !important; }
  .u-mt {
    margin-top: 30px !important; }
  .u-mt-l {
    margin-top: 40px !important; }
  .u-mt-xl {
    margin-top: 60px !important; }
  .u-mt-2xl {
    margin-top: 80px !important; }
  .u-mt-3xl {
    margin-top: 100px !important; }
  .u-mb-2xs {
    margin-bottom: 5px !important; }
  .u-mb-xs {
    margin-bottom: 10px !important; }
  .u-mb-s {
    margin-bottom: 20px !important; }
  .u-mb {
    margin-bottom: 30px !important; }
  .u-mb-l {
    margin-bottom: 40px !important; }
  .u-mb-xl {
    margin-bottom: 60px !important; }
  .u-mb-2xl {
    margin-bottom: 80px !important; }
  .u-mb-3xl {
    margin-bottom: 100px !important; }
  .u-ml-1em {
    margin-left: 1em !important; }
  .u-mr-1em {
    margin-right: 1em !important; }
  /* padding */
  .u-pt-2xs {
    padding-top: 5px !important; }
  .u-pt-xs {
    padding-top: 10px !important; }
  .u-pt-s {
    padding-top: 20px !important; }
  .u-pt {
    padding-top: 30px !important; }
  .u-pt-l {
    padding-top: 40px !important; }
  .u-pt-xl {
    padding-top: 60px !important; }
  .u-pt-2xl {
    padding-top: 80px !important; }
  .u-pt-3xl {
    padding-top: 100px !important; }
  .u-pb-2xs {
    padding-bottom: 5px !important; }
  .u-pb-xs {
    padding-bottom: 10px !important; }
  .u-pb-s {
    padding-bottom: 20px !important; }
  .u-pb {
    padding-bottom: 30px !important; }
  .u-pb-l {
    padding-bottom: 40px !important; }
  .u-pb-xl {
    padding-bottom: 60px !important; }
  .u-pb-2xl {
    padding-bottom: 80px !important; }
  .u-pb-3xl {
    padding-bottom: 100px !important; }
  .u-p-xs {
    padding: 10px !important; }
  .u-p-s {
    padding: 20px !important; }
  .u-p {
    padding: 30px !important; }
  .u-p-l {
    padding: 40px !important; }
  .u-p-xl {
    padding: 60px !important; }
  /* ---------------------------
link
--------------------------- */
  /* ---------------------------
list
--------------------------- */
  .u-list02 {
    padding: 22px; }
    .u-list02-item {
      font-size: 1.3rem; }
      .u-list02-item:not(:last-child) {
        padding-bottom: 22px;
        margin-bottom: 22px; }
  /* ---------------------------
u-wysiwyg
--------------------------- */
  .u-wysiwyg h1 {
    margin-bottom: 30px; }
  .u-wysiwyg h2 {
    font-size: 1.34rem; }
  .u-wysiwyg h3 {
    font-size: 1.2rem; }
  .u-wysiwyg h4, .u-wysiwyg h5, .u-wysiwyg h6 {
    font-size: 1.2rem; }
  .u-wysiwyg blockquote {
    padding: 28px 30px;
    margin-bottom: 40px; }
  .u-wysiwyg .alignright {
    margin-left: 40px;
    margin-bottom: 40px; }
  .u-wysiwyg .alignleft {
    margin-right: 40px;
    margin-bottom: 40px; }
  .u-text-10 {
    font-size: 0.6rem;
    line-height: 1.7; }
  .u-text-11 {
    font-size: 0.7rem;
    line-height: 1.7; }
  .u-text-12 {
    font-size: 0.8rem;
    line-height: 1.7; }
  .u-text-13 {
    font-size: 0.85rem;
    line-height: 1.6; }
  .u-text-14 {
    font-size: 0.9rem;
    line-height: 1.6; }
  .u-text-16 {
    font-size: 1rem;
    line-height: 1.6; }
  .u-text-18 {
    font-size: 1.1rem;
    line-height: 1.6; }
  .u-text-20 {
    font-size: 1.3rem;
    line-height: 1.5; }
  .u-text-22 {
    font-size: 1.4rem;
    line-height: 1.5; }
  .u-text-24 {
    font-size: 1.5rem;
    line-height: 1.4; }
  .u-text-28 {
    font-size: 1.7rem;
    line-height: 1.4; }
  .u-text-30 {
    font-size: 1.9rem;
    line-height: 1.4; }
  .u-text-32 {
    font-size: 2rem;
    line-height: 1.3; }
  /* ---------------------------
bordered
--------------------------- */
  .u-bordered01 {
    padding: 40px; }
  /* ---------------------------
fixedAfterScroll
--------------------------- */
  .u-fixedAfterScroll.fixed {
    right: 20px;
    bottom: 20px;
    width: 300px; }
  /* ---------------------------
folding
--------------------------- */
  /* ---------------------------
u-table
--------------------------- */ }

@media screen and (min-width: 1025px) and (max-width: 1399px), print {
  /* ==========================================================================
   PC
   ========================================================================== */
  .wrapin {
    max-width: calc( 1140px + 40px);
    margin: 0 auto;
    padding: 0 40px;
    padding: 0 30px;
    -webkit-box-sizing: content-box;
    box-sizing: content-box; }
  /* ---------------------------
module
--------------------------- */
  html {
    font-size: 16px; }
  /* ---------------------------
l-header
--------------------------- */
  .l-header {
    height: 100px; }
    .l-header-logo {
      margin-right: 30px; }
      .l-header-logo img {
        width: 194px; }
    .l-header-col1 {
      padding-left: 50px; }
    .l-header-col2 {
      padding-right: 2em;
      -webkit-box-flex: 1;
      -ms-flex: 1;
      flex: 1; }
    .l-header-reserve {
      z-index: 5; }
      .l-header-reserve .ico {
        width: 60px; }
      .l-header-reserve a {
        width: 118px;
        height: 118px; }
  /* ---------------------------
l-footer
--------------------------- */
  .l-footer-clear {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 64px 40px !important; }
    .l-footer-clear-bottom {
      padding: 27px 0 64px; }
      .l-footer-clear-bottom-col {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        width: 100%; }
      .l-footer-clear-bottom-flex {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex; }
      .l-footer-clear-bottom-flex2 {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex; }
      .l-footer-clear-bottom-list {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
        .l-footer-clear-bottom-list li {
          position: relative;
          padding-left: 24px;
          margin-right: 25px;
          min-width: 103px; }
          .l-footer-clear-bottom-list li a {
            color: #FFF;
            position: relative;
            font-size: 0.85rem; }
            .l-footer-clear-bottom-list li a:before {
              content: "";
              width: 4px;
              height: 1px;
              background-color: #FFF;
              position: absolute;
              top: 10px;
              left: -23px; }
      .l-footer-clear-bottom-list2 li {
        position: relative;
        padding-left: 24px;
        margin-right: 47px; }
        .l-footer-clear-bottom-list2 li a {
          color: #FFF;
          position: relative;
          font-size: 0.85rem; }
          .l-footer-clear-bottom-list2 li a:before {
            content: "";
            width: 4px;
            height: 1px;
            background-color: #FFF;
            position: absolute;
            top: 10px;
            left: -23px; }
      .l-footer-clear-bottom-col-l {
        margin-right: 72px;
        width: 550px; }
  .l-footer-col1 {
    width: 45%; }
  .l-footer-logo {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    .l-footer-logo .en {
      margin-right: 1em; }
      .l-footer-logo .en img {
        width: 190px; }
  .l-footer-col2 {
    width: 40%; }
  .l-footer-contact {
    max-width: 338px;
    width: 100%; }
    .l-footer-contact .m-company-feature-btn span {
      position: absolute;
      left: 19px; }
      .l-footer-contact .m-company-feature-btn span:after {
        content: "";
        width: 1px;
        height: 34px;
        background: #4A4F54;
        position: absolute;
        right: 20px;
        top: -5px; }
  .l-footer-copyright {
    padding: 20px 0; }
  .l-footer-pagetop {
    right: 120px;
    top: -53px; }
    .l-footer-pagetop a {
      width: 95px;
      height: 95px; }
    .l-footer-pagetop img {
      width: 20px;
      height: 40px; }
  /* ---------------------------
l-post
--------------------------- */
  .l-post-wrap {
    padding: 100px 50px; }
  .l-post-clear {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    max-width: 1000px;
    margin: 0 auto; }
  .l-post-main {
    width: 65%;
    max-width: 740px; }
  .l-post-side {
    width: 28%;
    max-width: 300px; }
    .l-post-side-sec:not(:last-child) {
      margin-bottom: 40px; }
  /* ---------------------------
l-wrap
--------------------------- */
  .l-wrap {
    max-width: calc( 1140px + 40px);
    margin: 0 auto;
    padding: 0 40px;
    padding: 0 30px;
    -webkit-box-sizing: content-box;
    box-sizing: content-box; }
    .l-wrap-780 {
      max-width: 860px;
      margin: 0 auto;
      padding-left: 40px;
      padding-right: 40px; }
    .l-wrap-800 {
      max-width: 880px;
      margin: 0 auto;
      padding-left: 40px;
      padding-right: 40px; }
    .l-wrap-900 {
      max-width: 980px;
      margin: 0 auto;
      padding-left: 40px;
      padding-right: 40px; }
    .l-wrap-960 {
      max-width: 1010px;
      margin: 0 auto;
      padding-left: 40px;
      padding-right: 40px; }
    .l-wrap-980 {
      max-width: 1060px;
      margin: 0 auto;
      padding-left: 40px;
      padding-right: 40px; }
    .l-wrap-1000 {
      max-width: 1080px;
      margin: 0 auto;
      padding-left: 40px;
      padding-right: 40px; }
    .l-wrap-1030 {
      max-width: 1110px;
      margin: 0 auto;
      padding-left: 40px;
      padding-right: 40px; }
    .l-wrap-1100 {
      max-width: 1180px;
      margin: 0 auto;
      padding-left: 40px;
      padding-right: 40px; }
    .l-wrap-1130 {
      max-width: 1210px;
      margin: 0 auto;
      padding-left: 40px;
      padding-right: 40px; }
    .l-wrap-1280 {
      max-width: 1360px;
      width: 100%;
      margin: 0 auto;
      padding-left: 40px;
      padding-right: 40px; }
    .l-wrap-1460 {
      max-width: 1560px;
      width: 100%;
      margin: 0 auto;
      padding-left: 40px;
      padding-right: 40px; }
  /* ---------------------------
l-secType
--------------------------- */
  .l-secType01 {
    padding-top: 80px;
    padding-bottom: 80px; }
  .l-secType02 {
    padding-top: 80px;
    padding-bottom: 80px; }
  /* ---------------------------
btn
--------------------------- */
  .m-btn01 {
    padding: 23px 14px;
    font-size: 1.1rem; }
    .m-btn01 .ico {
      width: 30px;
      margin-right: 15px; }
    .m-btn01.size-220pc {
      width: 220px; }
    .m-btn01.arrow-r {
      padding-right: 25px; }
    .m-btn01.arrow-l {
      padding-left: 25px; }
    .m-btn01.is-smallPadding {
      padding: 9px 6px;
      border-radius: 4px; }
  .m-btn02 {
    padding: 19px 14px; }
    .m-btn02 .ico {
      width: 30px;
      margin-right: 15px; }
    .m-btn02.size-220pc {
      width: 220px; }
    .m-btn02.arrow-r {
      padding-right: 25px; }
    .m-btn02.arrow-l {
      padding-left: 25px; }
    .m-btn02.is-smallPadding {
      padding: 7px 6px; }
  /* ---------------------------
btns1col
--------------------------- */
  .m-btns1col-item {
    width: 560px; }
  /* ---------------------------
m-cols01
--------------------------- */
  .m-cols01-clear {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between; }
  .m-cols01-col1 {
    width: 25%; }
  .m-cols01-col2 {
    width: 70%; }
  /* ---------------------------
m-gnav
--------------------------- */
  .m-gnav {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1; }
    .m-gnav-links {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      -webkit-box-pack: end;
      -ms-flex-pack: end;
      justify-content: flex-end;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center; }
      .m-gnav-links-item {
        margin-left: 2em; }
        .m-gnav-links-item a {
          border-bottom: 2px solid transparent;
          display: block;
          padding-bottom: 2px; }
        .m-gnav-links-item a:hover {
          opacity: 1;
          border-bottom-color: #767d84; }
        .m-gnav-links-item .en {
          display: none; }
        .m-gnav-links-item-hoveronly {
          position: fixed;
          top: 100px;
          left: 0;
          background: #767D84;
          width: 100%;
          height: 80px;
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-align: center;
          -ms-flex-align: center;
          align-items: center;
          -webkit-box-pack: end;
          -ms-flex-pack: end;
          justify-content: flex-end;
          padding-right: 200px;
          opacity: 0;
          pointer-events: none; }
          .m-gnav-links-item-hoveronly.on {
            opacity: 1;
            -webkit-transition: 1s;
            -o-transition: 1s;
            transition: 1s;
            -webkit-transform: translateY(0px);
            -ms-transform: translateY(0px);
            transform: translateY(0px);
            pointer-events: auto; }
          .m-gnav-links-item-hoveronly-list-item {
            position: relative;
            margin-right: 80px; }
            .m-gnav-links-item-hoveronly-list-item:before {
              content: "";
              width: 4px;
              height: 1px;
              background-color: #FFF;
              position: absolute;
              top: 10px;
              left: -23px; }
            .m-gnav-links-item-hoveronly-list-item a {
              color: #FFF; }
              .m-gnav-links-item-hoveronly-list-item a:hover {
                text-decoration: underline; }
    .m-gnav-btn {
      display: none; }
      .m-gnav-btn-lines {
        width: 31px;
        height: 50px; }
        .m-gnav-btn-lines-item {
          height: 3px; }
    .m-gnav-contact {
      display: none; }
    .m-gnav-contact-blue {
      background: #7F9FB5;
      padding: 8px 25px 0px;
      border-radius: 30px;
      margin-top: -4px; }
      .m-gnav-contact-blue a {
        color: #FFF; }
      .m-gnav-contact-blue:hover {
        border-bottom: none;
        opacity: 0.7; }
      .m-gnav-contact-blue a:hover {
        border-bottom: none;
        opacity: 0.7;
        border-bottom: 2px solid transparent; }
    .m-gnav-sp {
      display: none; }
  /* ---------------------------
h
--------------------------- */
  .m-h01 .en {
    font-size: 3.5rem; }
  .m-h02 {
    font-size: 1.5rem; }
  .m-mv {
    padding-top: 220px;
    padding-bottom: 50px; }
    .m-mv-clear {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between; }
    .m-mv-col1 {
      width: 32%; }
    .m-mv-txt01 {
      font-size: 1.8rem; }
    .m-mv-h {
      margin-bottom: 15px; }
      .m-mv-h .en {
        margin-bottom: 30px; }
    .m-mv-txt02 {
      font-size: 2rem; }
    .m-mv-txt03 {
      font-size: 1.2rem; }
      .m-mv-txt03 span {
        font-size: 1rem; }
    .m-mv-col2 {
      width: 60%; }
      .m-mv-col2-frame01, .m-mv-col2-frame02 {
        width: 76px;
        height: 76px;
        border-left: 8px solid #fff;
        border-top: 8px solid #fff;
        position: absolute; }
      .m-mv-col2-frame01 {
        left: 0;
        top: 0; }
      .m-mv-col2-frame02 {
        right: 0;
        bottom: 0;
        -webkit-transform: scale(-1);
        -ms-transform: scale(-1);
        transform: scale(-1); }
    .m-mv-btn {
      width: 207px;
      right: 42px;
      bottom: 15px; }
    .m-mv-img {
      position: relative;
      top: 30px; }
      .m-mv-img img {
        width: 113%;
        max-width: 113%;
        margin-left: -8%; }
    .m-mv-scroll-line {
      height: 60px; }
    .m-mv-scroll-txt {
      font-size: 1.5rem; }
  .m-furusato-column {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between; }
  .m-furusato-column-l {
    width: 48%; }
  .m-furusato-column-r {
    width: 69%; }
  .m-furusato-column-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end; }
  .m-furusato-column-list-item {
    margin-right: 10px; }
  .m-concept {
    padding: 150px 0; }
    .m-concept-lead {
      font-size: 3rem;
      margin-bottom: 1em; }
    .m-concept-txt {
      text-align: center; }
  .m-features {
    padding-top: 120px;
    padding-bottom: 400px; }
    .m-features.is-02 {
      padding-bottom: 200px; }
    .m-features-h {
      margin-bottom: 140px; }
      .is-02 .m-features-h {
        margin-bottom: 440px; }
      .m-features-h .en {
        font-size: 2.3rem; }
      .m-features-h .num {
        font-size: 3.5rem; }
    .m-features-h02 {
      font-size: 3.5rem; }
      .is-01 .m-features-h02 {
        margin-bottom: 100px;
        text-align: center; }
      .is-02 .m-features-h02 {
        text-align: right; }
      .is-03 .m-features-h02 {
        margin-bottom: 0.6em; }
      .is-04 .m-features-h02 {
        margin-bottom: 0.6em;
        text-align: right; }
    .m-features-txt {
      font-size: 1.25rem; }
      .is-01 .m-features-txt {
        max-width: 750px;
        margin: 0 auto; }
      .is-02 .m-features-txt {
        text-align: right; }
      .is-04 .m-features-txt {
        text-align: right; }
    .m-features02-img {
      position: absolute;
      left: 50%;
      bottom: 0;
      width: 1563px;
      margin-left: calc(-345px - 750px);
      bottom: -120px; }
  .m-scene {
    padding-top: 70px;
    padding-bottom: 230px; }
    .m-scene-scenes-item:not(:last-child) {
      margin-bottom: 80px; }
    .m-scene-scenes-h {
      font-size: 3.5rem;
      margin-bottom: 20px; }
    .m-scene-scenes-clear {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      margin-left: -40px;
      margin-right: -40px; }
      .m-scene-scenes-clear:before {
        top: -28px;
        width: 63%;
        height: 100%; }
      .m-scene-scenes-item:nth-child(2n+1) .m-scene-scenes-clear:before {
        right: 0; }
      .m-scene-scenes-item:nth-child(2n) .m-scene-scenes-clear {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse; }
        .m-scene-scenes-item:nth-child(2n) .m-scene-scenes-clear:before {
          left: 0; }
    .m-scene-scenes-img {
      width: 65%; }
    .m-scene-scenes-txts {
      width: 55%; }
      .m-scene-scenes-item:nth-child(2n+1) .m-scene-scenes-txts {
        margin-left: -5%; }
      .m-scene-scenes-item:nth-child(2n) .m-scene-scenes-txts {
        margin-right: -5%; }
    .m-scene-scenes-label {
      font-size: 2rem;
      padding: 40px; }
  .m-before {
    padding: 80px 0; }
    .m-before-title {
      font-size: 1.4rem; }
    .m-before-befores {
      margin-bottom: 50px; }
      .m-before-befores-head {
        padding: 20px 30px; }
        .m-before-befores-head .num {
          font-size: 2rem; }
        .m-before-befores-head .label {
          font-size: 1.3rem; }
      .m-before-befores-content {
        padding: 20px 30px; }
  .m-app {
    padding: 80px 0; }
    .m-app-h02 {
      font-size: 1.5rem; }
    .m-app-lead {
      text-align: center; }
    .m-app-slide-ctrl {
      display: none; }
    .m-app-imgs {
      width: 940px;
      margin: 0 auto 40px; }
      .m-app-imgs-item {
        width: 31%; }
        .m-app-imgs-item:not(:nth-child(3n)) {
          margin-right: 3%; }
    .m-app-attention {
      padding: 25px 80px;
      text-align: center; }
  .m-photo-list .slick-prev {
    width: 40px;
    height: 40px;
    top: 118%;
    left: 250px;
    z-index: 1; }
  .m-photo-list .slick-next {
    width: 40px;
    height: 40px;
    top: 118%;
    right: 250px; }
  .m-photo-list-num {
    font-size: 2rem;
    width: 180px;
    height: 55px;
    margin: 0 auto 30px; }
  .m-product {
    padding: 80px 0;
    background: #f5f5f5; }
    .m-product-in {
      background: #fff;
      padding: 60px 90px; }
    .m-product-clear {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
      flex-direction: row-reverse; }
    .m-product-col1 {
      width: 56%; }
    .m-product-table tr:nth-child(2n+1) th, .m-product-table tr:nth-child(2n+1) td {
      background: #e8edef; }
    .m-product-table th, .m-product-table td {
      padding: 8px 18px;
      vertical-align: top; }
    .m-product-table th {
      width: 40%;
      padding-right: 1em; }
    .m-product-openBtn {
      padding: 20px; }
      .m-product-openBtn:before {
        height: 160px; }
    .m-product-col2-in {
      width: 335px; }
      .m-product-col2-in .slick-prev {
        left: 90px;
        bottom: -3px;
        top: auto; }
      .m-product-col2-in .slick-next {
        right: 90px;
        bottom: -3px;
        top: auto; }
  .m-company {
    padding: 80px 0; }
    .m-company-lead {
      font-size: 2rem; }
      .m-company-lead:before, .m-company-lead:after {
        width: 76px;
        height: 76px;
        border-left: 8px solid #fff;
        border-top: 8px solid #fff; }
    .m-company-overview {
      padding: 70px 90px;
      margin-bottom: 70px; }
    .m-company-table {
      width: 100%; }
      .m-company-table th, .m-company-table td {
        border-bottom: 1px solid #e2e1dc;
        padding: 14px 0;
        vertical-align: top; }
      .m-company-table th {
        font-weight: bold;
        padding-right: 2em;
        white-space: nowrap; }
    .m-company-product-h {
      font-size: 1.6rem; }
    .m-company-productSec {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      padding: 70px 90px; }
      .m-company-productSec-col1 {
        width: 45%; }
      .m-company-productSec-h {
        font-size: 1.6rem; }
      .m-company-productSec-col2 {
        width: 50%; }
    .m-company-feature-h {
      font-size: 1.3rem; }
    .m-company-feature-btn {
      font-size: 1.2rem; }
  .m-patient {
    padding: 70px 0; }
    .m-patient-h {
      font-size: 1.6rem; }
    .m-patient-map {
      margin-top: -70px; }
  /* ---------------------------
m-items
--------------------------- */
  .m-items.is-fdrr-pc {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse; }
  .m-items.is-w800-pc {
    width: 800px;
    max-width: 100%;
    margin: 0 auto; }
  .m-items.col-pc2 .m-items-item {
    width: 48%;
    margin-bottom: 4%; }
    .m-items.col-pc2 .m-items-item:not(:nth-child(2n)) {
      margin-right: 4%; }
  .m-items.col-pc2.is-fdrr-pc .m-items-item:nth-child(2n) {
    margin-right: 4%; }
  .m-items.col-pc2.is-fdrr-pc .m-items-item:not(:nth-child(2n)) {
    margin-right: 0; }
  .m-items.col-pc3 .m-items-item {
    width: 31%;
    margin-bottom: 3%; }
    .m-items.col-pc3 .m-items-item:not(:nth-child(3n)) {
      margin-right: 3%; }
  .m-items.col-pc4 .m-items-item {
    width: 23%;
    margin-bottom: 4%; }
    .m-items.col-pc4 .m-items-item:not(:nth-child(4n)) {
      margin-right: 2.5%; }
  .m-items.col-pc5 .m-items-item {
    width: 18%;
    margin-bottom: 4%; }
    .m-items.col-pc5 .m-items-item:not(:nth-child(5n)) {
      margin-right: 2.2%; }
  .m-items.col-pc6 .m-items-item {
    width: 14.7%;
    margin-bottom: 4%; }
    .m-items.col-pc6 .m-items-item:not(:nth-child(6n)) {
      margin-right: 2.2%; }
  .m-contiguousItems-item {
    height: 100%; }
    .m-contiguousItems.col-pc2 .m-contiguousItems-item {
      width: calc(100% / 2); }
    .m-contiguousItems.col-pc3 .m-contiguousItems-item {
      width: calc(100% / 3); }
    .m-contiguousItems.col-pc4 .m-contiguousItems-item {
      width: calc(100% / 4); }
    .m-contiguousItems.col-pc5 .m-contiguousItems-item {
      width: calc(100% / 5); }
    .m-contiguousItems.col-pc6 .m-contiguousItems-item {
      width: calc(100% / 6); }
  .tbOnly {
    display: none; }
  .spOnly {
    display: none; }
  #wrapper {
    margin-top: 80px; }
    #cat-home #wrapper {
      margin-top: 0; }
  .m-mainContent-in {
    max-width: 1300px;
    margin: 0 auto;
    padding-top: 1px; }
  .m-mainContent-bg01 {
    padding-bottom: 120px; }
  /* ---------------------------
m-post
--------------------------- */
  .m-post01-h {
    font-size: 1.8rem; }
  .m-post01-area a {
    padding: 30px; }
  .m-post01-area-img {
    width: 130px;
    margin-right: 30px; }
  .m-post01-area-txts {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1; }
  /* ---------------------------
m-posts
--------------------------- */
  .m-posts01 {
    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; }
    .m-posts01-item {
      width: 47%;
      margin-bottom: 80px; }
    .m-posts01-head:after {
      height: 252px; }
    .m-posts01-h {
      font-size: 1.5em; }
    .m-posts01-area-icon {
      width: 46px;
      height: 46px; }
  .m-posts02 {
    margin-bottom: 30px; }
    .m-posts02-item {
      padding: 0 10px; }
    .m-posts02-img {
      padding: 8px; }
      .m-posts02-img-in {
        height: 20vw;
        max-height: 220px; }
    .m-posts02-txts {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      padding: 24px;
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%;
      -webkit-transition: 0.2s;
      -o-transition: 0.2s;
      transition: 0.2s;
      opacity: 0;
      color: #fff;
      background: rgba(0, 0, 0, 0.5); }
      a:hover .m-posts02-txts {
        opacity: 1; }
    .m-posts02-h {
      font-size: 1.1rem;
      border-bottom: 1px solid #fff;
      padding-bottom: 1em; }
    .m-posts02-area-icon {
      width: 40px;
      height: 40px; }
  /* ---------------------------
m-form
--------------------------- */
  .m-form {
    margin: 0 auto;
    padding: 70px 0;
    background: #fff;
    border: 1px solid #e2e8ec;
    border-radius: 4px; }
    .m-form-in {
      width: 800px;
      margin: 0 auto; }
    .m-form-quick {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      padding: 50px 50px 25px;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      margin-bottom: 40px; }
      .m-form-quick-img {
        width: 50%; }
        .m-form-quick-img img {
          -webkit-transform: rotate(-6deg);
          -ms-transform: rotate(-6deg);
          transform: rotate(-6deg); }
      .m-form-quick-txts {
        width: 48%; }
      .m-form-quick-h .en {
        margin-bottom: 30px; }
        .m-form-quick-h .en img {
          width: 205px; }
      .m-form-quick-h .ja {
        font-size: 1.2rem; }
      .m-form-quick-price dd {
        font-size: 1.5rem; }
    .m-form-sec {
      padding: 70px 0; }
    .m-form-lead {
      text-align: center; }
      .m-form-lead-note {
        padding: 20px;
        margin-bottom: 40px; }
    .m-form-wrap {
      padding: 40px; }
    .m-form-h {
      font-size: 2.4rem; }
    .m-form-table01 {
      margin-bottom: 30px; }
      .m-form-table01 > tbody > tr > th, .m-form-table01 > tbody > tr > td {
        padding: 20px 0;
        vertical-align: top; }
      .m-form-table01 > tbody > tr > th {
        width: 250px;
        padding-right: 20px; }
    .m-form-privacy {
      padding: 35px;
      height: 200px;
      max-width: 800px;
      margin: 0 auto 3em;
      font-size: 0.9rem; }
    .m-form-privacyAgree {
      text-align: center; }
    .m-form-must {
      float: right; }
    .m-form-popupContent {
      padding: 40px 0; }
    .m-form-checkboxSec-h {
      font-size: 1.2rem; }
    .m-form-checkboxSec-checkboxes-item {
      width: calc(100% / 3); }
      .m-form-checkboxSec-checkboxes-item:last-child, .m-form-checkboxSec-checkboxes-item:nth-child(3n+1):nth-last-child(3) {
        border-bottom: none; }
      .m-form-checkboxSec-checkboxes-item:not(:nth-child(3n)) {
        border-right: 1px dotted #e2e1dc; }
    .m-form-checkboxSec-checkboxes-clear {
      padding: 30px; }
    .m-form-checkboxSec-checkboxes-ico {
      width: 30px;
      height: 30px;
      margin-right: 15px; }
  .m-app-mv-clear {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 80px 0 115px 0; }
  .m-app-mv-col1 {
    width: 53%; }
  .m-app-mv-col2 {
    width: 36%; }
  .m-app-mv-lead {
    margin-top: 38px; }
  .m-app-mv-h {
    font-size: 2.9rem;
    margin-top: 34px;
    line-height: 1.6; }
  .m-app-mv-txt01 {
    margin-top: 35px; }
  .m-app-mv-note01 {
    font-size: 0.8rem;
    margin-top: 30px; }
  .m-app-mv-download {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 80px; }
    .m-app-mv-download-link {
      margin-left: 30px; }
  .m-app-scene {
    padding: 90px 0 120px 0; }
    .m-app-scene-scenes-clear:nth-child(even) {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
      flex-direction: row-reverse; }
    .m-app-scene-scenes-clear:not(:first-child) {
      margin-top: 80px; }
    .m-app-scene-scenes-img {
      width: 49%; }
    .m-app-scene-scenes-txts {
      width: 40%; }
    .m-app-scene-scenes-h02 {
      margin-top: 30px; }
    .m-app-scene-scenes-txt01 {
      margin-top: 20px;
      letter-spacing: 1px;
      line-height: 2; }
  .m-app-howto-lead {
    margin-top: 40px; }
    .m-app-howto-lead br {
      display: none; }
  .m-app-howto-clear {
    margin-top: 70px; }
  .m-app-howto-main {
    width: calc(100% - 185px); }
    .m-app-howto-main-txts {
      width: 40%;
      margin-right: auto;
      margin-top: 65px; }
    .m-app-howto-main-h02 {
      font-size: 1.9rem;
      margin-top: 38px; }
    .m-app-howto-main-txt01 p {
      margin-top: 35px;
      line-height: 1.6; }
    .m-app-howto-main-img {
      width: auto; }
      .m-app-howto-main-img.m-position {
        position: relative;
        right: -30px; }
  .m-app-function {
    padding: 70px 0px 88px; }
  .m-app-function-h {
    font-size: 2rem;
    margin-bottom: 55px; }
  .m-app-function-functions {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 0 28px; }
  .m-app-function-functions-item {
    width: 33%;
    max-width: 300px; }
  .m-app-function-functions-h {
    font-size: 1.2rem;
    margin: 0 auto 40px; }
  .m-app-function-functions-img {
    margin: 0 auto;
    max-width: 240px; }
  .m-app-download-clear {
    padding: 0 0 0 140px;
    min-height: 183px; }
  .m-app-download-col2-item {
    margin-right: 37px; }
    .m-app-download-col2-item span {
      display: none; }
  .m-app-quick {
    padding: 77px 0 91px; }
  .m-app-quick-clear {
    padding: 68px 20px 35px 75px; }
  .m-app-quick-clear-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 60px; }
  .m-app-quick-col1 {
    width: 70%;
    max-width: 366px; }
  .m-app-quick-txt {
    font-size: 2.3rem;
    line-height: 55px;
    margin-bottom: 12px; }
  .m-app-quick-h {
    max-width: 320px;
    margin-bottom: 36px; }
  .m-app-quick-h02 {
    font-size: 1.7rem; }
  .m-app-quick-col2 .pc-Only {
    display: block; }
  .m-app-quick-col2 .sp-Only {
    display: none; }
  .m-app-quick-links {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 8px 20px; }
  .m-app-quick-links-col1 {
    max-width: 358px;
    margin-right: 40px; }
    .m-app-quick-links-col1 a {
      width: 100%;
      height: 70px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      border: 1px solid #88959E;
      font-size: 1.1rem;
      position: relative; }
      .m-app-quick-links-col1 a:after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-left: 2px solid #c1c0bc;
        border-bottom: 2px solid #c1c0bc;
        -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        transform: rotate(-130deg);
        cursor: pointer;
        right: 23px; }
  .m-app-quick-links-col2 {
    max-width: 358px;
    margin-right: 40px;
    background: #88959E; }
    .m-app-quick-links-col2 a {
      width: 100%;
      height: 70px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      font-size: 1.1rem;
      position: relative;
      color: #FFF; }
      .m-app-quick-links-col2 a:after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-left: 2px solid #FFF;
        border-bottom: 2px solid #FFF;
        -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        transform: rotate(-130deg);
        cursor: pointer;
        right: 23px; }
  .m-app-bread-list {
    height: 46px; }
  /* ---------------------------
input
--------------------------- */
  .u-input {
    padding: 13px; }
    .u-input.size-m {
      width: 230px; }
    .u-input.padding-s {
      padding: 7px; }
    .u-input-radio01-clear {
      padding: 10px 0; }
    .u-input-radio01-ico {
      width: 30px;
      height: 30px;
      margin-right: 15px; }
  .u-input02 {
    padding: 13px; }
    .u-input02.size-m {
      width: 230px; }
    .u-input02.padding-s {
      padding: 7px; }
  /* ---------------------------
m
--------------------------- */
  /* align */
  /* margin */
  .u-mt-2xs {
    margin-top: 5px !important; }
  .u-mt-xs {
    margin-top: 10px !important; }
  .u-mt-s {
    margin-top: 20px !important; }
  .u-mt {
    margin-top: 30px !important; }
  .u-mt-l {
    margin-top: 40px !important; }
  .u-mt-xl {
    margin-top: 60px !important; }
  .u-mt-2xl {
    margin-top: 80px !important; }
  .u-mt-3xl {
    margin-top: 100px !important; }
  .u-mb-2xs {
    margin-bottom: 5px !important; }
  .u-mb-xs {
    margin-bottom: 10px !important; }
  .u-mb-s {
    margin-bottom: 20px !important; }
  .u-mb {
    margin-bottom: 30px !important; }
  .u-mb-l {
    margin-bottom: 40px !important; }
  .u-mb-xl {
    margin-bottom: 60px !important; }
  .u-mb-2xl {
    margin-bottom: 80px !important; }
  .u-mb-3xl {
    margin-bottom: 100px !important; }
  .u-ml-1em {
    margin-left: 1em !important; }
  .u-mr-1em {
    margin-right: 1em !important; }
  /* padding */
  .u-pt-2xs {
    padding-top: 5px !important; }
  .u-pt-xs {
    padding-top: 10px !important; }
  .u-pt-s {
    padding-top: 20px !important; }
  .u-pt {
    padding-top: 30px !important; }
  .u-pt-l {
    padding-top: 40px !important; }
  .u-pt-xl {
    padding-top: 60px !important; }
  .u-pt-2xl {
    padding-top: 80px !important; }
  .u-pt-3xl {
    padding-top: 100px !important; }
  .u-pb-2xs {
    padding-bottom: 5px !important; }
  .u-pb-xs {
    padding-bottom: 10px !important; }
  .u-pb-s {
    padding-bottom: 20px !important; }
  .u-pb {
    padding-bottom: 30px !important; }
  .u-pb-l {
    padding-bottom: 40px !important; }
  .u-pb-xl {
    padding-bottom: 60px !important; }
  .u-pb-2xl {
    padding-bottom: 80px !important; }
  .u-pb-3xl {
    padding-bottom: 100px !important; }
  .u-p-xs {
    padding: 10px !important; }
  .u-p-s {
    padding: 20px !important; }
  .u-p {
    padding: 30px !important; }
  .u-p-l {
    padding: 40px !important; }
  .u-p-xl {
    padding: 60px !important; }
  /* ---------------------------
link
--------------------------- */
  /* ---------------------------
list
--------------------------- */
  .u-list02 {
    padding: 22px; }
    .u-list02-item {
      font-size: 1.3rem; }
      .u-list02-item:not(:last-child) {
        padding-bottom: 22px;
        margin-bottom: 22px; }
  /* ---------------------------
u-wysiwyg
--------------------------- */
  .u-wysiwyg h1 {
    margin-bottom: 30px; }
  .u-wysiwyg h2 {
    font-size: 1.34rem; }
  .u-wysiwyg h3 {
    font-size: 1.2rem; }
  .u-wysiwyg h4, .u-wysiwyg h5, .u-wysiwyg h6 {
    font-size: 1.2rem; }
  .u-wysiwyg blockquote {
    padding: 28px 30px;
    margin-bottom: 40px; }
  .u-wysiwyg .alignright {
    margin-left: 40px;
    margin-bottom: 40px; }
  .u-wysiwyg .alignleft {
    margin-right: 40px;
    margin-bottom: 40px; }
  .u-text-10 {
    font-size: 0.6rem;
    line-height: 1.7; }
  .u-text-11 {
    font-size: 0.7rem;
    line-height: 1.7; }
  .u-text-12 {
    font-size: 0.8rem;
    line-height: 1.7; }
  .u-text-13 {
    font-size: 0.85rem;
    line-height: 1.6; }
  .u-text-14 {
    font-size: 0.9rem;
    line-height: 1.6; }
  .u-text-16 {
    font-size: 1rem;
    line-height: 1.6; }
  .u-text-18 {
    font-size: 1.1rem;
    line-height: 1.6; }
  .u-text-20 {
    font-size: 1.3rem;
    line-height: 1.5; }
  .u-text-22 {
    font-size: 1.4rem;
    line-height: 1.5; }
  .u-text-24 {
    font-size: 1.5rem;
    line-height: 1.4; }
  .u-text-28 {
    font-size: 1.7rem;
    line-height: 1.4; }
  .u-text-30 {
    font-size: 1.9rem;
    line-height: 1.4; }
  .u-text-32 {
    font-size: 2rem;
    line-height: 1.3; }
  /* ---------------------------
bordered
--------------------------- */
  .u-bordered01 {
    padding: 40px; }
  /* ---------------------------
fixedAfterScroll
--------------------------- */
  .u-fixedAfterScroll.fixed {
    right: 20px;
    bottom: 20px;
    width: 300px; }
  /* ---------------------------
folding
--------------------------- */
  /* ---------------------------
u-table
--------------------------- */ }

@media screen and (min-width: 768px) and (max-width: 1024px) {
  /* ==========================================================================
   TB
   ========================================================================== */
  .wrapin {
    max-width: calc( 1140px + 40px);
    margin: 0 auto;
    padding: 0 40px;
    padding: 0 30px;
    -webkit-box-sizing: content-box;
    box-sizing: content-box; }
  /* ---------------------------
module
--------------------------- */
  html {
    font-size: 14px; }
  /* ---------------------------
l-header
--------------------------- */
  .l-header {
    height: 100px;
    height: 70px; }
    .l-header-logo {
      margin-right: 30px;
      margin-right: 20px; }
      .l-header-logo img {
        width: 194px; }
      .l-header-logo img {
        width: 115px; }
    .l-header-col1 {
      padding-left: 25px; }
    .l-header-col2 {
      padding-right: 1em; }
    .l-header-reserve {
      z-index: 5; }
      .l-header-reserve .ico {
        width: 30px; }
      .l-header-reserve a {
        padding-top: 10px;
        width: 76px;
        height: 76px;
        font-size: 0.8rem; }
  /* ---------------------------
l-footer
--------------------------- */
  .l-footer-clear {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 64px 40px !important; }
    .l-footer-clear-bottom {
      padding: 27px 0 64px; }
      .l-footer-clear-bottom-col {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        width: 100%; }
      .l-footer-clear-bottom-flex {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex; }
      .l-footer-clear-bottom-flex2 {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex; }
      .l-footer-clear-bottom-list {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
        .l-footer-clear-bottom-list li {
          position: relative;
          padding-left: 24px;
          margin-right: 25px;
          min-width: 103px; }
          .l-footer-clear-bottom-list li a {
            color: #FFF;
            position: relative;
            font-size: 0.85rem; }
            .l-footer-clear-bottom-list li a:before {
              content: "";
              width: 4px;
              height: 1px;
              background-color: #FFF;
              position: absolute;
              top: 10px;
              left: -23px; }
      .l-footer-clear-bottom-list2 li {
        position: relative;
        padding-left: 24px;
        margin-right: 47px; }
        .l-footer-clear-bottom-list2 li a {
          color: #FFF;
          position: relative;
          font-size: 0.85rem; }
          .l-footer-clear-bottom-list2 li a:before {
            content: "";
            width: 4px;
            height: 1px;
            background-color: #FFF;
            position: absolute;
            top: 10px;
            left: -23px; }
      .l-footer-clear-bottom-col-l {
        margin-right: 72px;
        width: 550px; }
  .l-footer-col1 {
    width: 45%; }
  .l-footer-logo {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    .l-footer-logo .en {
      margin-right: 1em; }
      .l-footer-logo .en img {
        width: 190px; }
  .l-footer-col2 {
    width: 40%; }
  .l-footer-contact {
    max-width: 338px;
    width: 100%; }
    .l-footer-contact .m-company-feature-btn span {
      position: absolute;
      left: 19px; }
      .l-footer-contact .m-company-feature-btn span:after {
        content: "";
        width: 1px;
        height: 34px;
        background: #4A4F54;
        position: absolute;
        right: 20px;
        top: -5px; }
  .l-footer-copyright {
    padding: 20px 0; }
  .l-footer-pagetop {
    right: 120px;
    top: -53px; }
    .l-footer-pagetop a {
      width: 95px;
      height: 95px; }
    .l-footer-pagetop img {
      width: 20px;
      height: 40px; }
  /* ---------------------------
l-post
--------------------------- */
  .l-post-wrap {
    padding: 100px 50px; }
  .l-post-clear {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    max-width: 1000px;
    margin: 0 auto; }
  .l-post-main {
    width: 65%;
    max-width: 740px; }
  .l-post-side {
    width: 28%;
    max-width: 300px; }
    .l-post-side-sec:not(:last-child) {
      margin-bottom: 40px; }
  /* ---------------------------
l-wrap
--------------------------- */
  .l-wrap {
    max-width: calc( 1140px + 40px);
    margin: 0 auto;
    padding: 0 40px;
    padding: 0 30px;
    -webkit-box-sizing: content-box;
    box-sizing: content-box; }
    .l-wrap-780 {
      max-width: 860px;
      margin: 0 auto;
      padding-left: 40px;
      padding-right: 40px; }
    .l-wrap-800 {
      max-width: 880px;
      margin: 0 auto;
      padding-left: 40px;
      padding-right: 40px; }
    .l-wrap-900 {
      max-width: 980px;
      margin: 0 auto;
      padding-left: 40px;
      padding-right: 40px; }
    .l-wrap-960 {
      max-width: 1010px;
      margin: 0 auto;
      padding-left: 40px;
      padding-right: 40px; }
    .l-wrap-980 {
      max-width: 1060px;
      margin: 0 auto;
      padding-left: 40px;
      padding-right: 40px; }
    .l-wrap-1000 {
      max-width: 1080px;
      margin: 0 auto;
      padding-left: 40px;
      padding-right: 40px; }
    .l-wrap-1030 {
      max-width: 1110px;
      margin: 0 auto;
      padding-left: 40px;
      padding-right: 40px; }
    .l-wrap-1100 {
      max-width: 1180px;
      margin: 0 auto;
      padding-left: 40px;
      padding-right: 40px; }
    .l-wrap-1130 {
      max-width: 1210px;
      margin: 0 auto;
      padding-left: 40px;
      padding-right: 40px; }
    .l-wrap-1280 {
      max-width: 1360px;
      width: 100%;
      margin: 0 auto;
      padding-left: 40px;
      padding-right: 40px; }
    .l-wrap-1460 {
      max-width: 1560px;
      width: 100%;
      margin: 0 auto;
      padding-left: 40px;
      padding-right: 40px; }
  /* ---------------------------
l-secType
--------------------------- */
  .l-secType01 {
    padding-top: 80px;
    padding-bottom: 80px; }
  .l-secType02 {
    padding-top: 80px;
    padding-bottom: 80px; }
  /* ---------------------------
btn
--------------------------- */
  .m-btn01 {
    padding: 23px 14px;
    font-size: 1.1rem; }
    .m-btn01 .ico {
      width: 30px;
      margin-right: 15px; }
    .m-btn01.size-220pc {
      width: 220px; }
    .m-btn01.arrow-r {
      padding-right: 25px; }
    .m-btn01.arrow-l {
      padding-left: 25px; }
    .m-btn01.is-smallPadding {
      padding: 9px 6px;
      border-radius: 4px; }
    .m-btn01 .ico {
      width: 30px;
      margin-right: 10px; }
  .m-btn02 {
    padding: 19px 14px; }
    .m-btn02 .ico {
      width: 30px;
      margin-right: 15px; }
    .m-btn02.size-220pc {
      width: 220px; }
    .m-btn02.arrow-r {
      padding-right: 25px; }
    .m-btn02.arrow-l {
      padding-left: 25px; }
    .m-btn02.is-smallPadding {
      padding: 7px 6px; }
    .m-btn02 .ico {
      width: 30px;
      margin-right: 10px; }
  /* ---------------------------
btns1col
--------------------------- */
  .m-btns1col-item {
    width: 560px; }
  /* ---------------------------
m-cols01
--------------------------- */
  .m-cols01-clear {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between; }
  .m-cols01-col1 {
    width: 25%; }
  .m-cols01-col2 {
    width: 70%; }
  /* ---------------------------
m-gnav
--------------------------- */
  .m-gnav {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1; }
    .m-gnav-links {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      -webkit-box-pack: end;
      -ms-flex-pack: end;
      justify-content: flex-end;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center; }
      .m-gnav-links-item {
        margin-left: 1em;
        font-size: 0.8rem; }
        .m-gnav-links-item a {
          border-bottom: 2px solid transparent;
          display: block;
          padding-bottom: 2px; }
        .m-gnav-links-item a:hover {
          opacity: 1;
          border-bottom-color: #767d84; }
        .m-gnav-links-item .en {
          display: none; }
        .m-gnav-links-item-hoveronly {
          position: fixed;
          top: 70px;
          left: 0;
          background: #767D84;
          width: 100%;
          height: 80px;
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-align: center;
          -ms-flex-align: center;
          align-items: center;
          -webkit-box-pack: end;
          -ms-flex-pack: end;
          justify-content: flex-end;
          padding-right: 20px;
          opacity: 0; }
          .m-gnav-links-item-hoveronly.on {
            opacity: 1;
            -webkit-transition: 1s;
            -o-transition: 1s;
            transition: 1s;
            -webkit-transform: translateY(0px);
            -ms-transform: translateY(0px);
            transform: translateY(0px); }
          .m-gnav-links-item-hoveronly-list-item {
            position: relative;
            margin-right: 80px; }
            .m-gnav-links-item-hoveronly-list-item:before {
              content: "";
              width: 4px;
              height: 1px;
              background-color: #FFF;
              position: absolute;
              top: 10px;
              left: -23px; }
            .m-gnav-links-item-hoveronly-list-item a {
              color: #FFF; }
              .m-gnav-links-item-hoveronly-list-item a:hover {
                text-decoration: underline; }
    .m-gnav-btn {
      display: none; }
      .m-gnav-btn-lines {
        width: 31px;
        height: 50px; }
        .m-gnav-btn-lines-item {
          height: 3px; }
    .m-gnav-contact {
      display: none; }
    .m-gnav-contact-blue {
      background: #7F9FB5;
      padding: 8px 25px 0px;
      border-radius: 30px;
      margin-top: -4px; }
      .m-gnav-contact-blue a {
        color: #FFF; }
      .m-gnav-contact-blue:hover {
        border-bottom: none;
        opacity: 0.7; }
      .m-gnav-contact-blue a:hover {
        border-bottom: none;
        opacity: 0.7;
        border-bottom: 2px solid transparent; }
    .m-gnav-sp {
      display: none; }
  /* ---------------------------
h
--------------------------- */
  .m-h01 .en {
    font-size: 3.5rem; }
  .m-h02 {
    font-size: 1.5rem; }
  .m-mv {
    padding-top: 220px;
    padding-bottom: 50px; }
    .m-mv-clear {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between; }
    .m-mv-col1 {
      width: 32%; }
    .m-mv-txt01 {
      font-size: 1.8rem; }
    .m-mv-h {
      margin-bottom: 15px; }
      .m-mv-h .en {
        margin-bottom: 30px; }
    .m-mv-txt02 {
      font-size: 2rem; }
    .m-mv-txt03 {
      font-size: 1.2rem; }
      .m-mv-txt03 span {
        font-size: 1rem; }
    .m-mv-col2 {
      width: 60%; }
      .m-mv-col2-frame01, .m-mv-col2-frame02 {
        width: 76px;
        height: 76px;
        border-left: 8px solid #fff;
        border-top: 8px solid #fff;
        position: absolute; }
      .m-mv-col2-frame01 {
        left: 0;
        top: 0; }
      .m-mv-col2-frame02 {
        right: 0;
        bottom: 0;
        -webkit-transform: scale(-1);
        -ms-transform: scale(-1);
        transform: scale(-1); }
    .m-mv-btn {
      width: 207px;
      right: 42px;
      bottom: 15px; }
    .m-mv-img {
      position: relative;
      top: 30px; }
      .m-mv-img img {
        width: 113%;
        max-width: 113%;
        margin-left: -8%; }
    .m-mv-scroll-line {
      height: 60px; }
    .m-mv-scroll-txt {
      font-size: 1.5rem; }
  .m-furusato-column {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between; }
  .m-furusato-column-l {
    width: 48%; }
  .m-furusato-column-r {
    width: 69%; }
  .m-furusato-column-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end; }
  .m-furusato-column-list-item {
    margin-right: 10px; }
  .m-concept {
    padding: 150px 0; }
    .m-concept-lead {
      font-size: 3rem;
      margin-bottom: 1em; }
    .m-concept-txt {
      text-align: center; }
  .m-features {
    padding-top: 120px;
    padding-bottom: 400px; }
    .m-features.is-02 {
      padding-bottom: 200px; }
    .m-features-h {
      margin-bottom: 140px; }
      .is-02 .m-features-h {
        margin-bottom: 440px; }
      .m-features-h .en {
        font-size: 2.3rem; }
      .m-features-h .num {
        font-size: 3.5rem; }
    .m-features-h02 {
      font-size: 3.5rem; }
      .is-01 .m-features-h02 {
        margin-bottom: 100px;
        text-align: center; }
      .is-02 .m-features-h02 {
        text-align: right; }
      .is-03 .m-features-h02 {
        margin-bottom: 0.6em; }
      .is-04 .m-features-h02 {
        margin-bottom: 0.6em;
        text-align: right; }
    .m-features-txt {
      font-size: 1.25rem; }
      .is-01 .m-features-txt {
        max-width: 750px;
        margin: 0 auto; }
      .is-02 .m-features-txt {
        text-align: right; }
      .is-04 .m-features-txt {
        text-align: right; }
    .m-features02-img {
      position: absolute;
      left: 50%;
      bottom: 0;
      width: 1563px;
      margin-left: calc(-345px - 750px);
      bottom: -120px; }
  .m-scene {
    padding-top: 70px;
    padding-bottom: 230px; }
    .m-scene-scenes-item:not(:last-child) {
      margin-bottom: 80px; }
    .m-scene-scenes-h {
      font-size: 3.5rem;
      margin-bottom: 20px; }
    .m-scene-scenes-clear {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      margin-left: -40px;
      margin-right: -40px; }
      .m-scene-scenes-clear:before {
        top: -28px;
        width: 63%;
        height: 100%; }
      .m-scene-scenes-item:nth-child(2n+1) .m-scene-scenes-clear:before {
        right: 0; }
      .m-scene-scenes-item:nth-child(2n) .m-scene-scenes-clear {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse; }
        .m-scene-scenes-item:nth-child(2n) .m-scene-scenes-clear:before {
          left: 0; }
    .m-scene-scenes-img {
      width: 65%; }
    .m-scene-scenes-txts {
      width: 55%; }
      .m-scene-scenes-item:nth-child(2n+1) .m-scene-scenes-txts {
        margin-left: -5%; }
      .m-scene-scenes-item:nth-child(2n) .m-scene-scenes-txts {
        margin-right: -5%; }
    .m-scene-scenes-label {
      font-size: 2rem;
      padding: 40px; }
  .m-before {
    padding: 80px 0; }
    .m-before-title {
      font-size: 1.4rem; }
    .m-before-befores {
      margin-bottom: 50px; }
      .m-before-befores-head {
        padding: 20px 30px; }
        .m-before-befores-head .num {
          font-size: 2rem; }
        .m-before-befores-head .label {
          font-size: 1.3rem; }
      .m-before-befores-content {
        padding: 20px 30px; }
  .m-app {
    padding: 80px 0; }
    .m-app-h02 {
      font-size: 1.5rem; }
    .m-app-lead {
      text-align: center; }
    .m-app-slide-ctrl {
      display: none; }
    .m-app-imgs {
      width: 940px;
      margin: 0 auto 40px; }
      .m-app-imgs-item {
        width: 31%; }
        .m-app-imgs-item:not(:nth-child(3n)) {
          margin-right: 3%; }
    .m-app-attention {
      padding: 25px 80px;
      text-align: center; }
  .m-photo-list .slick-prev {
    width: 40px;
    height: 40px;
    top: 118%;
    left: 250px;
    z-index: 1; }
  .m-photo-list .slick-next {
    width: 40px;
    height: 40px;
    top: 118%;
    right: 250px; }
  .m-photo-list-num {
    font-size: 2rem;
    width: 180px;
    height: 55px;
    margin: 0 auto 30px; }
  .m-product {
    padding: 80px 0;
    background: #f5f5f5; }
    .m-product-in {
      background: #fff;
      padding: 60px 90px; }
    .m-product-clear {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
      flex-direction: row-reverse; }
    .m-product-col1 {
      width: 56%; }
    .m-product-table tr:nth-child(2n+1) th, .m-product-table tr:nth-child(2n+1) td {
      background: #e8edef; }
    .m-product-table th, .m-product-table td {
      padding: 8px 18px;
      vertical-align: top; }
    .m-product-table th {
      width: 40%;
      padding-right: 1em; }
    .m-product-openBtn {
      padding: 20px; }
      .m-product-openBtn:before {
        height: 160px; }
    .m-product-col2-in {
      width: 335px; }
      .m-product-col2-in .slick-prev {
        left: 90px;
        bottom: -3px;
        top: auto; }
      .m-product-col2-in .slick-next {
        right: 90px;
        bottom: -3px;
        top: auto; }
  .m-company {
    padding: 80px 0; }
    .m-company-lead {
      font-size: 2rem; }
      .m-company-lead:before, .m-company-lead:after {
        width: 76px;
        height: 76px;
        border-left: 8px solid #fff;
        border-top: 8px solid #fff; }
    .m-company-overview {
      padding: 70px 90px;
      margin-bottom: 70px; }
    .m-company-table {
      width: 100%; }
      .m-company-table th, .m-company-table td {
        border-bottom: 1px solid #e2e1dc;
        padding: 14px 0;
        vertical-align: top; }
      .m-company-table th {
        font-weight: bold;
        padding-right: 2em;
        white-space: nowrap; }
    .m-company-product-h {
      font-size: 1.6rem; }
    .m-company-productSec {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      padding: 70px 90px; }
      .m-company-productSec-col1 {
        width: 45%; }
      .m-company-productSec-h {
        font-size: 1.6rem; }
      .m-company-productSec-col2 {
        width: 50%; }
    .m-company-feature-h {
      font-size: 1.3rem; }
    .m-company-feature-btn {
      font-size: 1.2rem; }
  .m-patient {
    padding: 70px 0; }
    .m-patient-h {
      font-size: 1.6rem; }
    .m-patient-map {
      margin-top: -70px; }
  /* ---------------------------
m-items
--------------------------- */
  .m-items.is-fdrr-pc {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse; }
  .m-items.is-w800-pc {
    width: 800px;
    max-width: 100%;
    margin: 0 auto; }
  .m-items.col-pc2 .m-items-item {
    width: 48%;
    margin-bottom: 4%; }
    .m-items.col-pc2 .m-items-item:not(:nth-child(2n)) {
      margin-right: 4%; }
  .m-items.col-pc2.is-fdrr-pc .m-items-item:nth-child(2n) {
    margin-right: 4%; }
  .m-items.col-pc2.is-fdrr-pc .m-items-item:not(:nth-child(2n)) {
    margin-right: 0; }
  .m-items.col-pc3 .m-items-item {
    width: 31%;
    margin-bottom: 3%; }
    .m-items.col-pc3 .m-items-item:not(:nth-child(3n)) {
      margin-right: 3%; }
  .m-items.col-pc4 .m-items-item {
    width: 23%;
    margin-bottom: 4%; }
    .m-items.col-pc4 .m-items-item:not(:nth-child(4n)) {
      margin-right: 2.5%; }
  .m-items.col-pc5 .m-items-item {
    width: 18%;
    margin-bottom: 4%; }
    .m-items.col-pc5 .m-items-item:not(:nth-child(5n)) {
      margin-right: 2.2%; }
  .m-items.col-pc6 .m-items-item {
    width: 14.7%;
    margin-bottom: 4%; }
    .m-items.col-pc6 .m-items-item:not(:nth-child(6n)) {
      margin-right: 2.2%; }
  .m-contiguousItems-item {
    height: 100%; }
    .m-contiguousItems.col-pc2 .m-contiguousItems-item {
      width: calc(100% / 2); }
    .m-contiguousItems.col-pc3 .m-contiguousItems-item {
      width: calc(100% / 3); }
    .m-contiguousItems.col-pc4 .m-contiguousItems-item {
      width: calc(100% / 4); }
    .m-contiguousItems.col-pc5 .m-contiguousItems-item {
      width: calc(100% / 5); }
    .m-contiguousItems.col-pc6 .m-contiguousItems-item {
      width: calc(100% / 6); }
  .pcOnly {
    display: none; }
  .spOnly {
    display: none;
    display: none; }
  #wrapper {
    margin-top: 80px; }
    #cat-home #wrapper {
      margin-top: 0; }
  .m-mainContent-in {
    max-width: 1300px;
    margin: 0 auto;
    padding-top: 1px; }
  .m-mainContent-bg01 {
    padding-bottom: 120px; }
  /* ---------------------------
m-post
--------------------------- */
  .m-post01-h {
    font-size: 1.8rem; }
  .m-post01-area a {
    padding: 30px; }
  .m-post01-area-img {
    width: 130px;
    margin-right: 30px; }
  .m-post01-area-txts {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1; }
  /* ---------------------------
m-posts
--------------------------- */
  .m-posts01 {
    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; }
    .m-posts01-item {
      width: 47%;
      margin-bottom: 80px; }
    .m-posts01-head:after {
      height: 252px; }
    .m-posts01-h {
      font-size: 1.5em; }
    .m-posts01-area-icon {
      width: 46px;
      height: 46px; }
  .m-posts02 {
    margin-bottom: 30px; }
    .m-posts02-item {
      padding: 0 10px; }
    .m-posts02-img {
      padding: 8px; }
      .m-posts02-img-in {
        height: 20vw;
        max-height: 220px; }
    .m-posts02-txts {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      padding: 24px;
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%;
      -webkit-transition: 0.2s;
      -o-transition: 0.2s;
      transition: 0.2s;
      opacity: 0;
      color: #fff;
      background: rgba(0, 0, 0, 0.5); }
      a:hover .m-posts02-txts {
        opacity: 1; }
    .m-posts02-h {
      font-size: 1.1rem;
      border-bottom: 1px solid #fff;
      padding-bottom: 1em; }
    .m-posts02-area-icon {
      width: 40px;
      height: 40px; }
  /* ---------------------------
m-form
--------------------------- */
  .m-form {
    margin: 0 auto;
    padding: 70px 0;
    background: #fff;
    border: 1px solid #e2e8ec;
    border-radius: 4px; }
    .m-form-in {
      width: 800px;
      margin: 0 auto; }
    .m-form-quick {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      padding: 50px 50px 25px;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      margin-bottom: 40px; }
      .m-form-quick-img {
        width: 50%; }
        .m-form-quick-img img {
          -webkit-transform: rotate(-6deg);
          -ms-transform: rotate(-6deg);
          transform: rotate(-6deg); }
      .m-form-quick-txts {
        width: 48%; }
      .m-form-quick-h .en {
        margin-bottom: 30px; }
        .m-form-quick-h .en img {
          width: 205px; }
      .m-form-quick-h .ja {
        font-size: 1.2rem; }
      .m-form-quick-price dd {
        font-size: 1.5rem; }
    .m-form-sec {
      padding: 70px 0; }
    .m-form-lead {
      text-align: center; }
      .m-form-lead-note {
        padding: 20px;
        margin-bottom: 40px; }
    .m-form-wrap {
      padding: 40px; }
    .m-form-h {
      font-size: 2.4rem; }
    .m-form-table01 {
      margin-bottom: 30px; }
      .m-form-table01 > tbody > tr > th, .m-form-table01 > tbody > tr > td {
        padding: 20px 0;
        vertical-align: top; }
      .m-form-table01 > tbody > tr > th {
        width: 250px;
        padding-right: 20px; }
    .m-form-privacy {
      padding: 35px;
      height: 200px;
      max-width: 800px;
      margin: 0 auto 3em;
      font-size: 0.9rem; }
    .m-form-privacyAgree {
      text-align: center; }
    .m-form-must {
      float: right; }
    .m-form-popupContent {
      padding: 40px 0; }
    .m-form-checkboxSec-h {
      font-size: 1.2rem; }
    .m-form-checkboxSec-checkboxes-item {
      width: calc(100% / 3); }
      .m-form-checkboxSec-checkboxes-item:last-child, .m-form-checkboxSec-checkboxes-item:nth-child(3n+1):nth-last-child(3) {
        border-bottom: none; }
      .m-form-checkboxSec-checkboxes-item:not(:nth-child(3n)) {
        border-right: 1px dotted #e2e1dc; }
    .m-form-checkboxSec-checkboxes-clear {
      padding: 30px; }
    .m-form-checkboxSec-checkboxes-ico {
      width: 30px;
      height: 30px;
      margin-right: 15px; }
  .m-app-mv-clear {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 80px 0 115px 0; }
  .m-app-mv-col1 {
    width: 53%; }
  .m-app-mv-col2 {
    width: 36%; }
  .m-app-mv-lead {
    margin-top: 38px; }
  .m-app-mv-h {
    font-size: 2.9rem;
    margin-top: 34px;
    line-height: 1.6; }
  .m-app-mv-txt01 {
    margin-top: 35px; }
  .m-app-mv-note01 {
    font-size: 0.8rem;
    margin-top: 30px; }
  .m-app-mv-download {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 80px; }
    .m-app-mv-download-link {
      margin-left: 30px; }
  .m-app-scene {
    padding: 90px 0 120px 0; }
    .m-app-scene-scenes-clear:nth-child(even) {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
      flex-direction: row-reverse; }
    .m-app-scene-scenes-clear:not(:first-child) {
      margin-top: 80px; }
    .m-app-scene-scenes-img {
      width: 49%; }
    .m-app-scene-scenes-txts {
      width: 40%; }
    .m-app-scene-scenes-h02 {
      margin-top: 30px; }
    .m-app-scene-scenes-txt01 {
      margin-top: 20px;
      letter-spacing: 1px;
      line-height: 2; }
  .m-app-howto-lead {
    margin-top: 40px; }
    .m-app-howto-lead br {
      display: none; }
  .m-app-howto-clear {
    margin-top: 70px; }
  .m-app-howto-main {
    width: calc(100% - 185px); }
    .m-app-howto-main-txts {
      width: 40%;
      margin-right: auto;
      margin-top: 65px; }
    .m-app-howto-main-h02 {
      font-size: 1.9rem;
      margin-top: 38px; }
    .m-app-howto-main-txt01 p {
      margin-top: 35px;
      line-height: 1.6; }
    .m-app-howto-main-img {
      width: auto; }
      .m-app-howto-main-img.m-position {
        position: relative;
        right: -30px; }
  .m-app-function {
    padding: 70px 0px 88px; }
  .m-app-function-h {
    font-size: 2rem;
    margin-bottom: 55px; }
  .m-app-function-functions {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 0 28px; }
  .m-app-function-functions-item {
    width: 33%;
    max-width: 300px; }
  .m-app-function-functions-h {
    font-size: 1.2rem;
    margin: 0 auto 40px; }
  .m-app-function-functions-img {
    margin: 0 auto;
    max-width: 240px; }
  .m-app-download-clear {
    padding: 0 0 0 140px;
    min-height: 183px; }
  .m-app-download-col2-item {
    margin-right: 37px; }
    .m-app-download-col2-item span {
      display: none; }
  .m-app-quick {
    padding: 77px 0 91px; }
  .m-app-quick-clear {
    padding: 68px 20px 35px 75px; }
  .m-app-quick-clear-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 60px; }
  .m-app-quick-col1 {
    width: 70%;
    max-width: 366px; }
  .m-app-quick-txt {
    font-size: 2.3rem;
    line-height: 55px;
    margin-bottom: 12px; }
  .m-app-quick-h {
    max-width: 320px;
    margin-bottom: 36px; }
  .m-app-quick-h02 {
    font-size: 1.7rem; }
  .m-app-quick-col2 .pc-Only {
    display: block; }
  .m-app-quick-col2 .sp-Only {
    display: none; }
  .m-app-quick-links {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 8px 20px; }
  .m-app-quick-links-col1 {
    max-width: 358px;
    margin-right: 40px; }
    .m-app-quick-links-col1 a {
      width: 100%;
      height: 70px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      border: 1px solid #88959E;
      font-size: 1.1rem;
      position: relative; }
      .m-app-quick-links-col1 a:after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-left: 2px solid #c1c0bc;
        border-bottom: 2px solid #c1c0bc;
        -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        transform: rotate(-130deg);
        cursor: pointer;
        right: 23px; }
  .m-app-quick-links-col2 {
    max-width: 358px;
    margin-right: 40px;
    background: #88959E; }
    .m-app-quick-links-col2 a {
      width: 100%;
      height: 70px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      font-size: 1.1rem;
      position: relative;
      color: #FFF; }
      .m-app-quick-links-col2 a:after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-left: 2px solid #FFF;
        border-bottom: 2px solid #FFF;
        -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        transform: rotate(-130deg);
        cursor: pointer;
        right: 23px; }
  .m-app-bread-list {
    height: 46px; }
  /* ---------------------------
input
--------------------------- */
  .u-input {
    padding: 13px; }
    .u-input.size-m {
      width: 230px; }
    .u-input.padding-s {
      padding: 7px; }
    .u-input-radio01-clear {
      padding: 10px 0; }
    .u-input-radio01-ico {
      width: 30px;
      height: 30px;
      margin-right: 15px; }
  .u-input02 {
    padding: 13px; }
    .u-input02.size-m {
      width: 230px; }
    .u-input02.padding-s {
      padding: 7px; }
  /* ---------------------------
m
--------------------------- */
  /* align */
  /* margin */
  .u-mt-2xs {
    margin-top: 5px !important; }
  .u-mt-xs {
    margin-top: 10px !important; }
  .u-mt-s {
    margin-top: 20px !important; }
  .u-mt {
    margin-top: 30px !important; }
  .u-mt-l {
    margin-top: 40px !important; }
  .u-mt-xl {
    margin-top: 60px !important; }
  .u-mt-2xl {
    margin-top: 80px !important; }
  .u-mt-3xl {
    margin-top: 100px !important; }
  .u-mb-2xs {
    margin-bottom: 5px !important; }
  .u-mb-xs {
    margin-bottom: 10px !important; }
  .u-mb-s {
    margin-bottom: 20px !important; }
  .u-mb {
    margin-bottom: 30px !important; }
  .u-mb-l {
    margin-bottom: 40px !important; }
  .u-mb-xl {
    margin-bottom: 60px !important; }
  .u-mb-2xl {
    margin-bottom: 80px !important; }
  .u-mb-3xl {
    margin-bottom: 100px !important; }
  .u-ml-1em {
    margin-left: 1em !important; }
  .u-mr-1em {
    margin-right: 1em !important; }
  /* padding */
  .u-pt-2xs {
    padding-top: 5px !important; }
  .u-pt-xs {
    padding-top: 10px !important; }
  .u-pt-s {
    padding-top: 20px !important; }
  .u-pt {
    padding-top: 30px !important; }
  .u-pt-l {
    padding-top: 40px !important; }
  .u-pt-xl {
    padding-top: 60px !important; }
  .u-pt-2xl {
    padding-top: 80px !important; }
  .u-pt-3xl {
    padding-top: 100px !important; }
  .u-pb-2xs {
    padding-bottom: 5px !important; }
  .u-pb-xs {
    padding-bottom: 10px !important; }
  .u-pb-s {
    padding-bottom: 20px !important; }
  .u-pb {
    padding-bottom: 30px !important; }
  .u-pb-l {
    padding-bottom: 40px !important; }
  .u-pb-xl {
    padding-bottom: 60px !important; }
  .u-pb-2xl {
    padding-bottom: 80px !important; }
  .u-pb-3xl {
    padding-bottom: 100px !important; }
  .u-p-xs {
    padding: 10px !important; }
  .u-p-s {
    padding: 20px !important; }
  .u-p {
    padding: 30px !important; }
  .u-p-l {
    padding: 40px !important; }
  .u-p-xl {
    padding: 60px !important; }
  /* ---------------------------
link
--------------------------- */
  /* ---------------------------
list
--------------------------- */
  .u-list02 {
    padding: 22px; }
    .u-list02-item {
      font-size: 1.3rem; }
      .u-list02-item:not(:last-child) {
        padding-bottom: 22px;
        margin-bottom: 22px; }
  /* ---------------------------
u-wysiwyg
--------------------------- */
  .u-wysiwyg h1 {
    margin-bottom: 30px; }
  .u-wysiwyg h2 {
    font-size: 1.34rem; }
  .u-wysiwyg h3 {
    font-size: 1.2rem; }
  .u-wysiwyg h4, .u-wysiwyg h5, .u-wysiwyg h6 {
    font-size: 1.2rem; }
  .u-wysiwyg blockquote {
    padding: 28px 30px;
    margin-bottom: 40px; }
  .u-wysiwyg .alignright {
    margin-left: 40px;
    margin-bottom: 40px; }
  .u-wysiwyg .alignleft {
    margin-right: 40px;
    margin-bottom: 40px; }
  .u-text-10 {
    font-size: 0.6rem;
    line-height: 1.7; }
  .u-text-11 {
    font-size: 0.7rem;
    line-height: 1.7; }
  .u-text-12 {
    font-size: 0.8rem;
    line-height: 1.7; }
  .u-text-13 {
    font-size: 0.85rem;
    line-height: 1.6; }
  .u-text-14 {
    font-size: 0.9rem;
    line-height: 1.6; }
  .u-text-16 {
    font-size: 1rem;
    line-height: 1.6; }
  .u-text-18 {
    font-size: 1.1rem;
    line-height: 1.6; }
  .u-text-20 {
    font-size: 1.3rem;
    line-height: 1.5; }
  .u-text-22 {
    font-size: 1.4rem;
    line-height: 1.5; }
  .u-text-24 {
    font-size: 1.5rem;
    line-height: 1.4; }
  .u-text-28 {
    font-size: 1.7rem;
    line-height: 1.4; }
  .u-text-30 {
    font-size: 1.9rem;
    line-height: 1.4; }
  .u-text-32 {
    font-size: 2rem;
    line-height: 1.3; }
  /* ---------------------------
bordered
--------------------------- */
  .u-bordered01 {
    padding: 40px; }
  /* ---------------------------
fixedAfterScroll
--------------------------- */
  .u-fixedAfterScroll.fixed {
    right: 20px;
    bottom: 20px;
    width: 300px; }
  /* ---------------------------
folding
--------------------------- */
  /* ---------------------------
u-table
--------------------------- */ }

@media screen and (max-width: 767px) {
  /* ==========================================================================
   SP
   ========================================================================== */
  .wrapin-sp {
    padding: 0 20px; }
  /* ---------------------------
module
--------------------------- */
  html {
    font-size: 14px; }
  /* ---------------------------
l-header
--------------------------- */
  .l-header {
    height: 60px; }
    .l-header-clear {
      height: 60px; }
    .l-header-logo img {
      width: 115px; }
    .l-header-col1 {
      line-height: 1; }
    .l-header-reserve .ico {
      width: 30px; }
    .l-header-reserve a {
      padding-top: 10px;
      width: 76px;
      height: 76px;
      font-size: 0.8rem; }
  /* ---------------------------
l-footer
--------------------------- */
  .l-footer-clear {
    padding: 30px 15px !important; }
    .l-footer-clear-bottom {
      padding: 27px 0 30px; }
      .l-footer-clear-bottom-flex {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin-bottom: 30px; }
      .l-footer-clear-bottom-flex2 {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin-bottom: 30px; }
      .l-footer-clear-bottom-list {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
        .l-footer-clear-bottom-list li {
          position: relative;
          padding-left: 24px;
          margin-bottom: 10px;
          width: 100%; }
          .l-footer-clear-bottom-list li a {
            color: #FFF;
            position: relative; }
            .l-footer-clear-bottom-list li a:before {
              content: "";
              width: 4px;
              height: 1px;
              background-color: #FFF;
              position: absolute;
              top: 6px;
              left: -18px; }
      .l-footer-clear-bottom-list2 li {
        position: relative;
        padding-left: 24px;
        margin-bottom: 10px; }
        .l-footer-clear-bottom-list2 li a {
          color: #FFF;
          position: relative; }
          .l-footer-clear-bottom-list2 li a:before {
            content: "";
            width: 4px;
            height: 1px;
            background-color: #FFF;
            position: absolute;
            top: 6px;
            left: -18px; }
  .l-footer-col1 {
    margin-bottom: 30px; }
  .l-footer-logo .en {
    display: block;
    margin-bottom: 1em; }
    .l-footer-logo .en img {
      width: 120px; }
  .l-footer-logo .ja {
    display: block;
    font-size: 0.85rem; }
  .l-footer-address {
    font-size: 0.9rem; }
  .l-footer-contact a {
    padding: 20px; }
  .l-footer-contact .m-company-feature-btn span {
    position: absolute;
    left: 20px;
    top: 14px; }
    .l-footer-contact .m-company-feature-btn span:after {
      content: "";
      width: 1px;
      height: 34px;
      background: #4A4F54;
      position: absolute;
      right: 15px;
      top: -5px; }
  .l-footer-contact.bg-w .m-company-feature-btn span:after {
    content: "";
    width: 1px;
    height: 34px;
    background: #4A4F54;
    position: absolute;
    right: 16px;
    top: -5px; }
  .l-footer-copyright {
    padding: 12px 0; }
  .l-footer-pagetop {
    right: 30px;
    top: -25px; }
    .l-footer-pagetop a {
      width: 50px;
      height: 50px; }
    .l-footer-pagetop img {
      width: 10px; }
  /* ---------------------------
l-post
--------------------------- */
  .l-post-wrap {
    padding: 30px 0; }
  .l-post-main {
    margin-bottom: 30px; }
  .l-post-side-sec:not(:last-child) {
    margin-bottom: 20px; }
  /* ---------------------------
l-wrap
--------------------------- */
  .l-wrap-sp {
    padding: 0 20px; }
  /* ---------------------------
l-secType
--------------------------- */
  .l-secType01 {
    padding-top: 20px;
    padding-bottom: 20px; }
  .l-secType02 {
    padding-top: 24px;
    padding-bottom: 24px; }
  /* ---------------------------
btn
--------------------------- */
  .m-btn01 {
    padding: 19px 6px; }
    .m-btn01 .ico {
      width: 26px;
      margin-right: 10px; }
    .m-btn01.size-220sp {
      width: 220px;
      margin: 0 auto; }
    .m-btn01.arrow-r:before, .m-btn01.arrow-l:before {
      margin-top: -4px;
      width: 8px;
      height: 8px; }
    .m-btn01.arrow-r {
      padding-right: 25px; }
    .m-btn01.arrow-l {
      padding-left: 25px; }
    .m-btn01.is-smallPadding, .m-btn01.is-smallPaddingSp {
      padding: 9px 6px;
      border-radius: 4px; }
  .m-btn02 {
    padding: 9px 6px; }
    .m-btn02 .ico {
      width: 26px;
      margin-right: 10px; }
    .m-btn02.size-220sp {
      width: 220px;
      margin: 0 auto; }
    .m-btn02.arrow-r:before, .m-btn02.arrow-l:before {
      margin-top: -4px;
      width: 8px;
      height: 8px; }
    .m-btn02.arrow-r {
      padding-right: 25px; }
    .m-btn02.arrow-l {
      padding-left: 25px; }
    .m-btn02.is-smallPadding, .m-btn02.is-smallPaddingSp {
      padding: 5px 10px;
      font-size: 0.85rem;
      border-width: 1px !important; }
      .m-btn02.is-smallPadding .ico, .m-btn02.is-smallPaddingSp .ico {
        width: 16px;
        margin-right: 7px; }
  /* ---------------------------
btns1col
--------------------------- */
  .m-btns1col-item {
    width: 100%; }
  /* ---------------------------
m-cols01
--------------------------- */
  .m-cols01-col1 {
    margin-bottom: 30px; }
  /* ---------------------------
m-gnav
--------------------------- */
  .m-gnav {
    display: none; }
    .m-gnav-links {
      margin-bottom: 30px; }
      .m-gnav-links-item {
        border-bottom: 1px solid #e2e1dc;
        padding: 11px 0; }
        .m-gnav-links-item .en {
          font-size: 1.5rem;
          display: block;
          font-weight: 200; }
        .m-gnav-links-item .ja {
          display: block;
          color: #7f9fb5;
          font-size: 0.85rem; }
          .m-gnav-links-item .ja:before {
            content: "―";
            margin-right: 0.5em; }
        .m-gnav-links-item-hoveronly {
          display: none; }
    .m-gnav-btn {
      cursor: pointer;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      width: 50px;
      height: 50px; }
      .m-gnav-btn-lines {
        width: 27px;
        height: 50px; }
        .m-gnav-btn-lines-item {
          height: 2px; }
    .m-gnav-sp {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      position: fixed;
      left: 0;
      top: 60px;
      width: 100vw;
      height: calc(100vh - 60px);
      background: #fff;
      -webkit-transform: translateX(-100vw);
      -ms-transform: translateX(-100vw);
      transform: translateX(-100vw);
      padding: 35px 20px;
      -webkit-transition: 0.5s;
      -o-transition: 0.5s;
      transition: 0.5s;
      z-index: 9;
      pointer-events: none;
      opacity: 0;
      overflow-y: auto; }
      .m-gnav-sp.on {
        pointer-events: auto;
        opacity: 1;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0); }
      .m-gnav-sp-list-item-title {
        font-size: 18px;
        font-weight: bold;
        margin-bottom: 25px;
        position: relative; }
        .m-gnav-sp-list-item-title a {
          position: relative; }
          .m-gnav-sp-list-item-title a:after {
            content: "";
            display: block;
            position: absolute;
            /* left: 0; */
            right: -45px;
            top: 2px;
            width: 15px;
            height: 15px;
            background: url(../img/base/ico_arrow_01_c0.svg) center no-repeat;
            background-size: contain; }
      .m-gnav-sp-list-item-sub {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
      .m-gnav-sp-list-item-sub-link {
        margin-bottom: 26px;
        width: 48%;
        font-size: 12px; }
        .m-gnav-sp-list-item-sub-link a {
          color: #7F9FB5;
          padding-left: 26px;
          position: relative; }
          .m-gnav-sp-list-item-sub-link a:before {
            content: "";
            width: 4px;
            height: 1px;
            background-color: #7F9FB5;
            position: absolute;
            top: 6px;
            left: 0px; }
  /* ---------------------------
h
--------------------------- */
  .m-h01 .en {
    font-size: 2rem; }
  .m-h02 {
    font-size: 1.2rem; }
  .m-mv {
    padding: 80px 34px 40px; }
    .m-mv-col1 {
      position: relative;
      z-index: 1; }
    .m-mv-txt01 {
      font-size: 1.2rem;
      text-align: center;
      letter-spacing: 0.1em; }
    .m-mv-h {
      margin-bottom: 30px;
      width: 67%; }
      .m-mv-h .en {
        margin-bottom: 10px; }
    .m-mv-txt02 {
      font-size: 1.3rem; }
    .m-mv-txt03 {
      font-size: 1rem; }
      .m-mv-txt03 span {
        font-size: 0.8rem; }
    .m-mv-col2-frame01, .m-mv-col2-frame02 {
      display: none; }
    .m-mv-btn {
      width: 130px;
      right: 0;
      bottom: 20px; }
    .m-mv-img {
      margin-top: -8vw; }
      .m-mv-img img {
        max-width: 161%;
        margin-left: -20%;
        -webkit-transform: rotate(-16deg);
        -ms-transform: rotate(-16deg);
        transform: rotate(-16deg); }
    .m-mv-scroll {
      margin-top: -47px; }
      .m-mv-scroll-line {
        height: 48px; }
      .m-mv-scroll-txt {
        font-size: 1.4rem; }
  .m-furusato-column-txt {
    margin-bottom: 20px; }
  .m-furusato-column-list-item {
    margin-bottom: 10px; }
    .m-furusato-column-list-item a {
      width: 100%;
      text-align: center;
      display: block; }
  .m-concept {
    padding: 30px 0; }
    .m-concept-lead {
      font-size: 1.4rem;
      line-height: 1.8;
      margin-bottom: 2em; }
    .m-concept-txt br {
      display: none; }
  .m-features {
    padding-top: 50px;
    padding-bottom: 250px; }
    .m-features.is-02 {
      padding-bottom: 40px; }
    .m-features.is-03 {
      padding-bottom: 90px; }
    .m-features.is-04 {
      padding-bottom: 310px; }
    .m-features-h {
      margin-bottom: 30px; }
      .m-features-h .en {
        font-size: 1.8rem; }
      .m-features-h .num {
        font-size: 1.8rem; }
    .m-features-h02 {
      font-size: 1.8rem; }
      .is-01 .m-features-h02 {
        margin-bottom: 30px;
        text-align: center; }
      .is-02 .m-features-h02 {
        margin-top: -60px;
        margin-bottom: 30px;
        text-align: center; }
      .is-03 .m-features-h02 {
        margin-top: 270px;
        margin-bottom: 30px; }
      .is-04 .m-features-h02 {
        margin-bottom: 0.6em; }
    .m-features02-img {
      width: 130vw;
      margin-left: calc(-50vw); }
  .m-scene {
    padding-top: 30px;
    padding-bottom: 110px; }
    .m-scene-scenes-item:not(:last-child) {
      margin-bottom: 40px; }
    .m-scene-scenes-h {
      font-size: 2.2rem;
      margin-bottom: 15px; }
    .m-scene-scenes-clear:before {
      top: -20px;
      width: calc(100% + 20px);
      height: calc(100% - 20px); }
    .m-scene-scenes-item:nth-child(2n+1) .m-scene-scenes-clear:before {
      right: -20px; }
    .m-scene-scenes-item:nth-child(2n) .m-scene-scenes-clear {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
      flex-direction: row-reverse; }
      .m-scene-scenes-item:nth-child(2n) .m-scene-scenes-clear:before {
        left: -20px; }
    .m-scene-scenes-item:nth-child(2n+1) .m-scene-scenes-img {
      margin-left: -20px; }
    .m-scene-scenes-item:nth-child(2n) .m-scene-scenes-img {
      margin-right: -20px; }
    .m-scene-scenes-txts {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex; }
      .m-scene-scenes-item:nth-child(2n+1) .m-scene-scenes-txts {
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end;
        margin-right: -20px; }
      .m-scene-scenes-item:nth-child(2n) .m-scene-scenes-txts {
        margin-left: -20px; }
    .m-scene-scenes-label {
      font-size: 1.1rem;
      padding: 20px;
      margin-top: -3em;
      position: relative; }
  .m-before {
    padding: 40px 0; }
    .m-before-befores {
      margin-bottom: 25px; }
      .m-before-befores-head {
        padding: 10px 15px; }
        .m-before-befores-head .num {
          font-size: 1.4rem; }
        .m-before-befores-head-col1 {
          padding-right: 20px; }
      .m-before-befores-content {
        padding: 10px 15px; }
  .m-app {
    padding: 40px 0; }
    .m-app-h02 {
      font-size: 1.2rem; }
    .m-app-slide-ctrl {
      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;
      margin-bottom: 30px; }
    .m-app-slide-btn {
      width: 12px;
      margin: 0 20px; }
      .m-app-slide-btn.is-prev {
        -webkit-transform: scaleX(-1);
        -ms-transform: scaleX(-1);
        transform: scaleX(-1); }
    .m-app-imgs {
      margin-bottom: 20px; }
      .m-app-imgs-item {
        width: 50vw; }
        .m-app-imgs-item:not(:last-child) {
          margin-right: 20px; }
    .m-app-attention {
      padding: 10px; }
      .m-app-attention br {
        display: none; }
  .m-photo-list-num .slick-counter2 {
    font-size: 1.2rem; }
  .m-photo-list .slick-prev {
    left: 27%;
    top: 122%; }
  .m-photo-list .slick-next {
    right: 27%;
    top: 122%; }
  .m-photo-list-num {
    font-size: 1.4rem;
    width: 90px;
    height: 30px;
    margin: 0 auto 35px; }
  .m-product {
    padding: 40px 0; }
    .m-product-table, .m-product-table tbody, .m-product-table tr, .m-product-table th, .m-product-table td {
      display: block; }
    .m-product-table tr {
      padding: 12px 18px; }
      .m-product-table tr:nth-child(2n+1) {
        background: #e8edef; }
    .m-product-openBtn {
      padding: 20px;
      padding-top: 10px; }
      .m-product-openBtn:before {
        height: 100px; }
    .m-product-col2 {
      margin-bottom: 20px; }
      .m-product-col2-in {
        margin: 0 auto; }
        .m-product-col2-in .slick-prev {
          left: 27%;
          bottom: -5px;
          top: auto; }
        .m-product-col2-in .slick-next {
          right: 27%;
          bottom: -5px;
          top: auto; }
  .m-company {
    padding: 40px 0; }
    .m-company-lead {
      font-size: 1.3rem; }
      .m-company-lead:before, .m-company-lead:after {
        display: none;
        width: 38px;
        height: 38px;
        border-left: 4px solid #fff;
        border-top: 4px solid #fff; }
    .m-company-overview {
      padding: 30px 26px;
      margin-bottom: 30px; }
    .m-company-table, .m-company-table tbody, .m-company-table tr, .m-company-table th, .m-company-table td {
      display: block; }
    .m-company-table tr {
      margin-bottom: 1.5em; }
    .m-company-table th {
      font-weight: bold;
      color: #7f9fb5;
      margin-bottom: 0.5em; }
    .m-company-product-h {
      font-size: 1.3rem; }
    .m-company-productSec {
      padding: 20px 20px; }
      .m-company-productSec .u-list01 {
        display: none; }
      .m-company-productSec-col1 {
        margin-bottom: 30px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse; }
      .m-company-productSec-head {
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: 1; }
      .m-company-productSec-h {
        font-size: 1.3rem; }
      .m-company-productSec-img {
        width: 38%;
        margin-right: 5%; }
    .m-company-feature-h {
      font-size: 1.2rem;
      display: none; }
  .m-patient {
    padding: 40px 0; }
    .m-patient-h {
      font-size: 1.3rem; }
    .m-patient-lead {
      margin-bottom: 1em; }
    .m-patient-map {
      width: 110%;
      margin-left: -5%; }
  /* ---------------------------
m-items
--------------------------- */
  .m-items.col-sp1 .m-items-item {
    width: 100%; }
    .m-items.col-sp1 .m-items-item:not(:last-child) {
      margin-bottom: 10px; }
  .m-items.col-sp2 .m-items-item {
    width: 48%;
    margin-bottom: 4%; }
    .m-items.col-sp2 .m-items-item:not(:nth-child(2n)) {
      margin-right: 4%; }
  .m-items.col-sp3 .m-items-item {
    width: 31%;
    margin-bottom: 4%; }
    .m-items.col-sp3 .m-items-item:not(:nth-child(3n)) {
      margin-right: 3%; }
  .m-items.col-sp4 .m-items-item {
    width: 23%;
    margin-bottom: 4%; }
    .m-items.col-sp4 .m-items-item:not(:nth-child(4n)) {
      margin-right: 2.5%; }
  .m-items.col-sp5 .m-items-item {
    width: 18%;
    margin-bottom: 4%; }
    .m-items.col-sp5 .m-items-item:not(:nth-child(5n)) {
      margin-right: 2.2%; }
  .m-contiguousItems.col-sp1 .m-contiguousItems-item {
    width: calc(100% / 1); }
  .m-contiguousItems.col-sp2 .m-contiguousItems-item {
    width: calc(100% / 2); }
  .m-contiguousItems.col-sp3 .m-contiguousItems-item {
    width: calc(100% / 3); }
  .m-contiguousItems.col-sp4 .m-contiguousItems-item {
    width: calc(100% / 4); }
  .m-contiguousItems.col-sp5 .m-contiguousItems-item {
    width: calc(100% / 5); }
  .m-contiguousItems.col-sp6 .m-contiguousItems-item {
    width: calc(100% / 6); }
  .lapctbOnly {
    display: none; }
  .pcOnly {
    display: none; }
  .tbOnly {
    display: none; }
  #wrapper {
    margin-top: 60px; }
    #cat-home #wrapper {
      margin-top: 0; }
  .m-mainContent-bg01 {
    padding-bottom: 40px; }
  .m-mainContentMargin {
    height: 50px; }
  /* ---------------------------
m-post
--------------------------- */
  .m-post01-h {
    font-size: 1.4rem; }
  .m-post01-area a {
    padding: 12px; }
  .m-post01-area-img {
    width: 15%;
    margin-right: 5%; }
  .m-post01-area-txts {
    width: 80%; }
  /* ---------------------------
m-posts
--------------------------- */
  .m-posts01-item {
    margin-bottom: 40px; }
  .m-posts01-head:after {
    height: 44vw; }
  .m-posts01-h {
    font-size: 1.2rem; }
  .m-posts01-area-icon {
    width: 36px;
    height: 36px; }
  .m-posts02-item {
    padding: 0 5px; }
  .m-posts02-img {
    padding: 4px;
    margin-bottom: 10px; }
    .m-posts02-img-in {
      height: 29vw; }
  .m-posts02-h {
    font-size: 0.9rem; }
  .m-posts02-area-icon {
    width: 30px;
    height: 30px; }
  /* ---------------------------
m-form
--------------------------- */
  .m-form-quick {
    margin-bottom: 30px;
    padding: 30px 20px 20px; }
    .m-form-quick-h .en {
      margin-bottom: 30px;
      font-size: 1.1rem; }
      .m-form-quick-h .en img {
        width: 205px; }
    .m-form-quick-h .ja {
      font-size: 1.1rem; }
    .m-form-quick-price dd {
      font-size: 1.2rem; }
  .m-form-sec {
    padding: 30px 0; }
  .m-form-lead-note {
    padding: 10px 7px;
    margin-bottom: 20px; }
  .m-form-wrap {
    padding: 20px; }
  .m-form-h {
    font-size: 1.6rem; }
  .m-form-lead {
    margin-bottom: 30px; }
  .m-form-table01 {
    display: block;
    margin-bottom: 20px; }
    .m-form-table01 > tbody, .m-form-table01 > tbody > tr, .m-form-table01 > tbody > tr > th, .m-form-table01 > tbody > tr > td {
      display: block; }
    .m-form-table01 > tbody > tr {
      margin-bottom: 1em; }
    .m-form-table01 > tbody > tr > th {
      margin-bottom: 0.3em; }
  .m-form-privacy {
    padding: 10px;
    height: 150px;
    margin-bottom: 3em;
    font-size: 0.8rem; }
  .m-form-noshis-img {
    max-width: 30%; }
  .m-form-noshis-label {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1; }
  .m-form-popupContent {
    padding: 20px 0; }
  .m-form-checkboxSec-h {
    font-size: 1.1rem; }
  .m-form-checkboxSec-checkboxes-item {
    width: 50%; }
    .m-form-checkboxSec-checkboxes-item:last-child, .m-form-checkboxSec-checkboxes-item:nth-child(2n+1):nth-last-child(2) {
      border-bottom: none; }
    .m-form-checkboxSec-checkboxes-item:not(:nth-child(2n)) {
      border-right: 1px dotted #e2e1dc; }
  .m-form-checkboxSec-checkboxes-clear {
    padding: 12px 18px; }
  .m-form-checkboxSec-checkboxes-ico {
    width: 15px;
    height: 15px;
    margin-right: 10px; }
  .m-app-mv-clear {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-flow: column-reverse nowrap;
    flex-flow: column-reverse nowrap;
    padding: 48px 0; }
  .m-app-mv-col2 {
    max-width: 236px;
    margin: 0 auto; }
  .m-app-mv-lead {
    padding: 5px 23px;
    margin-top: 47px; }
  .m-app-mv-h {
    font-size: 2.2rem;
    margin-top: 17px;
    line-height: 1.7; }
  .m-app-mv-txt01 {
    margin-top: 8px; }
  .m-app-mv-note01 {
    font-size: 1rem;
    margin-top: 20px; }
  .m-app-mv-download {
    margin-top: 24px;
    padding: 0 0 0 5px; }
    .m-app-mv-download-h {
      color: #7F9FB5;
      font-family: 'MuseoModerno', Sans-Serif;
      margin-bottom: 10px; }
  .m-app-scene {
    padding: 46px 0 70px 0; }
    .m-app-scene-scenes-clear {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-flow: column nowrap;
      flex-flow: column nowrap; }
      .m-app-scene-scenes-clear:nth-child(even) {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-flow: column nowrap;
        flex-flow: column nowrap; }
      .m-app-scene-scenes-clear:not(:first-child) {
        margin-top: 39px; }
    .m-app-scene-scenes-img {
      width: 100%;
      margin-bottom: 20px; }
    .m-app-scene-scenes-h {
      border-bottom: solid 1px #7F9FB5; }
    .m-app-scene-scenes-h02 {
      margin-top: 22px; }
    .m-app-scene-scenes-txt01 {
      margin-top: 10px;
      letter-spacing: 1px;
      line-height: 1.8; }
  .m-app-howto-lead {
    margin: 27px 0 38px 0; }
  .m-app-howto-main {
    width: calc(100% - 0px); }
    .m-app-howto-main-item {
      -webkit-box-orient: vertical;
      -webkit-box-direction: reverse;
      -ms-flex-flow: column-reverse nowrap;
      flex-flow: column-reverse nowrap; }
    .m-app-howto-main-txts {
      width: 100%;
      margin-right: auto;
      margin-top: 27px;
      padding: 0 5px; }
    .m-app-howto-main-h02 {
      font-size: 1.6rem;
      margin-top: 20px; }
    .m-app-howto-main-txt01 p {
      margin-top: 18px;
      line-height: 1.6; }
    .m-app-howto-main-img {
      width: 140px;
      margin: 0 auto; }
  .m-app-function {
    padding: 54px 0px 74px; }
  .m-app-function-h {
    font-size: 1.8rem;
    margin-bottom: 46px; }
  .m-app-function-functions-item {
    width: 100%; }
  .m-app-function-functions-h {
    font-size: 1.4rem;
    margin: 0 auto 26px; }
  .m-app-function-functions-img {
    max-width: 241px;
    text-align: center;
    margin: 0 auto; }
  .m-app-download-clear {
    display: block;
    padding: 17px 0 25px; }
  .m-app-download-col1 {
    margin-bottom: 8px; }
  .m-app-download-col2 {
    -ms-flex-pack: distribute;
    justify-content: space-around; }
  .m-app-download-col2-item:nth-child(1) {
    width: 142px; }
  .m-app-download-col2-item:nth-child(2) {
    width: 176px; }
  .m-app-download-col2-item:nth-child(3) {
    display: none; }
  .m-app-download-col2-note {
    display: none; }
  .m-app-quick {
    padding: 30px 5px 30px; }
  .m-app-quick-clear {
    padding-bottom: 21px; }
  .m-app-quick-clear-flex {
    padding: 23px 27px 44px; }
  .m-app-quick-txt {
    font-size: 1.3rem;
    line-height: 31px;
    margin-bottom: 7px; }
  .m-app-quick-h {
    max-width: 212px;
    margin-bottom: 8px; }
  .m-app-quick-h02 {
    font-size: 1.1rem;
    margin-bottom: 23px; }
  .m-app-quick-col2 .pc-Only {
    display: none; }
  .m-app-quick-col2 .sp-Only {
    display: block; }
  .m-app-quick-links {
    padding: 8px 14px; }
  .m-app-quick-links-col1 a {
    width: 100%;
    height: 55px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    border: 1px solid #88959E;
    font-size: 1.1rem;
    position: relative;
    margin-bottom: 14px; }
    .m-app-quick-links-col1 a:after {
      content: "";
      position: absolute;
      width: 10px;
      height: 10px;
      border-left: 2px solid #c1c0bc;
      border-bottom: 2px solid #c1c0bc;
      -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
      transform: rotate(-130deg);
      cursor: pointer;
      right: 23px; }
  .m-app-quick-links-col2 {
    background: #88959E; }
    .m-app-quick-links-col2 a {
      width: 100%;
      height: 55px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      font-size: 1.1rem;
      position: relative;
      color: #FFF; }
      .m-app-quick-links-col2 a:after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-left: 2px solid #FFF;
        border-bottom: 2px solid #FFF;
        -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        transform: rotate(-130deg);
        cursor: pointer;
        right: 23px; }
  .m-app-bread-list {
    height: 36px; }
    .m-app-bread-list .slick-prev {
      left: 92px !important;
      top: auto !important;
      bottom: -56px !important; }
    .m-app-bread-list .slick-next {
      right: 92px !important;
      top: auto !important;
      bottom: -56px !important; }
  .slick-dots {
    left: 0;
    bottom: -48px !important; }
  /* ---------------------------
input
--------------------------- */
  .u-input {
    padding: 14px 4px;
    font-size: 0.85rem; }
    .u-input.size-m {
      width: 120px; }
    .u-input.padding-s {
      padding: 7px 3px; }
    .u-input-selectWrap {
      position: relative; }
      .u-input-selectWrap:after {
        content: "";
        font-size: 4px;
        display: block;
        border: 4px solid transparent;
        border-top: 6px solid #767d84;
        position: absolute;
        right: 6px;
        top: 50%;
        margin-top: -2px;
        pointer-events: none; }
      .u-input-selectWrap .u-input {
        overflow: hidden;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
        padding-right: 20px;
        margin-right: 0;
        margin-bottom: 0;
        padding-left: 8px; }
    .u-input-radio01-clear {
      padding: 8px; }
    .u-input-radio01-ico {
      width: 22px;
      height: 22px;
      margin-right: 10px; }
  .u-input02 {
    padding: 14px 4px;
    font-size: 0.85rem; }
    .u-input02.size-m {
      width: 120px; }
    .u-input02.padding-s {
      padding: 7px 3px; }
    .u-input02-selectWrap {
      position: relative;
      margin-right: 8px;
      margin-bottom: 8px; }
      .u-input02-selectWrap:after {
        content: "";
        font-size: 4px;
        display: block;
        border: 4px solid transparent;
        border-top: 6px solid #767d84;
        position: absolute;
        right: 6px;
        top: 50%;
        margin-top: -2px;
        pointer-events: none; }
      .u-input02-selectWrap .u-input {
        overflow: hidden;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
        padding-right: 20px;
        margin-right: 0;
        margin-bottom: 0;
        padding-left: 8px; }
  /* ---------------------------
m
--------------------------- */
  /* align */
  /* margin */
  .u-mt-2xs {
    margin-top: 5px !important; }
  .u-mt-xs {
    margin-top: 10px !important; }
  .u-mt-s {
    margin-top: 10px !important; }
  .u-mt {
    margin-top: 15px !important; }
  .u-mt-l {
    margin-top: 20px !important; }
  .u-mt-xl {
    margin-top: 25px !important; }
  .u-mt-2xl {
    margin-top: 30px !important; }
  .u-mt-3xl {
    margin-top: 30px !important; }
  .u-mb-2xs {
    margin-bottom: 5px !important; }
  .u-mb-xs {
    margin-bottom: 10px !important; }
  .u-mb-s {
    margin-bottom: 10px !important; }
  .u-mb {
    margin-bottom: 15px !important; }
  .u-mb-l {
    margin-bottom: 20px !important; }
  .u-mb-xl {
    margin-bottom: 25px !important; }
  .u-mb-2xl {
    margin-bottom: 30px !important; }
  .u-mb-3xl {
    margin-bottom: 30px !important; }
  /* padding */
  .u-pt-2xs {
    padding-top: 5px !important; }
  .u-pt-xs {
    padding-top: 10px !important; }
  .u-pt-s {
    padding-top: 10px !important; }
  .u-pt {
    padding-top: 15px !important; }
  .u-pt-l {
    padding-top: 20px !important; }
  .u-pt-xl {
    padding-top: 25px !important; }
  .u-pt-2xl {
    padding-top: 30px !important; }
  .u-pt-3xl {
    padding-top: 30px !important; }
  .u-pb-2xs {
    padding-bottom: 5px !important; }
  .u-pb-xs {
    padding-bottom: 10px !important; }
  .u-pb-s {
    padding-bottom: 10px !important; }
  .u-pb {
    padding-bottom: 15px !important; }
  .u-pb-l {
    padding-bottom: 20px !important; }
  .u-pb-xl {
    padding-bottom: 25px !important; }
  .u-pb-2xl {
    padding-bottom: 30px !important; }
  .u-pb-3xl {
    padding-bottom: 30px !important; }
  .u-p-xs {
    padding: 10px !important; }
  .u-p-s {
    padding: 10px !important; }
  .u-p {
    padding: 15px !important; }
  .u-p-l {
    padding: 20px !important; }
  .u-p-xl {
    padding: 20px !important; }
  /* ---------------------------
link
--------------------------- */
  /* ---------------------------
list
--------------------------- */
  .u-list02 {
    padding: 15px; }
    .u-list02-item {
      font-size: 1.1rem; }
      .u-list02-item:not(:last-child) {
        padding-bottom: 15px;
        margin-bottom: 15px; }
  /* ---------------------------
u-wysiwyg
--------------------------- */
  .u-wysiwyg h1 {
    margin-bottom: 30px; }
  .u-wysiwyg h2 {
    font-size: 1.24rem; }
  .u-wysiwyg h3 {
    font-size: 1.14rem; }
  .u-wysiwyg h4, .u-wysiwyg h5, .u-wysiwyg h6 {
    font-size: 1.1rem; }
  .u-wysiwyg blockquote {
    padding: 12px 15px;
    margin-bottom: 20px; }
  .u-wysiwyg .alignright {
    margin-left: 20px;
    margin-bottom: 20px; }
  .u-wysiwyg .alignleft {
    margin-right: 20px;
    margin-bottom: 20px; }
  .u-text-10 {
    font-size: 0.6rem;
    line-height: 1.7; }
  .u-text-11 {
    font-size: 0.7rem;
    line-height: 1.7; }
  .u-text-12 {
    font-size: 0.8rem;
    line-height: 1.7; }
  .u-text-13 {
    font-size: 0.85rem;
    line-height: 1.6; }
  .u-text-14 {
    font-size: 0.9rem;
    line-height: 1.6; }
  .u-text-16 {
    font-size: 1rem;
    line-height: 1.6; }
  .u-text-18 {
    font-size: 1.1rem;
    line-height: 1.6; }
  .u-text-20 {
    font-size: 1.2rem;
    line-height: 1.5; }
  .u-text-22 {
    font-size: 1.3rem;
    line-height: 1.5; }
  .u-text-24 {
    font-size: 1.35rem;
    line-height: 1.4; }
  .u-text-28 {
    font-size: 1.4rem;
    line-height: 1.4; }
  .u-text-30 {
    font-size: 1.45rem;
    line-height: 1.4; }
  .u-text-32 {
    font-size: 1.5rem;
    line-height: 1.3; }
  /* ---------------------------
bordered
--------------------------- */
  .u-bordered01 {
    padding: 18px; }
  /* ---------------------------
fixedAfterScroll
--------------------------- */
  .u-fixedAfterScroll.fixed {
    left: 0;
    bottom: 0;
    width: 100%; }
  .u-fixedAfterScroll-wrap {
    height: 48px; }
  /* ---------------------------
folding
--------------------------- */
  /* ---------------------------
u-table
--------------------------- */ }

@media screen and (min-width: 768px) and (max-width: 1253px) {
  .m-gnav-contact-blue {
    padding: 8px 8px 0px; }
  .l-header-logo {
    margin-right: 10px; }
  .l-header-col1 {
    padding-left: 25px; }
  .l-header-col2 {
    padding-right: 1em; }
  .m-gnav-links-item {
    margin-left: 1em; }
  .m-gnav-links-item a {
    font-size: 0.9rem; } }

@media screen and (max-width: 414px) {
  .m-photo-list .slick-prev {
    right: 27%;
    top: 127%; }
  .m-photo-list .slick-next {
    right: 27%;
    top: 127%; } }

@media screen and (max-width: 375px) {
  .m-photo-list .slick-prev {
    right: 27%;
    top: 128%; }
  .m-photo-list .slick-next {
    right: 27%;
    top: 128%; } }

@media screen and (max-width: 320px) {
  .m-photo-list .slick-prev {
    right: 27%;
    top: 134%; }
  .m-photo-list .slick-next {
    right: 27%;
    top: 134%; } }
