@charset "UTF-8";
/* =======================================
 sp base
======================================= */
body {
  font-size: 3.646vw;
  min-width: inherit !important;
}

img {
  width: 100%;
}

img[height] {
  height: auto;
  width: 100%;
}

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

#wrapper {
  margin-block: 0;
  overflow: hidden;
  width: 100%;
}
#wrapper::before {
  display: none;
}

.inner {
  box-sizing: border-box;
  width: 100%;
}

#main {
  float: none;
  width: 100%;
}

.btn {
  font-size: 3.385vw;
}
.btn a {
  box-sizing: border-box;
  padding-block: 3.125vw;
  padding-inline: 5.208vw;
}
.btn a::before {
  width: 3.125vw;
  top: 4.688vw;
  right: 5.208vw;
}
.btn a::after {
  height: 2.083vw;
  width: 2.083vw;
  top: 3.646vw;
  right: 5.208vw;
}

#side {
  float: none;
  width: 100%;
}

.sns-btn-area {
  display: grid;
  gap: 2.604vw;
  grid-template-columns: repeat(6, 1fr);
}
.sns-btn-area li {
  font-size: 5.208vw;
  margin: 0;
  width: 100%;
}
.sns-btn-area li .sns-btn {
  height: 10.417vw;
  line-height: 10.417vw;
  width: 100%;
}

/* =======================================
 header
======================================= */
#intro h1 {
  font-size: 2.604vw;
  line-height: 3;
  padding: 0 4%;
}

#header {
  padding-block: 2.604vw;
}
#header #header-logo {
  float: none;
  margin-inline: auto;
  padding-top: 0;
  width: 92%;
}
#header #header-logo a {
  display: inline-block;
  vertical-align: middle;
  width: 66px;
}
#header #header-logo p {
  font-size: 3.125vw;
  width: 58.594vw;
}
#header #header-right {
  align-items: center;
  margin-inline: auto;
  width: 91.25%;
}
#header #header-right.floatright {
  float: none;
}
#header #header-complist {
  max-width: 364px;
  padding-top: 2.083vw;
  width: auto;
}
#header #header-tel {
  padding-block: 2.604vw 0;
  padding-inline: 0 2.604vw;
}
#header #header-search {
  -webkit-padding-before: 2.604vw;
          padding-block-start: 2.604vw;
}
#header .is-search-opan #header-search {
  width: 100%;
}
#header .is-search-opan #header-search #hs-btn01 {
  height: auto;
  padding: 1.042vw 2.604vw;
  width: calc(100% - 40px);
}
#header .is-search-opan #header-search #hs-btn01 input {
  font-size: 3.125vw;
  height: 1.6em;
  line-height: 1.6;
  width: calc(100% - 40px);
}
#header .toggle-gnav-open {
  align-items: center;
  cursor: pointer;
  display: flex;
  height: 40px;
  justify-content: center;
  position: absolute;
  top: 15px;
  width: 40px;
}
#header .toggle-gnav-open svg {
  width: 35px;
}

#header #gnav {
  background: #fff;
  height: 100vh;
  height: 100dvh;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
  padding: 60px 0 20px;
  position: fixed;
  right: -100%;
  top: 0;
  transition: all 0.5s linear;
  visibility: hidden;
  width: 100vw;
}
#header #gnav .toggle-gnav-close {
  align-items: center;
  background: #fff;
  backdrop-filter: blur(10px);
  cursor: pointer;
  display: flex;
  height: 40px;
  justify-content: center;
  position: fixed;
  right: 4%;
  top: 15px;
  width: 40px;
}
#header #gnav .toggle-gnav-close svg {
  width: 35px;
}
#header #gnav ul {
  text-align: left;
}
#header #gnav ul li {
  border-bottom: 1px solid #ccc;
  font-size: 3.646vw;
  display: block;
  line-height: 3.57;
  white-space: wrap;
}
#header #gnav ul a {
  padding: 0 calc(4% + 1.6em) 0 4%;
}
#header #gnav ul .arrow {
  left: 92%;
  opacity: 1;
  top: calc(50% - 0.285em) !important;
}
#header #gnav ul .arrow::before {
  display: none;
}
#header #gnav ul .arrow::after {
  height: 0.57em;
  width: 0.57em;
  left: 0;
  top: 0;
  transition: -webkit-transform 0.25s ease;
  transition: transform 0.25s ease;
  transition: transform 0.25s ease, -webkit-transform 0.25s ease;
}

.gnav-child {
  height: inherit;
  position: inherit;
}
.gnav-child ul li {
  white-space: normal;
}
.gnav-child.navlist ul {
  position: inherit;
  opacity: 1;
}
.gnav-child.navlist ul li {
  line-height: 4 !important;
}
.gnav-child.navlist ul a::before {
  top: calc(50% - 1px);
  left: 92%;
  width: 0.857em;
}
.gnav-child.navlist ul a::after {
  height: 0.57em;
  width: 0.57em;
  top: calc(50% - 0.285em);
  left: 93%;
}
.gnav-child .swiper-head-container {
  opacity: 1;
  width: 82%;
}
.gnav-child .swiper-wrapper {
  padding-top: 5.208vw;
}
.gnav-child .swiper-button-prev, .gnav-child .swiper-button-next {
  width: 3.646vw;
  height: 10.417vw;
  background-size: 3.646vw 10.417vw;
}
.gnav-child .swiper-slide {
  padding-bottom: 5.208vw;
}
.gnav-child .swiper-slide p {
  font-size: 3.385vw;
  letter-spacing: 0.04em;
  line-height: 1.4;
  margin-top: 2.604vw;
}
.gnav-child .swiper-slide .device p {
  border: 0;
  border-radius: 5.208vw;
  float: none;
  margin-top: 2.604vw;
  font-size: 3.385vw;
  line-height: 2.4;
  text-indent: 0.08em;
  height: auto;
  width: 100%;
}
.gnav-child .swiper-slide .device p.floatright,
.gnav-child .swiper-slide .device p.floatleft {
  width: 100%;
}
.gnav-child .swiper-slide .device p::before {
  top: 3.646vw;
  left: 3.125vw;
  width: 3.125vw;
}
.gnav-child .swiper-slide .device p::after {
  top: 2.604vw;
  left: 3.646vw;
  height: 2.083vw;
  width: 2.083vw;
}

#header #gnav li.gnav-more .arrow::after {
  left: 1.042vw;
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
}
#header #gnav li.gnav-more .is_active .arrow::after {
  -webkit-transform: rotate(315deg);
          transform: rotate(315deg);
}
#header #gnav li.gnav-more .is_active .gnav-child {
  -webkit-animation: none;
          animation: none;
  padding-bottom: 0;
}
#header #gnav li.gnav-more .is_active .navlist {
  height: auto;
}
#header #gnav li.gnav-more .is_active .gnav-child ul {
  -webkit-animation: none;
          animation: none;
}

.is__gnavOpen #header #gnav {
  opacity: 1;
  right: 0;
  visibility: visible;
}

#header.is-animation #header-logo {
  padding: 0;
}
#header.is-animation #header-logo p {
  display: inline-block;
}
#header.is-animation #header-tel,
#header.is-animation #header-search {
  display: none;
}
#header.is-animation #header-right {
  padding-top: 0;
  width: auto;
}
#header.is-animation .toggle-gnav-open {
  right: 4%;
}

/* =======================================
 side
======================================= */
#side {
  -webkit-padding-after: 7.813vw;
          padding-block-end: 7.813vw;
}

#side-tabmenu {
  -webkit-padding-before: 13.021vw;
          padding-block-start: 13.021vw;
}
#side-tabmenu label {
  font-size: 3.125vw;
  height: 10.417vw;
  line-height: 10.417vw;
  width: calc(50% - 10px);
}

#side .menulist {
  padding-left: 6px;
  padding-right: 6px;
}
#side .menulist li {
  font-size: 3.385vw;
  width: 100%;
}
#side .menulist li::before {
  top: 5.469vw;
  left: 2.083vw;
  height: 1.563vw;
  width: 1.563vw;
}
#side .menulist li a {
  padding: 4.167vw 2.604vw 4.167vw 6.51vw;
}
#side .menulist li br {
  display: none;
}
#side h2.side-tit {
  font-size: 4.167vw;
  line-height: 5.208vw;
  -webkit-margin-after: 2.604vw;
          margin-block-end: 2.604vw;
  -webkit-margin-start: 2.604vw;
          margin-inline-start: 2.604vw;
  padding-left: 7.813vw;
}
#side h2.side-tit::before {
  height: 5.208vw;
  width: 5.208vw;
}
#side h2.side-tit::after {
  height: 1.042vw;
  width: 0.911vw;
  top: 1.823vw;
  left: 1.563vw;
}

#side-tabmenu .menulist li::before {
  top: 3.646vw;
}

#side-column ul {
  margin-inline: auto;
  width: 92%;
}
#side-column li {
  font-size: 3.385vw;
}
#side-column li p {
  margin: 2.604vw 0;
}
#side-column .btn {
  font-size: 4.688vw;
  width: 72.917vw !important;
}
#side-column .btn a {
  border-radius: 1.302vw;
  letter-spacing: 0.08em;
  padding: 5.208vw;
}
#side-column .btn a::before {
  width: 3.125vw;
  top: 6.771vw;
  right: 5.208vw;
}
#side-column .btn a::after {
  height: 2.083vw;
  width: 2.083vw;
  top: 5.729vw;
  right: 5.208vw;
}

#side-ranclip h2 {
  text-align: center;
}
#side-ranclip h2 img {
  max-width: 220px;
}
#side-ranclip .btn {
  font-size: 3.906vw;
  margin: 5.208vw auto;
  width: 72.917vw !important;
}
#side-ranclip .btn a {
  padding: 5.208vw;
}
#side-ranclip .btn a::before {
  width: 3.125vw;
  top: 6.771vw;
  right: 5.208vw;
}
#side-ranclip .btn a::after {
  height: 2.083vw;
  width: 2.083vw;
  top: 5.729vw;
  right: 5.208vw;
}

dl.side-bnr {
  font-size: 3.385vw;
  margin-inline: auto;
  width: 92%;
}
dl.side-bnr p {
  margin: 2.604vw 0;
}
dl.side-bnr dt a {
  display: block;
  margin-inline: auto;
  width: 220px;
}
dl.side-bnr dt p {
  margin-top: 0;
}

p.side-bnr {
  font-size: 3.125vw;
  margin-bottom: 5.208vw;
  text-align: center;
}
p.side-bnr img {
  width: 220px;
}

/* =======================================
 other-service
======================================= */
#other-service {
  overflow: hidden;
  width: 100%;
}
#other-service .swiper-slide {
  background-size: 416.667vw auto !important;
  height: 39.063vw;
}
#other-service .swiper-button-next, #other-service .swiper-container-rtl .swiper-button-prev {
  width: 5.208vw;
}
#other-service .swiper-button-next:after, #other-service .swiper-button-prev:after {
  font-size: 5.208vw;
}
#other-service .swiper-button-next {
  right: 0;
}
#other-service .swiper-button-prev {
  left: 0;
}

/* =======================================
 footer
======================================= */
#footer {
  font-size: 3.125vw;
  padding: 6.51vw 0 7.813vw;
}
#footer .floatleft,
#footer .floatright {
  float: none;
}
#footer .floatleft {
  height: 235px;
  margin-bottom: 3.906vw;
  margin-inline: auto;
  position: relative;
  width: 92%;
}
#footer .floatleft iframe {
  inset: 0;
  position: absolute;
  max-width: 100%;
}
#footer .floatright {
  margin-inline: auto;
  width: 92%;
}
#footer dl dt {
  float: none;
  margin-inline: auto;
  -webkit-margin-after: 3.906vw;
          margin-block-end: 3.906vw;
  text-align: center;
}
#footer dl dt img {
  max-width: 110px;
}
#footer dl dd {
  margin: 0;
}
#footer #footer-contents p {
  float: none;
}
#footer #footer-contents p img {
  max-width: 246px;
}
#footer #footer-contents .footer-btn {
  height: 13.021vw;
  margin: 3.906vw 0 0;
  text-align: center;
  width: 100%;
}
#footer #footer-contents .footer-btn a {
  box-sizing: border-box;
  line-height: 12.5vw;
  padding: 0 2.604vw;
}
#footer small {
  font-size: 2.604vw;
}

/* =======================================
breadcrumbs
======================================= */
.breadcrumbs {
  -webkit-margin-after: 0;
          margin-block-end: 0;
}
.breadcrumbs .inner {
  display: flex;
  flex-wrap: wrap;
  font-size: 2.865vw;
  gap: 0.2em 0.5em;
  padding: 2.604vw 4.375%;
}

/* =======================================
wp-pagenavi
======================================= */
.wp-pagenavi {
  font-size: 3.646vw;
  line-height: 8.854vw;
}
.wp-pagenavi a,
.wp-pagenavi span {
  box-sizing: border-box;
  vertical-align: middle;
  width: 8.854vw;
}
.wp-pagenavi .first,
.wp-pagenavi .last {
  display: none;
}
.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink {
  font-size: 4.948vw;
}

/* =======================================
 top page
======================================= */
#mainimg {
  background-size: auto 100%;
}

#top_slider {
  width: 100%;
  background-image: url(../img/top/top_slider_bg.jpg);
  background-position: 50% 50%;
  background-size: 150% auto;
  height: 120vw;
  margin-block: 10.417vw 6vw;
}
#top_slider .swiper-container {
  width: 100%;
  min-width: inherit;
  height: 130vw;
}
#top_slider .swiper-slide {
  height: 48vw;
  height: 46.875vw;
}
#top_slider .swiper-slide .slide_inner {
  box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.3);
  width: 30.4vw;
  height: 48vw;
  border-radius: 1.302vw;
}
#top_slider .swiper-slide-active {
  width: 47.467vw !important;
  height: 74.667vw;
  margin-right: calc(3vw + 5px) !important;
  margin-left: 3vw !important;
}
#top_slider .swiper-slide-active .slide_inner {
  width: 100%;
  height: 74.667vw;
  border-radius: 1.302vw;
}
#top_slider .swiper-button-next,
#top_slider .swiper-button-prev {
  width: 10.417vw;
  height: 10.417vw;
  border-radius: 10.417vw;
}
#top_slider .swiper-button-next {
  background: url(/wp-content/themes/ryukidesign/img/top/next_btn.png) no-repeat center center;
}
#top_slider .swiper-button-prev {
  background: url(/wp-content/themes/ryukidesign/img/top/prev_btn.png) no-repeat center center;
}
#top_slider .works_number {
  text-align: right;
  bottom: 25vw;
  left: 0;
  right: 4vw;
}
#top_slider .works_number .text01 {
  margin-bottom: 2vw;
  -webkit-margin-start: auto;
          margin-inline-start: auto;
  width: 41vw;
}
#top_slider .works_number .num {
  font-size: 32vw;
  -webkit-filter: drop-shadow(0 0 0.75rem #fff) drop-shadow(0 0 0.75rem #fff);
          filter: drop-shadow(0 0 0.75rem #fff) drop-shadow(0 0 0.75rem #fff);
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
}
#top_slider .swiper_title {
  top: 105vw;
  left: 2vw;
  font-size: 15px;
  line-height: 1.4;
  padding: 0.5em 0;
}
#top_slider .swiper_title.active {
  width: 98vw;
}
#top_slider .swiper_title::before {
  clip-path: polygon(7.5% 0%, 100% 0%, 100% 100%, 0% 100%);
  right: 0;
  left: 0;
  -webkit-transform: none;
          transform: none;
}
#top_slider .swiper_title .title_inner {
  width: 95%;
}
#top_slider .swiper_title .label_text {
  font-size: 3.906vw;
  margin-left: 12vw;
}

.works_link_sp {
  margin-bottom: 7.813vw;
  margin-inline: auto;
  width: 71.615vw;
}
.works_link_sp a {
  border-radius: 1.302vw;
  box-shadow: 3px 3px 10px rgba(80, 80, 80, 0.8);
  display: block;
  overflow: hidden;
}

#top-message {
  align-items: center;
  display: flex;
  flex-direction: column-reverse;
  gap: 2.604vw;
  margin-bottom: 13.021vw;
}
#top-message .text-box {
  width: 91.25%;
  margin-right: auto;
}
#top-message .text-box h2 {
  font-size: 8.5vw;
  line-height: 1.4;
  text-align: left;
}
#top-message .text-box p {
  line-height: 2;
}
#top-message .img {
  position: static;
}

#top-client {
  -webkit-margin-after: 13.021vw;
          margin-block-end: 13.021vw;
  padding-block: 10.417vw 5.208vw;
}
#top-client .swiper-container {
  -webkit-margin-before: 5.208vw;
          margin-block-start: 5.208vw;
  margin-inline: auto;
  padding-inline: 7.813vw;
  width: 98%;
}
#top-client .swiper-wrapper {
  width: auto;
}
#top-client .swiper-slide img {
  width: 100%;
}
#top-client .swiper-button-prev,
#top-client .swiper-button-next {
  width: 7.813vw;
  height: 100%;
  background-color: #fff;
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: 3.646vw 10.417vw;
  top: 5.208vw;
}
#top-client .swiper-button-prev,
#top-client .swiper-container-rtl .swiper-button-next {
  left: 0;
}
#top-client .swiper-button-next,
#top-client .swiper-container-rtl .swiper-button-prev {
  right: 0;
}
#top-client h2 img {
  width: 95%;
}
#top-client .txt {
  width: 90%;
}

#top-service h2 {
  margin-inline: auto;
  width: 91.25%;
}
#top-service > .clearfix {
  align-items: center;
  flex-direction: column;
}
#top-service #top-support,
#top-service #top-design {
  min-height: inherit;
  width: 91.2vw;
}
#top-service .top-request {
  font-size: 5.8vw;
  padding: 0 5%;
}
#top-service .top-request li {
  background-position: 0.5em 0.95em;
  background-size: 6.771vw auto;
  padding: 0.8em 0.8em 0.8em 2em;
  width: 100%;
}
#top-service .request-img {
  margin-left: -4.35vw;
  width: 100vw;
}
#top-service .service-about {
  margin-inline: auto;
  width: 91.25%;
}
#top-service .point {
  align-items: center;
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  padding: 5.208vw 2% 5.208vw 0;
  width: 100%;
}
#top-service .point::before, #top-service .point::after {
  display: none;
}
#top-service .point img {
  max-width: 100%;
  width: auto;
}
#top-service .point dt {
  -webkit-margin-start: 0;
          margin-inline-start: 0;
  padding: 0;
}
#top-service .point dd ul {
  display: flex;
}
#top-service .point dd li {
  float: none;
  padding: 0 3.125vw 3.125vw;
}
#top-service .point dd li:nth-of-type(1)::after {
  height: 100%;
  top: 0;
}
#top-service .btn {
  font-size: 4.167vw;
  margin-block: 5.208vw;
  margin-inline: auto;
  width: 65.104vw;
}
#top-service .btn a {
  padding-block: 4.167vw;
  padding-inline: 5.208vw;
}
#top-service .btn a::before {
  width: 3.125vw;
  top: 6.25vw;
  right: 6.771vw;
}
#top-service .btn a::after {
  height: 2.083vw;
  width: 2.083vw;
  top: 5.208vw;
  right: 6.771vw;
}
#top-service #top-design {
  -webkit-margin-before: 7.813vw;
          margin-block-start: 7.813vw;
}
#top-service #top-design .request-img {
  width: 101.96vw;
}
#top-service .txt {
  margin: 10.417vw auto;
  padding: 5.208vw 8%;
}

#top-news {
  margin: 60px auto;
}
#top-news article {
  font-size: 15px;
  padding: 20px 20px 20px 54px;
}
#top-news article::before {
  content: "";
  left: 20px;
}
#top-news article::after {
  left: 26px;
}
#top-news article p {
  display: block;
  padding-left: 0;
}

#top-result {
  margin: 20.833vw auto;
}

#top-tab {
  padding-top: 54vw;
}
#top-tab h3 {
  font-family: "Noto Sans JP";
  font-size: 4.688vw;
  font-weight: bold;
  line-height: 6.25vw;
  text-align: center;
  margin-bottom: 7.813vw;
}
#top-tab h3 img {
  margin-right: 2.604vw;
  width: auto;
  vertical-align: middle;
}
#top-tab label {
  font-size: 3.906vw;
  line-height: 10.417vw;
  height: 12vw;
  min-width: inherit;
  width: 44vw;
}
#top-tab label#top-tab01L {
  left: 4.35vw;
  top: 4.3vw;
}
#top-tab label#top-tab02L {
  left: inherit;
  right: 4.35vw;
  top: 4.3vw;
}
#top-tab label#top-tab03L {
  left: 4.35vw;
  top: 20.6vw;
}
#top-tab label#top-tab04L {
  left: inherit;
  right: 4.35vw;
  top: 20.6vw;
}
#top-tab label#top-tab05L {
  left: 4.35vw;
  right: inherit;
  top: 36vw;
}
#top-tab label#top-tab06L {
  right: 4.35vw;
  top: 36vw;
}
#top-tab input[type=radio]:checked + label::before {
  border-width: 1.8vw 1.8vw 0;
  bottom: -1.8vw;
  left: calc(50% - 1.8vw);
}
#top-tab input[type=radio]#top-tab01:checked ~ #top-tab01M,
#top-tab input[type=radio]#top-tab02:checked ~ #top-tab02M,
#top-tab input[type=radio]#top-tab03:checked ~ #top-tab03M,
#top-tab input[type=radio]#top-tab04:checked ~ #top-tab04M,
#top-tab input[type=radio]#top-tab05:checked ~ #top-tab05M,
#top-tab input[type=radio]#top-tab06:checked ~ #top-tab06M {
  padding: 7.813vw 0;
}

#top-tab .result-list {
  -webkit-padding-after: 0;
          padding-block-end: 0;
}

.result-list {
  margin-inline: auto;
  width: 91.25%;
}
.result-list ul {
  display: flex;
  gap: 6vw 0;
  flex-wrap: wrap;
  width: 100%;
}
.result-list li {
  box-sizing: border-box;
  float: inherit;
  margin: 0;
  padding: 0 3%;
  width: 50%;
}
.result-list li .result-company {
  font-size: 3.125vw;
}
.result-list li .result-company span {
  max-width: calc(100% - 1.5em);
}
.result-list li .result-name {
  font-size: 4.167vw;
  max-width: 100%;
}
.result-list li .result-txt {
  font-size: 3.125vw;
}
.result-list .result-category {
  font-size: 2.865vw;
}
.result-list .btn-area {
  align-items: center;
  display: flex;
  gap: 2.604vw;
  flex-direction: column;
  margin-top: 10.417vw;
}
.result-list .btn-area .btn {
  font-size: 4.167vw;
  margin: 0 2.604vw;
  width: 65.104vw;
}
.result-list .btn-area .btn a {
  padding: 4.688vw 5.208vw;
}
.result-list .btn-area .btn a::before {
  width: 3.125vw;
  top: 6.771vw;
  right: 7.813vw;
}
.result-list .btn-area .btn a::after {
  height: 2.083vw;
  width: 2.083vw;
  top: 5.729vw;
  right: 7.813vw;
}
.result-list#top-tab04M.result-list li .result-thumb {
  aspect-ratio: 1/1;
  height: auto;
  width: 100%;
}
.result-list#top-tab04M.result-list li .result-thumb img {
  -o-object-fit: cover;
     object-fit: cover;
  max-height: 100% !important;
  width: auto !important;
  max-width: 100% !important;
}
.result-list#top-tab06M li .result-thumb {
  overflow-y: hidden;
  max-height: 283px;
}

#top-reason {
  margin: 20.833vw auto;
}

#top-reason h2 {
  margin-bottom: 13.021vw;
}

#top-reason h3 {
  margin: 7.813vw 0;
}

#top-reason .txt {
  margin-bottom: 15.625vw;
}

#top-reason {
  margin: 20.833vw auto;
}
#top-reason .txt {
  margin-inline: auto;
  margin-bottom: 7.813vw;
  width: 91.25%;
}

#top-voice {
  margin: 20.833vw auto;
}
#top-voice h2 {
  border-bottom: 0;
  font-size: 4.688vw;
  letter-spacing: 0.04em;
  line-height: 2.5;
  margin-bottom: 5.208vw;
}
#top-voice h2 span {
  display: block;
  text-align: center;
  padding: 0 5.208vw;
}
#top-voice h2 span img {
  width: auto;
  margin-right: 2.604vw;
}
#top-voice .voice-catch {
  font-size: 5.208vw;
  margin-inline: auto;
  margin-block: 5.208vw;
  width: 91.25%;
}
#top-voice .voice-body {
  margin-inline: auto;
  position: relative;
  width: 91.25%;
}
#top-voice .voice-body .floatleft,
#top-voice .voice-body .floatright {
  float: inherit;
}
#top-voice .lp {
  height: 50vw;
  -webkit-margin-end: 0;
          margin-inline-end: 0;
  -webkit-margin-start: auto;
          margin-inline-start: auto;
  overflow: hidden;
  width: 37.5vw;
}
#top-voice .lp img {
  max-height: 100%;
  max-width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#top-voice .voice-section {
  padding-top: 5.5vw;
  width: 100%;
}
#top-voice .voice-section .avatar {
  height: 50vw;
  left: 0;
  overflow: hidden;
  top: 0;
  position: absolute;
}
#top-voice .voice-section .avatar img {
  max-height: 100%;
  max-width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#top-voice dl {
  font-size: 4.167vw;
  width: 100%;
}
#top-voice dl dt {
  border-bottom: 0;
}
#top-voice dl dd {
  -webkit-margin-start: 0;
          margin-inline-start: 0;
  -webkit-padding-start: 4em;
          padding-inline-start: 4em;
}
#top-voice .txt {
  font-size: 3.385vw;
  margin-block: 7.813vw;
  width: 100%;
}
#top-voice .btn {
  font-size: 4.167vw;
  width: 65.104vw;
}
#top-voice .btn a {
  padding: 4.688vw 5.208vw;
}
#top-voice .btn a::before {
  width: 3.125vw;
  top: 6.771vw;
  right: 7.813vw;
}
#top-voice .btn a::after {
  height: 2.083vw;
  width: 2.083vw;
  top: 5.729vw;
  right: 7.813vw;
}

.page-tit {
  border-bottom: 3px solid #333;
  font-size: 5.208vw;
  letter-spacing: 0.14em;
  line-height: 2.5;
  -webkit-margin-after: 7.813vw;
          margin-block-end: 7.813vw;
  -webkit-padding-before: 7.813vw;
          padding-block-start: 7.813vw;
  padding-inline: 4.375%;
}

.page-tit::after {
  display: none;
}

.page-tit span {
  font-size: 3.125vw;
  margin-left: 1.5em;
}

/* =======================================
 worth
======================================= */
#worth-about-header {
  background: url(../img/page/worth_about_bg_01.png);
  height: 340px;
  width: 100%;
}

#worth-about-header .floatleft {
  margin-left: 60px;
}

#worth-about-header .floatright {
  color: #FFF;
  margin-right: 60px;
  padding-top: 60px;
  width: 420px;
}

#worth-about-header .floatright p {
  font-size: 18px;
  line-height: 140%;
}

#worth-about-header .worth-header-tit {
  font-size: 38px;
  font-weight: bold;
  line-height: 140%;
  margin-bottom: 20px;
}

#worth-about-body .worth-about-box {
  height: 346px;
  width: 480px;
}

#worth-about-body .worth-about-box h3, #worth-about-body .worth-about-box p {
  margin-bottom: 6px;
  width: 340px;
}

#worth-about-body .worth-about-box h3 {
  color: #1BB2CB;
  font-family: "Century Gothic", CenturyGothic, AppleGothic, sans-serif;
  font-size: 48px;
  font-weight: bold;
  line-height: 1;
}

#worth-about-body .worth-about-box p {
  font-size: 19px;
  line-height: 140%;
}

#worth-about-body .worth-about-box.floatleft h3, #worth-about-body .worth-about-box.floatleft p {
  padding: 0 30px 0 110px;
}

#worth-about-body .worth-about-box.floatright h3, #worth-about-body .worth-about-box.floatright p {
  padding: 0 106px 0 34px;
}

#worth-about-body #worth-about-col01 {
  background: url(../img/page/worth_about_bg_02.png);
}

#worth-about-body #worth-about-col01 h3 {
  padding-top: 40px;
}

#worth-about-body #worth-about-col02 {
  background: url(../img/page/worth_about_bg_03.png);
}

#worth-about-body #worth-about-col02 h3 {
  padding-top: 40px;
}

#worth-about-body #worth-about-col03 {
  background: url(../img/page/worth_about_bg_04.png);
  height: 392px;
}

#worth-about-body #worth-about-col03 h3 {
  padding-top: 50px;
}

#worth-about-body #worth-about-col04 {
  background: url(../img/page/worth_about_bg_05.png);
  height: 392px;
}

#worth-about-body #worth-about-col04 h3 {
  padding-top: 50px;
}

#worth-confidence ul {
  background: url(../img/page/worth_confidence_bg_01.png);
  box-sizing: border-box;
  padding: 20px 80px;
  height: 214px;
  width: 100%;
}

#worth-confidence ul li {
  background: #FFF;
  border-radius: 50%;
  color: #1BB2CB;
  display: -webkit-flex;
  -webkit-align-items: center;
  -webkit-justify-content: center;
  display: -moz-flex;
  -moz-align-items: center;
  -moz-justify-content: center;
  display: -ms-flex;
  -ms-align-items: center;
  -ms-justify-content: center;
  display: -o-flex;
  -o-align-items: center;
  -o-justify-content: center;
  display: flex;
  align-items: center;
  justify-content: center;
  float: left;
  font-size: 21px;
  font-weight: bold;
  line-height: 140%;
  margin: 0 10px;
  overflow: hidden;
  height: 178px;
  width: 178px;
}

#worth-confidence ul li p {
  text-align: center;
}

#worth-compare {
  background: url(../img/page/worth_confidence_bg_02.png);
  height: 600px;
  width: 100%;
  position: relative;
}

#worth-compare div {
  color: #FFF;
  font-size: 20px;
  font-weight: bold;
  line-height: 150%;
  position: absolute;
  text-align: center;
}

#worth-compare div#worth-compare01 {
  width: 226px;
  top: 200px;
  left: 14px;
}

#worth-compare div#worth-compare02 {
  width: 260px;
  top: 406px;
  left: 14px;
}

#worth-compare div#worth-compare03 {
  width: 250px;
  top: 160px;
  right: 14px;
}

#worth-compare div#worth-compare04 {
  width: 220px;
  top: 426px;
  right: 14px;
}

.worth-btn {
  font-size: 26px;
  letter-spacing: 0.1em;
  line-height: 80px;
  margin: 40px auto;
  text-align: center;
  height: 80px;
  width: 850px;
}

.worth-btn a {
  background: #35c7c5;
  background: linear-gradient(to right, #35c7c5 0%, #0085e1 100%);
  border-radius: 40px;
  color: #FFF;
  display: block;
  position: relative;
}

.worth-btn a:hover {
  background: linear-gradient(to right, rgba(53, 199, 197, 0.8) 0%, rgba(0, 133, 225, 0.8) 100%);
}

.worth-btn a::before {
  content: "";
  background: #FFF;
  border-radius: 50%;
  height: 34px;
  width: 34px;
  position: absolute;
  top: 24px;
  right: 60px;
}

.worth-btn a::after {
  content: "";
  border-color: transparent transparent transparent #058BDE;
  border-style: solid;
  border-width: 8px 0 8px 10px;
  height: 0;
  width: 0;
  position: absolute;
  top: 33px;
  right: 70px;
}

/* =======================================
 difference-header
======================================= */
#difference {
  font-size: 4.167vw;
  line-height: 1.8;
}

#difference-header {
  background: transparent;
  height: unset;
}
#difference-header h3 {
  margin-left: 0;
}
#difference-header #difference-txt {
  font-size: 3.646vw;
  line-height: 180%;
  margin: 5.208vw 0 0;
  width: 100%;
}
#difference-header #difference-txt p {
  margin-inline: auto;
  width: 91.25%;
}
#difference-header .difference-txt-image {
  -webkit-margin-before: 5.208vw;
          margin-block-start: 5.208vw;
  max-width: 500px;
  width: 100%;
}

