@charset "UTF-8";
/*---------------------------------
SCSS
---------------------------------*/
/*@mixin mob {
	@media screen and (max-width: 375px) {
    	@content;
	}
}*/
._en {
  font-family: "Montserrat", "Noto Sans JP", sans-serif;
  font-weight: 700;
}

/*---------------------------------
COMMON
---------------------------------*/
*,
*:before,
*:after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

html {
  -webkit-text-size-adjust: 100%;
     -moz-text-size-adjust: 100%;
      -ms-text-size-adjust: 100%;
          text-size-adjust: 100%;
  font-size: 62.5%;
}

body {
  font-family: YakuHanJP_Narrow, "Noto Sans JP", sans-serif;
  color: #333;
  font-weight: 500 !important;
  font-size: 1.6rem;
  line-height: 1.5;
  letter-spacing: 0.06em;
  scrollbar-width: thin;
  scrollbar-color: #000039 #fff;
  overflow-x: hidden;
  overflow-y: hidden;
  position: relative;
  opacity: 0;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
@media screen and (max-width: 768px) {
  body {
    font-size: 1.4rem;
  }
}
body:before {
  content: "";
  background-color: rgba(0, 0, 0, 0);
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
body.load {
  overflow-y: auto;
  opacity: 1;
}
body.overlay {
  overflow: hidden;
  height: 100%;
}
body.overlay:before {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: 9998;
}

body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
code,
form,
fieldset,
legend,
input,
textarea,
p,
blockquote,
th,
td,
figure {
  margin: 0;
  padding: 0;
}

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

fieldset,
img {
  border: 0;
}

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

ol,
ul {
  list-style: none;
}

caption,
th {
  text-align: left;
}

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

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

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

sup {
  vertical-align: text-top;
}

sub {
  vertical-align: text-bottom;
}

input,
textarea,
select,
button {
  color: inherit;
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  /**font-size: 100%;
  border-radius: 0;
  border: none;
  appearance: none;
  -webkit-appearance: none;
  background-color: inherit;*/
}

textarea {
  resize: vertical;
  display: block;
}

button {
  padding: 0;
  cursor: pointer;
}

legend {
  color: #333;
}

main {
  position: relative;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
  /* &.scrolled{
  } */
}
main#page {
  background-color: #e3ebf1;
}

a {
  text-decoration: none;
  color: inherit;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
  text-underline-offset: 0.3em;
}
.post-layout {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 7rem;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 1200px) {
  .post-layout {
    gap: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .post-layout {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-flow: column-reverse;
            flex-flow: column-reverse;
    gap: 3rem;
  }
}

.single-post ul.toc_widget_list.no_bullets {
  counter-reset: list-num;
}

.single-post ul.toc_widget_list.no_bullets li {
  position: relative;
  padding-left: 1.5em;
  /* 数字分の余白 */
}

.single-post ul.toc_widget_list.no_bullets li::before {
  counter-increment: list-num;
  content: counter(list-num);
  position: absolute;
  top: 3px;
  left: 0px;
  width: 1.9em;
  height: 1.9em;
  border-radius: 50%;
  background: #000;
  color: #fff;
  font-size: 0.55em;
  font-weight: 700;
  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;
  padding-left: 0.1rem;
  padding-bottom: 0.1rem;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .single-post ul.toc_widget_list.no_bullets li::before {
    padding-bottom: 0.2rem;
    top: 3px;
  }
}

.single-post ._cnt p a {
  color: blue !important;
}

.post-sidebar {
  top: 17rem;
  width: 63rem;
  background: #fff;
  padding-inline: 3rem;
  padding-block: 3rem;
  border-radius: 3rem;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  position: sticky;
}
.scrolled .post-sidebar {
  top: 7rem;
}
@media screen and (max-width: 768px) {
  .post-sidebar {
    width: 100%;
    position: unset;
  }
}

.post-main {
  width: 70%;
}

@media screen and (max-width: 1200px) {
  .post-main {
    width: 65%;
  }
}
@media screen and (max-width: 768px) {
  .post-main {
    width: 100%;
  }
}
img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}

svg {
  display: block;
}

* {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  image-rendering: -webkit-optimize-contrast;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}

_::-webkit-full-page-media,
_:future,
:root * {
  image-rendering: auto;
}

*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

::-webkit-scrollbar {
  width: 0.439238653vw;
}
@media screen and (min-width: 1466px) {
  ::-webkit-scrollbar {
    width: 6px;
  }
}
@media screen and (max-width: 768px) {
  ::-webkit-scrollbar {
    width: 1.0666666667vw;
  }
}

::-webkit-scrollbar-track {
  background-color: #fff;
}

::-webkit-scrollbar-thumb {
  background-color: #000039;
}

br.pc,
div.pc {
  display: block;
}
@media screen and (max-width: 768px) {
  br.pc,
  div.pc {
    display: none;
  }
}
br.sp,
div.sp {
  display: none;
}
@media screen and (max-width: 768px) {
  br.sp,
  div.sp {
    display: block;
  }
}

span.pc,
i.pc {
  display: inline;
  font-style: normal;
}
@media screen and (max-width: 768px) {
  span.pc,
  i.pc {
    display: none;
  }
}
span.sp,
i.sp {
  display: none;
}
@media screen and (max-width: 768px) {
  span.sp,
  i.sp {
    display: inline;
    font-style: normal;
  }
}

.hidden {
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
  display: inline-block;
}

.fadeUp {
  -webkit-transition: all 1s ease;
  transition: all 1s ease;
  opacity: 0;
  transform: translate(0, 2.9282576867vw);
  -webkit-transform: translate(0, 2.9282576867vw);
}
@media screen and (min-width: 1466px) {
  .fadeUp {
    transform: translate(0, 40px);
    -webkit-transform: translate(0, 40px);
  }
}
@media screen and (max-width: 768px) {
  .fadeUp {
    transform: translate(0, 5.3333333333vw);
    -webkit-transform: translate(0, 5.3333333333vw);
  }
}

.fadeUp-in {
  opacity: 1;
  transform: translate(0, 0);
  -webkit-transform: translate(0, 0);
}

.fadeIn {
  -webkit-transition: all 1s ease;
  transition: all 1s ease;
  opacity: 0;
}

.fadeIn-in {
  opacity: 1;
}

#wrapper {
  width: 100vw;
  position: relative;
  padding: 0;
}
@media screen and (max-width: 768px) {
  #wrapper {
    overflow: hidden;
  }
}

.inner {
  margin: 0 auto;
  padding: 0 3.6603221083vw;
  width: auto;
}
@media screen and (min-width: 1466px) {
  .inner {
    width: 1366px;
    padding: 0;
    max-width: none;
  }
  #post-column .inner {
    width: 90%;
    max-width: 1800px;
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto;
  }
}
@media screen and (max-width: 768px) {
  .inner {
    width: auto;
    padding: 0 5.3333333333vw;
    max-width: none;
  }
}

.swiper-button-next {
  background: url(../img/slider-arrow-r.svg) no-repeat center/contain;
  width: 3.6603221083vw;
  height: 3.6603221083vw;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (min-width: 1466px) {
  .swiper-button-next {
    width: 50px;
    height: 50px;
  }
}
@media screen and (max-width: 768px) {
  .swiper-button-next {
    width: 13.3333333333vw;
    height: 13.3333333333vw;
  }
}
.swiper-button-next:after {
  content: none;
}

.swiper-button-prev {
  background: url(../img/slider-arrow-l.svg) no-repeat center/contain;
  width: 3.6603221083vw;
  height: 3.6603221083vw;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (min-width: 1466px) {
  .swiper-button-prev {
    width: 50px;
    height: 50px;
  }
}
@media screen and (max-width: 768px) {
  .swiper-button-prev {
    width: 13.3333333333vw;
    height: 13.3333333333vw;
  }
}
.swiper-button-prev:after {
  content: none;
}

/*---------------------------------
HEADER
---------------------------------*/
header {
  width: 100vw;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10001;
  font-weight: 600;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
  height: 9.5168374817vw;
  background-color: transparent;
  color: #fff;
}
@media screen and (min-width: 1466px) {
  header {
    height: 130px;
  }
}
@media screen and (max-width: 1024px) {
  header {
    height: 9.5168374817vw;
  }
}
@media screen and (max-width: 768px) {
  header {
    height: 16vw;
    background-color: rgba(0, 0, 57, 0.95);
  }
}
header.scrolled {
  top: -9.5168374817vw;
}
@media screen and (min-width: 1466px) {
  header.scrolled {
    top: -130px;
  }
}
@media screen and (max-width: 1024px) {
  header.scrolled {
    top: 0;
  }
}
header._bg {
  background-color: #000039;
}
header .header-top {
  position: relative;
  height: 100%;
}
header .header-top ._wrap {
  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;
  height: 100%;
  padding: 0 2.196193265vw 0 2.9282576867vw;
}
@media screen and (min-width: 1466px) {
  header .header-top ._wrap {
    padding: 0 30px 0 40px;
  }
}
@media screen and (max-width: 768px) {
  header .header-top ._wrap {
    padding: 0 5.3333333333vw;
  }
}
header .header-top .header-logo ._h {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  line-height: 1;
}
header .header-top .header-logo ._h ._p {
  font-size: 1.0980966325vw;
  margin: 0 0 1.2em;
}
@media screen and (min-width: 1466px) {
  header .header-top .header-logo ._h ._p {
    font-size: 15px;
  }
}
@media screen and (max-width: 1740px) {
  header .header-top .header-logo ._h ._p {
    font-size: 0.78125vw;
  }
}
@media screen and (max-width: 1024px) {
  header .header-top .header-logo ._h ._p {
    font-size: 1.0980966325vw;
  }
}
@media screen and (max-width: 768px) {
  header .header-top .header-logo ._h ._p {
    font-size: 2.6666666667vw;
    margin: 0 0 0.8em;
  }
}
header .header-top .header-logo ._h a {
  display: inline-block;
  background: url(../img/logo.svg) no-repeat center/contain;
  width: 28.8433382138vw;
  height: 3.0014641288vw;
}
@media screen and (min-width: 1466px) {
  header .header-top .header-logo ._h a {
    width: 394px;
    height: 41px;
  }
}
@media screen and (max-width: 1740px) {
  header .header-top .header-logo ._h a {
    width: 20.5208333333vw;
    height: 2.1354166667vw;
  }
}
@media screen and (max-width: 1024px) {
  header .header-top .header-logo ._h a {
    width: 28.8433382138vw;
    height: 3.0014641288vw;
  }
}
@media screen and (max-width: 768px) {
  header .header-top .header-logo ._h a {
    width: 73.3333333333vw;
    height: 7.4666666667vw;
  }
}
header .header-top .header-menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.7320644217vw;
}
@media screen and (min-width: 1466px) {
  header .header-top .header-menu {
    gap: 30px;
  }
}
@media screen and (max-width: 1740px) {
  header .header-top .header-menu {
    gap: 1.5625vw;
  }
}
@media screen and (max-width: 1024px) {
  header .header-top .header-menu nav {
    display: none;
  }
}
header .header-top .header-menu nav ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 1.0248901903vw;
}
@media screen and (min-width: 1466px) {
  header .header-top .header-menu nav ul {
    font-size: 16px;
  }
}
@media screen and (max-width: 1740px) {
  header .header-top .header-menu nav ul {
    font-size: 0.8333333333vw;
  }
}
header .header-top .header-menu nav ul li {
  padding: 0 1em 0 0.5em;
  position: relative;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 1466px) {
  header .header-top .header-menu nav ul li {
    padding: 0 1.5em 0 1em;
  }
}
@media screen and (max-width: 1740px) {
  header .header-top .header-menu nav ul li {
    padding: 0 1.5em 0 1em;
  }
}
header .header-top .header-menu nav ul li a {
  font-weight: 600;
  cursor: pointer;
}
header .header-top .header-menu nav ul li a:after {
  content: "";
  position: absolute;
  top: 150%;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  background-color: #fff;
  border-radius: 0.2196193265vw;
  height: 0;
  width: 0.2196193265vw;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
@media screen and (min-width: 1466px) {
  header .header-top .header-menu nav ul li a:after {
    border-radius: 3px;
    width: 3px;
  }
}
@media screen and (max-width: 1740px) {
  header .header-top .header-menu nav ul li a:after {
    border-radius: 0.15625vw;
    width: 0.15625vw;
  }
}
header .header-top .header-menu nav ul li a:hover {
  color: #ffde00;
}
header .header-top .header-menu nav ul li a:hover:after {
  height: 1.4641288433vw;
}
@media screen and (min-width: 1466px) {
  header .header-top .header-menu nav ul li a:hover:after {
    height: 20px;
  }
}
@media screen and (max-width: 1740px) {
  header .header-top .header-menu nav ul li a:hover:after {
    height: 1.0416666667vw;
  }
}
header .header-top .header-menu nav ul li.current a {
  color: #ffde00;
}
header .header-top .header-menu nav ul li.current a:after {
  height: 1.4641288433vw;
}
@media screen and (min-width: 1466px) {
  header .header-top .header-menu nav ul li.current a:after {
    height: 20px;
  }
}
@media screen and (max-width: 1740px) {
  header .header-top .header-menu nav ul li.current a:after {
    height: 1.0416666667vw;
  }
}
header .header-top .header-menu nav ul li:last-child:after {
  content: none;
}
header .header-top .header-menu .header-btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.7320644217vw;
}
@media screen and (min-width: 1466px) {
  header .header-top .header-menu .header-btn {
    gap: 10px;
  }
}
@media screen and (max-width: 1740px) {
  header .header-top .header-menu .header-btn {
    gap: 0.5208333333vw;
  }
}
@media screen and (max-width: 1024px) {
  header .header-top .header-menu .header-btn {
    padding: 0 9.5168374817vw 0 0;
    gap: 0.7320644217vw;
  }
}
@media screen and (max-width: 768px) {
  header .header-top .header-menu .header-btn {
    display: none;
  }
}
header .header-top .header-menu .header-btn a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 15.3733528551vw;
  height: 5.1244509517vw;
  border-radius: 0.7320644217vw;
  -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.1713030747vw;
  font-weight: 700;
  position: relative;
  overflow: hidden;
}
@media screen and (min-width: 1466px) {
  header .header-top .header-menu .header-btn a {
    width: 210px;
    height: 70px;
    border-radius: 10px;
    font-size: 16px;
  }
}
@media screen and (max-width: 1740px) {
  header .header-top .header-menu .header-btn a {
    width: 10.9375vw;
    height: 3.6458333333vw;
    border-radius: 0.5208333333vw;
    font-size: 0.8333333333vw;
  }
}
@media screen and (max-width: 1024px) {
  header .header-top .header-menu .header-btn a {
    width: 15.3733528551vw;
    height: 5.1244509517vw;
    border-radius: 0.7320644217vw;
    font-size: 1.1713030747vw;
  }
}
header .header-top .header-menu .header-btn a:before {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background-size: contain;
  background-repeat: no-repeat;
}
header .header-top .header-menu .header-btn a:after {
  content: "";
  position: absolute;
  top: -10%;
  left: -100%;
  width: 100%;
  height: 120%;
  z-index: 1;
  background: rgba(255, 255, 255, 0.2);
  background: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0)), color-stop(50%, rgba(255, 255, 255, 0.3)), to(rgba(255, 255, 255, 0)));
  background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 50%, rgba(255, 255, 255, 0) 100%);
  -webkit-transition: 0.4s ease;
  transition: 0.4s ease;
  rotate: -10deg;
}
header .header-top .header-menu .header-btn a span {
  padding: 0 0 0 1em;
  position: relative;
  z-index: 10;
}
header .header-top .header-menu .header-btn a:hover:after {
  left: 100%;
}
header .header-top .header-menu .header-btn ._catalog a {
  background-color: #008865;
}
header .header-top .header-menu .header-btn ._catalog a:before {
  background-image: url(../img/header-icon01.svg);
  width: 1.5373352855vw;
  height: 1.9765739385vw;
  left: 1.4641288433vw;
}
@media screen and (min-width: 1466px) {
  header .header-top .header-menu .header-btn ._catalog a:before {
    width: 21px;
    height: 27px;
    left: 20px;
  }
}
@media screen and (max-width: 1740px) {
  header .header-top .header-menu .header-btn ._catalog a:before {
    width: 1.09375vw;
    height: 1.40625vw;
    left: 1.0416666667vw;
  }
}
@media screen and (max-width: 1024px) {
  header .header-top .header-menu .header-btn ._catalog a:before {
    width: 1.5373352855vw;
    height: 1.9765739385vw;
    left: 1.4641288433vw;
  }
}
header .header-top .header-menu .header-btn ._estimate a {
  background-color: #ffde00;
  color: #000039;
}
header .header-top .header-menu .header-btn ._estimate a:before {
  background-image: url(../img/header-icon02.svg);
  width: 1.4641288433vw;
  height: 2.0497803807vw;
  left: 1.6105417277vw;
}
@media screen and (min-width: 1466px) {
  header .header-top .header-menu .header-btn ._estimate a:before {
    width: 20px;
    height: 28px;
    left: 22px;
  }
}
@media screen and (max-width: 1740px) {
  header .header-top .header-menu .header-btn ._estimate a:before {
    width: 1.0416666667vw;
    height: 1.4583333333vw;
    left: 1.1458333333vw;
  }
}
@media screen and (max-width: 1024px) {
  header .header-top .header-menu .header-btn ._estimate a:before {
    width: 1.4641288433vw;
    height: 2.0497803807vw;
    left: 1.6105417277vw;
  }
}
#megamenu {
  position: fixed;
  z-index: -1;
  opacity: 0;
  visibility: hidden;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.5);
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
@media screen and (max-width: 1024px) {
  #megamenu {
    display: none !important;
  }
}
#megamenu ._close {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
#megamenu.active {
  z-index: 9999;
  opacity: 1;
  visibility: visible;
}
#megamenu .mm-cnt {
  position: absolute;
  top: 8.78477306vw;
  left: 50%;
  width: 100vw;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  background: #fff;
  padding: 2.196193265vw;
  border-radius: 0.878477306vw;
  z-index: -1;
  visibility: hidden;
  opacity: 0;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
@media screen and (min-width: 1466px) {
  #megamenu .mm-cnt {
    top: 120px;
    width: 1366px;
    padding: 30px;
    border-radius: 12px;
  }
}
#megamenu .mm-cnt:before {
  content: "";
  background: url(../img/mm-bg.webp) no-repeat center bottom/cover;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  opacity: 0.2;
}
#megamenu .mm-cnt.current {
  z-index: 10;
  visibility: visible;
  opacity: 1;
}
#megamenu .mm-cnt ._wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  position: relative;
  z-index: 10;
}
#megamenu .mm-cnt ._wrap ._col {
  width: 30.8931185944vw;
}
@media screen and (min-width: 1466px) {
  #megamenu .mm-cnt ._wrap ._col {
    width: 422px;
  }
}
#megamenu .mm-cnt ._wrap ._col figure {
  margin: 0 0 1.4641288433vw;
  width: 100%;
}
@media screen and (min-width: 1466px) {
  #megamenu .mm-cnt ._wrap ._col figure {
    margin: 0 0 20px;
  }
}
#megamenu .mm-cnt ._wrap ._col dl dt {
  font-size: 1.4641288433vw;
  margin: 0 0 0.6em;
  font-weight: 700;
}
@media screen and (min-width: 1466px) {
  #megamenu .mm-cnt ._wrap ._col dl dt {
    font-size: 20px;
  }
}
#megamenu .mm-cnt ._wrap ._col dl dd {
  font-size: 1.1713030747vw;
  margin: 0 0 0.6em;
}
@media screen and (min-width: 1466px) {
  #megamenu .mm-cnt ._wrap ._col dl dd {
    font-size: 16px;
  }
}
#megamenu .mm-cnt ._wrap ._col dl dd a {
  color: #000078;
  padding: 0 0 0 1.5em;
  position: relative;
}
#megamenu .mm-cnt ._wrap ._col dl dd a:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  background: url(../img/mm-arrow.svg) no-repeat center/contain;
  width: 1.0248901903vw;
  height: 0.8052708638vw;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (min-width: 1466px) {
  #megamenu .mm-cnt ._wrap ._col dl dd a:before {
    width: 14px;
    height: 11px;
  }
}
#megamenu .mm-cnt ._wrap ._col dl dd a:hover {
  color: #000039;
}
#megamenu .mm-cnt ._wrap ._col dl dd a:hover:before {
  left: 0.3660322108vw;
}
@media screen and (min-width: 1466px) {
  #megamenu .mm-cnt ._wrap ._col dl dd a:hover:before {
    left: 5px;
  }
}
/*---------------------------------
SP MENU
---------------------------------*/
#sp-menu-trigger {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 10010;
  display: none;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
@media screen and (max-width: 1024px) {
  #sp-menu-trigger {
    display: block;
  }
}
#sp-menu-trigger 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;
  color: #fff;
  width: 9.5168374817vw;
  height: 9.5168374817vw;
  background-color: #ffde00;
  overflow: hidden;
  cursor: pointer;
}
@media screen and (max-width: 768px) {
  #sp-menu-trigger a {
    width: 16vw;
    height: 16vw;
  }
}
#sp-menu-trigger a:hover ._icon {
  scale: 1.05;
}
#sp-menu-trigger a ._icon {
  width: 4.6852122987vw;
  height: 3.6603221083vw;
  position: relative;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
@media screen and (max-width: 768px) {
  #sp-menu-trigger a ._icon {
    width: 8.5333333333vw;
    height: 6.6666666667vw;
  }
}
#sp-menu-trigger a ._icon span {
  position: absolute;
  width: 100%;
  height: 0.2928257687vw;
  left: 0;
  background-color: #000039;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
@media screen and (max-width: 768px) {
  #sp-menu-trigger a ._icon span {
    height: 0.5333333333vw;
  }
}
#sp-menu-trigger a ._icon span:nth-child(1) {
  top: 0;
}
#sp-menu-trigger a ._icon span:nth-child(2) {
  top: 50%;
  margin-top: -0.0732064422vw;
}
@media screen and (max-width: 768px) {
  #sp-menu-trigger a ._icon span:nth-child(2) {
    margin-top: -0.2666666667vw;
  }
}
#sp-menu-trigger a ._icon span:nth-child(3) {
  bottom: 0;
}
#sp-menu-trigger.active a ._icon span:nth-child(1) {
  -webkit-transform: translate(0vw, 1.6837481698vw) rotate(-135deg);
          transform: translate(0vw, 1.6837481698vw) rotate(-135deg);
}
@media screen and (max-width: 768px) {
  #sp-menu-trigger.active a ._icon span:nth-child(1) {
    -webkit-transform: translate(0vw, 3.0666666667vw) rotate(-135deg);
            transform: translate(0vw, 3.0666666667vw) rotate(-135deg);
  }
}
#sp-menu-trigger.active a ._icon span:nth-child(2) {
  opacity: 0;
  -webkit-transform: translate(100%, 0);
          transform: translate(100%, 0);
}
#sp-menu-trigger.active a ._icon span:nth-child(3) {
  -webkit-transform: translate(0vw, -1.6837481698vw) rotate(135deg);
          transform: translate(0vw, -1.6837481698vw) rotate(135deg);
}
@media screen and (max-width: 768px) {
  #sp-menu-trigger.active a ._icon span:nth-child(3) {
    -webkit-transform: translate(0vw, -3.0666666667vw) rotate(135deg);
            transform: translate(0vw, -3.0666666667vw) rotate(135deg);
  }
}

#sp-gmenu {
  position: fixed;
  top: 9.5168374817vw;
  right: 0;
  width: 40vw;
  background-color: rgba(0, 0, 57, 0.95);
  color: #fff;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
  opacity: 0;
  visibility: hidden;
  z-index: -1;
}
@media screen and (max-width: 768px) {
  #sp-gmenu {
    width: 100vw;
    top: 16vw;
    left: 0;
    right: auto;
  }
}
#sp-gmenu.active {
  right: 0;
  opacity: 1;
  visibility: visible;
  z-index: 9999;
}
#sp-gmenu.active .sp-gmenu-wrap {
  max-height: calc(100vh - 9.5168374817vw);
  max-height: calc(100svh - 9.5168374817vw);
}
@media screen and (max-width: 768px) {
  #sp-gmenu.active .sp-gmenu-wrap {
    max-height: calc(100vh - 16vw);
    max-height: calc(100svh - 16vw);
  }
}
#sp-gmenu .sp-gmenu-wrap {
  padding: 1.4641288433vw 2.9282576867vw 4.39238653vw;
  overflow: auto;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
@media screen and (max-width: 768px) {
  #sp-gmenu .sp-gmenu-wrap {
    padding: 5.3333333333vw 5.3333333333vw 16vw;
  }
}
#sp-gmenu ._list {
  margin: 0 0 1.0980966325vw;
}
@media screen and (max-width: 768px) {
  #sp-gmenu ._list {
    margin: 0 0 4vw;
  }
}
#sp-gmenu ._list ul li {
  border-bottom: solid rgba(255, 255, 255, 0.4) 0.0732064422vw;
  font-size: 1.0980966325vw;
  font-weight: 600;
}
@media screen and (max-width: 768px) {
  #sp-gmenu ._list ul li {
    border-bottom-width: 0.2666666667vw;
    font-size: 3.7333333333vw;
  }
}
#sp-gmenu ._list ul li:last-child {
  border-bottom: none;
}
#sp-gmenu ._list ul li a {
  display: block;
  position: relative;
  padding: 1.4em 0;
  position: relative;
}
#sp-gmenu ._list ul li a:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0.6em;
  width: 0.8052708638vw;
  height: 1.0248901903vw;
  background: url(../img/sp-menu-arrow.svg) no-repeat center/contain;
  margin-top: -0.5124450952vw;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
@media screen and (max-width: 768px) {
  #sp-gmenu ._list ul li a:after {
    width: 2.9333333333vw;
    height: 3.7333333333vw;
    margin-top: -1.8666666667vw;
  }
}
#sp-gmenu ._list ul li a:hover:after {
  right: 0;
}
#sp-gmenu ._list ul li a span {
  display: inline-block;
  position: relative;
}
#sp-gmenu ._list ul li._pa {
  position: relative;
  padding-bottom: 1.4em;
}
#sp-gmenu ._list ul li._pa ._b {
  display: grid;
  grid-auto-flow: column;
  grid-template-columns: 1.5fr 1fr;
  grid-template-rows: 1fr 1fr 1fr 1fr;
}
#sp-gmenu ._list ul li._pa ._b a {
  padding: 0.3em 0;
}
#sp-gmenu ._list ul li._pa a:after {
  content: none;
}
#sp-gmenu ._btn {
  display: none;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 768px) {
  #sp-gmenu ._btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
#sp-gmenu ._btn a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 11.8960468521vw;
  height: 5.8565153734vw;
  border-radius: 0.7320644217vw;
  -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.1713030747vw;
  font-weight: 700;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  #sp-gmenu ._btn a {
    width: 43.3333333333vw;
    height: 21.3333333333vw;
    border-radius: 2.6666666667vw;
    font-size: 4.2666666667vw;
  }
}
#sp-gmenu ._btn a:before {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 1.0248901903vw;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  background-size: contain;
  background-repeat: no-repeat;
}
@media screen and (max-width: 768px) {
  #sp-gmenu ._btn a:before {
    bottom: 3.7333333333vw;
  }
}
#sp-gmenu ._btn a:after {
  content: "";
  position: absolute;
  top: -10%;
  left: -100%;
  width: 100%;
  height: 120%;
  z-index: 1;
  background: rgba(255, 255, 255, 0.2);
  background: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0)), color-stop(50%, rgba(255, 255, 255, 0.3)), to(rgba(255, 255, 255, 0)));
  background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 50%, rgba(255, 255, 255, 0) 100%);
  -webkit-transition: 0.4s ease;
  transition: 0.4s ease;
  rotate: -10deg;
}
#sp-gmenu ._btn a span {
  padding: 0 0 2.196193265vw;
  position: relative;
  z-index: 10;
}
@media screen and (max-width: 768px) {
  #sp-gmenu ._btn a span {
    padding: 0 0 8vw;
  }
}
#sp-gmenu ._btn a:hover:after {
  left: 100%;
}
#sp-gmenu ._btn ._catalog a {
  background-color: #008865;
}
#sp-gmenu ._btn ._catalog a:before {
  background-image: url(../img/header-icon01.svg);
  width: 1.1713030747vw;
  height: 1.5373352855vw;
}
@media screen and (max-width: 768px) {
  #sp-gmenu ._btn ._catalog a:before {
    width: 4.2666666667vw;
    height: 5.6vw;
  }
}
#sp-gmenu ._btn ._estimate a {
  background-color: #ffde00;
  color: #000039;
}
#sp-gmenu ._btn ._estimate a:before {
  background-image: url(../img/header-icon02.svg);
  width: 1.1713030747vw;
  height: 1.6105417277vw;
}
@media screen and (max-width: 768px) {
  #sp-gmenu ._btn ._estimate a:before {
    width: 4.2666666667vw;
    height: 5.8666666667vw;
  }
}

/*---------------------------------
FOOTER
---------------------------------*/
#footer-contact {
  background: url(../img/footer-contact-bg.webp) no-repeat center/cover;
}
@media screen and (max-width: 768px) {
  #footer-contact {
    background: url(../img/footer-contact-bg_sp.webp) no-repeat center top/contain;
    padding: 53.3333333333vw 0 0;
  }
}
#footer-contact ._wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 768px) {
  #footer-contact ._wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
