@charset "UTF-8";
/* ofi */
/* column */
/*--------------------------------------------------------------------/
	grid
/--------------------------------------------------------------------*/
.container {
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  padding-right: 15px;
  padding-left: 15px;
}

.container-fluid {
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  padding-right: 15px;
  padding-left: 15px;
}

.row {
  -ms-flex-wrap: wrap;
  display: flex;
  flex-wrap: wrap;
  margin-right: -15px;
  margin-left: -15px;
}

.no-gutters {
  margin-right: 0;
  margin-left: 0;
}

.no-gutters > .col,
.no-gutters > [class*="col-"] {
  padding-right: 0;
  padding-left: 0;
}

.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col,
.col-auto, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm,
.col-sm-auto, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md,
.col-md-auto, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg,
.col-lg-auto, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl,
.col-xl-auto {
  position: relative;
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
}

.col {
  -ms-flex-preferred-size: 0;
  -ms-flex-positive: 1;
  flex-basis: 0;
  flex-grow: 1;
  max-width: 100%;
}

.col-auto {
  flex: 0 0 auto;
  width: auto;
  max-width: 100%;
}

.col-1 {
  flex: 0 0 8.33333%;
  max-width: 8.33333%;
}

.col-2 {
  flex: 0 0 16.66667%;
  max-width: 16.66667%;
}

.col-3 {
  flex: 0 0 25%;
  max-width: 25%;
}

.col-4 {
  flex: 0 0 33.33333%;
  max-width: 33.33333%;
}

.col-5 {
  flex: 0 0 41.66667%;
  max-width: 41.66667%;
}

.col-6 {
  flex: 0 0 50%;
  max-width: 50%;
}

.col-7 {
  flex: 0 0 58.33333%;
  max-width: 58.33333%;
}

.col-8 {
  flex: 0 0 66.66667%;
  max-width: 66.66667%;
}

.col-9 {
  flex: 0 0 75%;
  max-width: 75%;
}

.col-10 {
  flex: 0 0 83.33333%;
  max-width: 83.33333%;
}

.col-11 {
  flex: 0 0 91.66667%;
  max-width: 91.66667%;
}

.col-12 {
  flex: 0 0 100%;
  max-width: 100%;
}

.order-first {
  order: -1;
}

.order-last {
  order: 13;
}

.order-0 {
  order: 0;
}

.order-1 {
  order: 1;
}

.order-2 {
  order: 2;
}

.order-3 {
  order: 3;
}

.order-4 {
  order: 4;
}

.order-5 {
  order: 5;
}

.order-6 {
  order: 6;
}

.order-7 {
  order: 7;
}

.order-8 {
  order: 8;
}

.order-9 {
  order: 9;
}

.order-10 {
  order: 10;
}

.order-11 {
  order: 11;
}

.order-12 {
  order: 12;
}

.offset-1 {
  margin-left: 8.33333%;
}

.offset-2 {
  margin-left: 16.66667%;
}

.offset-3 {
  margin-left: 25%;
}

.offset-4 {
  margin-left: 33.33333%;
}

.offset-5 {
  margin-left: 41.66667%;
}

.offset-6 {
  margin-left: 50%;
}

.offset-7 {
  margin-left: 58.33333%;
}

.offset-8 {
  margin-left: 66.66667%;
}

.offset-9 {
  margin-left: 75%;
}

.offset-10 {
  margin-left: 83.33333%;
}

.offset-11 {
  margin-left: 91.66667%;
}

.small-gutter {
  margin-right: -5px;
  margin-left: -5px;
}

.small-gutter > div[class^="col"] {
  padding-right: 5px;
  padding-left: 5px;
}

.no-gutter-container {
  padding-right: 0;
  padding-left: 0;
}

.no-gutter-container .row {
  margin-right: 0;
  margin-left: 0;
}

.no-gutter-container .row > div[class^="col"] {
  padding-right: 0;
  padding-left: 0;
}

@font-face {
  src: url("../fonts/icomoon.eot?bv0gwz");
  src: url("../fonts/icomoon.eot?bv0gwz#iefix") format("embedded-opentype"), url("../fonts/icomoon.ttf?bv0gwz") format("truetype"), url("../fonts/icomoon.woff?bv0gwz") format("woff"), url("../fonts/icomoon.svg?bv0gwz#icomoon") format("svg");
  font-display: block;
  font-family: 'icomoon';
  font-style: normal;
  font-weight: normal;
}

[class^="icon-"], [class*=" icon-"] {
  speak: none;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  text-transform: none;
}

/* webfont 変数　*/
.icon-down_arrow:before {
  content: "\e313";
}

.icon-left_arrow:before {
  content: "\e314";
}

.icon-right_arrow:before {
  content: "\e315";
}

.icon-top_arrow:before {
  content: "\e316";
}

.icon-link:before {
  content: "\e900";
}

.icon-tag:before {
  content: "\e901";
}

.icon-check:before {
  content: "\e902";
}

.icon-arrow-up:before {
  content: "\e903";
}

.icon-pagetop:before {
  content: "\e904";
}

.icon-search:before {
  content: "\e905";
}

.icon-Facebook:before {
  content: "\e906";
}

.icon-arrow-right:before {
  content: "\e907";
}

.icon-search-plus:before {
  content: "\e908";
}

.icon-phone:before {
  content: "\e909";
}

.icon-Instagram:before {
  content: "\e90a";
}

.icon-home:before {
  content: "\e90b";
}

.icon-Twitter:before {
  content: "\e90c";
}

.icon-Line:before {
  content: "\e90d";
}

.icon-pin:before {
  content: "\e90e";
}

.icon-mail:before {
  content: "\e911";
}

/*====================================================================

page.css

======================================================================*/
main {
  padding-bottom: 48px;
  padding-bottom: 3rem;
}

.main-view {
  position: relative;
  padding: 20px 0 0;
  background: #fff;
  font-size: 42px;
  line-height: 1;
  text-align: center;
}

.main-view .container {
  position: relative;
}

.main-view h2.main-view_ttl {
  position: relative;
  height: 60px;
  color: #202020;
  font-family: "Roboto", sans-serif;
  font-size: 24px;
  font-size: 1.5rem;
  font-weight: 400;
  letter-spacing: 0.075em;
  line-height: 1;
}

.main-view h2.main-view_ttl:after {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  width: 1px;
  height: 25px;
  margin: auto;
  background-color: #707070;
  content: "";
}

/* .contents
----------------------------------------------------------------*/
/* page-navi
----------------------------------------------------------------*/
.page-navi {
  z-index: 10;
  position: relative;
  padding-bottom: 20px;
  color: #202020;
  font-size: 13px;
  line-height: 1;
  text-align: left;
}

.page-navi li {
  display: inline;
  color: #202020;
  font-size: 13px;
  font-size: 0.8125rem;
  vertical-align: bottom;
}

.page-navi li:not(:last-of-type):after {
  padding: 0 5px;
  color: #202020;
  vertical-align: bottom;
  content: "―";
}