#difference-moreover {
  padding-bottom: 76vw;
}
#difference-moreover #difference-moreover-col {
  background: url(../img/page/difference_moreover_bg_sp.jpg) 100% 100% no-repeat #fff;
  background-size: 20% auto;
  border: solid #8cc63f;
  border-width: 7.813vw 5.208vw;
  box-sizing: border-box;
  height: unset;
  margin-bottom: 13.021vw;
  position: relative;
  width: 100%;
}
#difference-moreover #difference-moreover-col h4 {
  font-size: 7vw;
  margin-inline: auto;
  padding: 5.208vw 0 0;
  width: 90%;
}
#difference-moreover #difference-moreover-col p {
  font-size: 3.385vw;
  margin-inline: auto;
  padding: 0 0 5.208vw 0;
  -webkit-text-decoration: underline dashed;
          text-decoration: underline dashed;
  text-decoration-color: #ccc;
  -webkit-text-decoration-skip-ink: none;
          text-decoration-skip-ink: none;
  text-decoration-thickness: 0.08em;
  text-underline-offset: 0.5em;
  width: 90%;
}
#difference-moreover #difference-moreover-col p strong {
  font-size: 4.167vw;
}
#difference-moreover .difference-moreover-image {
  -webkit-margin-after: 5.208vw;
          margin-block-end: 5.208vw;
  margin-inline: auto;
  width: 90%;
}
#difference-moreover .difference-moreover-and {
  bottom: 0;
  left: 50%;
  position: absolute;
  -webkit-transform: translate(-50%, 16.927vw);
          transform: translate(-50%, 16.927vw);
  width: 41.667vw;
}
#difference-moreover p.aligncenter {
  font-size: 3.646vw;
  line-height: 1.6;
  margin-block: 6.51vw;
  padding: 0 4%;
}
#difference-moreover #moreover-txt-02 {
  font-size: 10.5vw;
}

#difference-all {
  background: url(../img/page//difference_all_bg_sp.png) 0 0/100% auto no-repeat;
  -webkit-margin-before: -76vw;
          margin-block-start: -76vw;
}
#difference-all h3 {
  margin-bottom: 15vw;
}

#difference-all-body {
  background: #fff;
  height: unset;
  width: 100%;
  padding-top: 5vw;
  position: relative;
}
#difference-all-body #difference-all-txt {
  font-size: 3.646vw;
  margin-inline: auto;
  width: 91.25%;
  position: static;
}
#difference-all-body .difference-all-image01 {
  margin-block: 3vw;
  margin-inline: auto;
  width: 75%;
}

.difference-bgCross {
  padding-top: 13.021vw;
}

#difference-attention {
  margin-top: 0;
  width: 91.25%;
}
#difference-attention .floatleft {
  float: unset;
  margin-block: 4.167vw;
  margin-inline: 0;
  text-align: center;
}
#difference-attention .floatleft img {
  width: auto;
}
#difference-attention .floatright {
  float: unset;
  margin-block: 4.167vw;
  margin-inline: auto;
  width: 90%;
}
#difference-attention .floatright p {
  font-size: 3.646vw;
}

#difference-elaborate-01::after {
  background: #fff;
  content: "";
  display: block;
  height: 13.021vw;
  width: 100%;
}
#difference-elaborate-01 .difference-elaborate-col {
  background: #FFF;
  height: unset;
}
#difference-elaborate-01 .difference-elaborate-txt {
  font-size: 3.646vw;
  margin-inline: auto;
  padding-top: 5.208vw;
  width: 91.25%;
}
#difference-elaborate-01 dl {
  margin-inline: 0;
  padding-bottom: 5.208vw;
  width: 100%;
}
#difference-elaborate-01 dl dt {
  background: #000;
  line-height: 1;
  margin-bottom: 3.125vw;
  padding: 2.604vw 4%;
}
#difference-elaborate-01 dl dt img {
  width: 71.615vw;
}
#difference-elaborate-01 dl dd {
  box-sizing: border-box;
  margin-inline: auto;
  padding-right: 1%;
  width: 91.25%;
}
#difference-elaborate-01 .difference-elaborate-box {
  background: #fff;
  border: 6px solid #073397;
  height: unset;
  margin-inline: auto;
  position: relative;
  width: 91.25%;
}
#difference-elaborate-01 .difference-elaborate-box::before {
  border: 1px solid #073397;
  content: "";
  height: calc(100% - 10px);
  inset: 4px;
  position: absolute;
  width: calc(100% - 10px);
}
#difference-elaborate-01 .difference-elaborate-box::after {
  clear: both;
  content: "";
  display: block;
  width: 100%;
}
#difference-elaborate-01 .difference-elaborate-box h5 {
  padding: 7.813vw 5.208vw 5.208vw;
  position: relative;
  z-index: 1;
}
#difference-elaborate-01 .difference-elaborate-box p {
  font-size: 3.646vw;
  -webkit-margin-after: 5.208vw;
          margin-block-end: 5.208vw;
  margin-inline: 5.208vw;
  position: relative;
  width: auto;
  z-index: 1;
}
#difference-elaborate-01 .difference-elaborate-box-image {
  float: left;
  width: 45%;
}

#difference-elaborate-02::after {
  background: #fff;
  content: "";
  display: block;
  height: 13.021vw;
  width: 100%;
}
#difference-elaborate-02 .difference-elaborate-col {
  height: unset;
  padding: 0 0 9.115vw;
}
#difference-elaborate-02 .difference-elaborate-txt {
  clear: both;
  float: unset;
  font-size: 3.646vw;
  margin-inline: auto;
  padding-top: 5.208vw;
  width: 91.25%;
}
#difference-elaborate-02 .pt36 {
  clear: both;
  padding-top: 9.375vw;
}
#difference-elaborate-02 .pt36 .floatright {
  float: unset;
  margin-inline: auto;
  padding: 5.208vw 0 0;
  text-align: center;
  width: 91.25%;
}
#difference-elaborate-02 dl {
  float: unset;
  width: 100%;
}
#difference-elaborate-02 dl dt {
  line-height: 1;
  margin-bottom: 3.125vw;
  padding: 2.604vw 4%;
}
#difference-elaborate-02 dl dt img {
  width: 71.615vw;
}
#difference-elaborate-02 dl dd {
  box-sizing: border-box;
  margin-inline: auto;
  padding-left: 0;
  padding-right: 6.5%;
  width: 91.25%;
}
#difference-elaborate-02 .difference-elaborate-box {
  background: #fff;
  border: 6px solid #c10014;
  height: unset;
  margin-inline: auto;
  position: relative;
  width: 91.25%;
}
#difference-elaborate-02 .difference-elaborate-box::before {
  border: 1px solid #c10014;
  content: "";
  height: calc(100% - 10px);
  inset: 4px;
  position: absolute;
  width: calc(100% - 10px);
}
#difference-elaborate-02 .difference-elaborate-box h5 {
  padding: 7.813vw 5.208vw 5.208vw;
  position: relative;
  z-index: 1;
}
#difference-elaborate-02 .difference-elaborate-box p {
  font-size: 3.646vw;
  -webkit-margin-after: 5.208vw;
          margin-block-end: 5.208vw;
  margin-inline: 5.208vw;
  position: relative;
  width: auto;
  z-index: 1;
}
#difference-elaborate-02 .difference-elaborate-box-image {
  float: right;
  width: 45%;
}

#difference-elaborate-03 .difference-elaborate-col {
  background: #fff;
  height: unset;
}
#difference-elaborate-03 .difference-elaborate-txt {
  font-size: 3.646vw;
  margin-inline: auto;
  padding-top: 5.208vw;
  width: 91.25%;
}
#difference-elaborate-03 dl {
  float: unset;
  margin-inline: 0;
  padding-bottom: 5.208vw;
  width: 100%;
}
#difference-elaborate-03 dl dt {
  background: #000;
  line-height: 1;
  margin-bottom: 3.125vw;
  padding: 2.604vw 4%;
}
#difference-elaborate-03 dl dt img {
  width: 71.615vw;
}
#difference-elaborate-03 dl dd {
  box-sizing: border-box;
  margin-inline: auto;
  width: 91.25%;
}
#difference-elaborate-03 .difference-elaborate-box {
  background: #fff;
  border: 6px solid #8cc63f;
  height: unset;
  margin-inline: auto;
  position: relative;
  width: 91.25%;
}
#difference-elaborate-03 .difference-elaborate-box::before {
  border: 1px solid #8cc63f;
  content: "";
  height: calc(100% - 10px);
  inset: 4px;
  position: absolute;
  width: calc(100% - 10px);
}
#difference-elaborate-03 .difference-elaborate-box::after {
  clear: both;
  content: "";
  display: block;
  width: 100%;
}
#difference-elaborate-03 .difference-elaborate-box h5 {
  padding: 7.813vw 5.208vw 5.208vw;
  position: relative;
  z-index: 1;
}
#difference-elaborate-03 .difference-elaborate-box p {
  font-size: 3.646vw;
  -webkit-margin-after: 5.208vw;
          margin-block-end: 5.208vw;
  margin-inline: 5.208vw;
  position: relative;
  width: auto;
  z-index: 1;
}
#difference-elaborate-03 .difference-elaborate-box-image {
  float: left;
  width: 45%;
}

.difference-zero-inner {
  background: url(../img/page/difference_prepare_bg_01_sp.png) 0 100%/100% auto no-repeat;
  padding-block: 5.208vw 15.625vw;
  position: relative;
}
.difference-zero-inner::before {
  background: #fff;
  content: "";
  display: block;
  height: calc(100% - 104.167vw);
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

#difference-prepare-01 {
  background: #fff;
  box-shadow: 5px 5px 0 rgba(0, 0, 0, 0.2);
  height: auto;
  margin-inline: auto;
  padding-block: 27.344vw 6.51vw;
  position: relative;
  width: 88%;
  z-index: 5;
}
#difference-prepare-01 h4 {
  left: -6%;
  -webkit-margin-after: 0;
          margin-block-end: 0;
  -webkit-padding-before: 0;
          padding-block-start: 0;
  position: absolute;
  top: 0;
  width: 100vw;
}
#difference-prepare-01 .clearfix {
  width: 85%;
}
#difference-prepare-01 dl {
  float: none;
  -webkit-margin-before: 3.906vw;
          margin-block-start: 3.906vw;
  width: 100%;
}
#difference-prepare-01 dt {
  margin-bottom: 20px;
}
#difference-prepare-01 dd {
  font-size: 4.167vw;
  width: 100%;
}

.difference-prepare-txt04 {
  -webkit-margin-before: 10.417vw;
          margin-block-start: 10.417vw;
}

.difference-prepare-txt-120p {
  margin-left: -10%;
  width: 120%;
}

#difference-service {
  background: transparent;
  height: auto;
  margin-inline: auto;
  margin-top: 5.208vw;
  padding-bottom: 5.208vw;
  width: 92%;
  position: relative;
}
#difference-service ul {
  display: flex;
  flex-direction: column;
  gap: 3.906vw;
}
#difference-service ul li {
  background: #fff;
  border-radius: 2.604vw;
  box-shadow: 0.651vw 0.651vw 2.604vw rgba(0, 0, 0, 0.5);
  overflow: hidden;
  position: static;
  width: 100%;
}
#difference-service ul li h5 {
  background-color: #c10014;
  background-repeat: no-repeat;
  background-position: 4% 50%;
  background-size: 10.417vw auto;
  font-size: 5.208vw;
  padding: 3.255vw 3.255vw 3.255vw 18%;
}
#difference-service ul li p {
  font-size: 3.646vw;
  margin-block: 5.208vw;
  width: 92%;
}
#difference-service ul li#difference-service-01 h5 {
  background-image: url(../img/page/difference-service_icon_01.svg);
}
#difference-service ul li#difference-service-02 h5 {
  background-image: url(../img/page/difference-service_icon_02.svg);
}
#difference-service ul li#difference-service-03 h5 {
  background-image: url(../img/page/difference-service_icon_03.svg);
}
#difference-service ul li#difference-service-04 h5 {
  background-image: url(../img/page/difference-service_icon_04.svg);
}
#difference-service ul li#difference-service-05 h5 {
  background-image: url(../img/page/difference-service_icon_05.svg);
}

#difference .result-list {
  width: 100%;
}
#difference .result-list h3 {
  margin-left: -40%;
  width: 180%;
}

/* =======================================
 cflow
======================================= */
#cflow h2 {
  -webkit-margin-after: 7.813vw;
          margin-block-end: 7.813vw;
}

.cflow-step-col {
  line-height: 180%;
}
.cflow-step-col .cflow-step-sub {
  font-size: 4.427vw;
  letter-spacing: 0.08em;
}

#cflow-step-01 {
  background-image: url(../img/page/cflow_num_01.svg);
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 78.125vw auto;
  height: auto;
}
#cflow-step-01 h3, #cflow-step-01 p {
  margin-inline: auto;
}
#cflow-step-01 h3 {
  -webkit-margin-after: 3.646vw;
          margin-block-end: 3.646vw;
  -webkit-margin-start: 4.375%;
          margin-inline-start: 4.375%;
  -webkit-padding-before: 36.458vw;
          padding-block-start: 36.458vw;
}
#cflow-step-01 h3 img {
  width: 91.146vw;
}
#cflow-step-01 .cflow-step-sub {
  -webkit-margin-after: 7.813vw;
          margin-block-end: 7.813vw;
  width: 91.25%;
}
#cflow-step-01 .cflow-txt {
  margin-inline: auto;
  width: 91.25%;
}
#cflow-step-01 .cflow-image {
  margin-inline: auto 0;
  -webkit-padding-end: 5%;
          padding-inline-end: 5%;
  position: relative;
  width: 80%;
}
#cflow-step-01 .cflow-image img {
  position: relative;
  z-index: 1;
}
#cflow-step-01 .cflow-image figcaption {
  background: #c10014;
  bottom: 9.115vw;
  box-sizing: border-box;
  color: #fff;
  font-size: 3.125vw;
  letter-spacing: 0.04em;
  line-height: 1.4;
  padding-block: 1.302vw;
  -webkit-padding-start: 11.068vw;
          padding-inline-start: 11.068vw;
  position: absolute;
  right: 0;
  width: 49.479vw;
}

#cflow-step-02 {
  background-color: #f7f7f7;
  background-image: url(../img/page/cflow_num_02.svg);
  background-position: 140% 0;
  background-repeat: no-repeat;
  background-size: 78.125vw auto;
  clip-path: polygon(0 3%, 100% 0, 100% 100%, 0 97%);
  height: auto;
  padding-block: 42.969vw 16.927vw;
  width: 100%;
  z-index: 1;
}
#cflow-step-02 h3 {
  background: #073397;
  box-sizing: border-box;
  clip-path: polygon(0 0, 95% 0, 100% 100%, 0 100%);
  font-size: 4.427vw;
  line-height: 1.6;
  -webkit-margin-after: 5.208vw;
          margin-block-end: 5.208vw;
  padding-block: 2.604vw;
  padding-inline: 3.906vw 7.813vw;
  width: 91.25%;
}
#cflow-step-02 .cflow-step-tit {
  -webkit-margin-after: 3.646vw;
          margin-block-end: 3.646vw;
  -webkit-margin-start: 5.208vw;
          margin-inline-start: 5.208vw;
}
#cflow-step-02 .cflow-step-tit img {
  width: 72.005vw;
}
#cflow-step-02 .cflow-step-sub {
  background: url(../img/page/cflow_sp_persons_01@2x.png) 0 100% no-repeat;
  background-size: auto 5.208vw;
  letter-spacing: 0.08em;
  -webkit-margin-before: 5.208vw;
          margin-block-start: 5.208vw;
  margin-inline: auto;
  -webkit-padding-after: 6.51vw;
          padding-block-end: 6.51vw;
  width: 91.25%;
}
#cflow-step-02 .cflow-txt {
  background: #fff;
  border-radius: 2.604vw;
  box-sizing: border-box;
  -webkit-filter: drop-shadow(3px 3px 3px rgba(0, 0, 0, 0.3));
          filter: drop-shadow(3px 3px 3px rgba(0, 0, 0, 0.3));
  -webkit-margin-before: 5.208vw;
          margin-block-start: 5.208vw;
  margin-inline: auto;
  padding-block: 5.208vw;
  padding-inline: 5.208vw;
  position: relative;
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
  width: 91.25%;
}
#cflow-step-02 .cflow-txt::after {
  background: #fff;
  bottom: -14.323vw;
  clip-path: polygon(100% 0, 25% 0, 0 100%);
  content: "";
  display: block;
  height: 15.625vw;
  position: absolute;
  right: 15.625vw;
  width: 10.417vw;
}
#cflow-step-02 .cflow-image {
  -webkit-margin-before: -10.417vw;
          margin-block-start: -10.417vw;
  position: relative;
  width: 80%;
}
#cflow-step-02 .cflow-image img {
  -webkit-margin-start: 5%;
          margin-inline-start: 5%;
  position: relative;
  z-index: 1;
}
#cflow-step-02 .cflow-image figcaption {
  background: #073397;
  bottom: 9.115vw;
  box-sizing: border-box;
  color: #fff;
  font-size: 3.125vw;
  letter-spacing: 0.04em;
  left: 0;
  line-height: 1.4;
  padding-block: 1.302vw;
  -webkit-padding-start: 5.208vw;
          padding-inline-start: 5.208vw;
  position: absolute;
  width: 53.385vw;
}
#cflow-step-02 .cflow-note {
  margin-inline: auto;
  position: static;
  width: 91.25%;
}

#cflow-step-03 {
  background: url(../img/page/cflow_bg_03.png) no-repeat 0 top, url(../img/page/cflow_bg_04.png) no-repeat 0 bottom;
  background-image: url(../img/page/cflow_num_03.svg);
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 78.125vw auto;
  height: auto;
  -webkit-margin-before: -13.021vw;
          margin-block-start: -13.021vw;
  width: 100%;
}
#cflow-step-03 h3 {
  -webkit-margin-after: -2.604vw;
          margin-block-end: -2.604vw;
  -webkit-margin-start: 5.208vw;
          margin-inline-start: 5.208vw;
  -webkit-padding-before: 45.573vw;
          padding-block-start: 45.573vw;
  position: relative;
  z-index: 1;
}
#cflow-step-03 h3 img {
  width: 81.771vw;
}
#cflow-step-03 .cflow-image01 {
  -webkit-margin-after: -2.604vw;
          margin-block-end: -2.604vw;
  margin-inline: auto -18%;
  width: 80%;
}
#cflow-step-03 .cflow-step-sub {
  background: url(../img/page/cflow_sp_persons_02@2x.png) 0 100% no-repeat;
  background-size: auto 5.208vw;
  box-sizing: border-box;
  left: 4.375%;
  -webkit-margin-after: 0;
          margin-block-end: 0;
  margin-inline: auto;
  top: 85.938vw;
  -webkit-padding-after: 6.51vw;
          padding-block-end: 6.51vw;
  -webkit-padding-end: 13.021vw;
          padding-inline-end: 13.021vw;
  position: absolute;
  width: 52.083vw;
}
#cflow-step-03 h4 {
  background: #8cc63f;
  font-size: 3.906vw;
  letter-spacing: 0.04em;
  line-height: 2;
  -webkit-margin-after: 0;
          margin-block-end: 0;
}
#cflow-step-03 #cflow-step-03-01 {
  display: flex;
  inset: 0;
  -webkit-margin-after: -2.604vw;
          margin-block-end: -2.604vw;
  position: relative;
  width: 100%;
}
#cflow-step-03 #cflow-step-03-01::before {
  background: url(../img/page/cflow_arrow_01@2x.png) 50%/contain no-repeat;
  content: "";
  display: block;
  height: 21.484vw;
  left: 32.552vw;
  position: absolute;
  top: -15.365vw;
  width: 24.87vw;
}
#cflow-step-03 #cflow-step-03-01 .cflow-image02 {
  -webkit-margin-start: -7%;
          margin-inline-start: -7%;
  position: relative;
  width: 55%;
  z-index: 1;
}
#cflow-step-03 #cflow-step-03-01 .cflow-step-content {
  -webkit-padding-before: 20.833vw;
          padding-block-start: 20.833vw;
  position: relative;
  width: 48%;
}
#cflow-step-03 #cflow-step-03-01 h4 {
  box-sizing: border-box;
  clip-path: polygon(0 0, 95% 0, 100% 100%, 0 100%);
  left: -18.229vw;
  min-width: 57.292vw;
  padding-inline: 18.229vw 6.51vw;
  position: absolute;
  top: 10.417vw;
}
#cflow-step-03 #cflow-step-03-01 .cflow-txt {
  background: url(../img/page/cflow_sp_persons_03@2x.png) 0 100% no-repeat;
  background-size: auto 5.208vw;
  -webkit-padding-after: 6.51vw;
          padding-block-end: 6.51vw;
  width: 100%;
}
#cflow-step-03 #cflow-step-03-02 {
  background: url(../img/page/cflow_sp_persons_04@2x.png) 10% 100% no-repeat;
  background-size: auto 5.208vw;
  display: flex;
  flex-direction: row-reverse;
  inset: 0;
  margin-inline: auto 0;
  -webkit-padding-after: 6.51vw;
          padding-block-end: 6.51vw;
  position: relative;
  width: 95.625%;
}
#cflow-step-03 #cflow-step-03-02::before {
  background: url(../img/page/cflow_arrow_02@2x.png) 50%/contain no-repeat;
  content: "";
  display: block;
  height: 23.828vw;
  left: 31.901vw;
  position: absolute;
  top: -18.229vw;
  width: 31.771vw;
}
#cflow-step-03 #cflow-step-03-02 .cflow-image03 {
  -webkit-margin-end: -7%;
          margin-inline-end: -7%;
  position: relative;
  width: 55%;
  z-index: 1;
}
#cflow-step-03 #cflow-step-03-02 .cflow-step-content {
  -webkit-padding-before: 20.833vw;
          padding-block-start: 20.833vw;
  position: relative;
  width: 48%;
}
#cflow-step-03 #cflow-step-03-02 h4 {
  box-sizing: border-box;
  clip-path: polygon(5% 0, 100% 0, 100% 100%, 0 100%);
  font-size: 3.906vw;
  left: -6.51vw;
  line-height: 2;
  -webkit-margin-after: 0;
          margin-block-end: 0;
  min-width: 78.125vw;
  padding-inline: 6.51vw 18.229vw;
  position: absolute;
  top: 10.417vw;
}

#cflow-caution {
  background: url(../img/page/cflow_bg_05_sp.jpg) 50% 100%/cover no-repeat;
  height: auto;
  margin-block: 9.115vw;
  padding-block: 5.208vw;
  width: 91.25%;
}
#cflow-caution h3 {
  -webkit-margin-after: 5.208vw;
          margin-block-end: 5.208vw;
  padding-block: 0;
  padding-inline: 0;
  width: 100%;
}
#cflow-caution p {
  margin-block: 5.208vw 0;
  margin-inline: auto;
  padding-inline: 0;
  width: 90%;
}
#cflow-caution p.fon12 {
  font-size: 85% !important;
  -webkit-margin-after: 2.604vw;
          margin-block-end: 2.604vw;
}

#cflow-criterion {
  padding-block: 6.51vw 19.531vw;
  position: relative;
}
#cflow-criterion h3 {
  text-align: center;
}
#cflow-criterion h3 img {
  max-width: 320px;
  width: 60%;
}
#cflow-criterion #cflow-criterion-date {
  font-size: 4.167vw;
  line-height: 2;
  height: auto;
  margin-block: 3.906vw;
  padding-block: 0.125em;
  width: 78.125vw;
}
#cflow-criterion ol {
  margin-block: 5.208vw 2.604vw;
  -webkit-margin-start: 4.427vw;
          margin-inline-start: 4.427vw;
  width: 93.75vw;
}
#cflow-criterion ol li img {
  height: 27.604vw;
  width: auto;
}
#cflow-criterion #cflow-criterion-note {
  font-size: 2.865vw;
  -webkit-margin-start: 23.438vw;
          margin-inline-start: 23.438vw;
}
#cflow-criterion #cflow-criterion-note a {
  bottom: 7.813vw;
  border-radius: 2.604vw;
  font-size: 3.385vw;
  letter-spacing: 0.08em;
  left: 3.906vw;
  padding-block: 2.604vw;
  padding-inline: 0;
  position: absolute;
  text-align: center;
  width: 58.594vw;
}
#cflow-criterion #cflow-criterion-note a::after {
  border-width: 1.563vw 0 1.563vw 1.563vw;
  right: 3.255vw;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

/* =======================================
 material
======================================= */
#material {
  -webkit-padding-before: 3.906vw;
          padding-block-start: 3.906vw;
}

#material-header {
  background: url(../img/page/material_bg_01_sp.jpg) 0/cover no-repeat;
  flex-wrap: wrap;
  height: auto;
  gap: 11.719vw 0;
  padding-block: 9.115vw 15.625vw;
  padding-inline: 4.427vw;
}
#material-header .material-header-col {
  border-radius: 2.083vw;
  height: auto;
  -webkit-padding-after: 2.604vw;
          padding-block-end: 2.604vw;
  width: 40.365vw;
}
#material-header .material-header-col.plus-a {
  margin-inline: 0;
  width: 100%;
}
#material-header .material-header-col .material-num {
  left: 50%;
  top: 0;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 9.115vw;
}
#material-header .material-header-col h3 {
  -webkit-margin-after: 2.604vw;
          margin-block-end: 2.604vw;
  margin-inline: auto;
  -webkit-padding-before: 7.161vw;
          padding-block-start: 7.161vw;
  width: 36.719vw;
}
#material-header .material-header-col p {
  margin-inline: auto;
  text-align: center;
  width: 36.719vw;
}
#material-header .material-header-col.num02 h3 {
  -webkit-margin-after: 2.604vw;
          margin-block-end: 2.604vw;
  -webkit-padding-before: 7.161vw;
          padding-block-start: 7.161vw;
}
#material-header .material-header-col.plus-a {
  position: relative;
}
#material-header .material-header-col.plus-a::before {
  border-top: 2px dotted #fff;
  content: "";
  height: 1px;
  left: 50%;
  position: absolute;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  top: -7.813vw;
  width: 100vw;
}
#material-header .material-header-col.plus-a h3,
#material-header .material-header-col.plus-a p {
  width: 82.552vw;
}
#material-header .material-header-plus {
  width: 6.51vw;
}

#material-txt-04 {
  -webkit-margin-before: -11.068vw;
          margin-block-start: -11.068vw;
}

#material-actually {
  background: url(../img/page/material_bg_02_sp.jpg) 0 100%/100% auto no-repeat;
  height: auto;
  -webkit-padding-after: 6.51vw;
          padding-block-end: 6.51vw;
  width: 100%;
}
#material-actually h3 {
  -webkit-padding-before: 2.604vw;
          padding-block-start: 2.604vw;
  padding-inline: 0;
}
#material-actually p {
  font-size: 3.385vw;
  line-height: 1.8;
  -webkit-margin-before: 3.906vw;
          margin-block-start: 3.906vw;
  -webkit-margin-end: 5.208vw;
          margin-inline-end: 5.208vw;
  text-align: left;
  width: 54.688vw;
}

#material .btn {
  font-size: 4.167vw;
  letter-spacing: 0.08em;
  width: 87.24vw;
}
#material .btn a {
  padding: 4.167vw 5.208vw;
}
#material .btn a::before {
  width: 3.125vw;
  margin-top: -1px;
  top: 50%;
  right: 6.771vw;
}
#material .btn a::after {
  height: 2.083vw;
  width: 2.083vw;
  margin-top: -1.042vw;
  top: 50%;
  right: 6.771vw;
}

#material-intro {
  padding: 7.813vw 5.208vw;
}
#material-intro h3 {
  font-size: 4.688vw;
  line-height: 1.6;
  -webkit-margin-after: 5.208vw;
          margin-block-end: 5.208vw;
}
#material-intro h3 span.cBlue {
  display: inline-block;
  font-size: 5.729vw;
  line-height: 1.3;
}
#material-intro h3::before {
  border-width: 3.906vw 3.906vw 0 0;
}
#material-intro h3::after {
  border-width: 0 0 3.906vw 3.906vw;
}
#material-intro section {
  padding-block: 7.813vw 3.906vw;
}
#material-intro h4 {
  font-size: 4.948vw;
  text-align: center;
}
#material-intro h4 img {
  display: block;
  -webkit-margin-after: 3.906vw;
          margin-block-end: 3.906vw;
  margin-inline: auto;
  width: 9.115vw;
}
#material-intro .material-intro-txt {
  margin-top: 5.208vw;
}
#material-intro .material-intro-txt p {
  font-size: 3.125vw;
  margin-bottom: 2.604vw;
}
#material-intro .material-intro-txt strong {
  font-size: 3.906vw;
}

#material-used {
  background-size: 10px 10px;
  padding-block: 7.813vw;
}
#material-used::before {
  border-width: 9.375vw 14.323vw 0;
  left: 50%;
  top: 0;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
#material-used h3 {
  letter-spacing: 0.08em;
  -webkit-margin-after: 6.51vw;
          margin-block-end: 6.51vw;
}
#material-used h3 .marks {
  font-size: 4.688vw;
  line-height: 1.36;
}
#material-used h3 .marks::before, #material-used h3 .marks::after {
  font-size: 90%;
}
#material-used h3 .cRed {
  font-size: 145%;
}

.material-scroll {
  cursor: pointer;
  overflow-x: auto;
  -webkit-padding-after: 3.906vw;
          padding-block-end: 3.906vw;
  width: 100%;
}
.material-scroll p {
  width: 860px;
}
.material-scroll .scroll-hint-icon-wrap .scroll-hint-icon {
  top: 19.531vw;
}

#material-makes {
  background: url(../img/page/material_bg_03_sp.jpg) 0/cover no-repeat;
  height: auto;
  -webkit-margin-after: 3.906vw;
          margin-block-end: 3.906vw;
  padding-block: 6.51vw;
}
#material-makes h3 {
  -webkit-margin-after: 2.604vw;
          margin-block-end: 2.604vw;
  padding: 0;
}
#material-makes p {
  font-size: 4.167vw;
  margin-inline: auto;
  padding-inline: 0;
  text-shadow: 0.08em 0.08em 0.4em #fff, -0.08em 0.08em 0.4em #fff, -0.08em -0.08em 0.4em #fff, 0.08em 0.08em 0.4em #fff, -0.08em 0.08em 0.4em #fff, -0.08em -0.08em 0.4em #fff;
  width: 91.25%;
}
#material-makes p span {
  font-size: 116%;
}
#material-makes p span strong {
  font-size: 147%;
  padding-inline: 0.2em 0.1em;
  text-shadow: 0.06em 0.06em 0.4em #fff, -0.06em 0.06em 0.4em #fff, -0.06em -0.06em 0.4em #fff, 0.06em 0.06em 0.4em #fff, -0.06em 0.06em 0.4em #fff, -0.06em -0.06em 0.4em #fff;
}
#material-makes .btn {
  -webkit-margin-before: 5.208vw;
          margin-block-start: 5.208vw;
}

/* =======================================
 business
======================================= */
#business h2 {
  margin-bottom: 7.813vw;
}

#business .page-stit {
  font-size: 11.719vw;
  letter-spacing: 0.04em;
  line-height: 1.167;
  margin-bottom: 7.813vw;
  -webkit-padding-start: 4.375%;
          padding-inline-start: 4.375%;
}

#business .page-stit::before {
  width: 42.969vw;
}

.business-txt {
  margin-block: 7.813vw;
  width: 91.25%;
}

.business-col {
  margin-block: 18.229vw;
}
.business-col .floatleft {
  float: none;
  -webkit-margin-before: 2.604vw;
          margin-block-start: 2.604vw;
  margin-inline: auto;
  width: 91.25%;
}
.business-col .business-col-tit {
  font-size: 5.469vw;
  letter-spacing: 0.02em;
  margin-bottom: 5.208vw;
}
.business-col .business-txt {
  margin-block: 5.208vw;
  width: 100%;
}
.business-col .business-link {
  background: none;
  font-size: 4.167vw;
  letter-spacing: 0.08em;
  line-height: 1.4;
}
.business-col .business-link a {
  background: url(../img/page/business_linkicon.png) 2.604vw 50% no-repeat;
  background-size: 4.948vw auto;
  border: 2px solid #C10014;
  border-radius: 7.813vw;
  display: block;
  padding: 3.906vw 0 3.906vw 9.115vw;
}
@media (any-hover: hover) {
  .business-col .business-link a:hover {
    background-color: #f9e8ea;
    color: inherit;
  }
}
.business-col .floatright {
  float: none;
  -webkit-margin-before: 7.813vw;
          margin-block-start: 7.813vw;
}

.business-message {
  margin-block: 15.625vw;
  margin-inline: auto;
  width: 91.25%;
}
.business-message h3 {
  font-size: 4.948vw;
  line-height: 1.2;
  -webkit-margin-after: 1em;
          margin-block-end: 1em;
  -webkit-padding-start: 6.51vw;
          padding-inline-start: 6.51vw;
}
.business-message h3::before {
  height: 1em;
  width: 1em;
}
.business-message h3::after {
  height: 1.042vw;
  width: 1.042vw;
  top: 1.823vw;
  left: 1.563vw;
}
.business-message div {
  margin-block: 5.208vw;
  margin-inline: 0;
}