#footer-contact ._wrap ._box {
  width: 40.9956076135vw;
  padding: 5.1244509517vw 2.7818448023vw 4.39238653vw;
  background: #000039 url(../img/bg-logo.svg) no-repeat center/44.3631039531vw auto;
  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;
}
@media screen and (min-width: 1466px) {
  #footer-contact ._wrap ._box {
    width: 41.6666666667vw;
    padding: 3.6458333333vw 3.125vw 3.125vw;
    background-size: 31.5625vw auto;
  }
}
@media screen and (max-width: 768px) {
  #footer-contact ._wrap ._box {
    width: 100%;
    padding: 6.6666666667vw 5.3333333333vw 6.6666666667vw;
    background-size: 89.3333333333vw auto;
  }
}
#footer-contact ._wrap ._box h2 {
  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;
  margin: 0 0 1.4641288433vw;
}
@media screen and (min-width: 1466px) {
  #footer-contact ._wrap ._box h2 {
    margin: 0 0 20px;
  }
}
@media screen and (max-width: 768px) {
  #footer-contact ._wrap ._box h2 {
    margin: 0 0 2.6666666667vw;
  }
}
#footer-contact ._wrap ._box h2 small {
  display: inline-block;
  font-size: 1.317715959vw;
  color: #fff;
  padding: 0 1.25em;
  position: relative;
  font-weight: 700;
}
@media screen and (min-width: 1466px) {
  #footer-contact ._wrap ._box h2 small {
    font-size: 18px;
  }
}
@media screen and (max-width: 768px) {
  #footer-contact ._wrap ._box h2 small {
    font-size: 4.8vw;
  }
}
#footer-contact ._wrap ._box h2 small:before {
  content: "／";
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
  rotate: 10deg;
  font-weight: 700;
}
#footer-contact ._wrap ._box h2 small:after {
  content: "／";
  position: absolute;
  top: 0;
  right: 0;
  rotate: -10deg;
  font-weight: 700;
}
#footer-contact ._wrap ._box h2 span {
  font-size: 2.9282576867vw;
  color: #ffde00;
  font-weight: 700;
}
@media screen and (min-width: 1466px) {
  #footer-contact ._wrap ._box h2 span {
    font-size: 40px;
  }
}
@media screen and (max-width: 768px) {
  #footer-contact ._wrap ._box h2 span {
    font-size: 6.9333333333vw;
    line-height: 1.3;
  }
}
#footer-contact ._wrap ._box ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify-content;
      -ms-flex-pack: justify-content;
          justify-content: justify-content;
  gap: 0.7320644217vw;
  margin: 0 0 1.4641288433vw;
}
@media screen and (min-width: 1466px) {
  #footer-contact ._wrap ._box ul {
    gap: 10px;
    margin: 0 0 20px;
  }
}
@media screen and (max-width: 1740px) {
  #footer-contact ._wrap ._box ul {
    gap: 0.5208333333vw;
    margin: 0 0 1.0416666667vw;
  }
}
@media screen and (max-width: 768px) {
  #footer-contact ._wrap ._box ul {
    gap: 1.6vw;
    margin: 0 0 2.1333333333vw;
  }
}
#footer-contact ._wrap ._box ul li {
  width: 24.5241581259vw;
  height: 9.663250366vw;
  background-color: #ffde00;
  border-radius: 0.7320644217vw;
  padding: 1.4641288433vw 0 0;
  color: #000078;
  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;
  line-height: 1.2;
}
@media screen and (min-width: 1466px) {
  #footer-contact ._wrap ._box ul li {
    width: 335px;
    height: 132px;
    border-radius: 10px;
    padding: 20px 0 0;
  }
}
@media screen and (max-width: 1740px) {
  #footer-contact ._wrap ._box ul li {
    width: 17.4479166667vw;
    height: 6.875vw;
    border-radius: 0.5208333333vw;
    padding: 1.0416666667vw 0 0;
  }
}
@media screen and (max-width: 768px) {
  #footer-contact ._wrap ._box ul li {
    width: 44vw;
    height: 18.6666666667vw;
    border-radius: 2.6666666667vw;
    padding: 4vw 0 0;
  }
}
#footer-contact ._wrap ._box ul li span {
  font-size: 1.756954612vw;
  font-weight: 900;
}
@media screen and (min-width: 1466px) {
  #footer-contact ._wrap ._box ul li span {
    font-size: 24px;
  }
}
@media screen and (max-width: 1740px) {
  #footer-contact ._wrap ._box ul li span {
    font-size: 1.25vw;
  }
}
@media screen and (max-width: 768px) {
  #footer-contact ._wrap ._box ul li span {
    font-size: 3.2vw;
  }
}
#footer-contact ._wrap ._box ul li strong {
  font-size: 3.5871156662vw;
  font-weight: 900;
}
@media screen and (min-width: 1466px) {
  #footer-contact ._wrap ._box ul li strong {
    font-size: 49px;
  }
}
@media screen and (max-width: 1740px) {
  #footer-contact ._wrap ._box ul li strong {
    font-size: 2.5520833333vw;
  }
}
@media screen and (max-width: 768px) {
  #footer-contact ._wrap ._box ul li strong {
    font-size: 6.5333333333vw;
  }
}
#footer-contact ._wrap ._box ul li strong small {
  font-size: 2.4158125915vw;
}
@media screen and (min-width: 1466px) {
  #footer-contact ._wrap ._box ul li strong small {
    font-size: 33px;
  }
}
@media screen and (max-width: 1740px) {
  #footer-contact ._wrap ._box ul li strong small {
    font-size: 1.71875vw;
  }
}
@media screen and (max-width: 768px) {
  #footer-contact ._wrap ._box ul li strong small {
    font-size: 4.3466666667vw;
  }
}
#footer-contact ._wrap ._box p {
  font-size: 1.317715959vw;
  line-height: 2.2;
  color: #fff;
  text-align: center;
  margin: 0 -1em 2em;
}
@media screen and (min-width: 1466px) {
  #footer-contact ._wrap ._box p {
    font-size: 18px;
  }
}
@media screen and (max-width: 1740px) {
  #footer-contact ._wrap ._box p {
    font-size: 0.9375vw;
  }
}
@media screen and (max-width: 768px) {
  #footer-contact ._wrap ._box p {
    font-size: 4vw;
    line-height: 1.8;
    margin: 0 -1em 1.5em;
  }
}

#footer-contact-page {
  background-color: #000039;
  padding: 5.1244509517vw 0;
  position: relative;
}
@media screen and (min-width: 1466px) {
  #footer-contact-page {
    padding: 70px 0;
  }
}
@media screen and (max-width: 768px) {
  #footer-contact-page {
    padding: 6.6666666667vw 0 5.3333333333vw;
  }
}
#footer-contact-page:after {
  content: "";
  background: #000039 url(../img/bg-logo.svg) no-repeat center/contain;
  width: 55.5636896047vw;
  height: 49.6339677892vw;
  position: absolute;
  top: 5.1244509517vw;
  right: 5.1244509517vw;
  z-index: 1;
}
@media screen and (min-width: 1466px) {
  #footer-contact-page:after {
    width: 759px;
    height: 678px;
    top: 70px;
    right: 70px;
  }
}
@media screen and (max-width: 768px) {
  #footer-contact-page:after {
    content: none;
    width: 202.4vw;
    height: 180.8vw;
    top: 18.6666666667vw;
    right: 18.6666666667vw;
  }
}
#footer-contact-page ._wrap {
  position: relative;
  z-index: 10;
}
#footer-contact-page ._wrap ._top ._h {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 3.513909224vw;
  gap: 1em;
  color: #fff;
  margin: 0 0 0.6em;
}
@media screen and (min-width: 1466px) {
  #footer-contact-page ._wrap ._top ._h {
    font-size: 48px;
  }
}
@media screen and (max-width: 768px) {
  #footer-contact-page ._wrap ._top ._h {
    font-size: 4.2666666667vw;
    gap: 0.5em;
    margin: 0 0 0.8em;
  }
}
#footer-contact-page ._wrap ._top ._h h2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  line-height: 1.1;
}
#footer-contact-page ._wrap ._top ._h h2 span {
  font-size: 3.513909224vw;
  font-weight: 900;
}
@media screen and (min-width: 1466px) {
  #footer-contact-page ._wrap ._top ._h h2 span {
    font-size: 48px;
  }
}
@media screen and (max-width: 768px) {
  #footer-contact-page ._wrap ._top ._h h2 span {
    font-size: 4.2666666667vw;
  }
}
#footer-contact-page ._wrap ._top ._h h2 strong {
  font-size: 7.3938506589vw;
  font-weight: 900;
  color: #ffde00;
}
@media screen and (min-width: 1466px) {
  #footer-contact-page ._wrap ._top ._h h2 strong {
    font-size: 101px;
  }
}
@media screen and (max-width: 768px) {
  #footer-contact-page ._wrap ._top ._h h2 strong {
    font-size: 8.8vw;
  }
}
#footer-contact-page ._wrap ._top ._h p {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  line-height: 1.1;
}
#footer-contact-page ._wrap ._top ._h p small {
  font-size: 3.513909224vw;
  font-weight: 900;
}
@media screen and (min-width: 1466px) {
  #footer-contact-page ._wrap ._top ._h p small {
    font-size: 48px;
  }
}
@media screen and (max-width: 768px) {
  #footer-contact-page ._wrap ._top ._h p small {
    font-size: 4.2666666667vw;
  }
}
#footer-contact-page ._wrap ._top ._h p span {
  font-size: 7.3938506589vw;
  font-weight: 900;
}
@media screen and (min-width: 1466px) {
  #footer-contact-page ._wrap ._top ._h p span {
    font-size: 101px;
  }
}
@media screen and (max-width: 768px) {
  #footer-contact-page ._wrap ._top ._h p span {
    font-size: 8.8vw;
  }
}
#footer-contact-page ._wrap ._top ._h p span strong {
  color: #ffde00;
  font-weight: 900;
}
#footer-contact-page ._wrap ._top ._sp {
  position: relative;
}
#footer-contact-page ._wrap ._top ._sp .swiper .swiper-button-prev,
#footer-contact-page ._wrap ._top ._sp .swiper .swiper-button-next {
  display: none;
}
@media screen and (max-width: 768px) {
  #footer-contact-page ._wrap ._top ._sp .swiper .swiper-button-prev,
  #footer-contact-page ._wrap ._top ._sp .swiper .swiper-button-next {
    display: block;
  }
}
#footer-contact-page ._wrap ._top ._sp .swiper-nav {
  display: none;
}
@media screen and (max-width: 768px) {
  #footer-contact-page ._wrap ._top ._sp .swiper-nav {
    margin: 16vw 0 0;
    display: block;
    position: relative;
  }
}
#footer-contact-page ._wrap ._top ._sp .swiper-nav .swiper-pagination .swiper-pagination-bullet {
  background-color: #fff;
  opacity: 1;
}
#footer-contact-page ._wrap ._top ._sp .swiper-nav .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background-color: #000078;
}
#footer-contact-page ._wrap ._top ._sp ._list ol {
  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;
  gap: 0.7320644217vw;
}
@media screen and (min-width: 1466px) {
  #footer-contact-page ._wrap ._top ._sp ._list ol {
    gap: 10px;
  }
}
@media screen and (max-width: 768px) {
  #footer-contact-page ._wrap ._top ._sp ._list ol {
    gap: 0vw;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-pack: normal;
        -ms-flex-pack: normal;
            justify-content: normal;
  }
}
#footer-contact-page ._wrap ._top ._sp ._list ol li {
  width: 45.9736456808vw;
  border-radius: 0.7320644217vw;
  background-color: #fff;
  padding: 0.3660322108vw;
}
@media screen and (min-width: 1466px) {
  #footer-contact-page ._wrap ._top ._sp ._list ol li {
    width: 678px;
    border-radius: 10px;
    padding: 5px;
  }
}
@media screen and (max-width: 768px) {
  #footer-contact-page ._wrap ._top ._sp ._list ol li {
    width: 89.3333333333vw;
    border-radius: 2.6666666667vw;
    padding: 1.3333333333vw;
  }
}
#footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._ttl {
  background-color: #000039;
  border-radius: 0.439238653vw;
  padding: 0.7320644217vw 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fff;
}
@media screen and (min-width: 1466px) {
  #footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._ttl {
    border-radius: 6px;
    padding: 10px 0;
  }
}
@media screen and (max-width: 768px) {
  #footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._ttl {
    border-radius: 1.6vw;
    padding: 3.2vw 0;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    text-align: center;
  }
}
#footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._ttl ._num {
  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;
  width: 8.0527086384vw;
  line-height: 1.2;
}
@media screen and (min-width: 1466px) {
  #footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._ttl ._num {
    width: 110px;
  }
}
@media screen and (max-width: 768px) {
  #footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._ttl ._num {
    width: 100%;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
#footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._ttl ._num small {
  font-size: 1.4641288433vw;
  font-weight: 800;
}
@media screen and (min-width: 1466px) {
  #footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._ttl ._num small {
    font-size: 20px;
  }
}
@media screen and (max-width: 768px) {
  #footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._ttl ._num small {
    font-size: 3.7333333333vw;
  }
}
#footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._ttl ._num span {
  font-size: 2.3426061493vw;
  font-weight: 800;
}
@media screen and (min-width: 1466px) {
  #footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._ttl ._num span {
    font-size: 32px;
  }
}
@media screen and (max-width: 768px) {
  #footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._ttl ._num span {
    font-size: 3.7333333333vw;
  }
}
#footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._ttl ._t {
  border-left: solid #fff 0.0732064422vw;
  padding: 0.7320644217vw 0;
}
@media screen and (min-width: 1466px) {
  #footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._ttl ._t {
    border-width: 1px;
    padding: 10px 0;
  }
}
@media screen and (max-width: 768px) {
  #footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._ttl ._t {
    border: none;
    padding: 1.3333333333vw 0 1.3333333333vw;
  }
}
#footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._ttl ._t h3 {
  font-size: 2.0497803807vw;
  font-weight: 900;
  line-height: 1.3;
  padding: 0 0 0 1em;
}
@media screen and (min-width: 1466px) {
  #footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._ttl ._t h3 {
    font-size: 28px;
  }
}
@media screen and (max-width: 768px) {
  #footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._ttl ._t h3 {
    font-size: 5.3333333333vw;
    padding: 0;
  }
}
#footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._b {
  padding: 1.0980966325vw 0.7320644217vw 1.4641288433vw;
}
@media screen and (min-width: 1466px) {
  #footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._b {
    padding: 15px 15px 20px;
  }
}
@media screen and (max-width: 768px) {
  #footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._b {
    padding: 2.6666666667vw 1.3333333333vw 4vw;
  }
}
#footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._b p {
  font-size: 1.0980966325vw;
  margin: 0 0 1em;
}
@media screen and (min-width: 1466px) {
  #footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._b p {
    font-size: 15px;
  }
}
@media screen and (max-width: 768px) {
  #footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._b p {
    font-size: 3.2vw;
  }
}
#footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._b ul {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: 0.3660322108vw;
}
@media screen and (min-width: 1466px) {
  #footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._b ul {
    gap: 5px;
  }
}
@media screen and (max-width: 768px) {
  #footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._b ul {
    gap: 0.8vw;
    grid-template-columns: 1fr 1fr;
  }
}
#footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._b ul li {
  width: auto;
  background-color: #e3ebf1;
  border-radius: 0;
  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;
  color: #000039;
  font-size: 0.8052708638vw;
  padding: 1em 0;
}
@media screen and (min-width: 1466px) {
  #footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._b ul li {
    font-size: 12px;
  }
}
@media screen and (max-width: 768px) {
  #footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._b ul li {
    font-size: 3.2vw;
  }
}
#footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._price {
  padding: 0 1.0980966325vw 1.8301610542vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 1466px) {
  #footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._price {
    padding: 0 15px 25px;
  }
}
@media screen and (max-width: 768px) {
  #footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._price {
    padding: 0 1.3333333333vw 4vw;
  }
}
#footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._price ._table {
  border-top: solid #87a9c3 0.0732064422vw;
  width: 23.4260614934vw;
}
@media screen and (min-width: 1466px) {
  #footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._price ._table {
    border-width: 1px;
    width: 320px;
  }
}
@media screen and (max-width: 768px) {
  #footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._price ._table {
    border-width: 0.2666666667vw;
    width: 46.6666666667vw;
  }
}
#footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._price ._table dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 1.0980966325vw;
  padding: 1em 0;
  border-bottom: solid #87a9c3 0.0732064422vw;
}
@media screen and (min-width: 1466px) {
  #footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._price ._table dl {
    font-size: 15px;
    border-width: 1px;
  }
}
@media screen and (max-width: 768px) {
  #footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._price ._table dl {
    font-size: 3.4666666667vw;
    border-width: 0.2666666667vw;
  }
}
#footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._price ._table dl dt {
  color: #000078;
  font-weight: 700;
  width: 6.5em;
}
#footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._price ._table dl dd {
  padding: 0 0 0 2em;
}
@media screen and (max-width: 768px) {
  #footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._price ._table dl dd {
    padding: 0 0 0 1em;
  }
}
#footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._price ._total {
  padding: 0 0 0 2.5622254758vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  line-height: 1;
  gap: 0.3em;
}
@media screen and (min-width: 1466px) {
  #footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._price ._total {
    padding: 0 0 0 35px;
  }
}
@media screen and (max-width: 768px) {
  #footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._price ._total {
    padding: 0 0 0 4vw;
  }
}
#footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._price ._total strong {
  font-size: 6.7349926794vw;
  font-weight: 800;
  color: #c80000;
}
@media screen and (min-width: 1466px) {
  #footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._price ._total strong {
    font-size: 92px;
  }
}
@media screen and (max-width: 768px) {
  #footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._price ._total strong {
    font-size: 13.3333333333vw;
  }
}
#footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._price ._total span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 0 0 1em;
}
@media screen and (max-width: 768px) {
  #footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._price ._total span {
    padding: 0 0 0.5em;
  }
}
#footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._price ._total span small {
  font-size: 0.878477306vw;
}
@media screen and (min-width: 1466px) {
  #footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._price ._total span small {
    font-size: 12px;
  }
}
@media screen and (max-width: 768px) {
  #footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._price ._total span small {
    font-size: 3.2vw;
  }
}
#footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._price ._total span i {
  font-style: normal;
  color: #c80000;
  font-weight: 900;
  font-size: 2.0497803807vw;
}
@media screen and (min-width: 1466px) {
  #footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._price ._total span i {
    font-size: 28px;
  }
}
@media screen and (max-width: 768px) {
  #footer-contact-page ._wrap ._top ._sp ._list ol li ._cnt ._price ._total span i {
    font-size: 4.2666666667vw;
  }
}
#footer-contact-page ._wrap ._bottom {
  padding: 2.196193265vw 0 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 7.3206442167vw;
}
@media screen and (min-width: 1466px) {
  #footer-contact-page ._wrap ._bottom {
    padding: 30px 0 0;
    gap: 100px;
  }
}
@media screen and (max-width: 768px) {
  #footer-contact-page ._wrap ._bottom {
    padding: 5.3333333333vw 0 0;
    gap: 5.3333333333vw;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
#footer-contact-page ._wrap ._bottom ._h {
  position: relative;
}
#footer-contact-page ._wrap ._bottom ._h h3 {
  font-size: 4.2459736457vw;
  font-weight: 700;
  color: #ffde00;
  line-height: 1.2;
}
@media screen and (min-width: 1466px) {
  #footer-contact-page ._wrap ._bottom ._h h3 {
    font-size: 62.4px;
  }
}
@media screen and (max-width: 768px) {
  #footer-contact-page ._wrap ._bottom ._h h3 {
    font-size: 12.8vw;
  }
}
#footer-contact-page ._wrap ._bottom ._h small {
  display: inline-block;
  font-size: 2.3426061493vw;
  color: #fff;
  padding: 0 1.25em;
  position: relative;
  font-weight: 700;
  position: absolute;
  top: 0.2em;
  right: 0.5em;
}
@media screen and (min-width: 1466px) {
  #footer-contact-page ._wrap ._bottom ._h small {
    font-size: 36px;
  }
}
@media screen and (max-width: 768px) {
  #footer-contact-page ._wrap ._bottom ._h small {
    font-size: 7.4666666667vw;
  }
}
#footer-contact-page ._wrap ._bottom ._h small:before {
  content: "／";
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
  rotate: 10deg;
  font-weight: 700;
}
#footer-contact-page ._wrap ._bottom ._h small:after {
  content: "／";
  position: absolute;
  top: 0;
  right: 0;
  rotate: -10deg;
  font-weight: 700;
}
#footer-contact-page ._wrap ._bottom ._more p {
  font-size: 1.317715959vw;
  line-height: 2;
  color: #fff;
  margin: 0 0 1em;
}
@media screen and (min-width: 1466px) {
  #footer-contact-page ._wrap ._bottom ._more p {
    font-size: 20px;
  }
}
@media screen and (max-width: 768px) {
  #footer-contact-page ._wrap ._bottom ._more p {
    font-size: 4.2666666667vw;
  }
}
#footer-contact-page ._wrap ._bottom ._more a {
  width: 24.1581259151vw;
}
@media screen and (min-width: 1466px) {
  #footer-contact-page ._wrap ._bottom ._more a {
    width: 330px;
  }
}
@media screen and (max-width: 768px) {
  #footer-contact-page ._wrap ._bottom ._more a {
    width: 89.3333333333vw;
  }
}

/* #pagetop{
  position:fixed;
  top:calc(70% + vw(213));
  right:vw(20);
  z-index:9999;
  //display:none;
  line-height:1;
  transform:translateY(-50%);

  @include pc{
    right:ww(20);
    top:calc(70% + ww(213));
  }
  @include tab{
  }
  @include sp{
    display:none;
    right:sw(13);
    top:calc(70% + sw(146));
    scale:.7;
  }

  a{
    display:flex;
    align-items:flex-end;
    width:vw(32);
    height:vw(36);
    background:url(../img/pagetop.svg) no-repeat center top /vw(24) auto;
    font-size:vw(16);

    @include pc{
      width:ww(32);
      height:ww(36);
      background-size:ww(24) auto;
      font-size:ww(16);
    }
    @include tab{
    }
    @include sp{
      width:sw(32);
      height:sw(36);
      background-size:sw(24) auto;
      font-size:sw(16);
    }

    &:hover{
      transform:translateY(-10%);
    }
  }
} */
footer {
  background-color: #161616;
  color: #fff;
  padding: 2.196193265vw 0 5.8565153734vw;
  overflow: hidden;
}
@media screen and (min-width: 1466px) {
  footer {
    padding: 30px 0 80px;
  }
}
@media screen and (max-width: 768px) {
  footer {
    padding: 5.3333333333vw 0 13.3333333333vw;
  }
}
footer ._links {
  max-width: 1920px;
  margin: 0 auto;
}
footer ._links ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.6588579795vw;
  padding: 0 1.4641288433vw;
}
@media screen and (min-width: 1466px) {
  footer ._links ul {
    gap: 9px;
    padding: 0 30px;
  }
}
@media screen and (max-width: 768px) {
  footer ._links ul {
    gap: 2.4vw;
    padding: 0 5.3333333333vw;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
footer ._links ul li {
  width: 44.9487554905vw;
}
@media screen and (min-width: 1466px) {
  footer ._links ul li {
    width: 614px;
  }
}
@media screen and (max-width: 768px) {
  footer ._links ul li {
    width: 89.3333333333vw;
  }
}
footer ._links ul li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 10.980966325vw;
  border-radius: 0.7320644217vw;
  padding: 0 2.196193265vw 0 1.6837481698vw;
}
@media screen and (min-width: 1466px) {
  footer ._links ul li a {
    height: 150px;
    border-radius: 10px;
    padding: 0 40px 0 33px;
  }
}
@media screen and (max-width: 768px) {
  footer ._links ul li a {
    height: 26.6666666667vw;
    border-radius: 2.6666666667vw;
    padding: 0 6.1333333333vw;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    text-align: center;
  }
}
footer ._links ul li a:before {
  content: "";
  position: absolute;
  top: -25%;
  left: -100%;
  width: 100%;
  height: 150%;
  z-index: 1;
  background: rgba(255, 255, 255, 0.2);
  background: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0)), color-stop(50%, rgba(255, 255, 255, 0.3)), to(rgba(255, 255, 255, 0)));
  background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 50%, rgba(255, 255, 255, 0) 100%);
  -webkit-transition: 0.4s ease;
  transition: 0.4s ease;
  rotate: -10deg;
}
footer ._links ul li a ._wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 0 0 0 3.3674963397vw;
  position: relative;
  width: 100%;
}
@media screen and (min-width: 1466px) {
  footer ._links ul li a ._wrap {
    padding: 0 0 0 56px;
  }
}
@media screen and (max-width: 768px) {
  footer ._links ul li a ._wrap {
    padding: 0;
  }
}
footer ._links ul li a ._wrap:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
}
footer ._links ul li a ._wrap:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  background: url(../img/arrow-circle.svg) no-repeat center/contain;
  width: 4.6852122987vw;
  height: 4.6852122987vw;
  margin-top: -2.3426061493vw;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
@media screen and (min-width: 1466px) {
  footer ._links ul li a ._wrap:after {
    width: 64px;
    height: 64px;
    margin-top: -32px;
  }
}
@media screen and (max-width: 768px) {
  footer ._links ul li a ._wrap:after {
    content: none;
    width: 17.0666666667vw;
    height: 17.0666666667vw;
    margin-top: -8.5333333333vw;
  }
}
footer ._links ul li a ._wrap strong {
  font-size: 2.9282576867vw;
  font-weight: 800;
}
@media screen and (min-width: 1466px) {
  footer ._links ul li a ._wrap strong {
    font-size: 40px;
  }
}
@media screen and (max-width: 768px) {
  footer ._links ul li a ._wrap strong {
    font-size: 8vw;
  }
}
footer ._links ul li a ._wrap small {
  font-size: 1.4641288433vw;
  font-weight: 800;
}
@media screen and (min-width: 1466px) {
  footer ._links ul li a ._wrap small {
    font-size: 20px;
  }
}
@media screen and (max-width: 768px) {
  footer ._links ul li a ._wrap small {
    font-size: 4vw;
  }
}
footer ._links ul li a:hover:before {
  left: 100%;
}
footer ._links ul li a:hover ._wrap:after {
  -webkit-transform: translateX(10%);
          transform: translateX(10%);
}
footer ._links ul li._consult a {
  background-color: #000078;
}
footer ._links ul li._consult a ._wrap:before {
  background: url(../img/header-icon03.svg) no-repeat center/contain;
  width: 1.756954612vw;
  height: 1.756954612vw;
  margin-top: -0.878477306vw;
}
@media screen and (min-width: 1466px) {
  footer ._links ul li._consult a ._wrap:before {
    width: 24px;
    height: 24px;
    margin-top: -12px;
  }
}
@media screen and (max-width: 768px) {
  footer ._links ul li._consult a ._wrap:before {
    width: 6.4vw;
    height: 6.4vw;
    margin-top: -3.2vw;
  }
}
footer ._links ul li._material a {
  background-color: #008865;
}
footer ._links ul li._material a ._wrap:before {
  background: url(../img/header-icon01.svg) no-repeat center/contain;
  width: 1.5373352855vw;
  height: 1.9765739385vw;
  margin-top: -0.9882869693vw;
  left: 0.0732064422vw;
}
@media screen and (min-width: 1466px) {
  footer ._links ul li._material a ._wrap:before {
    width: 21px;
    height: 27px;
    margin-top: -13.5px;
    left: 1px;
  }
}
@media screen and (max-width: 768px) {
  footer ._links ul li._material a ._wrap:before {
    width: 5.6vw;
    height: 7.2vw;
    margin-top: -3.6vw;
    left: 0.2666666667vw;
  }
}
footer ._links ul li._estimate a {
  background-color: #ffde00;
  color: #000078;
}
footer ._links ul li._estimate a ._wrap:before {
  background: url(../img/header-icon02.svg) no-repeat center/contain;
  width: 1.4641288433vw;
  height: 2.0497803807vw;
  margin-top: -1.0248901903vw;
  left: 0.1464128843vw;
}
@media screen and (min-width: 1466px) {
  footer ._links ul li._estimate a ._wrap:before {
    width: 20px;
    height: 28px;
    margin-top: -14px;
    left: 2px;
  }
}
@media screen and (max-width: 768px) {
  footer ._links ul li._estimate a ._wrap:before {
    width: 5.3333333333vw;
    height: 7.4666666667vw;
    margin-top: -3.7333333333vw;
    left: 0.5333333333vw;
  }
}
footer ._meta ._tops {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  padding: 4.39238653vw 0 2.9282576867vw;
}
@media screen and (min-width: 1466px) {
  footer ._meta ._tops {
    padding: 60px 0 40px;
  }
}
@media screen and (max-width: 768px) {
  footer ._meta ._tops {
    padding: 12vw 0 13.3333333333vw;
    -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;
  }
}
footer ._meta ._tops ._logo {
  line-height: 1;
}
@media screen and (max-width: 768px) {
  footer ._meta ._tops ._logo {
    margin: 0 0 12vw;
  }
}
footer ._meta ._tops ._logo a {
  display: inline-block;
  background: url(../img/logo.svg) no-repeat center/contain;
  width: 29.5754026354vw;
  height: 3.0014641288vw;
}
@media screen and (min-width: 1466px) {
  footer ._meta ._tops ._logo a {
    width: 394px;
    height: 41px;
  }
}
@media screen and (max-width: 768px) {
  footer ._meta ._tops ._logo a {
    width: 39.4666666667vw;
    height: 15.7333333333vw;
    background-image: url(../img/footer-logo_sp.svg);
  }
}
footer ._meta ._tops ._menu ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2.2em;
  font-size: 1.1713030747vw;
}
@media screen and (min-width: 1466px) {
  footer ._meta ._tops ._menu ul {
    font-size: 16px;
  }
}
@media screen and (max-width: 768px) {
  footer ._meta ._tops ._menu ul {
    font-size: 4.2666666667vw;
    display: grid;
    grid-auto-flow: column;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr 1fr 1fr 1fr;
    text-align: center;
    gap: 2em 3em;
    line-height: 1;
  }
}
footer ._meta ._tops ._menu ul li a:hover {
  opacity: 0.7;
  text-decoration: underline;
}
footer ._meta .bottoms {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
@media screen and (max-width: 768px) {
  footer ._meta .bottoms {
    -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;
  }
}
footer ._meta .bottoms ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.878477306vw;
  font-size: 1.0248901903vw;
}
@media screen and (min-width: 1466px) {
  footer ._meta .bottoms ul {
    gap: 12px;
    font-size: 14px;
  }
}
@media screen and (max-width: 768px) {
  footer ._meta .bottoms ul {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 3.2vw;
    font-size: 3.7333333333vw;
    margin: 0 0 10.6666666667vw;
  }
}
footer ._meta .bottoms ul li a {
  width: 16.1054172767vw;
  height: 3.6603221083vw;
  border: solid #fff 0.0732064422vw;
  border-radius: 0.5856515373vw;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 1.5em;
}
@media screen and (min-width: 1466px) {
  footer ._meta .bottoms ul li a {
    width: 220px;
    height: 50px;
    border: solid #fff 1px;
    border-radius: 8px;
  }
}
@media screen and (max-width: 768px) {
  footer ._meta .bottoms ul li a {
    width: 89.3333333333vw;
    height: 13.3333333333vw;
    border: solid #fff 0.2666666667vw;
    border-radius: 2.1333333333vw;
  }
}
footer ._meta .bottoms ul li a span {
  position: relative;
  width: 100%;
}
footer ._meta .bottoms ul li a span:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  background: url(../img/btn-arrow.svg) no-repeat center/contain;
  width: 1.0248901903vw;
  height: 0.8052708638vw;
  margin-top: -0.4026354319vw;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
@media screen and (min-width: 1466px) {
  footer ._meta .bottoms ul li a span:after {
    width: 14px;
    height: 11px;
    margin-top: -5.5px;
  }
}
@media screen and (max-width: 768px) {
  footer ._meta .bottoms ul li a span:after {
    width: 3.7333333333vw;
    height: 2.9333333333vw;
    margin-top: -1.4666666667vw;
  }
}
footer ._meta .bottoms ul li a:hover span:after {
  -webkit-transform: translateX(20%);
          transform: translateX(20%);
}
footer ._meta .bottoms .copyright small {
  font-size: 0.878477306vw;
}
@media screen and (min-width: 1466px) {
  footer ._meta .bottoms .copyright small {
    font-size: 12px;
  }
}
@media screen and (max-width: 768px) {
  footer ._meta .bottoms .copyright small {
    font-size: 3.2vw;
  }
}

/* =========================
   フローティングCTA（SPのみ）
========================= */
/* デフォルト：非表示（PC・タブレット） */
.float_links {
  display: none;
}