.page-navi li span {
  color: #202020 !important;
}

.page-navi a {
  display: inline-block;
  color: #202020;
  transition: 0.3s ease all;
}

.page-navi a:hover, .page-navi a:focus, .page-navi a:active {
  color: #25beaf;
}

.page-navi a:hover i, .page-navi a:focus i, .page-navi a:active i {
  color: #25beaf;
}

.page-navi a i {
  color: #979da4;
  font-size: 16px;
  font-size: 1rem;
}

/* アンカー
----------------------------------------------------------------*/
/*--------------------------------------------------------------------/
	form
/--------------------------------------------------------------------*/
.mailform {
  position: relative;
  width: 100%;
}

.mailform th,
.mailform td {
  color: #202020;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 400;
  text-align: left;
  white-space: normal;
  word-break: break-all;
}

.mailform th span.horizontal-item,
.mailform td span.horizontal-item {
  display: block;
  padding-bottom: 10px;
}

.mailform th .horizontal-item + .horizontal-item,
.mailform td .horizontal-item + .horizontal-item {
  margin-left: 0;
}

.mailform th span.note,
.mailform td span.note {
  display: block;
  padding-top: 10px;
  color: #8ad7e8;
}

.mailform th {
  vertical-align: middle;
}

.mailform th span {
  display: inline-block;
  padding: 3px 5px;
  background: #f24949;
  color: #fff;
  font-size: 80%;
  vertical-align: text-bottom;
}

.mailform textarea {
  width: 100%;
}

.mailform td.flex {
  -ms-flex-wrap: wrap;
  display: flex;
      flex-wrap: wrap;
  font-weight: normal;
}

.mailform td.flex span {
  padding-right: 10px;
  padding-bottom: 10px;
}

.mailform td.flex span input[type="text"] {
  width: 60px;
}

.mailform td.flex span.left > * {
  margin-left: 10px;
}

.mailform td.flex span.right > * {
  margin-right: 10px;
}

.mailform-wrap .btn-wrap .a-btn03 {
  border: 1px solid #8ad7e8;
}

.mailform-wrap .btn-wrap .a-btn03 {
  border: 1px solid #8ad7e8;
}

.imeon {
  ime-mode: active;
}

.imeoff {
  ime-mode: disabled;
}

.cont-contact input,
.cont-contact textarea,
.cont-contact select {
  margin: 3px 0;
  padding: 8px;
  padding: 0.5rem;
  border: 1px solid #ccc;
  border-radius: 3px;
  line-height: 1.5;
}

.cont-contact input {
  width: auto;
  max-width: 100%;
}

.cont-contact input.long {
  width: 100%;
}

.cont-contact input.short {
  width: 50%;
}

.cont-contact input.sub-btn {
  box-sizing: border-box;
  display: block;
  position: relative;
  width: 100%;
  margin: 0 0 16px;
  margin: 0 0 1rem;
  padding: 16px 0px;
  padding: 1rem 0px;
  border: 1px solid #8ad7e8;
  border-radius: 0;
  background: #8ad7e8;
  color: #fff;
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  text-decoration: none !important;
  transition: 0.3s ease all;
}

.cont-contact input.sub-btn:hover, .cont-contact input.sub-btn:active, .cont-contact input.sub-btn:focus {
  border: 1px solid #8ad7e8;
  background: #fff;
  color: #8ad7e8;
  cursor: pointer;
}

.cont-contact input.back-btn {
  box-sizing: border-box;
  display: block;
  position: relative;
  width: 100%;
  margin-bottom: 16px;
  margin-bottom: 1rem;
  padding: 16px 0px;
  padding: 1rem 0px;
  border: 1px solid #25beaf;
  border-radius: 0;
  background: #25beaf;
  color: #fff;
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  text-decoration: none !important;
  transition: 0.3s ease all;
}

.cont-contact input.back-btn:before {
  display: inline-block;
  margin-right: 9px;
  padding-bottom: 1px;
  font-family: "fontello";
  font-size: 18px;
  font-size: 1.125rem;
  vertical-align: baseline;
  content: "\e809";
}

.cont-contact input.back-btn:hover, .cont-contact input.back-btn:active, .cont-contact input.back-btn:focus {
  border: 1px solid #25beaf;
  background: #fff;
  color: #25beaf;
  cursor: pointer;
}

.cont-contact input.check-btn {
  display: block;
  max-width: 240px;
  margin: 0 auto;
  margin-top: 16px;
  margin-top: 1rem;
  padding: 8px 32px;
  padding: 0.5rem 2rem;
  border: solid 1px #6f757b;
  border-radius: 5px;
  background: #6f757b;
  color: #fff;
  font-size: 15.04px;
  font-size: 0.94rem;
  cursor: pointer;
}

.cont-contact input.check-btn:hover, .cont-contact input.check-btn:focus, .cont-contact input.check-btn:active {
  border: solid 1px #8ad7e8;
  background: #8ad7e8;
}

.cont-contact input [type="button"],
.cont-contact input [type="submit"] {
  -webkit-appearance: none;
}

.cont-contact .radio,
.cont-contact .checkbox {
  position: relative;
  margin-right: 24px;
  margin-right: 1.5rem;
  padding-bottom: 4.8px;
  padding-bottom: 0.3rem;
  padding-left: 24px;
  padding-left: 1.5rem;
  background-color: transparent;
  vertical-align: top;
  cursor: pointer;
  transition: 0.3s ease all;
}

.cont-contact label.radio,
.cont-contact label.checkbox {
  display: block;
}

.cont-contact .btn-wrap {
  position: relative;
  margin-top: 32px;
  margin-top: 2rem;
  margin-bottom: 48px;
  margin-bottom: 3rem;
}

/* form-parts
----------------------------------------------------------------*/

.radio, .checkbox {
  box-sizing: border-box;
  display: inline-block;
  position: relative;
  margin: 0 20px 8px 0;
  padding: 8px 8px 8px 40px;
  border-radius: 8px;
  background-color: #f6f7f8;
  vertical-align: middle;
  cursor: pointer;
  transition: background-color 0.2s linear;
}

.radio:hover, .checkbox:hover, .radio:focus, .checkbox:focus, .radio:active, .checkbox:active {
  background-color: #dff4f9;
}

.radio:hover:after, .checkbox:hover:after, .radio:focus:after, .checkbox:focus:after, .radio:active:after, .checkbox:active:after {
  border-color: #8ad7e8;
}

.radio:before, .checkbox:before {
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  display: block;
  position: absolute;
  top: 50%;
  left: 19px;
  content: "";
  opacity: 0;
  transition: opacity 0.2s linear;
}

input[type="radio"]:checked + .radio:before, input[type="radio"]:checked + .checkbox:before {
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  opacity: 1;
}

.radio:after, .checkbox:after {
  display: block;
  position: absolute;
  top: 50%;
  left: 15px;
  width: 16px;
  height: 16px;
  margin-top: -10px;
  border: 1px solid #bbb;
  border-radius: 6px;
  content: "";
  transition: border-color 0.2s linear;
}