/* =======================================
 faq
======================================= */
.faq-keyword {
  border-radius: 4.557vw;
  border-width: 1px;
  box-sizing: content-box;
  height: 7.813vw;
  margin-block: 10.417vw 31.25vw;
  width: 91.25%;
}
.faq-keyword .faq-conditions {
  background: transparent;
  height: 7.813vw;
  inset: 0;
  line-height: 7.813vw;
  padding-left: 2.604vw;
  position: absolute;
  width: 100%;
}
.faq-keyword .faq-conditions label {
  letter-spacing: 0.08em;
}
.faq-keyword .faq-conditions label.event-toggle-on {
  line-height: 1.2;
  padding-left: 7.813vw;
  top: 3.125vw;
  left: -2.604vw;
}
.faq-keyword .faq-conditions label.event-toggle-on span {
  margin-right: 3.125vw;
  height: 3.906vw;
  width: 3.906vw;
}
.faq-keyword .faq-conditions label.event-toggle-on span::before {
  height: 6.771vw;
  margin-inline: 1.823vw 5.208vw;
  top: -50%;
}
.faq-keyword .faq-conditions label.event-toggle-on span::after {
  left: -1.042vw;
  margin-top: -0.781vw;
  width: 6.771vw;
}
.faq-keyword .faq-conditions label.event-toggle-off {
  align-items: center;
  background: #333;
  border-radius: 2.604vw;
  bottom: -15.625vw;
  display: flex;
  gap: 1.302vw;
  height: 13.021vw;
  justify-content: center;
  left: 15%;
  line-height: 13.021vw;
  position: absolute;
  padding: 0;
  width: 70%;
}
.faq-keyword .faq-conditions label.event-toggle-off::before {
  background-size: contain;
  height: 3.906vw;
  width: 3.906vw;
  position: static;
}
.faq-keyword .faq-txt {
  margin-left: 2.604vw;
  padding: 0;
  position: relative;
  width: calc(100% - 11vw);
  z-index: 5;
}
.faq-keyword .faq-txt input[type=text] {
  font-size: 3.646vw;
  height: 7.813vw;
  line-height: 7.813vw;
}
.faq-keyword .btn-submit button {
  line-height: 6.51vw;
  height: 6.51vw;
  width: 6.51vw;
  position: relative;
  z-index: 5;
}
.faq-keyword .btn-submit button img {
  width: 55%;
}
.faq-keyword .btn-submit.faq-btn {
  margin: 0.521vw 0.781vw 0 0;
}
.faq-keyword .btn-submit.faq-btn button {
  top: unset;
  right: unset;
}

.faq-details {
  border-radius: 3.906vw;
  left: 50%;
  max-height: 90%;
  max-height: 90dvh;
  overflow-y: auto;
  padding: 11.719vw 5.208vw 5.208vw;
  position: fixed;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 91.25%;
}
.faq-details dl {
  font-size: 3.125vw;
  padding-block: 2.604vw;
}
.faq-details dt {
  display: block;
  margin: 0;
  width: 100%;
}
.faq-details dt::before {
  border-width: 2px;
  -webkit-margin-end: 1.302vw;
          margin-inline-end: 1.302vw;
  height: 2.344vw;
  width: 2.344vw;
}
.faq-details dd {
  -webkit-margin-after: 0;
          margin-block-end: 0;
  width: 100%;
}
.faq-details dd input[type=text] {
  font-size: 3.646vw;
  height: 10.417vw;
  line-height: 10.417vw;
}
.faq-details .faq-detail02-txt .icon-toggle {
  height: 10.417vw;
  width: 10.417vw;
}
.faq-details .faq-detail02-txt .icon-toggle::after {
  height: 2.604vw;
  width: 2.604vw;
  top: 3.125vw;
  left: 3.906vw;
}
.faq-details .faq-detail02-txt .cat_text {
  width: calc(100% - 13vw);
}
.faq-details .faq-detail02-txt input[type=text] {
  font-size: 3.646vw;
  width: 100%;
}
.faq-details .faq-details-cat label {
  display: flex;
  gap: 0.75em;
  font-size: 3.646vw;
  margin-right: 0;
  line-height: 1.2;
  padding-block: 2.604vw;
  width: 100%;
}
.faq-details .faq-details-cat label input {
  font-size: 3.646vw;
  inline-size: 0.9em;
  block-size: 0.9em;
}
.faq-details .faq-details-cat label.icon-close {
  display: block;
  height: 5.208vw;
  width: 5.208vw;
  line-height: 220%;
  padding: 0;
  top: 3.125vw;
  right: 11.719vw;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.faq-details .faq-details-cat label.icon-close::before, .faq-details .faq-details-cat label.icon-close::after {
  height: 2px;
  margin: 0;
  left: 0;
  top: 50%;
  width: 5.208vw;
}
.faq-details .faq-details-cat label.icon-close::before {
  -webkit-transform: none;
          transform: none;
}
.faq-details .faq-details-cat label.icon-close::after {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}
.faq-details .btn-submit button {
  position: absolute;
  top: 1.302vw;
  right: 1.302vw;
}

.faq-col {
  margin-bottom: 7.813vw;
  margin-inline: auto;
  width: 91.25%;
}
.faq-col::before {
  border-width: 5.729vw 5.729vw 0 0;
}
.faq-col .faq-term {
  display: flex;
  flex-wrap: wrap;
  font-size: 3.125vw;
  gap: 1.563vw;
  line-height: 2.4;
  margin: 0 0 0 15vw;
}
.faq-col .faq-term span {
  -webkit-margin-end: 2.604vw;
          margin-inline-end: 2.604vw;
  padding: 0.521vw 3.125vw;
}
.faq-col .faq-q {
  font-size: 4.688vw;
  line-height: 1.8;
  margin: 2.604vw 0 2.604vw 15vw;
  padding-right: 2vw;
  width: calc(100% - 20vw);
}
.faq-col .faq-q::before {
  font-size: 7.813vw;
  line-height: 1;
  left: -10vw;
  top: -0.2vw;
}
.faq-col .faq-a {
  margin: 2.604vw 0 5.208vw 15vw;
  width: calc(100% - 20vw);
  word-wrap: break-word;
}

#pages-faq {
  padding-top: 7.813vw;
}

.faq-stit {
  font-size: 6vw;
  letter-spacing: 0.04em;
  line-height: 1.6;
  text-align: left;
  padding: 0 4.375% 0.4em;
}

.faq-more-btn {
  font-size: 3.646vw;
  letter-spacing: 0.04em;
  line-height: 1.4;
  text-align: center;
  margin-bottom: 10.417vw;
  width: 91.25%;
}
.faq-more-btn a {
  align-items: center;
  border-radius: 2.604vw;
  box-shadow: 0 1.042vw 0 #505050;
  display: flex;
  height: 14.323vw;
  justify-content: center;
}

/* =======================================
 correction
======================================= */
#correction-header {
  background-image: url(../img/page/correction_bg_01_a_sp.jpg), url(../img/page/correction_bg_01_b_sp.jpg);
  background-position: 0 0, 0 100%;
  background-repeat: no-repeat;
  background-size: 100% auto;
  height: auto;
  padding-block: 26.042vw 57.292vw;
  position: relative;
}
#correction-header::before {
  background: url(../img/page/correction_deco_01_sp.svg) 0/contain no-repeat;
  content: "";
  display: block;
  height: 14.844vw;
  left: 3.906vw;
  position: absolute;
  top: 9.115vw;
  width: 27.604vw;
}
#correction-header h2 {
  font-size: 9.115vw;
  -webkit-margin-after: 2.604vw;
          margin-block-end: 2.604vw;
  margin-inline: auto;
  padding-top: 0;
  width: 91.25%;
}
#correction-header p {
  margin-inline: auto;
  width: 91.25%;
}

#correction-about {
  background: transparent;
  height: auto;
  -webkit-padding-after: 13.021vw;
          padding-block-end: 13.021vw;
  position: relative;
}
#correction-about::before, #correction-about::after {
  content: "";
  display: block;
  left: 50%;
  position: absolute;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
#correction-about::before {
  border-left: 2px dotted #073397;
  bottom: 2.604vw;
  height: 70%;
  width: 1px;
}
#correction-about::after {
  background: #073397;
  bottom: 0;
  clip-path: polygon(100% 0, 0 0, 50% 100%);
  height: 7.813vw;
  width: 15.625vw;
}
#correction-about h3 {
  background: #073397;
  font-size: 5.208vw;
  height: 10.417vw;
  letter-spacing: 0.14em;
  line-height: 1.6;
  -webkit-margin-after: 13.021vw;
          margin-block-end: 13.021vw;
  -webkit-padding-before: 2.604vw;
          padding-block-start: 2.604vw;
  -webkit-padding-start: 15.625vw;
          padding-inline-start: 15.625vw;
  position: relative;
}
#correction-about h3::before {
  background: url(../img/page/correction_deco_02_sp.svg) 0/contain no-repeat;
  content: "";
  display: block;
  height: 29.531vw;
  left: -14.323vw;
  position: absolute;
  top: -10.417vw;
  width: 41.198vw;
}
#correction-about .correction-about-col {
  background: linear-gradient(0deg, rgb(255, 255, 255) 0%, rgb(255, 255, 255) 62.39%, rgb(233, 233, 233) 100%);
  border-radius: 4%/8%;
  box-sizing: border-box;
  box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.3);
  -webkit-margin-after: 7.813vw;
          margin-block-end: 7.813vw;
  padding-block: 6.51vw 3.906vw;
  padding-inline: 7.813vw;
  position: relative;
  width: 91.25%;
  z-index: 5;
}
#correction-about .correction-about-col::before {
  background: linear-gradient(90deg, rgb(255, 255, 255) 0%, rgb(255, 255, 255) 62.39%, rgb(233, 233, 233) 100%);
  border-radius: 4%/8%;
  content: "";
  display: block;
  height: calc(100% - 6px);
  left: 3px;
  position: absolute;
  top: 3px;
  width: calc(100% - 6px);
}
#correction-about .correction-about-col h4 {
  background: #073397;
  clip-path: polygon(0 0, 100% 0, 85% 100%, 0% 100%);
  font-size: 4.688vw;
  letter-spacing: 0.04em;
  left: -4.375%;
  line-height: 1.2;
  padding-inline: 1em 2em;
  padding-block: 0.5em;
  position: absolute;
  top: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
#correction-about .correction-about-col .correction-about-stit {
  font-size: 4.688vw;
  position: relative;
  width: 100%;
  z-index: 5;
}
#correction-about .correction-about-col .correction-about-stit .cRed {
  font-size: 120%;
}
#correction-about .correction-about-col .correction-about-txt {
  margin-block: 2.604vw;
  position: relative;
  z-index: 5;
  width: 100%;
}
#correction-about .correction-about-box {
  background: #999;
  display: flex;
  font-size: 3.906vw;
  gap: 2.604vw;
  letter-spacing: 0.16em;
  line-height: 2.3;
  margin-block: 7.813vw;
  position: relative;
  z-index: 5;
  width: 85%;
}
#correction-about .correction-about-box h4 {
  background: #000;
  clip-path: polygon(0 0, 85% 0, 100% 100%, 0% 100%);
  text-align: center;
  width: 5em;
}

#correction-difference {
  padding-block: 7.813vw;
}
#correction-difference h3 {
  font-size: 6.25vw;
  letter-spacing: 0.06em;
  line-height: 1.5;
  -webkit-margin-after: 7.813vw;
          margin-block-end: 7.813vw;
  width: 91.25%;
}
#correction-difference h3::before {
  border-width: 3.646vw 3.646vw 0 0;
}
#correction-difference h3::after {
  border-width: 0 0 3.646vw 3.646vw;
}
#correction-difference .correction-tab-btnlist {
  display: flex;
  justify-content: space-between;
  margin-inline: auto;
  width: 91.25%;
}
#correction-difference .correction-tab-btn {
  background: #fff;
  border-width: 3px 3px 0;
  border-style: solid;
  border-radius: 2.604vw 2.604vw 0 0;
  box-sizing: border-box;
  font-size: 4.688vw;
  font-weight: 700;
  letter-spacing: 0.04em;
  padding-block: 2.604vw;
  text-align: center;
  width: 49%;
}
#correction-difference .correction-tab-btn.free {
  border-color: #74BDC4;
  color: #74BDC4;
}
#correction-difference .correction-tab-btn.free.is-current {
  background: #74BDC4;
  color: #fff;
}
#correction-difference .correction-tab-btn.paid {
  border-color: #C10014;
  color: #C10014;
}
#correction-difference .correction-tab-btn.paid.is-current {
  background: #C10014;
  color: #fff;
}
#correction-difference #correction-differenc-col {
  padding-block: 0;
  padding-inline: 0;
  width: 91.25%;
}
#correction-difference #correction-differenc-col .floatleft, #correction-difference #correction-differenc-col .floatright {
  float: none;
}
#correction-difference #correction-differenc-col section {
  border: 3px solid;
  box-sizing: border-box;
  display: none;
  margin-inline: auto;
  padding-block: 7.813vw 3.906vw;
  padding-inline: 3.906vw;
  width: 100%;
}
#correction-difference #correction-differenc-col section.is-show {
  display: inherit;
}
#correction-difference #correction-differenc-col section h4 {
  font-size: 7.292vw;
  letter-spacing: 0.2em;
  line-height: 32.161vw;
  height: 32.161vw;
}
#correction-difference #correction-differenc-col section dt {
  border-radius: 4.167vw;
  font-size: 4.688vw;
  letter-spacing: 0.08em;
  line-height: 1.8;
  height: auto;
}
#correction-difference #correction-differenc-col section dd {
  -webkit-margin-after: 6.51vw;
          margin-block-end: 6.51vw;
}
#correction-difference #correction-differenc-col section dd li {
  background-position: 1.563vw 4.948vw;
  background-size: 5.469vw auto;
  padding-block: 4.167vw;
  padding-inline: 9.766vw 0;
}
#correction-difference #correction-differenc-col section dd li strong {
  font-size: 4.688vw;
}
#correction-difference #correction-differenc-col section.free {
  background: #eef7f8;
  border-color: #74BDC4;
}
#correction-difference #correction-differenc-col section.free h4 {
  background: url(../img/page/correction_bg_03_sp.svg) 0/contain no-repeat;
  text-indent: 1.6em;
}
#correction-difference #correction-differenc-col section.free li {
  background-image: url(../img/page/correction_icon_01_sp.svg);
}
#correction-difference #correction-differenc-col section.paid {
  background: #faebed;
  border-color: #C10014;
}
#correction-difference #correction-differenc-col section.paid h4 {
  background: url(../img/page/correction_bg_04_sp.svg) 0 50%/contain no-repeat;
}
#correction-difference #correction-differenc-col section.paid dd:nth-of-type(1) {
  -webkit-margin-after: 6.51vw;
          margin-block-end: 6.51vw;
}
#correction-difference #correction-differenc-col section.paid li {
  background-image: url(../img/page/correction_icon_02_sp.svg);
}

#correction-outline {
  background: url(../img/page/correction_bg_05_sp.svg) no-repeat #74BDC4;
  background-position: 135% 3.906vw;
  background-size: 49.479vw auto;
  height: auto;
  padding-block: 7.813vw;
}
#correction-outline ul {
  font-size: 5.208vw;
  letter-spacing: 0.06em;
  line-height: 1.3;
  -webkit-margin-start: 4.375%;
          margin-inline-start: 4.375%;
  padding-block: 0;
  width: 70.313vw;
}
#correction-outline ul strong {
  letter-spacing: 0.06em;
}
#correction-outline ul li {
  background: #fff;
  border-radius: 2.604vw;
  -webkit-filter: drop-shadow(3px 3px 3px rgba(0, 0, 0, 0.4));
          filter: drop-shadow(3px 3px 3px rgba(0, 0, 0, 0.4));
  -webkit-margin-after: 5.208vw;
          margin-block-end: 5.208vw;
  padding-block: 5.208vw;
  padding-inline: 5.208vw;
  position: relative;
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
}
#correction-outline ul li::after {
  background: #fff;
  bottom: 0;
  clip-path: polygon(0 0, 0% 100%, 100% 100%);
  content: "";
  height: 5.208vw;
  position: absolute;
  right: -6.51vw;
  width: 10.417vw;
}
#correction-outline ul li .fon32 {
  font-size: 110% !important;
}
#correction-outline ul li .fon12 {
  font-size: 56% !important;
}
#correction-outline p {
  font-size: 6.25vw;
  letter-spacing: 0.04em;
  -webkit-margin-before: 13.021vw;
          margin-block-start: 13.021vw;
  margin-inline: 15.625vw 4.375%;
  position: relative;
}
#correction-outline p::before {
  background: url(../img/page/correction_deco_03_sp.svg) 0/contain no-repeat;
  content: "";
  height: 19.531vw;
  left: -16.927vw;
  position: absolute;
  top: -17.578vw;
  width: 19.531vw;
}
#correction-outline p .fontMincho {
  font-size: 120%;
}

#correction-example {
  padding-block: 7.813vw 10.417vw;
}
#correction-example::before {
  background: url(../img/page/correction_img_01.png) 0 100%/100% auto no-repeat;
  content: "";
  height: 22.135vw;
  width: 9.115vw;
  top: 18.229vw;
  left: 7.813vw;
  z-index: 5;
}
#correction-example h3 {
  font-size: 5.208vw;
  letter-spacing: 0.06em;
  line-height: 9.375vw;
  -webkit-margin-after: 7.813vw;
          margin-block-end: 7.813vw;
  width: 91.25%;
}
#correction-example h3::before {
  border-width: 3.646vw 3.646vw 0 0;
}
#correction-example h3::after {
  border-width: 0 0 3.646vw 3.646vw;
}
#correction-example h4 {
  font-size: 5.729vw;
  letter-spacing: 0.06em;
  -webkit-padding-before: 1.302vw;
          padding-block-start: 1.302vw;
}
#correction-example h4 + p {
  position: relative;
  z-index: 5;
}

.correction-example-img {
  display: flex;
  justify-content: space-between;
  -webkit-margin-before: 5.208vw;
          margin-block-start: 5.208vw;
  position: relative;
}
.correction-example-img figure {
  width: 43.5%;
}

#correction-example dl {
  margin-block: 0;
  margin-inline: 0;
  width: 50%;
}
#correction-example dl dt {
  background-repeat: no-repeat;
  background-size: 100% auto;
  font-size: 3.906vw;
  letter-spacing: 0.06em;
  line-height: 6.771vw;
  -webkit-padding-start: 14.323vw;
          padding-inline-start: 14.323vw;
}
#correction-example dl dt::before, #correction-example dl dt::after {
  content: "";
  position: absolute;
}
#correction-example dl dt::before {
  border-radius: 50%;
  height: 1.953vw;
  width: 1.953vw;
}
#correction-example dl dt::after {
  border-top: 2px solid;
  -webkit-transform-origin: 0 0;
          transform-origin: 0 0;
  width: 1px;
}
#correction-example dl dt.free {
  background-image: url(../img/page/correction_bg_03_sp.svg);
  height: 12.5vw;
  -webkit-padding-before: 2.344vw;
          padding-block-start: 2.344vw;
}
#correction-example dl dt.free::before {
  background: #74BDC4;
}
#correction-example dl dt.free::after {
  border-top-color: #74BDC4;
}
#correction-example dl dt.paid {
  background-image: url(../img/page/correction_bg_04_sp.svg);
  height: 9.115vw;
}
#correction-example dl dt.paid::before {
  background: #C10014;
}
#correction-example dl dt.paid::after {
  border-top-color: #C10014;
}
#correction-example dl dd {
  font-size: 2.865vw;
  margin-bottom: 3.906vw;
}
#correction-example .correction-example-stit {
  font-size: 3.646vw;
  letter-spacing: 0.04em;
  margin-block: 0 2.604vw;
}
#correction-example #correction-example-col-1 {
  background: #fff;
  box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.3);
  box-sizing: border-box;
  height: auto;
  padding-block: 6.51vw 9.115vw;
  padding-inline: 5%;
  position: relative;
  width: 91.25%;
}
#correction-example #correction-example-col-1::before {
  background: rgba(116, 189, 196, 0.1);
  clip-path: polygon(0 0, 0% 100%, 100% 0);
  content: "";
  height: 23.438vw;
  left: 0;
  position: absolute;
  top: 0;
  width: 23.438vw;
}
#correction-example #correction-example-col-1::after {
  color: #f2f2f2;
  content: "01";
  font-family: "Century Gothic", CenturyGothic, AppleGothic, sans-serif;
  font-size: 19.531vw;
  position: absolute;
  right: 2.604vw;
  top: -2.604vw;
}
#correction-example #correction-example-col-1 dt:nth-of-type(1)::before {
  left: 29.297vw;
  top: 5.859vw;
}
#correction-example #correction-example-col-1 dt:nth-of-type(1)::after {
  left: 30.599vw;
  top: 6.771vw;
  -webkit-transform: rotate(-6deg);
          transform: rotate(-6deg);
  width: 11.068vw;
}
#correction-example #correction-example-col-1 dt:nth-of-type(2)::before {
  left: 26.693vw;
  top: 23.438vw;
}
#correction-example #correction-example-col-1 dt:nth-of-type(2)::after {
  left: 27.995vw;
  top: 24.349vw;
  -webkit-transform: rotate(48deg);
          transform: rotate(48deg);
  width: 22.135vw;
}
#correction-example #correction-example-col-1 dt:nth-of-type(3)::before {
  left: 29.297vw;
  top: 50.781vw;
}
#correction-example #correction-example-col-1 dt:nth-of-type(3)::after {
  left: 30.599vw;
  top: 51.693vw;
  -webkit-transform: rotate(65deg);
          transform: rotate(65deg);
  width: 24.74vw;
}
#correction-example #correction-example-col-1 dt:nth-of-type(4)::before {
  left: 26.693vw;
  top: 70.964vw;
}
#correction-example #correction-example-col-1 dt:nth-of-type(4)::after {
  left: 27.995vw;
  top: 71.875vw;
  -webkit-transform: rotate(70deg);
          transform: rotate(70deg);
  width: 40.365vw;
}
#correction-example #correction-example-col-1 dt.paid {
  margin-top: 0;
}
#correction-example #correction-example-col-1 dd.paid {
  margin-bottom: 3.906vw;
}
#correction-example #correction-example-col-2 {
  background: #fff;
  box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.3);
  box-sizing: border-box;
  height: auto;
  -webkit-margin-before: -5.208vw;
          margin-block-start: -5.208vw;
  padding-block: 6.51vw 9.115vw;
  padding-inline: 5%;
  position: relative;
  width: 91.25%;
}
#correction-example #correction-example-col-2::before {
  background: rgba(116, 189, 196, 0.1);
  clip-path: polygon(0 0, 0% 100%, 100% 0);
  content: "";
  height: 23.438vw;
  left: 0;
  position: absolute;
  top: 0;
  width: 23.438vw;
}
#correction-example #correction-example-col-2::after {
  color: #f2f2f2;
  content: "02";
  font-family: "Century Gothic", CenturyGothic, AppleGothic, sans-serif;
  font-size: 19.531vw;
  position: absolute;
  right: 2.604vw;
  top: -2.604vw;
}
#correction-example #correction-example-col-2 .correction-example-img {
  -webkit-padding-after: 23.438vw;
          padding-block-end: 23.438vw;
}
#correction-example #correction-example-col-2 dl {
  -webkit-margin-before: 0;
          margin-block-start: 0;
}
#correction-example #correction-example-col-2 dt:nth-of-type(1)::before {
  left: 29.297vw;
  top: 5.859vw;
}
#correction-example #correction-example-col-2 dt:nth-of-type(1)::after {
  left: 30.599vw;
  top: 6.771vw;
  -webkit-transform: rotate(-6deg);
          transform: rotate(-6deg);
  width: 11.068vw;
}
#correction-example #correction-example-col-2 dt:nth-of-type(2)::before {
  left: 26.693vw;
  top: 23.438vw;
}
#correction-example #correction-example-col-2 dt:nth-of-type(2)::after {
  left: 27.995vw;
  top: 24.349vw;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  width: 18.229vw;
}
#correction-example #correction-example-col-2 dt:nth-of-type(3)::before {
  left: 29.297vw;
  top: 50.781vw;
}
#correction-example #correction-example-col-2 dt:nth-of-type(3)::after {
  left: 30.599vw;
  top: 51.693vw;
  -webkit-transform: rotate(60deg);
          transform: rotate(60deg);
  width: 20.833vw;
}
#correction-example #correction-example-col-2 dt:nth-of-type(4) {
  -webkit-margin-before: 0;
          margin-block-start: 0;
}
#correction-example #correction-example-col-2 dt:nth-of-type(4)::before {
  left: 26.693vw;
  top: 70.964vw;
}
#correction-example #correction-example-col-2 dt:nth-of-type(4)::after {
  left: 27.995vw;
  top: 71.875vw;
  -webkit-transform: rotate(70deg);
          transform: rotate(70deg);
  width: 40.365vw;
}
#correction-example #correction-example-col-2 dt.paid {
  margin-top: 0;
}
#correction-example #correction-example-col-2 dd.paid {
  margin-bottom: 3.906vw;
}
#correction-example #correction-example-col-2 .note {
  font-size: 2.865vw !important;
  bottom: 2.604vw;
  left: 0;
  width: 100%;
}
#correction-example #correction-example-col-3 {
  background-image: url(../img/page/correction_bg_08_a_sp.svg), url(../img/page/correction_bg_08_b_sp.svg);
  background-position: 2.604vw 2.604vw, 50% 100%;
  background-size: 58.073vw auto, 71.615vw auto;
  height: auto;
  padding-block: 0 55.99vw;
  width: 100%;
}
#correction-example #correction-example-col-3 div {
  font-size: 5.99vw;
  -webkit-margin-after: 5.208vw;
          margin-block-end: 5.208vw;
  margin-inline: auto;
  -webkit-padding-before: 24.74vw;
          padding-block-start: 24.74vw;
  width: 91.25%;
}
#correction-example #correction-example-col-3 p {
  font-size: 3.125vw;
  line-height: 2.2;
  margin-inline: auto;
  width: 91.25%;
}
#correction-example #correction-example-col-4 {
  background: url(../img/page/correction_bg_09_a_sp.jpg) 50% 100% no-repeat #fff;
  background-size: 52.083vw auto;
  box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.3);
  box-sizing: border-box;
  height: auto;
  -webkit-margin-before: 10.417vw;
          margin-block-start: 10.417vw;
  padding-block: 6.51vw 40.365vw;
  padding-inline: 5%;
  position: relative;
  width: 91.25%;
}
#correction-example #correction-example-col-4::before {
  background: rgba(193, 0, 20, 0.1);
  clip-path: polygon(0 0, 0% 100%, 100% 0);
  content: "";
  height: 23.438vw;
  left: 0;
  position: absolute;
  top: 0;
  width: 23.438vw;
}
#correction-example #correction-example-col-4::after {
  color: #f2f2f2;
  content: "03";
  font-family: "Century Gothic", CenturyGothic, AppleGothic, sans-serif;
  font-size: 19.531vw;
  position: absolute;
  right: 2.604vw;
  top: -2.604vw;
}
#correction-example #correction-example-col-4 span {
  background: url(../img/page/correction_bg_09_b_sp.svg) 0/contain no-repeat;
  font-size: 4.583vw;
  height: 24.167vw;
  -webkit-padding-before: 5.729vw;
          padding-block-start: 5.729vw;
  padding-inline: 1.667vw 3.646vw;
  text-align: center;
  width: 19.792vw;
  top: -2.5vw;
  left: 2.604vw;
}
#correction-example #correction-example-col-4 p {
  -webkit-margin-before: 7.813vw;
          margin-block-start: 7.813vw;
  margin-inline: 0;
  width: 100%;
}

#correction-example .correction-arrow {
  background-size: contain;
  font-size: 3.906vw;
  letter-spacing: 0.06em;
  line-height: 3.5;
  -webkit-margin-before: -7.813vw;
          margin-block-start: -7.813vw;
  height: 18.75vw;
  width: 57.292vw;
}

/* =======================================
 実績関連
======================================= */
.lp_list {
  -webkit-padding-after: 7.813vw;
          padding-block-end: 7.813vw;
}

/*検索窓*/
.sResults-keyword {
  border-radius: 5.859vw;
  border-width: 1px;
  box-sizing: content-box;
  height: 10.417vw;
  margin-block: 10.417vw 26.042vw;
  margin-inline: auto;
  width: 91.25%;
}
.sResults-keyword .sResults-conditions {
  border-radius: 0;
  background: transparent;
  height: 10.417vw;
  inset: 0;
  line-height: 10.417vw;
  padding-inline: 0;
  position: absolute;
  width: 100%;
}
.sResults-keyword .sResults-conditions label {
  letter-spacing: 0.08em;
}
.sResults-keyword .sResults-conditions label.event-toggle-on {
  line-height: 1.2;
  padding-left: 7.813vw;
  top: 4.427vw;
  left: -2.604vw;
}
.sResults-keyword .sResults-conditions label.event-toggle-off {
  align-items: center;
  background: #333;
  border-radius: 2.604vw;
  bottom: -15.625vw;
  display: flex;
  gap: 1.302vw;
  height: 13.021vw;
  justify-content: center;
  left: 15%;
  line-height: 13.021vw;
  position: absolute;
  padding: 0;
  width: 70%;
}
.sResults-keyword .sResults-conditions label.event-toggle-off::before {
  background-repeat: no-repeat;
  background-size: contain;
  height: 3.906vw;
  width: 3.906vw;
  position: static;
}
.sResults-keyword .sResults-txt {
  -webkit-margin-start: 3.906vw;
          margin-inline-start: 3.906vw;
  padding-block: 0;
  position: relative;
  width: calc(100% - 85px - 3.906vw);
  z-index: 5;
}
.sResults-keyword .sResults-txt input[type=text] {
  font-size: 3.646vw;
  height: 10.417vw;
  line-height: 10.417vw;
}
.sResults-keyword .sResults-btn p {
  font-size: 12px;
  line-height: 10.417vw;
  -webkit-padding-after: 0.5em;
          padding-block-end: 0.5em;
}
.sResults-keyword .sResults-btn p img {
  width: 14px;
}

.sResults-details {
  border-radius: 3.906vw;
  left: 50%;
  max-height: 90%;
  max-height: 90dvh;
  overflow-y: auto;
  padding: 11.719vw 5.208vw 5.208vw;
  position: fixed;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 91.25%;
}
.sResults-details label {
  letter-spacing: 0.08em;
}
.sResults-details label.event-toggle-on {
  line-height: 1.2;
  padding-left: 7.813vw;
  top: 3.125vw;
  left: -2.604vw;
}
.sResults-details label.event-toggle-on span {
  margin-right: 3.125vw;
  height: 3.906vw;
  width: 3.906vw;
}
.sResults-details label.event-toggle-on span::before {
  height: 6.771vw;
  margin-inline: 1.823vw 5.208vw;
  top: -50%;
}
.sResults-details label.event-toggle-on span::after {
  left: -1.042vw;
  margin-top: -0.781vw;
  width: 6.771vw;
}
.sResults-details h2 {
  font-size: 3.906vw;
  -webkit-margin-after: 2.604vw;
          margin-block-end: 2.604vw;
}
.sResults-details dl {
  font-size: 3.125vw;
  padding-block: 2.604vw;
}
.sResults-details dt {
  display: block;
  margin-block: 0;
  width: 100%;
}
.sResults-details dt::before {
  border-width: 2px;
  -webkit-margin-end: 1.302vw;
          margin-inline-end: 1.302vw;
  height: 2.344vw;
  width: 2.344vw;
}
.sResults-details dd {
  -webkit-margin-after: 0;
          margin-block-end: 0;
  padding-inline: 2.604vw;
  width: 100%;
}
.sResults-details dd input[type=text] {
  font-size: 3.646vw;
  height: 10.417vw;
  line-height: 10.417vw;
}
.sResults-details dd.sResults-details02 label {
  line-height: 10.417vw;
  -webkit-margin-end: 5.208vw;
          margin-inline-end: 5.208vw;
}
.sResults-details dd.sResults-details02 input {
  -webkit-margin-end: 1.302vw;
          margin-inline-end: 1.302vw;
  vertical-align: middle;
}
.sResults-details dd.sResults-detail-col {
  width: calc(100% - 10.417vw);
}
.sResults-details dd.sResults-detail-col .icon-toggle {
  height: 10.417vw;
  width: 10.417vw;
  right: -10.417vw;
}
.sResults-details dd.sResults-detail-col .icon-toggle::after {
  height: 2.604vw;
  width: 2.604vw;
  top: 3.125vw;
  left: 3.906vw;
}
.sResults-details dd.sResults-detail-col input[type=text] {
  width: 100%;
}
.sResults-details .sResults-details-3row,
.sResults-details .sResults-details-4row {
  -webkit-margin-before: 0;
          margin-block-start: 0;
  -webkit-padding-before: 2.604vw;
          padding-block-start: 2.604vw;
}
.sResults-details .sResults-details-3row label,
.sResults-details .sResults-details-4row label {
  width: calc(100% - 6vw);
}
.sResults-details .sResults-details-3row label.icon-close,
.sResults-details .sResults-details-4row label.icon-close {
  height: 5.208vw;
  width: 5.208vw;
  right: -1.302vw;
}
.sResults-details .sResults-details-3row label.icon-close::before,
.sResults-details .sResults-details-4row label.icon-close::before {
  height: 5.208vw;
  margin-block: 1.823vw 5.208vw;
  top: -35%;
}
.sResults-details .sResults-details-3row label.icon-close::after,
.sResults-details .sResults-details-4row label.icon-close::after {
  width: 5.208vw;
}
.sResults-details .sResults-details-3row label input[type=checkbox],
.sResults-details .sResults-details-4row label input[type=checkbox] {
  margin-right: 1.563vw;
}
.sResults-details .btn-submit {
  display: flex;
  flex-direction: column;
  gap: 3.906vw;
  -webkit-margin-before: 3.906vw;
          margin-block-start: 3.906vw;
}
.sResults-details .btn-submit button {
  line-height: 10.417vw;
  height: 10.417vw;
  width: 78.125vw;
  position: relative;
  z-index: 5;
}
.sResults-details .btn-submit button img {
  width: 55%;
}
.sResults-details .btn-submit button + p {
  position: static;
  -webkit-margin-start: 0;
          margin-inline-start: 0;
}