/* =========================
   スマホ表示
========================= */
@media screen and (max-width: 767px) {
  .float_links {
    display: block;
    position: fixed;
    left: 0;
    bottom: 0;
    width: 100%;
    z-index: 1000;
    -webkit-transition: opacity 0.3s ease, visibility 0.3s ease;
    transition: opacity 0.3s ease, visibility 0.3s ease;
    background-color: #161616;
    padding-block: 1vw;
    padding-inline: 1vw;
  }
  .float_links.is-hide {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
  }
  .float_links ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0;
    padding: 0;
    gap: 1vw;
  }
  .float_links li {
    width: 50%;
    list-style: none;
  }
  .float_links li._consult a {
    background-color: #000078;
    border-radius: 2.6666666667vw;
    padding-left: 5vw;
    border: 0.5vw solid #fff;
  }
  .float_links li._consult a ._wrap {
    position: relative;
  }
  .float_links li._consult a ._wrap::before {
    content: "";
    display: inline-block;
    background: url(../img/header-icon03.svg) no-repeat center/contain;
    width: 5vw;
    height: 6.4vw;
    margin-top: -3.2vw;
    position: absolute;
    top: 50%;
    left: -1.5vw;
  }
  .float_links li._estimate a {
    background-color: #ffde00;
    color: #000078;
    border-radius: 2.6666666667vw;
    padding-left: 5vw;
    border: 0.5vw solid #fff;
  }
  .float_links li._estimate a ._wrap {
    position: relative;
  }
  .float_links li._estimate a ._wrap::before {
    content: "";
    display: inline-block;
    background: url(../img/header-icon02.svg) no-repeat center/contain;
    width: 5vw;
    height: 6.4vw;
    margin-top: -3.2vw;
    position: absolute;
    top: 50%;
    left: 0;
    left: 3vw;
  }
  .float_links a {
    display: block;
    padding: 4vw 8px;
    text-align: center;
    color: #fff;
    text-decoration: none;
  }
  .float_links ._wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    line-height: 1.2;
  }
  .float_links strong {
    font-size: 5vw;
    font-weight: 700;
  }
  .float_links ._en {
    font-size: 3vw;
  }
}
/*---------------------------------
PARTS
---------------------------------*/
.btn-common {
  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;
  position: relative;
  overflow: hidden;
  color: #fff;
  width: 24.1581259151vw;
  height: 5.1244509517vw;
  padding: 0 1.4641288433vw;
  border-radius: 0.7320644217vw;
  background-color: #ff3b00;
}
@media screen and (min-width: 1466px) {
  .btn-common {
    width: 330px;
    height: 70px;
    padding: 0 20px;
    border-radius: 10px;
  }
}
@media screen and (max-width: 768px) {
  .btn-common {
    width: 89.3333333333vw;
    height: 13.3333333333vw;
    padding: 0 5.3333333333vw;
    border-radius: 2.6666666667vw;
  }
}
.btn-common:before {
  content: "";
  position: absolute;
  top: -10%;
  left: -100%;
  width: 100%;
  height: 120%;
  z-index: 1;
  background: rgba(255, 255, 255, 0.2);
  background: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0)), color-stop(50%, rgba(255, 255, 255, 0.3)), to(rgba(255, 255, 255, 0)));
  background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 50%, rgba(255, 255, 255, 0) 100%);
  -webkit-transition: 0.4s ease;
  transition: 0.4s ease;
  rotate: -10deg;
}
.btn-common span {
  display: block;
  width: 100%;
  position: relative;
  z-index: 2;
  font-size: 1.1713030747vw;
  font-weight: 600;
  padding: 0 2em 0 0;
  line-height: 1.5;
  z-index: 10;
}
@media screen and (min-width: 1466px) {
  .btn-common span {
    font-size: 16px;
  }
}
@media screen and (max-width: 768px) {
  .btn-common span {
    font-size: 4.2666666667vw;
  }
}
.btn-common span:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  background: url(../img/btn-arrow.svg) no-repeat center/contain;
  width: 1.1713030747vw;
  height: 0.9516837482vw;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (min-width: 1466px) {
  .btn-common span:after {
    width: 16px;
    height: 13px;
  }
}
@media screen and (max-width: 768px) {
  .btn-common span:after {
    width: 4.2666666667vw;
    height: 3.4666666667vw;
  }
}
.btn-common:hover {
  color: #fff;
  text-decoration: none !important;
}
.btn-common:hover:before {
  left: 100%;
}
.btn-common:hover span:after {
  right: -2.5%;
}
.btn-common._l {
  width: 30.4538799414vw;
  height: 6.7349926794vw;
  line-height: 1.4;
  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;
  text-align: center !important;
}
@media screen and (min-width: 1466px) {
  .btn-common._l {
    width: 416px;
    height: 92px;
  }
}
@media screen and (max-width: 768px) {
  .btn-common._l {
    width: 100%;
    height: 19.2vw;
  }
}
.btn-common._l span {
  font-size: 1.317715959vw;
}
@media screen and (min-width: 1466px) {
  .btn-common._l span {
    font-size: 18px;
  }
}
@media screen and (max-width: 768px) {
  .btn-common._l span {
    font-size: 4.2666666667vw;
  }
}
.btn-common._bk {
  background-color: #333;
  color: #fff;
}
.btn-common._bk:before {
  background-color: #fff;
}
.btn-common._bk:hover {
  color: #333;
}
.btn-common._bk:hover span:after {
  color: #333;
}

/*---------------------------------
TOP
---------------------------------*/
#mainvisual {
  position: relative;
  background-color: #000039;
  width: 100vw;
  height: 48.125vw;
}
@media screen and (min-width: 1466px) {
  #mainvisual {
    height: 924px;
  }
}
@media screen and (max-width: 1920px) and (min-width: 1467px) {
  #mainvisual {
    height: 48.125vw;
  }
}
@media screen and (max-width: 768px) {
  #mainvisual {
    height: 186.6666666667vw;
  }
}
#mainvisual ._wrap {
  position: relative;
  height: 100%;
  max-width: auto;
  margin: 0 auto;
  padding: 0 2.6041666667vw;
}
@media screen and (min-width: 1466px) {
  #mainvisual ._wrap {
    padding: 0 90px;
    max-width: 1920px;
  }
}
@media screen and (max-width: 1920px) and (min-width: 1467px) {
  #mainvisual ._wrap {
    padding: 0 4.6875vw;
  }
}
@media screen and (max-width: 768px) {
  #mainvisual ._wrap {
    padding: 0;
  }
}
#mainvisual ._wrap:before {
  content: "";
  position: absolute;
  top: 2.96875vw;
  right: 2.8125vw;
  background: url(../img/mv-img01.webp) no-repeat center/contain;
  width: 51.3541666667vw;
  height: 45.8854166667vw;
  z-index: 2;
}
@media screen and (min-width: 1466px) {
  #mainvisual ._wrap:before {
    top: 57px;
    right: 54px;
    width: 986px;
    height: 881px;
  }
}
@media screen and (max-width: 1920px) and (min-width: 1467px) {
  #mainvisual ._wrap:before {
    top: 2.96875vw;
    right: 2.8125vw;
    width: 51.3541666667vw;
    height: 45.8854166667vw;
  }
}
@media screen and (max-width: 768px) {
  #mainvisual ._wrap:before {
    top: 120vw;
    right: -5.3333333333vw;
    width: 100vw;
    height: 89.3333333333vw;
  }
}
#mainvisual ._wrap:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 5.2083333333vw;
  background: url(../img/mv-logo.webp) no-repeat center/contain;
  width: 51.3541666667vw;
  height: 44.6354166667vw;
  z-index: 1;
}
@media screen and (min-width: 1466px) {
  #mainvisual ._wrap:after {
    left: 100px;
    width: 986px;
    height: 857px;
  }
}
@media screen and (max-width: 1920px) and (min-width: 1467px) {
  #mainvisual ._wrap:after {
    left: 5.2083333333vw;
    width: 51.3541666667vw;
    height: 44.6354166667vw;
  }
}
@media screen and (max-width: 768px) {
  #mainvisual ._wrap:after {
    content: none;
    top: 15.2vw;
    right: 14.4vw;
    width: 262.9333333333vw;
    height: 234.9333333333vw;
  }
}
#mainvisual ._wrap ._cnt {
  position: relative;
  z-index: 3;
  padding: 9.375vw 0 0;
}
@media screen and (min-width: 1466px) {
  #mainvisual ._wrap ._cnt {
    padding: 150px 0 0;
  }
}
@media screen and (max-width: 1920px) and (min-width: 1467px) {
  #mainvisual ._wrap ._cnt {
    padding: 7.8125vw 0 0;
  }
}
@media screen and (max-width: 768px) {
  #mainvisual ._wrap ._cnt {
    padding: 22.6666666667vw 0 21.3333333333vw;
  }
}
@media screen and (max-width: 768px) {
  #mainvisual ._wrap ._cnt ._fe {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
  }
}
#mainvisual ._wrap ._cnt ._fe ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.7291666667vw;
}
@media screen and (min-width: 1466px) {
  #mainvisual ._wrap ._cnt ._fe ul {
    gap: 14px;
  }
}
@media screen and (max-width: 1920px) and (min-width: 1467px) {
  #mainvisual ._wrap ._cnt ._fe ul {
    gap: 0.7291666667vw;
  }
}
@media screen and (max-width: 768px) {
  #mainvisual ._wrap ._cnt ._fe ul {
    gap: 1.3333333333vw;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
#mainvisual ._wrap ._cnt ._fe ul li {
  background-color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 11.4583333333vw;
  height: 5.3125vw;
  border-radius: 0.5208333333vw;
}
@media screen and (min-width: 1466px) {
  #mainvisual ._wrap ._cnt ._fe ul li {
    width: 220px;
    height: 102px;
    border-radius: 10px;
  }
}
@media screen and (max-width: 1920px) and (min-width: 1467px) {
  #mainvisual ._wrap ._cnt ._fe ul li {
    width: 11.4583333333vw;
    height: 5.3125vw;
    border-radius: 0.5208333333vw;
  }
}
@media screen and (max-width: 768px) {
  #mainvisual ._wrap ._cnt ._fe ul li {
    width: 28.8vw;
    height: 16vw;
    border-radius: 2.6666666667vw;
  }
}
#mainvisual ._wrap ._cnt ._fe ul li p {
  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;
  line-height: 1.2;
}
#mainvisual ._wrap ._cnt ._fe ul li p small {
  font-size: 1.0416666667vw;
  font-weight: 700;
  color: #000039;
  padding: 0.3em 0 0;
}
@media screen and (min-width: 1466px) {
  #mainvisual ._wrap ._cnt ._fe ul li p small {
    font-size: 20px;
  }
}
@media screen and (max-width: 1920px) and (min-width: 1467px) {
  #mainvisual ._wrap ._cnt ._fe ul li p small {
    font-size: 1.0416666667vw;
  }
}
@media screen and (max-width: 768px) {
  #mainvisual ._wrap ._cnt ._fe ul li p small {
    font-size: 3.0933333333vw;
  }
}
#mainvisual ._wrap ._cnt ._fe ul li p span {
  font-size: 1.0416666667vw;
  font-weight: 800;
  color: #ff3b00;
}
@media screen and (min-width: 1466px) {
  #mainvisual ._wrap ._cnt ._fe ul li p span {
    font-size: 20px;
  }
}
@media screen and (max-width: 1920px) and (min-width: 1467px) {
  #mainvisual ._wrap ._cnt ._fe ul li p span {
    font-size: 1.0416666667vw;
  }
}
@media screen and (max-width: 768px) {
  #mainvisual ._wrap ._cnt ._fe ul li p span {
    font-size: 3.0933333333vw;
  }
}
#mainvisual ._wrap ._cnt ._fe ul li p span strong {
  font-size: 2.6041666667vw;
  font-weight: 800;
  margin: 0 0.04em 0 0;
}
@media screen and (min-width: 1466px) {
  #mainvisual ._wrap ._cnt ._fe ul li p span strong {
    font-size: 50px;
  }
}
@media screen and (max-width: 1920px) and (min-width: 1467px) {
  #mainvisual ._wrap ._cnt ._fe ul li p span strong {
    font-size: 2.6041666667vw;
  }
}
@media screen and (max-width: 768px) {
  #mainvisual ._wrap ._cnt ._fe ul li p span strong {
    font-size: 7.7333333333vw;
  }
}
#mainvisual ._wrap ._cnt ._txt {
  padding: 1.0416666667vw 0;
}
@media screen and (min-width: 1466px) {
  #mainvisual ._wrap ._cnt ._txt {
    padding: 20px 0;
  }
}
@media screen and (max-width: 1920px) and (min-width: 1467px) {
  #mainvisual ._wrap ._cnt ._txt {
    padding: 1.0416666667vw 0;
  }
}
@media screen and (max-width: 768px) {
  #mainvisual ._wrap ._cnt ._txt {
    padding: 0 0 5.3333333333vw;
  }
}
#mainvisual ._wrap ._cnt ._txt h2 {
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media screen and (max-width: 768px) {
  #mainvisual ._wrap ._cnt ._txt h2 {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    text-align: center;
  }
}
#mainvisual ._wrap ._cnt ._txt h2 small {
  font-size: 2.2916666667vw;
  font-weight: 700;
  letter-spacing: 0.16em;
}
@media screen and (min-width: 1466px) {
  #mainvisual ._wrap ._cnt ._txt h2 small {
    font-size: 44px;
  }
}
@media screen and (max-width: 1920px) and (min-width: 1467px) {
  #mainvisual ._wrap ._cnt ._txt h2 small {
    font-size: 2.2916666667vw;
  }
}
@media screen and (max-width: 768px) {
  #mainvisual ._wrap ._cnt ._txt h2 small {
    font-size: 5.104vw;
    margin: 0 0 0.2em;
    letter-spacing: 0.1em;
  }
}
#mainvisual ._wrap ._cnt ._txt h2 small strong {
  color: #ffde00;
  font-weight: 700;
}
#mainvisual ._wrap ._cnt ._txt h2 span {
  font-size: 3.6979166667vw;
  font-weight: 700;
  letter-spacing: 0.16em;
  line-height: 1.3;
}
@media screen and (min-width: 1466px) {
  #mainvisual ._wrap ._cnt ._txt h2 span {
    font-size: 71px;
  }
}
@media screen and (max-width: 1920px) and (min-width: 1467px) {
  #mainvisual ._wrap ._cnt ._txt h2 span {
    font-size: 3.6979166667vw;
  }
}
@media screen and (max-width: 768px) {
  #mainvisual ._wrap ._cnt ._txt h2 span {
    font-size: 8.192vw;
    line-height: 1.5;
    letter-spacing: 0.1em;
  }
}
#mainvisual ._wrap ._cnt ._tag {
  margin: 0 0 3.125vw;
}
@media screen and (min-width: 1466px) {
  #mainvisual ._wrap ._cnt ._tag {
    margin: 0 0 60px;
  }
}
@media screen and (max-width: 1920px) and (min-width: 1467px) {
  #mainvisual ._wrap ._cnt ._tag {
    margin: 0 0 3.125vw;
  }
}
@media screen and (max-width: 768px) {
  #mainvisual ._wrap ._cnt ._tag {
    margin: 0 0 5.3333333333vw;
  }
}
#mainvisual ._wrap ._cnt ._tag ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.2083333333vw;
}
@media screen and (min-width: 1466px) {
  #mainvisual ._wrap ._cnt ._tag ul {
    gap: 4px;
  }
}
@media screen and (max-width: 1920px) and (min-width: 1467px) {
  #mainvisual ._wrap ._cnt ._tag ul {
    gap: 0.2083333333vw;
  }
}
@media screen and (max-width: 768px) {
  #mainvisual ._wrap ._cnt ._tag ul {
    gap: 2.1333333333vw 1.0666666667vw;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
#mainvisual ._wrap ._cnt ._tag ul li {
  font-size: 0.7291666667vw;
  padding: 0.8em 1.8em;
  border-radius: 2em;
  border: solid #fff 0.0520833333vw;
  color: #fff;
  font-weight: 700;
}
@media screen and (min-width: 1466px) {
  #mainvisual ._wrap ._cnt ._tag ul li {
    font-size: 14px;
    border-width: 1px;
  }
}
@media screen and (max-width: 1920px) and (min-width: 1467px) {
  #mainvisual ._wrap ._cnt ._tag ul li {
    font-size: 0.7291666667vw;
    border-width: 0.0520833333vw;
  }
}
@media screen and (max-width: 768px) {
  #mainvisual ._wrap ._cnt ._tag ul li {
    font-size: 3vw;
    border-width: 0.2666666667vw;
  }
}
#mainvisual ._wrap ._cnt ._award figure {
  width: 37.5vw;
}
@media screen and (min-width: 1466px) {
  #mainvisual ._wrap ._cnt ._award figure {
    width: 720px;
  }
}
@media screen and (max-width: 1920px) and (min-width: 1467px) {
  #mainvisual ._wrap ._cnt ._award figure {
    width: 37.5vw;
  }
}
@media screen and (max-width: 768px) {
  #mainvisual ._wrap ._cnt ._award figure {
    width: 89.3333333333vw;
    margin: 0 auto;
  }
}

#floatEstimate {
  position: fixed;
  top: 43.9238653001vw;
  right: 1.4641288433vw;
  width: 18.0087847731vw;
  height: 18.0087847731vw;
  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;
  overflow: hidden;
  z-index: 9999;
}
@media screen and (min-width: 1466px) {
  #floatEstimate {
    top: 650px;
    right: 57px;
    width: 246px;
    height: 246px;
  }
}
@media screen and (max-height: 900px) and (min-width: 1467px) {
  #floatEstimate {
    top: auto;
    bottom: 2.196193265vw;
  }
}
@media screen and (max-width: 768px) {
  #floatEstimate {
    display: none;
  }
}
#floatEstimate a {
  position: relative;
  width: 100%;
  height: 100%;
  text-decoration: none;
}
@media screen and (max-width: 768px) {
  #floatEstimate a {
    display: none;
  }
}
#floatEstimate a:hover ._circle p:after {
  -webkit-transform: translateX(20%);
          transform: translateX(20%);
}
#floatEstimate ._circle {
  position: absolute;
  width: 15.4465592972vw;
  height: 15.4465592972vw;
  color: #000078;
  background-color: #ffde00;
  border-radius: 50%;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -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;
}
@media screen and (min-width: 1466px) {
  #floatEstimate ._circle {
    width: 211px;
    height: 211px;
  }
}
@media screen and (max-width: 768px) {
  #floatEstimate ._circle {
    display: none;
  }
}
#floatEstimate ._circle p {
  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;
  padding: 0 0 3.3674963397vw;
  position: relative;
}
@media screen and (min-width: 1466px) {
  #floatEstimate ._circle p {
    padding: 0 0 46px;
  }
}
@media screen and (max-width: 768px) {
  #floatEstimate ._circle p {
    padding: 0 0 12.2666666667vw;
  }
}
#floatEstimate ._circle p:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  background: url(../img/f-arrow.svg) no-repeat center/contain;
  width: 2.4890190337vw;
  height: 2.4890190337vw;
  margin-left: -1.2445095168vw;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
@media screen and (min-width: 1466px) {
  #floatEstimate ._circle p:after {
    width: 34px;
    height: 34px;
    margin-left: -17px;
  }
}
@media screen and (max-width: 768px) {
  #floatEstimate ._circle p:after {
    width: 9.0666666667vw;
    height: 9.0666666667vw;
    margin-left: -4.5333333333vw;
  }
}
#floatEstimate ._circle p small {
  display: inline-block;
  font-size: 1.317715959vw;
  padding: 0 1.25em;
  position: relative;
  font-weight: 700;
}
@media screen and (min-width: 1466px) {
  #floatEstimate ._circle p small {
    font-size: 18px;
  }
}
@media screen and (max-width: 768px) {
  #floatEstimate ._circle p small {
    font-size: 4.8vw;
  }
}
#floatEstimate ._circle p small:before {
  content: "／";
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
  rotate: 10deg;
  font-weight: 900;
}
#floatEstimate ._circle p small:after {
  content: "／";
  position: absolute;
  top: 0;
  right: 0;
  rotate: -10deg;
  font-weight: 900;
}
#floatEstimate ._circle p span {
  font-size: 1.6105417277vw;
  font-weight: 700;
  text-align: center;
}
@media screen and (min-width: 1466px) {
  #floatEstimate ._circle p span {
    font-size: 22px;
  }
}
@media screen and (max-width: 768px) {
  #floatEstimate ._circle p span {
    font-size: 5.8666666667vw;
    line-height: 1.3;
  }
}
#floatEstimate ._circle p span strong {
  font-size: 2.196193265vw;
  font-weight: 700;
  display: block;
}
@media screen and (min-width: 1466px) {
  #floatEstimate ._circle p span strong {
    font-size: 30px;
  }
}
@media screen and (max-width: 768px) {
  #floatEstimate ._circle p span strong {
    font-size: 8vw;
  }
}
#floatEstimate ._txt {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-animation: mv_rotate 20s linear infinite;
          animation: mv_rotate 20s linear infinite;
}
#floatEstimate ._txt span {
  position: absolute;
  left: 50%;
  font-size: 0.9077598829vw;
  -webkit-transform-origin: 0 9.0043923865vw;
          transform-origin: 0 9.0043923865vw;
  color: #000039;
}
@media screen and (min-width: 1466px) {
  #floatEstimate ._txt span {
    font-size: 12.4px;
    -webkit-transform-origin: 0 123px;
            transform-origin: 0 123px;
  }
}
#floatEstimate._page {
  top: 19.7657393851vw;
}
@media screen and (min-width: 1466px) {
  #floatEstimate._page {
    top: 270px;
  }
}
@media screen and (max-height: 900px) and (min-width: 1467px) {
  #floatEstimate._page {
    top: auto;
    bottom: 2.196193265vw;
  }
}
@media screen and (max-width: 768px) {
  #floatEstimate._page {
    display: none;
  }
}

@-webkit-keyframes mv_rotate {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}

@keyframes mv_rotate {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
#top-featured {
  padding: 3.6603221083vw 0 4.39238653vw;
  overflow: hidden;
}
@media screen and (min-width: 1466px) {
  #top-featured {
    padding: 50px 0 60px;
  }
}
@media screen and (max-width: 768px) {
  #top-featured {
    padding: 28vw 0 5.3333333333vw;
  }
}
#top-featured ._ttl {
  text-align: center;
}
#top-featured ._ttl h2 {
  font-size: 2.0497803807vw;
  margin: 0 0 1.2em;
  font-weight: 700;
  color: #000039;
}
@media screen and (min-width: 1466px) {
  #top-featured ._ttl h2 {
    font-size: 28px;
  }
}
@media screen and (max-width: 768px) {
  #top-featured ._ttl h2 {
    font-size: 4.2666666667vw;
  }
}
#top-featured ._slider .swiper {
  overflow: visible;
}
#top-featured ._slider .swiper .swiper-wrapper {
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
}
#top-featured ._slider .swiper .swiper-wrapper .swiper-slide {
  width: 14.6412884334vw;
  height: 6.588579795vw;
  margin: 0 0.7320644217vw;
}
@media screen and (min-width: 1466px) {
  #top-featured ._slider .swiper .swiper-wrapper .swiper-slide {
    width: 200px;
    height: 90px;
    margin: 0 10px;
  }
}
@media screen and (max-width: 768px) {
  #top-featured ._slider .swiper .swiper-wrapper .swiper-slide {
    width: 26.6666666667vw;
    height: 12vw;
    margin: 0 1.3333333333vw;
  }
}
#top-featured ._slider .swiper .swiper-wrapper .swiper-slide figure {
  width: 100%;
  height: 100%;
  overflow: hidden;
}
#top-featured ._slider .swiper .swiper-wrapper .swiper-slide figure img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
#top-featured ._slider ._logoSlider_1 {
  margin: 0 -8.78477306vw 1.4641288433vw;
}
@media screen and (min-width: 1466px) {
  #top-featured ._slider ._logoSlider_1 {
    margin: 0 -120px 20px;
  }
}
@media screen and (max-width: 768px) {
  #top-featured ._slider ._logoSlider_1 {
    margin: 0 -16vw 2.6666666667vw;
  }
}
#top-featured ._txt {
  text-align: center;
  padding: 2.196193265vw 0 0;
}
@media screen and (min-width: 1466px) {
  #top-featured ._txt {
    padding: 30px 0 0;
  }
}
@media screen and (max-width: 768px) {
  #top-featured ._txt {
    padding: 5.3333333333vw 0 0;
  }
}
#top-featured ._txt p {
  font-size: 1.317715959vw;
}
@media screen and (min-width: 1466px) {
  #top-featured ._txt p {
    font-size: 18px;
  }
}
@media screen and (max-width: 768px) {
  #top-featured ._txt p {
    font-size: 3.7333333333vw;
  }
}

#top-about {
  background-color: #cfdde7;
  height: 46.875vw;
  position: relative;
  overflow: hidden;
}
@media screen and (min-width: 1466px) {
  #top-about {
    height: 46.875vw;
  }
}
@media screen and (max-width: 1920px) and (min-width: 1467px) {
  #top-about {
    height: 46.875vw;
  }
}
@media screen and (max-width: 768px) {
  #top-about {
    height: auto;
    padding: 6.6666666667vw 0vw 104vw;
  }
}
#top-about ._wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 100%;
}
@media screen and (max-width: 768px) {
  #top-about ._wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
#top-about ._wrap ._txt {
  padding: 0 0 0 4.6875vw;
  position: relative;
  z-index: 10;
}
@media screen and (min-width: 1466px) {
  #top-about ._wrap ._txt {
    padding: 0 0 0 4.6875vw;
  }
}
@media screen and (max-width: 1920px) and (min-width: 1467px) {
  #top-about ._wrap ._txt {
    padding: 0 0 0 4.6875vw;
  }
}
@media screen and (max-width: 768px) {
  #top-about ._wrap ._txt {
    padding: 0 5.3333333333vw;
  }
}
#top-about ._wrap ._txt h2 {
  font-size: 3.2291666667vw;
  font-weight: 700;
  line-height: 1.5;
  margin: 0 0 1em;
}
@media screen and (min-width: 1466px) {
  #top-about ._wrap ._txt h2 {
    font-size: 3.2291666667vw;
  }
}
@media screen and (max-width: 1920px) and (min-width: 1467px) {
  #top-about ._wrap ._txt h2 {
    font-size: 3.2291666667vw;
  }
}
@media screen and (max-width: 768px) {
  #top-about ._wrap ._txt h2 {
    font-size: 5.3333333333vw;
    margin-right: -1em;
  }
}
#top-about ._wrap ._txt h2 strong {
  color: #000078;
  font-weight: 700;
}
#top-about ._wrap ._txt p {
  font-size: 0.8333333333vw;
  line-height: 2.2;
  margin: 0 0 3em;
}
@media screen and (min-width: 1466px) {
  #top-about ._wrap ._txt p {
    font-size: 0.8333333333vw;
  }
}
@media screen and (max-width: 1920px) and (min-width: 1467px) {
  #top-about ._wrap ._txt p {
    font-size: 0.8333333333vw;
  }
}
@media screen and (max-width: 768px) {
  #top-about ._wrap ._txt p {
    font-size: 3.7333333333vw;
    line-height: 1.6;
    margin: 0 0 1.5em;
  }
}
#top-about ._wrap ._txt p:last-child {
  margin: 0;
}
#top-about ._slider {
  position: absolute;
  top: -15%;
  right: -10%;
  height: 70.3125vw;
  width: 48vw;
  z-index: 1;
}
@media screen and (min-width: 1466px) {
  #top-about ._slider {
    height: 70.3125vw;
  }
}
@media screen and (max-width: 1920px) and (min-width: 1467px) {
  #top-about ._slider {
    height: 70.3125vw;
  }
}
@media screen and (max-width: 768px) {
  #top-about ._slider {
    height: 98.6666666667vw;
    top: auto;
    right: auto;
    left: 0;
    bottom: 0;
    width: 100%;
    overflow: hidden;
  }
}
#top-about ._slider ._sp {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.5208333333vw;
  rotate: 25deg;
  width: 125%;
  height: 125%;
  -webkit-transform: translate(-17.5%, -12.5%);
          transform: translate(-17.5%, -12.5%);
}
@media screen and (min-width: 1466px) {
  #top-about ._slider ._sp {
    gap: 0.5208333333vw;
  }
}
@media screen and (max-width: 1920px) and (min-width: 1467px) {
  #top-about ._slider ._sp {
    gap: 0.5208333333vw;
  }
}
@media screen and (max-width: 768px) {
  #top-about ._slider ._sp {
    gap: 1.3333333333vw;
    width: 150%;
    height: 150%;
    -webkit-transform: translate(-17.5%, -12.5%);
            transform: translate(-17.5%, -12.5%);
  }
}
#top-about ._slider ._sp > div {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
#top-about ._slider ._worksSlider_4 {
  display: none;
}
@media screen and (max-width: 768px) {
  #top-about ._slider ._worksSlider_4 {
    display: block;
  }
}
#top-about ._slider .swiper {
  height: 100%;
}
#top-about ._slider .swiper .swiper-wrapper {
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
}
#top-about ._slider .swiper .swiper-wrapper .swiper-slide {
  /* width:vw(330);
  height:vw(220);

  @include pc{
    width:ww(330);
    height:ww(220);
  } */
}
#top-about ._slider .swiper .swiper-wrapper .swiper-slide figure {
  width: 100%;
  height: 100%;
  overflow: hidden;
  border-radius: 0.3125vw;
}
@media screen and (min-width: 1466px) {
  #top-about ._slider .swiper .swiper-wrapper .swiper-slide figure {
    border-radius: 0.3125vw;
  }
}
@media screen and (max-width: 1920px) and (min-width: 1467px) {
  #top-about ._slider .swiper .swiper-wrapper .swiper-slide figure {
    border-radius: 0.3125vw;
  }
}
@media screen and (max-width: 768px) {
  #top-about ._slider .swiper .swiper-wrapper .swiper-slide figure {
    border-radius: 1.6vw;
  }
}
#top-about ._slider .swiper .swiper-wrapper .swiper-slide figure img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

#top-works {
  padding: 6.9546120059vw 0;
}
@media screen and (min-width: 1466px) {
  #top-works {
    padding: 95px 0;
  }
}
@media screen and (max-width: 768px) {
  #top-works {
    padding: 9.3333333333vw 0 5.3333333333vw;
  }
}
#top-works._page {
  padding: 0;
}
#top-works ._wrap ._meta ._ttl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  margin: 0 0 2.196193265vw;
}
@media screen and (min-width: 1466px) {
  #top-works ._wrap ._meta ._ttl {
    margin: 0 0 30px;
  }
}
@media screen and (max-width: 768px) {
  #top-works ._wrap ._meta ._ttl {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    margin: 0 0 5.3333333333vw;
  }
}
#top-works ._wrap ._meta ._ttl h2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  #top-works ._wrap ._meta ._ttl h2 {
    margin: 0 0 4vw;
  }
}
#top-works ._wrap ._meta ._ttl h2 span {
  font-size: 4.831625183vw;
  font-weight: 700;
  color: #000078;
  margin: 0 0.3em 0 0;
}
@media screen and (min-width: 1466px) {
  #top-works ._wrap ._meta ._ttl h2 span {
    font-size: 66px;
  }
}
@media screen and (max-width: 768px) {
  #top-works ._wrap ._meta ._ttl h2 span {
    font-size: 9.0666666667vw;
  }
}
#top-works ._wrap ._meta ._ttl h2 small {
  font-size: 1.4641288433vw;
  font-weight: 700;
  color: #000078;
}
@media screen and (min-width: 1466px) {
  #top-works ._wrap ._meta ._ttl h2 small {
    font-size: 20px;
  }
}
@media screen and (max-width: 768px) {
  #top-works ._wrap ._meta ._ttl h2 small {
    font-size: 4.2666666667vw;
  }
}
#top-works ._wrap ._meta ._ttl p {
  font-size: 1.317715959vw;
  font-weight: 700;
}
@media screen and (min-width: 1466px) {
  #top-works ._wrap ._meta ._ttl p {
    font-size: 18px;
  }
}
@media screen and (max-width: 768px) {
  #top-works ._wrap ._meta ._ttl p {
    font-size: 4.2666666667vw;
  }
}
#top-works ._wrap ._meta ._ttl p strong {
  color: #000039;
  font-weight: 700;
}
#top-works ._wrap ._meta ._categories {
  margin: 0 0 2.9282576867vw;
}
@media screen and (min-width: 1466px) {
  #top-works ._wrap ._meta ._categories {
    margin: 0 0 40px;
  }
}
@media screen and (max-width: 768px) {
  #top-works ._wrap ._meta ._categories {
    margin: 0 0 5.3333333333vw;
  }
}
#top-works ._wrap ._meta ._categories .cateBox {
  border: solid #d6d6d6 0.0732064422vw;
  border-radius: 0.7320644217vw;
  padding: 1.8301610542vw 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #fff;
}
@media screen and (min-width: 1466px) {
  #top-works ._wrap ._meta ._categories .cateBox {
    border-width: 1px;
    border-radius: 10px;
    padding: 25px 0;
  }
}
@media screen and (max-width: 768px) {
  #top-works ._wrap ._meta ._categories .cateBox {
    border-width: 0.2666666667vw;
    border-radius: 2.6666666667vw;
    padding: 5.3333333333vw 4vw;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    position: relative;
  }
}
#top-works ._wrap ._meta ._categories .cateBox .lBox {
  width: 13.17715959vw;
  font-size: 2.4890190337vw;
  font-weight: 800;
  text-align: center;
}
@media screen and (min-width: 1466px) {
  #top-works ._wrap ._meta ._categories .cateBox .lBox {
    width: 180px;
    font-size: 34px;
  }
}
@media screen and (max-width: 768px) {
  #top-works ._wrap ._meta ._categories .cateBox .lBox {
    width: 100%;
    font-size: 5.3333333333vw;
    text-align: left;
  }
}
#top-works ._wrap ._meta ._categories .cateBox .lBox i {
  display: none;
  background-color: #000039;
  width: 3.2210834553vw;
  height: 3.2210834553vw;
  border-radius: 50%;
  position: absolute;
  top: 0;
  right: 0;
}
@media screen and (min-width: 1466px) {
  #top-works ._wrap ._meta ._categories .cateBox .lBox i {
    width: 44px;
    height: 44px;
  }
}
@media screen and (max-width: 768px) {
  #top-works ._wrap ._meta ._categories .cateBox .lBox i {
    display: block;
    width: 8vw;
    height: 8vw;
    top: 5.3333333333vw;
    right: 5.3333333333vw;
  }
}
#top-works ._wrap ._meta ._categories .cateBox .lBox i:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 2.0497803807vw;
  height: 0.1464128843vw;
  background-color: #fff;
  margin: -0.0732064422vw 0 0 -1.0248901903vw;
}
@media screen and (min-width: 1466px) {
  #top-works ._wrap ._meta ._categories .cateBox .lBox i:before {
    width: 28px;
    height: 2px;
    margin: -1px 0 0 -14px;
  }
}
@media screen and (max-width: 768px) {
  #top-works ._wrap ._meta ._categories .cateBox .lBox i:before {
    width: 5.0666666667vw;
    height: 0.2666666667vw;
    margin: -0.1333333333vw 0 0 -2.5333333333vw;
  }
}
#top-works ._wrap ._meta ._categories .cateBox .lBox i:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 2.0497803807vw;
  height: 0.1464128843vw;
  background-color: #fff;
  rotate: 90deg;
  margin: -0.0732064422vw 0 0 -1.0248901903vw;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