.radio:before {
  width: 8px;
  height: 8px;
  margin-top: -6px;
  border-radius: 50%;
  background-color: #8ad7e8;
}

.checkbox:before {
  width: 5px;
  height: 9px;
  margin-top: -7px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  border-right: 3px solid #8ad7e8;
  border-bottom: 3px solid #8ad7e8;
}

.no-csstransforms input[type="radio"],
.no-csstransforms input[type="checkbox"] {
  display: inline;
}

.no-csstransforms .radio,
.no-csstransforms .checkbox {
  display: none;
}

/*--------------------------------------------------------------------/
	page_next_prev
/--------------------------------------------------------------------*/
.page-next_prev {
  margin-top: 32px;
  margin-top: 2rem;
  padding: 16px 0;
  padding: 1rem 0;
  color: #202020;
  text-align: center;
}

.page-next_prev:after {
  display: block;
  clear: both;
  content: "";
}

.page-next_prev a {
  color: #202020;
  text-decoration: none;
  transition: 0.3s ease all;
}

.page-next_prev a:hover, .page-next_prev a:focus, .page-next_prev a:active {
  background: #25beaf;
  color: #fff;
}

.page-next_prev__inner {
  display: inline-block;
}

.page-numbers {
  padding: 0.3em 0.5em;
  transition: 0.2s ease all;
}

.page-next_prev .current {
  background: #8ad7e8;
  color: #fff;
  vertical-align: bottom;
}

.nav-prev {
  margin-top: 24px;
  margin-top: 1.5rem;
  float: left;
}

.nav-next {
  margin-top: 24px;
  margin-top: 1.5rem;
  float: right;
}

/*--------------------------------------------------------------------/
	404
/--------------------------------------------------------------------*/
.cont-404 {
  padding: 50px 0;
  background: #f4f5f6;
}

/*--------------------------------------------------------------------/
	contact
/--------------------------------------------------------------------*/
#page-contact .cont-contact .txt strong,
#page-confirm .cont-contact .txt strong,
#page-sending .cont-contact .txt strong,
#page-error .cont-contact .txt strong {
  color: #f4f5f6;
  font-size: 1.25em;
}

#page-contact .contact-time,
#page-confirm .contact-time,
#page-sending .contact-time,
#page-error .contact-time {
  margin-bottom: 8px;
  margin-bottom: 0.5rem;
}

#page-contact .contact-tel,
#page-confirm .contact-tel,
#page-sending .contact-tel,
#page-error .contact-tel {
  margin-right: 16px;
  margin-right: 1rem;
}

#page-contact .contact-tel small,
#page-confirm .contact-tel small,
#page-sending .contact-tel small,
#page-error .contact-tel small {
  display: block;
  margin-bottom: 4.8px;
  margin-bottom: 0.3rem;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1;
}

#page-contact .contact-tel b,
#page-confirm .contact-tel b,
#page-sending .contact-tel b,
#page-error .contact-tel b {
  font-family: "Anton", sans-serif;
  font-size: 32px;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1;
}

#page-contact .contact-tel b i,
#page-confirm .contact-tel b i,
#page-sending .contact-tel b i,
#page-error .contact-tel b i {
  margin-right: 8px;
  margin-right: 0.5rem;
  color: #25beaf;
  font-size: 1.4em;
  vertical-align: bottom;
}

#page-contact .contact-tel a,
#page-confirm .contact-tel a,
#page-sending .contact-tel a,
#page-error .contact-tel a {
  color: #202020;
}

#page-contact .contact-step,
#page-confirm .contact-step,
#page-sending .contact-step,
#page-error .contact-step {
  margin-bottom: 48px;
  margin-bottom: 3rem;
}

#page-contact .contact-step ol.step-list,
#page-confirm .contact-step ol.step-list,
#page-sending .contact-step ol.step-list,
#page-error .contact-step ol.step-list {
  display: flex;
  counter-reset: contact-num;
}

#page-contact .contact-step ol.step-list li,
#page-confirm .contact-step ol.step-list li,
#page-sending .contact-step ol.step-list li,
#page-error .contact-step ol.step-list li {
  position: relative;
  color: #202020;
  font-size: 16px;
  font-size: 1rem;
}

#page-contact .contact-step ol.step-list li span:before,
#page-confirm .contact-step ol.step-list li span:before,
#page-sending .contact-step ol.step-list li span:before,
#page-error .contact-step ol.step-list li span:before {
  display: block;
  margin-bottom: 8px;
  margin-bottom: 0.5rem;
  color: #b5b5b5;
  line-height: 1;
  content: counter(contact-num, decimal-leading-zero);
  counter-increment: contact-num 1;
}

#page-contact .contact-step ol.step-list li:not(:last-child):after,
#page-confirm .contact-step ol.step-list li:not(:last-child):after,
#page-sending .contact-step ol.step-list li:not(:last-child):after,
#page-error .contact-step ol.step-list li:not(:last-child):after {
  position: absolute;
  background: #dcdcdc;
  content: "";
}

#page-contact .contact-step ol.step-list li.now,
#page-confirm .contact-step ol.step-list li.now,
#page-sending .contact-step ol.step-list li.now,
#page-error .contact-step ol.step-list li.now {
  margin-bottom: 16px;
  margin-bottom: 1rem;
}

#page-contact .contact-step ol.step-list li.now span:before,
#page-confirm .contact-step ol.step-list li.now span:before,
#page-sending .contact-step ol.step-list li.now span:before,
#page-error .contact-step ol.step-list li.now span:before {
  color: #fff;
}

#page-contact .contact-catch,
#page-confirm .contact-catch,
#page-sending .contact-catch,
#page-error .contact-catch {
  padding-bottom: 24px;
  padding-bottom: 1.5rem;
}

#page-contact .contact-box-wrap,
#page-confirm .contact-box-wrap,
#page-sending .contact-box-wrap,
#page-error .contact-box-wrap {
  margin-bottom: 48px;
  margin-bottom: 3rem;
  padding: 30px 20px;
  background: #f3fbfd;
}

#page-contact .contact-box-wrap .contact-box .contact-box_inner .ttl-wrap_l,
#page-confirm .contact-box-wrap .contact-box .contact-box_inner .ttl-wrap_l,
#page-sending .contact-box-wrap .contact-box .contact-box_inner .ttl-wrap_l,
#page-error .contact-box-wrap .contact-box .contact-box_inner .ttl-wrap_l {
  padding-bottom: 16px;
  padding-bottom: 1rem;
}

#page-contact .contact-box-wrap .contact-box .contact-box_inner .ttl-wrap_l h4,
#page-confirm .contact-box-wrap .contact-box .contact-box_inner .ttl-wrap_l h4,
#page-sending .contact-box-wrap .contact-box .contact-box_inner .ttl-wrap_l h4,
#page-error .contact-box-wrap .contact-box .contact-box_inner .ttl-wrap_l h4 {
  font-size: 16px;
  font-size: 1rem;
}