.clearForm_confirm {
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.clearForm_confirm .btn {
  display: flex;
  gap: 20px;
  justify-content: center;
  text-indent: 0;
}
.clearForm_confirm .btn::before, .clearForm_confirm .btn::after {
  display: none;
}
.clearForm_confirm .btn a {
  margin-inline: 0;
  padding-inline: 0;
}

input[type=checkbox]#sResults-conditions-box03:checked ~ .sResults-details-4row,
input[type=checkbox]#sResults-conditions-box04:checked ~ .sResults-details-3row,
input[type=checkbox]#sResults-conditions-box05:checked ~ .sResults-details-4row,
input[type=checkbox]#sResults-conditions-box06:checked ~ .sResults-details-4row {
  -webkit-padding-after: 5.208vw;
          padding-block-end: 5.208vw;
}

.search-condition {
  margin-inline: auto;
  width: 91.25%;
}
.search-condition dt {
  width: 7em;
}
.search-condition dd li {
  line-height: 7.813vw;
  -webkit-margin-after: 1.563vw;
          margin-block-end: 1.563vw;
}
.search-condition dd li span {
  font-size: 3.125vw;
  padding-inline: 2.604vw;
}
.search-condition dd li a {
  background-size: auto 4.688vw;
  background-position: 1.302vw 50%;
  font-size: 3.125vw;
  padding-inline: 7.161vw 2.604vw;
}

/*表示リスト*/
.result-list-search {
  -webkit-margin-before: 9.115vw;
          margin-block-start: 9.115vw;
}
.result-list-search .result-list-tit {
  font-size: 5.729vw;
  letter-spacing: 0.08em;
  line-height: 13.021vw;
  -webkit-margin-after: 13.021vw;
          margin-block-end: 13.021vw;
  -webkit-padding-before: 2.604vw;
          padding-block-start: 2.604vw;
}
.result-list-search .result-list-tit::before {
  -webkit-margin-end: 0.5em;
          margin-inline-end: 0.5em;
}
.result-list-search .result-list-tit::after {
  -webkit-margin-start: 0.5em;
          margin-inline-start: 0.5em;
}
.result-list-search .result-list-tit img {
  height: 6.51vw;
  -webkit-margin-end: 2.604vw;
          margin-inline-end: 2.604vw;
  width: auto;
}
.result-list-search ul {
  display: grid;
  gap: 7.813vw 3.906vw;
  grid-template-columns: repeat(2, 1fr);
  margin-inline: auto;
  width: 91.25%;
}
.result-list-search ul::before, .result-list-search ul::after {
  display: none;
}
.result-list-search li {
  display: grid;
  float: none;
  gap: 0;
  grid-row: span 4;
  grid-template-rows: subgrid;
  margin-block: 0;
  margin-inline: 0;
  padding-block: 9.115vw 5.208vw;
  padding-inline: 0;
  width: auto;
}
.result-list-search li .result-area {
  font-size: 3.125vw;
  letter-spacing: 0.04em;
  line-height: 2.8;
  padding-inline: 2.604vw;
  width: 33.854vw;
  top: 0;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.result-list-search li .result-thumb {
  margin-inline: auto;
  width: 36.458vw;
}
.result-list-search li .result-thumb img {
  max-width: 100%;
}
.result-list-search li .result-company,
.result-list-search li .result-name,
.result-list-search li .result-category {
  margin-block: 2.604vw 0;
  margin-inline: auto;
  width: 36.458vw;
}
.result-list-search li .result-company,
.result-list-search li .result-name {
  line-height: 1.4;
  text-overflow: unset;
  white-space: wrap;
  word-break: break-all;
}
.result-list-search li .result-company {
  font-size: 3.125vw;
}
.result-list-search li .result-name {
  font-size: 3.646vw;
}
.result-list-search li .result-category {
  font-size: 3.125vw;
  line-height: 1.6;
}
.result-list-search li .result-category span {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.result-list-search .btn-area {
  -webkit-margin-before: 6.51vw;
          margin-block-start: 6.51vw;
}
.result-list-search .btn-area .btn {
  font-size: 4.167vw;
  margin-inline: auto;
  width: 91.25%;
}
.result-list-search .btn-area .btn a {
  -webkit-margin-after: 6.51vw;
          margin-block-end: 6.51vw;
  padding-block: 5.208vw;
  padding-inline: 5.208vw;
}
.result-list-search .btn-area .btn a::before {
  width: 3.125vw;
  top: 6.771vw;
  right: 5.208vw;
}
.result-list-search .btn-area .btn a::after {
  height: 2.083vw;
  width: 2.083vw;
  top: 5.99vw;
  right: 5.208vw;
}

.banner .result-list-search li {
  grid-row: span 3;
}
.banner .result-list-search li .result-thumb {
  display: grid;
  height: auto;
  max-height: 36.458vw;
  place-content: center;
  width: 36.458vw;
}
.banner .result-list-search li .result-thumb img {
  max-height: 100%;
}
.banner .result-list-search .result-name {
  -webkit-margin-before: 2.604vw;
          margin-block-start: 2.604vw;
}

.flyer .result-list-search li .result-thumb {
  display: grid;
  place-content: center;
  max-height: 51.563vw;
  width: 36.458vw;
}
.flyer .result-list-search li .result-thumb img {
  max-height: 100%;
}

/*single page*/
.tit-arrowicon {
  font-size: 4.948vw;
  line-height: 1.2;
  -webkit-margin-after: 1em;
          margin-block-end: 1em;
  -webkit-padding-start: 6.51vw;
          padding-inline-start: 6.51vw;
}
.tit-arrowicon::before {
  height: 1em;
  width: 1em;
}
.tit-arrowicon::after {
  height: 1.042vw;
  width: 1.042vw;
  top: 1.823vw;
  left: 1.563vw;
}

#result-page-header {
  margin-block: 13.021vw 5.208vw;
  padding-block: 13.021vw 5.208vw;
  padding-inline: 4.5%;
}
#result-page-header h2 {
  font-size: 3.385vw;
  padding-block: 2.604vw;
  padding-inline: 7.813vw;
  width: 46.875vw;
  top: -4.688vw;
}
#result-page-header .result-name {
  font-size: 5.208vw;
  text-wrap: pretty;
}
#result-page-header .result-category {
  font-size: 3.125vw;
}

#result-page-header-photo {
  -webkit-margin-after: 7.813vw;
          margin-block-end: 7.813vw;
}
#result-page-header-photo .page-tit {
  -webkit-margin-after: 2.604vw;
          margin-block-end: 2.604vw;
}
#result-page-header-photo .result-category {
  font-size: 3.125vw;
  margin-inline: auto;
  position: static;
  width: 91.25%;
}

#result-page-sns {
  display: flex;
  flex-direction: column;
  gap: 3.906vw;
  margin-block: 5.208vw;
  margin-inline: auto;
  width: 91.25%;
}
#result-page-sns::before, #result-page-sns::after {
  display: none;
}
#result-page-sns #social_bookmarks {
  float: none;
}
#result-page-sns #btn-other {
  float: none;
  font-size: 3.906vw;
  line-height: 13.021vw;
  height: 13.021vw;
  width: 100%;
}
#result-page-sns #btn-other::before {
  background: #D44D5B;
  border: 0;
  clip-path: polygon(0 0, 0% 100%, 100% 0);
  height: 100%;
  width: 6.51vw;
}

#result-banner-image {
  display: grid;
  gap: 7.813vw 3.906vw;
  grid-template-columns: repeat(2, 1fr);
  -webkit-margin-before: 11.719vw;
          margin-block-start: 11.719vw;
  margin-inline: auto;
  width: 91.25%;
}
#result-banner-image::before, #result-banner-image::after {
  display: none;
}
#result-banner-image .result-banner-col {
  float: none;
  margin-block: 0;
  margin-inline: 0;
  padding-block: 9.115vw 5.208vw;
  height: auto;
  width: auto;
}
#result-banner-image .result-banner-col h3 {
  font-size: 3.125vw;
  letter-spacing: 0.04em;
  line-height: 2.8;
  padding-inline: 2.604vw;
  width: 33.854vw;
  top: 0;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
#result-banner-image .result-banner-col .result-thumb {
  margin-inline: auto;
  width: 36.458vw;
}
#result-banner-image .result-banner-col .result-thumb span {
  height: auto;
}
#result-banner-image .result-banner-col .result-thumb img {
  max-height: 36.458vw;
  max-width: 100%;
}

.results-page-detail {
  margin-block: 18.229vw;
  width: 91.25%;
}
.results-page-detail table {
  -webkit-margin-after: 10.417vw;
          margin-block-end: 10.417vw;
}
.results-page-detail table th,
.results-page-detail table td {
  display: block;
  width: 100%;
}
.results-page-detail table th {
  border-bottom: 0;
  padding-block: 4.167vw;
  padding-inline: 5.208vw;
}
.results-page-detail table td {
  padding-block: 4.167vw;
  padding-inline: 7.813vw;
}
.results-page-detail table td a {
  padding-block: 0.5em;
  padding-inline: 1.25em;
}
.results-page-detail .btn {
  font-size: 4.167vw;
  letter-spacing: 0.04em;
  width: 100%;
}
.results-page-detail .btn a {
  padding-block: 4.167vw;
  padding-inline: 5.208vw;
}
.results-page-detail .btn a::before {
  top: 6.25vw;
}
.results-page-detail .btn a::after {
  top: 5.208vw;
}

.results-page-more {
  margin-inline: auto;
  width: 91.25%;
}
.results-page-more > div {
  padding: 1.302vw 3.906vw;
}

.results-page-more-scrollable {
  cursor: pointer;
  overflow-x: auto;
  width: 100%;
}

.results-page-more ul {
  display: grid;
  gap: 20px;
  grid-template-columns: repeat(4, 200px);
  margin-block: 0;
}
.results-page-more ul::before, .results-page-more ul::after {
  display: none;
}
.results-page-more li {
  display: grid;
  float: none;
  gap: 0;
  grid-row: span 4;
  grid-template-rows: subgrid;
  margin-inline: 0;
}
.results-page-more li .result-thumb {
  align-items: center;
  display: flex;
}
.results-page-more li .result-area {
  font-size: 3.385vw;
  line-height: 3;
  margin-block: 5.208vw;
  padding-inline: 5.208vw;
}
.results-page-more li .result-company {
  font-size: 3.385vw;
  margin-block: 2.604vw;
}
.results-page-more li .result-name {
  font-size: 4.167vw;
  margin-block: 2.604vw;
}
.results-page-more .btn-area {
  margin-block: 5.208vw;
}
.results-page-more .btn-area .btn {
  font-size: 4.167vw;
  line-height: 1.4;
  margin-inline: 0;
  text-indent: 0;
  text-wrap: pretty;
  width: 100%;
}
.results-page-more .btn-area .btn a {
  padding-block: 2.344vw;
  padding-inline: 2.344vw 7.813vw;
}
.results-page-more .btn-area .btn a::before {
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 2.344vw;
}
.results-page-more .btn-area .btn a::after {
  top: 50%;
  -webkit-transform: rotate(45deg) translateY(-75%);
          transform: rotate(45deg) translateY(-75%);
  right: 3.125vw;
}

.banner.results-page-more li .result-thumb {
  height: 200px;
  width: 200px;
}

.banner.results-page-more li .result-thumb img {
  max-height: 200px !important;
  width: auto !important;
  max-width: 200px !important;
}

.result-page-label {
  font-weight: 700;
}

#result-page-image.sp {
  background: none;
  height: auto;
  width: 100%;
}
#result-page-image.sp img {
  display: none;
}
#result-page-image.sp div {
  height: auto;
  overflow: unset;
}
#result-page-image.sp div img {
  margin-inline: 0;
  width: 100%;
}

.results-page-detail.banner table td a {
  background: #A9D46F;
}

.results-page-detail.banner table td a:hover {
  background: #c0e096;
}

.results-page-detail.banner .btn a {
  background: #8CC63E;
  background: linear-gradient(to bottom, #8CC63E 1%, #8CC63E 50%, #A2D063 51%, #8CC63E 100%);
}

/* ポップアップ 共通 */
.modal_area,
.modal_window {
  display: none;
}

.modal_area.active,
.modal_window.active {
  display: block;
}

.modal_area {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: -1px;
  background-color: rgba(0, 0, 0, 0.8);
  z-index: 1000;
}

.modal_area .layer {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 5;
}

.modal_window {
  margin: auto;
  width: 1240px;
  position: relative;
  z-index: 10;
}

#lp_detail.sp .modal_window {
  width: 840px;
}

/* lpポップアップ */
#lp_detail .modal_window {
  position: relative;
  height: 100%;
  padding-top: 10px;
}

#lp_detail .modal_window .sns-btn-area {
  margin: 20px 0;
  position: relative;
  z-index: 100;
}

#lp_detail .main_img {
  width: 880px;
  float: left;
  height: 85%;
  overflow: hidden;
  position: relative;
}

#lp_detail .main_img img {
  max-width: 860px;
  height: auto;
  margin: 0 auto;
  display: block;
}

#lp_detail .main_img #result-page-image.sp > img {
  width: auto;
  margin-left: 0;
}

#lp_detail .main_img .inner {
  width: 100%;
  height: 100%;
}

#lp_detail .main_img .inner.pc {
  overflow-y: scroll;
  overflow-x: hidden;
  background-color: #fff;
}

#lp_detail.sp .main_img {
  background: url(../img/results/sp_box_body.png) no-repeat 0 90px;
  width: 440px;
  height: 876px;
}

#lp_detail.sp .main_img .inner {
  height: 616px;
}

#lp_detail.sp .main_img img {
  max-width: 410px;
}

#lp_detail.sp .main_img .inner img {
  display: block;
  margin: auto;
  max-width: 358px;
  height: auto;
}

#lp_detail .details {
  margin-right: 40px;
  width: 320px;
  float: right;
  height: 85%;
  overflow: hidden;
}

#lp_detail .details .inner {
  background: #fff;
  width: 100%;
  height: calc(100% - 50px);
  overflow-y: auto;
  overflow-x: hidden;
}

#lp_detail .details .inner > * {
  width: 100%;
}

#lp_detail .result-company {
  background: url(../img/results/modal_windoe_tit.png);
  box-sizing: border-box;
  color: #fff;
  font-weight: bold;
  line-height: 50px;
  padding: 0 24px;
  width: 320px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

#lp_detail .result-name {
  font-size: 20px;
  font-weight: bold;
  line-height: 1.6;
  padding: 20px 0 0 30px;
  width: 250px;
}

#lp_detail .result-cat {
  color: #333;
  font-size: 12px;
  line-height: 26px;
  padding: 10px 0 20px 30px;
}

#lp_detail .result-cat span {
  background: #CCC;
  color: #FFF;
  margin-left: 10px;
  padding: 4px 10px;
}

#lp_detail .details .result-plan h3 {
  background: #333;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  line-height: 40px;
  margin: 16px 0;
  padding-left: 66px;
  box-sizing: border-box;
  position: relative;
}

#lp_detail .details .result-plan h3::before {
  content: "";
  display: inline-block;
  width: 50px;
  height: 50px;
  background: #FFF url(../img/results/modal_icon_01.png) no-repeat center center;
  border-radius: 50%;
  vertical-align: middle;
  position: absolute;
  top: -5px;
  left: 8px;
}

#lp_detail .details .result-plan p {
  color: #C10014;
  display: inline-block;
  font-size: 18px;
  font-weight: bold;
  padding-left: 30px;
  vertical-align: middle;
}

#lp_detail .details .text_box .tit {
  background: #333;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  line-height: 40px;
  margin: 16px 0;
  padding-left: 66px;
  box-sizing: border-box;
  position: relative;
}

#lp_detail .details .text_box .tit::before {
  content: "";
  display: inline-block;
  width: 50px;
  height: 50px;
  background: #FFF no-repeat center center;
  border-radius: 50%;
  vertical-align: middle;
  position: absolute;
  top: -5px;
  left: 8px;
}

#lp_detail .details .contents .tit::before {
  background-image: url(../img/results/modal_icon_02.png);
}

#lp_detail .details .concept .tit::before {
  background-image: url(../img/results/modal_icon_03.png);
}

#lp_detail .details .text_box .result-text {
  padding: 0 28px;
}

#lp_detail .details .contents {
  padding-top: 0px;
}

#lp_detail .details .concept {
  padding-top: 0px;
}

#lp_detail .details .btn {
  box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.5);
  font-size: 16px;
  letter-spacing: 2px;
  margin: 20px auto;
  width: 230px !important;
}

#lp_detail .details .btn a {
  background: #C10014;
  background: linear-gradient(to bottom, #C10014 1%, #C10014 50%, #CD3141 51%, #C10014 100%);
  padding: 18px 20px;
  text-indent: 0;
}

#lp_detail .details .btn a::before, #lp_detail .details .btn a::after {
  display: none;
}

#lp_detail .details .btn a:hover {
  opacity: 0.8;
}

#lp_detail .close_btn {
  display: block;
  width: 30px;
  position: absolute;
  top: 40px;
  right: 0px;
  z-index: 110;
}

.close_btn img {
  border-radius: 5px;
  width: auto !important;
}

#lp_detail .loading {
  display: none;
  width: 33px;
  height: 33px;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}

#lp_detail .loading.active {
  display: block;
}

#lp_detail .img_loading {
  display: none;
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
}

#lp_detail .img_loading img {
  width: 33px !important;
  margin: auto !important;
}

#lp_detail .img_loading.active {
  display: block;
}

#fullscreen {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: none;
  position: fixed;
  z-index: 999;
}

.fullscreen-window {
  left: 0;
  margin: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  display: block;
  background: rgba(0, 0, 0, 0.8);
  position: absolute;
  z-index: 110;
}

.display-area {
  margin: auto;
  width: 1250px;
  position: relative;
}

#fullscreen .btn-close {
  position: absolute;
  top: 20px;
  right: 0;
}

.display {
  margin: 20px 0 20px 10px;
  width: 1170px;
}

.display-head, .display-bottom {
  margin: 0 auto;
}

.display-body {
  background: url(../img/results/pc_box_body.png) no-repeat 23px 0;
  margin: 0 auto;
  width: 100%;
  height: 590px;
  overflow: auto;
  overflow-x: hidden;
}

.display-body p {
  margin-left: 64px;
  height: 590px;
  width: 1040px;
}

/*imgpreview*/
#imgPreviewContainer {
  display: none !important;
}

/*lightbox*/
#lightbox #outerImageContainer {
  box-sizing: border-box;
  height: auto !important;
  max-height: 90vh;
  max-height: 90dvh;
  max-width: 91.25%;
}
#lightbox #imageContainer {
  padding-block: 5vh;
  padding-block: 5dvh;
}
#lightbox img#lightboxImage {
  height: auto !important;
  max-height: calc(80vh - 50px);
  max-height: calc(85dvh - 50px);
  max-width: 100%;
  width: auto !important;
}
#lightbox #imageDataContainer {
  max-width: 91.25%;
}
#lightbox #hoverNav a {
  height: auto;
  max-height: 100%;
}
#lightbox #nextLink:hover, #lightbox #nextLink:visited:hover, #lightbox #prevLink:hover, #lightbox #prevLink:visited:hover {
  background-size: 40px;
}

#result-photo-image,
#result-print-image {
  margin-inline: auto;
  width: 91.25%;
}

.photo-gallery,
.print-gallery {
  margin-block: 5.208vw;
}
.photo-gallery .grid-item,
.print-gallery .grid-item {
  margin-bottom: 3.906vw;
  width: 48%;
}
.photo-gallery .gutter-sizer,
.print-gallery .gutter-sizer {
  width: 4%;
}

/*検索結果、件数表示*/
.total-result-search {
  font-size: 4.167vw;
  -webkit-margin-before: 9.115vw;
          margin-block-start: 9.115vw;
  margin-inline: auto;
  width: 91.25%;
}

/* =======================================
 料金関連
======================================= */
#price h2 {
  background-position: 0;
  background-size: 5.208vw auto;
  box-sizing: border-box;
  font-size: 4.688vw;
  line-height: 1.3;
  -webkit-margin-before: 7.813vw;
          margin-block-start: 7.813vw;
  margin-inline: auto;
  -webkit-padding-start: 5.208vw;
          padding-inline-start: 5.208vw;
  width: 91.25%;
}

#price-intro {
  margin-block: 5.208vw 5.208vw;
  position: relative;
}
#price-intro::before {
  background: 0 0/contain no-repeat;
  content: "";
  display: block;
  height: 42.708vw;
  width: 52.083vw;
  position: absolute;
}
#price-intro #price-intro-body {
  -webkit-padding-start: 0;
          padding-inline-start: 0;
  margin-inline: auto;
  width: 91.25%;
}
#price-intro .price-stit {
  font-size: 5.469vw;
  -webkit-margin-after: 5.208vw;
          margin-block-end: 5.208vw;
}
#price-intro .price-txt {
  -webkit-margin-after: 3.906vw;
          margin-block-end: 3.906vw;
}
#price-intro .price-btn {
  font-size: 4.167vw;
  line-height: 11.719vw;
  text-indent: -11.719vw;
}
#price-intro .price-btn a::after {
  background: url(../img/page/price/btn_arrow_sp.svg) 0/contain no-repeat;
  content: "";
  height: 11.719vw;
  width: 11.719vw;
}

.price-menu {
  -webkit-margin-after: 6.51vw;
          margin-block-end: 6.51vw;
}
.price-menu h3 {
  border-radius: 3.906vw;
  box-sizing: border-box;
  font-size: 4.167vw;
  line-height: 1.4;
  margin-inline: auto;
  padding-block: 1.302vw;
  padding-inline: 7.813vw 3.906vw;
  position: relative;
  width: 91.25%;
}
.price-menu h3::after {
  background: #fff;
  content: "";
  display: block;
  height: 100%;
  left: 4.557vw;
  position: absolute;
  top: 0;
  width: 2px;
}
.price-menu .price-txt {
  font-size: 3.646vw;
  -webkit-margin-after: 10.417vw;
          margin-block-end: 10.417vw;
  margin-inline: auto;
  width: 91.25%;
}
.price-menu dl {
  -webkit-margin-after: 6.51vw;
          margin-block-end: 6.51vw;
  padding-block: 2.604vw;
  padding-inline: 0;
  width: 91.25%;
}
.price-menu dl dt, .price-menu dl dd {
  display: block;
  margin-inline: auto;
  width: 90%;
}
.price-menu dl dt {
  border-bottom: 1px solid #B3B3B3;
  border-right: 0;
  font-size: 3.646vw;
  -webkit-margin-after: 2.604vw;
          margin-block-end: 2.604vw;
  -webkit-padding-after: 2.604vw;
          padding-block-end: 2.604vw;
  text-align: center;
}
.price-menu dl dd {
  font-size: 3.385vw;
  -webkit-padding-start: 0;
          padding-inline-start: 0;
}
.price-menu h4 {
  font-size: 3.906vw;
  margin-block: 6.51vw 1.302vw;
  width: 91.25%;
}
.price-menu .alignright {
  font-size: 3.125vw;
  margin-inline: auto;
  width: 91.25%;
}

.price-table-btn,
.price-table-btn-wid180 {
  font-size: 3.125vw;
  line-height: 2.2;
}
.price-table-btn a,
.price-table-btn-wid180 a {
  border-radius: 2.604vw;
  padding-inline: 3.906vw 6.51vw;
}
.price-table-btn a::after,
.price-table-btn-wid180 a::after {
  height: 2.083vw;
  -webkit-margin-before: -1.172vw;
          margin-block-start: -1.172vw;
  right: 2.604vw;
  top: 50%;
  width: 2.083vw;
}

.price-table-btn-wid180 {
  display: block;
  -webkit-margin-before: 1.302vw;
          margin-block-start: 1.302vw;
  -webkit-margin-start: 0;
          margin-inline-start: 0;
  width: 14em !important;
}

.price-table-scrollable {
  display: flex;
  margin-inline: auto;
  overflow-x: scroll;
  -webkit-padding-after: 2.604vw;
          padding-block-end: 2.604vw;
  white-space: nowrap;
  width: 91.25%;
}
.price-table-scrollable .scroll-hint-icon-wrap {
  z-index: 10;
}

.price-table {
  font-size: 3.385vw;
  margin-inline: 0;
  width: auto;
}
.price-table * {
  box-sizing: border-box;
}
.price-table thead {
  float: left;
  left: 0;
  position: sticky;
  z-index: 10;
}
.price-table tbody {
  display: flex;
}
.price-table th {
  padding-block: 3.906vw;
  padding-inline: 2.604vw;
}
.price-table td {
  padding-block: 3.906vw;
  padding-inline: 2.604vw;
  width: auto;
}
.price-table thead th {
  background: #fff;
}
.price-table thead td::after {
  display: none;
}
.price-table thead td strong {
  font-size: 120%;
}
.price-table thead td .price-table-btn {
  margin-block: 0;
  margin-inline: 0;
  width: auto;
}
.price-table tbody th {
  text-indent: 0;
}
.price-table tbody th.price-th-sub {
  width: 140px;
}
.price-table tbody th.price-notes {
  width: 66.406vw;
}
.price-table tbody td.price-notes {
  font-size: 3.385vw;
  padding-block: 3.906vw;
  padding-inline: 2.604vw;
  width: 66.406vw;
}
.price-table tbody td.price-notes p {
  white-space: break-spaces;
  width: calc(100% - 1em);
}
.price-table tbody td.price-value-01 {
  font-size: 3.906vw;
}
.price-table tbody td.price-value-02 {
  font-size: 3.646vw;
}
.price-table tbody td.price-value-02 span {
  display: block;
  font-size: 82%;
  line-height: 1.5;
  margin-block: 0;
  margin-inline: auto;
  width: 6em;
}

.price-table.price-primary th, .price-table.price-primary td {
  align-items: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.price-table.price-primary thead th, .price-table.price-primary thead td {
  width: 28.646vw;
}
.price-table.price-primary thead th {
  height: 15.625vw;
}
.price-table.price-primary tbody th, .price-table.price-primary tbody td {
  min-width: 31.25vw;
}
.price-table.price-primary tbody th {
  align-items: center;
  display: flex;
  height: 15.625vw;
  justify-content: center;
  text-align: center;
}

.price-table.price-option {
  display: table;
}
.price-table.price-option tbody {
  display: table-row-group;
}
.price-table.price-option tbody tr {
  display: table-row;
}
.price-table.price-option tbody th {
  display: table-cell;
  left: 0;
  padding-inline: 2.604vw;
  position: sticky;
  text-indent: 0;
  width: 39.063vw;
  z-index: 1;
}
.price-table.price-option tbody td {
  display: table-cell;
  text-align: left;
  min-width: 54.688vw;
  width: auto;
}

.price-table.price-option2 {
  width: 100%;
}
.price-table.price-option2 thead {
  float: none;
}
.price-table.price-option2 thead th {
  display: block;
  width: 100%;
}
.price-table.price-option2 tbody {
  display: table-row-group;
}
.price-table.price-option2 tbody td {
  border-left: 0;
  display: block;
  width: 100%;
}

.price-table a.tooltip {
  display: none !important;
}

#price-tab {
  -webkit-padding-before: 20.833vw;
          padding-block-start: 20.833vw;
  width: 100%;
}
#price-tab::after {
  height: 1.302vw;
  top: 11.719vw;
}
#price-tab label {
  font-size: 3.906vw;
  letter-spacing: 0.04em;
  line-height: 10.417vw;
  height: 11.719vw;
  -webkit-padding-before: 0.651vw;
          padding-block-start: 0.651vw;
  width: 48.828vw;
}
#price-tab label::after {
  border-width: 0 2.604vw 2.604vw 0;
}
#price-tab label#price-tab02L {
  left: inherit;
  right: 0;
}

#price .bnr {
  -webkit-margin-after: 10.417vw;
          margin-block-end: 10.417vw;
  margin-inline: auto;
  width: 91.25%;
}

/*ページごとの設定*/
#price.top h2 {
  background-position: 0 0;
  background-size: auto 1em;
}
#price.top #price-intro {
  background: url(../img/page/price/intro_bg_sp.jpg) 0 100%/cover no-repeat;
  height: auto;
  margin-block: 5.208vw 10.417vw;
  padding-block: 5.208vw 7.813vw;
  position: relative;
}
#price.top #price-intro::before {
  background-image: url(../img/page/price/top_bg_01_sp.png);
  top: -5.208vw;
  right: -1.302vw;
}
#price.top #price-intro-body {
  -webkit-padding-before: 0;
          padding-block-start: 0;
}
#price.top .price-menu h3 {
  background: #C10014;
  border-radius: 10%/130%;
}
#price.top .price-table.price-primary thead th, #price.top .price-table.price-primary thead td {
  width: 32.552vw;
}
#price.top .price-table.price-primary thead td {
  line-height: 1.4;
}
#price.top .price-table.price-primary thead td:not(:last-child) {
  border-bottom: 1px solid #fff;
}
#price.top .price-table.price-primary tbody th .price-table-btn {
  margin-block: 0;
  margin-inline: auto;
  width: 8em;
}
#price.top .price-table.price-primary tbody th:not(:last-child) {
  border-right: 2px solid #fff;
}
#price.top .price-table.price-primary tbody td:not(:last-child) {
  border-bottom: 1px solid #666;
}
#price.top .price-table.price-primary tbody td.price-value-01:last-child {
  border-bottom: 0;
}
#price.top .price-table.price-primary tbody th.price-notes,
#price.top .price-table.price-primary tbody td.price-notes {
  white-space: normal;
  width: 52.083vw;
}
#price.top #price-pc,
#price.top #price-sp {
  background: none;
}
#price.top #price-pc .price-table.price-primary th {
  height: 27.344vw;
}
#price.top #price-pc .price-table.price-primary td {
  height: 26.042vw;
}
#price.top #price-pc .price-table.price-primary td[colspan="3"] {
  height: 78.125vw;
}
#price.top #price-pc .price-table.price-primary tbody th[rowspan="2"] {
  -webkit-padding-after: 16.927vw;
          padding-block-end: 16.927vw;
  width: 67.708vw;
}
#price.top #price-pc .price-table.price-primary tbody .price-value-01,
#price.top #price-pc .price-table.price-primary tbody .price-value-02,
#price.top #price-pc .price-table.price-primary tbody .price-th-sub {
  width: 33.854vw;
}
#price.top #price-pc .price-table.price-primary tbody tr:nth-of-type(2) {
  -webkit-margin-before: 16.927vw;
          margin-block-start: 16.927vw;
  -webkit-margin-start: -33.854vw;
          margin-inline-start: -33.854vw;
}
#price.top #price-pc .price-table.price-primary tbody th.price-value-01 {
  border-bottom: 1px solid #fff;
}
#price.top #price-pc .price-table.price-primary tbody .price-th-sub {
  -webkit-border-before: 0;
          border-block-start: 0;
  height: 10.417vw;
  padding-block: 0;
}
#price.top #price-pc .price-table.price-primary tbody .price-th-sub.price-value-01 {
  -webkit-margin-before: -10.417vw;
          margin-block-start: -10.417vw;
}
#price.top #price-sp h3 {
  -webkit-padding-before: 0;
          padding-block-start: 0;
}
#price.top #price-sp .price-txt {
  -webkit-margin-after: 0;
          margin-block-end: 0;
}
#price.top #price-sp .price-table.price-primary td {
  height: 24.74vw;
}
#price.top #price-sp .price-table.price-primary td[colspan="3"] {
  height: 74.219vw;
}
#price.top #price-tab .price-tab-contens {
  -webkit-padding-after: 1.302vw;
          padding-block-end: 1.302vw;
}
#price.top #price-before #price-before-about {
  background: none;
}
#price.top #price-before #price-before-about .price-before-required div.price-before-col {
  background: #F3CCD0;
}
#price.top #price-before #price-before-about .price-before-required h6 {
  background: #C10014;
}
#price.top .modal_area_price {
  -webkit-padding-before: 13.021vw;
          padding-block-start: 13.021vw;
}
#price.top .modal_area_price h2 {
  padding-inline: 0;
}

.price-stit2 {
  height: auto;
}