@media screen and (min-width: 1466px) {
  #top-works ._wrap ._meta ._categories .cateBox .lBox i:after {
    width: 28px;
    height: 2px;
    margin: -1px 0 0 -14px;
  }
}
@media screen and (max-width: 768px) {
  #top-works ._wrap ._meta ._categories .cateBox .lBox i:after {
    width: 5.0666666667vw;
    height: 0.2666666667vw;
    margin: -0.1333333333vw 0 0 -2.5333333333vw;
  }
}
#top-works ._wrap ._meta ._categories .cateBox .lBox._show i:after {
  rotate: 360deg;
}
#top-works ._wrap ._meta ._categories .cateBox .rBox {
  padding: 0 0 0 2.9282576867vw;
  border-left: solid #d6d6d6 0.0732064422vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.4641288433vw;
  line-height: 1.8;
  width: 79.0629575403vw;
}
@media screen and (min-width: 1466px) {
  #top-works ._wrap ._meta ._categories .cateBox .rBox {
    padding: 0 0 0 2.9282576867vw;
    border-width: 1px;
    gap: 20px;
    width: 1100px;
  }
}
@media screen and (max-width: 768px) {
  #top-works ._wrap ._meta ._categories .cateBox .rBox {
    padding: 4vw 0 0;
    border: 0vw;
    gap: 5.3333333333vw;
    width: auto;
  }
}
#top-works ._wrap ._meta ._categories .cateBox .rBox .in p {
  font-size: 1.1713030747vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 1em;
  font-weight: 700;
  margin: 0 0 0.5em;
}
@media screen and (min-width: 1466px) {
  #top-works ._wrap ._meta ._categories .cateBox .rBox .in p {
    font-size: 16px;
  }
}
@media screen and (max-width: 768px) {
  #top-works ._wrap ._meta ._categories .cateBox .rBox .in p {
    font-size: 3.7333333333vw;
    margin: 0 0 0.5em;
  }
}
#top-works ._wrap ._meta ._categories .cateBox .rBox .in p span {
  color: #000039;
}
#top-works ._wrap ._meta ._categories .cateBox .rBox .in p a {
  text-decoration: none;
}
#top-works ._wrap ._meta ._categories .cateBox .rBox .in p a:hover {
  text-decoration: underline;
  color: #858585;
}
#top-works ._wrap ._meta ._categories .cateBox .rBox .in p.current a {
  text-decoration: underline;
  color: #858585;
}
#top-works ._wrap ._meta ._categories .cateBox .rBox .in p.current a:hover {
  text-decoration: none;
}
#top-works ._wrap ._meta ._categories .cateBox .rBox .in ul {
  font-size: 1.0248901903vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 0 1.5em;
  font-weight: 700;
}
@media screen and (min-width: 1466px) {
  #top-works ._wrap ._meta ._categories .cateBox .rBox .in ul {
    font-size: 14px;
  }
}
@media screen and (max-width: 768px) {
  #top-works ._wrap ._meta ._categories .cateBox .rBox .in ul {
    font-size: 3.4666666667vw;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 0.5em 2em;
  }
}
#top-works ._wrap ._meta ._categories .cateBox .rBox .in ul li a {
  text-decoration: none;
}
#top-works ._wrap ._meta ._categories .cateBox .rBox .in ul li a:hover {
  text-decoration: underline;
  color: #858585;
}
#top-works ._wrap ._meta ._categories .cateBox .rBox .in ul li.current a {
  text-decoration: underline;
  color: #858585;
}
#top-works ._wrap ._meta ._categories .cateBox .rBox .in ul li.current a:hover {
  text-decoration: none;
}
#top-works ._wrap ._list {
  width: 95.2083333333vw;
  margin: 0 auto;
}
@media screen and (min-width: 1466px) {
  #top-works ._wrap ._list {
    width: 90vw;
    margin: 0 auto;
    padding: 0;
  }
}
@media screen and (max-width: 1920px) and (min-width: 1467px) {
  #top-works ._wrap ._list {
    width: 90vw;
    margin: 0 auto;
    padding: 0;
  }
}
@media screen and (max-width: 768px) {
  #top-works ._wrap ._list {
    width: auto;
    padding: 0 5.3333333333vw;
  }
}
#top-works ._wrap ._list .worksWrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
#top-works ._wrap ._list .worksWrapper .worksList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 2.0833333333vw 1.0416666667vw;
}
@media screen and (min-width: 1466px) {
  #top-works ._wrap ._list .worksWrapper .worksList {
    gap: 2.0833333333vw 1.0416666667vw;
  }
}
@media screen and (max-width: 1920px) and (min-width: 1467px) {
  #top-works ._wrap ._list .worksWrapper .worksList {
    gap: 2.0833333333vw 1.0416666667vw;
  }
}
@media screen and (max-width: 768px) {
  #top-works ._wrap ._list .worksWrapper .worksList {
    gap: 6.4vw 2.4vw;
  }
}
#top-works ._wrap ._list .worksWrapper .worksList .in {
  width: 23.0208333333vw;
}
@media screen and (min-width: 1466px) {
  #top-works ._wrap ._list .worksWrapper .worksList .in {
    width: 21.71875vw;
  }
}
@media screen and (max-width: 1920px) and (min-width: 1467px) {
  #top-works ._wrap ._list .worksWrapper .worksList .in {
    width: 21.71875vw;
  }
}
@media screen and (max-width: 768px) {
  #top-works ._wrap ._list .worksWrapper .worksList .in {
    width: 43.4666666667vw;
  }
}
#top-works ._wrap ._list .worksWrapper .worksList .in a {
  display: block;
}
#top-works ._wrap ._list .worksWrapper .worksList .in a .imgBox figure {
  width: 100%;
  height: 14.4791666667vw;
  border-radius: 0.5208333333vw;
  overflow: hidden;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
@media screen and (min-width: 1466px) {
  #top-works ._wrap ._list .worksWrapper .worksList .in a .imgBox figure {
    height: 14.4791666667vw;
    border-radius: 0.5208333333vw;
  }
}
@media screen and (max-width: 1920px) and (min-width: 1467px) {
  #top-works ._wrap ._list .worksWrapper .worksList .in a .imgBox figure {
    height: 14.4791666667vw;
    border-radius: 0.5208333333vw;
  }
}
@media screen and (max-width: 768px) {
  #top-works ._wrap ._list .worksWrapper .worksList .in a .imgBox figure {
    height: 29.3333333333vw;
    border-radius: 2.6666666667vw;
  }
}
#top-works ._wrap ._list .worksWrapper .worksList .in a .imgBox figure img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
#top-works ._wrap ._list .worksWrapper .worksList .in a .txBox h3 {
  font-size: 1.0416666667vw;
  font-weight: 700;
  padding: 0.5em 0;
}
@media screen and (min-width: 1466px) {
  #top-works ._wrap ._list .worksWrapper .worksList .in a .txBox h3 {
    font-size: 1.0416666667vw;
  }
}
@media screen and (max-width: 1920px) and (min-width: 1467px) {
  #top-works ._wrap ._list .worksWrapper .worksList .in a .txBox h3 {
    font-size: 1.0416666667vw;
  }
}
@media screen and (max-width: 768px) {
  #top-works ._wrap ._list .worksWrapper .worksList .in a .txBox h3 {
    font-size: 3.7333333333vw;
  }
}
#top-works ._wrap ._list .worksWrapper .worksList .in a .txBox .tx_cateBox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  font-size: 0.7291666667vw;
  gap: 0.3em;
  margin-bottom: 0.2083333333vw;
}
@media screen and (min-width: 1466px) {
  #top-works ._wrap ._list .worksWrapper .worksList .in a .txBox .tx_cateBox {
    font-size: 0.7291666667vw;
    margin-bottom: 0.2083333333vw;
  }
}
@media screen and (max-width: 1920px) and (min-width: 1467px) {
  #top-works ._wrap ._list .worksWrapper .worksList .in a .txBox .tx_cateBox {
    font-size: 0.7291666667vw;
    margin-bottom: 0.2083333333vw;
  }
}
@media screen and (max-width: 768px) {
  #top-works ._wrap ._list .worksWrapper .worksList .in a .txBox .tx_cateBox {
    font-size: 2.6666666667vw;
    margin-bottom: 1.0666666667vw;
  }
}
#top-works ._wrap ._list .worksWrapper .worksList .in a .txBox .tx_cateBox .cate_in {
  background-color: #000078;
  color: #fff;
  font-weight: 700;
  padding: 0.3em 1.2em;
  border-radius: 2em;
}
#top-works ._wrap ._list .worksWrapper .worksList .in a .txBox .tx_tagBox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  font-size: 1.0248901903vw;
  padding: 0.5em 0 0;
}
@media screen and (min-width: 1466px) {
  #top-works ._wrap ._list .worksWrapper .worksList .in a .txBox .tx_tagBox {
    font-size: 14px;
  }
}
@media screen and (max-width: 768px) {
  #top-works ._wrap ._list .worksWrapper .worksList .in a .txBox .tx_tagBox {
    font-size: 2.6666666667vw;
  }
}
#top-works ._wrap ._list .worksWrapper .worksList .in a .txBox .tx_tagBox .tag_in {
  font-weight: 700;
}
#top-works ._wrap ._list .worksWrapper .worksList .in a .txBox .tx_tagBox .tag_in:after {
  content: "/";
  padding: 0 0.5em;
}
#top-works ._wrap ._list .worksWrapper .worksList .in a .txBox .tx_tagBox .tag_in:last-child:after {
  content: none;
}
#top-works ._wrap ._list .worksWrapper .worksList .in a .txBox .tx_tagBox .tag_in a:hover {
  color: #000078;
  text-decoration: underline;
}
#top-works ._wrap ._list .worksWrapper .worksList .in a:hover .imgBox figure {
  scale: 1.05;
}
#top-works ._wrap .btn {
  padding: 6.588579795vw 0 0;
}
@media screen and (min-width: 1466px) {
  #top-works ._wrap .btn {
    padding: 90px 0 0;
  }
}
@media screen and (max-width: 768px) {
  #top-works ._wrap .btn {
    padding: 8vw 0 0;
  }
}

#top-reason {
  background-color: #000039;
  padding: 5.4904831625vw 0;
  position: relative;
  overflow: hidden;
}
@media screen and (min-width: 1466px) {
  #top-reason {
    padding: 75px 0;
  }
}
@media screen and (max-width: 768px) {
  #top-reason {
    padding: 5.3333333333vw 0;
  }
}
#top-reason:before {
  content: "";
  position: absolute;
  top: 50%;
  right: 4.0263543192vw;
  width: 66.3250366032vw;
  height: 59.2972181552vw;
  background: url(../img/top-reason-bg.svg) no-repeat center/contain;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 1;
}
@media screen and (min-width: 1466px) {
  #top-reason:before {
    right: 55px;
    width: 906px;
    height: 810px;
  }
}
@media screen and (max-width: 768px) {
  #top-reason:before {
    content: none;
    right: 14.6666666667vw;
    width: 241.6vw;
    height: 216vw;
  }
}
#top-reason ._wrap {
  position: relative;
  z-index: 2;
}
#top-reason ._wrap h2 {
  text-align: center;
  color: #fff;
  font-size: 4.0995607613vw;
  font-weight: 700;
  margin: 0 0 0.5em;
}
@media screen and (min-width: 1466px) {
  #top-reason ._wrap h2 {
    font-size: 60px;
  }
}
@media screen and (max-width: 768px) {
  #top-reason ._wrap h2 {
    font-size: 8vw;
    margin: 0 -0.5em 0.7em;
  }
}
#top-reason ._wrap ol {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.4641288433vw;
}
@media screen and (min-width: 1466px) {
  #top-reason ._wrap ol {
    gap: 20px;
  }
}
@media screen and (max-width: 768px) {
  #top-reason ._wrap ol {
    gap: 3.2vw;
  }
}
#top-reason ._wrap ol li {
  background-color: #fff;
  border-radius: 0.7320644217vw;
  overflow: hidden;
  position: relative;
}
@media screen and (min-width: 1466px) {
  #top-reason ._wrap ol li {
    border-radius: 10px;
  }
}
@media screen and (max-width: 768px) {
  #top-reason ._wrap ol li {
    border-radius: 2.6666666667vw;
  }
}
#top-reason ._wrap ol li ._num {
  position: absolute;
  top: 0;
  right: 0;
  background-color: #000078;
  width: 5.8565153734vw;
  height: 5.8565153734vw;
  border-radius: 0 0 0 0.7320644217vw;
  color: #fff;
  font-size: 2.196193265vw;
  font-weight: 800;
  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;
}
@media screen and (min-width: 1466px) {
  #top-reason ._wrap ol li ._num {
    width: 80px;
    height: 80px;
    border-radius: 0 0 0 10px;
    font-size: 30px;
  }
}
@media screen and (max-width: 768px) {
  #top-reason ._wrap ol li ._num {
    display: none;
    width: 21.3333333333vw;
    height: 21.3333333333vw;
    border-radius: 0 0 0 2.6666666667vw;
    font-size: 8vw;
  }
}
#top-reason ._wrap ol li ._cnt {
  padding: 1.8301610542vw 1.4641288433vw 2.196193265vw 2.196193265vw;
}
@media screen and (min-width: 1466px) {
  #top-reason ._wrap ol li ._cnt {
    padding: 20px 35px 30px 35px;
  }
}
@media screen and (max-width: 768px) {
  #top-reason ._wrap ol li ._cnt {
    padding: 5.3333333333vw;
  }
}
#top-reason ._wrap ol li ._cnt ._h {
  padding: 0 0 0 6.2225475842vw;
  margin: 0 0 0.7320644217vw;
  position: relative;
}
@media screen and (min-width: 1466px) {
  #top-reason ._wrap ol li ._cnt ._h {
    padding: 0 0 0 85px;
    margin: 0 0 10px;
  }
}
@media screen and (max-width: 768px) {
  #top-reason ._wrap ol li ._cnt ._h {
    padding: 0;
    margin: 0 0 2.6666666667vw;
  }
}
#top-reason ._wrap ol li ._cnt ._h:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (max-width: 768px) {
  #top-reason ._wrap ol li ._cnt ._h:before {
    content: none;
  }
}
#top-reason ._wrap ol li ._cnt ._h h3 {
  font-size: 1.9033674963vw;
  font-weight: 900;
  color: #000078;
}
@media screen and (min-width: 1466px) {
  #top-reason ._wrap ol li ._cnt ._h h3 {
    font-size: 26px;
  }
}
@media screen and (max-width: 768px) {
  #top-reason ._wrap ol li ._cnt ._h h3 {
    font-size: 4.5333333333vw;
  }
}
#top-reason ._wrap ol li ._cnt ._p p {
  font-size: 1.1713030747vw;
  line-height: 1.8;
}
@media screen and (min-width: 1466px) {
  #top-reason ._wrap ol li ._cnt ._p p {
    font-size: 16px;
  }
}
@media screen and (max-width: 768px) {
  #top-reason ._wrap ol li ._cnt ._p p {
    font-size: 3.7333333333vw;
  }
}
#top-reason ._wrap ol li:nth-child(1) ._cnt ._h:before {
  background-image: url(../img/top-reason-icon01.svg);
  width: 4.6852122987vw;
  height: 4.4655929722vw;
}
@media screen and (min-width: 1466px) {
  #top-reason ._wrap ol li:nth-child(1) ._cnt ._h:before {
    width: 64px;
    height: 61px;
  }
}
@media screen and (max-width: 768px) {
  #top-reason ._wrap ol li:nth-child(1) ._cnt ._h:before {
    width: 17.0666666667vw;
    height: 16.2666666667vw;
  }
}
#top-reason ._wrap ol li:nth-child(2) ._cnt ._h:before {
  background-image: url(../img/top-reason-icon02.svg);
  width: 4.5387994143vw;
  height: 4.0995607613vw;
  left: 0.1464128843vw;
}
@media screen and (min-width: 1466px) {
  #top-reason ._wrap ol li:nth-child(2) ._cnt ._h:before {
    width: 62px;
    height: 56px;
    left: 2px;
  }
}
@media screen and (max-width: 768px) {
  #top-reason ._wrap ol li:nth-child(2) ._cnt ._h:before {
    width: 16.5333333333vw;
    height: 14.9333333333vw;
    left: 0.5333333333vw;
  }
}
#top-reason ._wrap ol li:nth-child(3) ._cnt ._h:before {
  background-image: url(../img/top-reason-icon03.svg);
  width: 4.5387994143vw;
  height: 3.7335285505vw;
  left: 0.1464128843vw;
}
@media screen and (min-width: 1466px) {
  #top-reason ._wrap ol li:nth-child(3) ._cnt ._h:before {
    width: 62px;
    height: 51px;
    left: 2px;
  }
}
@media screen and (max-width: 768px) {
  #top-reason ._wrap ol li:nth-child(3) ._cnt ._h:before {
    width: 16.5333333333vw;
    height: 13.6vw;
    left: 0.5333333333vw;
  }
}

#top-service {
  background-color: #e3ebf1;
  padding: 5.4904831625vw 0 6.9546120059vw;
  position: relative;
  overflow: hidden;
}
@media screen and (min-width: 1466px) {
  #top-service {
    padding: 75px 0 95px;
  }
}
@media screen and (max-width: 768px) {
  #top-service {
    padding: 8vw 0 5.3333333333vw;
  }
}
#top-service:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 39.8958333333vw;
  height: 100%;
  background: url(../img/bg01.svg) no-repeat center/100% 100%;
  z-index: 1;
}
@media screen and (min-width: 1466px) {
  #top-service:before {
    width: 39.8958333333vw;
  }
}
@media screen and (max-width: 768px) {
  #top-service:before {
    content: none;
  }
}
#top-service ._wrap {
  position: relative;
  z-index: 2;
}
#top-service ._wrap ._h {
  margin: 0 0 2.9282576867vw;
}
@media screen and (min-width: 1466px) {
  #top-service ._wrap ._h {
    margin: 0 0 40px;
  }
}
@media screen and (max-width: 768px) {
  #top-service ._wrap ._h {
    margin: 0 0 5.3333333333vw;
  }
}
#top-service ._wrap ._h h2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  line-height: 1;
}
#top-service ._wrap ._h h2 span {
  font-size: 4.831625183vw;
  font-weight: 700;
  color: #000078;
  margin: 0 0.3em 0 0;
}
@media screen and (min-width: 1466px) {
  #top-service ._wrap ._h h2 span {
    font-size: 66px;
  }
}
@media screen and (max-width: 768px) {
  #top-service ._wrap ._h h2 span {
    font-size: 9.0666666667vw;
  }
}
#top-service ._wrap ._h h2 small {
  font-size: 1.4641288433vw;
  font-weight: 700;
  color: #000078;
}
@media screen and (min-width: 1466px) {
  #top-service ._wrap ._h h2 small {
    font-size: 20px;
  }
}
@media screen and (max-width: 768px) {
  #top-service ._wrap ._h h2 small {
    font-size: 4.2666666667vw;
  }
}
#top-service ._wrap ._list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 768px) {
  #top-service ._wrap ._list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 3.2vw;
  }
}
#top-service ._wrap ._list ._col {
  width: 30.1610541728vw;
  background-color: #fff;
  border-radius: 0.7320644217vw;
  padding: 0.7320644217vw;
  position: relative;
}
@media screen and (min-width: 1466px) {
  #top-service ._wrap ._list ._col {
    width: 442px;
    border-radius: 10px;
    padding: 10px;
  }
}
@media screen and (max-width: 768px) {
  #top-service ._wrap ._list ._col {
    width: 100%;
    border-radius: 2.6666666667vw;
    padding: 2.6666666667vw;
  }
}
#top-service ._wrap ._list ._col ._circle {
  position: absolute;
  top: 13.17715959vw;
  right: 1.4641288433vw;
  width: 7.3206442167vw;
  height: 7.3206442167vw;
  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;
  overflow: hidden;
  z-index: 9999;
}
@media screen and (min-width: 1466px) {
  #top-service ._wrap ._list ._col ._circle {
    top: 180px;
    right: 20px;
    width: 100px;
    height: 100px;
  }
}
@media screen and (max-width: 768px) {
  #top-service ._wrap ._list ._col ._circle {
    display: none;
  }
}
#top-service ._wrap ._list ._col ._circle ._arrow {
  position: absolute;
  width: 4.6852122987vw;
  height: 4.6852122987vw;
  color: #000078;
  background-color: #fff;
  border-radius: 50%;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -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;
}
@media screen and (min-width: 1466px) {
  #top-service ._wrap ._list ._col ._circle ._arrow {
    width: 64px;
    height: 64px;
  }
}
@media screen and (max-width: 768px) {
  #top-service ._wrap ._list ._col ._circle ._arrow {
    display: none;
  }
}
#top-service ._wrap ._list ._col ._circle ._arrow:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background: url(../img/mm-arrow.svg) no-repeat center/contain;
  width: 1.0248901903vw;
  height: 0.8052708638vw;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
@media screen and (min-width: 1466px) {
  #top-service ._wrap ._list ._col ._circle ._arrow:after {
    width: 14px;
    height: 11px;
    right: 20px;
  }
}
#top-service ._wrap ._list ._col ._circle ._txt {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-animation: mv_rotate 20s linear infinite;
          animation: mv_rotate 20s linear infinite;
}
#top-service ._wrap ._list ._col ._circle ._txt span {
  position: absolute;
  left: 50%;
  font-size: 0.7320644217vw;
  -webkit-transform-origin: 0 3.6603221083vw;
          transform-origin: 0 3.6603221083vw;
  color: #000078;
}
@media screen and (min-width: 1466px) {
  #top-service ._wrap ._list ._col ._circle ._txt span {
    font-size: 10px;
    -webkit-transform-origin: 0 50px;
            transform-origin: 0 50px;
  }
}
#top-service ._wrap ._list ._col figure {
  margin: 0 0 1.4641288433vw;
  width: 100%;
}
@media screen and (min-width: 1466px) {
  #top-service ._wrap ._list ._col figure {
    margin: 0 0 20px;
  }
}
@media screen and (max-width: 768px) {
  #top-service ._wrap ._list ._col figure {
    margin: 0 0 4vw;
  }
}
#top-service ._wrap ._list ._col dl {
  padding: 0 0.7320644217vw 0.7320644217vw;
}
@media screen and (min-width: 1466px) {
  #top-service ._wrap ._list ._col dl {
    padding: 0 10px 10px;
  }
}
@media screen and (max-width: 768px) {
  #top-service ._wrap ._list ._col dl {
    padding: 0 2.6666666667vw 2.6666666667vw;
  }
}
#top-service ._wrap ._list ._col dl dt {
  margin: 0 0 1.4641288433vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media screen and (min-width: 1466px) {
  #top-service ._wrap ._list ._col dl dt {
    margin: 0 0 20px;
  }
}
@media screen and (max-width: 768px) {
  #top-service ._wrap ._list ._col dl dt {
    margin: 0 0 3.2vw;
  }
}
#top-service ._wrap ._list ._col dl dt strong {
  font-size: 2.196193265vw;
  font-weight: 700;
  color: #000078;
  margin: 0 0 0.3em;
}
@media screen and (min-width: 1466px) {
  #top-service ._wrap ._list ._col dl dt strong {
    font-size: 30px;
  }
}
@media screen and (max-width: 768px) {
  #top-service ._wrap ._list ._col dl dt strong {
    font-size: 5.3333333333vw;
  }
}
#top-service ._wrap ._list ._col dl dt small {
  font-size: 0.9956076135vw;
}
@media screen and (min-width: 1466px) {
  #top-service ._wrap ._list ._col dl dt small {
    font-size: 15px;
  }
}
@media screen and (max-width: 768px) {
  #top-service ._wrap ._list ._col dl dt small {
    font-size: 3.2vw;
  }
}
#top-service ._wrap ._list ._col dl dd {
  font-size: 1.1713030747vw;
  margin: 0 0 0.6em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.439238653vw;
}
@media screen and (min-width: 1466px) {
  #top-service ._wrap ._list ._col dl dd {
    font-size: 16px;
    gap: 6px;
  }
}
@media screen and (max-width: 768px) {
  #top-service ._wrap ._list ._col dl dd {
    font-size: 3.7333333333vw;
    gap: 1.6vw;
  }
}
#top-service ._wrap ._list ._col dl dd a {
  color: #000078;
  padding: 0.6em 1em;
  position: relative;
  display: block;
  border: solid #858585 0.0732064422vw;
  border-radius: 0.439238653vw;
  width: 100%;
}
@media screen and (min-width: 1466px) {
  #top-service ._wrap ._list ._col dl dd a {
    border-width: 1px;
    border-radius: 6px;
  }
}
@media screen and (max-width: 768px) {
  #top-service ._wrap ._list ._col dl dd a {
    border-width: 0.2666666667vw;
    border-radius: 1.6vw;
  }
}
#top-service ._wrap ._list ._col dl dd a:before {
  content: "";
  position: absolute;
  top: 50%;
  right: 1.4641288433vw;
  background: url(../img/mm-arrow.svg) no-repeat center/contain;
  width: 1.0248901903vw;
  height: 0.8052708638vw;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (min-width: 1466px) {
  #top-service ._wrap ._list ._col dl dd a:before {
    width: 14px;
    height: 11px;
    right: 20px;
  }
}
@media screen and (max-width: 768px) {
  #top-service ._wrap ._list ._col dl dd a:before {
    width: 3.7333333333vw;
    height: 2.9333333333vw;
    right: 5.3333333333vw;
  }
}
#top-service ._wrap ._list ._col dl dd a:hover {
  color: #fff;
  background-color: #000078;
}
#top-service ._wrap ._list ._col dl dd a:hover:before {
  right: 0.7320644217vw;
  background-image: url(../img/btn-arrow.svg);
}
@media screen and (min-width: 1466px) {
  #top-service ._wrap ._list ._col dl dd a:hover:before {
    right: 10px;
  }
}
@media screen and (max-width: 768px) {
  #top-service ._wrap ._list ._col dl dd a:hover:before {
    right: 2.6666666667vw;
  }
}
#top-service._page:before {
  content: none;
}
#top-service._page ._wrap ._h h2 {
  display: block;
  text-align: center;
  font-weight: 700;
  font-size: 3.953147877vw;
  line-height: 1.3;
  margin: 0 0 0.5em;
}
@media screen and (min-width: 1466px) {
  #top-service._page ._wrap ._h h2 {
    font-size: 60px;
  }
}
@media screen and (max-width: 768px) {
  #top-service._page ._wrap ._h h2 {
    font-size: 6.9333333333vw;
  }
}
#top-service._page ._wrap ._h h2 strong {
  color: #000078;
  font-weight: 700;
}