#page-contact .contact-box-wrap .contact-box .contact-box_inner .tel_num .tel,
#page-confirm .contact-box-wrap .contact-box .contact-box_inner .tel_num .tel,
#page-sending .contact-box-wrap .contact-box .contact-box_inner .tel_num .tel,
#page-error .contact-box-wrap .contact-box .contact-box_inner .tel_num .tel {
  line-height: 1;
}

#page-contact .contact-box-wrap .contact-box .contact-box_inner .tel_num .tel .tel-link,
#page-confirm .contact-box-wrap .contact-box .contact-box_inner .tel_num .tel .tel-link,
#page-sending .contact-box-wrap .contact-box .contact-box_inner .tel_num .tel .tel-link,
#page-error .contact-box-wrap .contact-box .contact-box_inner .tel_num .tel .tel-link {
  font-size: 30px;
  font-size: 1.875rem;
}

#page-contact .contact-box-wrap .contact-box .contact-box_inner .tel_num .tel .tel-link:before,
#page-confirm .contact-box-wrap .contact-box .contact-box_inner .tel_num .tel .tel-link:before,
#page-sending .contact-box-wrap .contact-box .contact-box_inner .tel_num .tel .tel-link:before,
#page-error .contact-box-wrap .contact-box .contact-box_inner .tel_num .tel .tel-link:before {
  speak: never;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-family: "icomoon" !important;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  text-transform: none;
  content: "";
}

#page-contact .contact-box-wrap .contact-box .contact-box_inner .tel_num .tel .tel-link:before,
#page-confirm .contact-box-wrap .contact-box .contact-box_inner .tel_num .tel .tel-link:before,
#page-sending .contact-box-wrap .contact-box .contact-box_inner .tel_num .tel .tel-link:before,
#page-error .contact-box-wrap .contact-box .contact-box_inner .tel_num .tel .tel-link:before {
  color: #979da4;
}

#page-contact .contact-box-wrap .contact-box .contact-box_inner .tel_num .tel .tel-link a,
#page-confirm .contact-box-wrap .contact-box .contact-box_inner .tel_num .tel .tel-link a,
#page-sending .contact-box-wrap .contact-box .contact-box_inner .tel_num .tel .tel-link a,
#page-error .contact-box-wrap .contact-box .contact-box_inner .tel_num .tel .tel-link a {
  display: inline-block;
  padding-left: 5px;
  color: #202020;
  line-height: 1;
  vertical-align: text-top;
}

#page-contact .contact-box-wrap .contact-box .contact-box_inner ul.normal li,
#page-confirm .contact-box-wrap .contact-box .contact-box_inner ul.normal li,
#page-sending .contact-box-wrap .contact-box .contact-box_inner ul.normal li,
#page-error .contact-box-wrap .contact-box .contact-box_inner ul.normal li {
  font-size: 15px;
  font-size: 0.9375rem;
}

#page-contact .contact-box-wrap .contact-box .contact-box_inner ul.normal li a,
#page-confirm .contact-box-wrap .contact-box .contact-box_inner ul.normal li a,
#page-sending .contact-box-wrap .contact-box .contact-box_inner ul.normal li a,
#page-error .contact-box-wrap .contact-box .contact-box_inner ul.normal li a {
  display: inline-block;
}

#page-contact .contact-box-wrap .contact-box_tel,
#page-confirm .contact-box-wrap .contact-box_tel,
#page-sending .contact-box-wrap .contact-box_tel,
#page-error .contact-box-wrap .contact-box_tel {
  padding-bottom: 32px;
  padding-bottom: 2rem;
}

.contact-privacy {
  max-height: 200px;
  margin-bottom: 32px;
  margin-bottom: 2rem;
  padding: 24px 32px;
  padding: 1.5rem 2rem;
  overflow-y: scroll;
  border: 1px solid #c9ced2;
}

.contact-privacy__tit {
  margin-bottom: calc(1rem + 0.5em);
  font-size: calc(1.14rem + 2 * (100vw - 280px) / 920);
  font-weight: 400;
  text-align: center;
}

.contact-privacy .txt {
  font-size: 0.93em;
}

.contact-privacy .txt-r {
  padding-top: 16px;
  padding-top: 1rem;
}


/*2021/10 追記-------------*/
#page-contact .contact-box-wrap .contact-box_tel,
#page-confirm .contact-box-wrap .contact-box_tel,
#page-sending .contact-box-wrap .contact-box_tel,
#page-error .contact-box-wrap .contact-box_tel {
  border-bottom: 1px solid #202020;
}
#page-contact .contact-box-wrap .contact-box_mail,
#page-confirm .contact-box-wrap .contact-box_mail,
#page-sending .contact-box-wrap .contact-box_mail,
#page-error .contact-box-wrap .contact-box_mail {
  padding-top: 1rem;
}

/*--------------------------------------------------------------------/
	company
/--------------------------------------------------------------------*/
#page-company .cont-greeting {
  position: relative;
  margin-bottom: 60px;
  padding-top: 60px;
  background-image: url(../img/company/bg_company.jpg);
  background-position: bottom 100px center;
  background-repeat: no-repeat;
  background-size: cover;
}

#page-company .cont-greeting .greeting-box_wrap {
  padding: 30px 20px;
  background: #fff;
}

#page-company .cont-overview {
  padding-bottom: 60px;
}

#page-company .cont-access .embed-responsive {
  margin-bottom: 10px;
}

#page-company .cont-access .embed-responsive:before {
  padding-top: 66.666666%;
}

/*--------------------------------------------------------------------/
	feature
/--------------------------------------------------------------------*/
#page-feature .cont-feature {
  position: relative;
  margin-top: 30px;
  margin-bottom: 48px;
  margin-bottom: 6rem;
  padding-bottom: 30px;
}

#page-feature .cont-feature:first-child {
  margin-top: 0;
}

#page-feature .feature-box_wrap .feature-box_bg {
  display: block;
  z-index: 2;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 60%;
  content: "";
}

#page-feature .feature-box_wrap .feature-box .feature-box_contents {
  z-index: 3;
  position: relative;
  padding: 30px 20px;
  background: rgba(255, 255, 255, 0.9);
}

#page-feature .feature-box_wrap .feature-box .feature-img_wrap .feature-img {
  z-index: 2;
  position: relative;
  width: 100%;
  height: auto;
  padding: 66.666666% 0 0;
}

#page-feature .feature-box_wrap .feature-box .feature-img_wrap .feature-img .inner {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  background: #e9f2f2;
}

#page-feature .feature-box_wrap .feature-box .feature-img_wrap .feature-img .inner img {
  display: block;
  width: 100%;
  max-width: none;
  height: 100%;
  margin: auto;
  padding-bottom: 0;
  transition-duration: 0.3s;
}

#page-feature .cont-feature_l .feature-box_bg {
  background: rgba(138, 215, 232, 0.4);
}

#page-feature .cont-feature_r .feature-box_bg {
  background: rgba(37, 190, 175, 0.4);
}

/*--------------------------------------------------------------------/
	product
/--------------------------------------------------------------------*/
#page-product {
  padding-bottom: 0;
}