.price-tabmenu {
  margin-block: 9.115vw;
  margin-inline: auto;
  padding-block: 3.906vw;
  width: 91.25%;
}
.price-tabmenu h3 {
  font-size: 5.469vw;
  -webkit-margin-after: 16.927vw;
          margin-block-end: 16.927vw;
  text-shadow: none;
}
.price-tabmenu div {
  width: 90%;
}
.price-tabmenu .price-tab-txt {
  font-size: 3.646vw;
  margin-block: 3.906vw;
}
.price-tabmenu label {
  border-radius: 3.906vw;
  font-size: 3.385vw;
  height: 10.417vw;
  line-height: 10.417vw;
  top: 14.323vw;
}

#price-custom {
  margin-block: 9.115vw;
  margin-inline: auto;
  padding-block: 3.906vw;
  width: 91.25%;
}
#price-custom h3 {
  font-size: 5.469vw;
  -webkit-margin-after: 5.208vw;
          margin-block-end: 5.208vw;
  text-shadow: none;
}
#price-custom div.clearfix {
  width: 90%;
}
#price-custom .price-tab-txt {
  font-size: 3.646vw;
  margin-block: 3.906vw;
}
#price-custom div.floatleft {
  float: none;
}
#price-custom div.floatright {
  float: none;
  position: relative;
  width: 100%;
}
#price-custom div.floatright::before {
  background: #8CC63F;
  content: "";
  height: 31.25vw;
  left: 11.719vw;
  position: absolute;
  top: 0;
  -webkit-transform: rotate(25deg) translateY(-100%);
          transform: rotate(25deg) translateY(-100%);
  width: 3px;
}
#price-custom dl {
  -webkit-padding-before: 3.906vw;
          padding-block-start: 3.906vw;
}
#price-custom dl dt {
  font-size: 5.208vw;
  -webkit-margin-after: 1.302vw;
          margin-block-end: 1.302vw;
}
#price-custom dl dd li {
  background-position: 0.4em 50%;
  background-size: 5.208vw auto;
  font-size: 4.427vw;
  line-height: 2;
  -webkit-padding-start: 9.115vw;
          padding-inline-start: 9.115vw;
}
#price-custom dl dd p.alignright {
  font-size: 4.167vw;
}
#price-custom .price-more-btn {
  -webkit-margin-after: 6.51vw;
          margin-block-end: 6.51vw;
  width: 65.104vw;
}

#price.feature h2 {
  background-position: 0 0;
  background-size: auto 1em;
}
#price.feature #price-intro {
  background: url(../img/page/price/intro_bg_sp.jpg) 0 100%/cover no-repeat;
  height: auto;
  margin-block: 5.208vw 10.417vw;
  padding-block: 5.208vw 7.813vw;
  position: relative;
}
#price.feature #price-intro::before {
  background-image: url(../img/page/price/feature_bg_01_sp.png);
  top: -7.813vw;
  right: -3.906vw;
}
#price.feature #price-intro-body {
  -webkit-padding-before: 0;
          padding-block-start: 0;
}
#price.feature .price-menu h3 {
  background: #C10014;
  border-radius: 20%/130%;
}
#price.feature .price-table.price-primary thead th, #price.feature .price-table.price-primary thead td {
  width: 32.552vw;
}
#price.feature .price-table.price-primary thead td {
  line-height: 1.4;
}
#price.feature .price-table.price-primary thead td:not(:last-child) {
  border-bottom: 1px solid #fff;
}
#price.feature .price-table.price-primary tbody th .price-table-btn {
  margin-block: 0;
  margin-inline: auto;
  width: 8em;
}
#price.feature .price-table.price-primary tbody th:not(:last-child) {
  border-right: 2px solid #fff;
}
#price.feature .price-table.price-primary tbody td:not(:last-child) {
  border-bottom: 1px solid #666;
}
#price.feature .price-table.price-primary tbody td.price-value-01:last-child {
  border-bottom: 0;
}
#price.feature .price-table.price-primary tbody th.price-notes,
#price.feature .price-table.price-primary tbody td.price-notes {
  white-space: normal;
  width: 52.083vw;
}
#price.feature .price-table.price-option2 tbody th {
  left: 0;
  position: sticky;
  z-index: 1;
}
#price.feature .price-table.price-option2 tbody td {
  display: table-cell;
  width: auto;
}
#price.feature .price-table.price-option2 tbody td .price-table-btn-wid180 {
  margin-inline: auto;
}
#price.feature #price-pc {
  background: none;
}
#price.feature #price-pc .price-txt {
  -webkit-margin-after: 0;
          margin-block-end: 0;
}
#price.feature #price-pc .price-table.price-primary th {
  height: 27.344vw;
}
#price.feature #price-pc .price-table.price-primary td {
  height: 24.74vw;
}
#price.feature #price-pc .price-table.price-primary td[colspan="3"] {
  height: 74.219vw;
}
#price.feature #price-pc .price-table.price-primary tbody th[rowspan="2"] {
  -webkit-padding-after: 16.927vw;
          padding-block-end: 16.927vw;
  width: 67.708vw;
}
#price.feature #price-pc .price-table.price-primary tbody th.price-value-01 {
  border-bottom: 1px solid #fff;
}
#price.feature #price-pc .price-table.price-primary tbody .price-value-01,
#price.feature #price-pc .price-table.price-primary tbody .price-value-02,
#price.feature #price-pc .price-table.price-primary tbody .price-th-sub {
  width: 33.854vw;
}
#price.feature #price-pc .price-table.price-primary tbody tr:nth-of-type(2) {
  -webkit-margin-before: 16.927vw;
          margin-block-start: 16.927vw;
  -webkit-margin-start: -33.854vw;
          margin-inline-start: -33.854vw;
}
#price.feature #price-pc .price-table.price-primary tbody .price-th-sub {
  -webkit-border-before: 0;
          border-block-start: 0;
  height: 10.417vw;
  padding-block: 0;
}
#price.feature #price-pc .price-table.price-primary tbody .price-th-sub.price-value-01 {
  -webkit-margin-before: -10.417vw;
          margin-block-start: -10.417vw;
}
#price.feature #price-sp {
  background: none;
}
#price.feature #price-sp .price-table.price-primary td {
  height: 24.74vw;
}
#price.feature #price-sp .price-table.price-primary td[colspan="3"] {
  height: 74.219vw;
}
#price.feature #price-before #price-before-about {
  background: none;
}
#price.feature #price-before #price-before-about .price-before-required div.price-before-col {
  background: #F3CCD0;
}
#price.feature #price-before #price-before-about .price-before-required h6 {
  background: #C10014;
}
#price.feature .modal_area_price {
  -webkit-padding-before: 13.021vw;
          padding-block-start: 13.021vw;
}
#price.feature .modal_area_price h2 {
  padding-inline: 0;
}

#price.itemlp h2 {
  background-position: 0 0;
  background-size: auto 1em;
}
#price.itemlp #price-intro {
  background: url(../img/page/price/intro_bg_sp.jpg) 0 100%/cover no-repeat;
  height: auto;
  margin-block: 5.208vw 10.417vw;
  padding-block: 5.208vw 7.813vw;
  position: relative;
}
#price.itemlp #price-intro::before {
  background-image: url(../img/page/price/itemlp_bg_01_sp.png);
  top: -7.813vw;
  right: -3.906vw;
}
#price.itemlp #price-intro-body {
  -webkit-padding-before: 0;
          padding-block-start: 0;
}
#price.itemlp .price-menu h3 {
  background: #C10014;
  border-radius: 10%/130%;
}
#price.itemlp .price-table.price-primary thead th, #price.itemlp .price-table.price-primary thead td {
  width: 32.552vw;
}
#price.itemlp .price-table.price-primary thead td {
  line-height: 1.4;
}
#price.itemlp .price-table.price-primary thead td:not(:last-child) {
  border-bottom: 1px solid #fff;
}
#price.itemlp .price-table.price-primary tbody th .price-table-btn {
  margin-block: 0;
  margin-inline: auto;
  width: 8em;
}
#price.itemlp .price-table.price-primary tbody th:not(:last-child) {
  border-right: 2px solid #fff;
}
#price.itemlp .price-table.price-primary tbody td:not(:last-child) {
  border-bottom: 1px solid #666;
}
#price.itemlp .price-table.price-primary tbody td.price-value-01:last-child {
  border-bottom: 0;
}
#price.itemlp .price-table.price-primary tbody th.price-notes,
#price.itemlp .price-table.price-primary tbody td.price-notes {
  white-space: normal;
  width: 59.896vw;
}
#price.itemlp .price-table.price-option2 tbody th {
  left: 0;
  position: sticky;
  z-index: 1;
}
#price.itemlp .price-table.price-option2 tbody th .price-table-btn-wid180 {
  width: 11em !important;
}
#price.itemlp .price-table.price-option2 tbody td {
  display: table-cell;
  width: auto;
}
#price.itemlp #price-pc {
  background: none;
}
#price.itemlp #price-pc .price-txt {
  -webkit-margin-after: 0;
          margin-block-end: 0;
}
#price.itemlp #price-pc .price-table.price-primary th {
  height: 27.344vw;
}
#price.itemlp #price-pc .price-table.price-primary td {
  height: 28.646vw;
}
#price.itemlp #price-pc .price-table.price-primary td[colspan="3"] {
  height: 85.938vw;
}
#price.itemlp #price-pc .price-table.price-primary tbody th[rowspan="2"] {
  -webkit-padding-after: 16.927vw;
          padding-block-end: 16.927vw;
  width: 67.708vw;
}
#price.itemlp #price-pc .price-table.price-primary tbody th.price-value-01 {
  border-bottom: 1px solid #fff;
}
#price.itemlp #price-pc .price-table.price-primary tbody .price-value-01,
#price.itemlp #price-pc .price-table.price-primary tbody .price-value-02,
#price.itemlp #price-pc .price-table.price-primary tbody .price-th-sub {
  width: 33.854vw;
}
#price.itemlp #price-pc .price-table.price-primary tbody tr:nth-of-type(2) {
  -webkit-margin-before: 16.927vw;
          margin-block-start: 16.927vw;
  -webkit-margin-start: -33.854vw;
          margin-inline-start: -33.854vw;
}
#price.itemlp #price-pc .price-table.price-primary tbody .price-th-sub {
  -webkit-border-before: 0;
          border-block-start: 0;
  height: 10.417vw;
  padding-block: 0;
}
#price.itemlp #price-pc .price-table.price-primary tbody .price-th-sub.price-value-01 {
  -webkit-margin-before: -10.417vw;
          margin-block-start: -10.417vw;
}
#price.itemlp #price-sp {
  background: none;
}
#price.itemlp #price-sp .price-table.price-primary td {
  height: 24.74vw;
}
#price.itemlp #price-sp .price-table.price-primary td[colspan="3"] {
  height: 74.219vw;
}
#price.itemlp #price-before #price-before-about {
  background: none;
}
#price.itemlp #price-before #price-before-about .price-before-required div.price-before-col {
  background: #F3CCD0;
}
#price.itemlp #price-before #price-before-about .price-before-required h6 {
  background: #C10014;
}
#price.itemlp .modal_area_price {
  -webkit-padding-before: 13.021vw;
          padding-block-start: 13.021vw;
}
#price.itemlp .modal_area_price h2 {
  padding-inline: 0;
}

#price.image-edit h2 {
  background-position: 0 0;
  background-size: auto 1em;
}
#price.image-edit #price-intro {
  background: url(../img/page/price/intro_bg_sp.jpg) 0 100%/cover no-repeat;
  height: auto;
  margin-block: 5.208vw 10.417vw;
  padding-block: 6.51vw 7.813vw;
}
#price.image-edit #price-intro::before {
  background-image: url(../img/page/price/image-edit_bg_01_sp.png);
  top: -6.51vw;
  right: -2.604vw;
}
#price.image-edit #price-intro-body {
  -webkit-padding-before: 0;
          padding-block-start: 0;
}
#price.image-edit .price-stit2 {
  background: #073397;
  border-radius: 10%/130%;
}
#price.image-edit .price-menu .price-txt {
  margin-block: 3.906vw 10.417vw;
  width: 91.25%;
}
#price.image-edit .price-table.price-primary td {
  height: 19.531vw;
  width: auto;
}
#price.image-edit .price-table.price-primary td.price-value-01 {
  padding-inline: 2em;
}
#price.image-edit .price-table.price-primary thead td:not(:last-child) {
  border-bottom: 1px solid #fff;
}
#price.image-edit .price-table.price-primary thead th, #price.image-edit .price-table.price-primary thead td {
  width: 32.552vw;
}
#price.image-edit .price-table.price-primary tbody th:not(:last-child) {
  border-right: 2px solid #fff;
}
#price.image-edit .price-table.price-primary tbody td:not(:last-child) {
  border-bottom: 1px solid #666;
}
#price.image-edit .price-table.price-primary tbody td.price-notes {
  height: 39.063vw;
}
#price.image-edit .price-tabmenu h3 {
  -webkit-margin-after: 31.25vw;
          margin-block-end: 31.25vw;
}
#price.image-edit .price-tabmenu label {
  width: 26.042vw;
}
#price.image-edit .price-tabmenu label#price-tabbtn-01 {
  left: 5%;
}
#price.image-edit .price-tabmenu label#price-tabbtn-02 {
  left: calc(5% + 27.995vw);
}
#price.image-edit .price-tabmenu label#price-tabbtn-03 {
  left: inherit;
  right: 5%;
}
#price.image-edit .price-tabmenu label#price-tabbtn-04 {
  left: 5%;
  right: inherit;
  top: 27.344vw;
}
#price.image-edit .price-tabmenu label#price-tabbtn-05 {
  left: calc(5% + 27.995vw);
  right: inherit;
  top: 27.344vw;
}
#price.image-edit .price-tabmenu .tab-col-scrollable {
  overflow-x: scroll;
  -webkit-padding-after: 1.302vw;
          padding-block-end: 1.302vw;
}
#price.image-edit .price-tabmenu .tab-col-scrollable img {
  max-width: 840px;
  width: 130.208vw;
}

#price.ad-image h2 {
  background-position: 0 0;
  background-size: auto 1em;
}
#price.ad-image #price-intro {
  background: url(../img/page/price/intro_bg_sp.jpg) 0 100%/cover no-repeat;
  height: auto;
  margin-block: 5.208vw 10.417vw;
  padding-block: 5.208vw 7.813vw;
}
#price.ad-image #price-intro::before {
  background-image: url(../img/page/price/adimage_bg_01_sp.png);
  top: -7.813vw;
  right: -1.302vw;
}
#price.ad-image #price-intro-body {
  -webkit-padding-before: 0;
          padding-block-start: 0;
}
#price.ad-image .price-stit2 {
  background: #8CC63F;
  border-radius: 10%/130%;
}
#price.ad-image .price-menu .price-txt {
  margin-block: 3.906vw 10.417vw;
  width: 91.25%;
}
#price.ad-image .price-menu .price-txt p {
  float: none;
  -webkit-margin-after: 3.906vw;
          margin-block-end: 3.906vw;
  width: 100%;
}
#price.ad-image .price-menu .price-txt .floatright {
  float: none;
}
#price.ad-image .price-table.price-primary td {
  height: 19.531vw;
  width: auto;
}
#price.ad-image .price-table.price-primary td[colspan="2"] {
  height: 39.063vw;
}
#price.ad-image .price-table.price-primary td:not(:last-child) {
  border-bottom: 2px solid #fff;
}
#price.ad-image .price-table.price-primary th:not(:last-child) {
  border-right: 2px solid #fff;
}
#price.ad-image .price-tabmenu h3 {
  -webkit-margin-after: 31.25vw;
          margin-block-end: 31.25vw;
}
#price.ad-image .price-tabmenu label {
  width: 40.039vw;
}
#price.ad-image .price-tabmenu label#price-tabbtn-01 {
  left: 5%;
}
#price.ad-image .price-tabmenu label#price-tabbtn-02 {
  left: inherit;
  right: 5%;
}
#price.ad-image .price-tabmenu label#price-tabbtn-03 {
  left: 5%;
  right: inherit;
  top: 27.344vw;
}
#price.ad-image .price-tabmenu div.floatleft,
#price.ad-image .price-tabmenu div.floatright {
  float: none;
  width: 100%;
}
#price.ad-image .price-tabmenu div.floatright {
  -webkit-margin-before: 5.859vw;
          margin-block-start: 5.859vw;
}
#price.ad-image .price-tabmenu h4 {
  font-size: 4.688vw;
  -webkit-margin-before: 5.208vw;
          margin-block-start: 5.208vw;
}
#price.ad-image .price-tabmenu .price-tab-txt {
  -webkit-margin-before: 2.604vw;
          margin-block-start: 2.604vw;
}

#price.emagazine h2 {
  background-position: 0 0;
  background-size: auto 1em;
}
#price.emagazine #price-intro {
  background: url(../img/page/price/intro_bg_sp.jpg) 0 100%/cover no-repeat;
  height: auto;
  margin-block: 7.813vw 10.417vw;
  padding-block: 5.208vw 7.813vw;
}
#price.emagazine #price-intro::before {
  background-image: url(../img/page/price/emagazine_bg_01_sp.png);
  top: -6.51vw;
  right: -7.813vw;
}
#price.emagazine #price-intro-body {
  -webkit-padding-before: 0;
          padding-block-start: 0;
}
#price.emagazine .price-stit2 {
  background: #8CC63F;
  border-radius: 10%/130%;
}
#price.emagazine .price-menu .price-txt {
  margin-block: 3.906vw 10.417vw;
  width: 91.25%;
}
#price.emagazine .price-menu .price-txt p {
  float: none;
  -webkit-margin-after: 3.906vw;
          margin-block-end: 3.906vw;
  width: 100%;
}
#price.emagazine .price-menu .price-txt .floatright {
  float: none;
}
#price.emagazine .price-table.price-primary td {
  height: 26.042vw;
  width: auto;
}
#price.emagazine .price-table.price-primary td[colspan="2"] {
  height: 52.083vw;
}
#price.emagazine .price-table.price-primary td:not(:last-child) {
  border-bottom: 2px solid #fff;
}
#price.emagazine .price-table.price-primary th:not(:last-child) {
  border-right: 2px solid #fff;
}
#price.emagazine .price-table.price-primary thead td {
  line-height: 1.4;
}
#price.emagazine #price-before #price-before-about {
  background: none;
}

#price.cart h2 {
  background-position: 0 0;
  background-size: auto 1em;
}
#price.cart #price-intro {
  background: url(../img/page/price/intro_bg_sp.jpg) 0 100%/cover no-repeat;
  height: auto;
  margin-block: 9.115vw 10.417vw;
  padding-block: 5.208vw 7.813vw;
}
#price.cart #price-intro::before {
  background-image: url(../img/page/price/cart_bg_01_sp.png);
  top: -10.417vw;
  right: -1.302vw;
}
#price.cart #price-intro-body {
  -webkit-padding-before: 0;
          padding-block-start: 0;
}
#price.cart .price-stit2 {
  background: #8CC63F;
  border-radius: 20%/130%;
}
#price.cart .price-menu .price-txt {
  margin-block: 3.906vw 7.813vw;
  width: 91.25%;
}
#price.cart .price-table.price-primary td {
  height: 19.531vw;
  width: 35.156vw;
}
#price.cart .price-table.price-primary td[colspan="3"] {
  height: 58.594vw;
}
#price.cart .price-table.price-primary td:not(:last-child) {
  border-bottom: 2px solid #fff;
}
#price.cart .price-table.price-primary th:not(:last-child) {
  border-right: 2px solid #fff;
}

#price.sp-header h2 {
  background: url(../img/page/price/icon_h2_green.png) no-repeat 0 2px;
  color: #8CC63F;
}

#price.sp-header #price-intro {
  background: url(../img/page/price/sp_header_bg_01.jpg);
  height: 380px;
}

#price.sp-header #price-intro-body {
  padding-top: 100px;
}

#price.sp-header .price-stit2 {
  background-image: url(../img/page/price/stit_bg_green.png);
}

#price.sp-header .price-menu .price-txt {
  margin: 30px auto;
  width: 900px;
}

#price.sp-header .price-table tbody td {
  border-bottom: none;
}

#price.photo h2 {
  background-position: 0 0;
  background-size: auto 1em;
}
#price.photo #price-intro {
  background: url(../img/page/price/intro_bg_sp.jpg) 0 100%/cover no-repeat;
  height: auto;
  margin-block: 5.208vw 10.417vw;
  padding-block: 5.208vw 7.813vw;
  position: relative;
}
#price.photo #price-intro::before {
  background-image: url(../img/page/price/photo_bg_01_sp.png);
  top: -1.302vw;
  right: -1.302vw;
}
#price.photo #price-intro-body {
  -webkit-padding-before: 0;
          padding-block-start: 0;
}
#price.photo .price-stit2 {
  background: #073397;
  border-radius: 20%/130%;
}
#price.photo .price-menu .price-txt {
  margin-block: 3.906vw 10.417vw;
  width: 91.25%;
}
#price.photo .price-menu .price-txt p {
  float: none;
  -webkit-margin-after: 3.906vw;
          margin-block-end: 3.906vw;
  width: 100%;
}
#price.photo .price-menu .price-txt .floatright {
  float: none;
}
#price.photo .price-table.price-primary td {
  height: 39.063vw;
}
#price.photo .price-table.price-primary thead td:not(:last-child) {
  border-bottom: 1px solid #fff;
}
#price.photo .price-table.price-primary tbody th:not(:last-child) {
  border-right: 2px solid #fff;
}
#price.photo .price-table.price-primary tbody td:not(:last-child) {
  border-bottom: 1px solid #666;
}
#price.photo .price-table.price-primary tbody td.price-notes {
  height: 117.188vw;
}
#price.photo .price-table.price-option2 tbody td:nth-child(even) {
  background: #F0F0F0;
}
#price.photo #price-difference dl dd.full {
  -webkit-margin-after: 6.51vw;
          margin-block-end: 6.51vw;
  -webkit-padding-after: 3.906vw;
          padding-block-end: 3.906vw;
  overflow-x: scroll;
}
#price.photo #price-difference dl dd.full img {
  width: 840px;
}
#price.photo #price-difference .btn {
  font-size: 4.167vw;
  height: auto;
  line-height: 1;
  -webkit-margin-after: 3.906vw;
          margin-block-end: 3.906vw;
  width: 80%;
}
#price.photo #price-difference .btn a {
  padding-block: 3.906vw;
  padding-inline: 5.208vw;
}
#price.photo #price-difference .btn a::before {
  top: 5.859vw;
  right: 3.906vw;
}
#price.photo #price-difference .btn a::after {
  top: 5.078vw;
  right: 3.906vw;
}

#price.banner h2 {
  background-position: 0 0;
  background-size: auto 1em;
}
#price.banner #price-intro {
  background: url(../img/page/price/intro_bg_sp.jpg) 0 100%/cover no-repeat;
  height: auto;
  margin-block: 5.208vw 10.417vw;
  padding-block: 5.208vw 7.813vw;
  position: relative;
}
#price.banner #price-intro::before {
  background-image: url(../img/page/price/banner_bg_01_sp.png);
  top: -6.51vw;
  right: -1.302vw;
}
#price.banner #price-intro-body {
  -webkit-padding-before: 0;
          padding-block-start: 0;
}
#price.banner .price-stit2 {
  background: #8CC63F;
  border-radius: 10%/130%;
}
#price.banner .price-menu .price-txt {
  margin-block: 3.906vw 10.417vw;
  width: 91.25%;
}
#price.banner .price-menu .price-txt p {
  float: none;
  -webkit-margin-after: 3.906vw;
          margin-block-end: 3.906vw;
  width: 100%;
}
#price.banner .price-menu .price-txt .floatright {
  float: none;
}
#price.banner #price-before #price-before-about {
  background: none;
}
#price.banner .price-more-btn {
  width: 88.542vw;
}
#price.banner .price-table.price-primary td {
  height: 26.042vw;
}
#price.banner .price-table.price-primary thead td:not(:last-child) {
  border-bottom: 2px solid #fff;
}
#price.banner .price-table.price-primary tbody th:not(:last-child) {
  border-right: 2px solid #fff;
}
#price.banner .price-table.price-primary tbody td:not(:last-child) {
  border-bottom: 2px solid #fff;
}
#price.banner .price-table.price-primary tbody td[colspan="3"] {
  height: 78.125vw;
}

#price.print h2 {
  background-position: 0 0;
  background-size: auto 1em;
}
#price.print .price-stit {
  position: relative;
  text-shadow: 0 0 2.5vw #fff;
  z-index: 1;
}
#price.print #price-intro {
  background: url(../img/page/price/intro_bg_sp.jpg) 0 100%/cover no-repeat;
  height: auto;
  margin-block: 5.208vw 10.417vw;
  padding-block: 5.208vw 7.813vw;
  position: relative;
}
#price.print #price-intro::before {
  background-image: url(../img/page/price/print_bg_01_sp.png);
  height: 48.125vw;
  top: -10.417vw;
  right: -10.417vw;
}
#price.print #price-intro-body {
  -webkit-padding-before: 0;
          padding-block-start: 0;
}
#price.print .price-stit2 {
  background: #073397;
  border-radius: 20%/130%;
}
#price.print .price-menu .price-txt {
  margin-block: 3.906vw;
  width: 91.25%;
}
#price.print .price-menu .price-txt a {
  text-decoration: underline;
}
#price.print #print-notes {
  margin-block: 3.906vw;
  width: 91.25%;
}
#price.print #print-notes dt {
  font-size: 4.688vw;
  line-height: 1.6;
  width: 100%;
}
#price.print #print-notes dt strong {
  font-size: 150%;
  line-height: 1.6;
}
#price.print #print-notes dt strong::before {
  top: -0.8em;
}
#price.print #print-notes dt strong::after {
  height: 0.3em;
  width: 80%;
  left: 10%;
}
#price.print #print-notes dd {
  font-size: 4.427vw;
  -webkit-margin-before: 5.208vw;
          margin-block-start: 5.208vw;
  width: 100%;
}
#price.print #print-notes dd ul {
  flex-wrap: wrap;
  gap: 2.604vw;
  justify-content: center;
}
#price.print #print-notes dd li {
  height: 26.042vw;
  width: 26.042vw;
}
#price.print #print-notes dd li p {
  -webkit-margin-before: 2.604vw;
          margin-block-start: 2.604vw;
}

.print-kome {
  font-size: 3.125vw;
  -webkit-margin-before: -1.302vw;
          margin-block-start: -1.302vw;
}

.print-komesetu {
  font-size: 3.125vw;
  line-height: 1.8;
  -webkit-margin-before: 2.604vw;
          margin-block-start: 2.604vw;
  text-align: left;
}

#price.print .price-table.price-print-primary th {
  left: 0;
  position: sticky;
  text-indent: 0;
  width: 39.063vw;
  z-index: 1;
}
#price.print .price-table.price-print-primary thead {
  display: table-row-group;
  float: none;
  position: static;
}
#price.print .price-table.price-print-primary thead th {
  background: #fff;
  width: auto;
}
#price.print .price-table.price-print-primary tbody {
  display: table-row-group;
}
#price.print #price-before #price-before-about {
  background: none;
}
#price.print #price-before #price-before-about .price-before-required div.price-before-col {
  background: #cdd6ea;
}
#price.print #price-before #price-before-about .price-before-required h6 {
  background: #073397;
}

/*モーダル関係*/
#price-difference {
  margin-block: 5.208vw;
  padding-block: 2.604vw;
  width: 91.25%;
}
#price-difference h3 {
  font-size: 4.167vw;
  line-height: 1.5;
  padding-block: 2.604vw;
  width: 90%;
}
#price-difference h3 span {
  font-size: 150%;
}
#price-difference h3 img {
  vertical-align: sub;
  width: 2.344vw;
}
#price-difference dl {
  -webkit-margin-after: 5.208vw;
          margin-block-end: 5.208vw;
  width: 90%;
}
#price-difference dl dt {
  display: block;
  -webkit-margin-before: 5.208vw;
          margin-block-start: 5.208vw;
  margin-inline: auto;
  width: 14.323vw;
}
#price-difference dl dt img {
  width: 100%;
}
#price-difference dl dd {
  -webkit-padding-before: 3.906vw;
          padding-block-start: 3.906vw;
  width: 100%;
}
#price-difference dl dd h4 {
  font-size: 4.948vw;
  -webkit-margin-after: 2.604vw;
          margin-block-end: 2.604vw;
}

#price-before {
  margin-block: 5.208vw;
  width: 91.25%;
}
#price-before h3 {
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: auto 100%;
  font-size: 7.031vw;
  height: 24.74vw;
  line-height: 1.3;
  text-shadow: inherit;
}
#price-before h4 {
  font-size: 4.167vw;
  line-height: 1.4;
  -webkit-margin-after: 3.906vw;
          margin-block-end: 3.906vw;
  -webkit-margin-start: 3.906vw;
          margin-inline-start: 3.906vw;
}
#price-before h4::before {
  border-width: 3px;
  height: 2.604vw;
  left: -5.208vw;
  width: 2.604vw;
}
#price-before section {
  margin-block: 3.906vw 7.813vw;
}
#price-before #price-before-about {
  background: none;
  height: auto;
  -webkit-margin-before: 2.604vw;
          margin-block-start: 2.604vw;
}
#price-before #price-before-about li {
  float: none;
}
#price-before #price-before-about .price-before-col {
  border-radius: 2.604vw;
  -webkit-padding-after: 3.906vw;
          padding-block-end: 3.906vw;
  position: relative;
}
#price-before #price-before-about .price-before-col::before, #price-before #price-before-about .price-before-col::after {
  content: "";
  display: block;
  left: 50%;
  position: absolute;
  top: 0;
}
#price-before #price-before-about .price-before-col::before {
  -webkit-transform: translate(-50%, -100%);
          transform: translate(-50%, -100%);
  width: 3px;
}
#price-before #price-before-about .price-before-col::after {
  border-radius: 50%;
  height: 2.344vw;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 2.344vw;
}
#price-before #price-before-about h5 {
  border-radius: 3.906vw;
  font-size: 4.948vw;
  line-height: 1.6;
  margin-inline: auto;
  position: relative;
  width: 39.063vw;
}
#price-before #price-before-about h6 {
  border-start-end-radius: 2.604vw;
  border-start-start-radius: 2.604vw;
  font-size: 4.427vw;
  line-height: 1.6;
  padding-block: 1.302vw;
  padding-inline: 0.6em;
}
#price-before #price-before-about p {
  -webkit-margin-before: 0;
          margin-block-start: 0;
  width: 90%;
}
#price-before #price-before-about figure {
  margin-block: 2.604vw;
  margin-inline: auto;
  width: 20.833vw;
}
#price-before #price-before-about .price-before-required {
  -webkit-margin-before: 7.813vw;
          margin-block-start: 7.813vw;
  width: 100%;
}
#price-before #price-before-about .price-before-required .price-before-row {
  display: grid;
  grid-template-columns: repeat(2, 44.271vw);
  gap: 2.604vw;
  width: 100%;
}
#price-before #price-before-about .price-before-required div.price-before-col {
  background: #dceec5;
  display: grid;
  float: none;
  gap: 0;
  grid-row: span 3;
  grid-template-rows: subgrid;
  width: auto;
}
#price-before #price-before-about .price-before-required div.price-before-col::before {
  background: #f00;
  height: 6.51vw;
}
#price-before #price-before-about .price-before-required div.price-before-col::after {
  background: #f00;
}
#price-before #price-before-about .price-before-required h5 {
  background: #f00;
  -webkit-margin-after: 10.417vw;
          margin-block-end: 10.417vw;
}
#price-before #price-before-about .price-before-required h5::before, #price-before #price-before-about .price-before-required h5::after {
  content: "";
  display: block;
  left: 50%;
  position: absolute;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
#price-before #price-before-about .price-before-required h5::before {
  background: #f00;
  bottom: -4.297vw;
  height: 4.557vw;
  width: 3px;
}
#price-before #price-before-about .price-before-required h5::after {
  background: #f00;
  height: 3px;
  bottom: -4.297vw;
  width: 47.266vw;
}
#price-before #price-before-about .price-before-required h6 {
  background: #8CC63F;
  display: grid;
  place-content: center;
}
#price-before #price-before-about .price-before-any {
  -webkit-margin-before: 6.51vw;
          margin-block-start: 6.51vw;
  margin-inline: auto;
  width: 78.125vw;
}
#price-before #price-before-about .price-before-any .price-before-col {
  background: #e6e6e6;
}
#price-before #price-before-about .price-before-any .price-before-col::before {
  background: #000;
  height: 7.161vw;
}
#price-before #price-before-about .price-before-any .price-before-col::after {
  background: #000;
}
#price-before #price-before-about .price-before-any h5 {
  background: #000;
  -webkit-margin-after: 6.51vw;
          margin-block-end: 6.51vw;
}
#price-before #price-before-about .price-before-any h6 {
  background: #333;
}