#top-plan {
  background-color: #333;
  padding: 5.4904831625vw 0 5.4904831625vw;
  position: relative;
  overflow: hidden;
}
@media screen and (min-width: 1466px) {
  #top-plan {
    padding: 75px 0 75px;
  }
}
@media screen and (max-width: 768px) {
  #top-plan {
    padding: 6.6666666667vw 0 5.3333333333vw;
  }
}
#top-plan:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 68.8020833333vw;
  height: 100%;
  background: url(../img/bg02.svg) no-repeat center/100% 100%;
  z-index: 1;
}
@media screen and (min-width: 1466px) {
  #top-plan:before {
    width: 68.8020833333vw;
  }
}
@media screen and (max-width: 768px) {
  #top-plan:before {
    content: none;
  }
}
#top-plan ._wrap {
  position: relative;
  z-index: 2;
}
#top-plan ._wrap ._h {
  margin: 0 0 2.9282576867vw;
}
@media screen and (min-width: 1466px) {
  #top-plan ._wrap ._h {
    margin: 0 0 40px;
  }
}
@media screen and (max-width: 768px) {
  #top-plan ._wrap ._h {
    margin: 0 0 5.3333333333vw;
  }
}
#top-plan ._wrap ._h h2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  line-height: 1;
}
#top-plan ._wrap ._h h2 span {
  font-size: 4.831625183vw;
  font-weight: 700;
  color: #fff;
  margin: 0 0.3em 0 0;
}
@media screen and (min-width: 1466px) {
  #top-plan ._wrap ._h h2 span {
    font-size: 66px;
  }
}
@media screen and (max-width: 768px) {
  #top-plan ._wrap ._h h2 span {
    font-size: 9.0666666667vw;
  }
}
#top-plan ._wrap ._h h2 small {
  font-size: 1.4641288433vw;
  font-weight: 700;
  color: #fff;
}
@media screen and (min-width: 1466px) {
  #top-plan ._wrap ._h h2 small {
    font-size: 20px;
  }
}
@media screen and (max-width: 768px) {
  #top-plan ._wrap ._h h2 small {
    font-size: 4.2666666667vw;
  }
}
#top-plan ._wrap .swiper-nav {
  display: none;
}
@media screen and (max-width: 768px) {
  #top-plan ._wrap .swiper-nav {
    margin: 16vw 0 0;
    display: block;
    position: relative;
  }
}
#top-plan ._wrap .swiper-nav .swiper-pagination .swiper-pagination-bullet {
  background-color: #fff;
  opacity: 1;
}
#top-plan ._wrap .swiper-nav .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background-color: #000078;
}
#top-plan ._wrap ._list ol {
  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;
  gap: 0.7320644217vw;
}
@media screen and (min-width: 1466px) {
  #top-plan ._wrap ._list ol {
    gap: 10px;
  }
}
@media screen and (max-width: 768px) {
  #top-plan ._wrap ._list ol {
    gap: 0vw;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-pack: normal;
        -ms-flex-pack: normal;
            justify-content: normal;
  }
}
#top-plan ._wrap ._list ol li {
  width: 45.9736456808vw;
  border-radius: 0.7320644217vw;
  background-color: #fff;
  padding: 0.3660322108vw;
}
@media screen and (min-width: 1466px) {
  #top-plan ._wrap ._list ol li {
    width: 678px;
    border-radius: 10px;
    padding: 5px;
  }
}
@media screen and (max-width: 768px) {
  #top-plan ._wrap ._list ol li {
    width: 89.3333333333vw;
    border-radius: 2.6666666667vw;
    padding: 1.3333333333vw;
  }
}
#top-plan ._wrap ._list ol li ._cnt ._ttl {
  background-color: #000039;
  border-radius: 0.439238653vw;
  padding: 0.7320644217vw 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fff;
}
@media screen and (min-width: 1466px) {
  #top-plan ._wrap ._list ol li ._cnt ._ttl {
    border-radius: 6px;
    padding: 10px 0;
  }
}
@media screen and (max-width: 768px) {
  #top-plan ._wrap ._list ol li ._cnt ._ttl {
    border-radius: 1.6vw;
    padding: 3.2vw 0;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    text-align: center;
  }
}
#top-plan ._wrap ._list ol li ._cnt ._ttl ._num {
  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;
  width: 8.0527086384vw;
  line-height: 1.2;
}
@media screen and (min-width: 1466px) {
  #top-plan ._wrap ._list ol li ._cnt ._ttl ._num {
    width: 110px;
  }
}
@media screen and (max-width: 768px) {
  #top-plan ._wrap ._list ol li ._cnt ._ttl ._num {
    width: 100%;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
#top-plan ._wrap ._list ol li ._cnt ._ttl ._num small {
  font-size: 1.4641288433vw;
  font-weight: 800;
}
@media screen and (min-width: 1466px) {
  #top-plan ._wrap ._list ol li ._cnt ._ttl ._num small {
    font-size: 20px;
  }
}
@media screen and (max-width: 768px) {
  #top-plan ._wrap ._list ol li ._cnt ._ttl ._num small {
    font-size: 3.7333333333vw;
  }
}
#top-plan ._wrap ._list ol li ._cnt ._ttl ._num span {
  font-size: 2.3426061493vw;
  font-weight: 800;
}
@media screen and (min-width: 1466px) {
  #top-plan ._wrap ._list ol li ._cnt ._ttl ._num span {
    font-size: 32px;
  }
}
@media screen and (max-width: 768px) {
  #top-plan ._wrap ._list ol li ._cnt ._ttl ._num span {
    font-size: 3.7333333333vw;
  }
}
#top-plan ._wrap ._list ol li ._cnt ._ttl ._t {
  border-left: solid #fff 0.0732064422vw;
  padding: 0.7320644217vw 0;
}
@media screen and (min-width: 1466px) {
  #top-plan ._wrap ._list ol li ._cnt ._ttl ._t {
    border-width: 1px;
    padding: 10px 0;
  }
}
@media screen and (max-width: 768px) {
  #top-plan ._wrap ._list ol li ._cnt ._ttl ._t {
    border: none;
    padding: 1.3333333333vw 0 1.3333333333vw;
  }
}
#top-plan ._wrap ._list ol li ._cnt ._ttl ._t h3 {
  font-size: 2.0497803807vw;
  font-weight: 900;
  line-height: 1.3;
  padding: 0 0 0 1em;
}
@media screen and (min-width: 1466px) {
  #top-plan ._wrap ._list ol li ._cnt ._ttl ._t h3 {
    font-size: 28px;
  }
}
@media screen and (max-width: 768px) {
  #top-plan ._wrap ._list ol li ._cnt ._ttl ._t h3 {
    font-size: 5.3333333333vw;
    padding: 0;
  }
}
#top-plan ._wrap ._list ol li ._cnt ._b {
  padding: 1.0980966325vw 0.7320644217vw 1.4641288433vw;
}
@media screen and (min-width: 1466px) {
  #top-plan ._wrap ._list ol li ._cnt ._b {
    padding: 15px 15px 20px;
  }
}
@media screen and (max-width: 768px) {
  #top-plan ._wrap ._list ol li ._cnt ._b {
    padding: 2.6666666667vw 1.3333333333vw 4vw;
  }
}
#top-plan ._wrap ._list ol li ._cnt ._b p {
  font-size: 1.0980966325vw;
  margin: 0 0 1em;
}
@media screen and (min-width: 1466px) {
  #top-plan ._wrap ._list ol li ._cnt ._b p {
    font-size: 15px;
  }
}
@media screen and (max-width: 768px) {
  #top-plan ._wrap ._list ol li ._cnt ._b p {
    font-size: 3.2vw;
  }
}
#top-plan ._wrap ._list ol li ._cnt ._b ul {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: 0.3660322108vw;
}
@media screen and (min-width: 1466px) {
  #top-plan ._wrap ._list ol li ._cnt ._b ul {
    gap: 5px;
  }
}
@media screen and (max-width: 768px) {
  #top-plan ._wrap ._list ol li ._cnt ._b ul {
    gap: 0.8vw;
    grid-template-columns: 1fr 1fr;
  }
}
#top-plan ._wrap ._list ol li ._cnt ._b ul li {
  width: auto;
  background-color: #e3ebf1;
  border-radius: 0;
  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;
  color: #000039;
  font-size: 0.8052708638vw;
  padding: 1em 0;
}
@media screen and (min-width: 1466px) {
  #top-plan ._wrap ._list ol li ._cnt ._b ul li {
    font-size: 12px;
  }
}
@media screen and (max-width: 768px) {
  #top-plan ._wrap ._list ol li ._cnt ._b ul li {
    font-size: 3.2vw;
  }
}
#top-plan ._wrap ._list ol li ._cnt ._price {
  padding: 0 1.0980966325vw 1.8301610542vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 1466px) {
  #top-plan ._wrap ._list ol li ._cnt ._price {
    padding: 0 15px 25px;
  }
}
@media screen and (max-width: 768px) {
  #top-plan ._wrap ._list ol li ._cnt ._price {
    padding: 0 1.3333333333vw 4vw;
  }
}
#top-plan ._wrap ._list ol li ._cnt ._price ._table {
  border-top: solid #87a9c3 0.0732064422vw;
  width: 23.4260614934vw;
}
@media screen and (min-width: 1466px) {
  #top-plan ._wrap ._list ol li ._cnt ._price ._table {
    border-width: 1px;
    width: 320px;
  }
}
@media screen and (max-width: 768px) {
  #top-plan ._wrap ._list ol li ._cnt ._price ._table {
    border-width: 0.2666666667vw;
    width: 46.6666666667vw;
  }
}
#top-plan ._wrap ._list ol li ._cnt ._price ._table dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 1.0980966325vw;
  padding: 1em 0;
  border-bottom: solid #87a9c3 0.0732064422vw;
}
@media screen and (min-width: 1466px) {
  #top-plan ._wrap ._list ol li ._cnt ._price ._table dl {
    font-size: 15px;
    border-width: 1px;
  }
}
@media screen and (max-width: 768px) {
  #top-plan ._wrap ._list ol li ._cnt ._price ._table dl {
    font-size: 3.4666666667vw;
    border-width: 0.2666666667vw;
  }
}
#top-plan ._wrap ._list ol li ._cnt ._price ._table dl dt {
  color: #000078;
  font-weight: 700;
  width: 6.5em;
}
#top-plan ._wrap ._list ol li ._cnt ._price ._table dl dd {
  padding: 0 0 0 2em;
}
@media screen and (max-width: 768px) {
  #top-plan ._wrap ._list ol li ._cnt ._price ._table dl dd {
    padding: 0 0 0 1em;
  }
}
#top-plan ._wrap ._list ol li ._cnt ._price ._total {
  padding: 0 0 0 2.5622254758vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  line-height: 1;
  gap: 0.3em;
}
@media screen and (min-width: 1466px) {
  #top-plan ._wrap ._list ol li ._cnt ._price ._total {
    padding: 0 0 0 35px;
  }
}
@media screen and (max-width: 768px) {
  #top-plan ._wrap ._list ol li ._cnt ._price ._total {
    padding: 0 0 0 4vw;
  }
}
#top-plan ._wrap ._list ol li ._cnt ._price ._total strong {
  font-size: 6.7349926794vw;
  font-weight: 800;
  color: #c80000;
}
@media screen and (min-width: 1466px) {
  #top-plan ._wrap ._list ol li ._cnt ._price ._total strong {
    font-size: 92px;
  }
}
@media screen and (max-width: 768px) {
  #top-plan ._wrap ._list ol li ._cnt ._price ._total strong {
    font-size: 13.3333333333vw;
  }
}
#top-plan ._wrap ._list ol li ._cnt ._price ._total span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 0 0 1em;
}
@media screen and (max-width: 768px) {
  #top-plan ._wrap ._list ol li ._cnt ._price ._total span {
    padding: 0 0 0.5em;
  }
}
#top-plan ._wrap ._list ol li ._cnt ._price ._total span small {
  font-size: 0.878477306vw;
}
@media screen and (min-width: 1466px) {
  #top-plan ._wrap ._list ol li ._cnt ._price ._total span small {
    font-size: 12px;
  }
}
@media screen and (max-width: 768px) {
  #top-plan ._wrap ._list ol li ._cnt ._price ._total span small {
    font-size: 3.2vw;
  }
}
#top-plan ._wrap ._list ol li ._cnt ._price ._total span i {
  font-style: normal;
  color: #c80000;
  font-weight: 900;
  font-size: 2.0497803807vw;
}
@media screen and (min-width: 1466px) {
  #top-plan ._wrap ._list ol li ._cnt ._price ._total span i {
    font-size: 28px;
  }
}
@media screen and (max-width: 768px) {
  #top-plan ._wrap ._list ol li ._cnt ._price ._total span i {
    font-size: 4.2666666667vw;
  }
}
#top-plan ._wrap ._btn {
  padding: 4.7584187408vw 0 0;
}
@media screen and (min-width: 1466px) {
  #top-plan ._wrap ._btn {
    padding: 65px 0 0;
  }
}
@media screen and (max-width: 768px) {
  #top-plan ._wrap ._btn {
    padding: 8vw 0 0;
  }
}

#top-faq {
  background-color: #e3ebf1;
  padding: 5.4904831625vw 0 5.4904831625vw;
  position: relative;
  overflow: hidden;
}
@media screen and (min-width: 1466px) {
  #top-faq {
    padding: 75px 0 75px;
  }
}
@media screen and (max-width: 768px) {
  #top-faq {
    padding: 8vw 0 5.3333333333vw;
  }
}
#top-faq:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 94.3229166667vw;
  height: 100%;
  background: url(../img/bg03.svg) no-repeat center/100% 100%;
  z-index: 1;
}
@media screen and (min-width: 1466px) {
  #top-faq:before {
    width: 94.3229166667vw;
  }
}
@media screen and (max-width: 768px) {
  #top-faq:before {
    content: none;
  }
}
#top-faq ._wrap {
  position: relative;
  z-index: 2;
}
#top-faq ._wrap ._h {
  margin: 0 0 2.9282576867vw;
}
@media screen and (min-width: 1466px) {
  #top-faq ._wrap ._h {
    margin: 0 0 40px;
  }
}
@media screen and (max-width: 768px) {
  #top-faq ._wrap ._h {
    margin: 0 0 4vw;
  }
}
#top-faq ._wrap ._h h2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  line-height: 1;
}
#top-faq ._wrap ._h h2 span {
  font-size: 4.831625183vw;
  font-weight: 700;
  color: #000078;
  margin: 0 0.3em 0 0;
}
@media screen and (min-width: 1466px) {
  #top-faq ._wrap ._h h2 span {
    font-size: 66px;
  }
}
@media screen and (max-width: 768px) {
  #top-faq ._wrap ._h h2 span {
    font-size: 9.0666666667vw;
  }
}
#top-faq ._wrap ._h h2 small {
  font-size: 1.4641288433vw;
  font-weight: 700;
  color: #000078;
}
@media screen and (min-width: 1466px) {
  #top-faq ._wrap ._h h2 small {
    font-size: 20px;
  }
}
@media screen and (max-width: 768px) {
  #top-faq ._wrap ._h h2 small {
    font-size: 4.2666666667vw;
  }
}
#top-faq ._btn {
  padding: 4.39238653vw 0 0;
}
@media screen and (min-width: 1466px) {
  #top-faq ._btn {
    padding: 60px 0 0;
  }
}
@media screen and (max-width: 768px) {
  #top-faq ._btn {
    padding: 5.3333333333vw 0 0;
  }
}

.faqList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.7320644217vw;
  line-height: 1.5;
}
@media screen and (min-width: 1466px) {
  .faqList {
    gap: 10px;
  }
}
@media screen and (max-width: 768px) {
  .faqList {
    gap: 2.6666666667vw;
  }
}
.faqList dl {
  background-color: #fff;
  border-radius: 0.7320644217vw;
  padding: 2.196193265vw 2.196193265vw;
  cursor: pointer;
}
@media screen and (min-width: 1466px) {
  .faqList dl {
    border-radius: 10px;
    padding: 30px 30px;
  }
}
@media screen and (max-width: 768px) {
  .faqList dl {
    border-radius: 2.6666666667vw;
    padding: 4vw 5.3333333333vw;
  }
}
.faqList dl dt {
  position: relative;
}
.faqList dl dt span {
  display: block;
  font-size: 1.756954612vw;
  color: #000078;
  font-weight: 900;
  padding: 0 3.6603221083vw;
  position: relative;
}
@media screen and (min-width: 1466px) {
  .faqList dl dt span {
    font-size: 24px;
    padding: 0 50px;
  }
}
@media screen and (max-width: 768px) {
  .faqList dl dt span {
    font-size: 4vw;
    padding: 0 12vw 0 8vw;
  }
}
.faqList dl dt span:before {
  content: "Q.";
  font-size: 2.3426061493vw;
  line-height: 1;
  font-family: "Montserrat", "Noto Sans JP", sans-serif;
  color: #000078;
  font-weight: 800;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (min-width: 1466px) {
  .faqList dl dt span:before {
    font-size: 32px;
  }
}
@media screen and (max-width: 768px) {
  .faqList dl dt span:before {
    font-size: 5.3333333333vw;
  }
}
.faqList dl dt i {
  background-color: #000039;
  width: 3.2210834553vw;
  height: 3.2210834553vw;
  border-radius: 50%;
  position: absolute;
  top: -10%;
  right: 0;
}
@media screen and (min-width: 1466px) {
  .faqList dl dt i {
    width: 44px;
    height: 44px;
  }
}
@media screen and (max-width: 768px) {
  .faqList dl dt i {
    width: 8vw;
    height: 8vw;
    top: 1.3333333333vw;
  }
}
.faqList dl dt i:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 2.0497803807vw;
  height: 0.1464128843vw;
  background-color: #fff;
  margin: -0.0732064422vw 0 0 -1.0248901903vw;
}
@media screen and (min-width: 1466px) {
  .faqList dl dt i:before {
    width: 28px;
    height: 2px;
    margin: -1px 0 0 -14px;
  }
}
@media screen and (max-width: 768px) {
  .faqList dl dt i:before {
    width: 5.0666666667vw;
    height: 0.2666666667vw;
    margin: -0.1333333333vw 0 0 -2.5333333333vw;
  }
}
.faqList dl dt i:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 2.0497803807vw;
  height: 0.1464128843vw;
  background-color: #fff;
  rotate: 90deg;
  margin: -0.0732064422vw 0 0 -1.0248901903vw;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
@media screen and (min-width: 1466px) {
  .faqList dl dt i:after {
    width: 28px;
    height: 2px;
    margin: -1px 0 0 -14px;
  }
}
@media screen and (max-width: 768px) {
  .faqList dl dt i:after {
    width: 5.0666666667vw;
    height: 0.2666666667vw;
    margin: -0.1333333333vw 0 0 -2.5333333333vw;
  }
}
.faqList dl dd {
  display: none;
  padding: 1.4641288433vw 0 0;
}
@media screen and (min-width: 1466px) {
  .faqList dl dd {
    padding: 20px 0 0;
  }
}
@media screen and (max-width: 768px) {
  .faqList dl dd {
    padding: 2.6666666667vw 0 0;
  }
}
.faqList dl dd p {
  font-size: 1.1713030747vw;
  line-height: 2.2;
  padding: 0 3.6603221083vw;
}
@media screen and (min-width: 1466px) {
  .faqList dl dd p {
    font-size: 16px;
    padding: 0 50px;
  }
}
@media screen and (max-width: 768px) {
  .faqList dl dd p {
    font-size: 3.7333333333vw;
    padding: 0 0vw;
    line-height: 1.6;
  }
}
.faqList dl._show dt i:after {
  rotate: 360deg;
}

/*---------------------------------
PAGE - ページ共通
---------------------------------*/
.page-header {
  position: relative;
  height: 30.0146412884vw;
  background-color: #000039;
  z-index: 2;
}
@media screen and (min-width: 1466px) {
  .page-header {
    height: 410px;
  }
}
@media screen and (max-width: 768px) {
  .page-header {
    margin: 16vw 0 0;
    height: 32vw;
  }
}
.page-header:after {
  content: "";
  position: absolute;
  top: 0;
  right: 1.4641288433vw;
  background: url(../img/page-header-img.webp) no-repeat center/contain;
  width: 48.8286969253vw;
  height: 30.0146412884vw;
  z-index: 1;
}
@media screen and (min-width: 1466px) {
  .page-header:after {
    right: 79px;
    width: 667px;
    height: 410px;
  }
}
@media screen and (max-width: 768px) {
  .page-header:after {
    right: -3.2vw;
    width: 60.8vw;
    height: 32vw;
  }
}
.page-header .inner {
  height: 100%;
}
.page-header .inner ._hd {
  width: 100%;
  height: 100%;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  z-index: 10;
}
.page-header .inner ._hd ._ttl {
  font-size: 3.6603221083vw;
  font-weight: 700;
  line-height: 1.4;
  padding: 1em 0 0;
  color: #fff;
}
@media screen and (min-width: 1466px) {
  .page-header .inner ._hd ._ttl {
    font-size: 50px;
  }
}
@media screen and (max-width: 768px) {
  .page-header .inner ._hd ._ttl {
    font-size: 6.4vw;
    padding: 0 0 0.5em;
  }
}
.page-header .inner ._hd ._ttl small {
  display: block;
  font-size: 2.196193265vw;
  font-weight: 700;
}
@media screen and (min-width: 1466px) {
  .page-header .inner ._hd ._ttl small {
    font-size: 30px;
  }
}
@media screen and (max-width: 768px) {
  .page-header .inner ._hd ._ttl small {
    font-size: 4.2666666667vw;
  }
}

#breadcrumbs {
  font-size: 0.878477306vw;
  padding: 1em 0 8em;
  line-height: 1;
}
@media screen and (min-width: 1466px) {
  #breadcrumbs {
    font-size: 12px;
  }
}
@media screen and (max-width: 768px) {
  #breadcrumbs {
    font-size: 2.6666666667vw;
    padding: 1em 0 4em;
  }
}
#breadcrumbs._wh {
  background-color: #fff;
}
#breadcrumbs._bg {
  background-color: #cfdde7;
  padding: 1em 0 0;
  margin-bottom: -1em;
}
@media screen and (max-width: 768px) {
  #breadcrumbs._bg {
    padding: 1em 0 2em;
    margin-bottom: 0;
    margin-top: -2em;
  }
}
#breadcrumbs a,
#breadcrumbs span {
  display: inline-block;
  vertical-align: baseline;
}
#breadcrumbs span[property=name],
#breadcrumbs .aioseo-breadcrumb {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 20em;
}
#breadcrumbs a {
  -webkit-transition: none;
  transition: none;
}
#breadcrumbs a:hover {
  color: #000078;
  -webkit-transition: underline;
  transition: underline;
}
#breadcrumbs .aioseo-breadcrumb-separator {
  padding: 0 0.5em;
}

._ttl-h2 {
  position: relative;
  font-size: 1.756954612vw;
  font-weight: 700;
  text-align: center;
  padding: 1em 0 1.5em;
  border-bottom: solid #333 0.0732064422vw;
  margin: 0 0 2em;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 1466px) {
  ._ttl-h2 {
    font-size: 24px;
    border-width: 1px;
  }
}
@media screen and (max-width: 768px) {
  ._ttl-h2 {
    font-size: 5.3333333333vw;
    border-width: 0.2666666667vw;
  }
}
._ttl-h2:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  background-color: #000039;
  width: 16.3982430454vw;
  height: 0.2928257687vw;
  -webkit-transform: translate(-50%, 50%);
          transform: translate(-50%, 50%);
}
@media screen and (min-width: 1466px) {
  ._ttl-h2:after {
    width: 224px;
    height: 4px;
  }
}
@media screen and (max-width: 768px) {
  ._ttl-h2:after {
    width: 32vw;
    height: 1.0666666667vw;
  }
}
._ttl-h2._r:after {
  background-color: #000078;
}

._ttl-h3 {
  font-size: 1.4641288433vw;
  font-weight: 700;
  text-align: center;
  margin: 0 0 1.5em;
  background-color: #eee;
  padding: 1em 1em;
}
@media screen and (min-width: 1466px) {
  ._ttl-h3 {
    font-size: 20px;
  }
}
@media screen and (max-width: 768px) {
  ._ttl-h3 {
    font-size: 4.8vw;
  }
}

._ttl-h4 {
  font-size: 1.317715959vw;
  font-weight: 700;
  padding: 0 0 0 1.5em;
  position: relative;
  margin: 0 0 2em;
}
@media screen and (min-width: 1466px) {
  ._ttl-h4 {
    font-size: 18px;
  }
}
@media screen and (max-width: 768px) {
  ._ttl-h4 {
    font-size: 4.2666666667vw;
  }
}
._ttl-h4:before {
  content: "■";
  position: absolute;
  top: 0;
  left: 0;
  color: #000039;
}

.page-content {
  margin-bottom: 7.3206442167vw;
}
@media screen and (min-width: 1466px) {
  .page-content {
    margin-bottom: 100px;
  }
}
@media screen and (max-width: 768px) {
  .page-content {
    margin-bottom: 16vw;
  }
}
.page-content._wh {
  background-color: #fff;
  margin-bottom: 0;
  padding-bottom: 5.8565153734vw;
}
@media screen and (min-width: 1466px) {
  .page-content._wh {
    padding-bottom: 80px;
  }
}
@media screen and (max-width: 768px) {
  .page-content._wh {
    padding-bottom: 10.6666666667vw;
  }
}
.page-content._bg {
  padding-top: 5.8565153734vw;
}
@media screen and (min-width: 1466px) {
  .page-content._bg {
    padding-top: 80px;
  }
}
@media screen and (max-width: 768px) {
  .page-content._bg {
    padding-top: 10.6666666667vw;
  }
}
.page-content .page-content-cnt {
  font-size: 1.1713030747vw;
  font-weight: 600;
  line-height: 2;
}
@media screen and (min-width: 1466px) {
  .page-content .page-content-cnt {
    font-size: 16px;
  }
}
@media screen and (max-width: 768px) {
  .page-content .page-content-cnt {
    font-size: 3.7333333333vw;
  }
}
.page-content .page-content-cnt ._blk {
  margin-bottom: 5.8565153734vw;
}
@media screen and (min-width: 1466px) {
  .page-content .page-content-cnt ._blk {
    margin-bottom: 80px;
  }
}
@media screen and (max-width: 768px) {
  .page-content .page-content-cnt ._blk {
    margin-bottom: 10.6666666667vw;
  }
}
.page-content .page-content-cnt ._blk:last-child {
  margin-bottom: 0;
}
.page-content .page-content-cnt ._vtc {
  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;
}
.page-content .page-content-cnt ._mb {
  margin-bottom: 1em;
}
.page-content .page-content-cnt ._mbx {
  margin-bottom: 2em;
}
.page-content .page-content-cnt ._mbxx {
  margin-bottom: 3em;
}
.page-content .page-content-cnt ._center {
  text-align: center;
}
@media screen and (max-width: 768px) {
  .page-content .page-content-cnt ._center._spl {
    text-align: left;
  }
}
.page-content .page-content-cnt ._lg {
  font-size: 112%;
}
@media screen and (max-width: 768px) {
  .page-content .page-content-cnt ._lg {
    font-size: 108%;
  }
}
.page-content .page-content-cnt ._lgx {
  font-size: 125%;
}
@media screen and (max-width: 768px) {
  .page-content .page-content-cnt ._lgx {
    font-size: 112%;
  }
}
.page-content .page-content-cnt strong {
  font-weight: 700;
}
.page-content .page-content-cnt ._red {
  color: #000039;
}
.page-content .page-content-cnt ._underline {
  text-decoration: underline;
  text-decoration-color: #000039;
  text-underline-offset: 0.3em;
}
.page-content .page-content-cnt ._marker {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, transparent), color-stop(70%, #ffde00));
  background: linear-gradient(transparent 70%, #ffde00 70%);
}
.page-content .page-content-cnt ._fl {
  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;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media screen and (max-width: 768px) {
  .page-content .page-content-cnt ._fl {
    gap: 10.6666666667vw;
  }
}
.page-content .page-content-cnt ._fl._rev {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
.page-content .page-content-cnt ._fl._jct {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.page-content .page-content-cnt ._fl._ast {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.page-content .page-content-cnt ._fl._fr {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.page-content .page-content-cnt ._fl ._col._col-2 {
  width: 48%;
}
@media screen and (max-width: 768px) {
  .page-content .page-content-cnt ._fl ._col._col-2 {
    width: 100%;
  }
}
.page-content .page-content-cnt ._fl ._col._col-3 {
  width: 32%;
}
@media screen and (max-width: 768px) {
  .page-content .page-content-cnt ._fl ._col._col-3 {
    width: 100%;
  }
}
.page-content .page-content-cnt ._btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.page-content .page-content-cnt ._flow ol {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 1.4641288433vw 4%;
  counter-reset: number 0;
}
@media screen and (min-width: 1466px) {
  .page-content .page-content-cnt ._flow ol {
    gap: 20px 4%;
  }
}
@media screen and (max-width: 768px) {
  .page-content .page-content-cnt ._flow ol {
    gap: 5.3333333333vw 4%;
  }
}
.page-content .page-content-cnt ._flow ol li {
  width: 22%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  position: relative;
}
@media screen and (max-width: 768px) {
  .page-content .page-content-cnt ._flow ol li {
    width: 48%;
  }
}
.page-content .page-content-cnt ._flow ol li ._num {
  font-weight: 700;
  color: #000039;
  padding: 0 0 0 2.5em;
  position: relative;
  margin: 1em 0 0;
}
@media screen and (max-width: 768px) {
  .page-content .page-content-cnt ._flow ol li ._num {
    padding: 0 0 0 2em;
  }
}
.page-content .page-content-cnt ._flow ol li ._num:before {
  counter-increment: number 1;
  content: counter(number);
  position: absolute;
  top: 50%;
  left: 0;
  background-color: #fff;
  color: #000039;
  border: solid #000039 0.0732064422vw;
  border-radius: 50%;
  width: 2.5622254758vw;
  height: 2.5622254758vw;
  line-height: 2.3426061493vw;
  text-align: center;
  font-weight: 700;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (min-width: 1466px) {
  .page-content .page-content-cnt ._flow ol li ._num:before {
    border-width: 1px;
    width: 35px;
    height: 35px;
    line-height: 32px;
  }
}
@media screen and (max-width: 768px) {
  .page-content .page-content-cnt ._flow ol li ._num:before {
    border-width: 0.2666666667vw;
    width: 6.6666666667vw;
    height: 6.6666666667vw;
    line-height: 6.1333333333vw;
  }
}
.page-content .page-content-cnt ._flow ol li:before {
  content: "";
  position: absolute;
  top: 50%;
  left: -2.4890190337vw;
  width: 1.0980966325vw;
  height: 2.5622254758vw;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background: url(../img/flow-arrow.svg) no-repeat center/contain;
}
@media screen and (min-width: 1466px) {
  .page-content .page-content-cnt ._flow ol li:before {
    left: -34px;
    width: 15px;
    height: 35px;
  }
}
@media screen and (max-width: 768px) {
  .page-content .page-content-cnt ._flow ol li:before {
    left: -8vw;
    width: 3.2vw;
    height: 8vw;
  }
}
.page-content .page-content-cnt ._flow ol li:first-child:before {
  content: none;
}
.page-content .page-content-cnt ._dlList ul li {
  border-bottom: solid #eee 0.0732064422vw;
}
@media screen and (min-width: 1466px) {
  .page-content .page-content-cnt ._dlList ul li {
    border-width: 1px;
  }
}
@media screen and (max-width: 768px) {
  .page-content .page-content-cnt ._dlList ul li {
    border-width: 0.2666666667vw;
  }
}
.page-content .page-content-cnt ._dlList ul li a {
  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;
  padding: 1.4641288433vw 1.4641288433vw 1.4641288433vw 2.9282576867vw;
}
@media screen and (min-width: 1466px) {
  .page-content .page-content-cnt ._dlList ul li a {
    padding: 20px 20px 20px 40px;
  }
}
@media screen and (max-width: 768px) {
  .page-content .page-content-cnt ._dlList ul li a {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding: 5.3333333333vw 3.2vw;
    gap: 3.2vw;
  }
}
.page-content .page-content-cnt ._dlList ul li a:hover {
  color: #000039;
}
.page-content .page-content-cnt ._dlList ul li a:hover ._dl {
  background-color: #000039;
}
.page-content .page-content-cnt ._dlList ul li a p {
  padding: 0 0 0 3em;
  position: relative;
}
.page-content .page-content-cnt ._dlList ul li a p:before {
  content: "";
  position: absolute;
  background: url(../img/icon-pdf.svg) no-repeat center/contain;
  width: 1.8301610542vw;
  height: 1.8301610542vw;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (min-width: 1466px) {
  .page-content .page-content-cnt ._dlList ul li a p:before {
    width: 25px;
    height: 25px;
  }
}
@media screen and (max-width: 768px) {
  .page-content .page-content-cnt ._dlList ul li a p:before {
    width: 6.6666666667vw;
    height: 6.6666666667vw;
  }
}
.page-content .page-content-cnt ._dlList ul li a ._dl {
  width: 12.2254758419vw;
  height: 2.9282576867vw;
  background-color: #eee;
  border-radius: 0.439238653vw;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 1.0248901903vw;
  padding: 0 1.5em;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
@media screen and (min-width: 1466px) {
  .page-content .page-content-cnt ._dlList ul li a ._dl {
    width: 167px;
    height: 40px;
    border-radius: 6px;
    font-size: 14px;
  }
}
@media screen and (max-width: 768px) {
  .page-content .page-content-cnt ._dlList ul li a ._dl {
    width: 44.5333333333vw;
    height: 10.6666666667vw;
    border-radius: 1.6vw;
    font-size: 3.7333333333vw;
  }
}
.page-content .page-content-cnt ._dlList ul li a ._dl span {
  position: relative;
  width: 100%;
}
.page-content .page-content-cnt ._dlList ul li a ._dl span:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  background: url(../img/icon-download.svg) no-repeat center/contain;
  width: 1.6105417277vw;
  height: 1.6105417277vw;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (min-width: 1466px) {
  .page-content .page-content-cnt ._dlList ul li a ._dl span:after {
    width: 22px;
    height: 22px;
  }
}
@media screen and (max-width: 768px) {
  .page-content .page-content-cnt ._dlList ul li a ._dl span:after {
    width: 5.8666666667vw;
    height: 5.8666666667vw;
  }
}
.page-content .page-content-cnt ._dlList ul li._package a p:before {
  background: url(../img/icon-package.svg) no-repeat center/contain;
  width: 1.8301610542vw;
  height: 1.8301610542vw;
}
@media screen and (min-width: 1466px) {
  .page-content .page-content-cnt ._dlList ul li._package a p:before {
    width: 25px;
    height: 25px;
  }
}
@media screen and (max-width: 768px) {
  .page-content .page-content-cnt ._dlList ul li._package a p:before {
    width: 6.6666666667vw;
    height: 6.6666666667vw;
  }
}
.page-content .page-content-cnt p._notes {
  padding: 0 0 0 1em;
  position: relative;
  line-height: 1.6;
}
.page-content .page-content-cnt p._notes:before {
  content: "※";
  position: absolute;
  top: 0;
  left: 0;
}
.page-content .page-content-cnt ul._arrow li {
  padding: 0 0 0 1.5em;
  position: relative;
}
.page-content .page-content-cnt ul._arrow li:before {
  content: "▶︎";
  position: absolute;
  top: 0;
  left: 0;
  color: #ffde00;
}
.page-content .page-content-cnt ul._row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 0 1em;
}
.page-content .page-content-cnt ul._row li {
  padding: 0 0 0 1em;
  position: relative;
}
.page-content .page-content-cnt ul._row li:before {
  content: "・";
  position: absolute;
  top: 0;
  left: 0;
}
.page-content .page-content-cnt ul._dot li {
  padding: 0 0 0 1.5em;
  position: relative;
}
.page-content .page-content-cnt ul._dot li:before {
  content: "●";
  position: absolute;
  top: 0;
  left: 0;
  color: #000039;
}
.page-content .page-content-cnt ul._chk {
  font-size: 1.317715959vw;
  font-weight: 700;
  color: #000039;
}
@media screen and (min-width: 1466px) {
  .page-content .page-content-cnt ul._chk {
    font-size: 18px;
  }
}
@media screen and (max-width: 768px) {
  .page-content .page-content-cnt ul._chk {
    font-size: 4.2666666667vw;
  }
}
.page-content .page-content-cnt ul._chk li {
  padding: 0 0 0 2em;
  position: relative;
  margin: 0 0 1em;
}
.page-content .page-content-cnt ul._chk li:before {
  content: "";
  position: absolute;
  top: 0.3em;
  left: 0;
  background: url(../img/check.svg) no-repeat center/contain;
  width: 1.9033674963vw;
  height: 1.9033674963vw;
}
@media screen and (min-width: 1466px) {
  .page-content .page-content-cnt ul._chk li:before {
    width: 26px;
    height: 26px;
  }
}
@media screen and (max-width: 768px) {
  .page-content .page-content-cnt ul._chk li:before {
    width: 5.8666666667vw;
    height: 5.8666666667vw;
  }
}
.page-content .page-content-cnt ul._chk li:last-child {
  margin: 0;
}
.page-content .page-content-cnt table {
  width: 100%;
  border-collapse: collapse;
}
@media screen and (max-width: 768px) {
  .page-content .page-content-cnt table._border {
    display: block;
  }
}
@media screen and (max-width: 768px) {
  .page-content .page-content-cnt table._border tr,
  .page-content .page-content-cnt table._border tbody {
    display: block;
  }
}
.page-content .page-content-cnt table._border tr:last-child th,
.page-content .page-content-cnt table._border tr:last-child td {
  border-bottom: none;
}
.page-content .page-content-cnt table._border th {
  width: 30%;
  font-weight: 600;
  position: relative;
  padding: 1em;
  text-align: left;
  vertical-align: middle;
  line-height: 2;
  border-bottom: solid #d6d6d6 0.0732064422vw;
  font-size: 1.4641288433vw;
  background-color: #000039;
  color: #fff;
}
@media screen and (min-width: 1466px) {
  .page-content .page-content-cnt table._border th {
    border-width: 1px;
    font-size: 20px;
  }
}
@media screen and (max-width: 768px) {
  .page-content .page-content-cnt table._border th {
    display: block;
    width: 100%;
    border-bottom: none;
    font-size: 4.2666666667vw;
  }
}
.page-content .page-content-cnt table._border td {
  position: relative;
  padding: 1.5em 2em;
  text-align: left;
  vertical-align: middle;
  line-height: 2;
  border-bottom: solid #d6d6d6 0.0732064422vw;
}
@media screen and (min-width: 1466px) {
  .page-content .page-content-cnt table._border td {
    border-width: 1px;
  }
}
@media screen and (max-width: 768px) {
  .page-content .page-content-cnt table._border td {
    display: block;
    border-width: 0.2666666667vw;
    padding: 1em;
  }
}
.page-content .page-content-cnt .page-links ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.7320644217vw;
}
@media screen and (min-width: 1466px) {
  .page-content .page-content-cnt .page-links ul {
    gap: 10px;
  }
}
@media screen and (max-width: 768px) {
  .page-content .page-content-cnt .page-links ul {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 2.6666666667vw 2%;
  }
}
.page-content .page-content-cnt .page-links ul li {
  width: 22.5475841874vw;
  position: relative;
}
@media screen and (min-width: 1466px) {
  .page-content .page-content-cnt .page-links ul li {
    width: 334px;
  }
}
@media screen and (max-width: 768px) {
  .page-content .page-content-cnt .page-links ul li {
    width: 100%;
  }
}
.page-content .page-content-cnt .page-links ul li a {
  background-color: #000078;
  line-height: 1.6;
  font-weight: 600;
  color: #000039;
  padding: 1.5em 1.2em;
  border-radius: 0.5em;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #333;
  position: relative;
}
@media screen and (max-width: 768px) {
  .page-content .page-content-cnt .page-links ul li a {
    padding: 1em 0.6em;
  }
}
.page-content .page-content-cnt .page-links ul li a span {
  display: block;
  width: 100%;
  position: relative;
  z-index: 2;
  font-size: 1.1713030747vw;
  font-weight: 600;
  padding: 0 2em 0 0;
  line-height: 1.5;
  z-index: 10;
  color: #fff;
}
@media screen and (min-width: 1466px) {
  .page-content .page-content-cnt .page-links ul li a span {
    font-size: 18px;
  }
}
@media screen and (max-width: 768px) {
  .page-content .page-content-cnt .page-links ul li a span {
    font-size: 3.2vw;
  }
}
.page-content .page-content-cnt .page-links ul li a span:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  background: url(../img/btn-arrow.svg) no-repeat center/contain;
  width: 1.1713030747vw;
  height: 0.9516837482vw;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
  -webkit-transform: translateY(-50%) rotate(90deg);
          transform: translateY(-50%) rotate(90deg);
}
@media screen and (min-width: 1466px) {
  .page-content .page-content-cnt .page-links ul li a span:after {
    width: 16px;
    height: 13px;
  }
}
@media screen and (max-width: 768px) {
  .page-content .page-content-cnt .page-links ul li a span:after {
    width: 4.2666666667vw;
    height: 3.4666666667vw;
  }
}
.page-content .page-content-cnt .page-links ul li a:hover span:after {
  -webkit-transform: translateY(-25%) rotate(90deg);
          transform: translateY(-25%) rotate(90deg);
}
.page-content .page-content-cnt .service-links ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.7320644217vw;
}
@media screen and (min-width: 1466px) {
  .page-content .page-content-cnt .service-links ul {
    gap: 10px;
  }
}
@media screen and (max-width: 768px) {
  .page-content .page-content-cnt .service-links ul {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 2.6666666667vw 2%;
  }
}
.page-content .page-content-cnt .service-links ul li {
  width: 22.5475841874vw;
  position: relative;
}
@media screen and (min-width: 1466px) {
  .page-content .page-content-cnt .service-links ul li {
    width: 334px;
  }
}
@media screen and (max-width: 768px) {
  .page-content .page-content-cnt .service-links ul li {
    width: 100%;
  }
}
.page-content .page-content-cnt .service-links ul li a {
  background-color: #000078;
  line-height: 1.6;
  font-weight: 600;
  color: #000039;
  padding: 1.5em 1.2em;
  border-radius: 0.5em;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #333;
  position: relative;
}
@media screen and (max-width: 768px) {
  .page-content .page-content-cnt .service-links ul li a {
    padding: 1em 0.6em;
  }
}
.page-content .page-content-cnt .service-links ul li a span {
  display: block;
  width: 100%;
  position: relative;
  z-index: 2;
  font-size: 1.1713030747vw;
  font-weight: 600;
  padding: 0 2em 0 0;
  line-height: 1.5;
  z-index: 10;
  color: #fff;
}
@media screen and (min-width: 1466px) {
  .page-content .page-content-cnt .service-links ul li a span {
    font-size: 18px;
  }
}
@media screen and (max-width: 768px) {
  .page-content .page-content-cnt .service-links ul li a span {
    font-size: 3.2vw;
  }
}
.page-content .page-content-cnt .service-links ul li a span:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  background: url(../img/btn-arrow.svg) no-repeat center/contain;
  width: 1.1713030747vw;
  height: 0.9516837482vw;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (min-width: 1466px) {
  .page-content .page-content-cnt .service-links ul li a span:after {
    width: 16px;
    height: 13px;
  }
}
@media screen and (max-width: 768px) {
  .page-content .page-content-cnt .service-links ul li a span:after {
    width: 4.2666666667vw;
    height: 3.4666666667vw;
  }
}
.page-content .page-content-cnt .service-links ul li a:hover span:after {
  right: -2%;
}

._h2 {
  position: relative;
  margin: 0 0 3.2942898975vw;
  font-size: 4.831625183vw;
  font-weight: 700;
  line-height: 1.3;
  color: #000078;
}
@media screen and (min-width: 1466px) {
  ._h2 {
    font-size: 66px;
    margin: 0 0 45px;
  }
}
@media screen and (max-width: 768px) {
  ._h2 {
    font-size: 8.5333333333vw;
    margin: 0 0 8vw;
  }
}

._h3 {
  position: relative;
  margin: 0 0 1.4641288433vw;
  font-size: 1.9033674963vw;
  font-weight: 700;
  line-height: 1.3;
  color: #000078;
}
@media screen and (min-width: 1466px) {
  ._h3 {
    font-size: 26px;
    margin: 0 0 20px;
  }
}
@media screen and (max-width: 768px) {
  ._h3 {
    font-size: 6.4vw;
    margin: 0 0 4vw;
  }
}

._h4 {
  position: relative;
  margin: 0 0 2.196193265vw;
  font-size: 1.4641288433vw;
  font-weight: 700;
  line-height: 1.3;
  color: #000078;
}
@media screen and (min-width: 1466px) {
  ._h4 {
    font-size: 20px;
    margin: 0 0 30px;
  }
}
@media screen and (max-width: 768px) {
  ._h4 {
    font-size: 4.8vw;
    margin: 0 0 5.3333333333vw;
  }
}

/*---------------------------------
PAGE - #UNIQUE
---------------------------------*/
#feature-greeting {
  padding: 7.3206442167vw 0 8.78477306vw;
}
@media screen and (min-width: 1466px) {
  #feature-greeting {
    padding: 100px 0 120px;
  }
}
@media screen and (max-width: 768px) {
  #feature-greeting {
    padding: 10.6666666667vw 0 16vw;
  }
}
#feature-greeting ._ttl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 1.4641288433vw;
  margin-bottom: 2.196193265vw;
}
@media screen and (min-width: 1466px) {
  #feature-greeting ._ttl {
    gap: 20px;
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 768px) {
  #feature-greeting ._ttl {
    gap: 3.2vw;
    margin-bottom: 5.3333333333vw;
    -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;
    text-align: center;
  }
}
#feature-greeting ._ttl ._h2 {
  margin: 0;
}
#feature-greeting ._ttl small {
  font-size: 1.4641288433vw;
  font-weight: 800;
  color: #000078;
}
@media screen and (min-width: 1466px) {
  #feature-greeting ._ttl small {
    font-size: 20px;
  }
}
@media screen and (max-width: 768px) {
  #feature-greeting ._ttl small {
    font-size: 4.8vw;
  }
}
#feature-greeting ._desc h3 {
  line-height: 2;
  color: #333;
  font-size: 2.9282576867vw;
  margin-bottom: 1em;
}
@media screen and (min-width: 1466px) {
  #feature-greeting ._desc h3 {
    font-size: 40px;
  }
}
@media screen and (max-width: 768px) {
  #feature-greeting ._desc h3 {
    font-size: 4.8vw;
  }
}
#feature-greeting ._desc h3 strong {
  color: #000039;
  font-weight: 700;
}
#feature-greeting ._fl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 768px) {
  #feature-greeting ._fl {
    display: block;
  }
}
#feature-greeting ._fl figure {
  width: 35.1390922401vw;
  height: 38.0673499268vw;
  border-radius: 0.7320644217vw;
  overflow: hidden;
}
@media screen and (min-width: 1466px) {
  #feature-greeting ._fl figure {
    width: 550px;
    height: 600px;
    border-radius: 10px;
  }
}
@media screen and (max-width: 768px) {
  #feature-greeting ._fl figure {
    width: 100%;
    height: 106.6666666667vw;
    border-radius: 2.6666666667vw;
    margin: 0 0 5.3333333333vw;
  }
}
#feature-greeting ._fl figure img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
#feature-greeting ._fl ._txt {
  width: 54.7584187408vw;
}
@media screen and (min-width: 1466px) {
  #feature-greeting ._fl ._txt {
    width: 778px;
  }
}
@media screen and (max-width: 768px) {
  #feature-greeting ._fl ._txt {
    width: auto;
  }
}
#feature-greeting ._fl ._txt p {
  margin: 0 0 2em;
  line-height: 2.1;
}
#feature-greeting ._fl ._txt p:last-child {
  margin: 0;
}