#page-product .cont-product {
  padding-top: 60px;
  padding-bottom: 80px;
  background: #f4f5f6;
}

#page-product .cont-product .cont-product_lead {
  margin-bottom: 48px;
  margin-bottom: 3rem;
  padding-bottom: 20px;
  border-bottom: 1px solid #707070;
  font-size: 18px;
  font-size: 1.125rem;
}

#page-product .cont-product .product-box_wrap .product-box {
  display: block;
  background: #fff;
  color: #202020;
}

#page-product .cont-product .product-box_wrap .product-box .product-box_img {
  position: relative;
  width: 100%;
  height: auto;
  margin-bottom: 10px;
  padding: 66.666666% 0 0;
}

#page-product .cont-product .product-box_wrap .product-box .product-box_img .inner {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  background: #fff;
}

#page-product .cont-product .product-box_wrap .product-box .product-box_img .inner img {
  display: block;
  width: 100%;
  max-width: none;
  height: 100%;
  margin: auto;
  padding-bottom: 0;
}

#page-product .cont-product .product-box_wrap .product-box .product-box_ttl {
  position: relative;
  padding: 24px;
  padding: 1.5rem;
}

#page-product .cont-product .product-box_wrap .product-box .product-box_ttl:before {
  display: block;
  position: absolute;
  top: 0;
  right: 50px;
  bottom: 0;
  width: 25px;
  height: 1px;
  margin: auto;
  background: #202020;
  content: "";
  transition: 0.3s;
}

#page-product .cont-product .product-box_wrap .product-box .product-box_ttl:after {
  display: block;
  position: absolute;
  top: 0;
  right: 50px;
  bottom: 0;
  width: 8px;
  height: 8px;
  margin: auto;
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
  border-bottom: 1px solid #202020;
  border-left: 1px solid #202020;
  content: "";
  transition: 0.3s;
}

#page-product .cont-product .product-box_wrap .product-box .product-box_ttl h4 {
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 400;
}

#page-product .cont-product .product-box_wrap .col-12:not(:last-child) .product-box {
  margin-bottom: 16px;
  margin-bottom: 1rem;
}

#page-product .cont-product .product-box_wrap .product-box:hover .product-box_ttl:before {
  right: 20px;
  width: 55px;
}

#page-product .cont-product .product-box_wrap .product-box:hover .product-box_ttl:after {
  right: 20px;
}

#archive-product .main-view_ttl {
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 24px;
  font-size: 1.5rem;
  font-weight: 400;
}

#archive-product .cont-product {
  padding-top: 40px;
}

#archive-product .cont-product .product-box_wrap .product-box {
  padding-bottom: 40px;
}

#archive-product .cont-product .product-box_wrap .product-box .product-box_img {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
  padding: 100% 0 0;
}

#archive-product .cont-product .product-box_wrap .product-box .product-box_img .inner {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  background: #fff;
}

#archive-product .cont-product .product-box_wrap .product-box .product-box_img .inner img {
  display: block;
  width: 100%;
  max-width: none;
  height: 100%;
  margin: auto;
  padding-bottom: 0;
}

#archive-product .cont-product .product-box_wrap .product-box .product-box_txt {
  padding: 5px 0;
}

#archive-product .cont-product .product-box_wrap:not(:last-child) {
  padding-bottom: 48px;
  padding-bottom: 3rem;
}

@media print, screen and (min-width: 376px) {
  /*====================================================================/
/*------------------iPhone 以上----------------
/====================================================================*/
  html {
    width: 100%;
  }
}

@media (min-width: 561px) {
  .container {
    max-width: 540px;
  }
}

@media print, screen and (min-width: 561px) {
  /*====================================================================/
/*------------------スマホ 以上----------------
/====================================================================*/
  html {
    width: 100%;
  }
}

@media (min-width: 576px) {
  .col-sm {
    -ms-flex-preferred-size: 0;
    -ms-flex-positive: 1;
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .col-sm-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-sm-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%;
  }
  .col-sm-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-sm-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-sm-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .col-sm-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%;
  }
  .col-sm-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-sm-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%;
  }
  .col-sm-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%;
  }
  .col-sm-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-sm-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%;
  }
  .col-sm-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%;
  }
  .col-sm-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .order-sm-first {
    order: -1;
  }
  .order-sm-last {
    order: 13;
  }
  .order-sm-0 {
    order: 0;
  }
  .order-sm-1 {
    order: 1;
  }
  .order-sm-2 {
    order: 2;
  }
  .order-sm-3 {
    order: 3;
  }
  .order-sm-4 {
    order: 4;
  }
  .order-sm-5 {
    order: 5;
  }
  .order-sm-6 {
    order: 6;
  }
  .order-sm-7 {
    order: 7;
  }
  .order-sm-8 {
    order: 8;
  }
  .order-sm-9 {
    order: 9;
  }
  .order-sm-10 {
    order: 10;
  }
  .order-sm-11 {
    order: 11;
  }
  .order-sm-12 {
    order: 12;
  }
  .offset-sm-0 {
    margin-left: 0;
  }
  .offset-sm-1 {
    margin-left: 8.33333%;
  }
  .offset-sm-2 {
    margin-left: 16.66667%;
  }
  .offset-sm-3 {
    margin-left: 25%;
  }
  .offset-sm-4 {
    margin-left: 33.33333%;
  }
  .offset-sm-5 {
    margin-left: 41.66667%;
  }
  .offset-sm-6 {
    margin-left: 50%;
  }
  .offset-sm-7 {
    margin-left: 58.33333%;
  }
  .offset-sm-8 {
    margin-left: 66.66667%;
  }
  .offset-sm-9 {
    margin-left: 75%;
  }
  .offset-sm-10 {
    margin-left: 83.33333%;
  }
  .offset-sm-11 {
    margin-left: 91.66667%;
  }
}

@media (min-width: 768px) {
  .container {
    max-width: 720px;
  }
  .col-md {
    -ms-flex-preferred-size: 0;
    -ms-flex-positive: 1;
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .col-md-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-md-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%;
  }
  .col-md-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-md-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-md-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .col-md-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%;
  }
  .col-md-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-md-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%;
  }
  .col-md-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%;
  }
  .col-md-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-md-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%;
  }
  .col-md-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%;
  }
  .col-md-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .order-md-first {
    order: -1;
  }
  .order-md-last {
    order: 13;
  }
  .order-md-0 {
    order: 0;
  }
  .order-md-1 {
    order: 1;
  }
  .order-md-2 {
    order: 2;
  }
  .order-md-3 {
    order: 3;
  }
  .order-md-4 {
    order: 4;
  }
  .order-md-5 {
    order: 5;
  }
  .order-md-6 {
    order: 6;
  }
  .order-md-7 {
    order: 7;
  }
  .order-md-8 {
    order: 8;
  }
  .order-md-9 {
    order: 9;
  }
  .order-md-10 {
    order: 10;
  }
  .order-md-11 {
    order: 11;
  }
  .order-md-12 {
    order: 12;
  }
  .offset-md-0 {
    margin-left: 0;
  }
  .offset-md-1 {
    margin-left: 8.33333%;
  }
  .offset-md-2 {
    margin-left: 16.66667%;
  }
  .offset-md-3 {
    margin-left: 25%;
  }
  .offset-md-4 {
    margin-left: 33.33333%;
  }
  .offset-md-5 {
    margin-left: 41.66667%;
  }
  .offset-md-6 {
    margin-left: 50%;
  }
  .offset-md-7 {
    margin-left: 58.33333%;
  }
  .offset-md-8 {
    margin-left: 66.66667%;
  }
  .offset-md-9 {
    margin-left: 75%;
  }
  .offset-md-10 {
    margin-left: 83.33333%;
  }
  .offset-md-11 {
    margin-left: 91.66667%;
  }
}