.price-more-btn {
  font-size: 3.906vw;
  letter-spacing: 0.04em;
  line-height: 3;
  -webkit-margin-before: 5.208vw;
          margin-block-start: 5.208vw;
  margin-inline: auto;
  width: 78.125vw;
}
.price-more-btn a {
  border-radius: 6.51vw;
  box-shadow: 0 2px 0 #000;
}
.price-more-btn a::after {
  height: 2.083vw;
  top: 4.427vw;
  right: 3.906vw;
  width: 2.083vw;
}

#price-fix-btn01,
#price-fix-btn02 {
  background: #FFF;
  border: solid #C10014;
  border-width: 2px 0 2px 2px;
  display: none;
  font-size: 14px;
  font-weight: bold;
  line-height: 120%;
  text-align: center;
  height: 80px;
  width: 80px;
  position: fixed;
  top: 200px;
  right: 0;
  -webkit-animation-name: price-fix-btn;
          animation-name: price-fix-btn;
  -webkit-animation-duration: 0.3s;
          animation-duration: 0.3s;
}

#price-fix-btn01 a,
#price-fix-btn02 a {
  box-sizing: border-box;
  color: #C10014;
  display: block;
  height: 100%;
  width: 100%;
  position: relative;
}

#price-fix-btn01 a::before,
#price-fix-btn02 a::before {
  font-size: 18px;
  -webkit-transform: scale(1.6, 1);
          transform: scale(1.6, 1);
  position: absolute;
  left: 30px;
}

#price-fix-btn01 a:hover,
#price-fix-btn02 a:hover {
  opacity: 0.8;
}

#price-fix-btn01.is-fadeIn {
  display: block;
}

#price-fix-btn01.is-fadeOUt {
  display: none;
}

#price-fix-btn01 a {
  padding-top: 16px;
}

#price-fix-btn01 a::before {
  content: "▼";
  bottom: 10px;
}

#price-fix-btn02.is-fadeIn {
  display: block;
}

#price-fix-btn02.is-fadeOUt {
  display: none;
}

#price-fix-btn02 a {
  padding-top: 30px;
}

#price-fix-btn02 a::before {
  content: "▲";
  top: 10px;
}

@media only screen and (max-width: 1399px) {
  .is-fadeIn {
    display: none !important;
  }
}
#price .modal_window_price {
  width: 100%;
}
#price .modal_area_price {
  box-sizing: border-box;
  height: 100vh;
  height: 100dvh;
  overflow-y: auto;
  padding-block: 7.813vw;
}
#price .modal_area_price .main_img {
  float: none;
  height: 50vh;
  height: 50dvh;
  margin-inline: auto;
  width: 91.25%;
}
#price .modal_area_price .details {
  float: none;
  height: auto;
  margin-inline: auto;
  width: 91.25%;
}
#price .modal_area_price .details .inner {
  height: auto;
  overflow: inherit;
}
#price .modal_area_price .details .inner .price {
  font-size: 3.906vw;
  margin-block: 2.604vw;
}
#price .modal_area_price .details .inner .price strong {
  font-size: 5.729vw;
}
#price .modal_area_price .details .inner ul {
  margin-block: 2.604vw;
  width: 90%;
}
#price .modal_area_price .details .inner dl {
  padding-block: 1.302vw;
}
#price .modal_area_price .details .inner dl dt {
  font-size: 4.167vw;
  margin-block: 1.302vw;
  -webkit-padding-after: 0.651vw;
          padding-block-end: 0.651vw;
  width: 90%;
}
#price .modal_area_price .details .inner dl dd {
  margin-block: 1.302vw;
  width: 85%;
}
#price .modal_area_price .details .price-table-btn-wid180 {
  line-height: 4;
  width: 20em !important;
}
#price .modal_area_price .details h2 {
  background-size: cover;
  font-size: 4.167vw;
  line-height: 3;
  height: 3em;
  width: 100%;
}
#price .modal_area_price .more-plan {
  line-height: 15.625vw;
  height: 15.625vw;
}
#price .modal_area_price .more-plan a::before {
  height: 3.125vw;
  width: 3.125vw;
}
#price .modal_area_price .more-plan .floatleft {
  -webkit-padding-start: 6.771vw;
          padding-inline-start: 6.771vw;
}
#price .modal_area_price .more-plan .floatleft a::before {
  left: -5.208vw;
}
#price .modal_area_price .more-plan .floatright {
  -webkit-padding-end: 6.771vw;
          padding-inline-end: 6.771vw;
}
#price .modal_area_price .more-plan .floatright a::before {
  right: -5.208vw;
}
#price .modal_area_price .close_btn {
  position: fixed;
  right: 2.604vw;
  top: 2.604vw;
  width: 10.417vw;
  z-index: 10;
}
#price .modal_area_price .loading {
  height: 8.594vw;
  width: 8.594vw;
}

#plan_pc_comp,
#plan_sp_comp,
#plan_sp1_comp,
#plan_sp2_comp {
  width: 100% !important;
}
#plan_pc_comp .plan_comp_col,
#plan_sp_comp .plan_comp_col,
#plan_sp1_comp .plan_comp_col,
#plan_sp2_comp .plan_comp_col {
  float: none;
  margin-inline: 0;
  width: 100%;
}
#plan_pc_comp .plan_comp_header,
#plan_sp_comp .plan_comp_header,
#plan_sp1_comp .plan_comp_header,
#plan_sp2_comp .plan_comp_header {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 3%;
  margin-inline: auto;
  width: 95%;
}
#plan_pc_comp .plan_comp_header .plan_comp_col,
#plan_sp_comp .plan_comp_header .plan_comp_col,
#plan_sp1_comp .plan_comp_header .plan_comp_col,
#plan_sp2_comp .plan_comp_header .plan_comp_col {
  display: grid;
  gap: 0;
  grid-row: span 2;
  grid-template-rows: subgrid;
}
#plan_pc_comp .plan_comp_header h3,
#plan_sp_comp .plan_comp_header h3,
#plan_sp1_comp .plan_comp_header h3,
#plan_sp2_comp .plan_comp_header h3 {
  background-repeat: no-repeat !important;
  background-size: cover !important;
  display: grid;
  height: auto;
  line-height: 1.4;
  padding-block: 1em 0.5em;
  padding-inline: 0.5em;
  place-content: center;
}
#plan_pc_comp .plan_comp_header .price,
#plan_sp_comp .plan_comp_header .price,
#plan_sp1_comp .plan_comp_header .price,
#plan_sp2_comp .plan_comp_header .price {
  font-size: 3.385vw;
  line-height: 1.3;
  padding-block: 2.604vw;
}
#plan_pc_comp .plan_comp_header .price strong,
#plan_sp_comp .plan_comp_header .price strong,
#plan_sp1_comp .plan_comp_header .price strong,
#plan_sp2_comp .plan_comp_header .price strong {
  display: block;
  font-size: 4.427vw;
}
#plan_pc_comp .plan_comp_body,
#plan_sp_comp .plan_comp_body,
#plan_sp1_comp .plan_comp_body,
#plan_sp2_comp .plan_comp_body {
  height: auto;
  margin-inline: auto;
  -webkit-padding-after: 5.208vw;
          padding-block-end: 5.208vw;
  width: 95%;
}
#plan_pc_comp .plan_comp_body .inner,
#plan_sp_comp .plan_comp_body .inner,
#plan_sp1_comp .plan_comp_body .inner,
#plan_sp2_comp .plan_comp_body .inner {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 3%;
}

#price.itemlp #plan_pc_comp,
#price.itemlp #plan_sp_comp {
  width: 100% !important;
}
#price.itemlp #plan_pc_comp .plan_comp_header::before, #price.itemlp #plan_pc_comp .plan_comp_header::after,
#price.itemlp #plan_sp_comp .plan_comp_header::before,
#price.itemlp #plan_sp_comp .plan_comp_header::after {
  display: none;
}
#price.itemlp #plan_pc_comp .plan_comp_header .plan_comp_col,
#price.itemlp #plan_sp_comp .plan_comp_header .plan_comp_col {
  margin-inline: 0;
  width: 100%;
}
#price.itemlp #plan_pc_comp .plan_comp_header h3 span,
#price.itemlp #plan_sp_comp .plan_comp_header h3 span {
  font-size: 80%;
  white-space: nowrap;
}
#price.itemlp #plan_pc_comp .plan_comp_body .inner,
#price.itemlp #plan_sp_comp .plan_comp_body .inner {
  display: block;
}
#price.itemlp #plan_pc_comp .plan_comp_body img,
#price.itemlp #plan_sp_comp .plan_comp_body img {
  width: 114.5%;
}

#ex-pc-wire,
#ex-sp-wire {
  width: 100% !important;
}
#ex-pc-wire h2,
#ex-sp-wire h2 {
  font-size: 4.688vw;
  margin-block: 5.208vw 2.604vw;
  margin-inline: auto;
  padding-inline: 0;
  width: 91.25%;
}
#ex-pc-wire .ex_wire_header,
#ex-sp-wire .ex_wire_header {
  margin-block: 1.302vw 3.906vw;
  margin-inline: auto;
  width: 504px;
}
#ex-pc-wire .modal_scrollable_price,
#ex-sp-wire .modal_scrollable_price {
  margin-inline: auto;
  overflow-x: scroll;
  -webkit-padding-after: 7.813vw;
          padding-block-end: 7.813vw;
  width: 91.25%;
}
#ex-pc-wire .modal_scrollable_price .scroll-hint-icon,
#ex-sp-wire .modal_scrollable_price .scroll-hint-icon {
  top: 26.042vw;
}
#ex-pc-wire .ex_wire_body,
#ex-sp-wire .ex_wire_body {
  height: auto;
  overflow: unset;
  width: 504px;
}
#ex-pc-wire .ex_wire_body img,
#ex-sp-wire .ex_wire_body img {
  height: auto;
  width: 100%;
}
#ex-pc-wire .ex_wire_body .inner,
#ex-sp-wire .ex_wire_body .inner {
  overflow: unset;
}

.emagazine #plan_pc_image h2 {
  font-size: 4.688vw;
  margin-block: 3.906vw 2.604vw;
  margin-inline: auto;
}
.emagazine #plan_pc_image #price .modal_window_price {
  width: 100%;
}
.emagazine #plan_pc_image .ex-emagazine-txt {
  font-size: 3.385vw;
  -webkit-margin-after: 2.604vw;
          margin-block-end: 2.604vw;
  margin-inline: auto;
  width: 91.25%;
}
.emagazine #plan_pc_image .emagazine-img {
  height: inherit;
}
.emagazine #plan_pc_image .emagazine-img img {
  height: auto;
  width: 100%;
}

.cart #custom-sample {
  width: 100%;
}
.cart #custom-sample h2 {
  font-size: 4.688vw;
  margin-block: 5.208vw 2.604vw;
  margin-inline: auto;
  padding-inline: 0;
  width: 91.25%;
}
.cart #custom-sample .ex-emagazine-txt {
  font-size: 3.385vw;
  -webkit-margin-after: 2.604vw;
          margin-block-end: 2.604vw;
  margin-inline: auto;
  width: 91.25%;
}
.cart #custom-sample .modal_scrollable_price {
  margin-inline: auto;
  overflow-x: scroll;
  -webkit-padding-after: 7.813vw;
          padding-block-end: 7.813vw;
  width: 91.25%;
}
.cart #custom-sample .modal_scrollable_price p {
  width: 582px;
}
.cart #custom-sample .modal_scrollable_price .custom-sample-img {
  height: auto;
  -webkit-margin-before: 3.906vw;
          margin-block-start: 3.906vw;
  overflow: unset;
  width: 672px;
}
.cart #custom-sample .modal_scrollable_price .custom-sample-img img {
  height: auto;
  width: 100%;
}
.cart #custom-sample .modal_scrollable_price .custom-sample-img .inner {
  overflow: unset;
}
.cart #custom-sample .modal_scrollable_price .scroll-hint-icon {
  top: 26.042vw;
}

.photo #ex-photo-4hours {
  width: 100%;
}
.photo #ex-photo-4hours h2 {
  font-size: 4.688vw;
  margin-block: 3.906vw 2.604vw;
  margin-inline: auto;
  padding-inline: 0;
  width: 91.25%;
}
.photo #ex-photo-4hours .ex-photo-txt {
  font-size: 3.385vw;
  -webkit-margin-after: 2.604vw;
          margin-block-end: 2.604vw;
  margin-inline: auto;
  width: 91.25%;
}
.photo #ex-photo-4hours .ex-photo-img {
  height: auto;
  margin-block: 3.906vw;
  margin-inline: auto;
  width: 80%;
}
.photo #ex-photo-4hours .ex-photo-img ul {
  display: flex;
  flex-direction: column;
  gap: 3.906vw;
}
.photo #ex-photo-4hours .ex-photo-img li {
  float: none;
  font-size: 3.646vw;
  margin-inline: 0;
  width: 100%;
}
.photo #ex-photo-4hours .ex-photo-img li p {
  -webkit-margin-before: 1.302vw;
          margin-block-start: 1.302vw;
}

.banner #banner_plan_image .modal_window_price {
  width: 100%;
}
.banner #banner_plan_image h2 {
  font-size: 4.688vw;
  margin-block: 3.906vw 2.604vw;
  margin-inline: auto;
  padding-inline: 0;
  width: 91.25%;
}
.banner #banner_plan_image .banner_ex_img {
  height: auto;
  margin-block: 3.906vw;
  margin-inline: auto;
  width: 90%;
}
.banner #banner_plan_image .banner_ex_img img {
  width: 100%;
}
.banner #banner_plan_image .more-plan {
  margin-inline: auto;
  width: 91.25%;
}

/* =======================================
 スタートアップセット
======================================= */
#startup .fon12 {
  font-size: 3.125vw !important;
}
#startup .fon14 {
  font-size: 3.646vw !important;
}
#startup .fon22 {
  font-size: 5.729vw !important;
}
#startup .fon24 {
  font-size: 6.25vw !important;
}

.startup-price table {
  border-radius: 2.604vw;
  font-size: 4.427vw;
  width: 81.25vw;
}
.startup-price table thead th {
  border-radius: 2.344vw 2.344vw 0 0;
  padding-block: 2.604vw;
}
.startup-price table tbody th, .startup-price table tbody td {
  display: block;
  width: 100%;
}
.startup-price table tbody th {
  border-right: 0;
  padding-block: 2.083vw;
  padding-inline: 2.604vw;
}
.startup-price table tbody td {
  padding-block: 2.083vw;
  padding-inline: 2.604vw;
}
.startup-price table tbody tr:last-child th {
  border-radius: 0;
}
.startup-price table tbody tr:last-child td {
  border-radius: 0 0 2.344vw 2.344vw;
}
.startup-price table p {
  margin-inline: 0;
}
.startup-price table .item-type {
  border-radius: 3.125vw;
  line-height: 2;
  margin-block: 0.8em 0;
  width: 20.833vw;
}
.startup-price dl {
  margin-block: 5.208vw 2.604vw;
  width: 81.25vw;
}
.startup-price dl dt, .startup-price dl dd {
  float: none;
}
.startup-price dl dt {
  font-size: 5.208vw;
  -webkit-margin-before: 2.604vw;
          margin-block-start: 2.604vw;
}
.startup-price dl dt .strike {
  font-size: 7.292vw;
}
.startup-price dl dd {
  border-bottom-width: 4px;
  font-size: 7.227vw;
}
.startup-price dl dd strong {
  font-size: 10.156vw;
}
.startup-price dl.clearfix02 {
  font-size: 3.125vw;
  margin-block: 0 !important;
  text-align: left;
  width: 81.25vw !important;
}
.startup-price dl.clearfix03 {
  font-size: 3.125vw;
}

.startup-stit {
  font-size: 5.208vw;
  -webkit-margin-after: 3.906vw;
          margin-block-end: 3.906vw;
  margin-inline: auto;
  width: 91.25%;
}

.startup-stit img {
  -webkit-margin-end: 1.302vw;
          margin-inline-end: 1.302vw;
  width: 7.813vw;
}

.startup-txt2 {
  font-size: 3.385vw;
  margin-inline: auto;
  width: 91.25%;
}

.startup-step {
  font-size: 2.865vw;
  height: 28.646vw;
  width: 28.646vw;
}
.startup-step dt {
  -webkit-margin-after: 1.953vw;
          margin-block-end: 1.953vw;
  margin-inline: auto;
  width: 9.115vw;
}

.startup-top {
  background: #ffff4d;
}

#startup-s01 {
  background: none;
  height: auto;
}
#startup-s01 .startup-txt {
  font-size: 3.385vw;
  line-height: 1.7;
  -webkit-margin-before: -28.646vw;
          margin-block-start: -28.646vw;
}
#startup-s01 ul {
  display: flex;
  flex-wrap: wrap;
  font-size: 3.906vw;
  gap: 3.906vw;
  justify-content: center;
  margin-block: 6.51vw -6.51vw;
  position: static;
  width: 100%;
}
#startup-s01 ul::before, #startup-s01 ul::after {
  display: none;
}
#startup-s01 ul li {
  align-items: center;
  background: url(../img/page/startup/startup_bg_01_sp.png) 0/contain no-repeat;
  border-radius: 50%;
  box-shadow: 1.302vw 1.302vw 0 rgba(20, 40, 50, 0.3);
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 33.854vw;
  width: 33.854vw;
}

#startup-s02 {
  background: url(../img/page/startup/startup_bg_02-1_sp.png) 0 0/100% auto no-repeat;
  height: auto;
  padding-block: 37.76vw 0;
  position: relative;
  z-index: 1;
}
#startup-s02 .startup-price {
  background: url(../img/page/startup/startup_bg_02-2_sp.png) 0 0/100% auto repeat-y;
  padding-block: 3.906vw 0;
}

#startup-s03 {
  background: url(../img/page/startup/startup_bg_03-1_sp.png) 0 0/100% auto no-repeat;
  height: auto;
}

#startup-s03-txt01 {
  font-size: 5.99vw;
  padding-block: 23.438vw 2.604vw;
}
#startup-s03-txt01 strong {
  font-size: 12.63vw;
}

#startup-s03-txt02 {
  font-size: 4.167vw;
  -webkit-margin-after: -6.51vw;
          margin-block-end: -6.51vw;
  padding-block: 0;
}

#startup-s03-txt03 {
  background: url(../img/page/startup/startup_bg_03-2_sp.png) 0 0/100% auto no-repeat #fff;
  font-size: 4.688vw;
  -webkit-padding-before: 14.323vw;
          padding-block-start: 14.323vw;
  -webkit-padding-start: 7.813vw;
          padding-inline-start: 7.813vw;
}
#startup-s03-txt03 .cEmerald {
  font-size: 10.807vw;
}
#startup-s03-txt03 .fon50 {
  font-size: 6.771vw;
}

#startup-s04 {
  background: none;
  height: auto;
}
#startup-s04 .startup-stit,
#startup-s04 .startup-txt2 {
  margin-inline: auto;
}
#startup-s04 .startup-stit {
  padding-block: 6.51vw 0;
}

#startup-s05 {
  background: url(../img/page/startup/startup_bg_05_sp.png) 0/100% 100% no-repeat;
  height: 70.052vw;
}
#startup-s05 .startup-step {
  margin-inline: 36.458vw auto;
  -webkit-padding-before: 2.604vw;
          padding-block-start: 2.604vw;
}
#startup-s05 div {
  bottom: 4.557vw;
  box-sizing: border-box;
  -webkit-padding-start: 3.255vw;
          padding-inline-start: 3.255vw;
  right: 0;
  width: 42.969vw;
}
#startup-s05 .fon23 {
  font-size: 3.385vw !important;
}

#startup-s06 {
  background: url(../img/page/startup/startup_bg_06_sp.png) 50% 0 no-repeat;
  background-size: 52.083vw auto;
  height: auto;
  -webkit-margin-before: 5.208vw;
          margin-block-start: 5.208vw;
  -webkit-padding-before: 78.125vw;
          padding-block-start: 78.125vw;
}
#startup-s06 .startup-step {
  left: 35.807vw;
  top: 2.604vw;
}
#startup-s06 .startup-stit,
#startup-s06 .startup-txt2 {
  margin-inline: auto;
}
#startup-s06 .startup-stit {
  -webkit-margin-after: 3.906vw;
          margin-block-end: 3.906vw;
  padding-block: 0;
}

#startup-s07 {
  background: #fff;
  box-shadow: 1.302vw 1.302vw 0 rgba(20, 40, 50, 0.3);
  height: auto;
  margin-inline: auto;
  padding-block: 3.906vw;
  width: 91.146vw;
}
#startup-s07 p {
  font-size: 3.906vw;
  padding-block: 0;
}
#startup-s07 p strong {
  font-size: 5.729vw;
}

#startup-s08 {
  background: url(../img/page/startup/startup_bg_08-2_sp.png) no-repeat;
  background-position: 67.708vw 35.156vw;
  background-size: auto 54.036vw;
  min-height: 55.99vw;
  padding-block: 3.906vw;
}
#startup-s08 > p {
  align-items: center;
  background: url(../img/page/startup/startup_bg_08-1_sp.png) 0/contain no-repeat;
  display: flex;
  font-size: 3.906vw !important;
  height: 19.531vw;
  justify-content: center;
  left: -1.302vw;
  top: -3.906vw;
  width: 19.531vw;
}
#startup-s08 .startup-stit,
#startup-s08 .startup-txt2 {
  margin-inline: auto;
}
#startup-s08 .startup-stit {
  -webkit-padding-before: 15.625vw;
          padding-block-start: 15.625vw;
}
#startup-s08 .startup-txt2 {
  box-sizing: border-box;
  -webkit-padding-end: 31.25vw;
          padding-inline-end: 31.25vw;
}

#startup-s09 {
  margin-top: -80px;
  margin-bottom: 40px;
  position: relative;
  z-index: 5;
}

#startup-s09 .fon24 {
  letter-spacing: 0.1em;
  margin-left: 74px;
}

#startup-s09 #startup-txt-05 {
  margin-top: -70px;
}

/* =======================================
 inquiry
======================================= */
#inquiry #inquiry-coution {
  box-sizing: border-box;
  margin-inline: auto;
  width: 91.25%;
}
#inquiry #inquiry-coution h3 {
  font-size: 4.688vw;
}
#inquiry .inquiry-txt {
  font-size: 3.125vw;
}

/* =======================================
 template
======================================= */
#template #template-intro {
  background-color: #fff;
  background-image: url(../img/page/template/template_bg_01_a_sp.jpg), url(../img/page/template/template_bg_01_b_sp.jpg);
  background-position: 0 0, 0 100%;
  background-repeat: no-repeat;
  background-size: 100% auto;
  height: auto;
  padding-block: 26.042vw 61.198vw;
  position: relative;
}
#template #template-intro::before {
  background: url(../img/page/template/template_deco_01_sp.svg) 0/contain no-repeat;
  content: "";
  display: block;
  height: 14.844vw;
  left: 3.906vw;
  position: absolute;
  top: 9.115vw;
  width: 27.604vw;
}
#template #template-intro h2 {
  font-size: 9.115vw;
  -webkit-margin-after: 2.604vw;
          margin-block-end: 2.604vw;
  margin-inline: auto;
  padding-top: 0;
  width: 91.25%;
}
#template #template-intro .template-txt {
  margin-inline: auto;
  width: 91.25%;
}
#template #template-case h3 {
  background: #C10014;
  box-sizing: border-box;
  font-size: 5.208vw;
  height: auto;
  letter-spacing: 0.14em;
  line-height: 1.4;
  -webkit-margin-after: 13.021vw;
          margin-block-end: 13.021vw;
  padding-block: 2.604vw;
  -webkit-padding-start: 20.833vw;
          padding-inline-start: 20.833vw;
  position: relative;
  text-align: left;
  text-indent: 0;
}
#template #template-case h3::before {
  background: url(../img/page/correction_deco_02_sp.svg) 0/contain no-repeat;
  content: "";
  display: block;
  height: 29.531vw;
  left: -18.229vw;
  position: absolute;
  top: -3.906vw;
  -webkit-transform: rotate(5deg);
          transform: rotate(5deg);
  width: 41.198vw;
}
#template #template-case ul {
  margin-block: 2.604vw;
  width: 91.25%;
}
#template #template-case li {
  border-radius: 5.208vw;
  box-sizing: border-box;
  -webkit-margin-after: 3.906vw;
          margin-block-end: 3.906vw;
  padding-block: 5.208vw;
  padding-inline: 3.255vw;
  width: 100%;
}
#template #template-case li::before {
  border-radius: 5.208vw;
}
#template #template-case li h4 {
  background-image: url(../img/page/template/template_img_03_sp.svg);
  background-position: 0 0.651vw;
  background-size: 6.25vw auto;
  font-size: 5.99vw;
  line-height: 1.4;
  -webkit-margin-after: 2.083vw;
          margin-block-end: 2.083vw;
  -webkit-margin-start: 3.125vw;
          margin-inline-start: 3.125vw;
  -webkit-padding-start: 7.813vw;
          padding-inline-start: 7.813vw;
}
#template #template-case li p {
  background-image: url(../img/page/template/template_img_04_sp.svg);
  background-position: 0 50%;
  background-size: 18.229vw auto;
  -webkit-margin-start: 7.813vw;
          margin-inline-start: 7.813vw;
  -webkit-padding-start: 20.833vw;
          padding-inline-start: 20.833vw;
}
#template #template-example {
  -webkit-margin-before: 13.021vw;
          margin-block-start: 13.021vw;
}
#template #template-outline {
  -webkit-margin-after: 11.719vw;
          margin-block-end: 11.719vw;
  padding-block: 5.208vw 7.813vw;
  padding-inline: 4.375%;
}
#template #template-outline::after {
  border-width: 5.859vw 13.021vw 0;
  bottom: -5.208vw;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
#template #template-outline h3 {
  font-size: 7.031vw;
  letter-spacing: 0.2em;
  line-height: 1.5;
  -webkit-margin-after: 6.51vw;
          margin-block-end: 6.51vw;
  width: 100%;
}
#template #template-outline h3::before {
  border-width: 3.906vw 3.906vw 0 0;
}
#template #template-outline h3::after {
  border-width: 0 0 3.906vw 3.906vw;
}
#template #template-outline .template-txt {
  font-size: 3.646vw;
  margin-block: 3.906vw;
}
#template #template-outline .template-txt .fon20 {
  font-size: 125% !important;
}
#template .template-col {
  margin-block: 6.51vw;
  padding-block: 5.208vw;
  width: 91.25%;
}
#template .template-col h4 {
  font-size: 5.208vw;
  letter-spacing: 0.08em;
  -webkit-margin-after: 5.208vw;
          margin-block-end: 5.208vw;
}
#template .template-col .template-image-header {
  -webkit-margin-before: 5.208vw;
          margin-block-start: 5.208vw;
  margin-inline: 5% 0;
  width: 95%;
}
#template .template-col .template-image-header li {
  font-size: 3.385vw;
  line-height: 1.4;
  -webkit-margin-start: 2.018vw;
          margin-inline-start: 2.018vw;
  padding-block: 0.25em;
  width: 25.195vw;
}
#template .template-col .template-image-header li.base {
  -webkit-margin-end: 1.888vw;
          margin-inline-end: 1.888vw;
}
#template .template-col .template-image-header li.base::after {
  border-width: 2.344vw 0 2.344vw 2.344vw;
  right: -3.255vw;
  top: 3.255vw;
}
#template .template-col .template-image-body {
  box-sizing: border-box;
  -webkit-margin-before: 2.604vw;
          margin-block-start: 2.604vw;
  margin-inline: 5% auto;
  height: 50vh;
  -webkit-padding-end: 15px;
          padding-inline-end: 15px;
  width: 93%;
}
#template .template-col .simplebar-track {
  background: #ddd;
  border-radius: 7px;
}
#template #template-example .template-col {
  background-position: 5% 6.51vw;
  background-size: 11.719vw auto;
}
#template #template-example .template-col::before {
  border-width: 0 10.417vw 10.417vw 0;
}
#template #template-example .template-col h4 {
  margin-inline: auto 5%;
  width: calc(90% - 14.323vw);
}
#template #template-example .template-col p {
  margin-inline: auto;
  width: 90%;
}
#template #template-example .template-col#type-b .template-image-header li {
  width: 38.542vw;
}
#template #template-example .template-col#type-b .template-image-header li.base::after {
  top: 1.042vw;
}
#template #template-caution {
  padding-block: 3.906vw 2.604vw;
}
#template #template-caution h3 {
  box-sizing: border-box;
  font-size: 5.208vw;
  line-height: 1.4;
  padding-inline: 1em;
  width: 91.25%;
}
#template #template-caution h3::before {
  border-width: 3.906vw 3.906vw 0 0;
  top: 50px;
}
#template #template-caution h3::after {
  border-width: 0 0 3.906vw 3.906vw;
}
#template #template-caution h3 img {
  -webkit-margin-after: 2.604vw;
          margin-block-end: 2.604vw;
  width: auto;
}
#template #template-caution h4 {
  -webkit-margin-after: 5.208vw;
          margin-block-end: 5.208vw;
  width: 90%;
}
#template #template-caution p {
  margin-inline: auto;
  text-align: left;
  width: 90%;
}

.template-bnr {
  background-image: url(../img/page/template/template_bg_03_sp.png);
  background-size: 100% 100%;
  box-sizing: border-box;
  margin-top: -2.604vw;
  padding-top: 6.51vw;
  height: 28.646vw;
  width: 100%;
}

.template-bnr p {
  font-size: 3.125vw;
  letter-spacing: 0;
  padding-inline: 31.25vw 0;
}

.template-bnr p.cYellow {
  font-size: 5.729vw;
}

/* =======================================
 company
======================================= */
#company table {
  margin-inline: auto;
  width: 91.25%;
}

#company table th, #company table td {
  border: solid #999;
  border-width: 0 1px 1px 0;
  padding: 2.604vw;
}

#company table th {
  background: #EEE;
  width: 31.25vw;
}

#company .map {
  margin-top: 2.604vw;
}

#company table.com {
  border: 0;
  border-spacing: 0;
  width: 91.25%;
}
#company table.com th {
  background: #eee;
  box-sizing: border-box;
  display: block;
  font-size: 100%;
  width: 100%;
  border-right: 0;
}
#company table.com th.bred {
  border-bottom: 2px solid #C10014;
}
#company table.com th.bgreen {
  border-bottom: 2px solid #39B54A;
  font-size: 1px;
  height: 1px;
  padding: 0;
}
#company table.com th.bbule {
  border-bottom: 2px solid #073397;
  font-size: 1px;
  height: 1px;
  padding: 0;
}
#company table.com td {
  box-sizing: border-box;
  font-size: 100%;
  display: block;
  padding: 2.604vw 2.604vw 5.208vw;
  width: 100% !important;
}
#company table.com td.data {
  font-size: 100%;
  overflow: inherit;
  padding: 5.208vw 2.604vw;
  white-space: normal;
}
#company table.com td.data p {
  float: inherit;
  line-height: 1.8;
}
#company table.com td.data p:first-child {
  padding-right: 0;
}
#company table.com td.bar {
  border-top: 0;
}
#company table.com td.space {
  padding: 0;
}
#company table.com td.access::first-line {
  line-height: 1.6;
}
#company table.com td .map {
  aspect-ratio: 4/3;
  position: relative;
}
#company table.com td .map iframe {
  height: 100%;
  inset: 0;
  position: absolute;
  width: 100%;
}

/* =======================================
　アドネットワーク広告ページ
======================================= */
#ad {
  width: 960px;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}

#ad .font2 {
  font-family: "メイリオ";
}

#ad div.fv {
  background: url(/wp-content/themes/ryukidesign/img/page/ad/ad_img_01.jpg);
  height: 680px;
}

#ad div.imp {
  background: url(/wp-content/themes/ryukidesign/img/page/ad/ad_img_02.jpg);
  height: 890px;
}

#ad div.case_area {
  background: url(/wp-content/themes/ryukidesign/img/page/ad/ad_kousi.jpg) repeat;
  height: auto;
}

#ad dt {
  background: url(/wp-content/themes/ryukidesign/img/page/ad/ad_img_04.png);
  height: 198px;
}

#ad dd {
  margin-left: 0;
}

#ad dt + dd {
  background: url(/wp-content/themes/ryukidesign/img/page/ad/ad_img_05.png) repeat-y;
}

#ad div dd:nth-of-type(2) {
  background: url(/wp-content/themes/ryukidesign/img/page/ad/ad_img_11.png) no-repeat;
  height: 55px;
}

#ad div.adq {
  background: url(/wp-content/themes/ryukidesign/img/page/ad/ad_img_17.png);
  height: 156px;
}

#ad div.ada {
  background: url(/wp-content/themes/ryukidesign/img/page/ad/ad_img_10.jpg);
  height: 511px;
}

#ad div.ada2 {
  background: url(/wp-content/themes/ryukidesign/img/page/ad/ad_img_14.jpg);
  height: 701px;
}

#ad div.tuyomi {
  background: url(/wp-content/themes/ryukidesign/img/page/ad/ad_img_16.jpg);
  height: 1140px;
}

#ad div.point {
  background: url(/wp-content/themes/ryukidesign/img/page/ad/ad_img_17.jpg);
  height: 1358px;
}