#service-main {
  padding: 7.3206442167vw 0;
  margin: 0;
}
@media screen and (min-width: 1466px) {
  #service-main {
    padding: 100px 0;
  }
}
@media screen and (max-width: 768px) {
  #service-main {
    padding: 10.6666666667vw 0;
  }
}
#service-main ._ttl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 1.4641288433vw;
  margin-bottom: 2.9282576867vw;
}
@media screen and (min-width: 1466px) {
  #service-main ._ttl {
    gap: 20px;
    margin-bottom: 40px;
  }
}
@media screen and (max-width: 768px) {
  #service-main ._ttl {
    gap: 3.2vw;
    margin-bottom: 5.3333333333vw;
    -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;
    text-align: center;
  }
}
#service-main ._ttl ._h2 {
  margin: 0;
}
#service-main ._ttl small {
  font-size: 1.4641288433vw;
  font-weight: 800;
  color: #000078;
}
@media screen and (min-width: 1466px) {
  #service-main ._ttl small {
    font-size: 20px;
  }
}
@media screen and (max-width: 768px) {
  #service-main ._ttl small {
    font-size: 4.8vw;
  }
}
#service-main ._desc {
  background-color: #fff;
  border-radius: 0.7320644217vw;
  padding: 2.196193265vw 3.2942898975vw 2.9282576867vw 3.2942898975vw;
  margin: 0 0 1.4641288433vw;
}
@media screen and (min-width: 1466px) {
  #service-main ._desc {
    border-radius: 0.7320644217vw;
    padding: 30px 45px 40px 45px;
    margin: 0 0 20px;
  }
}
@media screen and (max-width: 768px) {
  #service-main ._desc {
    border-radius: 2.6666666667vw;
    padding: 5.3333333333vw 5.3333333333vw;
    margin: 0 0 5.3333333333vw;
  }
}
#service-main ._desc:last-child {
  margin: 0;
}
#service-main ._desc h3 {
  font-size: 2.4890190337vw;
  margin: 0 0 0.8em;
}
@media screen and (min-width: 1466px) {
  #service-main ._desc h3 {
    font-size: 34px;
  }
}
@media screen and (max-width: 768px) {
  #service-main ._desc h3 {
    font-size: 6.4vw;
  }
}

#service-point {
  background-color: #000039;
  height: 46.875vw;
  position: relative;
  overflow: hidden;
}
@media screen and (min-width: 1466px) {
  #service-point {
    height: 46.875vw;
  }
}
@media screen and (max-width: 1920px) and (min-width: 1467px) {
  #service-point {
    height: 46.875vw;
  }
}
@media screen and (max-width: 768px) {
  #service-point {
    height: auto;
    padding: 6.6666666667vw 0vw 104vw;
  }
}
#service-point ._wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 100%;
  position: relative;
  z-index: 10;
}
@media screen and (max-width: 768px) {
  #service-point ._wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
#service-point ._wrap ._cnt {
  padding: 0 0 0 4.6875vw;
}
@media screen and (min-width: 1466px) {
  #service-point ._wrap ._cnt {
    padding: 0 0 0 4.6875vw;
  }
}
@media screen and (max-width: 1920px) and (min-width: 1467px) {
  #service-point ._wrap ._cnt {
    padding: 0 0 0 4.6875vw;
  }
}
@media screen and (max-width: 768px) {
  #service-point ._wrap ._cnt {
    padding: 0 5.3333333333vw;
  }
}
#service-point ._wrap ._cnt ._ttl {
  margin: 0 0 3.125vw;
}
@media screen and (min-width: 1466px) {
  #service-point ._wrap ._cnt ._ttl {
    margin: 0 0 3.125vw;
  }
}
@media screen and (max-width: 1920px) and (min-width: 1467px) {
  #service-point ._wrap ._cnt ._ttl {
    margin: 0 0 3.125vw;
  }
}
@media screen and (max-width: 768px) {
  #service-point ._wrap ._cnt ._ttl {
    margin: 0 0 8vw;
    text-align: center;
  }
}
#service-point ._wrap ._cnt ._ttl p {
  font-size: 1.7708333333vw;
  font-weight: 700;
  color: #fff;
}
@media screen and (min-width: 1466px) {
  #service-point ._wrap ._cnt ._ttl p {
    font-size: 1.7708333333vw;
  }
}
@media screen and (max-width: 1920px) and (min-width: 1467px) {
  #service-point ._wrap ._cnt ._ttl p {
    font-size: 1.7708333333vw;
  }
}
@media screen and (max-width: 768px) {
  #service-point ._wrap ._cnt ._ttl p {
    font-size: 3.7333333333vw;
  }
}
#service-point ._wrap ._cnt ._ttl h2 {
  font-size: 5.3125vw;
  font-weight: 900;
  line-height: 1;
  color: #ffde00;
}
@media screen and (min-width: 1466px) {
  #service-point ._wrap ._cnt ._ttl h2 {
    font-size: 5.3125vw;
  }
}
@media screen and (max-width: 1920px) and (min-width: 1467px) {
  #service-point ._wrap ._cnt ._ttl h2 {
    font-size: 5.3125vw;
  }
}
@media screen and (max-width: 768px) {
  #service-point ._wrap ._cnt ._ttl h2 {
    font-size: 11.7333333333vw;
  }
}
#service-point ._wrap ._cnt ._desc ol {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2.34375vw;
}
@media screen and (min-width: 1466px) {
  #service-point ._wrap ._cnt ._desc ol {
    gap: 2.34375vw;
  }
}
@media screen and (max-width: 1920px) and (min-width: 1467px) {
  #service-point ._wrap ._cnt ._desc ol {
    gap: 2.34375vw;
  }
}
@media screen and (max-width: 768px) {
  #service-point ._wrap ._cnt ._desc ol {
    grid-template-columns: 1fr;
    gap: 8vw;
  }
}
#service-point ._wrap ._cnt ._desc ol li {
  width: 26.25vw;
  background-color: #fff;
  border-radius: 0.5208333333vw;
  position: relative;
  padding: 2.34375vw 2.6041666667vw 2.0833333333vw;
}
@media screen and (min-width: 1466px) {
  #service-point ._wrap ._cnt ._desc ol li {
    width: 26.25vw;
    border-radius: 0.5208333333vw;
    padding: 2.34375vw 2.6041666667vw 2.0833333333vw;
  }
}
@media screen and (max-width: 1920px) and (min-width: 1467px) {
  #service-point ._wrap ._cnt ._desc ol li {
    width: 26.25vw;
    border-radius: 0.5208333333vw;
    padding: 2.34375vw 2.6041666667vw 2.0833333333vw;
  }
}
@media screen and (max-width: 768px) {
  #service-point ._wrap ._cnt ._desc ol li {
    width: 100%;
    border-radius: 2.6666666667vw;
    padding: 6.6666666667vw 5.3333333333vw 5.3333333333vw;
  }
}
#service-point ._wrap ._cnt ._desc ol li ._point {
  position: absolute;
  top: -1.8229166667vw;
  left: -1.8229166667vw;
  width: 5.2083333333vw;
  height: 5.2083333333vw;
  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;
  overflow: hidden;
  z-index: 9999;
}
@media screen and (min-width: 1466px) {
  #service-point ._wrap ._cnt ._desc ol li ._point {
    top: -1.8229166667vw;
    left: -1.8229166667vw;
    width: 5.2083333333vw;
    height: 5.2083333333vw;
  }
}
@media screen and (max-width: 1920px) and (min-width: 1467px) {
  #service-point ._wrap ._cnt ._desc ol li ._point {
    top: -1.8229166667vw;
    left: -1.8229166667vw;
    width: 5.2083333333vw;
    height: 5.2083333333vw;
  }
}
@media screen and (max-width: 768px) {
  #service-point ._wrap ._cnt ._desc ol li ._point {
    display: none;
  }
}
#service-point ._wrap ._cnt ._desc ol li ._point ._num {
  position: absolute;
  width: 3.3333333333vw;
  height: 3.3333333333vw;
  background-color: #ffde00;
  border-radius: 50%;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -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;
  color: #000039;
  font-size: 1.5625vw;
  font-weight: 800;
  font-family: "Montserrat", "Noto Sans JP", sans-serif;
}
@media screen and (min-width: 1466px) {
  #service-point ._wrap ._cnt ._desc ol li ._point ._num {
    width: 3.3333333333vw;
    height: 3.3333333333vw;
    font-size: 1.5625vw;
  }
}
@media screen and (max-width: 1920px) and (min-width: 1467px) {
  #service-point ._wrap ._cnt ._desc ol li ._point ._num {
    width: 3.3333333333vw;
    height: 3.3333333333vw;
    font-size: 1.5625vw;
  }
}
@media screen and (max-width: 768px) {
  #service-point ._wrap ._cnt ._desc ol li ._point ._num {
    display: none;
  }
}
#service-point ._wrap ._cnt ._desc ol li ._point ._txt {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-animation: mv_rotate 20s linear infinite;
          animation: mv_rotate 20s linear infinite;
}
#service-point ._wrap ._cnt ._desc ol li ._point ._txt span {
  position: absolute;
  left: 50%;
  font-size: 0.5208333333vw;
  -webkit-transform-origin: 0 2.6041666667vw;
          transform-origin: 0 2.6041666667vw;
  color: #000078;
}
@media screen and (min-width: 1466px) {
  #service-point ._wrap ._cnt ._desc ol li ._point ._txt span {
    font-size: 0.5208333333vw;
    -webkit-transform-origin: 0 2.6041666667vw;
            transform-origin: 0 2.6041666667vw;
  }
}
@media screen and (max-width: 1920px) and (min-width: 1467px) {
  #service-point ._wrap ._cnt ._desc ol li ._point ._txt span {
    font-size: 0.5208333333vw;
    -webkit-transform-origin: 0 2.6041666667vw;
            transform-origin: 0 2.6041666667vw;
  }
}
#service-point ._wrap ._cnt ._desc ol li ._p h3 {
  font-size: 1.1979166667vw;
  font-weight: 700;
  color: #000078;
  margin: 0 0 0.6em;
}
@media screen and (min-width: 1466px) {
  #service-point ._wrap ._cnt ._desc ol li ._p h3 {
    font-size: 1.1979166667vw;
  }
}
@media screen and (max-width: 1920px) and (min-width: 1467px) {
  #service-point ._wrap ._cnt ._desc ol li ._p h3 {
    font-size: 1.1979166667vw;
  }
}
@media screen and (max-width: 768px) {
  #service-point ._wrap ._cnt ._desc ol li ._p h3 {
    font-size: 4.2666666667vw;
  }
}
#service-point ._wrap ._cnt ._desc ol li ._p p {
  font-size: 0.7291666667vw;
  line-height: 2;
}
@media screen and (min-width: 1466px) {
  #service-point ._wrap ._cnt ._desc ol li ._p p {
    font-size: 0.7291666667vw;
  }
}
@media screen and (max-width: 1920px) and (min-width: 1467px) {
  #service-point ._wrap ._cnt ._desc ol li ._p p {
    font-size: 0.7291666667vw;
  }
}
@media screen and (max-width: 768px) {
  #service-point ._wrap ._cnt ._desc ol li ._p p {
    font-size: 3.7333333333vw;
  }
}
#service-point ._slider {
  position: absolute;
  top: -15%;
  right: -10%;
  height: 70.3125vw;
  width: 48vw;
  z-index: 1;
}
@media screen and (min-width: 1466px) {
  #service-point ._slider {
    height: 70.3125vw;
  }
}
@media screen and (max-width: 1920px) and (min-width: 1467px) {
  #service-point ._slider {
    height: 70.3125vw;
  }
}
@media screen and (max-width: 768px) {
  #service-point ._slider {
    height: 98.6666666667vw;
    top: auto;
    right: auto;
    left: 0;
    bottom: 0;
    width: 100%;
    overflow: hidden;
  }
}
#service-point ._slider ._sp {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.5208333333vw;
  rotate: 25deg;
  width: 125%;
  height: 125%;
  -webkit-transform: translate(-17.5%, -12.5%);
          transform: translate(-17.5%, -12.5%);
}
@media screen and (min-width: 1466px) {
  #service-point ._slider ._sp {
    gap: 0.5208333333vw;
  }
}
@media screen and (max-width: 1920px) and (min-width: 1467px) {
  #service-point ._slider ._sp {
    gap: 0.5208333333vw;
  }
}
@media screen and (max-width: 768px) {
  #service-point ._slider ._sp {
    gap: 1.3333333333vw;
    width: 150%;
    height: 150%;
    -webkit-transform: translate(-17.5%, -12.5%);
            transform: translate(-17.5%, -12.5%);
  }
}
#service-point ._slider ._sp > div {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
#service-point ._slider ._worksSlider_4 {
  display: none;
}
@media screen and (max-width: 768px) {
  #service-point ._slider ._worksSlider_4 {
    display: block;
  }
}
#service-point ._slider .swiper {
  height: 100%;
}
#service-point ._slider .swiper .swiper-wrapper {
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
}
#service-point ._slider .swiper .swiper-wrapper .swiper-slide {
  /* width:vw(330);
  height:vw(220);

  @include pc{
    width:ww(330);
    height:ww(220);
  }
  @include sp{
    width:sw(330);
    height:sw(220);
  } */
}
#service-point ._slider .swiper .swiper-wrapper .swiper-slide figure {
  width: 100%;
  height: 100%;
  overflow: hidden;
  border-radius: 0.3125vw;
}
@media screen and (min-width: 1466px) {
  #service-point ._slider .swiper .swiper-wrapper .swiper-slide figure {
    border-radius: 0.3125vw;
  }
}
@media screen and (max-width: 1920px) and (min-width: 1467px) {
  #service-point ._slider .swiper .swiper-wrapper .swiper-slide figure {
    border-radius: 0.3125vw;
  }
}
@media screen and (max-width: 768px) {
  #service-point ._slider .swiper .swiper-wrapper .swiper-slide figure {
    border-radius: 1.6vw;
  }
}
#service-point ._slider .swiper .swiper-wrapper .swiper-slide figure img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

#service-list ._ttl {
  text-align: center;
  margin: 0 0 2.9282576867vw;
}
@media screen and (min-width: 1466px) {
  #service-list ._ttl {
    margin: 0 0 40px;
  }
}
@media screen and (max-width: 768px) {
  #service-list ._ttl {
    margin: 0 0 5.3333333333vw;
  }
}
#service-list ._ttl p {
  font-size: 2.9282576867vw;
  font-weight: 700;
  line-height: 1;
}
@media screen and (min-width: 1466px) {
  #service-list ._ttl p {
    font-size: 40px;
  }
}
@media screen and (max-width: 768px) {
  #service-list ._ttl p {
    font-size: 4.8vw;
  }
}
#service-list ._ttl h2 {
  font-size: 4.39238653vw;
  font-weight: 700;
  color: #000078;
  line-height: 1.5;
}
@media screen and (min-width: 1466px) {
  #service-list ._ttl h2 {
    font-size: 60px;
  }
}
@media screen and (max-width: 768px) {
  #service-list ._ttl h2 {
    font-size: 6.9333333333vw;
  }
}
#service-list ._cnt {
  background-color: #fff;
  padding: 0.7320644217vw;
  border-radius: 0.7320644217vw;
}
@media screen and (min-width: 1466px) {
  #service-list ._cnt {
    padding: 10px;
    border-radius: 10px;
  }
}
@media screen and (max-width: 768px) {
  #service-list ._cnt {
    padding: 2.6666666667vw;
    border-radius: 2.6666666667vw;
  }
}

#service-check {
  padding: 3.6603221083vw 0;
  background-color: #cfdde7;
  margin: 0;
}
@media screen and (min-width: 1466px) {
  #service-check {
    padding: 50px 0;
  }
}
@media screen and (max-width: 768px) {
  #service-check {
    padding: 8vw 0;
  }
}
#service-check ._ttl {
  text-align: center;
  margin: 0 0 1em;
}
#service-check ._ttl h2 {
  font-size: 2.9282576867vw;
  font-weight: 700;
}
@media screen and (min-width: 1466px) {
  #service-check ._ttl h2 {
    font-size: 40px;
  }
}
@media screen and (max-width: 768px) {
  #service-check ._ttl h2 {
    font-size: 6.4vw;
  }
}
#service-check ._ttl h2 strong {
  color: #000078;
  font-weight: 700;
}
#service-check ._fl {
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
@media screen and (max-width: 768px) {
  #service-check ._fl {
    gap: 2.6666666667vw;
  }
}
#service-check ._fl ._txt {
  width: 45.60761347vw;
  background-color: #fff;
  border-radius: 0.7320644217vw;
  padding: 2.9282576867vw 2.196193265vw;
}
@media screen and (min-width: 1466px) {
  #service-check ._fl ._txt {
    width: 673px;
    border-radius: 10px;
    padding: 40px 30px;
  }
}
@media screen and (max-width: 768px) {
  #service-check ._fl ._txt {
    width: 100%;
    border-radius: 2.6666666667vw;
    padding: 5.3333333333vw 5.3333333333vw;
  }
}
#service-check ._fl ._txt ul {
  font-size: 1.4641288433vw;
}
@media screen and (min-width: 1466px) {
  #service-check ._fl ._txt ul {
    font-size: 20px;
  }
}
@media screen and (max-width: 768px) {
  #service-check ._fl ._txt ul {
    font-size: 4.2666666667vw;
  }
}
#service-check ._fl figure {
  width: 44.6559297218vw;
  border-radius: 0.7320644217vw;
  overflow: hidden;
}
@media screen and (min-width: 1466px) {
  #service-check ._fl figure {
    width: 660px;
    border-radius: 10px;
  }
}
@media screen and (max-width: 768px) {
  #service-check ._fl figure {
    width: 100%;
    height: 53.3333333333vw;
    border-radius: 2.6666666667vw;
  }
}
#service-check ._fl figure img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
#service-check ._more {
  padding: 1.4641288433vw 0 0;
  text-align: center;
  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;
}
@media screen and (min-width: 1466px) {
  #service-check ._more {
    padding: 20px 0 0;
  }
}
@media screen and (max-width: 768px) {
  #service-check ._more {
    padding: 5.3333333333vw 0 0;
  }
}
#service-check ._more p {
  font-size: 2.196193265vw;
  font-weight: 700;
  color: #000078;
  margin: 0 0 1em;
  line-height: 1.5;
}
@media screen and (min-width: 1466px) {
  #service-check ._more p {
    font-size: 30px;
  }
}
@media screen and (max-width: 768px) {
  #service-check ._more p {
    font-size: 4.8vw;
  }
}