@media print, screen and (min-width: 768px) {
  .small-gutter {
    margin-right: -10px;
    margin-left: -10px;
  }
  .small-gutter > div[class^="col"] {
    padding-right: 10px;
    padding-left: 10px;
  }
  /*====================================================================/
/*------------------タブレットスタイル----------------
/====================================================================*/
  html {
    width: 100%;
  }
  main {
    padding-bottom: 80px;
  }
  .main-view {
    padding: 40px 0;
  }
  .main-view h2.main-view_ttl {
    height: 120px;
    font-size: 3.125rem;
  }
  .main-view h2.main-view_ttl:after {
    height: 55px;
  }
  .page-navi {
    position: absolute;
    left: 0;
    bottom: 0;
    padding: 0;
  }
  .mailform th {
    width: 30%;
  }
  .cont-contact input.middle {
    width: 70%;
  }
  .cont-contact input.short {
    width: 30%;
  }
  .cont-contact input.sub-btn {
    width: 250px;
    margin: 0 auto 1rem;
  }
  .cont-contact input.back-btn {
    width: 250px;
    margin: auto;
  }
  #page-contact .contact-step ol.step-list,
  #page-confirm .contact-step ol.step-list,
  #page-sending .contact-step ol.step-list,
  #page-error .contact-step ol.step-list {
    -ms-flex-align: center;
    -ms-flex-pack: justify;
        align-items: center;
        justify-content: space-between;
    max-width: 1040px;
    margin-right: auto;
    margin-left: auto;
  }
  #page-contact .contact-step ol.step-list > *,
  #page-confirm .contact-step ol.step-list > *,
  #page-sending .contact-step ol.step-list > *,
  #page-error .contact-step ol.step-list > * {
    width: 18%;
    max-width: 160px;
    max-height: 160px;
  }
  #page-contact .contact-step ol.step-list li,
  #page-confirm .contact-step ol.step-list li,
  #page-sending .contact-step ol.step-list li,
  #page-error .contact-step ol.step-list li {
    -ms-flex-align: center;
    -ms-flex-pack: center;
    display: flex;
        align-items: center;
        justify-content: center;
    width: 125px;
    height: 125px;
    border: 1px solid #ccc;
    border-radius: 50%;
    background: #fff;
    font-size: 1.2rem;
    text-align: center;
  }
  #page-contact .contact-step ol.step-list li span,
  #page-confirm .contact-step ol.step-list li span,
  #page-sending .contact-step ol.step-list li span,
  #page-error .contact-step ol.step-list li span {
    font-size: 0.8125rem;
    line-height: 1;
  }
  #page-contact .contact-step ol.step-list li span:before,
  #page-confirm .contact-step ol.step-list li span:before,
  #page-sending .contact-step ol.step-list li span:before,
  #page-error .contact-step ol.step-list li span:before {
    font-size: 30px;
  }
  #page-contact .contact-step ol.step-list li:not(:last-child):after,
  #page-confirm .contact-step ol.step-list li:not(:last-child):after,
  #page-sending .contact-step ol.step-list li:not(:last-child):after,
  #page-error .contact-step ol.step-list li:not(:last-child):after {
    left: 100%;
    width: 100%;
    height: 1px;
  }
  #page-contact .contact-step ol.step-list li.now,
  #page-confirm .contact-step ol.step-list li.now,
  #page-sending .contact-step ol.step-list li.now,
  #page-error .contact-step ol.step-list li.now {
    border-color: #8ad7e8;
    background: #8ad7e8;
    color: #fff;
  }
  #page-contact .contact-catch,
  #page-confirm .contact-catch,
  #page-sending .contact-catch,
  #page-error .contact-catch {
    padding-bottom: 2rem;
  }
  #page-company .cont-greeting {
    padding-top: 100px;
  }
  #archive-product .main-view_ttl {
    font-size: 2rem;
  }
}

@media (min-width: 977px) {
  .container {
    max-width: 960px;
  }
  .col-lg {
    -ms-flex-preferred-size: 0;
    -ms-flex-positive: 1;
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .col-lg-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-lg-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%;
  }
  .col-lg-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-lg-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-lg-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .col-lg-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%;
  }
  .col-lg-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-lg-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%;
  }
  .col-lg-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%;
  }
  .col-lg-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-lg-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%;
  }
  .col-lg-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%;
  }
  .col-lg-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .order-lg-first {
    order: -1;
  }
  .order-lg-last {
    order: 13;
  }
  .order-lg-0 {
    order: 0;
  }
  .order-lg-1 {
    order: 1;
  }
  .order-lg-2 {
    order: 2;
  }
  .order-lg-3 {
    order: 3;
  }
  .order-lg-4 {
    order: 4;
  }
  .order-lg-5 {
    order: 5;
  }
  .order-lg-6 {
    order: 6;
  }
  .order-lg-7 {
    order: 7;
  }
  .order-lg-8 {
    order: 8;
  }
  .order-lg-9 {
    order: 9;
  }
  .order-lg-10 {
    order: 10;
  }
  .order-lg-11 {
    order: 11;
  }
  .order-lg-12 {
    order: 12;
  }
  .offset-lg-0 {
    margin-left: 0;
  }
  .offset-lg-1 {
    margin-left: 8.33333%;
  }
  .offset-lg-2 {
    margin-left: 16.66667%;
  }
  .offset-lg-3 {
    margin-left: 25%;
  }
  .offset-lg-4 {
    margin-left: 33.33333%;
  }
  .offset-lg-5 {
    margin-left: 41.66667%;
  }
  .offset-lg-6 {
    margin-left: 50%;
  }
  .offset-lg-7 {
    margin-left: 58.33333%;
  }
  .offset-lg-8 {
    margin-left: 66.66667%;
  }
  .offset-lg-9 {
    margin-left: 75%;
  }
  .offset-lg-10 {
    margin-left: 83.33333%;
  }
  .offset-lg-11 {
    margin-left: 91.66667%;
  }
}