#ad div.price {
  background: url(/wp-content/themes/ryukidesign/img/page/ad/ad_img_18.jpg);
  height: 240px;
}

#ad div.price2 {
  background: url(/wp-content/themes/ryukidesign/img/page/ad/ad_img_19.jpg);
  height: 375px;
}

#ad div.price3 {
  height: auto;
}

#ad div.nagare {
  background: url(/wp-content/themes/ryukidesign/img/page/ad/ad_img_23.jpg);
  height: 372px;
}

/*文字*/
#ad div.fv div {
  position: absolute;
  font-size: 16px;
  line-height: 20px;
  font-weight: bold;
  letter-spacing: 0.1em;
}

#ad div.fv div p:nth-of-type(1) {
  display: block;
  position: relative;
  top: 118px;
  left: 630px;
}

#ad div.fv div p:nth-of-type(2) {
  display: block;
  position: relative;
  top: 248px;
  left: 615px;
}

#ad div.fv div p:nth-of-type(3) {
  display: block;
  position: relative;
  top: 350px;
  left: 590px;
}

#ad div.fv div p:nth-of-type(4) {
  display: block;
  position: relative;
  top: 463px;
  left: 510px;
}

#ad div.imp div {
  font-size: 18px;
  line-height: 29px;
  width: 800px;
  margin: 0 auto;
}

#ad div.imp div p {
  text-align: center;
  padding-top: 720px;
}

#ad div.case_area dt p:nth-of-type(1) {
  position: relative;
  font-size: 50px;
  font-weight: bold;
  color: #fff;
  top: 80px;
  left: 60px;
}

#ad div.case_area dt p:nth-of-type(2):first-line {
  font-size: 30px;
}

#ad div.case_area dt p:nth-of-type(2) {
  font-size: 42px;
  font-weight: bold;
  color: #C10014;
  width: 750px;
  margin-left: 189px;
  margin-top: -30px;
  line-height: 43px;
}

#ad div.case_area dt p:nth-of-type(3) {
  font-size: 20px;
  font-weight: bold;
  color: #000;
  width: 750px;
  margin-left: 189px;
}

#ad div.case_area dd {
  padding: 0 60px;
  font-size: 14px;
  line-height: 25px;
}

#ad div.case_area dd div.left {
  float: left;
  width: 510px;
}

#ad div.case_area dd img.right {
  float: right;
}

#ad div.case_area dd {
  padding: 0 60px;
  font-size: 14px;
  line-height: 25px;
}

#ad div.adq p {
  font-size: 35px;
  text-align: center;
  padding-top: 60px;
  font-weight: bold;
  color: #fff;
}

#ad div.adq p span {
  font-size: 29px;
}

#ad div.ada div {
  padding: 10px 40px;
}

#ad div.ada div p:nth-of-type(1) {
  font-size: 34px;
  text-align: center;
  color: #1B1464;
  font-weight: bold;
  line-height: 45px;
  padding: 15px 0;
}

#ad div.ada p:nth-of-type(2) {
  font-size: 16px;
  line-height: 25px;
}

#ad div.ada2 div {
  padding: 10px 40px;
}

#ad div.ada2 div p:nth-of-type(1) {
  font-size: 34px;
  text-align: center;
  color: #1B1464;
  font-weight: bold;
  line-height: 45px;
  padding: 15px 0;
}

#ad div.ada2 div p:nth-of-type(2) {
  font-size: 18px;
  line-height: 25px;
}

#ad div.ada2 div.buttom {
  position: absolute;
  font-size: 15px;
  line-height: 23px;
}

#ad div.ada2 div.left {
  position: relative;
  width: 410px;
  top: 398px;
  left: 390px;
}

#ad div.ada2 div.right {
  position: relative;
  width: 410px;
  top: 310px;
  left: -80px;
}

#ad div.tuyomi p.top {
  padding-top: 200px;
  font-size: 18px;
  line-height: 25px;
  text-align: center;
}

#ad div.tuyomi div {
  margin-top: 220px;
  font-size: 15px;
  line-height: 23px;
}

#ad div.tuyomi div p:nth-of-type(1) {
  position: relative;
  width: 300px;
  top: 0;
  left: 130px;
}

#ad div.tuyomi div p:nth-of-type(2) {
  position: relative;
  width: 300px;
  top: -90px;
  left: 520px;
}

#ad div.tuyomi div p:nth-of-type(3) {
  position: relative;
  width: 300px;
  top: 220px;
  left: 130px;
}

#ad div.tuyomi div p:nth-of-type(4) {
  position: relative;
  width: 300px;
  top: 150px;
  left: 520px;
}

#ad div.point div:nth-of-type(1) {
  width: 505px;
  padding: 230px 0 0 415px;
}

#ad div.point div:nth-of-type(2) {
  width: 505px;
  padding: 225px 0 0 40px;
}

#ad div.point div:nth-of-type(3) {
  width: 505px;
  padding: 170px 0 0 415px;
}

#ad div.point div p:nth-of-type(1) {
  color: #C10014;
  font-size: 30px;
  font-weight: bold;
  padding-bottom: 20px;
}

#ad div.point div p:nth-of-type(2) {
  font-size: 18px;
  line-height: 25px;
}

#ad div.price p {
  font-size: 38px;
  font-weight: bold;
  text-align: center;
  padding-top: 140px;
}

#ad div.price2 p.top {
  font-size: 30px;
  color: #fff;
  font-weight: bold;
  text-align: center;
  padding: 10px;
}

#ad div.price2 div {
  font-size: 15px;
  line-height: 25px;
  width: 360px;
  position: absolute;
}

#ad div.price2 p.left {
  position: relative;
  top: 190px;
  left: 70px;
}

#ad div.price2 p.right {
  position: relative;
  top: 115px;
  left: 530px;
}

#ad div.price3 p.top {
  font-size: 24px;
  color: #C10014;
  font-weight: bold;
  width: 885px;
  margin: 10px auto 0;
}

#ad div.price3 p:nth-of-type(2) {
  font-size: 16px;
  width: 885px;
  line-height: 23px;
  margin: 5px auto 15px;
}

#ad div.price3 div:nth-of-type(1) {
  background: #333;
  font-size: 18px;
  width: 220px;
  height: 50px;
  float: left;
  color: #fff;
  font-weight: bold;
  margin-left: 40px;
}

#ad div.price3 div:nth-of-type(1) p {
  margin: 10px 10px 0;
}

#ad div.price3 div:nth-of-type(2) {
  background: #E6E6E6;
  font-size: 22px;
  width: 660px;
  height: 50px;
  float: left;
  color: #C10014;
  font-weight: bold;
}

#ad div.price3 div:nth-of-type(2) p {
  margin: 8px 40px 0;
}

#ad div.price3 p:nth-of-type(3) {
  text-align: right;
  padding: 10px 70px;
  font-size: 14px;
  clear: left;
}

#ad div.price3 img {
  display: block;
  margin-bottom: 70px;
}

#ad div.nagare p.top {
  font-size: 38px;
  font-weight: bold;
  text-align: center;
  padding: 45px 0 160px;
}

#ad div.nagare div p {
  float: left;
  font-size: 20px;
  font-weight: bold;
  text-align: center;
  width: 150px;
  padding: 0 0 0 35px;
  line-height: 25px;
}

/* =======================================
 プライバシーポリシー
======================================= */
#privacy_policy {
  margin-inline: auto;
  padding: 0 0 100px;
  width: 91.25%;
}
#privacy_policy .head_wrap h1 {
  font-size: 40px;
}
#privacy_policy .head_wrap span {
  font-size: 14px;
}
#privacy_policy .privacy_list ul li h2 {
  font-size: 18px;
}
#privacy_policy .privacy_list ul li p {
  font-size: 13px;
}
#privacy_policy .privacy_list ul li ol.privacy_txt li {
  font-size: 13px;
  text-align: justify;
}
#privacy_policy .privacy_list .privacy_box {
  padding: 20px 20px 15px;
  margin: 7px 0 30px 11px;
}
#privacy_policy .privacy_list .privacy_box h4 {
  font-size: 15px;
}
#privacy_policy .privacy_list .privacy_box dt {
  font-size: 13px;
  min-width: inherit;
  width: 5em;
}
#privacy_policy .privacy_list .privacy_box dd {
  font-size: 13px;
  margin-left: 5em;
  text-align: left;
}
#privacy_policy p.privacy_copy {
  font-size: 13px;
  line-height: 1.7;
  letter-spacing: 0.15em;
}

/* =======================================
 ヘッダーサイト内検索　結果
======================================= */
#header-search .page-tit {
  margin-bottom: 25px;
}

#header-search .search-totalCnt {
  background: #F2F2F2;
  border-radius: 5px;
  font-size: 16px;
  line-height: 2.3;
  padding: 12px 60px;
  box-sizing: border-box;
  position: relative;
  margin-bottom: 45px;
}

#header-search .search-totalCnt::after {
  content: "ー";
  font-weight: bold;
  display: inline-block;
  position: absolute;
  left: 28px;
}

#header-search .search-col {
  border-bottom: 1px solid #E6E6E6;
  padding: 14px 37px;
  box-sizing: border-box;
}

#header-search .search-col .search-tit {
  color: #000;
  font-size: 23px;
  font-weight: bold;
  line-height: 140%;
  margin: 10px 0;
}

#header-search .search-col .search-txt {
  font-size: 14px;
  margin: 10px 0;
}

#header-search .search-col .search-tit a:hover,
#header-search .search-col .search-txt a:hover {
  text-decoration: underline;
}

#header-search .search-col .search-url a {
  color: #808080;
  text-decoration: underline;
}

/* =======================================
 ディレクションとは
======================================= */
section#direction {
  width: 100%;
}
section#direction div.area_1 {
  background: url(../img/page/direction/bg_01_sp.png) 0 0/100% auto no-repeat #ffdd45;
  -webkit-padding-before: 14.323vw;
          padding-block-start: 14.323vw;
  position: relative;
}
section#direction div.area_1 h3 {
  left: 0;
  position: absolute;
  top: -4.557vw;
}
section#direction div.area_1 p {
  font-size: 3.125vw;
  line-height: 1.6;
  position: static;
}
section#direction div.area_1 .direction_list {
  -webkit-margin-before: 3.906vw;
          margin-block-start: 3.906vw;
}
section#direction .direction_flow {
  background: #ffdd45;
}
section#direction div.area_2,
section#direction div.area_3,
section#direction div.area_4 {
  box-sizing: border-box;
  font-size: 3.125vw;
  line-height: 1.6;
  -webkit-padding-before: 4.688vw;
          padding-block-start: 4.688vw;
}
section#direction div.area_2 {
  background: url(../img/page/direction/bg_02_sp.png) 0 0/100% auto no-repeat;
  height: 151.302vw;
}
section#direction div.area_2 p:nth-of-type(1) {
  left: 9.766vw;
  top: 18.229vw;
  width: 32.552vw;
}
section#direction div.area_2 p:nth-of-type(2) {
  left: 48.177vw;
  top: 65.755vw;
  width: 41.667vw;
}
section#direction div.area_3 {
  background: url(../img/page/direction/bg_03_sp.png) 0 0/100% auto no-repeat;
  height: 125.26vw;
}
section#direction div.area_3 p {
  left: 17.578vw;
  top: 85.286vw;
  width: 65.104vw;
}
section#direction div.area_4 {
  background: url(../img/page/direction/bg_04_sp.png) 0 0/100% auto no-repeat;
  height: 85.938vw;
}
section#direction div.area_4 p {
  left: 17.578vw;
  top: 56.641vw;
  width: 65.104vw;
}
section#direction div.boxarea {
  -webkit-padding-after: 5.208vw;
          padding-block-end: 5.208vw;
  padding-inline: 0;
}
section#direction div.boxarea p.kome {
  font-size: 3.125vw;
  margin-inline: auto;
  text-align: left;
  width: 89.427vw;
}
section#direction div.box1,
section#direction div.box2 {
  background: url(../img/page/direction/bg_05_sp.jpg);
  clip-path: polygon(6.5vw 0%, 100% 0, 100% 100%, 0 100%, 0% 6.5vw);
  float: none;
  height: auto;
  -webkit-margin-after: 5.208vw;
          margin-block-end: 5.208vw;
  margin-inline: auto;
  padding-block: 3.906vw 5.208vw;
  position: relative;
  width: 89.427vw;
}
section#direction div.box1::before,
section#direction div.box2::before {
  background-color: #fff;
  background-image: linear-gradient(to bottom, transparent 95%, #eaeaea 5%), linear-gradient(to right, transparent 95%, #eaeaea 5%);
  background-repeat: repeat;
  background-size: 10px 10px;
  clip-path: polygon(6.5vw 0%, 100% 0, 100% 100%, 0 100%, 0% 6.5vw);
  content: "";
  height: calc(100% - 10px);
  inset: 5px;
  position: absolute;
  width: calc(100% - 10px);
}
section#direction div.box1 h4,
section#direction div.box2 h4 {
  position: relative;
  z-index: 5;
}
section#direction div.box1 p,
section#direction div.box2 p {
  font-size: 3.646vw;
  line-height: 1.5;
  -webkit-margin-before: 3.906vw;
          margin-block-start: 3.906vw;
  margin-inline: auto;
  position: relative;
  width: 81.25vw;
  z-index: 5;
}
section#direction div.box1:nth-child(1),
section#direction div.box1:nth-child(4),
section#direction div.box1:nth-child(6) {
  -webkit-margin-end: auto;
          margin-inline-end: auto;
}
section#direction div.box1:nth-child(7) {
  -webkit-margin-after: 0;
          margin-block-end: 0;
}
section#direction div.dir_bottom {
  background-color: #fff;
  background-image: linear-gradient(to bottom, transparent 95%, #eaeaea 5%), linear-gradient(to right, transparent 95%, #eaeaea 5%);
  background-repeat: repeat;
  background-size: 10px 10px;
  height: auto;
  -webkit-margin-after: 7.813vw;
          margin-block-end: 7.813vw;
  padding-block: 6.51vw;
  width: 100%;
}
section#direction div.dir_bottom p {
  border-radius: 3.906vw;
  font-size: 4.688vw;
  float: none;
  height: auto;
  letter-spacing: 0.08em;
  line-height: 14.323vw;
  margin-block: 0;
  margin-inline: auto;
  width: 89.427vw;
}
section#direction div.dir_bottom a {
  display: block;
}
section#direction div.dir_bottom a:nth-child(1) p:before, section#direction div.dir_bottom a:nth-child(2) p:before {
  border-top: 1.823vw solid transparent;
  border-bottom: 1.823vw solid transparent;
  border-left: 1.823vw solid #FFF;
  right: 5.208vw;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
section#direction div.dir_bottom a:nth-child(2) {
  -webkit-margin-before: 3.906vw;
          margin-block-start: 3.906vw;
}

/* thanks page */
#thanks {
  padding-block: 11.719vw;
}

.thanks-tit {
  font-size: 6.51vw;
  -webkit-margin-after: 6.51vw;
          margin-block-end: 6.51vw;
}
.thanks-tit + img {
  width: 91.25%;
}

.thanks-txt {
  margin-block: 6.51vw 3.255vw;
  margin-inline: auto;
  text-align: left;
  width: 91.25%;
}

.size-l {
  font-size: 114%;
}

.thanks-note {
  line-height: 8.854vw;
  width: 70.313vw;
}

/* =======================================
 page service
======================================= */
#service_wrap {
  font-size: 3.646vw;
}
#service_wrap .service_01 {
  -webkit-margin-after: 8.854vw;
          margin-block-end: 8.854vw;
}
#service_wrap .service_01 h3 {
  -webkit-margin-after: 3.906vw;
          margin-block-end: 3.906vw;
}
#service_wrap .service_01 .service_list {
  align-items: center;
  background: url(../img/page/service/fv_img01_sp.png) 0 0/100% auto no-repeat;
  display: flex;
  flex-direction: column;
  gap: 28.646vw;
  height: 238.021vw;
  -webkit-padding-before: 9.766vw;
          padding-block-start: 9.766vw;
  width: 100%;
}
#service_wrap .service_01 .service_list::before, #service_wrap .service_01 .service_list::after {
  display: none;
}
#service_wrap .service_01 .service_list > div {
  float: none;
  width: 52.083vw;
}
#service_wrap .service_01 a {
  align-items: center;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 2.604vw;
  height: 52.083vw;
  padding-block: 6.51vw 9.115vw;
}
#service_wrap .service_01 .service_img01,
#service_wrap .service_01 .service_img02,
#service_wrap .service_01 .service_img03 {
  background: none;
}
#service_wrap .service_01 .service_img03 h4 {
  line-height: 13.021vw;
}
#service_wrap .service_01 h4 {
  font-size: 6.51vw;
  -webkit-margin-after: 0;
          margin-block-end: 0;
}
#service_wrap .service_01 p {
  font-size: 3.385vw;
  line-height: 1.6;
}

#service_wrap .service_02,
#service_wrap .service_03,
#service_wrap .service_04 {
  -webkit-padding-after: 3.906vw;
          padding-block-end: 3.906vw;
}

#service_wrap .contents_tit {
  font-size: 4.688vw;
  padding-block: 3.385vw;
  padding-inline: 3.906vw;
  -webkit-margin-after: 6.51vw;
          margin-block-end: 6.51vw;
}

#service_wrap .content_block {
  align-items: center;
  flex-direction: column;
  gap: 7.813vw;
  -webkit-margin-after: 10.417vw;
          margin-block-end: 10.417vw;
}
#service_wrap .content_block::before, #service_wrap .content_block::after {
  display: none;
}

#service_wrap .content_block:nth-child(1) {
  -webkit-margin-after: 9.115vw;
          margin-block-end: 9.115vw;
}

#service_wrap .left_block {
  width: 91.25%;
}

#service_wrap .right_block {
  width: 78.125vw;
}

#service_wrap dl.detail_txt dt {
  font-size: 6.51vw;
  padding-block: 2.083vw 1.042vw;
  -webkit-padding-start: 3.906vw;
          padding-inline-start: 3.906vw;
  -webkit-margin-after: 5.208vw;
          margin-block-end: 5.208vw;
  line-height: 1.4;
  text-align: left;
}

#service_wrap dl.detail_txt dt span.txt01 {
  font-size: 4.167vw;
  -webkit-margin-after: 2.604vw;
          margin-block-end: 2.604vw;
}

#service_wrap dl.detail_txt dd {
  font-size: 3.646vw;
  -webkit-margin-after: 6.25vw;
          margin-block-end: 6.25vw;
  line-height: 1.7;
}

#service_wrap dl.tag_wrap {
  flex-wrap: wrap;
  font-size: 3.646vw;
  gap: 2.604vw 3.906vw;
  -webkit-margin-after: 8.854vw;
          margin-block-end: 8.854vw;
}

#service_wrap dl.tag_wrap dt {
  background: #333;
  clip-path: polygon(0% 0%, 95% 0%, 100% 50%, 95% 100%, 0% 100%);
  -webkit-margin-end: 0;
          margin-inline-end: 0;
  width: auto;
  padding-block: 1.302vw;
  padding-inline: 1.2em 1.8em;
}

#service_wrap dl.tag_wrap dd {
  -webkit-margin-end: 0;
          margin-inline-end: 0;
  width: auto;
  padding-block: 1.302vw;
  padding-inline: 1.2em;
}

#service_wrap ul.price_wrap li.price_txt {
  float: none;
  width: 100%;
  -webkit-margin-end: 0;
          margin-inline-end: 0;
  font-size: 11.198vw;
}

#service_wrap ul.price_wrap li.price_txt span.txt01 {
  font-size: 5.469vw;
  -webkit-padding-end: 2.083vw;
          padding-inline-end: 2.083vw;
}

#service_wrap ul.price_wrap li.price_txt span.txt02 {
  font-size: 7.813vw;
}

#service_wrap ul.price_wrap li.btn_detail {
  float: none;
  font-size: 4.688vw;
  -webkit-margin-before: 2.604vw;
          margin-block-start: 2.604vw;
  width: 100%;
}

#service_wrap ul.price_wrap li.btn_detail a {
  -webkit-margin-end: 0;
          margin-inline-end: 0;
  padding: 4.167vw 5.208vw;
}

#service_wrap ul.price_wrap li.btn_detail a::before {
  width: 3.125vw;
  top: 7.161vw;
  right: 6.771vw;
}

#service_wrap ul.price_wrap li.btn_detail a::after {
  height: 2.083vw;
  width: 2.083vw;
  top: 6.12vw;
  right: 6.771vw;
}

/* 個別指定 */
#service_wrap .service_03 h3 {
  -webkit-margin-after: 6.51vw;
          margin-block-end: 6.51vw;
}

#service_wrap .service_03 .content_block {
  -webkit-margin-after: 3.906vw;
          margin-block-end: 3.906vw;
}

#service_wrap .service_04 h3 {
  -webkit-margin-after: 7.161vw;
          margin-block-end: 7.161vw;
}

#service_wrap .service_04 .content_block {
  -webkit-margin-after: 6.51vw;
          margin-block-end: 6.51vw;
  -webkit-padding-after: 6.51vw;
          padding-block-end: 6.51vw;
}

#service_wrap .bnr_service {
  -webkit-padding-before: 2.604vw;
          padding-block-start: 2.604vw;
}

/* =======================================
 article
======================================= */
#article-main {
  float: none;
  -webkit-margin-before: 7.813vw;
          margin-block-start: 7.813vw;
  margin-inline: auto;
  width: 92.15%;
}

/*検索窓*/
.sArticle-keyword {
  border-radius: 4.557vw;
  border-width: 1px;
  box-sizing: content-box;
  height: 7.813vw;
}
.sArticle-keyword .sArticle-txt {
  margin-left: 2.604vw;
  padding: 0;
  width: calc(100% - 11vw);
}
.sArticle-keyword .sArticle-txt input[type=text] {
  font-size: 100%;
  height: 7.813vw;
  line-height: 7.813vw;
}
.sArticle-keyword .sArticle-btn {
  margin: 0.521vw 0.781vw 0 0;
}
.sArticle-keyword .btn-submit button {
  line-height: 6.51vw;
  height: 6.51vw;
  width: 6.51vw;
  position: relative;
  z-index: 5;
}
.sArticle-keyword .btn-submit button img {
  width: 55%;
}

#article-main .article-col .article-thumb {
  float: none;
  margin: 0 0 2.604vw;
  text-align: center;
  width: 100%;
}
#article-main .article-col .article-thumb img {
  max-width: 100%;
}
#article-main .article-col .article-body {
  float: none;
  min-height: auto;
  width: 100%;
}
#article-main .article-col .article-cat {
  font-size: 3.385vw;
}
#article-main .article-col .article-cat span {
  font-size: 100%;
}
#article-main .article-col .article-tit {
  font-size: 5.208vw;
}
#article-main .article-col .article-txt {
  font-size: 3.385vw;
}
#article-main .article-col .article-date {
  font-size: 3.125vw;
  position: static;
}
#article-main .article-col:nth-child(1) .article-thumb, #article-main .article-col:nth-child(2) .article-thumb, #article-main .article-col:nth-child(3) .article-thumb {
  width: 100%;
}
#article-main .article-col:nth-child(1) .article-thumb img, #article-main .article-col:nth-child(2) .article-thumb img, #article-main .article-col:nth-child(3) .article-thumb img {
  max-width: 100%;
}
#article-main .article-col:nth-child(1) .article-body, #article-main .article-col:nth-child(2) .article-body, #article-main .article-col:nth-child(3) .article-body {
  min-height: auto;
  width: 100%;
}

/* =======================================
 article-side
======================================= */
#article-side {
  float: none;
  margin-inline: auto;
  margin-top: 15.625vw;
  width: 100%;
}
#article-side h2 {
  border-radius: 0;
  letter-spacing: 0.08em;
  line-height: 2.5;
  height: 2.5em;
  padding: 0 5.208vw;
}
#article-side .article-col {
  box-sizing: border-box;
  margin-inline: auto;
  padding: 3.646vw 4%;
  width: 92%;
}
#article-side .article-col .article-date {
  font-size: 3.646vw;
  -webkit-margin-after: 1.563vw;
          margin-block-end: 1.563vw;
}
#article-side .article-col .article-thumb {
  width: 100%;
}
#article-side .article-col .article-thumb img {
  max-height: unset !important;
  max-width: unset;
}
#article-side .article-col .article-tit {
  font-size: 4.167vw;
  margin-block: 2.604vw;
}
#article-side .article-col .article-cat {
  font-size: 3.125vw;
}
#article-side .article-col .article-cat span {
  font-size: 3.385vw;
}
#article-side .aside-btn {
  font-size: 3.385vw;
  letter-spacing: 0.08em;
  line-height: 3.4;
  margin: 7.813vw auto;
  width: 72.917vw;
}

/* =======================================
 article-page
======================================= */
.article-page .article-cat {
  font-size: 3.385vw;
  line-height: 2.6;
}
.article-page .article-cat span {
  font-size: 3.646vw;
}
.article-page .article-date {
  font-size: 3.385vw;
}
.article-page .article-tit {
  font-size: 6.771vw;
}
.article-page .article-thumb img {
  max-width: 100%;
}
.article-page .article-outline {
  font-size: 3.646vw;
  width: 100%;
}
.article-page .article-link {
  margin: 10.417vw auto;
  padding: 5.208vw;
}
.article-page .article-link dt {
  font-size: 4.167vw;
}
.article-page .article-link dd {
  font-size: 3.385vw;
  margin-left: 1em;
}
.article-page .article-link dd li {
  margin: 4.167vw 0;
}
.article-page .article-page-col {
  margin: 15.625vw auto;
}
.article-page .article-page-col h3 {
  font-size: 5.729vw;
}
.article-page .article-page-col .article-txt {
  font-size: 3.646vw;
  width: 100%;
}
.article-page .article-page-children {
  margin: 18.229vw auto;
  width: 100%;
}
.article-page .article-page-children h4 {
  background-position: 0 0.065em;
  background-size: auto 1.1em;
  font-size: 5.99vw;
  line-height: 1.5;
  margin-bottom: 1em;
  padding-left: 1.5em;
}
.article-page .article-page-notes {
  padding: 7.813vw 5.208vw 2.604vw;
  width: 100%;
}
.article-page .article-page-notes h4 {
  font-size: 5.729vw;
  left: 2.604vw;
}
.article-page .article-page-notes .article-txt {
  font-size: 3.125vw;
  width: 100%;
}

.sns-keywords {
  margin: 7.813vw 0;
  text-align: left;
}
.sns-keywords li a {
  font-size: 3.385vw;
  line-height: 2.4;
  padding: 0 1.5em;
}

/* =======================================
 sp monthly_support
======================================= */
.page-delab {
  -webkit-margin-after: 18vw;
          margin-block-end: 18vw;
}

.delab-bg01 {
  background-image: url(../img/delab/hl_bg_sp.png);
  background-position: 0 0;
  background-size: 100% auto;
  -webkit-padding-after: 5.729vw;
          padding-block-end: 5.729vw;
}

.delab-hgroup {
  -webkit-padding-before: 5.208vw;
          padding-block-start: 5.208vw;
}

.delab-hl-txt {
  font-size: 5.208vw;
  -webkit-margin-after: 2.604vw;
          margin-block-end: 2.604vw;
  -webkit-padding-before: 0.833vw;
          padding-block-start: 0.833vw;
  width: 67.708vw;
}
.delab-hl-txt::before, .delab-hl-txt::after {
  height: 13.542vw;
  width: 2px;
}
.delab-hl-txt .delab-hl-tx02 {
  background: linear-gradient(to bottom, rgba(255, 255, 0, 0) 0%, rgba(255, 255, 0, 0) 50%, yellow 51%, yellow 75%, rgba(255, 255, 0, 0) 76%, rgba(255, 255, 0, 0) 100%);
  -webkit-padding-after: 1.667vw;
          padding-block-end: 1.667vw;
}
.delab-hl-txt .delab-hl-tx02 span {
  font-size: 75%;
}

.delab-hl {
  -webkit-margin-after: 13.542vw;
          margin-block-end: 13.542vw;
  margin-inline: auto;
  width: 76.667vw;
}

.delab-def dt {
  font-size: 4vw;
  height: 10.133vw;
  width: 10.667vw;
}
.delab-def dd {
  font-size: 10.667vw;
  -webkit-padding-start: 12vw;
          padding-inline-start: 12vw;
}
.delab-def dd img {
  width: 11.2vw;
}

.delab-desc {
  background: url(../img/delab/desc_bg_sp.jpg) 0 100%/100% auto no-repeat;
  -webkit-margin-after: 4.167vw;
          margin-block-end: 4.167vw;
  padding-block: 1.953vw 39.063vw;
  position: relative;
}

.delab-desc-hl {
  line-height: 1;
  -webkit-margin-after: 4.688vw;
          margin-block-end: 4.688vw;
  margin-inline: auto;
  width: 33.333vw;
}

.delab-desc-deco {
  left: 0;
  position: absolute;
  top: -2.604vw;
}

.delab-desc-txt01 {
  -webkit-margin-after: 1.042vw;
          margin-block-end: 1.042vw;
  -webkit-padding-start: 3.125vw;
          padding-inline-start: 3.125vw;
}
.delab-desc-txt01 .list {
  font-size: 6.25vw;
}
.delab-desc-txt01 .list::first-letter {
  font-size: 10.417vw;
}
.delab-desc-txt01 .list:nth-of-type(1) {
  padding-inline: 5.208vw;
}
.delab-desc-txt01 .list:nth-of-type(3) {
  padding-inline: 4.167vw;
}
.delab-desc-txt01 .list::after {
  height: 7.396vw;
  top: 0.521vw;
}
.delab-desc-txt01 .cross {
  height: 3.125vw;
  margin-inline: 2.5vw;
  width: 3.125vw;
}

.delab-desc-txt02 {
  font-size: 3.333vw;
  -webkit-margin-after: 3.125vw;
          margin-block-end: 3.125vw;
}

.delab-desc-cont {
  -webkit-margin-after: 6.25vw;
          margin-block-end: 6.25vw;
  margin-inline: auto;
  width: 92%;
}

.delab-dc-list {
  cursor: pointer;
  display: block;
  -webkit-margin-after: 2.667vw;
          margin-block-end: 2.667vw;
  overflow-x: scroll;
  white-space: nowrap;
  width: 100%;
}
.delab-dc-list li {
  background-size: contain;
  height: 34.667vw;
  display: inline-block;
  -webkit-margin-after: 0;
          margin-block-end: 0;
  margin-inline: 1.333vw;
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
  vertical-align: bottom;
  width: 34.667vw;
}
.delab-dc-list .scroll-hint-icon {
  top: calc(50% - 10vw);
}

.delab-dc-img {
  margin-inline: auto;
  width: 14.667vw;
}

.delab-dc-txt01 {
  align-items: center;
  display: flex;
  font-size: 3.385vw;
  justify-content: center;
  line-height: 1.25;
  -webkit-margin-before: 0.651vw;
          margin-block-start: 0.651vw;
  min-height: 2.75em;
}

.delab-dc-txt02 {
  font-size: 4.533vw;
  line-height: 2;
  padding-inline: 0.25em;
}

.delab-support {
  box-sizing: border-box;
  -webkit-margin-before: -20.833vw;
          margin-block-start: -20.833vw;
  width: 92.839vw;
}

.delab-sprt-img00 {
  left: -3.906vw;
  top: -3.906vw;
  width: 39.063vw;
}

.delab-sprt-desc {
  font-size: 3.385vw;
  -webkit-margin-after: 20.833vw;
          margin-block-end: 20.833vw;
  -webkit-padding-before: 7.813vw;
          padding-block-start: 7.813vw;
  padding-inline: 3.906vw;
}
.delab-sprt-desc strong {
  font-size: 3.646vw;
}
.delab-sprt-desc strong.lv-01 {
  font-size: 7.031vw;
}
.delab-sprt-desc p {
  -webkit-margin-after: 3.255vw;
          margin-block-end: 3.255vw;
}
.delab-sprt-desc p:nth-of-type(1) {
  -webkit-padding-start: 32.552vw;
          padding-inline-start: 32.552vw;
}
.delab-sprt-desc p:nth-of-type(2) {
  text-align: center;
}

.delab-sprt-hl {
  background-image: url("../img/delab/support_bg_sp.png");
  background-size: 100% 100%;
  font-size: 4.427vw;
  height: 15.495vw;
  letter-spacing: 0.08em;
  left: calc(-1.042vw - 1px);
  line-height: 1.4;
  -webkit-padding-before: 1.302vw;
          padding-block-start: 1.302vw;
  padding-inline: 5.208vw;
  top: 48.177vw;
  width: 95.052vw;
}

.delab-sprt-list {
  display: inherit;
  margin-inline: auto;
  width: 92%;
}
.delab-sprt-list li {
  align-items: center;
  display: flex;
  padding-block: 3.906vw;
  width: 100%;
}
.delab-sprt-list li:not(:last-child) {
  border-bottom: 3px dotted #ccc;
  border-right: 0;
}

.delab-sprt-img {
  -webkit-margin-after: 0;
          margin-block-end: 0;
  width: 33.854vw;
}