.marketing-support-content {
  margin: 0;
  padding: 5.8565153734vw 0 7.3206442167vw;
  position: relative;
}
@media screen and (min-width: 1466px) {
  .marketing-support-content {
    margin: 0;
    padding: 80px 0 100px;
  }
}
@media screen and (max-width: 768px) {
  .marketing-support-content {
    margin: 0;
    padding: 10.6666666667vw 0;
  }
}
.marketing-support-content:after {
  content: "";
  position: absolute;
  top: 2.196193265vw;
  right: 1.4641288433vw;
  width: 66.3250366032vw;
  height: 59.2972181552vw;
  background: url(../img/service-bg.svg) no-repeat center/contain;
  z-index: 1;
  mix-blend-mode: multiply;
}
@media screen and (min-width: 1466px) {
  .marketing-support-content:after {
    top: 30px;
    right: 20px;
    width: 906px;
    height: 810px;
  }
}
@media screen and (max-width: 768px) {
  .marketing-support-content:after {
    content: none;
    right: 14.6666666667vw;
    width: 241.6vw;
    height: 216vw;
  }
}
.marketing-support-content .page-content-cnt {
  position: relative;
  z-index: 10;
}
.marketing-support-content ._ttl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 1.4641288433vw;
  margin-bottom: 2.9282576867vw;
}
@media screen and (min-width: 1466px) {
  .marketing-support-content ._ttl {
    gap: 20px;
    margin-bottom: 40px;
  }
}
@media screen and (max-width: 768px) {
  .marketing-support-content ._ttl {
    gap: 3.2vw;
    margin-bottom: 5.3333333333vw;
    -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;
    text-align: center;
  }
}
.marketing-support-content ._ttl ._h2 {
  margin: 0;
}
.marketing-support-content ._ttl small {
  font-size: 1.4641288433vw;
  font-weight: 800;
  color: #000078;
}
@media screen and (min-width: 1466px) {
  .marketing-support-content ._ttl small {
    font-size: 20px;
  }
}
@media screen and (max-width: 768px) {
  .marketing-support-content ._ttl small {
    font-size: 4.8vw;
  }
}
.marketing-support-content ._desc {
  margin: 0 0 5.4904831625vw;
}
@media screen and (min-width: 1466px) {
  .marketing-support-content ._desc {
    margin: 0 0 75px;
  }
}
@media screen and (max-width: 768px) {
  .marketing-support-content ._desc {
    margin: 0 0 10.6666666667vw;
  }
}
@media screen and (max-width: 768px) {
  .marketing-support-content ._desc h3 {
    text-align: center;
  }
}
.marketing-support-content ._desc p {
  font-size: 1.317715959vw;
  line-height: 2;
}
@media screen and (min-width: 1466px) {
  .marketing-support-content ._desc p {
    font-size: 18px;
  }
}
@media screen and (max-width: 768px) {
  .marketing-support-content ._desc p {
    font-size: 4.2666666667vw;
  }
}
.marketing-support-content ._list {
  margin: 0 0 5.1244509517vw;
}
@media screen and (min-width: 1466px) {
  .marketing-support-content ._list {
    margin: 0 0 70px;
  }
}
@media screen and (max-width: 768px) {
  .marketing-support-content ._list {
    margin: 0 0 10.6666666667vw;
  }
}
.marketing-support-content ._list ol {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4.39238653vw 5.1244509517vw;
}
@media screen and (min-width: 1466px) {
  .marketing-support-content ._list ol {
    gap: 60px 70px;
  }
}
@media screen and (max-width: 768px) {
  .marketing-support-content ._list ol {
    grid-template-columns: 1fr;
    gap: 8vw;
  }
}
.marketing-support-content ._list ol li {
  width: 44.5095168375vw;
  background-color: #e3ebf1;
  border-radius: 0.7320644217vw;
  position: relative;
  padding: 3.2942898975vw 3.6603221083vw 2.9282576867vw;
}
@media screen and (min-width: 1466px) {
  .marketing-support-content ._list ol li {
    width: 648px;
    border-radius: 10px;
    padding: 45px 50px 40px;
  }
}
@media screen and (max-width: 768px) {
  .marketing-support-content ._list ol li {
    width: 100%;
    border-radius: 2.6666666667vw;
    padding: 6.6666666667vw 5.3333333333vw 5.3333333333vw;
  }
}
.marketing-support-content ._list ol li ._point {
  position: absolute;
  top: -2.5622254758vw;
  left: -2.5622254758vw;
  width: 7.3206442167vw;
  height: 7.3206442167vw;
  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;
  overflow: hidden;
  z-index: 9999;
}
@media screen and (min-width: 1466px) {
  .marketing-support-content ._list ol li ._point {
    top: -35px;
    left: -35px;
    width: 100px;
    height: 100px;
  }
}
@media screen and (max-width: 768px) {
  .marketing-support-content ._list ol li ._point {
    display: none;
  }
}
.marketing-support-content ._list ol li ._point ._num {
  position: absolute;
  width: 4.6852122987vw;
  height: 4.6852122987vw;
  background-color: #ffde00;
  border-radius: 50%;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -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;
  color: #000039;
  font-size: 2.196193265vw;
  font-weight: 800;
  font-family: "Montserrat", "Noto Sans JP", sans-serif;
}
@media screen and (min-width: 1466px) {
  .marketing-support-content ._list ol li ._point ._num {
    width: 64px;
    height: 64px;
    font-size: 30px;
  }
}
@media screen and (max-width: 768px) {
  .marketing-support-content ._list ol li ._point ._num {
    display: none;
  }
}
.marketing-support-content ._list ol li ._point ._txt {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-animation: mv_rotate 20s linear infinite;
          animation: mv_rotate 20s linear infinite;
}
.marketing-support-content ._list ol li ._point ._txt span {
  position: absolute;
  left: 50%;
  font-size: 0.7320644217vw;
  -webkit-transform-origin: 0 3.6603221083vw;
          transform-origin: 0 3.6603221083vw;
  color: #000078;
}
@media screen and (min-width: 1466px) {
  .marketing-support-content ._list ol li ._point ._txt span {
    font-size: 10px;
    -webkit-transform-origin: 0 50px;
            transform-origin: 0 50px;
  }
}
.marketing-support-content ._list ol li ._p h3 {
  font-size: 1.6837481698vw;
  font-weight: 700;
  color: #000078;
  margin: 0 0 0.6em;
}
@media screen and (min-width: 1466px) {
  .marketing-support-content ._list ol li ._p h3 {
    font-size: 23px;
  }
}
@media screen and (max-width: 768px) {
  .marketing-support-content ._list ol li ._p h3 {
    font-size: 4.2666666667vw;
  }
}
.marketing-support-content ._list ol li ._p p {
  font-size: 1.0248901903vw;
  line-height: 2;
}
@media screen and (min-width: 1466px) {
  .marketing-support-content ._list ol li ._p p {
    font-size: 14px;
  }
}
@media screen and (max-width: 768px) {
  .marketing-support-content ._list ol li ._p p {
    font-size: 3.7333333333vw;
  }
}
.marketing-support-content ._fl {
  border: solid #e3ebf1 0.1464128843vw;
  border-radius: 0.7320644217vw;
  padding: 0.7320644217vw 0;
  margin: 0 0 4.39238653vw;
}
@media screen and (min-width: 1466px) {
  .marketing-support-content ._fl {
    border-width: 2px;
    border-radius: 10px;
    padding: 10px 0;
    margin: 0 0 60px;
  }
}
@media screen and (max-width: 768px) {
  .marketing-support-content ._fl {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    border-width: 0.5333333333vw;
    border-radius: 2.6666666667vw;
    padding: 2.6666666667vw;
    margin: 0 0 8vw;
    gap: 0 !important;
  }
}
.marketing-support-content ._fl ._h {
  width: 24.5973645681vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 0 0 0 2.9282576867vw;
}
@media screen and (min-width: 1466px) {
  .marketing-support-content ._fl ._h {
    width: 336px;
    padding: 0 0 0 40px;
  }
}
@media screen and (max-width: 768px) {
  .marketing-support-content ._fl ._h {
    width: auto;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 0 0 2.6666666667vw;
  }
}
.marketing-support-content ._fl ._h p {
  font-size: 1.756954612vw;
  font-weight: 700;
  line-height: 1.5;
}
@media screen and (min-width: 1466px) {
  .marketing-support-content ._fl ._h p {
    font-size: 24px;
  }
}
@media screen and (max-width: 768px) {
  .marketing-support-content ._fl ._h p {
    font-size: 4.2666666667vw;
  }
}
.marketing-support-content ._fl ._h h2 {
  font-size: 2.9282576867vw;
  font-weight: 700;
  line-height: 1.3;
}
@media screen and (min-width: 1466px) {
  .marketing-support-content ._fl ._h h2 {
    font-size: 40px;
  }
}
@media screen and (max-width: 768px) {
  .marketing-support-content ._fl ._h h2 {
    font-size: 6.4vw;
  }
}
.marketing-support-content ._fl ._h h2 strong {
  color: #000078;
  font-weight: 700;
}
.marketing-support-content ._fl ._txt {
  width: 65.8857979502vw;
  border-left: solid #e3ebf1 0.1464128843vw;
  padding: 1.4641288433vw 2.5622254758vw;
}
@media screen and (min-width: 1466px) {
  .marketing-support-content ._fl ._txt {
    width: 1024px;
    border-width: 2px;
    padding: 20px 35px;
  }
}
@media screen and (max-width: 768px) {
  .marketing-support-content ._fl ._txt {
    width: auto;
    border-right: none;
    border-top: solid #e3ebf1 0.5333333333vw;
    padding: 5.3333333333vw 2.6666666667vw;
  }
}
.marketing-support-content ._fl ._txt ul li {
  margin-bottom: 0.5em;
}
.marketing-support-content ._more {
  padding: 1.4641288433vw 0 0;
  text-align: center;
  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;
}
@media screen and (min-width: 1466px) {
  .marketing-support-content ._more {
    padding: 20px 0 0;
  }
}
@media screen and (max-width: 768px) {
  .marketing-support-content ._more {
    padding: 5.3333333333vw 0 0;
  }
}
.marketing-support-content ._more p {
  font-size: 2.196193265vw;
  font-weight: 700;
  color: #000078;
  margin: 0 0 1em;
  line-height: 1.5;
}
@media screen and (min-width: 1466px) {
  .marketing-support-content ._more p {
    font-size: 30px;
  }
}
@media screen and (max-width: 768px) {
  .marketing-support-content ._more p {
    font-size: 4.8vw;
  }
}
.marketing-support-content._bg ._list ol li {
  background-color: #fff;
}
.marketing-support-content._bg ._fl {
  border-color: #fff;
}
.marketing-support-content._bg ._fl ._txt {
  border-color: #fff;
}
@media screen and (max-width: 768px) {
  .marketing-support-content._bg ._fl ._txt {
    border-color: #fff;
  }
}

#marketing-support-web {
  background-color: #fff;
}

#marketing-support-consulting {
  background-color: #fff;
}

#dtp-design-p02 {
  background-color: #fff;
}

#dtp-design-p04 {
  background-color: #fff;
}

.plan-content ._ttl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 1.4641288433vw;
  margin-bottom: 2.196193265vw;
}
@media screen and (min-width: 1466px) {
  .plan-content ._ttl {
    gap: 20px;
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 768px) {
  .plan-content ._ttl {
    gap: 3.2vw;
    margin-bottom: 5.3333333333vw;
    -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;
    text-align: center;
  }
}
.plan-content ._ttl ._h2 {
  margin: 0;
}
.plan-content ._ttl small {
  font-size: 1.4641288433vw;
  font-weight: 800;
  color: #000078;
}
@media screen and (min-width: 1466px) {
  .plan-content ._ttl small {
    font-size: 20px;
  }
}
@media screen and (max-width: 768px) {
  .plan-content ._ttl small {
    font-size: 4.8vw;
  }
}
.plan-content ._box {
  position: relative;
  background-color: #fff;
  border-radius: 0.7320644217vw;
  padding: 0.3660322108vw;
  margin: 0 0 1.4641288433vw;
}
@media screen and (min-width: 1466px) {
  .plan-content ._box {
    border-radius: 10px;
    padding: 5px;
    margin: 0 0 20px;
  }
}
@media screen and (max-width: 768px) {
  .plan-content ._box {
    border-radius: 2.6666666667vw;
    padding: 1.3333333333vw;
    margin: 0 0 5.3333333333vw;
  }
}
.plan-content ._box ._h {
  background-color: #000039;
  border-radius: 0.439238653vw;
  padding: 0.7320644217vw 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fff;
}
@media screen and (min-width: 1466px) {
  .plan-content ._box ._h {
    border-radius: 6px;
    padding: 10px 0;
  }
}
@media screen and (max-width: 768px) {
  .plan-content ._box ._h {
    border-radius: 1.6vw;
    padding: 3.2vw;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    text-align: center;
  }
}
.plan-content ._box ._h ._num {
  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;
  width: 8.0527086384vw;
  line-height: 1.2;
}
@media screen and (min-width: 1466px) {
  .plan-content ._box ._h ._num {
    width: 110px;
  }
}
@media screen and (max-width: 768px) {
  .plan-content ._box ._h ._num {
    width: 100%;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.plan-content ._box ._h ._num small {
  font-size: 1.4641288433vw;
  font-weight: 800;
}
@media screen and (min-width: 1466px) {
  .plan-content ._box ._h ._num small {
    font-size: 20px;
  }
}
@media screen and (max-width: 768px) {
  .plan-content ._box ._h ._num small {
    font-size: 3.7333333333vw;
  }
}
.plan-content ._box ._h ._num span {
  font-size: 2.3426061493vw;
  font-weight: 800;
}
@media screen and (min-width: 1466px) {
  .plan-content ._box ._h ._num span {
    font-size: 32px;
  }
}
@media screen and (max-width: 768px) {
  .plan-content ._box ._h ._num span {
    font-size: 3.7333333333vw;
  }
}
.plan-content ._box ._h ._t {
  border-left: solid #fff 0.0732064422vw;
  padding: 0.7320644217vw 0 0.7320644217vw 2.196193265vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media screen and (min-width: 1466px) {
  .plan-content ._box ._h ._t {
    border-width: 1px;
    padding: 10px 0 10px 30px;
  }
}
@media screen and (max-width: 768px) {
  .plan-content ._box ._h ._t {
    border: none;
    padding: 1.3333333333vw 0 1.3333333333vw;
  }
}
.plan-content ._box ._h ._t h3 {
  font-size: 2.0497803807vw;
  font-weight: 900;
  line-height: 1.3;
  color: #ffde00;
}
@media screen and (min-width: 1466px) {
  .plan-content ._box ._h ._t h3 {
    font-size: 28px;
  }
}
@media screen and (max-width: 768px) {
  .plan-content ._box ._h ._t h3 {
    font-size: 5.3333333333vw;
  }
}
.plan-content ._box ._h ._t p {
  line-height: 1.3;
  font-weight: 700;
  padding: 0.3em 0 0;
}
.plan-content ._box ._price {
  position: absolute;
  top: 1.4641288433vw;
  right: 1.4641288433vw;
  background-color: #fff;
  border-radius: 0.2928257687vw;
  padding: 1.4641288433vw 2.196193265vw 0;
  width: 24.4509516837vw;
}
@media screen and (min-width: 1466px) {
  .plan-content ._box ._price {
    top: 20px;
    right: 20px;
    border-radius: 4px;
    padding: 20px 20px 0;
    width: 334px;
  }
}
@media screen and (max-width: 768px) {
  .plan-content ._box ._price {
    position: static;
    border-radius: 1.0666666667vw;
    padding: 4vw 0 0;
    width: auto;
  }
}
.plan-content ._box ._price ._total {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  line-height: 1;
  gap: 0.3em;
}
.plan-content ._box ._price ._total i {
  font-style: normal;
  color: #c80000;
  font-weight: 900;
  font-size: 2.4890190337vw;
  margin: 0 0 0.3em;
}
@media screen and (min-width: 1466px) {
  .plan-content ._box ._price ._total i {
    font-size: 34px;
  }
}
@media screen and (max-width: 768px) {
  .plan-content ._box ._price ._total i {
    font-size: 9.0666666667vw;
    margin: 0 0 0.2em;
  }
}
.plan-content ._box ._price ._total i._sm {
  font-size: 1.1713030747vw;
  margin: 0 0 0.8em;
}
@media screen and (min-width: 1466px) {
  .plan-content ._box ._price ._total i._sm {
    font-size: 18px;
  }
}
@media screen and (max-width: 768px) {
  .plan-content ._box ._price ._total i._sm {
    font-size: 4.8vw;
    margin: 0 0 0.6em;
  }
}
.plan-content ._box ._price ._total strong {
  font-size: 8.345534407vw;
  font-weight: 800;
  color: #c80000;
}
@media screen and (min-width: 1466px) {
  .plan-content ._box ._price ._total strong {
    font-size: 114px;
  }
}
@media screen and (max-width: 768px) {
  .plan-content ._box ._price ._total strong {
    font-size: 21.3333333333vw;
  }
}
.plan-content ._box ._price ._total span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 0 0 1em;
}
@media screen and (max-width: 768px) {
  .plan-content ._box ._price ._total span {
    padding: 0 0 0.5em;
  }
}
.plan-content ._box ._price ._total span small {
  font-size: 1.0248901903vw;
}
@media screen and (min-width: 1466px) {
  .plan-content ._box ._price ._total span small {
    font-size: 14px;
  }
}
@media screen and (max-width: 768px) {
  .plan-content ._box ._price ._total span small {
    font-size: 3.7333333333vw;
  }
}
.plan-content ._box ._price ._total span i {
  font-style: normal;
  color: #c80000;
  font-weight: 900;
  font-size: 2.4890190337vw;
  margin: 0;
}
@media screen and (min-width: 1466px) {
  .plan-content ._box ._price ._total span i {
    font-size: 34px;
  }
}
@media screen and (max-width: 768px) {
  .plan-content ._box ._price ._total span i {
    font-size: 9.0666666667vw;
  }
}
.plan-content ._box ._p {
  padding: 1.0980966325vw 0.7320644217vw 1.0980966325vw;
}
@media screen and (min-width: 1466px) {
  .plan-content ._box ._p {
    padding: 15px 15px 15px;
  }
}
@media screen and (max-width: 768px) {
  .plan-content ._box ._p {
    padding: 2.6666666667vw 1.3333333333vw 4vw;
  }
}
.plan-content ._box ._p p {
  font-size: 1.1713030747vw;
  margin: 0;
}
@media screen and (min-width: 1466px) {
  .plan-content ._box ._p p {
    font-size: 16px;
  }
}
@media screen and (max-width: 768px) {
  .plan-content ._box ._p p {
    font-size: 3.7333333333vw;
  }
}
.plan-content ._box ._tag {
  padding: 0 0.7320644217vw 1.0980966325vw;
}
@media screen and (min-width: 1466px) {
  .plan-content ._box ._tag {
    padding: 0 15px 15px;
  }
}
@media screen and (max-width: 768px) {
  .plan-content ._box ._tag {
    padding: 0 1.3333333333vw 4vw;
  }
}
.plan-content ._box ._tag ul {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: 0.3660322108vw;
}
@media screen and (min-width: 1466px) {
  .plan-content ._box ._tag ul {
    gap: 5px;
  }
}
@media screen and (max-width: 768px) {
  .plan-content ._box ._tag ul {
    gap: 0.8vw;
    grid-template-columns: 1fr 1fr;
  }
}
.plan-content ._box ._tag ul li {
  width: auto;
  background-color: #e3ebf1;
  border-radius: 0;
  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;
  color: #000039;
  font-size: 0.878477306vw;
  padding: 1em 0;
}
@media screen and (min-width: 1466px) {
  .plan-content ._box ._tag ul li {
    font-size: 14px;
  }
}
@media screen and (max-width: 768px) {
  .plan-content ._box ._tag ul li {
    font-size: 3.2vw;
  }
}

/*---------------------------------
#FORM
---------------------------------*/
#page-content-download {
  margin-bottom: 2.9282576867vw;
}
@media screen and (min-width: 1466px) {
  #page-content-download {
    margin-bottom: 40px;
  }
}
@media screen and (max-width: 768px) {
  #page-content-download {
    margin-bottom: 5.3333333333vw;
  }
}

#contact-notes {
  background-color: #fff;
  border: solid #000039 0.0732064422vw;
  margin: 0 0 4.39238653vw;
}
@media screen and (min-width: 1466px) {
  #contact-notes {
    border: solid #000039 1px;
    margin: 0 0 60px;
  }
}
@media screen and (max-width: 768px) {
  #contact-notes {
    border: solid #000039 0.2666666667vw;
    margin: 0 0 10.6666666667vw;
  }
}
#contact-notes ._cnt-h3 {
  cursor: pointer;
  position: relative;
}
#contact-notes ._cnt-h3:after {
  content: "▼";
  position: absolute;
  top: 50%;
  right: 2em;
  margin-top: -1em;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
  color: #fff;
}
#contact-notes ._cnt-h3.active:after {
  rotate: 180deg;
}
#contact-notes ._cnt-h3 ._common-h3 {
  margin-bottom: 0;
  background-color: #000039;
  color: #fff;
  text-align: center;
  padding: 0.6em 1em;
  font-size: 1.317715959vw;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  #contact-notes ._cnt-h3 ._common-h3 {
    font-size: 18px;
  }
}
@media screen and (max-width: 768px) {
  #contact-notes ._cnt-h3 ._common-h3 {
    font-size: 4.8vw;
  }
}
#contact-notes ._cnt-normal {
  display: none;
  padding: 2.9282576867vw;
}
@media screen and (min-width: 1466px) {
  #contact-notes ._cnt-normal {
    padding: 40px;
  }
}
@media screen and (max-width: 768px) {
  #contact-notes ._cnt-normal {
    padding: 5.3333333333vw;
  }
}
#contact-notes ._cnt-normal ul {
  font-weight: 700;
  margin: 0;
}
#contact-notes ._cnt-normal ul li {
  padding: 0 0 0 1em;
  position: relative;
}
#contact-notes ._cnt-normal ul li:before {
  content: "・";
  position: absolute;
  top: 0;
  left: 0;
}

#contact-form {
  overflow: hidden;
  position: relative;
}
#contact-form ._form ._h {
  margin: 0 0 3.6603221083vw;
}
@media screen and (min-width: 1466px) {
  #contact-form ._form ._h {
    margin: 0 0 50px;
  }
}
@media screen and (max-width: 768px) {
  #contact-form ._form ._h {
    margin: 0 0 8vw;
  }
}
#contact-form ._form ._fl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
#contact-form ._form ._fl ._desc {
  width: 35.1390922401vw;
}
@media screen and (min-width: 1466px) {
  #contact-form ._form ._fl ._desc {
    width: 540px;
  }
}
@media screen and (max-width: 768px) {
  #contact-form ._form ._fl ._desc {
    display: block;
    width: auto;
  }
}
#contact-form ._form ._fl ._desc ul {
  font-size: 1.4641288433vw;
  color: #000039;
}
@media screen and (min-width: 1466px) {
  #contact-form ._form ._fl ._desc ul {
    font-size: 20px;
  }
}
@media screen and (max-width: 768px) {
  #contact-form ._form ._fl ._desc ul {
    font-size: 3.7333333333vw;
  }
}
#contact-form ._form ._fl ._desc ._image {
  padding: 2.9282576867vw 0 0;
}
@media screen and (min-width: 1466px) {
  #contact-form ._form ._fl ._desc ._image {
    padding: 40px 0 0;
  }
}
@media screen and (max-width: 768px) {
  #contact-form ._form ._fl ._desc ._image {
    padding: 5.3333333333vw 0 0;
  }
}
#contact-form ._form ._fl ._desc ._image ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1.4641288433vw;
}
#contact-form ._form ._fl ._input {
  width: 53.5871156662vw;
  background-color: #fff;
  border-radius: 0.7320644217vw;
  padding: 0.7320644217vw 1.4641288433vw 2.196193265vw;
}
@media screen and (min-width: 1466px) {
  #contact-form ._form ._fl ._input {
    width: 772px;
    border-radius: 10px;
    padding: 10px 20px 30px;
  }
}
@media screen and (max-width: 768px) {
  #contact-form ._form ._fl ._input {
    width: auto;
    border-radius: 2.6666666667vw;
    padding: 2.6666666667vw 5.3333333333vw 8vw;
  }
}
#contact-form ._form ._confirm {
  background-color: #fff;
  border-radius: 0.7320644217vw;
  padding: 0.7320644217vw 1.4641288433vw 2.196193265vw;
}
@media screen and (min-width: 1466px) {
  #contact-form ._form ._confirm {
    border-radius: 10px;
    padding: 10px 20px 30px;
  }
}
@media screen and (max-width: 768px) {
  #contact-form ._form ._confirm {
    border-radius: 2.6666666667vw;
    padding: 2.6666666667vw 5.3333333333vw 8vw;
  }
}
#contact-form ._form .wpcf7-spinner {
  display: none;
}
#contact-form ._form .wpcf7-response-output {
  text-align: center;
  border: none;
  background-color: #fff;
  padding: 1em;
  font-size: 0.878477306vw;
  background-color: #ffde00;
}
@media screen and (min-width: 1466px) {
  #contact-form ._form .wpcf7-response-output {
    font-size: 12px;
  }
}
@media screen and (max-width: 768px) {
  #contact-form ._form .wpcf7-response-output {
    font-size: 2.6666666667vw;
  }
}
#contact-form ._form .wpcf7-not-valid-tip {
  display: inline-block;
}
#contact-form ._form table {
  width: 100%;
  font-size: 1.1713030747vw;
  border-collapse: collapse;
}
@media screen and (min-width: 1466px) {
  #contact-form ._form table {
    font-size: 16px;
  }
}
@media screen and (max-width: 768px) {
  #contact-form ._form table {
    font-size: 3.4666666667vw;
    display: block;
  }
}
@media screen and (max-width: 768px) {
  #contact-form ._form table tr,
  #contact-form ._form table tbody {
    display: block;
  }
}
#contact-form ._form table th {
  padding: 1.4641288433vw 0vw;
  width: 25%;
  text-align: left;
  vertical-align: top;
  position: relative;
  font-weight: 700;
  border-bottom: solid #d6d6d6 0.0732064422vw;
  color: #000039;
}
@media screen and (min-width: 1466px) {
  #contact-form ._form table th {
    padding: 20px 0vw;
    border-width: 1px;
  }
}
@media screen and (max-width: 768px) {
  #contact-form ._form table th {
    display: block;
    width: 100%;
    padding: 4vw 0 1.3333333333vw;
    border: none;
  }
}
#contact-form ._form table th .req {
  position: absolute;
  top: 1.756954612vw;
  right: 0;
  background-color: #c80000;
  color: #fff;
  font-size: 0.878477306vw;
  padding: 0.1em 0.8em;
  vertical-align: middle;
  border-radius: 0.3660322108vw;
}
@media screen and (min-width: 1466px) {
  #contact-form ._form table th .req {
    top: 24px;
    font-size: 12px;
    border-radius: 6px;
    padding: 0.1em 1em;
  }
}
@media screen and (max-width: 768px) {
  #contact-form ._form table th .req {
    top: 4vw;
    font-size: 2.6666666667vw;
    border-radius: 1.0666666667vw;
  }
}
#contact-form ._form table th .req._n {
  background-color: #eee;
}
#contact-form ._form table th small {
  display: block;
  font-size: 87.5%;
}
#contact-form ._form table td {
  padding: 0.7320644217vw 0 0.7320644217vw 1.4641288433vw;
  text-align: left;
  vertical-align: top;
  border-bottom: solid #d6d6d6 0.0732064422vw;
}
@media screen and (min-width: 1466px) {
  #contact-form ._form table td {
    padding: 10px 0 10px 20px;
    border-width: 1px;
  }
}
@media screen and (max-width: 768px) {
  #contact-form ._form table td {
    display: block;
    padding: 0 0 4vw;
    border-width: 0.2666666667vw;
  }
}
@media screen and (max-width: 768px) {
  #contact-form ._form table td ._fl {
    gap: 0;
  }
}
#contact-form ._form table td ._fl ._col {
  width: 48%;
}
#contact-form ._form table td .wpcf7-radio {
  padding: 1.2em 0 0;
  display: block;
}
#contact-form ._form table td input[type=text],
#contact-form ._form table td input[type=email],
#contact-form ._form table td input[type=tel],
#contact-form ._form table td input[type=date],
#contact-form ._form table td textarea {
  width: 100%;
  border: none;
  border-radius: 0.439238653vw;
  padding: 0.6em 1em;
  background-color: #e3ebf1;
}
@media screen and (min-width: 1466px) {
  #contact-form ._form table td input[type=text],
  #contact-form ._form table td input[type=email],
  #contact-form ._form table td input[type=tel],
  #contact-form ._form table td input[type=date],
  #contact-form ._form table td textarea {
    border-radius: 6px;
  }
}
@media screen and (max-width: 768px) {
  #contact-form ._form table td input[type=text],
  #contact-form ._form table td input[type=email],
  #contact-form ._form table td input[type=tel],
  #contact-form ._form table td input[type=date],
  #contact-form ._form table td textarea {
    border-radius: 1.6vw;
  }
}
#contact-form ._form table td input[type=text]._ml,
#contact-form ._form table td input[type=email]._ml,
#contact-form ._form table td input[type=tel]._ml,
#contact-form ._form table td input[type=date]._ml,
#contact-form ._form table td textarea._ml {
  width: 8em;
  margin: 0 0.5em 0 0;
}
#contact-form ._form table td input[type=radio] {
  accent-color: #000039;
}
#contact-form ._form table td .wpcf7-checkbox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 0.2em 0.2em;
  padding: 1em 0;
}
#contact-form ._form table td .wpcf7-checkbox .wpcf7-list-item {
  margin: 0;
  -webkit-box-flex: 100%;
      -ms-flex: 100%;
          flex: 100%;
}
@media screen and (max-width: 768px) {
  #contact-form ._form table td .wpcf7-checkbox .wpcf7-list-item {
    position: relative;
    padding: 0 0 0 2em;
  }
}
@media screen and (max-width: 768px) {
  #contact-form ._form table td .wpcf7-checkbox .wpcf7-list-item input[type=checkbox] {
    position: absolute;
    top: 0.3em;
    left: 0;
  }
}
#contact-form ._form table td ._row + ._row {
  padding: 1em 0 0;
}
#contact-form ._form table td ._row._postal {
  width: 20%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5em;
}
@media screen and (max-width: 768px) {
  #contact-form ._form table td ._row._postal {
    width: 40%;
  }
}
#contact-form ._form table td ._row._address {
  width: 100%;
}
#contact-form ._form table td input[type=checkbox] {
  position: relative;
  margin-right: 0.5em;
  width: 1.4641288433vw;
  height: 1.4641288433vw;
  border: none;
  border-radius: 0.2196193265vw;
  background-color: #e3ebf1;
  vertical-align: -0.3660322108vw;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
@media screen and (min-width: 1466px) {
  #contact-form ._form table td input[type=checkbox] {
    width: 20px;
    height: 20px;
    border-radius: 3px;
    vertical-align: -5px;
  }
}
@media screen and (max-width: 768px) {
  #contact-form ._form table td input[type=checkbox] {
    width: 5.3333333333vw;
    height: 5.3333333333vw;
    border-radius: 0.8vw;
    vertical-align: -1.3333333333vw;
  }
}
#contact-form ._form table td input[type=checkbox]:checked:before {
  position: absolute;
  top: 0.3660322108vw;
  left: 0.5856515373vw;
  -webkit-transform: rotate(50deg);
          transform: rotate(50deg);
  width: 0.2928257687vw;
  height: 0.5856515373vw;
  border-right: 0.1464128843vw solid #000039;
  border-bottom: 0.1464128843vw solid #000039;
  content: "";
}
@media screen and (min-width: 1466px) {
  #contact-form ._form table td input[type=checkbox]:checked:before {
    top: 5px;
    left: 8px;
    width: 4px;
    height: 8px;
    border-right-width: 2px;
    border-bottom-width: 2px;
  }
}
@media screen and (max-width: 768px) {
  #contact-form ._form table td input[type=checkbox]:checked:before {
    top: 1.3333333333vw;
    left: 2.1333333333vw;
    width: 1.0666666667vw;
    height: 2.1333333333vw;
    border-right-width: 0.5333333333vw;
    border-bottom-width: 0.5333333333vw;
  }
}
#contact-form ._form table td .select-wrap select {
  width: 100%;
  border: solid #eee 0.0732064422vw;
  border-radius: 0.2928257687vw;
  padding: 1.3em 1em;
  border-radius: 0.7320644217vw;
}
@media screen and (min-width: 1466px) {
  #contact-form ._form table td .select-wrap select {
    border-width: 1px;
    border-radius: 10px;
  }
}
@media screen and (max-width: 768px) {
  #contact-form ._form table td .select-wrap select {
    border-width: 0.2666666667vw;
    border-radius: 2.6666666667vw;
  }
}
#contact-form ._form table td .conf {
  display: block;
  padding: 1.2em 0 0;
}
#contact-form ._form .btn-area {
  padding: 1.4641288433vw 0 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 1.4641288433vw;
}
@media screen and (min-width: 1466px) {
  #contact-form ._form .btn-area {
    padding: 20px 0 0;
    gap: 20px;
  }
}
@media screen and (max-width: 768px) {
  #contact-form ._form .btn-area {
    padding: 5.3333333333vw 0 0;
    gap: 3.2vw;
  }
}
#contact-form ._form .btn-area .btn-wrap {
  display: inline-block;
  position: relative;
  overflow: hidden;
  text-align: center;
  color: #fff;
  width: 26.3543191801vw;
  height: 5.1244509517vw;
  border-radius: 5.1244509517vw;
  line-height: 5.1244509517vw;
  padding: 0 0.7320644217vw;
  cursor: pointer;
  background: #000078;
  /* &:after{
    content:"＞";
    position:absolute;
    top:50%;
    right:vw(20);
    //background:url(../img/arrow_wh.svg) no-repeat center /contain;
    //width:vw(15);
    //height:vw(8);
    //margin:vw(-4) 0 0;
    transition:$ts;
    transform:translateY(-50%);

    @include pc{
      //width:ww(15);
      //height:ww(8);
      //margin:ww(-4) 0 0;
      right:ww(20);
    }
    @include sp{
      //width:sw(15);
      //height:sw(8);
      //margin:sw(-4) 0 0;
      right:sw(20);
    }
  } */
}
@media screen and (min-width: 1466px) {
  #contact-form ._form .btn-area .btn-wrap {
    width: 360px;
    height: 70px;
    border-radius: 70px;
    line-height: 60px;
    padding: 0 10px;
  }
}
@media screen and (max-width: 768px) {
  #contact-form ._form .btn-area .btn-wrap {
    width: 100%;
    height: 16vw;
    border-radius: 16vw;
    line-height: 16vw;
    padding: 0 2.6666666667vw;
  }
}
#contact-form ._form .btn-area .btn-wrap:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  opacity: 0;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
  background-color: #fff;
}
#contact-form ._form .btn-area .btn-wrap input {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 2;
  font-size: 1.4641288433vw;
  font-weight: 700;
  padding: 0 3.3674963397vw;
  background: none;
  border: none;
}
@media screen and (min-width: 1466px) {
  #contact-form ._form .btn-area .btn-wrap input {
    font-size: 20px;
    padding: 0 46px;
  }
}
@media screen and (max-width: 768px) {
  #contact-form ._form .btn-area .btn-wrap input {
    font-size: 4.2666666667vw;
    padding: 0 9.6vw;
  }
}
#contact-form ._form .btn-area .btn-wrap:hover:before {
  opacity: 0.3;
}
#contact-form ._form .btn-area .btn-wrap._bk {
  background-color: #333;
  color: #fff;
}
#contact-form ._form .btn-area .btn-wrap._bk:after {
  content: none;
}
#contact-form ._form ._policy {
  padding: 1.4641288433vw 0 0;
  text-align: center;
}
@media screen and (min-width: 1466px) {
  #contact-form ._form ._policy {
    padding: 20px 0 0;
  }
}
@media screen and (max-width: 768px) {
  #contact-form ._form ._policy {
    padding: 5.3333333333vw 0 0;
  }
}
#contact-form ._form ._policy p {
  font-size: 0.878477306vw;
  margin: 0;
}
@media screen and (min-width: 1466px) {
  #contact-form ._form ._policy p {
    font-size: 12px;
  }
}
@media screen and (max-width: 768px) {
  #contact-form ._form ._policy p {
    font-size: 2.6666666667vw;
  }
}
#contact-form ._form ._policy p a {
  text-decoration: underline;
  color: #000039;
}
#contact-form ._form ._policy p a:hover {
  text-decoration: none;
}
#contact-form ._form ._policy ._policy-chk {
  font-size: 1.1713030747vw;
}
@media screen and (min-width: 1466px) {
  #contact-form ._form ._policy ._policy-chk {
    font-size: 16px;
  }
}
@media screen and (max-width: 768px) {
  #contact-form ._form ._policy ._policy-chk {
    font-size: 3.4666666667vw;
  }
}
#contact-form ._form ._policy ._policy-chk input[type=checkbox] {
  position: relative;
  margin-right: 0.5em;
  width: 1.1713030747vw;
  height: 1.1713030747vw;
  border: none;
  background-color: #e3ebf1;
  vertical-align: -0.2196193265vw;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