@media print, screen and (min-width: 977px) {
  /*====================================================================/
/*-------------------小さいPCスタイル----------------
/====================================================================*/
  html {
    width: 100%;
  }
  main {
    padding-bottom: 100px;
  }
  .main-view {
    padding: 60px 0 65px;
  }
  .main-view h2.main-view_ttl {
    height: 145px;
    font-size: 3.75rem;
  }
  .main-view h2.main-view_ttl:after {
    height: 65px;
  }
  .mailform th,
  .mailform td {
    padding: 18px 0;
  }
  .mailform th {
    width: 25%;
  }
  .mailform td {
    width: auto;
  }
  .form-short {
    width: 15em;
    margin-right: 0.5rem;
  }
  .form-middle {
    width: 30em;
    margin-right: 0.5rem;
  }
  .cont-404 {
    padding: 100px 0;
  }
  #page-contact .contact-step,
  #page-confirm .contact-step,
  #page-sending .contact-step,
  #page-error .contact-step {
    margin-bottom: 6rem;
  }
  #page-contact .contact-step ol.step-list li,
  #page-confirm .contact-step ol.step-list li,
  #page-sending .contact-step ol.step-list li,
  #page-error .contact-step ol.step-list li {
    width: 160px;
    height: 160px;
    font-size: 1.4rem;
  }
  #page-contact .contact-box-wrap,
  #page-confirm .contact-box-wrap,
  #page-sending .contact-box-wrap,
  #page-error .contact-box-wrap {
    padding: 80px 50px;
  }
  #page-contact .contact-box-wrap .contact-box .contact-box_inner .ttl-wrap_l h4,
  #page-confirm .contact-box-wrap .contact-box .contact-box_inner .ttl-wrap_l h4,
  #page-sending .contact-box-wrap .contact-box .contact-box_inner .ttl-wrap_l h4,
  #page-error .contact-box-wrap .contact-box .contact-box_inner .ttl-wrap_l h4 {
    font-size: 1.125rem;
  }
  #page-contact .contact-box-wrap .contact-box .contact-box_inner .tel_num .tel .tel-link,
  #page-confirm .contact-box-wrap .contact-box .contact-box_inner .tel_num .tel .tel-link,
  #page-sending .contact-box-wrap .contact-box .contact-box_inner .tel_num .tel .tel-link,
  #page-error .contact-box-wrap .contact-box .contact-box_inner .tel_num .tel .tel-link {
    font-size: 2.125rem;
  }
  #page-contact .contact-box-wrap .contact-box_tel,
  #page-confirm .contact-box-wrap .contact-box_tel,
  #page-sending .contact-box-wrap .contact-box_tel,
  #page-error .contact-box-wrap .contact-box_tel {
    border-bottom: 1px solid #202020;
  }
  #page-contact .contact-box-wrap .contact-box_mail,
  #page-confirm .contact-box-wrap .contact-box_mail,
  #page-sending .contact-box-wrap .contact-box_mail,
  #page-error .contact-box-wrap .contact-box_mail {
    padding-top: 2rem;
  }
  .contact-privacy {
    max-height: 300px;
    margin-top: 1.5rem;
    padding: 3rem 10%;
  }
  #page-company .cont-greeting {
    margin-bottom: 3rem;
    padding-top: 200px;
    background-position: bottom 200px center;
  }
  #page-company .cont-greeting .greeting-box_wrap {
    padding: 50px 60px 80px;
  }
  #page-company .cont-overview {
    padding-bottom: 130px;
  }
  #page-feature .cont-feature {
    margin-top: 0;
    padding-top: 60px;
    padding-bottom: 130px;
  }
  #page-feature .feature-box_wrap .feature-box_bg {
    width: 30%;
    height: 100%;
  }
  #page-feature .feature-box_wrap .feature-box {
    -ms-flex-wrap: wrap;
    display: flex;
    position: relative;
        flex-wrap: wrap;
  }
  #page-feature .feature-box_wrap .feature-box .feature-box_contents {
    z-index: 3;
    position: absolute;
    bottom: -30%;
    width: 60%;
    padding: 50px;
  }
  #page-feature .feature-box_wrap .feature-box .feature-img_wrap {
    position: relative;
    width: 55%;
    margin-left: auto;
  }
  #page-feature .cont-feature_r .feature-box_bg {
    right: 0;
    left: auto;
  }
  #page-feature .cont-feature_r .feature-box .feature-box_contents {
    right: 0;
  }
  #page-feature .cont-feature_r .feature-box .feature-img_wrap {
    margin-right: auto;
    margin-left: 0;
  }
  #page-product .cont-product {
    padding: 120px 0 150px;
  }
  #page-product .cont-product .product-box_wrap .product-box .product-box_ttl h4 {
    font-size: 1.25rem;
  }
  #page-product .cont-product .product-box_wrap .col-12:not(:last-child) .product-box {
    margin-bottom: 40px;
  }
  #archive-product .main-view_ttl {
    font-size: 2.5rem;
  }
  #archive-product .cont-product .product-box_wrap:not(:last-child) {
    padding-bottom: 100px;
  }
}

@media (min-width: 1257px) {
  .container {
    max-width: 1140px;
    padding: 0 20px;
  }
  .col-xl {
    -ms-flex-preferred-size: 0;
    -ms-flex-positive: 1;
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .col-xl-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-xl-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%;
  }
  .col-xl-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-xl-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-xl-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .col-xl-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%;
  }
  .col-xl-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-xl-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%;
  }
  .col-xl-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%;
  }
  .col-xl-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-xl-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%;
  }
  .col-xl-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%;
  }
  .col-xl-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .order-xl-first {
    order: -1;
  }
  .order-xl-last {
    order: 13;
  }
  .order-xl-0 {
    order: 0;
  }
  .order-xl-1 {
    order: 1;
  }
  .order-xl-2 {
    order: 2;
  }
  .order-xl-3 {
    order: 3;
  }
  .order-xl-4 {
    order: 4;
  }
  .order-xl-5 {
    order: 5;
  }
  .order-xl-6 {
    order: 6;
  }
  .order-xl-7 {
    order: 7;
  }
  .order-xl-8 {
    order: 8;
  }
  .order-xl-9 {
    order: 9;
  }
  .order-xl-10 {
    order: 10;
  }
  .order-xl-11 {
    order: 11;
  }
  .order-xl-12 {
    order: 12;
  }
  .offset-xl-0 {
    margin-left: 0;
  }
  .offset-xl-1 {
    margin-left: 8.33333%;
  }
  .offset-xl-2 {
    margin-left: 16.66667%;
  }
  .offset-xl-3 {
    margin-left: 25%;
  }
  .offset-xl-4 {
    margin-left: 33.33333%;
  }
  .offset-xl-5 {
    margin-left: 41.66667%;
  }
  .offset-xl-6 {
    margin-left: 50%;
  }
  .offset-xl-7 {
    margin-left: 58.33333%;
  }
  .offset-xl-8 {
    margin-left: 66.66667%;
  }
  .offset-xl-9 {
    margin-left: 75%;
  }
  .offset-xl-10 {
    margin-left: 83.33333%;
  }
  .offset-xl-11 {
    margin-left: 91.66667%;
  }
}