.delab-sprt-def {
  width: 49.479vw;
}
.delab-sprt-def dt {
  font-size: 4.267vw;
}
.delab-sprt-def dd {
  font-size: 3.467vw;
}

.delab-shop {
  margin-inline: auto;
  padding-block: 5.333vw;
  width: 92%;
}

.delab-shop-hl {
  font-size: 3.733vw;
  -webkit-margin-after: 2.667vw;
          margin-block-end: 2.667vw;
}
.delab-shop-hl .icon-cart {
  background-size: 100% auto;
  height: 5.333vw;
  width: 5.333vw;
}

.delab-shoplist {
  width: 100%;
}
.delab-shoplist li {
  margin: 1.333vw;
}
.delab-shoplist img {
  height: 6.667vw;
  width: auto;
}

.delab-rec {
  background-position: 0 100%;
  background-size: 100% auto;
  height: auto;
  padding-block: 6.667vw 28vw;
}
.delab-rec::before {
  background-color: #e6e6e6;
  content: "";
  display: block;
  height: 50.667vw;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
.delab-rec * {
  position: relative;
  z-index: 1;
}

.delab-rec-hl {
  -webkit-margin-after: 5.208vw;
          margin-block-end: 5.208vw;
  margin-inline: auto 0;
  width: 98%;
}

.delab-rec-list {
  font-size: 3.646vw;
  margin-inline: auto;
  width: 91.25%;
}
.delab-rec-list li {
  background-size: 6.51vw auto;
  line-height: 1.4;
  padding-block: 2.604vw;
  -webkit-padding-start: 7.813vw;
          padding-inline-start: 7.813vw;
}
.delab-rec-list li:nth-of-type(3), .delab-rec-list li:nth-of-type(4) {
  -webkit-margin-start: 30%;
          margin-inline-start: 30%;
}

.delab-solve {
  background-size: 100% auto;
  margin-block: -24vw 6.667vw;
  -webkit-padding-before: 8vw;
          padding-block-start: 8vw;
}

.delab-solve-txt01 {
  font-size: 5.067vw;
  -webkit-margin-after: 8vw;
          margin-block-end: 8vw;
  -webkit-margin-start: 2.667vw;
          margin-inline-start: 2.667vw;
  width: 60vw;
}

.delab-solve-txt02 {
  -webkit-margin-start: 30.667vw;
          margin-inline-start: 30.667vw;
  width: 65%;
}

.delab-solve-txt03 {
  background-size: contain;
  font-size: 6.133vw;
  height: 24vw;
  left: 4%;
  top: 32vw;
  width: 24vw;
}

.delab-solve-txt04 {
  font-size: 24vw;
  line-height: 1.7;
  margin-block: -5.333vw -2.667vw;
  margin-inline: 30.667vw 0;
}
.delab-solve-txt04 i {
  display: inline-block;
  font-size: 125%;
  position: static;
  -webkit-transform: translateY(-2.667vw);
          transform: translateY(-2.667vw);
}

.delab-solve-list {
  background-size: 100% auto;
  height: 66.667vw;
  -webkit-margin-before: -32vw;
          margin-block-start: -32vw;
  -webkit-margin-start: -7.292vw;
          margin-inline-start: -7.292vw;
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
  width: 114.583vw;
}
.delab-solve-list li {
  height: 22.396vw;
  width: 22.396vw;
}
.delab-solve-list p {
  font-size: 2.933vw;
  letter-spacing: 0;
}
.delab-solve-list p strong {
  font-size: 116%;
}

.delab-solve-list01 {
  left: 10.938vw;
  top: 18.75vw;
}

.delab-solve-list02 {
  left: 33.75vw;
  top: 41.667vw;
}

.delab-solve-list03 {
  left: 56.25vw;
  top: 18.75vw;
}

.delab-solve-list04 {
  left: 79.167vw;
  top: 41.667vw;
}

.delab-doc {
  width: 100%;
}
.delab-doc::before {
  background-size: 100% auto;
  height: 94.583vw;
  top: -20vw;
}

.delab-doc-inner {
  box-sizing: border-box;
  width: 92.839vw;
}

.delab-elements {
  -webkit-padding-before: 8vw;
          padding-block-start: 8vw;
}

.delab-elem-txt01 {
  font-size: 4vw;
  line-height: 1.5;
  -webkit-margin-after: 4vw;
          margin-block-end: 4vw;
  width: 17em;
}
.delab-elem-txt01::before, .delab-elem-txt01::after {
  height: 1.5em;
  width: 2px;
}

.delab-elem-txt02 {
  font-size: 8vw;
  line-height: 1;
  -webkit-margin-after: 5.333vw;
          margin-block-end: 5.333vw;
}
.delab-elem-txt02 span {
  font-size: 14vw;
}

.delab-elem-def {
  -webkit-margin-start: calc(-1.042vw - 1px);
          margin-inline-start: calc(-1.042vw - 1px);
  -webkit-margin-after: 5.208vw;
          margin-block-end: 5.208vw;
  width: 95.052vw;
}
.delab-elem-def dt {
  background-image: url("../img/delab/support_bg_sp.png");
  background-size: 100% 100%;
  font-size: 4.427vw;
  height: 15.495vw;
  letter-spacing: 0.08em;
  line-height: 1.4;
  -webkit-margin-after: 5.208vw;
          margin-block-end: 5.208vw;
  -webkit-padding-before: 1.302vw;
          padding-block-start: 1.302vw;
  padding-inline: 5.208vw;
}
.delab-elem-def dd {
  -webkit-margin-start: -5.208vw;
          margin-inline-start: -5.208vw;
  width: 105.469vw;
}

.delab-cv {
  background-position: 50% 2.667vw;
  background-size: 98% auto;
  -webkit-margin-start: calc(-3.646vw - 1px);
          margin-inline-start: calc(-3.646vw - 1px);
  width: 100.26vw;
}
.delab-cv dt {
  font-size: 4.688vw;
  line-height: 1.4;
  -webkit-margin-after: 2.667vw;
          margin-block-end: 2.667vw;
}
.delab-cv dd {
  background-size: 90% auto;
  font-size: 13.542vw;
  letter-spacing: 0.04em;
}

.delab-feature {
  -webkit-padding-before: 10.667vw;
          padding-block-start: 10.667vw;
}

.delab-feat-sec {
  -webkit-margin-after: 10.667vw;
          margin-block-end: 10.667vw;
}

.delab-feat-img {
  top: -6.667vw;
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
  width: 44.133vw;
}

.delab-feat-hl {
  font-size: 3.733vw;
  letter-spacing: 0.08em;
  line-height: 1.5;
  text-align: left;
  width: 69.333vw;
}

.delab-feat-txt {
  margin-inline: auto !important;
  width: 82.667vw;
}
.delab-feat-txt dt {
  font-size: 5.333vw;
  width: 42vw;
}
.delab-feat-txt dd {
  font-size: 3.733vw;
}

.delab-feat-sec:nth-child(odd) .delab-feat-img {
  left: -3.333vw;
}
.delab-feat-sec:nth-child(odd) .delab-feat-hl {
  padding-block: 1.733vw;
  padding-inline: 22.667vw 6.667vw;
}
.delab-feat-sec:nth-child(odd) .delab-feat-txt dt {
  -webkit-margin-after: 4vw;
          margin-block-end: 4vw;
  -webkit-margin-start: 40vw;
          margin-inline-start: 40vw;
}
.delab-feat-sec:nth-child(even) .delab-feat-img {
  right: -3.333vw;
}
.delab-feat-sec:nth-child(even) .delab-feat-hl {
  padding-block: 1.733vw;
  padding-inline: 4vw 24vw;
}
.delab-feat-sec:nth-child(even) .delab-feat-txt {
  -webkit-padding-start: 0;
          padding-inline-start: 0;
}
.delab-feat-sec:nth-child(even) .delab-feat-txt dt {
  -webkit-margin-after: 4vw;
          margin-block-end: 4vw;
}
.delab-feat-sec:nth-of-type(3) {
  -webkit-margin-after: 10.667vw;
          margin-block-end: 10.667vw;
}

.delab-feat-btn {
  font-size: 3.733vw;
  letter-spacing: 0.04em;
  line-height: 1;
  margin-block: 7.333vw 0;
  margin-inline: auto;
  width: 73.333vw;
}
.delab-feat-btn a {
  background: #000;
  border-radius: 7.333vw;
  padding-block: 6vw;
  position: relative;
}
.delab-feat-btn a::before {
  border: 1px solid #fff;
  border-radius: 6.667vw;
  content: "";
  display: block;
  height: calc(100% - 6px);
  left: 3px;
  position: absolute;
  top: 3px;
  width: calc(100% - 6px);
}
.delab-feat-btn a::after {
  border: solid #fff;
  border-width: 0 2px 2px 0;
  content: "";
  height: 2.667vw;
  position: absolute;
  right: 5.333vw;
  top: 48%;
  -webkit-transform: rotate(-45deg) translateY(-50%);
          transform: rotate(-45deg) translateY(-50%);
  width: 2.667vw;
}

.delab-awards {
  background-size: 100% auto;
  -webkit-margin-before: -23.958vw;
          margin-block-start: -23.958vw;
  padding-block: 23.958vw 12.083vw;
}

.delab-aw-hl {
  background-size: 100% auto;
  font-size: 4vw;
  height: 10.667vw;
  letter-spacing: 0.04em;
  line-height: 1;
  -webkit-margin-after: 9.333vw;
          margin-block-end: 9.333vw;
  -webkit-padding-before: 1.333vw;
          padding-block-start: 1.333vw;
  width: 33.333vw;
}

.delab-aw-txt {
  font-size: 4.8vw;
  line-height: 1.4;
  width: 53.333vw;
}
.delab-aw-txt::before, .delab-aw-txt::after {
  height: 13.333vw;
  width: 2px;
}

.delab-aw-desc dt {
  font-size: 14.667vw;
  margin-block: -6.667vw;
}
.delab-aw-desc dt::first-letter {
  font-size: 125%;
  margin-right: 0.1em;
}

.delab-aw-notes {
  font-size: 2.667vw;
  margin-inline: auto;
  width: 91.25%;
}

.delab-know-how {
  background-size: 100% auto;
  padding-block: 13.542vw 7.292vw;
}

.delab-kh-hl {
  top: -12.083vw;
}

.delab-kh-num {
  flex-direction: column;
  line-height: 1.1;
  -webkit-margin-after: 3.646vw;
          margin-block-end: 3.646vw;
  width: 96%;
}
.delab-kh-num .bloc {
  align-items: center;
  -webkit-margin-after: 4vw;
          margin-block-end: 4vw;
  margin-inline: 2.667vw;
}
.delab-kh-num .bloc dt {
  font-size: 4vw;
  width: 24vw;
}
.delab-kh-num .bloc dt span {
  padding-block: 1.333vw;
  padding-inline: 2.667vw;
}
.delab-kh-num .bloc dd {
  font-size: 14.4vw;
  -webkit-padding-start: 13.333vw;
          padding-inline-start: 13.333vw;
}
.delab-kh-num .bloc dd img {
  width: 13.333vw;
}
.delab-kh-num .bloc:nth-of-type(1) dt {
  text-align: right;
}
.delab-kh-num .bloc:nth-of-type(1) dd {
  -webkit-padding-start: 10.667vw;
          padding-inline-start: 10.667vw;
}

.delab-kh-pf {
  -webkit-margin-after: 5.333vw;
          margin-block-end: 5.333vw;
  width: 100%;
}
.delab-kh-pf img {
  width: 36vw;
}

.delab-kh-btn {
  font-size: 3.467vw;
  line-height: 1;
  width: 80vw;
}
.delab-kh-btn a {
  padding-block: 4.667vw;
}
.delab-kh-btn span {
  border-width: 1.6vw 0 1.6vw 2.667vw;
  -webkit-margin-start: 2.667vw;
          margin-inline-start: 2.667vw;
}

.delab-strength {
  background-size: 100% auto;
  -webkit-margin-after: 13.333vw;
          margin-block-end: 13.333vw;
  -webkit-padding-before: 10.667vw;
          padding-block-start: 10.667vw;
}
.delab-strength::after {
  background: url("../img/delab/strength_bg_02.png") 50% 0/auto 100% no-repeat;
  bottom: -14.583vw;
  content: "";
  height: 96.042vw;
  left: 0;
  position: absolute;
  width: 100%;
}

.delab-str-hl {
  -webkit-margin-after: 10.667vw;
          margin-block-end: 10.667vw;
  margin-inline: auto;
  width: 84vw;
}

.delab-str-sec {
  background-size: 100% auto;
  border-radius: 1.333vw;
  -webkit-margin-after: 10.667vw;
          margin-block-end: 10.667vw;
  -webkit-padding-before: 6.667vw;
          padding-block-start: 6.667vw;
  width: 91.25%;
}

.delab-str-icon {
  left: 3.333vw;
  top: 4vw;
  width: 28.267vw;
}

.delab-str-shl {
  box-sizing: border-box;
  font-size: 5.067vw;
  -webkit-margin-after: 10.667vw;
          margin-block-end: 10.667vw;
  padding-block: 5.333vw;
  padding-inline: 36vw 2.667vw;
  text-align: left;
  width: 100%;
}

.delab-str-txt {
  font-size: 3.467vw;
  -webkit-margin-after: 4vw;
          margin-block-end: 4vw;
  margin-inline: auto;
  width: 82.667vw;
}

.delab-our {
  margin-block: 6.667vw 9.333vw;
  width: 82.667vw;
}

.delab-our-hl {
  border-radius: 4vw;
  font-size: 3.733vw;
  line-height: 2;
  -webkit-margin-after: 6vw;
          margin-block-end: 6vw;
}

.delab-our-inner {
  flex-direction: column;
  -webkit-margin-after: 22.667vw;
          margin-block-end: 22.667vw;
}
.delab-our-inner::after {
  border-width: 6.667vw 12vw 0;
  bottom: -13.333vw;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.delab-our-img {
  -webkit-margin-after: 5.333vw;
          margin-block-end: 5.333vw;
  margin-inline: auto;
  width: 61.333vw;
}

.delab-our-list {
  font-size: 3.733vw;
}
.delab-our-list li {
  line-height: 2;
}

.delab-our-txt {
  border-radius: 8vw;
  font-size: 4.8vw;
  letter-spacing: 0.06em;
  line-height: 2.2;
}

.delab-str-scroll {
  -webkit-padding-after: 4vw;
          padding-block-end: 4vw;
  width: 82.667vw;
}

.delab-str-img {
  cursor: pointer;
  display: flex;
  -webkit-margin-after: 1.333vw;
          margin-block-end: 1.333vw;
  overflow-x: scroll;
  -webkit-padding-after: 2.667vw;
          padding-block-end: 2.667vw;
  white-space: nowrap;
  width: 100%;
}
.delab-str-img img {
  height: 100%;
  max-width: inherit;
  width: auto;
}

.delab-str01 .delab-str-img {
  height: 74.133vw;
}

.delab-str02 .delab-str-img {
  height: 58.667vw;
}

.delab-str03 .delab-str-img {
  height: 34.667vw;
}

.delab-str-desc {
  padding-block: 5.333vw;
  padding-inline: 4vw;
}
.delab-str-desc dt {
  font-size: 4vw;
  background-size: 4.267vw auto;
  -webkit-margin-after: 4vw;
          margin-block-end: 4vw;
  -webkit-padding-start: 6.667vw;
          padding-inline-start: 6.667vw;
}
.delab-str-desc dd {
  font-size: 3.733vw;
  letter-spacing: 0.06em;
  line-height: 2;
  -webkit-padding-start: 0;
          padding-inline-start: 0;
}

.delab-bg02 {
  -webkit-margin-before: -18.667vw;
          margin-block-start: -18.667vw;
  padding-block: 18.667vw 8vw;
}

.delab-plan {
  background-position: 50% 0;
  background-size: 95% auto;
  -webkit-margin-after: 8vw;
          margin-block-end: 8vw;
  -webkit-padding-before: 16vw;
          padding-block-start: 16vw;
}

.delab-plan-hl {
  -webkit-margin-after: 8vw;
          margin-block-end: 8vw;
  margin-inline: auto;
  width: 85%;
}

.delab-table-wrap {
  display: flex;
  height: 85.333vw;
  -webkit-margin-after: 1.067vw;
          margin-block-end: 1.067vw;
  overflow-x: scroll;
  white-space: nowrap;
  width: 91.25%;
}

.delab-price * {
  box-sizing: border-box;
}
.delab-price th, .delab-price td {
  display: block;
}
.delab-price th {
  height: 16vw;
}
.delab-price td {
  height: 21.333vw;
}
.delab-price thead {
  float: left;
  left: 0;
  position: sticky;
  z-index: 10;
}
.delab-price thead th, .delab-price thead td {
  width: 28vw;
}
.delab-price thead th {
  background: #fff;
}
.delab-price thead td {
  align-items: center;
  display: flex;
  flex-direction: column;
  font-size: 3.2vw;
  justify-content: center;
}
.delab-price thead .price-plan01 {
  background: #29abe2;
  border-top-left-radius: 10px;
}
.delab-price thead .price-plan02 {
  background: #8cc63f;
}
.delab-price thead .price-plan03 {
  background: #f0aa00;
  border-bottom-left-radius: 10px;
}
.delab-price tbody {
  display: flex;
}
.delab-price tbody th, .delab-price tbody td {
  text-align: center;
  width: 30.667vw;
}
.delab-price tbody th {
  align-items: center;
  display: flex;
  font-size: 3.467vw;
  justify-content: center;
  padding-inline: 2.667vw;
}
.delab-price tbody th:not(:last-child) {
  border-right: 1px solid #fff;
}
.delab-price tbody th .price-label {
  -webkit-padding-end: 0;
          padding-inline-end: 0;
}
.delab-price tbody tr:nth-of-type(1) th {
  border-radius: 10px 0 0 0;
}
.delab-price tbody tr:last-child th {
  border-radius: 0 10px 0 0;
}
.delab-price tbody td {
  align-items: center;
  border-bottom: 1px solid #ccc;
  border-right: 1px solid #ccc;
  display: flex;
  flex-direction: column;
  font-size: 3.467vw;
  justify-content: center;
}
.delab-price tbody td:nth-of-type(3), .delab-price tbody td:nth-of-type(2) {
  border-left: none;
}
.delab-price tbody .price-main01 td {
  border-bottom: 1px solid #ccc !important;
  border-right: 1px dashed #333;
  font-size: 4vw;
}
.delab-price tbody .price-main01 .price-plan01 {
  color: #29abe2;
}
.delab-price tbody .price-main01 .price-plan02 {
  color: #8cc63f;
}
.delab-price tbody .price-main01 .price-plan03 {
  color: #f0aa00;
}
.delab-price tbody .price-main02 td {
  font-size: 4vw;
}
.delab-price tbody .price-td-3col {
  height: 64vw;
}
.delab-price .price-th-sub01 {
  background: #5a5a5a;
  display: block;
  line-height: 1;
  -webkit-padding-before: 10vw;
          padding-block-start: 10vw;
  padding-inline: 0;
}
.delab-price .price-group-label {
  border-radius: 0 10px 0 0;
  font-size: 3.467vw;
  height: 8vw;
  justify-content: flex-start;
  left: 0;
  line-height: 1;
  -webkit-padding-start: 5.333vw;
          padding-inline-start: 5.333vw;
  top: -10vw;
  width: 122.267vw;
  -webkit-writing-mode: unset;
      -ms-writing-mode: unset;
          writing-mode: unset;
}
.delab-price .dashed-line th, .delab-price .dashed-line td {
  border-bottom-style: solid;
}
.delab-price .tooltip {
  display: none !important;
}

.page-delab .price-notes {
  font-size: 3.2vw;
  margin-inline: auto;
  width: 91.25%;
}

.delab-flat {
  border-width: 3px;
  border-radius: 4vw;
  -webkit-margin-after: 10.667vw;
          margin-block-end: 10.667vw;
  padding-block: 5.333vw;
  width: 91.25%;
}

.monthly-ex {
  height: 16.667vw;
  -webkit-margin-after: 5.333vw;
          margin-block-end: 5.333vw;
  -webkit-padding-before: 2.667vw;
          padding-block-start: 2.667vw;
  width: 80vw;
}
.monthly-ex::before, .monthly-ex::after {
  background: url(../img/delab/ex_bg.png) 0 0/contain no-repeat;
  content: "";
  width: 5.6vw;
}
.monthly-ex dt {
  font-size: 2.933vw;
  letter-spacing: 0.02em;
  -webkit-margin-after: 2.667vw;
          margin-block-end: 2.667vw;
  text-shadow: none;
}
.monthly-ex dd {
  font-size: 4.267vw;
  letter-spacing: 0;
  text-shadow: none;
}
.monthly-ex dd span {
  font-size: 5.6vw;
}

.flat-comp {
  border-bottom: none;
  display: block;
  -webkit-margin-after: 5.333vw;
          margin-block-end: 5.333vw;
  width: 80vw;
}

.flat-comp-main {
  border-bottom: 3px solid #000;
  justify-content: center;
  -webkit-margin-after: 18.667vw;
          margin-block-end: 18.667vw;
  padding-inline: 2.667vw;
  width: 100%;
}
.flat-comp-main dt {
  font-size: 2.267vw;
}
.flat-comp-main dd {
  font-size: 3.333vw;
}

.flat-comp-normal {
  margin-inline: 0 4.667vw;
  width: 33.333vw;
}
.flat-comp-normal::after {
  right: -21.333vw;
  width: 21.333vw;
}
.flat-comp-normal .flat-comp-hl {
  bottom: -6.667vw;
  font-size: 3.333vw;
}
.flat-comp-normal .flat-comp01 {
  height: 31.467vw;
}
.flat-comp-normal .flat-comp02 {
  height: 16.533vw;
}
.flat-comp-normal .flat-comp03 {
  height: 13.067vw;
}
.flat-comp-normal dt {
  -webkit-margin-after: 1.6vw;
          margin-block-end: 1.6vw;
}
.flat-comp-normal dd {
  text-shadow: 0;
}

.flat-comp-press {
  font-size: 2.933vw;
  line-height: 1;
  height: 45.333vw;
  width: 6.933vw;
}
.flat-comp-press::before, .flat-comp-press::after {
  background-size: contain;
  height: 14.133vw;
}

.flat-comp-us {
  margin-inline: 4.933vw 0;
  width: 36.667vw;
}
.flat-comp-us .flat-comp-hl {
  bottom: -8vw;
  font-size: 2.4vw;
  line-height: 1;
}
.flat-comp-us .flat-comp-hl img {
  -webkit-filter: drop-shadow(0.667vw 0.667vw 0.667vw rgba(0, 0, 0, 0.2));
          filter: drop-shadow(0.667vw 0.667vw 0.667vw rgba(0, 0, 0, 0.2));
  -webkit-margin-after: -0.667vw;
          margin-block-end: -0.667vw;
  width: 26.667vw;
}
.flat-comp-us .flat-comp-def {
  padding-block: 0.8vw 0;
  padding-inline: 0.8vw;
}
.flat-comp-us .flat-comp01 {
  height: 23.2vw;
  -webkit-padding-after: 1.333vw;
          padding-block-end: 1.333vw;
}
.flat-comp-us .flat-comp02 {
  height: 12vw;
  -webkit-margin-after: 0.667vw;
          margin-block-end: 0.667vw;
}
.flat-comp-us .flat-comp03 {
  height: 7.467vw;
  -webkit-margin-after: 0.667vw;
          margin-block-end: 0.667vw;
}
.flat-comp-us .flat-comp01 dt,
.flat-comp-us .flat-comp02 dt {
  -webkit-margin-after: 1.6vw;
          margin-block-end: 1.6vw;
}
.flat-comp-us .flat-comp03 dt {
  margin-right: 0.5em;
}

.flat-comp-off {
  font-size: 3.867vw;
  line-height: 6.933vw;
  -webkit-margin-after: 3.467vw;
          margin-block-end: 3.467vw;
  width: 35.733vw;
}
.flat-comp-off::before {
  border-radius: 2vw;
  height: 6.933vw;
  top: 0.45vw;
}
.flat-comp-off::after {
  border-width: 1.867vw 1.867vw 0;
  -webkit-margin-start: -1.867vw;
          margin-inline-start: -1.867vw;
  top: 6.8vw;
}
.flat-comp-off span {
  font-size: 6.8vw;
  text-shadow: 0.53vw -0.53vw 0px #c10014, 0 -0.67vw 0px #c10014, -0.53vw -0.53vw 0px #c10014;
}

.flat-add {
  width: 100%;
}
.flat-add::before {
  height: 6.133vw;
  margin: auto;
  right: 0;
  left: 0;
  width: 6.133vw;
  top: -8vw;
  -webkit-transform: rotate(0deg);
          transform: rotate(0deg);
}

.flat-add-hgroup {
  align-items: baseline;
  display: flex;
  justify-content: center;
  left: 0;
  position: absolute;
  top: 2.667vw;
  width: 100%;
}

.flat-add-lead {
  font-size: 4vw;
  letter-spacing: 0.07em;
}

.flat-add-hl {
  font-size: 5.067vw;
  letter-spacing: 0.05em;
}

.flat-add-desc {
  padding-block: 12vw 1.6vw;
  text-align: center;
}
.flat-add-desc::before, .flat-add-desc::after {
  height: 1.6vw;
  width: 96.5%;
}
.flat-add-desc::before {
  top: -2px;
}
.flat-add-desc::after {
  bottom: -2px;
}
.flat-add-desc dl {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  -webkit-margin-after: 3.2vw;
          margin-block-end: 3.2vw;
  width: 73.333vw;
}
.flat-add-desc .flat-add-desc01, .flat-add-desc .flat-add-desc02, .flat-add-desc .flat-add-desc03 {
  background-size: 12vw auto;
  background-position: 50% 0;
  padding-block: 14.667vw 2.667vw;
  padding-inline: 1.333vw;
}
.flat-add-desc .flat-add-desc01, .flat-add-desc .flat-add-desc02 {
  border-bottom: 0;
  border-right: 1px solid rgb(179, 179, 179);
}
.flat-add-desc .flat-add-desc01 {
  background-image: url(../img/delab/monthly_img_01_sp.svg);
}
.flat-add-desc .flat-add-desc02 {
  background-image: url(../img/delab/monthly_img_02_sp.svg);
}
.flat-add-desc .flat-add-desc03 {
  background-image: url(../img/delab/monthly_img_03_sp.svg);
}
.flat-add-desc dt {
  font-size: 2.4vw;
  -webkit-margin-after: 0.8em;
          margin-block-end: 0.8em;
}
.flat-add-desc dd {
  font-size: 3.6vw;
}
.flat-add-desc p {
  font-size: 3.333vw;
}

.flat-msg {
  border-radius: 6.667vw;
  font-size: 4vw;
  line-height: 1.28;
  padding-block: 1.333vw;
  padding-inline: 4.8vw 2.667vw;
  width: 82.667vw;
}
.flat-msg::before {
  height: 8vw;
  left: 2.667vw;
  top: 2.667vw;
  width: 8vw;
}
.flat-msg span {
  font-size: 4.4vw;
  -webkit-margin-before: 0.8vw;
          margin-block-start: 0.8vw;
  -webkit-margin-end: 6.4vw;
          margin-inline-end: 6.4vw;
}
.flat-msg p {
  letter-spacing: 0.1em;
  text-align: left;
  width: 66.667vw;
}

.page-delab .flat-msg {
  -webkit-margin-after: 4vw;
          margin-block-end: 4vw;
}

.delab-using {
  background: linear-gradient(90deg, rgb(231, 36, 24) 0%, rgb(231, 36, 24) 23.93%, rgb(231, 36, 24) 27.86%, rgb(224, 44, 25) 28.76%, rgb(207, 66, 28) 30.16%, rgb(177, 103, 33) 31.88%, rgb(137, 153, 40) 33.86%, rgb(111, 185, 44) 35%, rgb(111, 185, 44) 65%, rgb(104, 176, 53) 65.97%, rgb(80, 144, 85) 69.76%, rgb(60, 117, 110) 73.89%, rgb(45, 97, 130) 78.4%, rgb(34, 83, 144) 83.51%, rgb(28, 75, 153) 89.7%, rgb(26, 72, 155) 100%);
  border-radius: 4vw;
  box-sizing: border-box;
  height: auto;
  -webkit-margin-after: 8vw;
          margin-block-end: 8vw;
  padding-block: 4vw 8vw;
  padding-inline: 4vw;
  position: relative;
  width: 91.25%;
}
.delab-using::before {
  background: #fff;
  border-radius: 3.733vw;
  content: "";
  display: block;
  height: calc(100% - 4px);
  left: 2px;
  position: absolute;
  top: 2px;
  width: calc(100% - 4px);
}
.delab-using * {
  position: relative;
  z-index: 1;
}

.delab-using-hl {
  font-size: 6vw;
  -webkit-margin-after: 3.2vw;
          margin-block-end: 3.2vw;
  padding: 0.6em 0;
  width: 100%;
}

.delab-using-txt {
  font-size: 3.733vw;
  -webkit-margin-after: 4vw;
          margin-block-end: 4vw;
  text-align: left;
  width: 92%;
}

.delab-using-list {
  flex-direction: column;
  -webkit-margin-after: 2.667vw;
          margin-block-end: 2.667vw;
  text-align: left;
  width: 92%;
}
.delab-using-list li {
  padding-block: 4vw;
}
.delab-using-list li:not(:last-child) {
  border-bottom: 1px dashed #666;
}
.delab-using-list dl {
  background: none;
  display: block;
  height: auto;
  width: 100%;
}
.delab-using-list dt {
  font-size: 5.333vw;
  letter-spacing: 0.06em;
  -webkit-margin-after: 1.333vw;
          margin-block-end: 1.333vw;
}
.delab-using-list dd {
  font-size: 3.733vw;
}

.delab-using-notes {
  color: #666;
  font-size: 3.2vw;
  text-align: left;
  width: 100%;
}

.delab-schedule {
  background-size: 92% auto;
  -webkit-margin-after: 5.333vw;
          margin-block-end: 5.333vw;
  padding-block: 7.333vw;
}

.delab-step-hl {
  font-size: 5.333vw;
  -webkit-margin-after: 5.333vw;
          margin-block-end: 5.333vw;
  width: 91.25%;
}

.delab-step-list .bloc {
  -webkit-margin-after: 16vw;
          margin-block-end: 16vw;
  padding-block: 2.4vw;
  padding-inline: 1.067vw;
  width: 91.25%;
}
.delab-step-list .bloc:not(:last-child)::after {
  border-width: 5.333vw 5.333vw 0;
  bottom: -10.667vw;
  left: 40vw;
}
.delab-step-list .shl {
  padding-inline: 2.667vw;
}
.delab-step-list .shl img {
  width: 6.667vw;
}
.delab-step-list .def {
  width: 74.667vw;
}
.delab-step-list .def dt {
  font-size: 4vw;
  width: 20vw;
}
.delab-step-list .def dd {
  font-size: 3.2vw;
  width: 52vw;
}
.delab-step-list .def dd ul {
  font-size: 2.267vw;
  gap: 2.667vw;
}
.delab-step-list .def dd ul li {
  -webkit-margin-end: 0;
          margin-inline-end: 0;
}
.delab-step-list .def dd ul img {
  height: 5.6vw;
  -webkit-margin-end: 0.8vw;
          margin-inline-end: 0.8vw;
}

.delab-skg-hl {
  font-size: 5.333vw;
  -webkit-margin-after: 5.333vw;
          margin-block-end: 5.333vw;
  width: 91.25%;
}

.delab-skg-list {
  -webkit-padding-start: 0;
          padding-inline-start: 0;
  width: 91.25%;
}
.delab-skg-list::before {
  height: calc(100% - 9.333vw - 46.667vw);
  left: 6vw;
  top: 9.333vw;
  width: 6.667vw;
}
.delab-skg-list li {
  -webkit-margin-after: 8vw;
          margin-block-end: 8vw;
  padding-block: 4vw 0;
  -webkit-padding-start: 21.333vw;
          padding-inline-start: 21.333vw;
}
.delab-skg-list li:not(:last-child) {
  -webkit-margin-after: 10.667vw;
          margin-block-end: 10.667vw;
}
.delab-skg-list .img {
  left: 0;
  width: 18.667vw;
}
.delab-skg-list .def {
  width: 68.667vw;
}
.delab-skg-list .def dt {
  background-size: 4.267vw auto;
  font-size: 4vw;
  -webkit-margin-after: 3.333vw;
          margin-block-end: 3.333vw;
  -webkit-padding-start: 6vw;
          padding-inline-start: 6vw;
}
.delab-skg-list .def dd {
  font-size: 3.467vw;
}

.delab-skg-txt {
  font-size: 4.667vw;
  letter-spacing: 0.04em;
  padding-inline: 0;
  text-align: center;
  width: 100%;
}
.delab-skg-txt .gradation {
  font-size: 6.4vw;
}
.delab-skg-txt .gradation::before {
  height: 2.133vw;
}/*# sourceMappingURL=style_sp.css.map */