@media screen and (min-width: 1466px) {
  #contact-form ._form ._policy ._policy-chk input[type=checkbox] {
    width: 16px;
    height: 16px;
    vertical-align: -3px;
  }
}
@media screen and (max-width: 768px) {
  #contact-form ._form ._policy ._policy-chk input[type=checkbox] {
    width: 4.2666666667vw;
    height: 4.2666666667vw;
    vertical-align: -0.8vw;
  }
}
#contact-form ._form ._policy ._policy-chk input[type=checkbox]:checked:before {
  position: absolute;
  top: 0.1464128843vw;
  left: 0.3660322108vw;
  -webkit-transform: rotate(50deg);
          transform: rotate(50deg);
  width: 0.2928257687vw;
  height: 0.5856515373vw;
  border-right: 0.1464128843vw solid #000039;
  border-bottom: 0.1464128843vw solid #000039;
  content: "";
}
@media screen and (min-width: 1466px) {
  #contact-form ._form ._policy ._policy-chk input[type=checkbox]:checked:before {
    top: 2px;
    left: 5px;
    width: 4px;
    height: 8px;
    border-right-width: 2px;
    border-bottom-width: 2px;
  }
}
@media screen and (max-width: 768px) {
  #contact-form ._form ._policy ._policy-chk input[type=checkbox]:checked:before {
    top: 0.5333333333vw;
    left: 1.3333333333vw;
    width: 1.0666666667vw;
    height: 2.1333333333vw;
    border-right-width: 0.5333333333vw;
    border-bottom-width: 0.5333333333vw;
  }
}
#contact-form ._form ._policy ._policy-chk .req {
  background-color: #c80000;
  color: #fff;
  font-size: 0.9516837482vw;
  padding: 0.1em 0.5em;
  vertical-align: middle;
  border-radius: 0.439238653vw;
}
@media screen and (min-width: 1466px) {
  #contact-form ._form ._policy ._policy-chk .req {
    font-size: 13px;
    border-radius: 6px;
  }
}
@media screen and (max-width: 768px) {
  #contact-form ._form ._policy ._policy-chk .req {
    font-size: 2.9333333333vw;
    border-radius: 1.0666666667vw;
  }
}

/*---------------------------------
POST
---------------------------------*/
#archive-column {
  margin: 0 0 5.8565153734vw;
}
@media screen and (min-width: 1466px) {
  #archive-column {
    margin: 0 0 80px;
  }
}
@media screen and (max-width: 768px) {
  #archive-column {
    margin: 0 0 10.6666666667vw;
  }
}
#archive-column ._list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 2.9282576867vw 1.33%;
}
#archive-column ._list a {
  display: block;
  width: 24%;
}
@media screen and (max-width: 768px) {
  #archive-column ._list a {
    width: 100%;
  }
}
#archive-column ._list a figure {
  width: 100%;
  height: 12.4450951684vw;
  overflow: hidden;
}
@media screen and (min-width: 1466px) {
  #archive-column ._list a figure {
    height: 184px;
  }
}
@media screen and (max-width: 768px) {
  #archive-column ._list a figure {
    height: 53.3333333333vw;
  }
}
#archive-column ._list a figure img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
#archive-column ._list a h2 {
  font-size: 1.317715959vw;
  padding: 0.3em 0;
  color: #000039;
  font-weight: 700;
}
@media screen and (min-width: 1466px) {
  #archive-column ._list a h2 {
    font-size: 20px;
  }
}
@media screen and (max-width: 768px) {
  #archive-column ._list a h2 {
    font-size: 4.2666666667vw;
  }
}
#archive-column ._list a ._tag {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 0.5em;
  font-size: 1.0248901903vw;
}
@media screen and (min-width: 1466px) {
  #archive-column ._list a ._tag {
    font-size: 14px;
  }
}
@media screen and (max-width: 768px) {
  #archive-column ._list a ._tag {
    font-size: 3.2vw;
  }
}
#archive-column ._list a ._tag span {
  background-color: #000078;
  color: #fff;
  border-radius: 2em;
  padding: 0.2em 1em;
}
#archive-column ._list a:hover figure img {
  scale: 1.05;
}

#single-works .post_content a:hover {
  color: #000078;
  text-decoration: underline;
}
#single-works .post_content h1 {
  font-size: 2.635431918vw;
  color: #000078;
  font-weight: 700;
  margin: 0 0 1em;
}
@media screen and (min-width: 1466px) {
  #single-works .post_content h1 {
    font-size: 36px;
  }
}
@media screen and (max-width: 768px) {
  #single-works .post_content h1 {
    font-size: 6.4vw;
  }
}
#single-works .post_content .tx_cateBox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  font-size: 1.0248901903vw;
  gap: 0.3em;
  margin-bottom: 0.2928257687vw;
}
@media screen and (min-width: 1466px) {
  #single-works .post_content .tx_cateBox {
    font-size: 14px;
    margin-bottom: 4px;
  }
}
@media screen and (max-width: 768px) {
  #single-works .post_content .tx_cateBox {
    font-size: 2.6666666667vw;
    margin-bottom: 1.0666666667vw;
  }
}
#single-works .post_content .tx_cateBox .cate_in {
  background-color: #000078;
  color: #fff;
  font-weight: 700;
  padding: 0.3em 1.2em;
  border-radius: 2em;
}
#single-works .post_content .tx_tagBox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  font-size: 1.0248901903vw;
  padding: 0.5em 0 0;
  margin: 0 0 4em;
}
@media screen and (min-width: 1466px) {
  #single-works .post_content .tx_tagBox {
    font-size: 14px;
  }
}
@media screen and (max-width: 768px) {
  #single-works .post_content .tx_tagBox {
    font-size: 2.6666666667vw;
  }
}
#single-works .post_content .tx_tagBox .tag_in {
  font-weight: 700;
}
#single-works .post_content .tx_tagBox .tag_in:after {
  content: "/";
  padding: 0 0.5em;
}
#single-works .post_content .tx_tagBox .tag_in:last-child:after {
  content: none;
}
#single-works .post_content .tx_tagBox .tag_in a:hover {
  color: #000078;
  text-decoration: underline;
}
#single-works .single_content .in {
  margin: 0 0 5.8565153734vw;
}
@media screen and (min-width: 1466px) {
  #single-works .single_content .in {
    margin: 0 0 80px;
  }
}
@media screen and (max-width: 768px) {
  #single-works .single_content .in {
    margin: 0 0 10.6666666667vw;
  }
}
#single-works .single_content .inBox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0 0 2.9282576867vw;
}
@media screen and (min-width: 1466px) {
  #single-works .single_content .inBox {
    margin: 0 0 40px;
  }
}
@media screen and (max-width: 768px) {
  #single-works .single_content .inBox {
    margin: 0 0 8vw;
  }
}
#single-works .single_content .inBox .lBox {
  width: 15%;
}
@media screen and (max-width: 768px) {
  #single-works .single_content .inBox .lBox {
    width: 100%;
    margin: 0 0 4vw;
  }
}
#single-works .single_content .inBox .lBox span {
  font-size: 1.0248901903vw;
  background-color: #000078;
  color: #fff;
  font-weight: 700;
  padding: 0.3em 1.2em;
  border-radius: 2em;
}
@media screen and (min-width: 1466px) {
  #single-works .single_content .inBox .lBox span {
    font-size: 14px;
  }
}
@media screen and (max-width: 768px) {
  #single-works .single_content .inBox .lBox span {
    font-size: 3.7333333333vw;
  }
}
#single-works .single_content .inBox .rBox {
  width: 85%;
  font-size: 1.1713030747vw;
}
@media screen and (min-width: 1466px) {
  #single-works .single_content .inBox .rBox {
    font-size: 16px;
  }
}
@media screen and (max-width: 768px) {
  #single-works .single_content .inBox .rBox {
    width: 100%;
    font-size: 3.7333333333vw;
  }
}
#single-works .single_content .work_imgBox {
  background-color: #fff;
  border-radius: 0.7320644217vw;
  padding: 2.9282576867vw;
}
@media screen and (min-width: 1466px) {
  #single-works .single_content .work_imgBox {
    border-radius: 10px;
    padding: 40px;
  }
}
@media screen and (max-width: 768px) {
  #single-works .single_content .work_imgBox {
    border-radius: 2.6666666667vw;
    padding: 5.3333333333vw;
  }
}
#single-works .single_content .work_imgBox .inBox {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 2.9282576867vw;
}
@media screen and (min-width: 1466px) {
  #single-works .single_content .work_imgBox .inBox {
    gap: 60px;
  }
}
@media screen and (max-width: 768px) {
  #single-works .single_content .work_imgBox .inBox {
    gap: 5.3333333333vw;
  }
}
#single-works .single_content .work_imgBox .inBox .in {
  width: 35.1390922401vw;
  overflow: hidden;
  margin: 0;
  text-align: center;
}
@media screen and (min-width: 1466px) {
  #single-works .single_content .work_imgBox .inBox .in {
    width: 480px;
  }
}
@media screen and (max-width: 768px) {
  #single-works .single_content .work_imgBox .inBox .in {
    width: 42.6666666667vw;
  }
}
#single-works .single_content .work_imgBox .inBox .in img {
  width: auto;
  max-width: 100%;
  height: auto;
  border: solid #000039 0.1464128843vw;
  border-radius: 0.7320644217vw;
}
@media screen and (min-width: 1466px) {
  #single-works .single_content .work_imgBox .inBox .in img {
    border-radius: 10px;
    border-width: 2px;
  }
}
@media screen and (max-width: 768px) {
  #single-works .single_content .work_imgBox .inBox .in img {
    border-radius: 2.6666666667vw;
    border-width: 0.5333333333vw;
  }
}

.single-post {
  padding: 0 0 7.3206442167vw;
}
@media screen and (min-width: 1466px) {
  .single-post {
    padding: 0 0 100px;
  }
}
@media screen and (max-width: 768px) {
  .single-post {
    padding: 0 0 16vw;
  }
}
.single-post ._cnt {
  width: auto;
}
@media screen and (min-width: 1466px) {
  .single-post ._cnt {
    max-width: 1024px;
    margin: 0 auto;
  }
}
@media screen and (max-width: 768px) {
  .single-post ._cnt {
    width: auto;
  }
}
.single-post #toc_container {
  margin: 0 auto 5.8565153734vw;
  width: 100% !important;
}
@media screen and (min-width: 1466px) {
  .single-post #toc_container {
    margin-bottom: 80px;
  }
}
@media screen and (max-width: 768px) {
  .single-post #toc_container {
    margin-bottom: 10.6666666667vw;
  }
}
.single-post #toc_container .toc_title {
  background-color: #000078;
  color: #fff;
  padding: 1em;
  border-radius: 0.6em;
  margin: 1em;
  font-size: 1.4641288433vw;
}
@media screen and (min-width: 1466px) {
  .single-post #toc_container .toc_title {
    font-size: 20px;
  }
}
@media screen and (max-width: 768px) {
  .single-post #toc_container .toc_title {
    font-size: 4.2666666667vw;
    padding: 0.6em;
    margin: 0.6em;
  }
}
.single-post #toc_container .toc_list {
  list-style: decimal outside;
  margin: 0 1em;
  padding: 1em 0 0;
}
@media screen and (max-width: 768px) {
  .single-post #toc_container .toc_list {
    margin: 0 0.6em;
    padding: 0.6em 0 0;
  }
}
.single-post #toc_container .toc_list li {
  padding: 0 0 0 4em;
  margin-bottom: 1em;
  font-size: 1.317715959vw;
}
@media screen and (min-width: 1466px) {
  .single-post #toc_container .toc_list li {
    font-size: 18px;
  }
}
@media screen and (max-width: 768px) {
  .single-post #toc_container .toc_list li {
    font-size: 3.7333333333vw;
  }
}
.single-post #toc_container .toc_list li:before {
  content: none;
}
.single-post #toc_container .toc_list li a:hover {
  color: #000078;
}
.single-post #toc_container .toc_list li .toc_number {
  display: inline-block;
  position: absolute;
  top: -0.1em;
  left: 0;
  background-color: #000078;
  color: #fff;
  padding: 0.1em 1em;
  border-radius: 0.6em;
}
.single-post .post-ads {
  margin-bottom: 0 0 5.8565153734vw;
  background-color: #fff;
  border-radius: 1.4641288433vw;
  padding: 2.9282576867vw;
  -webkit-box-shadow: 0 0 0.7320644217vw rgba(0, 0, 0, 0.16);
          box-shadow: 0 0 0.7320644217vw rgba(0, 0, 0, 0.16);
}
@media screen and (min-width: 1466px) {
  .single-post .post-ads {
    margin-bottom: 0 0 80px;
    border-radius: 20px;
    padding: 40px;
    -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.16);
            box-shadow: 0 0 10px rgba(0, 0, 0, 0.16);
  }
}
@media screen and (max-width: 768px) {
  .single-post .post-ads {
    margin-bottom: 0 0 10.6666666667vw;
    border-radius: 2.6666666667vw;
    padding: 5.3333333333vw;
    -webkit-box-shadow: 0 0 2.6666666667vw rgba(0, 0, 0, 0.16);
            box-shadow: 0 0 2.6666666667vw rgba(0, 0, 0, 0.16);
  }
}
.single-post .post-ads .post-ads-bdy h2 {
  text-align: center;
  border: none;
  padding: 0;
  color: #000078;
  font-size: 2.196193265vw;
}
@media screen and (min-width: 1466px) {
  .single-post .post-ads .post-ads-bdy h2 {
    font-size: 30px;
  }
}
@media screen and (max-width: 768px) {
  .single-post .post-ads .post-ads-bdy h2 {
    font-size: 4.2666666667vw;
  }
}
.single-post .post-ads .post-ads-bdy h2:before {
  content: none;
}
.single-post .post-ads .post-ads-bdy figure {
  width: 80%;
  margin: 0 auto;
}
@media screen and (min-width: 1466px) {
  .single-post .post-ads .post-ads-bdy figure {
    width: 60%;
  }
}
@media screen and (max-width: 768px) {
  .single-post .post-ads .post-ads-bdy figure {
    width: 100%;
  }
}
.single-post .post-ads .post-ads-btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.single-post ._ttl {
  font-size: 2.635431918vw;
  margin: 0 0 2em;
}
@media screen and (min-width: 1466px) {
  .single-post ._ttl {
    font-size: 36px;
  }
}
@media screen and (max-width: 768px) {
  .single-post ._ttl {
    font-size: 6.4vw;
  }
}
.single-post ._ttl time {
  font-size: 1.4641288433vw;
  color: #000078;
  font-weight: 700;
}
@media screen and (min-width: 1466px) {
  .single-post ._ttl time {
    font-size: 20px;
  }
}
@media screen and (max-width: 768px) {
  .single-post ._ttl time {
    font-size: 4.2666666667vw;
  }
}
.single-post ._ttl ._h1 {
  position: relative;
  font-weight: 700;
}
.single-post ._thumbnail {
  text-align: center;
  margin: 0 0 4.39238653vw;
}
@media screen and (min-width: 1466px) {
  .single-post ._thumbnail {
    margin: 0 0 60px;
  }
}
@media screen and (max-width: 768px) {
  .single-post ._thumbnail {
    margin: 0 0 10.6666666667vw;
  }
}
.single-post ._thumbnail figure img {
  width: auto;
  height: auto;
  max-width: 100%;
}
.single-post ._cat {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 1em;
  font-size: 1.1713030747vw;
  margin: 0 0 1em;
}
@media screen and (min-width: 1466px) {
  .single-post ._cat {
    font-size: 16px;
  }
}
@media screen and (max-width: 768px) {
  .single-post ._cat {
    font-size: 3.7333333333vw;
  }
}
.single-post ._cat span {
  font-size: 0.878477306vw;
  padding: 0.3em 1.5em;
  border-radius: 2em;
  border: solid #000039 0.0732064422vw;
  background-color: #fff;
}
@media screen and (min-width: 1466px) {
  .single-post ._cat span {
    font-size: 12px;
    border-width: 1px;
  }
}
@media screen and (max-width: 768px) {
  .single-post ._cat span {
    font-size: 3.2vw;
    border-width: 0.2666666667vw;
    padding: 0.3em 0.8em;
  }
}
.single-post .wp-block-image {
  margin: 0 0 2.9282576867vw;
  text-align: center;
}
@media screen and (min-width: 1466px) {
  .single-post .wp-block-image {
    margin: 0 0 40px;
  }
}
@media screen and (max-width: 768px) {
  .single-post .wp-block-image {
    margin: 0 0 5.3333333333vw;
  }
}
.single-post .wp-block-image img {
  max-width: 100%;
  width: auto;
  height: auto;
}
.single-post .wp-block-group-is-layout-flex {
  margin: 0 0 2.9282576867vw;
}
@media screen and (min-width: 1466px) {
  .single-post .wp-block-group-is-layout-flex {
    margin: 0 0 40px;
  }
}
@media screen and (max-width: 768px) {
  .single-post .wp-block-group-is-layout-flex {
    margin: 0 0 5.3333333333vw;
  }
}
@media screen and (max-width: 768px) {
  .single-post .wp-block-group-is-layout-flex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.single-post .wp-block-group-is-layout-flex .wp-block-image {
  margin: 0;
  width: 30%;
}
@media screen and (max-width: 768px) {
  .single-post .wp-block-group-is-layout-flex .wp-block-image {
    width: 100%;
    margin-bottom: 3.2vw;
  }
}
.single-post .wp-block-group-is-layout-flex p {
  width: 70%;
}
@media screen and (max-width: 768px) {
  .single-post .wp-block-group-is-layout-flex p {
    width: 100%;
  }
}
.single-post .wp-block-table {
  margin: 0 0 2.9282576867vw;
  text-align: center;
}
@media screen and (min-width: 1466px) {
  .single-post .wp-block-table {
    margin: 0 0 40px;
  }
}
@media screen and (max-width: 768px) {
  .single-post .wp-block-table {
    margin: 0 0 5.3333333333vw;
  }
}
.single-post .wp-block-table table {
  font-size: 1.1713030747vw;
  line-height: 1.8;
  border-collapse: separate;
  border-spacing: 1px;
  background-color: #eee;
  border: none;
}
@media screen and (min-width: 1466px) {
  .single-post .wp-block-table table {
    font-size: 16px;
  }
}
@media screen and (max-width: 768px) {
  .single-post .wp-block-table table {
    font-size: 3.7333333333vw;
  }
}
.single-post .wp-block-table table th {
  background-color: #000039;
  color: #fff;
  text-align: center;
  vertical-align: middle;
  padding: 1em;
  border: none;
  font-weight: 700;
}
.single-post .wp-block-table table td {
  padding: 1em;
  vertical-align: middle;
  background-color: #fff;
  border: none;
}
.single-post .wp-block-table table td.has-text-align-center {
  text-align: center;
}
.single-post .wp-block-table table td.has-text-align-right {
  text-align: right;
}
.single-post p {
  margin: 0 0 2em;
}
.single-post p strong {
  font-weight: bold;
}
.single-post h2 {
  position: relative;
  margin: 0 0 2.5622254758vw;
  font-size: 1.6105417277vw;
  font-weight: 700;
  padding: 0 0 1.8301610542vw;
  line-height: 1.3;
  letter-spacing: 0.1em;
  border-bottom: solid #eee 0.0732064422vw;
}
@media screen and (min-width: 1466px) {
  .single-post h2 {
    font-size: 22px;
    padding: 0 0 25px;
    margin: 0 0 35px;
    border-width: 1px;
  }
}
@media screen and (max-width: 768px) {
  .single-post h2 {
    font-size: 5.3333333333vw;
    padding: 0 0 5.3333333333vw;
    margin: 0 0 5.3333333333vw;
    border-width: 0.2666666667vw;
  }
}
.single-post h2:before {
  content: "";
  position: absolute;
  bottom: -0.1464128843vw;
  left: 0;
  width: 8.78477306vw;
  height: 0.2928257687vw;
  background-color: #000039;
}
@media screen and (min-width: 1466px) {
  .single-post h2:before {
    width: 120px;
    height: 4px;
    bottom: -2px;
  }
}
@media screen and (max-width: 768px) {
  .single-post h2:before {
    width: 32vw;
    height: 1.0666666667vw;
    bottom: -0.5333333333vw;
  }
}
.single-post h3 {
  position: relative;
  margin: 0 0 2.196193265vw;
  font-size: 1.4641288433vw;
  font-weight: 700;
  padding: 0.1em 0.6em 0.6em 1.3em;
  line-height: 1.3;
}
@media screen and (min-width: 1466px) {
  .single-post h3 {
    font-size: 20px;
    margin: 0 0 30px;
  }
}
@media screen and (max-width: 768px) {
  .single-post h3 {
    font-size: 4.8vw;
    margin: 0 0 5.3333333333vw;
  }
}
.single-post h3:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 0.3em;
  height: calc(100% - 0.3em);
  background-color: #000039;
  border-radius: 1em;
}
.single-post h4 {
  position: relative;
  margin: 0 0 2.196193265vw;
  font-size: 1.317715959vw;
  font-weight: 700;
  line-height: 1.3;
}
@media screen and (min-width: 1466px) {
  .single-post h4 {
    font-size: 18px;
    margin: 0 0 30px;
  }
}
@media screen and (max-width: 768px) {
  .single-post h4 {
    font-size: 4.2666666667vw;
    margin: 0 0 5.3333333333vw;
  }
}
.single-post ul {
  font-size: 1.1713030747vw;
  line-height: 2;
  margin: 0 0 2.9282576867vw;
}
@media screen and (min-width: 1466px) {
  .single-post ul {
    font-size: 16px;
    margin: 0 0 40px;
  }
}
@media screen and (max-width: 768px) {
  .single-post ul {
    font-size: 3.7333333333vw;
    margin: 0 0 5.3333333333vw;
  }
}
.single-post ul li {
  padding: 0 0 0 1em;
  position: relative;
}
.single-post ul li:before {
  content: "・";
  position: absolute;
  top: 0;
  left: 0;
}
.single-post p {
  font-size: 1.1713030747vw;
  line-height: 2;
}
@media screen and (min-width: 1466px) {
  .single-post p {
    font-size: 16px;
  }
}
@media screen and (max-width: 768px) {
  .single-post p {
    font-size: 3.7333333333vw;
  }
}
.single-post strong {
  font-weight: 700;
}
.single-post ._bdy a {
  color: #000039;
}
.single-post ._bdy a:hover {
  text-decoration: underline;
}
.single-post ._bdy img {
  max-width: 100%;
  width: auto;
  height: auto;
}
.single-post ._author {
  background-color: #fff;
  position: relative;
  border-radius: 0.7320644217vw;
  padding: 0.7320644217vw;
  margin: 4.39238653vw 0;
}
@media screen and (min-width: 1466px) {
  .single-post ._author {
    border-radius: 10px;
    padding: 10px;
    margin: 60px 0;
  }
}
@media screen and (max-width: 768px) {
  .single-post ._author {
    border-radius: 2.6666666667vw;
    padding: 2.6666666667vw;
    margin: 8vw 0;
  }
}
.single-post ._author ._ah {
  font-size: 1.317715959vw;
  padding: 0.8em 2em;
  border-radius: 0.5em;
  background-color: #000039;
  color: #fff;
  position: absolute;
  top: -1em;
  left: 1em;
  text-align: center;
}
@media screen and (min-width: 1466px) {
  .single-post ._author ._ah {
    font-size: 18px;
  }
}
@media screen and (max-width: 768px) {
  .single-post ._author ._ah {
    font-size: 3.7333333333vw;
    left: 50%;
    width: 60%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}
.single-post ._author ._ac {
  padding: 4.39238653vw 1.4641288433vw 1.4641288433vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2.9282576867vw;
}
@media screen and (min-width: 1466px) {
  .single-post ._author ._ac {
    padding: 60px 20px 20px;
    gap: 40px;
  }
}
@media screen and (max-width: 768px) {
  .single-post ._author ._ac {
    padding: 10.6666666667vw 2.6666666667vw 2.6666666667vw;
    gap: 5.3333333333vw;
    -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;
  }
}
.single-post ._author ._ac figure {
  width: 8.78477306vw;
  height: 8.78477306vw;
  border-radius: 50%;
  overflow: hidden;
}
@media screen and (min-width: 1466px) {
  .single-post ._author ._ac figure {
    width: 100px;
    height: 100px;
  }
}
@media screen and (max-width: 768px) {
  .single-post ._author ._ac figure {
    width: 32vw;
    height: 32vw;
  }
}
.single-post ._author ._ac ._act {
  width: 77.5988286969vw;
}
@media screen and (min-width: 1466px) {
  .single-post ._author ._ac ._act {
    width: 800px;
  }
}
@media screen and (max-width: 768px) {
  .single-post ._author ._ac ._act {
    width: 100%;
  }
}
.single-post ._author ._ac ._act ._acth {
  margin-bottom: 0.5em;
}
.single-post ._author ._ac ._act ._actcl {
  margin-bottom: 1em;
  font-size: 1.0248901903vw;
  color: #000078;
}
@media screen and (min-width: 1466px) {
  .single-post ._author ._ac ._act ._actcl {
    font-size: 14px;
  }
}
@media screen and (max-width: 768px) {
  .single-post ._author ._ac ._act ._actcl {
    font-size: 3.2vw;
  }
}

span.toc_number.toc_depth_1 {
  display: none;
}

ul.toc_widget_list.no_bullets li {
  line-height: 1.6;
}

ul.toc_widget_list.no_bullets li a {
  font-size: 13px;
}

#toc_container {
  display: none !important;
}

._btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
._btm-navi {
  margin: 4.39238653vw 0 0;
  position: relative;
  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;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media screen and (min-width: 1466px) {
  ._btm-navi {
    margin: 60px 0 0;
  }
}
@media screen and (max-width: 768px) {
  ._btm-navi {
    margin: 10.6666666667vw 0 0;
    display: block;
  }
}
._btm-navi ._btn {
  padding: 0;
}
@media screen and (max-width: 768px) {
  ._btm-navi ._btn {
    padding: 10.6666666667vw 0 0;
  }
}
._btm-navi .btn_prev {
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  line-height: 1;
}
@media screen and (max-width: 768px) {
  ._btm-navi .btn_prev {
    top: 0;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
._btm-navi .btn_prev a {
  display: inline-block;
  font-size: 1.317715959vw;
  padding: 0 0 0 1em;
  position: relative;
  color: #000039;
  font-weight: 700;
}
@media screen and (min-width: 1466px) {
  ._btm-navi .btn_prev a {
    font-size: 18px;
  }
}
@media screen and (max-width: 768px) {
  ._btm-navi .btn_prev a {
    font-size: 4.2666666667vw;
  }
}
._btm-navi .btn_prev a:before {
  content: "<";
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
._btm-navi .btn_prev a:hover:before {
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
._btm-navi .btn_next {
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  line-height: 1;
}
@media screen and (max-width: 768px) {
  ._btm-navi .btn_next {
    top: 0;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
._btm-navi .btn_next a {
  display: inline-block;
  font-size: 1.317715959vw;
  padding: 0 1em 0 0;
  position: relative;
  color: #000039;
  font-weight: 700;
}
@media screen and (min-width: 1466px) {
  ._btm-navi .btn_next a {
    font-size: 18px;
  }
}
@media screen and (max-width: 768px) {
  ._btm-navi .btn_next a {
    font-size: 4.2666666667vw;
  }
}
._btm-navi .btn_next a:before {
  content: ">";
  position: absolute;
  top: 0;
  right: 0;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
._btm-navi .btn_next a:hover:before {
  -webkit-transform: translateX(50%);
          transform: translateX(50%);
}

.wp-pagenavi {
  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.0248901903vw;
  gap: 1em;
  padding: 4.39238653vw 0 0;
}
@media screen and (min-width: 1466px) {
  .wp-pagenavi {
    font-size: 14px;
    padding: 60px 0 0;
  }
}
@media screen and (max-width: 768px) {
  .wp-pagenavi {
    font-size: 3.2vw;
    padding: 10.6666666667vw 0 0;
  }
}
.wp-pagenavi a.previouspostslink, .wp-pagenavi a.nextpostslink {
  color: #000039;
  font-weight: 700;
}
.wp-pagenavi a.previouspostslink:hover, .wp-pagenavi a.nextpostslink:hover {
  color: #000078;
}
.wp-pagenavi a.page {
  width: 2.635431918vw;
  height: 2.635431918vw;
  line-height: 2.635431918vw;
  text-align: center;
  background-color: #e3ebf1;
  color: #000039;
  border-radius: 50%;
}
@media screen and (min-width: 1466px) {
  .wp-pagenavi a.page {
    width: 36px;
    height: 36px;
    line-height: 36px;
  }
}
@media screen and (max-width: 768px) {
  .wp-pagenavi a.page {
    width: 8.5333333333vw;
    height: 8.5333333333vw;
    line-height: 8.5333333333vw;
  }
}
.wp-pagenavi a.page:hover {
  background-color: #000039;
  color: #fff;
}
.wp-pagenavi span {
  width: 2.635431918vw;
  height: 2.635431918vw;
  line-height: 2.635431918vw;
  text-align: center;
  background-color: #000039;
  color: #fff;
  border-radius: 50%;
}
@media screen and (min-width: 1466px) {
  .wp-pagenavi span {
    width: 36px;
    height: 36px;
    line-height: 36px;
  }
}
@media screen and (max-width: 768px) {
  .wp-pagenavi span {
    width: 8.5333333333vw;
    height: 8.5333333333vw;
    line-height: 8.5333333333vw;
  }
}

/*---------------------------------
LOADING
---------------------------------
#loading{
  width:100vw;
  height:100vh;
  background:$white;
  position:fixed;
  top:0;
  left:0;
  z-index:20000;
  transition:1s ease;

  &:after{
    content:"";
    background:url(../img/logo.webp) no-repeat center /contain;
    width:vw(400);
    height:vw(400);
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%,-40%);
    opacity:0;
    transition:1s ease;

    @include pc{
      width:ww(400);
      height:ww(400);
    }
    @include sp{
      width:sw(200);
      height:sw(200);
    }
  }

  &.start{
    &:after{
      opacity:1;
      transform:translate(-50%,-50%);
    }

    &.end{
      opacity:0;

      &.done{
        display:none;
        z-index:-1;
      }
    }
  }
}*/
.single-post ul {
  margin: 0 0 0 !important;
}

.single-post ul.toc_widget_list.no_bullets li {
  line-height: 1.2;
}
.single-post ul.toc_widget_list.no_bullets li:not(:last-child) {
  margin-bottom: 4px;
}

.single-column .single-post h3 {
  margin-bottom: 5px;
}