@media print, screen and (min-width: 1257px) {
  /*====================================================================/
/*-------------------PCスタイル-------------------
/====================================================================*/
  html {
    width: 100%;
  }
  main {
    padding-top: 150px;
    padding-bottom: 120px;
  }
  .main-view {
    padding: 95px 0 75px;
  }
  .main-view h2.main-view_ttl {
    height: 185px;
    font-size: 4.375rem;
  }
  .main-view h2.main-view_ttl:after {
    height: 75px;
  }
  #page-contact .cont-contact .mw_wp_form,
  #page-confirm .cont-contact .mw_wp_form,
  #page-sending .cont-contact .mw_wp_form,
  #page-error .cont-contact .mw_wp_form {
    max-width: 960px;
    margin: auto;
  }
  #page-contact .contact-box-wrap,
  #page-confirm .contact-box-wrap,
  #page-sending .contact-box-wrap,
  #page-error .contact-box-wrap {
    padding-top: 85px;
    padding-bottom: 85px;
  }
  #page-contact .contact-box-wrap .contact-box,
  #page-confirm .contact-box-wrap .contact-box,
  #page-sending .contact-box-wrap .contact-box,
  #page-error .contact-box-wrap .contact-box {
    max-width: 960px;
    margin: auto;
  }
  #page-contact .contact-box-wrap .contact-box .contact-box_inner,
  #page-confirm .contact-box-wrap .contact-box .contact-box_inner,
  #page-sending .contact-box-wrap .contact-box .contact-box_inner,
  #page-error .contact-box-wrap .contact-box .contact-box_inner {
    -ms-flex-pack: start;
    -ms-flex-align: start;
    display: flex;
        align-items: flex-start;
        justify-content: flex-start;
  }
  #page-contact .contact-box-wrap .contact-box .contact-box_inner .ttl-wrap_l,
  #page-confirm .contact-box-wrap .contact-box .contact-box_inner .ttl-wrap_l,
  #page-sending .contact-box-wrap .contact-box .contact-box_inner .ttl-wrap_l,
  #page-error .contact-box-wrap .contact-box .contact-box_inner .ttl-wrap_l {
    width: 30%;
    padding-bottom: 0;
  }
  .contact-privacy__tit {
    font-size: 1.25rem;
  }
  #page-company .cont-greeting {
    padding-top: 300px;
    background-position: bottom 300px center;
  }
  #page-company .cont-greeting .greeting-box_wrap {
    padding: 50px 130px 100px;
  }
  #page-company .cont-overview .table-wrap {
    max-width: 960px;
    margin: auto;
  }
  #page-company .cont-access .embed-responsive {
    max-width: 960px;
    margin: auto;
  }
  #page-feature .cont-feature {
    padding-bottom: 100px;
  }
  #page-feature .feature-box_wrap .feature-box .feature-box_contents {
    bottom: -15%;
    padding: 80px 55px;
  }
  #page-product .cont-product {
    padding: 180px 0 300px;
  }
  #page-product .cont-product .product-box_wrap .product-box .product-box_ttl h4 {
    font-size: 1.2rem;
  }
  #archive-product .main-view_ttl {
    font-size: 3.125rem;
  }
  #archive-product .cont-product .product-box_wrap .product-box .product-box_txt p {
    font-size: 1rem;
  }
}

@media only screen and (min-width: 1400px) {
  .container {
    max-width: 1240px;
  }
  #page-company .cont-greeting .greeting-box_wrap .greeting-box {
    max-width: 1140px;
    margin: auto;
  }
}

@media only screen and (min-width: 1600px) {
  .container {
    max-width: 1440px;
  }
}

@media print, screen and (min-width: 1920px) {
  /*====================================================================/
/*-------------------full PCスタイル-------------------
/====================================================================*/
  html {
    width: 100%;
  }
}

@media screen and (max-width: 1256px) {
  /*====================================================================/
/*------------------PC以下---------
/====================================================================*/
  html {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  /*====================================================================/
/*------------------スマホタブレット共通スタイル---------
/====================================================================*/
  html {
    width: 100%;
  }
  .page-navi {
    padding-top: 20px;
  }
  .mailform {
    table-layout: fixed;
  }
  .mailform th,
  .mailform td {
    display: block;
  }
  #page-contact .contact-step ol.step-list,
  #page-confirm .contact-step ol.step-list,
  #page-sending .contact-step ol.step-list,
  #page-error .contact-step ol.step-list {
    flex-direction: column;
  }
  #page-contact .contact-step ol.step-list li span,
  #page-confirm .contact-step ol.step-list li span,
  #page-sending .contact-step ol.step-list li span,
  #page-error .contact-step ol.step-list li span {
    -ms-flex-align: center;
    display: flex;
        align-items: center;
  }
  #page-contact .contact-step ol.step-list li span:before,
  #page-confirm .contact-step ol.step-list li span:before,
  #page-sending .contact-step ol.step-list li span:before,
  #page-error .contact-step ol.step-list li span:before {
    -ms-flex-align: center;
    -ms-flex-pack: center;
    display: flex;
        align-items: center;
        justify-content: center;
    width: 60px;
    height: 60px;
    margin-right: 1.2rem;
    margin-bottom: 0;
    border: 1px solid #dcdcdc;
    border-radius: 50%;
    background: #fff;
    font-size: 1.125rem;
    text-align: center;
  }
  #page-contact .contact-step ol.step-list li:not(:last-child),
  #page-confirm .contact-step ol.step-list li:not(:last-child),
  #page-sending .contact-step ol.step-list li:not(:last-child),
  #page-error .contact-step ol.step-list li:not(:last-child) {
    margin-bottom: 1rem;
  }
  #page-contact .contact-step ol.step-list li:not(:last-child):after,
  #page-confirm .contact-step ol.step-list li:not(:last-child):after,
  #page-sending .contact-step ol.step-list li:not(:last-child):after,
  #page-error .contact-step ol.step-list li:not(:last-child):after {
    top: 60px;
    left: 30px;
    width: 1px;
    height: 100%;
  }
  #page-contact .contact-step ol.step-list li.now span:before,
  #page-confirm .contact-step ol.step-list li.now span:before,
  #page-sending .contact-step ol.step-list li.now span:before,
  #page-error .contact-step ol.step-list li.now span:before {
    border-color: #8ad7e8;
    background: #8ad7e8;
  }
}

@media screen and (max-width: 560px) {
  /*====================================================================/
/*------------------スマホのみスタイル----------------
/====================================================================*/
  html {
    width: 100%;
  }
}

@media screen and (max-width: 375px) {
  /*====================================================================/
/*------------------iPhone 以下----------------
/====================================================================*/
  html {
    width: 100%;
  }
  /*2021/10 追記------*/
  #page-contact .contact-box-wrap .contact-box .contact-box_inner .tel_num .tel .tel-link {
    font-size: 1.675rem;
  }
}

@media screen and (max-width: 976px) {
  .mailform td {
    padding: 1rem 0 2rem;
  }
}

/*# sourceMappingURL=map/page.css.map */
