@charset "UTF-8";
/***********************

カラー

***********************/
/***********************

サイズ

***********************/
/***********************

flex box

***********************/
/***********************

レスポンシブ

***********************/
/***********************

フォント

***********************/
/***********************
button
**********************/
.btn a {
  position: relative;
  display: inline-block;
  width: 100%;
  font-weight: 600;
  padding: 10px;
  overflow: hidden;
  background: #1d1d1d;
  transition: 0.5s;
}
.btn a::before {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  display: block;
  opacity: 1;
  top: 0;
  left: 0;
  transform: translateX(-101%);
  transition: all 0.6s cubic-bezier(0.8, 0, 0.2, 0.95);
  transform-origin: right top;
  background: linear-gradient(to right, #606060, #dbdbdb);
  z-index: 0;
}
.btn a span {
  position: relative;
  width: 100%;
  height: 100%;
  display: block;
  text-align: center;
  z-index: 1;
  font-weight: bold;
  color: #fff;
  transition: 0.5s;
}
.btn a:hover {
  opacity: 1;
}
.btn a:hover::before {
  transform: translateX(0%);
}
.btn a:hover span {
  color: #000;
}

.linkbtn {
  text-align: right;
}
.linkbtn .btntransform {
  position: relative;
  display: inline-block;
  text-decoration: none;
  outline: none;
  padding-right: min(60px, 3.125vw);
}
@media screen and (max-width: 768px) {
  .linkbtn .btntransform {
    background: linear-gradient(to right, #fff, #ccc);
    padding: 15px max(50px, 6.5104vw) 15px 15px;
    border-radius: 50px;
  }
}
.linkbtn .btntransform::before {
  content: "";
  position: absolute;
  left: -10px;
  top: 50%;
  transform: translateY(-50%);
  width: min(70px, 3.645vw);
  height: min(70px, 3.645vw);
  transition: all 0.6s cubic-bezier(0.8, 0, 0.2, 0.95);
  transform-origin: right top;
  background: linear-gradient(to right, #fff, #ccc);
  border-radius: 50px;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .linkbtn .btntransform::before {
    display: none;
  }
}
.linkbtn .btntransform::after {
  position: absolute;
  content: "";
  width: min(40px, 2.083vw);
  height: 10px;
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
  transform: skew(45deg) translateY(-50%);
  top: 38%;
  right: 0;
  z-index: 2;
}
@media screen and (max-width: 768px) {
  .linkbtn .btntransform::after {
    width: max(30px, 3.906vw);
    right: 10px;
    top: 43%;
  }
}
.linkbtn .btntransform:hover {
  opacity: 1;
}
.linkbtn .btntransform:hover::before {
  width: min(250px, 13.02vw);
}
.linkbtn .btntransform span {
  position: relative;
  z-index: 2;
  color: #000;
  font-size: clamp(15px, 1.125rem, 18px);
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  .linkbtn .btntransform span {
    font-size: max(14px, 0.9333rem);
  }
}

/***********************
title
**********************/
.title {
  text-align: center;
}
.title span {
  font-size: min(24px, 1.5rem);
  font-weight: bold;
  margin-bottom: min(35px, 1.822vw);
  padding-left: min(30px, 1.562vw);
  position: relative;
}
@media (769px <= width < 1001px) {
  .title span {
    font-size: 18px;
    padding-left: 25px;
  }
}
@media screen and (max-width: 768px) {
  .title span {
    font-size: max(15px, 0.9375rem);
    padding-left: 15px;
  }
}
.title span::before {
  position: absolute;
  content: "";
  width: min(25px, 1.302vw);
  height: min(25px, 1.302vw);
  background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='utf-8'%3F%3E%3C!-- Generator: Adobe Illustrator 27.7.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' id='レイヤー_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 595.3 841.9' style='enable-background:new 0 0 595.3 841.9;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0%7Bfill:%232C8AB9;%7D%0A%3C/style%3E%3Cg%3E%3Cpath class='st0' d='M400.9,63l93.6,51.3L337.5,325.6v3l252-28.7v104.1l-250.5-28.7v4.5L496,583.6l-96.6,55.8L295.3,405.6h-3 L180.6,641l-86-55.8L250,378.4v-4.5l-246,30.2V299.9l243,27.2l1.5-3L94.6,118.9l93.6-54.3l107.1,229.4h3L400.9,63z'/%3E%3C/g%3E%3C/svg%3E%0A");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  left: 0;
  top: 55%;
  transform: translateY(-50%);
}
@media (769px <= width < 1001px) {
  .title span::before {
    width: 20px;
    height: 20px;
  }
}
@media screen and (max-width: 768px) {
  .title span::before {
    width: 15px;
    height: 15px;
  }
}
.title h2 {
  font-size: min(32px, 4.4375rem);
  font-weight: bold;
  line-height: 1.5;
}
@media (769px <= width < 1001px) {
  .title h2 {
    font-size: 40px;
  }
}
@media screen and (max-width: 768px) {
  .title h2 {
    font-size: max(28px, 2rem);
    line-height: 1.3;
  }
}
.title.white span,
.title.white h2 {
  color: #fff;
}

.subtitle {
  text-align: center;
  font-size: clamp(28px, 2rem, 32px);
  font-weight: bold;
  padding-top: min(20px, 1.0416vw);
  margin-bottom: min(40px, 2.083vw);
}
@media (769px <= width < 1001px) {
  .subtitle {
    font-size: 24px;
  }
}
@media screen and (max-width: 768px) {
  .subtitle {
    padding-top: 0;
    font-size: max(18px, 1.125rem);
    margin-bottom: max(25px, 3.255vw);
  }
}
@media screen and (max-width: 450px) {
  .subtitle {
    margin-bottom: max(25px, 5.555vw);
  }
}

/***********************
animation
**********************/
.bgway {
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  position: relative;
  overflow: hidden;
  opacity: 0;
}
.bgway::before {
  position: absolute;
  content: "";
  display: block;
  top: 0;
  left: -5%;
  background: linear-gradient(to right, #dbdbdb, #efefef);
  pointer-events: none;
  z-index: 10;
  width: 100%;
  height: 100%;
  transition: all 1s 0s ease;
}
.bgway.active {
  opacity: 1;
}
.bgway.active::before {
  transform: translateX(110%);
}

.fade-in-lr {
  opacity: 0;
  visibility: hidden;
  transition: 1s;
  transform: translateX(50%);
}
.fade-in-lr.active {
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
}

.fade-in-rl {
  opacity: 0;
  visibility: hidden;
  transition: 1s;
  transform: translateX(-50%);
}
.fade-in-rl.active {
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
}

/***********************
header
**********************/
#Header {
  position: fixed;
  width: 100%;
  top: 0;
  left: 0;
  display: grid;
  grid-template-columns: 1fr auto;
  justify-content: space-between;
  align-items: center;
  padding: 15px min(50px, 2.604vw);
  background: #fff;
  z-index: 3;
  box-shadow: 2px 2px 12px rgba(0, 0, 0, 0.1);
}
@media screen and (max-width: 768px) {
  #Header {
    display: flex;
    padding: 0 0 0 15px;
  }
}
#Header figure {
  max-width: 150px;
  min-width: 80px;
  z-index: 4;
}
@media screen and (max-width: 450px) {
  #Header figure {
    min-width: 100px;
  }
}
#Header #hdmenu {
  width: 100%;
  max-width: 900px;
}
#Header #hdmenu #GMENU {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  align-items: center;
}
@media screen and (max-width: 768px) {
  #Header #hdmenu #GMENU {
    position: fixed;
    z-index: 2;
    top: 0;
    left: 0;
    color: #fff;
    background: rgba(0, 0, 0, 0.7);
    text-align: center;
    width: 100%;
    height: 100%;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.6s ease, visibility 0.6s ease;
  }
}
#Header #hdmenu #GMENU li {
  width: 100%;
  height: 100%;
  text-align: center;
  display: grid;
  place-items: center;
}
#Header #hdmenu #GMENU li .rotateback {
  position: relative;
  display: inline-block;
  text-align: center;
}
#Header #hdmenu #GMENU li .rotateback span {
  display: inline-block;
  color: #222;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  outline: none;
  text-align: center;
}
@media (769px <= width < 1001px) {
  #Header #hdmenu #GMENU li .rotateback span {
    font-size: 12px;
  }
}
#Header #hdmenu #GMENU li .rotateback span:nth-child(1) {
  transform: rotate3d(1, 0, 0, 0deg);
  transform-origin: 0 50% 18px;
  transition: transform 0.3s ease;
}
#Header #hdmenu #GMENU li .rotateback span:nth-child(2) {
  position: absolute;
  top: 0;
  left: 50%;
  transform: rotate3d(1, 0, 0, 90deg) translateX(-50%);
  transform-origin: 0 50% 18px;
  transition: transform 0.3s ease;
}
#Header #hdmenu #GMENU li .rotateback:hover {
  opacity: 1;
}
#Header #hdmenu #GMENU li .rotateback:hover span:nth-child(1) {
  transform: rotate3d(1, 0, 0, -90deg);
}
#Header #hdmenu #GMENU li .rotateback:hover span:nth-child(2) {
  transform: rotate3d(1, 0, 0, 0deg) translateX(-50%);
}
#Header #hdmenu #GMENU li.contact a {
  border-radius: 5px;
}
#Header #hdmenu #GMENU li.contact a span {
  font-size: 14px;
}
@media (769px <= width < 1001px) {
  #Header #hdmenu #GMENU li.contact a span {
    font-size: 12px;
  }
}
@media screen and (max-width: 768px) {
  #Header #hdmenu #GMENU.open {
    opacity: 3;
    visibility: visible;
    background: #fff;
    display: block;
    padding: max(120px, 15.625vw) 15px;
  }
  #Header #hdmenu #GMENU.open li {
    width: -moz-fit-content;
    width: fit-content;
    height: auto;
    padding-left: 25px;
    position: relative;
  }
  #Header #hdmenu #GMENU.open li::before {
    position: absolute;
    content: "";
    width: 12px;
    height: 12px;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    background: #000;
  }
  #Header #hdmenu #GMENU.open li a span {
    font-size: max(15px, 0.9375rem);
  }
  #Header #hdmenu #GMENU.open li a span:nth-child(2) {
    display: none;
  }
  #Header #hdmenu #GMENU.open li:hover a span:nth-child(1) {
    transform: none;
  }
  #Header #hdmenu #GMENU.open li.contact {
    display: none;
  }
  #Header #hdmenu #GMENU.open li + li {
    margin-top: 25px;
  }
}
#Header #spHdMenu {
  display: none;
}
@media screen and (max-width: 768px) {
  #Header #spHdMenu {
    display: flex;
    justify-content: flex-end;
    align-items: center;
  }
}
#Header #spHdMenu-contact {
  padding: 8px 10px;
  background: #0c0e11;
  max-width: 80px;
}
@media screen and (max-width: 450px) {
  #Header #spHdMenu-contact {
    max-width: 65px;
    padding: 3px 5px;
  }
}
#Header #spHdMenu-contact a {
  display: flex;
  justify-content: center;
}
@media screen and (max-width: 450px) {
  #Header #spHdMenu-contact a figure {
    min-width: 65px;
  }
}
#Header #spHdMenu-contact a figure img {
  max-width: 28px;
  margin: 0 auto 3px;
}
#Header #spHdMenu-contact a figure figcaption {
  text-align: center;
  font-size: 10px;
  font-weight: bold;
  color: #fff;
  letter-spacing: -0.1px;
}
#Header #spHdMenu-toggle {
  padding: 8px 10px;
  width: 70px;
  height: 50px;
  cursor: pointer;
  text-align: center;
  z-index: 4;
  position: relative;
}
@media screen and (max-width: 450px) {
  #Header #spHdMenu-toggle {
    width: 50px;
  }
}
#Header #spHdMenu-toggle span {
  display: block;
  position: absolute;
  width: 20px;
  height: 2px;
  background: #0c0e11;
  left: 50%;
  transform: translateX(-50%);
  transition: 0.3s ease-in-out;
}
#Header #spHdMenu-toggle span:nth-child(1) {
  top: 15px;
}
#Header #spHdMenu-toggle span:nth-child(2) {
  top: 24px;
}
#Header #spHdMenu-toggle span:nth-child(3) {
  bottom: 15px;
}
#Header #spHdMenu-toggle.open span:nth-child(1) {
  top: 25px;
  transform: translateX(-50%) rotate(-45deg);
}
#Header #spHdMenu-toggle.open span:nth-child(2) {
  display: none;
  transform: rotate(-45deg);
}
#Header #spHdMenu-toggle.open span:nth-child(3) {
  bottom: 23px;
  transform: translateX(-50%) rotate(45deg);
}

/***********************
footer
**********************/
#Footer {
  background-color: #000;
  padding-top: min(120px, 6.25vw);
  padding-bottom: min(80px, 4.166vw);
}
@media screen and (max-width: 768px) {
  #Footer {
    padding-top: max(60px, 7.812vw);
    padding-bottom: max(60px, 7.812vw);
  }
}
#Footer-nav {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-gap: min(25px, 1.302vw) 0;
}
@media screen and (max-width: 768px) {
  #Footer-nav {
    grid-template-columns: 1fr 1fr;
    grid-gap: 25px;
  }
}
#Footer-nav li {
  border-left: solid 1px #fff;
}
@media screen and (max-width: 768px) {
  #Footer-nav li {
    border-left: none;
    border-bottom: solid 1px #fff;
  }
}
#Footer-nav li:nth-of-type(4), #Footer-nav li:last-of-type {
  border-right: solid 1px #fff;
}
@media screen and (max-width: 768px) {
  #Footer-nav li:nth-of-type(4), #Footer-nav li:last-of-type {
    border-right: none;
  }
}
#Footer-nav li a {
  width: 100%;
  display: inline-block;
  text-align: center;
  color: #fff;
  padding: min(30px, 1.562vw) 0;
  font-weight: bold;
  font-size: min(18px, 1.438rem)
}
@media screen and (max-width: 768px) {
  #Footer-nav li a {
    font-size: max(13px, 0.9rem);
    padding: 0 0 10px 0;
  }
}
#Footer-bottom {
  padding-top: min(120px, 6.25vw);
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}
@media screen and (max-width: 768px) {
  #Footer-bottom {
    padding-top: max(80px, 10.416vw);
    flex-direction: column;
    align-items: center;
    justify-content: center;
  }
}
@media screen and (max-width: 450px) {
  #Footer-bottom {
    padding-top: max(80px, 17.77vw);
  }
}
#Footer-bottom a {
  max-width: 170px;
  min-width: 80px;
}
@media screen and (max-width: 768px) {
  #Footer-bottom #copy {
    padding-top: max(50px, 6.5104vw);
  }
}
@media screen and (max-width: 450px) {
  #Footer-bottom #copy {
    padding-top: max(50px, 11.111vw);
  }
}
#Footer-bottom #copy small {
  color: #fff;
  font-size: min(12px, 1.5rem);
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  #Footer-bottom #copy small {
    font-size: max(12px, 0.8rem);
  }
}

/***********************
others
**********************/
@media screen and (max-width: 768px) {
  .breadcrumb {
    max-width: 100%;
  }
}
.breadcrumb ul {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
}
.breadcrumb ul li {
  font-size: clamp(13px, 0.875rem, 14px);
}
.breadcrumb ul li + li {
  padding-left: min(10px, .5208vw);
}
@media screen and (max-width: 768px) {
  .breadcrumb ul li + li {
    padding-left: 10px;
  }
}

#pageTop {
  position: fixed;
  right: 3%;
  bottom: 10%;
  width: 40px;
  height: 40px;
  background: linear-gradient(to right, #fff, #ccc);
}
#pageTop::before {
  position: absolute;
  content: "";
  width: 1.3em;
  height: 1.5em;
  background: url("../images/common/pagetop.png") no-repeat center;
  background-size: contain;
  transform: translateX(-50%) translateY(-50%);
  top: 50%;
  left: 50%;
}
#pageTop:hover {
  cursor: pointer;
}

/********************************
@import
********************************/
/***********************

カラー

***********************/
/***********************

サイズ

***********************/
/***********************

flex box

***********************/
/***********************

レスポンシブ

***********************/
/***********************

フォント

***********************/
#MvWrap {
  margin-top: min(82px, 4.166vw);
  position: relative;
}
@media (769px <= width < 1001px) {
  #MvWrap {
    margin-top: 68px;
  }
}
@media screen and (max-width: 768px) {
  #MvWrap {
    margin-top: 65px;
  }
}
@media screen and (max-width: 450px) {
  #MvWrap {
    margin-top: 50px;
  }
}
#MvWrap .maintext {
  position: absolute;
  content: "";
  left: min(50px, 2.604vw);
  top: 50%;
  transform: translateY(-50%);
}
@media screen and (max-width: 450px) {
  #MvWrap .maintext {
    left: 10px;
    top: 62%;
  }
}
#MvWrap .maintext h1 {
  width: -moz-fit-content;
  width: fit-content;
  font-size: min(40px, 2.5rem);
  font-weight: bold;
  text-shadow: 2px 2px 2px #FFF, -2px 2px 2px #FFF, 2px -2px 2px #FFF, -2px -2px 2px #FFF;
}
@media (769px <= width < 1001px) {
  #MvWrap .maintext h1 {
    font-size: 22px;
  }
}
@media screen and (max-width: 768px) {
  #MvWrap .maintext h1 {
    font-size: max(20px, 1.25rem);
    letter-spacing: 1px;
  }
}
@media screen and (max-width: 450px) {
  #MvWrap .maintext h1 {
    font-size: max(18px, 1.2rem);
  }
}
#MvWrap .maintext h1 span {
  color: #0372b2;
  font-weight: bold;
}
#MvWrap .maintext h1 + h1 {
  margin-top: min(30px, 1.562vw);
}
@media screen and (max-width: 768px) {
  #MvWrap .maintext h1 + h1 {
    margin-top: 15px;
  }
}
#MvWrap .maintext .btn {
  width: 60%;
  max-width: 288px;
  margin-top: min(40px, 2.083vw);
}
@media screen and (max-width: 768px) {
  #MvWrap .maintext .btn {
    width: 85%;
    max-width: 400px;
  }
}
@media screen and (max-width: 450px) {
  #MvWrap .maintext .btn {
    max-width: 204px;
    margin-top: 15px;
  }
}
#MvWrap .maintext .btn a {
  border-radius: 50px;
}
#MvWrap .maintext .btn a::after {
  position: absolute;
  content: "";
  width: min(40px, 2.083vw);
  height: 10px;
  border-bottom: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: skew(45deg) translateY(-50%);
  top: 46%;
  right: 15px;
  transition: 0.5s;
}
@media screen and (max-width: 768px) {
  #MvWrap .maintext .btn a::after {
    width: max(40px, 5.208vw);
  }
}
@media screen and (max-width: 450px) {
  #MvWrap .maintext .btn a::after {
    width: 20px;
    height: 5px;
  }
}
#MvWrap .maintext .btn a span {
  text-align: center;
}
@media (769px <= width < 1001px) {
  #MvWrap .maintext .btn a span {
    font-size: 16px;
  }
}
@media screen and (max-width: 768px) {
  #MvWrap .maintext .btn a span {
    font-size: max(18px, 1.125rem);
  }
}
@media screen and (max-width: 450px) {
  #MvWrap .maintext .btn a span {
    font-size: max(16px, 1.0666rem);
    text-align: left;
    padding-left: 15px;
  }
}
#MvWrap .maintext .btn a:hover::after {
  border-bottom-color: #000;
  border-right-color: #000;
}

#sec01 {
  position: relative;
  padding-bottom: min(40px, 2.083vw);
}
#sec01::before {
  content: "";
  position: absolute;
  top: 100%;
  right: 50%;
  transform: translatex(50%);
  box-sizing: border-box;
  border-right: calc(50vw - 10px) solid transparent;
  border-left: calc(50vw - 10px) solid transparent;
  border-top: 100px solid #fff;
}
@media screen and (max-width: 768px) {
  #sec01::before {
    border-right: calc(120vw - 10px) solid transparent;
    border-left: calc(120vw - 10px) solid transparent;
    top: 90%;
  }
}
#sec01 h2 {
  font-size: min(34px, 2.125rem);
  font-weight: bold;
  text-align: center;
}
@media (769px <= width < 1001px) {
  #sec01 h2 {
    font-size: 20px;
  }
}
@media screen and (max-width: 768px) {
  #sec01 h2 {
    font-size: max(16px, 1rem);
  }
}
@media screen and (max-width: 450px) {
  #sec01 h2 {
    font-size: max(16px, 1.06661rem);
  }
}
#sec01 h2 span {
  font-size: min(40px, 2.5rem);
  font-weight: bold;
  position: relative;
}
@media (769px <= width < 1001px) {
  #sec01 h2 span {
    font-size: 22px;
  }
}
@media screen and (max-width: 768px) {
  #sec01 h2 span {
    font-size: max(19px, 1.1875rem);
  }
}
@media screen and (max-width: 450px) {
  #sec01 h2 span {
    font-size: max(19px, 1.2666rem);
  }
}
#sec01 h2 span::before {
  position: absolute;
  content: "";
  width: min(14px, 0.729vw);
  height: min(14px, 0.729vw);
  border-radius: 50%;
  background: #163d88;
  left: 50%;
  top: min(-15px, 0.781vw);
  transform: translateX(-50%);
}
@media screen and (max-width: 768px) {
  #sec01 h2 span::before {
    top: -0.45em;
  }
}
@media screen and (max-width: 450px) {
  #sec01 h2 span::before {
    width: 7px;
    height: 7px;
  }
}
#sec01 ul {
  display: flex;
  justify-content: center;
  grid-gap: 0 min(40px, 2.083vw);
  place-items: center;
}
@media (width <= 1001px) {
  #sec01 ul {
    flex-wrap: wrap;
  }
}
@media screen and (max-width: 768px) {
  #sec01 ul {
    flex-direction: column;
    width: 85%;
    max-width: 400px;
    margin: 0 auto;
  }
}
@media screen and (max-width: 450px) {
  #sec01 ul {
    width: 100%;
    max-width: 100%;
  }
}
#sec01 ul li {
  width: min(350px, 18.23vw);
  height: min(350px, 18.23vw);
  border-radius: 50%;
  overflow: hidden;
  font-size: clamp(14px, 1.5rem, 24px);
  font-weight: bold;
  text-align: center;
  letter-spacing: -0.5px;
  border: solid 6px #040404;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  box-shadow: 3px 3px 6px #c8c9cc, -3px -3px 6px #f2f6f7;
}
@media (769px <= width < 1001px) {
  #sec01 ul li {
    width: 26vw;
    height: 26vw;
    font-size: 16px;
  }
}
@media screen and (max-width: 768px) {
  #sec01 ul li {
    justify-content: flex-start;
    width: 100%;
    height: auto;
    border-radius: 15px;
    border-width: 2px;
    font-size: max(15px, 0.9375rem);
    text-align: left;
    padding: 15px 15px 15px max(120px, 15.625vw);
  }
}
@media screen and (max-width: 450px) {
  #sec01 ul li {
    padding-left: 6em;
  }
}
#sec01 ul li::before {
  position: absolute;
  content: "";
  width: 1em;
  height: 1em;
  background-repeat: no-repeat;
  background-position: center;
  z-index: -1;
}
@media screen and (max-width: 768px) {
  #sec01 ul li::before {
    left: 15px;
    z-index: 1;
  }
}
#sec01 ul li:first-child::before {
  background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='utf-8'%3F%3E%3C!-- Generator: Adobe Illustrator 27.7.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' id='_x32_' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 512 512' style='enable-background:new 0 0 512 512;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0%7Bfill:%23d2d2d2;%7D%0A%3C/style%3E%3Cg%3E%3Cg%3E%3Crect x='142.5' y='456.6' class='st0' width='227' height='24.5'/%3E%3Cpath class='st0' d='M498.7,30.9H13.4C6,30.9,0,37,0,44.3v315.9c0,7.4,6,13.4,13.4,13.4h485.3c7.3,0,13.3-6,13.3-13.4V44.3 C512,37,506,30.9,498.7,30.9z M256,42.5c2.8,0,5,2.2,5,5c0,2.8-2.2,5-5,5s-5-2.2-5-5C251,44.8,253.2,42.5,256,42.5z M480.2,334.9 H31.8V69.6h448.4L480.2,334.9L480.2,334.9z'/%3E%3Cpolygon class='st0' points='329.4,385.6 182.6,385.6 182.6,429 142.5,445.7 369.5,445.7 329.4,429 '/%3E%3C/g%3E%3Cg%3E%3Cpath class='st0' d='M322.5,140.9c-5.1-9.7-13.1-17.9-23.1-23.7c-9.9-5.9-21.9-9.4-34.9-9.4c-16,0-29.4,4.1-39.4,9.9 c-10.1,5.8-14.5,12.5-14.5,12.5c-1.7,1.5-2.7,3.6-2.6,5.9c0,2.2,1.1,4.4,2.8,5.8l14,11.2c2.8,2.3,6.9,2.2,9.7-0.2 c0,0,1.7-3.1,7.1-6.2c5.4-3.1,12.4-5.5,22.9-5.5c9.1,0,17.1,3.4,22.6,8.1c2.7,2.3,4.7,4.9,6,7.3c1.2,2.4,1.7,4.5,1.7,6.1 c0,5.4-1.1,8.9-2.6,11.8c-1.1,2.2-2.6,4.2-4.6,6.1c-2.9,2.9-6.8,5.5-11.1,8c-4.4,2.5-9.1,4.6-13.9,7.3c-5.4,3-11.2,7.3-15.4,13.8 c-2.1,3.2-3.8,6.9-4.8,10.8c-1.1,3.9-1.5,7.9-1.5,12.1c0,4.4,0,8.1,0,8.1c0,4.2,3.4,7.6,7.6,7.6h18.2c4.2,0,7.6-3.4,7.6-7.6 c0,0,0-3.6,0-8.1c0-1.6,0.2-2.6,0.4-3.3c0.3-1,0.5-1.2,1-1.8c0.5-0.6,1.5-1.4,3.4-2.5c2.7-1.5,7.1-3.6,12.1-6.3 c7.4-4.1,16.5-9.6,24.1-18.7c3.8-4.5,7.1-10,9.5-16.3c2.3-6.3,3.6-13.4,3.6-21C328,154.7,325.9,147.4,322.5,140.9z'/%3E%3Cpath class='st0' d='M257.4,265.9c-11.3,0-20.5,9.2-20.5,20.5c0,11.3,9.2,20.5,20.5,20.5c11.3,0,20.5-9.2,20.5-20.5 C277.9,275.1,268.8,265.9,257.4,265.9z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A");
  background-size: contain;
  width: min(215px, 11.19vw);
  height: min(191px, 9.947vw);
}
@media screen and (max-width: 768px) {
  #sec01 ul li:first-child::before {
    width: max(60px, 7.8125vw);
    height: max(50px, 6.5104vw);
  }
}
@media screen and (max-width: 450px) {
  #sec01 ul li:first-child::before {
    width: 60px;
    height: 50px;
  }
}
#sec01 ul li:nth-child(2)::before {
  background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='utf-8'%3F%3E%3C!-- Generator: Adobe Illustrator 27.7.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' id='_x32_' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 512 512' style='enable-background:new 0 0 512 512;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0%7Bfill:%23d2d2d2;%7D%0A%3C/style%3E%3Cg%3E%3Cpath class='st0' d='M498.4,301.5h-52.8c-7.5,0-13.6,6.1-13.6,13.6v119.3c0,7.5,6.1,13.6,13.6,13.6h52.8c7.5,0,13.6-6.1,13.6-13.6 V315.1C512,307.6,505.9,301.5,498.4,301.5z'/%3E%3Cpath class='st0' d='M325.6,448h52.8c7.5,0,13.6-6.1,13.6-13.6V235.1c0-7.5-6.1-13.6-13.6-13.6h-52.8c-7.5,0-13.6,6.1-13.6,13.6 v199.3C312,441.9,318.1,448,325.6,448z'/%3E%3Cpath class='st0' d='M205.6,448h52.8c7.5,0,13.6-6.1,13.6-13.6V139.1c0-7.5-6.1-13.6-13.6-13.6h-52.8c-7.5,0-13.6,6.1-13.6,13.6 v295.3C192,441.9,198.1,448,205.6,448z'/%3E%3Cpath class='st0' d='M85.6,448h52.8c7.5,0,13.6-6.1,13.6-13.6V43.1c0-7.5-6.1-13.6-13.6-13.6H85.6c-7.5,0-13.6,6.1-13.6,13.6v391.3 C72,441.9,78.1,448,85.6,448z'/%3E%3Cpath class='st0' d='M498.4,482H45.6c-7.5,0-13.6-6.1-13.6-13.6V13.6C32,6.1,25.9,0,18.4,0h-4.8C6.1,0,0,6.1,0,13.6v484.8 c0,7.5,6.1,13.6,13.6,13.6h484.8c7.5,0,13.6-6.1,13.6-13.6v-2.8C512,488.1,505.9,482,498.4,482z'/%3E%3C/g%3E%3C/svg%3E%0A");
  background-size: contain;
  width: min(184px, 9.583vw);
  height: min(184px, 9.583vw);
}
@media screen and (max-width: 768px) {
  #sec01 ul li:nth-child(2)::before {
    width: max(60px, 7.8125vw);
    height: max(60px, 7.8125vw);
  }
}
@media screen and (max-width: 450px) {
  #sec01 ul li:nth-child(2)::before {
    width: 60px;
    height: 60px;
  }
}
#sec01 ul li:nth-child(3)::before {
  background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='utf-8'%3F%3E%3C!-- Generator: Adobe Illustrator 27.7.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' id='_x32_' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 512 512' style='enable-background:new 0 0 512 512;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0%7Bfill:%23d2d2d2;%7D%0A%3C/style%3E%3Cg%3E%3Cpath class='st0' d='M396.1,85.3c-13.2-25-33.8-45.9-59.3-61C311.3,9.2,280.4,0,247,0c-41.2-0.1-75.5,10.6-101.4,25.5 c-26,14.8-37.2,32.1-37.2,32.1c-4.4,3.8-6.8,9.3-6.7,15.1c0.1,5.8,2.8,11.2,7.3,14.8l35.9,28.8c7.3,5.9,17.8,5.6,24.9-0.5 c0,0,4.4-8,18.2-15.9C202,92,220,85.7,247,85.6c23.5-0.1,44,8.7,58,20.7c7,5.9,12.1,12.6,15.3,18.7c3.2,6.1,4.4,11.5,4.4,15.6 c-0.1,13.8-2.7,22.8-6.6,30.4c-2.9,5.7-6.8,10.8-11.7,15.7c-7.4,7.4-17.4,14.2-28.6,20.5c-11.2,6.3-23.4,11.9-35.6,18.7 c-14,7.7-28.8,18.9-39.7,35.5c-5.4,8.2-9.7,17.7-12.4,27.6c-2.7,10-4,20.4-4,31.1c0,11.4,0,20.7,0,20.7c0,10.7,8.7,19.4,19.4,19.4 h46.8c10.7,0,19.4-8.7,19.4-19.4c0,0,0-9.3,0-20.7c0-4.1,0.5-6.8,0.9-8.4c0.8-2.5,1.2-3.1,2.5-4.7c1.3-1.5,3.9-3.7,8.7-6.3 c7-3.9,18.3-9.3,31.1-16.2c19.1-10.5,42.4-24.6,62-48.1c9.8-11.7,18.4-25.8,24.3-42c6-16.2,9.2-34.4,9.2-54 C410.2,120.8,404.9,102,396.1,85.3z'/%3E%3Cpath class='st0' d='M228.8,406.4c-29.2,0-52.8,23.6-52.8,52.8c0,29.1,23.6,52.8,52.8,52.8c29.1,0,52.8-23.6,52.8-52.8 C281.6,430.1,257.9,406.4,228.8,406.4z'/%3E%3C/g%3E%3C/svg%3E%0A");
  background-size: contain;
  width: min(184px, 9.583vw);
  height: min(220px, 11.458vw);
}
@media screen and (max-width: 768px) {
  #sec01 ul li:nth-child(3)::before {
    width: max(60px, 7.8125vw);
    height: max(60px, 7.8125vw);
  }
}
@media screen and (max-width: 450px) {
  #sec01 ul li:nth-child(3)::before {
    width: 60px;
    height: 60px;
  }
}
@media screen and (max-width: 768px) {
  #sec01 ul li + li {
    margin-top: 15px;
  }
}

#sec02 {
  padding-top: min(264px, 13.75vw);
  background: #e0e0e0;
}
@media (769px <= width < 1001px) {
  #sec02 {
    padding-top: 150px;
  }
}
@media screen and (max-width: 768px) {
  #sec02 {
    padding-top: 120px;
  }
}
@media screen and (max-width: 450px) {
  #sec02 {
    padding-top: 100px;
  }
}
@media (769px <= width < 1001px) {
  #sec02 .inner02 {
    padding-left: 15px;
    padding-right: 15px;
  }
}
@media screen and (max-width: 768px) {
  #sec02 .inner02 {
    max-width: 100%;
  }
}
#sec02 h2 {
  font-size: min(30px, 1.875rem);
  text-align: center;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  #sec02 h2 {
    font-size: max(15px, 1rem);
  }
}
#sec02 h2:not(.popup) {
  font-size: min(40px, 2.5rem);
}
@media (769px <= width < 1001px) {
  #sec02 h2:not(.popup) {
    font-size: 22px;
  }
}
@media screen and (max-width: 768px) {
  #sec02 h2:not(.popup) {
    font-size: max(20px, 1.333rem);
  }
}
#sec02 h2.popup {
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 10px;
  position: relative;
}
@media (769px <= width < 1001px) {
  #sec02 h2.popup {
    font-size: 18px;
  }
}
#sec02 h2.popup::before {
  position: absolute;
  left: min(-30px, -1.562vw);
  top: 0;
  content: "";
  width: 1px;
  height: 80%;
  background: #000;
  border-radius: 3px;
  transform: rotate(-40deg);
}
@media screen and (max-width: 450px) {
  #sec02 h2.popup::before {
    left: -1.5em;
  }
}
#sec02 h2.popup::after {
  position: absolute;
  content: "";
  right: min(-30px, -1.562vw);
  top: 0;
  width: 1px;
  height: 80%;
  background: #000;
  border-radius: 3px;
  transform: rotate(40deg);
}
@media screen and (max-width: 450px) {
  #sec02 h2.popup::after {
    right: -1.5em;
  }
}
#sec02 h2.popup img {
  max-width: min(210px, 10.93vw);
  margin-right: 10px;
}
@media (769px <= width < 1001px) {
  #sec02 h2.popup img {
    max-width: 120px;
  }
}
@media screen and (max-width: 768px) {
  #sec02 h2.popup img {
    max-width: max(100px, 13.02vw);
    margin-right: 5px;
  }
}
#sec02 h2 span {
  color: #0372b2;
  font-weight: bold;
}
#sec02 p {
  text-align: center;
  padding-top: min(20px, 1.041vw);
}
@media (769px <= width < 1001px) {
  #sec02 p {
    font-size: max(14px, 0.933rem);
  }
}
@media screen and (max-width: 768px) {
  #sec02 p {
    padding-top: 0;
  }
}
#sec02 ul {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: min(40px, 2.083vw) min(100px, 5.208vw);
  margin-top: min(40px, 2.083vw);
}
@media screen and (max-width: 768px) {
  #sec02 ul {
    grid-template-columns: 1fr;
    margin-top: min(35px, 4.557vw);
    grid-gap: 20px 0;
  }
}
@media screen and (max-width: 450px) {
  #sec02 ul {
    margin-top: max(30px, 6.666vw);
  }
}
#sec02 ul li {
  border-radius: 25px 0 25px 0;
  overflow: hidden;
  box-shadow: 3px 3px 6px #c8c9cc, -3px -3px 6px #f2f6f7;
}
#sec02 ul li .qa-q {
  background: #044c75;
  color: #fff;
  padding: min(25px,1.302vw) min(25px,1.302vw) min(25px,1.302vw) min(100px, 5.208vw);
  font-size: clamp(16px, 1.2rem, 22px);
  font-weight: bold;
  position: relative;
}
@media (769px <= width < 1001px) {
  #sec02 ul li .qa-q {
    font-size: max(15px, 0.9375rem);
  }
}
@media screen and (max-width: 768px) {
  #sec02 ul li .qa-q {
    padding: 15px 15px 15px max(60px, 7.812vw);
    line-height: 1.6;
  }
}
@media screen and (max-width: 450px) {
  #sec02 ul li .qa-q {
    padding-left: 2.8em;
  }
}
#sec02 ul li .qa-q::before {
  position: absolute;
  content: "";
  width: min(50px, 2.604vw);
  height: min(50px, 2.604vw);
  left: min(25px, 1.302vw);
  top: min(20px, 1.0416vw);
  background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='utf-8'%3F%3E%3C!-- Generator: Adobe Illustrator 27.7.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' id='contents' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 800 800' style='enable-background:new 0 0 800 800;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0%7Bfill:%23FFFFFF;%7D%0A%3C/style%3E%3Cpath class='st0' d='M191.7,786.2c55.2,29.2,117.8,30,174.3,7.4c14.5,2.6,29.1,4.1,43.8,4.3c4.2,5.1,10.8,8.1,19,5.9 c12.2-3.3,24.3-7.1,36.3-11.4c5.2-1.2,10.5-2.5,15.6-4c67.9-20.3,122.5-69.1,163-125.8c21.3-29.8,39.1-62.5,53.4-96.6 c11.1-12.8,20.8-26.7,29-41.5c17.4-10.3,32.7-23.7,43.8-41.3c16.3-25.7,20.9-57.2,17-87c-4-30.3-16.1-59.4-34.6-83.7 c-0.8-1-1.6-1.9-2.4-2.9c-1.6-5.4-3.3-10.7-5.2-16c14.7-10.6,27.8-23.2,37.1-38.8c37.2-62.3-6.9-130.6-60.4-165.3 c-48.8-31.7-111.8-43.8-169.2-36.8c-46.4,5.7-91.9,22.7-128.1,52.3c-4.6,0.8-9.2,1.6-13.7,2.5c-3.8,0.3-7.7,0.7-11.5,1.1 c-0.4-11.7-1.5-23.5-5.3-34.5C371.2,7.7,278.6-2.3,222.3,20.4c-61.6,24.9-101.9,87.7-97.4,154.5c1,15.1,4,29.2,8.5,42.2 c-10,5.1-19.7,10.9-28.8,17.4C44.8,277.6,10.7,343.4,5.2,416.5c-5.8,76.2,18.5,153.1,52.9,220.2C88.5,696.1,131.7,754.4,191.7,786.2 z M135.3,598c1.6,3.8,3.2,7.6,5,11.4c21.9,48.4,54.6,92,96.2,124.9c-10.9-0.6-21.5-2.8-31.3-7.5c-23.2-11.1-40.1-29.7-52.2-52.5 C140,650.1,134.9,624.2,135.3,598z M455.3,754.5c-9.5,2.1-19.3,3.5-29.2,4.2c20.2-15.8,37.7-34.6,52.5-55.4 c9.9-5.9,19.5-12.3,28.4-19.3c6.3,11.9,12.7,23.7,19.4,35.3C503.9,733.5,480.1,745.2,455.3,754.5z M313.7,592.8 c0.3-0.6,0.6-1.2,0.9-1.8c2.9,2.2,5.7,4.5,8.7,6.6c15.5,11.3,32.3,20.9,49.8,28.8c-7.3,10-15,20.2-24.9,27.5 c-4.7,3.4-9.8,6.3-15.6,6.8c-4.5,0.4-7.3-0.5-11.5-3.1c-7.7-4.7-12.8-14.8-14.8-25.5C304.2,620.6,308.4,604.9,313.7,592.8z M333.1,555.8c0.2-0.3,0.3-0.6,0.5-0.9c18.2,5.1,36.4,9.1,53.6,12.5c8.5,1.7,17,3.2,25.6,4.4c-5.4,7.5-10.9,14.9-16.3,22.4 C373.5,584.4,352.3,571.4,333.1,555.8z M144.5,419.2c-2.5-12.1-3.5-28.9,3.9-41.3c6-10,17.1-15.8,28.2-19.5c3.3-1.1,6.8-2,10.2-2.9 c0.3,3.1,0.8,6.3,1.2,9.4c-9.6,13.5-17.6,28.3-25.7,42.7c-4.7,8.3-9.3,16.7-13.8,25.1C146.8,428.3,145.4,423.8,144.5,419.2z M195.3,246.5c-0.2-0.2-0.4-0.5-0.6-0.7c0.6-0.6,1.1-1.3,1.7-1.9c-0.3,0.9-0.6,1.9-0.9,2.9C195.4,246.7,195.3,246.6,195.3,246.5z M272.9,191.8c28.2-13.6,58-24.7,88.5-33.4c0.1,4,0.2,8.1,0.3,12.1c-19.3,11.6-36.9,25.7-52.3,42c-5.6-2.6-11.3-5.1-17.1-7.2 c-8.5-3.1-17.2-5.5-25.9-7.3C268.5,195.8,270.7,193.8,272.9,191.8z M662.3,509.1c19-31.2,29.7-67.1,35.9-102.9 c0.5-3.1,1-6.2,1.5-9.3c-3,36.4-10.5,72.6-21.4,107.3C673,506,667.6,507.6,662.3,509.1z M594.2,187.6c-6.8,0.7-13.4,1.9-19.9,3.8 c-23.9,6.8-44,20.5-60.8,38c-18.8,0.6-37.5,2-56,4.6c-14,1.9-28,5-41.4,9.5c-5.1-1.6-10.2-2.9-15.4-3.8c0.2-14.1,0.2-28.2,0.1-42.3 c0.8-1.9,1.7-3.8,2.7-5.7C462.6,164.6,534,163.1,594.2,187.6z M615.1,225.8c11.2,0.8,22.8,4.4,32.4,10.7c0.4,2.5,0.8,5.1,1.2,7.6 c-22.8-7-46.6-11.1-70.4-13.1C589.7,226.6,601.9,224.8,615.1,225.8z M634.6,385.2c-4.9,14.9-11.1,30.4-18.7,45.5 c-7.5,1-15.2,0.5-22.7-1.1c-0.8-21.9-2.7-45.2-12.8-63.7c11-3.4,21.9-7.2,32.8-11.2c9.7,4.7,18.5,10.7,25.1,18.4 C637.1,377.1,635.9,381.2,634.6,385.2z M442.5,383.1c-2,12.4-3.1,25-3.1,37.5c-4.2-12.1-8.3-24.1-12.4-36.3c-0.3-1-0.6-2-1-2.9 C431.5,382.1,437,382.7,442.5,383.1z M478.9,398.6c4.1,6.2,9.2,12.1,14.8,17.5c1.9,11.2,3.3,22.4,4.2,33.7c0,0.1-0.1,0.2-0.1,0.2 c-6.1-1.2-12.2-2.5-18.2-4.1C476.6,430.8,476.8,414.7,478.9,398.6z M545.7,382.9c5.4,8.3,6.5,19.4,7.1,29.6c-1.6-1-3.3-2.1-4.9-3.2 C548.3,400.5,547.5,391.6,545.7,382.9z M539.7,449.8c4.6,2.6,9.5,5.1,14.4,7.3c-5.6-0.3-11.2-0.7-16.7-1.3 C538.2,453.8,538.9,451.8,539.7,449.8z M293,349.9c15.6,5.5,31.4,10.3,47,14.4c1.8,10.3,4.8,19.8,8.7,28.7 c-3.8,20.4-8.5,40.5-14.5,60.3c-14.8-18.6-26.8-39-34.3-61.3c-4.6-13.7-7.4-27.8-7.9-41.9C292.3,350,292.6,349.9,293,349.9z M403.1,454.6c2.9,1.9,5.9,3.7,9,5.4c8.9,25.1,18,50,27.7,74.7c-0.3,0.4-0.6,0.9-1,1.3c-0.5,0-1-0.1-1.5-0.1 c-7-3.7-13.9-7.7-20.5-11.7c-13.9-8.4-27.7-18.1-40.7-28.8C387,483.2,396,469.4,403.1,454.6z M489.2,532.5c0.9,0.7,1.8,1.4,2.8,2 c-1.6,0.3-3.2,0.4-4.8,0.7C487.9,534.3,488.6,533.4,489.2,532.5z M537.8,515.2c0.3-6.8,0.4-13.6,0.4-20.3c5.9,0.5,11.7,0.8,17.6,1 c-0.1,4-0.3,8-0.5,12.1c-4.1,3.1-8.3,6-12.7,8.6C541,516.1,539.4,515.7,537.8,515.2z M562.8,268.6c30,1.6,60.2,6.4,88.4,17.1 c0,3.3-0.1,6.7-0.3,10c-18.3-9.8-39.7-14.2-60.1-11.9c-16,1.8-30.9,7.3-43.9,15.7c-13.8,0-27.8,3-40.1,8.9 c6.9-14.4,14.9-28.3,24.8-40.7C542.1,267.8,552.5,268,562.8,268.6z M476.3,282.8c-3.5-3.9-7.3-7.6-11.2-11.1c0,0,0.1,0,0.1,0 c6.1-0.8,12.2-1.4,18.3-1.9C481,274,478.6,278.4,476.3,282.8z M447.4,308.3c-9-0.9-18-1.5-26.6-1.9c-5-0.3-10.1-0.3-15.1-0.5 c-1.8-3.7-3.7-7.4-5.7-11c5-3.9,10.4-7.3,16.3-10C428.1,290.4,438.5,298.6,447.4,308.3z M234.1,399.3c3.1-13.6,8.2-26.8,15.1-39.3 c1.7-0.8,3.4-1.5,5.1-2.1c3.1,40.1,19.4,79,44.8,112.4c6.2,8.1,12.8,15.9,19.6,23.3c-5.3,3.3-10.9,6.3-16.7,8.7 c-10.5-4.5-20.7-9.7-30-15.9C255.1,459.7,242.1,430.2,234.1,399.3z M351.8,238.9c-2.7-2.1-5.4-4.2-8.2-6.3c0.7-0.7,1.4-1.4,2.1-2.1 c2.4-2.3,5-4.4,7.5-6.6C352.5,229,352.1,234,351.8,238.9z M339.6,282.6c0.8-0.3,1.7-0.5,2.5-0.8c3.3,3.3,6.4,6.8,9.4,10.3 c-2.5,4.4-4.7,9-6.5,13.7c-6.7-0.2-13.5-0.4-20.2-0.5c-9,0-18.1,0.1-27.1,0.4c0.1-0.4,0.3-0.8,0.4-1.2 C311,295.2,325,287.5,339.6,282.6z M598.7,520.7c11.6-11.8,22-24.7,31.3-38.4c1.3-0.6,2.6-1.3,3.9-2c-7.6,14.4-16.9,27.8-28.4,39.8 C603.3,520.3,601,520.5,598.7,520.7z M284.7,243.8c-6.6,10.1-12.4,20.9-17.2,32.2c-0.8,1.9-1.4,3.7-2.1,5.6 c-3.8,3.2-7.5,6.5-11.1,9.9c-9-4.8-17.7-10-26-15.8c2.8-14.7,7.3-29,13.7-42.3C256.6,234.8,271,238.4,284.7,243.8z M193.5,430.8 c1.7,18.7,8,37,20.4,53.5c6.5,8.7,14.1,16.4,22.3,23.4c-23.9-5.5-46.8-18.7-64-37.1C178.9,457.2,186.1,443.9,193.5,430.8z M451.1,584.7c3.5,1.3,7.1,2.6,10.7,3.7c3.5,8.2,7.1,16.3,10.7,24.4c-10.8-0.9-21.5-2.6-32-4.8c-1.8-0.4-3.6-0.9-5.5-1.3 C440.4,599.4,445.7,592.1,451.1,584.7z M361.8,753.4c-2.2-0.5-4.4-1-6.6-1.6c4.5-1.3,9.1-2.6,13.6-3.9c2.7-0.8,5.3-1.6,8-2.5 C371.9,748.3,366.9,750.9,361.8,753.4z M522.2,612.4c1.4-4.7,2.7-9.5,3.9-14.3c2.1-0.1,4.2-0.1,6.3-0.3c-2.6,4.9-5.5,9.8-8.6,14.5 C523.3,612.3,522.8,612.4,522.2,612.4z M580,585.2c2.1-1,4.3-1.8,6.4-2.9c13-6.6,25-15.1,35.9-24.9c12.2-1.7,24.1-4.2,35.7-7.1 c-14.2,14.1-30.5,26.2-48.8,35.9c-11.5,6.1-23.5,11.1-35.8,15.2C575.9,596.2,578.1,590.8,580,585.2z M186.5,292.1 c-0.8,8.1-1.3,16.2-1.5,24.3c-12,2.4-24,6-34.9,11.2c4.9-17.5,11.7-34.5,20.8-50.2C175.8,282.6,181,287.5,186.5,292.1z M155.1,508.1 c8.8,7.7,18.4,14.4,28.4,20c26.2,14.6,57,22.9,87.1,20.9c4.5,5.2,9.1,10.2,13.9,15.1c-9.5,18.7-17.1,38.1-17.4,59.3 c-0.5,31.5,18.6,67.1,51.2,74.3c39,8.7,67.2-23.1,87.8-51.3c1.5-2.1,3.1-4.2,4.6-6.3c18,5.3,36.6,8.8,55.3,10.6 c-3.9,7.7-8.2,15.2-12.9,22.4c-47.5,26.4-101.3,40.1-153.7,52.7c-1.6,0.4-3.2,0.8-4.8,1.1c-16.9-9.5-32.7-20.9-47-33.7 c-48-43.2-78.8-102.1-94.8-164.1c-0.8-3-1.5-6-2.2-9.1C152,516.1,153.5,512.1,155.1,508.1z M286.8,771.4c-4.7,0-9.3-0.2-13.8-0.6 c5.6-0.8,11.1-1.7,16.7-2.8c2.1,1,4.2,2,6.3,3C292.9,771.2,289.8,771.4,286.8,771.4z M568.9,690.9c-3,2.9-6.1,5.7-9.2,8.5 c-8-14-15.7-28.2-23.1-42.5c2.5-2.8,5-5.6,7.4-8.5c27.9-4.6,55.1-13.2,80.2-25.9C608.3,647.3,590,670.5,568.9,690.9z M654.7,100.6 c28.9,9.3,56.1,24.7,77,47.5c19.4,21.3,32.4,51.1,21.2,78.6c-5,12.3-13.9,22.4-24.3,30.8c-2.2-3.9-4.4-7.8-6.8-11.6 c-0.4-1-0.7-2-1-3c-11.7-31-29.1-60.2-54.1-82.4c-2.7-2.4-5.6-4.7-8.5-7c-8.5-13.2-19.1-25-32.6-34.3c-27.7-19-62.8-23.7-95.8-23.9 C570.7,85.7,614.7,87.8,654.7,100.6z M163.5,173.5c-1.7-30.6,7.9-62.5,28.2-85.8c20.4-23.4,50-37.8,80.9-39.7 c26.9-1.6,63.3,4.6,79.7,28.7c7.1,10.4,8.1,23.6,8.3,36.5c-0.2,0-0.3,0-0.5,0.1c-32.1,5.6-64.5,15.7-92,33.6 c-5.8,3.8-11.2,7.9-16.4,12.3c-21.9,10.7-42.7,23.2-61.9,38.5c-6.9,1.3-13.7,2.9-20.5,4.9C166.2,193.3,164.1,183.6,163.5,173.5z M71.2,326.5c16-27.4,39.2-51,66.4-67.7c-23.2,40.4-34.3,87.6-36.8,135c-2.3,41.7,1,83.9,9.8,124.9C98.8,555.7,92.9,594.2,98.7,632 c-20.2-36.2-35.5-75.6-45.3-114.9C37.7,454.1,37.5,384,71.2,326.5z'/%3E%3C/svg%3E%0A");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
@media screen and (max-width: 768px) {
  #sec02 ul li .qa-q::before {
    width: max(25px, 3.255vw);
    height: max(25px, 3.255vw);
    top: 10px;
    left: 15px;
  }
}
@media screen and (max-width: 450px) {
  #sec02 ul li .qa-q::before {
    width: 25px;
    height: 25px;
    top: 15px;
  }
}
#sec02 ul li .qa-a {
  background: #fff;
  padding: min(25px,1.302vw) min(25px,1.302vw) min(25px,1.302vw) min(100px, 5.208vw);
  height: 100%;
  font-size: clamp(14px, 1.375rem, 15px);
  position: relative;
}
@media (769px <= width < 1001px) {
  #sec02 ul li .qa-a {
    font-size: max(14px, 0.875rem);
  }
}
@media screen and (max-width: 768px) {
  #sec02 ul li .qa-a {
    font-size: max(14px, 0.875rem);
    padding: 15px 15px 15px max(60px, 7.812vw);
  }
}
@media screen and (max-width: 450px) {
  #sec02 ul li .qa-a {
    padding-left: 3.58em;
  }
}
#sec02 ul li .qa-a::before {
  position: absolute;
  content: "";
  width: min(50px, 2.604vw);
  height: min(50px, 2.604vw);
  left: min(25px, 1.302vw);
  top: min(20px, 1.0416vw);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='%231b2435' viewBox='0 0 24 24'%3E%3Cpath d='M22 8.51v1.372h-2.538c.02-.223.038-.448.038-.681 0-.237-.017-.464-.035-.69h2.535zm-10.648-6.553v-1.957h1.371v1.964c-.242-.022-.484-.035-.726-.035-.215 0-.43.01-.645.028zm5.521 1.544l1.57-1.743 1.019.918-1.603 1.777c-.25-.297-.593-.672-.986-.952zm-10.738.952l-1.603-1.777 1.019-.918 1.57 1.743c-.392.28-.736.655-.986.952zm-1.597 5.429h-2.538v-1.372h2.535c-.018.226-.035.454-.035.691 0 .233.018.458.038.681zm9.462 9.118h-4c-.276 0-.5.224-.5.5s.224.5.5.5h4c.276 0 .5-.224.5-.5s-.224-.5-.5-.5zm0 2h-4c-.276 0-.5.224-.5.5s.224.5.5.5h4c.276 0 .5-.224.5-.5s-.224-.5-.5-.5zm.25 2h-4.5l1.188.782c.154.138.38.218.615.218h.895c.234 0 .461-.08.615-.218l1.187-.782zm3.75-13.799c0 3.569-3.214 5.983-3.214 8.799h-1.989c-.003-1.858.87-3.389 1.721-4.867.761-1.325 1.482-2.577 1.482-3.932 0-2.592-2.075-3.772-4.003-3.772-1.925 0-3.997 1.18-3.997 3.772 0 1.355.721 2.607 1.482 3.932.851 1.478 1.725 3.009 1.72 4.867h-1.988c0-2.816-3.214-5.23-3.214-8.799 0-3.723 2.998-5.772 5.997-5.772 3.001 0 6.003 2.051 6.003 5.772z'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  fill: #1b2435;
}
@media screen and (max-width: 768px) {
  #sec02 ul li .qa-a::before {
    width: max(25px, 3.255vw);
    height: max(25px, 3.255vw);
    top: 10px;
    left: 15px;
  }
}
@media screen and (max-width: 450px) {
  #sec02 ul li .qa-a::before {
    width: 25px;
    height: 35px;
  }
}

@media screen and (max-width: 768px) {
  #sec03 .inner02 {
    max-width: 100%;
    padding-left: 15px;
    padding-right: 15px;
  }
}
#sec03 p {
  text-align: center;
}
@media (769px <= width < 1001px) {
  #sec03 p {
    font-size: max(14px, 0.875rem);
  }
}
@media screen and (max-width: 768px) {
  #sec03 p {
    font-size: max(14px, 0.875rem);
    text-align: left;
  }
}
#sec03 ul {
  margin-top: min(80px, 4.166vw);
}
@media screen and (max-width: 768px) {
  #sec03 ul {
    padding-right: 15px;
    padding-left: 15px;
    max-width: 480px;
    margin: max(35px, 4.557vw) auto 0;
  }
}
@media screen and (max-width: 450px) {
  #sec03 ul {
    margin-top: max(35px, 7.777vw);
  }
}
#sec03 ul li {
  display: grid;
  align-items: flex-start;
  grid-gap: 0 min(70px, 3.6458vw);
}
#sec03 ul li .tetxWrap-ttl {
  display: flex;
  flex-direction: column;
  justify-self: center;
  margin-bottom: min(20px, 1.0416vw);
}
@media screen and (max-width: 768px) {
  #sec03 ul li .tetxWrap-ttl {
    margin-bottom: max(20px, 2.604vw);
  }
}
@media screen and (max-width: 450px) {
  #sec03 ul li .tetxWrap-ttl {
    margin-bottom: max(15px, 3.333vw);
  }
}
#sec03 ul li .tetxWrap-ttl span {
  font-size: clamp(14px, 1.125rem, 18px);
  font-weight: bold;
  display: block;
  font-family: "Lato", sans-serif;
  letter-spacing: -0.5px;
}
@media (769px <= width < 1001px) {
  #sec03 ul li .tetxWrap-ttl span {
    font-size: 15px;
  }
}
@media screen and (max-width: 768px) {
  #sec03 ul li .tetxWrap-ttl span {
    font-size: max(13px, 0.8125rem);
  }
}
#sec03 ul li .tetxWrap-ttl b {
  font-size: clamp(34px, 3.25rem, 52px);
  font-weight: bold;
  font-family: "Lato", sans-serif;
  line-height: 1;
  padding-bottom: 4px;
  width: -moz-fit-content;
  width: fit-content;
  border-bottom: min(6px, .312vw) solid #606060;
  -o-border-image: linear-gradient(to right, #606060 0%, #dbdbdb 100%);
     border-image: linear-gradient(to right, #606060 0%, #dbdbdb 100%);
  border-image-slice: 1;
}
@media (769px <= width < 1001px) {
  #sec03 ul li .tetxWrap-ttl b {
    font-size: 34px;
  }
}
@media screen and (max-width: 768px) {
  #sec03 ul li .tetxWrap-ttl b {
    font-size: max(24px, 1.5rem);
    border-bottom: 3px solid #606060;
  }
}
#sec03 ul li .tetxWrap-ttl h4 {
  font-size: min(28px, 3.1875rem);
  font-weight: bold;
  margin-top: min(20px, 1.0416vw);
}
@media (769px <= width < 1001px) {
  #sec03 ul li .tetxWrap-ttl h4 {
    font-size: 28px;
  }
}
@media screen and (max-width: 768px) {
  #sec03 ul li .tetxWrap-ttl h4 {
    font-size: max(20px, 1.25rem);
  }
}
#sec03 ul li .tetxWrap p {
  font-size: clamp(14px, 0.9375rem, 15px);
  text-align: left;
}
@media (769px <= width < 1001px) {
  #sec03 ul li .tetxWrap p {
    font-size: max(14px, 0.875rem);
  }
}
@media screen and (max-width: 768px) {
  #sec03 ul li .tetxWrap p {
    font-size: max(14px, 0.875rem);
  }
}
#sec03 ul li figure {
  box-shadow: 3px 3px 6px #c8c9cc, -3px -3px 6px #f2f6f7;
}
@media screen and (max-width: 768px) {
  #sec03 ul li figure {
    margin-bottom: max(20px, 2.604vw);
  }
}
@media screen and (max-width: 450px) {
  #sec03 ul li figure {
    margin-bottom: max(15px, 3.333vw);
  }
}
#sec03 ul li:nth-of-type(odd) {
  grid-template-columns: auto min(840px, 43.75vw);
  justify-self: flex-end;
}
@media screen and (max-width: 768px) {
  #sec03 ul li:nth-of-type(odd) {
    grid-template-columns: 1fr;
  }
}
#sec03 ul li:nth-of-type(odd) .tetxWrap {
  padding-left: min(130px, 6.771vw);
}
@media screen and (max-width: 768px) {
  #sec03 ul li:nth-of-type(odd) .tetxWrap {
    padding-left: 0;
  }
}
#sec03 ul li:nth-of-type(odd) figure {
  margin-right: min(50px, 2.604vw);
}
@media screen and (max-width: 768px) {
  #sec03 ul li:nth-of-type(odd) figure {
    margin-right: 0;
  }
}
#sec03 ul li:nth-of-type(even) {
  justify-self: flex-start;
  grid-template-columns: min(840px, 43.75vw) auto;
}
@media screen and (max-width: 768px) {
  #sec03 ul li:nth-of-type(even) {
    grid-template-columns: 1fr;
  }
}
#sec03 ul li:nth-of-type(even) figure {
  margin-left: min(50px, 2.604vw);
}
@media screen and (max-width: 768px) {
  #sec03 ul li:nth-of-type(even) figure {
    margin-left: 0;
  }
}
#sec03 ul li + li {
  margin-top: min(120px, 6.25vw);
}
@media screen and (max-width: 768px) {
  #sec03 ul li + li {
    margin-top: max(40px, 5.208vw);
  }
}
@media screen and (max-width: 450px) {
  #sec03 ul li + li {
    margin-top: max(40px, 8.888vw);
  }
}

#sec04 {
  background: #f7f7f7;
}
@media (769px <= width < 1001px) {
  #sec04 .inner {
    max-width: 700px;
    padding-left: 15px;
    padding-right: 15px;
  }
}
@media screen and (max-width: 768px) {
  #sec04 .inner {
    max-width: 480px;
  }
}
#sec04 ul {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-gap: min(60px, 3.125vw) min(90px, 4.687vw);
  margin-bottom: min(60px, 3.125vw);
  padding-top: min(20px, 1.041vw);
  max-width: 800px;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  #sec04 ul {
    grid-template-columns: 1fr 1fr;
    grid-gap: max(20px, 2.604vw);
    padding-top: max(40px, 5.208vw);
    margin-bottom: max(50px, 6.5104vw);
  }
}
@media screen and (max-width: 450px) {
  #sec04 ul {
    grid-template-columns: 1fr 1fr;
    padding-top: max(25px, 5.555vw);
    margin-bottom: max(50px, 11.111vw);
  }
}
@media screen and (max-width: 768px) {
  #sec04 ul li figure img {
    max-width: 80px;
    margin: 0 auto;
  }
}
#sec04 ul li figure figcaption {
  font-size: clamp(13px, 1.125rem, 18px);
  font-weight: bold;
  text-align: center;
  margin-top: min(15px, .7812vw);
}
@media (769px <= width < 1001px) {
  #sec04 ul li figure figcaption {
    font-size: 13px;
  }
}
@media screen and (max-width: 768px) {
  #sec04 ul li figure figcaption {
    font-size: 13px;
  }
}
#sec04 p {
  font-size: clamp(13px, 0.9375rem, 15px);
  text-align: right;
  margin-top: 3em;
}
@media (769px <= width < 1001px) {
  #sec04 p {
    font-size: max(14px, 0.933rem);
  }
}
@media screen and (max-width: 768px) {
  #sec04 p {
    font-size: max(14px, 0.933rem);
  }
}

#sec05 {
  padding-bottom: min(40px, 2.083vw);
}
@media (769px <= width < 1001px) {
  #sec05 {
    padding-left: 15px;
    padding-right: 15px;
    margin: 0 auto;
  }
}
@media screen and (max-width: 768px) {
  #sec05 {
    padding-bottom: max(60px, 7.812vw);
    max-width: 480px;
  }
}
#sec05 p {
  text-align: center;
  padding-top: min(20px, 1.041vw);
}
@media (769px <= width < 1001px) {
  #sec05 p {
    font-size: max(14px, 0.875rem);
  }
}
@media screen and (max-width: 768px) {
  #sec05 p {
    text-align: left;
  }
}
#sec05 .priceWrap table {
  border-collapse: collapse;
  padding: 0;
  width: 100%;
  table-layout: fixed;
  margin: clamp(95px, 4.947vw, 100px) auto min(25px, 1.302vw);
  max-width: 1200px;
}
@media (769px <= width < 1001px) {
  #sec05 .priceWrap table {
    margin-top: 6em;
  }
}
#sec05 .priceWrap table tr {
  padding: 0.35em;
  border-bottom: 1px solid #0c0e11;
}
#sec05 .priceWrap table tr th {
  padding: 2em;
  border-right: 1px solid #0c0e11;
  border-left: 1px solid #0c0e11;
  border-top: 1px solid #0c0e11;
  text-align: center;
}
@media (769px <= width < 1001px) {
  #sec05 .priceWrap table tr th {
    padding: 15px;
  }
}
#sec05 .priceWrap table tr th.plan1 {
  background: #e0e0e0;
  width: min(330px, 17.187vw);
}
@media (769px <= width < 1001px) {
  #sec05 .priceWrap table tr th.plan1 {
    width: 16em;
  }
}
#sec05 .priceWrap table tr th.plan1 .plan-ttl {
  font-size: clamp(15px, 1.25rem, 20px);
  font-weight: bold;
}
@media (769px <= width < 1001px) {
  #sec05 .priceWrap table tr th.plan1 .plan-ttl {
    font-size: 18px;
    line-height: 1.5;
  }
}
#sec05 .priceWrap table tr th.recomment {
  background: #0c0e11;
  position: relative;
}
#sec05 .priceWrap table tr th.recomment::before {
  position: absolute;
  content: "";
  width: calc(100% + 2px);
  height: 40px;
  background: #0c0e11;
  left: -1px;
  top: -10px;
  z-index: -1;
  border-radius: 10px 10px 0 0;
}
#sec05 .priceWrap table tr th.recomment::after {
  position: absolute;
  content: "";
  background: url(../images/top/reccomend.png) center no-repeat;
  background-size: contain;
  width: clamp(100px, 6.406vw, 123px);
  height: clamp(24px, 1.25vw, 50px);
  left: 50%;
  transform: translateX(-50%);
  top: clamp(-60px, -3.68em, -65px);
}
@media (769px <= width < 1001px) {
  #sec05 .priceWrap table tr th.recomment::after {
    width: 120px;
    height: 35px;
    top: -4.6em;
  }
}
#sec05 .priceWrap table tr th.recomment .plan-ttl {
  color: #fff;
}
#sec05 .priceWrap table tr th.recomment .plan-ttl.recomment-ttl {
  position: relative;
}
#sec05 .priceWrap table tr th.recomment .plan-ttl.recomment-ttl::before {
  position: absolute;
  content: "";
  background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='utf-8'%3F%3E%3C!-- Generator: Adobe Illustrator 27.7.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' id='_x32_' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 512 512' style='enable-background:new 0 0 512 512;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0%7Bfill:%23CDAF50;%7D%0A%3C/style%3E%3Cg%3E%3Cpath class='st0' d='M512,180.2c0-21.5-17.4-38.9-38.9-38.9c-21.5,0-38.9,17.4-38.9,38.9c0,10.5,4.2,20,10.9,27 c-26.5,54.8-77,73.9-116.2,56.6c-34.9-15.4-47.8-59.5-52.1-93.7c14.2-7.5,23.9-22.4,23.9-39.6c0-24.7-20-44.7-44.7-44.7 c-24.7,0-44.7,20-44.7,44.7c0,17.2,9.7,32.1,23.9,39.6c-4.4,34.2-17.2,78.3-52.1,93.7c-39.2,17.3-89.7-1.8-116.2-56.6 c6.8-7,10.9-16.5,10.9-27c0-21.5-17.4-38.9-38.9-38.9S0,158.7,0,180.2c0,19.8,14.7,36,33.8,38.5l55.8,207.5h332.9l55.8-207.5 C497.2,216.2,512,200,512,180.2z'/%3E%3C/g%3E%3C/svg%3E%0A");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  width: clamp(66px, 3.437vw, 100px);
  height: clamp(45px, 2.34vw, 50px);
  left: 50%;
  top: clamp(-60px, -4.1em, -50px);
  transform: translateX(-50%);
}
@media (769px <= width < 1001px) {
  #sec05 .priceWrap table tr th.recomment .plan-ttl.recomment-ttl::before {
    width: 60px;
    height: 40px;
    top: -2.5em;
  }
}
#sec05 .priceWrap table tr th.itemname {
  background: #f8f8f8;
  font-weight: bold;
  font-size: clamp(13px, 0.9375rem, 15px);
  line-height: 1.5;
}
#sec05 .priceWrap table tr th.none {
  border: none;
}
#sec05 .priceWrap table tr td {
  padding: 2em 0.5em;
  border-right: 1px solid #0c0e11;
  text-align: center;
  border-top: 1px solid #0c0e11;
  text-align: center;
}
#sec05 .priceWrap table tr td.plan1_price {
  color: #0c0e11;
  font-weight: bold;
  font-size: min(22px, 1.375rem);
  padding: min(30px, 1.562vw) min(25px, 1.302vw);
}
#sec05 .priceWrap table tr td.plan1_price span {
  display: block;
  font-size: clamp(12px, 0.9375rem, 15px);
  font-weight: bold;
  margin-top: 5px;
}
@media (769px <= width < 1001px) {
  #sec05 .priceWrap table tr td.plan1_price span {
    font-size: 13px;
    margin-top: 8px;
  }
}
#sec05 .priceWrap table tr td.plan1_price.recomment {
  font-size: min(26px, 1.625rem);
}
#sec05 .priceWrap table tr td.plan1_contents {
  font-size: clamp(13px, 0.9375rem, 15px);
  padding: min(30px, 1.562vw) 10px;
}
#sec05 .priceWrap table tr td.plan1_contents div {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
#sec05 .priceWrap table tr td.plan1_contents div p {
  padding-top: 0;
}
#sec05 .priceWrap table tr td.plan1_contents div ul li {
  padding-left: min(15px, .781vw);
  text-align: left;
  letter-spacing: -0.5px;
  position: relative;
}
@media (769px <= width < 1001px) {
  #sec05 .priceWrap table tr td.plan1_contents div ul li {
    font-size: 13px;
    padding-left: 13px;
  }
}
#sec05 .priceWrap table tr td.plan1_contents div ul li::before {
  position: absolute;
  content: "・";
  font-size: min(15px, 0.9375rem);
  left: 0;
}
#sec05 .priceWrap table tr td.plan1_contents div ul.center {
  display: flex;
  flex-direction: column;
  align-items: center;
}
#sec05 .priceWrap p {
  font-size: clamp(13px, 0.9375rem, 15px);
  text-align: right;
}
#sec05 .spPriceWrap {
  margin-top: max(100px, 13.02vw);
}
@media screen and (max-width: 450px) {
  #sec05 .spPriceWrap {
    margin-top: 5.85em;
  }
}
#sec05 .spPriceWrap-List {
  margin-bottom: max(25px, 3.255vw);
}
#sec05 .spPriceWrap-List__item-ttl {
  background: #e0e0e0;
  font-size: max(15px, 1rem);
  font-weight: bold;
  text-align: center;
  padding: 15px 0;
  border: solid 1px #0c0e11;
}
#sec05 .spPriceWrap-List__item-contents {
  display: grid;
  grid-template-columns: 25% auto;
  border-left: solid 1px #0c0e11;
  border-right: solid 1px #0c0e11;
  border-bottom: solid 1px #0c0e11;
}
#sec05 .spPriceWrap-List__item-contents dt {
  background: #f8f8f8;
  padding: 20px 15px;
  text-align: center;
  border-right: solid 1px #0c0e11;
  font-weight: bold;
  font-size: max(14px, 0.933rem);
  display: flex;
  align-items: center;
  justify-content: center;
}
#sec05 .spPriceWrap-List__item-contents dd {
  padding: 20px 15px;
  text-align: center;
  font-size: max(14px, 0.933rem);
}
#sec05 .spPriceWrap-List__item-contents dd.contentsPrice {
  font-size: max(18px, 1.2rem);
  font-weight: bold;
}
#sec05 .spPriceWrap-List__item-contents dd.contentsPrice span {
  display: block;
  font-size: max(14px, 0.933rem);
  font-weight: bold;
}
#sec05 .spPriceWrap-List__item-contents dd ol {
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}
#sec05 .spPriceWrap-List__item-contents dd ol li {
  font-size: max(14px, 0.933rem);
  position: relative;
  padding-left: 15px;
  width: -moz-fit-content;
  width: fit-content;
  text-align: left;
}
#sec05 .spPriceWrap-List__item-contents dd ol li::before {
  position: absolute;
  content: "・";
  font-size: max(14px, 0.933rem);
  top: 0;
  left: 0;
}
#sec05 .spPriceWrap-List__item:first-of-type .spPriceWrap-List__item-ttl {
  background: #0c0e11;
  color: #fff;
  padding: 35px 0 15px;
  border-radius: 25px 25px 0 0;
  position: relative;
}
#sec05 .spPriceWrap-List__item:first-of-type .spPriceWrap-List__item-ttl::before {
  position: absolute;
  content: "";
  background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='utf-8'%3F%3E%3C!-- Generator: Adobe Illustrator 27.7.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' id='_x32_' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 512 512' style='enable-background:new 0 0 512 512;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0%7Bfill:%23CDAF50;%7D%0A%3C/style%3E%3Cg%3E%3Cpath class='st0' d='M512,180.2c0-21.5-17.4-38.9-38.9-38.9c-21.5,0-38.9,17.4-38.9,38.9c0,10.5,4.2,20,10.9,27 c-26.5,54.8-77,73.9-116.2,56.6c-34.9-15.4-47.8-59.5-52.1-93.7c14.2-7.5,23.9-22.4,23.9-39.6c0-24.7-20-44.7-44.7-44.7 c-24.7,0-44.7,20-44.7,44.7c0,17.2,9.7,32.1,23.9,39.6c-4.4,34.2-17.2,78.3-52.1,93.7c-39.2,17.3-89.7-1.8-116.2-56.6 c6.8-7,10.9-16.5,10.9-27c0-21.5-17.4-38.9-38.9-38.9S0,158.7,0,180.2c0,19.8,14.7,36,33.8,38.5l55.8,207.5h332.9l55.8-207.5 C497.2,216.2,512,200,512,180.2z'/%3E%3C/g%3E%3C/svg%3E%0A");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  width: 4em;
  height: 4em;
  left: 50%;
  top: -1.8em;
  transform: translateX(-50%);
}
#sec05 .spPriceWrap-List__item:first-of-type .spPriceWrap-List__item-ttl::after {
  position: absolute;
  content: "";
  background: url(../images/top/reccomend.png) center no-repeat;
  background-size: contain;
  width: max(120px, 15.625vw);
  height: max(25px, 3.255vw);
  left: 50%;
  transform: translateX(-50%);
  top: -3.68em;
}
#sec05 .spPriceWrap-List__item + .spPriceWrap-List__item {
  margin-top: max(50px, 6.5104vw);
}
#sec05 .spPriceWrap p {
  text-align: right;
}

#sec06 {
  position: relative;
  overflow: hidden;
  -webkit-clip-path: polygon(0 8%, 100% 0, 100% 100%, 0 94%);
          clip-path: polygon(0 8%, 100% 0, 100% 100%, 0 94%);
  background: #e0e0e0;
  padding-top: min(200px, 10.416vw);
  padding-bottom: min(220px, 11.458vw);
}
@media screen and (max-width: 768px) {
  #sec06 {
    padding-top: max(120px, 15.625vw);
    -webkit-clip-path: polygon(0 4%, 100% 0, 100% 100%, 0 97%);
            clip-path: polygon(0 4%, 100% 0, 100% 100%, 0 97%);
    padding-bottom: max(120px, 15.625vw);
  }
}
@media screen and (max-width: 450px) {
  #sec06 {
    padding-top: 7em;
    -webkit-clip-path: polygon(0 3%, 100% 0, 100% 100%, 0 98%);
            clip-path: polygon(0 3%, 100% 0, 100% 100%, 0 98%);
  }
}
@media screen and (max-width: 768px) {
  #sec06 .inner02 {
    padding-left: 15px;
    padding-right: 15px;
    max-width: 100%;
    margin: 0 auto;
  }
}
#sec06 ul {
  display: flex;
  flex-wrap: wrap;
  grid-gap: min(60px,3.125vw) min(25px,1.302vw);
  padding-top: min(20px, 1.0416vw);
}
@media (769px <= width < 1001px) {
  #sec06 ul {
    max-width: 700px;
    margin: 0 auto;
    grid-gap: 30px;
  }
}
@media screen and (max-width: 768px) {
  #sec06 ul {
    max-width: 480px;
    flex-direction: column;
    align-items: center;
    grid-gap: max(25px,3.255vw) 0;
    padding-top: max(40px, 5.208vw);
    margin: 0 auto;
  }
}
@media screen and (max-width: 450px) {
  #sec06 ul {
    padding-top: max(25px, 5.555vw);
  }
}
#sec06 ul li {
  width: calc((100% - 50px) / 3);
  height: auto;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  box-shadow: 3px 3px 6px #c8c9cc, -3px -3px 6px #f2f6f7;
  position: relative;
}
@media (769px <= width < 1001px) {
  #sec06 ul li {
    width: calc((100% - 30px) / 2);
  }
}
@media screen and (max-width: 768px) {
  #sec06 ul li {
    width: 100%;
  }
}
#sec06 ul li::before {
  position: absolute;
  content: "";
  width: 0;
  height: 0;
  border-left: min(20px, 1.0416vw) solid #0c0e11;
  border-top: min(15px, .781vw) solid transparent;
  border-bottom: min(15px, .781vw) solid transparent;
  right: -1.2em;
  top: 50%;
  transform: translateY(-50%);
}
@media (769px <= width < 1001px) {
  #sec06 ul li::before {
    border-left: 15px solid #0c0e11;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
  }
}
@media screen and (max-width: 768px) {
  #sec06 ul li::before {
    width: 0;
    height: 0;
    border-bottom: none;
    border-left: max(15px, 1.953vw) solid transparent;
    border-right: max(15px, 1.953vw) solid transparent;
    border-top: max(18px, 2.343vw) solid #0c0e11;
    top: auto;
    bottom: 0;
    right: 50%;
    transform: translateX(50%) translateY(100%);
  }
}
#sec06 ul li:last-of-type::before {
  display: none;
}
#sec06 ul li dt {
  width: 100%;
  background: #0c0e11;
  text-align: center;
  border-radius: 10px 10px 0 0;
  padding: min(15px, .7812vw) 0 min(25px, 1.302vw);
  border-bottom: 4px solid #606060;
  -o-border-image: linear-gradient(to right, #606060 0%, #dbdbdb 100%);
     border-image: linear-gradient(to right, #606060 0%, #dbdbdb 100%);
  border-image-slice: 1;
}
@media screen and (max-width: 768px) {
  #sec06 ul li dt {
    display: flex;
    justify-content: flex-start;
    align-items: flex-end;
    padding: 25px 15px;
  }
}
#sec06 ul li dt span {
  font-family: "Lato", sans-serif;
  font-style: italic;
  font-size: clamp(15px, 1.75rem, 28px);
  color: #fff;
  line-height: 1.5;
}
@media (769px <= width < 1001px) {
  #sec06 ul li dt span {
    font-size: 22px;
  }
}
@media screen and (max-width: 768px) {
  #sec06 ul li dt span {
    line-height: 1.2;
  }
}
@media screen and (max-width: 768px) {
  #sec06 ul li dt span {
    font-size: max(14px, 0.933rem);
  }
}
#sec06 ul li dt span b {
  font-family: "Lato", sans-serif;
  font-style: italic;
  font-size: clamp(26px, 3.25rem, 52px);
  margin-left: 5px;
}
@media (769px <= width < 1001px) {
  #sec06 ul li dt span b {
    font-size: 32px;
  }
}
@media screen and (max-width: 768px) {
  #sec06 ul li dt span b {
    font-size: max(25px, 1.666rem);
  }
}
#sec06 ul li dt h4 {
  font-size: clamp(18px, 2rem, 32px);
  color: #fff;
  font-weight: bold;
  line-height: 1.5;
}
@media (769px <= width < 1001px) {
  #sec06 ul li dt h4 {
    font-size: 24px;
  }
}
@media screen and (max-width: 768px) {
  #sec06 ul li dt h4 {
    padding-left: max(25px, 3.255vw);
  }
}
@media screen and (max-width: 768px) {
  #sec06 ul li dt h4 {
    font-size: max(18px, 1.2rem);
  }
}
#sec06 ul li dd {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  height: 100%;
  background: #fff;
  border-radius: 0 0 10px 10px;
  padding: min(30px, 1.562vw) min(25px, 1.302vw);
  font-size: clamp(14px, 0.9375rem, 15px);
  line-height: 2;
}
@media (769px <= width < 1001px) {
  #sec06 ul li dd {
    font-size: 14px;
  }
}
@media screen and (max-width: 768px) {
  #sec06 ul li dd {
    padding: 15px;
    font-size: max(14px, 0.933rem);
  }
}

#sec07 {
  overflow: hidden;
  position: relative;
}
@media screen and (max-width: 768px) {
  #sec07 .inner03 {
    max-width: 480px;
  }
}
#sec07 p {
  text-align: center;
  padding-top: min(20px, 1.041vw);
}
@media (769px <= width < 1001px) {
  #sec07 p {
    font-size: max(14px, 0.933rem);
  }
}
@media screen and (max-width: 768px) {
  #sec07 p {
    font-size: max(14px, 0.933rem);
    text-align: left;
    padding-top: 0;
  }
}
#sec07 ul {
  margin-top: min(60px, 3.125vw);
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-gap: min(45px,2.343vw) min(60px, 3.125vw);
}
@media screen and (max-width: 768px) {
  #sec07 ul {
    grid-template-columns: 1fr;
    margin-top: max(40px, 5.208vw);
    grid-gap: max(25px, 3.255vw) 0;
  }
}
@media screen and (max-width: 450px) {
  #sec07 ul {
    margin-top: max(25px, 5.555vw);
    grid-gap: max(25px, 5.555vw) 0;
  }
}
#sec07 ul figure {
  text-align: center;
}
#sec07 ul figure figcaption {
  font-weight: bold;
  padding-top: min(25px, 1.302vw);
  font-size: clamp(13px, 0.8125rem, 20px);
}
@media (769px <= width < 1001px) {
  #sec07 ul figure figcaption {
    font-size: max(15px, 1em);
  }
}
@media screen and (max-width: 768px) {
  #sec07 ul figure figcaption {
    font-size: max(15px, 1em);
    padding-top: max(15px, 1.953vw);
  }
}
@media screen and (max-width: 450px) {
  #sec07 ul figure figcaption {
    padding-top: max(15px, 3.333vw);
  }
}

#sec08 {
  background: #f7f7f7;
}
@media (769px <= width < 1001px) {
  #sec08 .inner {
    padding-left: 15px;
    padding-right: 15px;
    max-width: 700px;
    margin: 0 auto;
  }
}
@media screen and (max-width: 768px) {
  #sec08 .inner {
    max-width: 480px;
  }
}
#sec08 .newsList {
  padding-top: min(20px, 1.041vw);
}
@media screen and (max-width: 768px) {
  #sec08 .newsList {
    padding-top: max(40px, 5.208vw);
  }
}
@media screen and (max-width: 450px) {
  #sec08 .newsList {
    padding-top: max(40px, 5.208vw);
  }
}
#sec08 .newsList-item a {
  display: grid;
  grid-template-columns: min(480px, 25vw) auto;
}
@media screen and (max-width: 768px) {
  #sec08 .newsList-item a {
    grid-template-columns: 1fr;
  }
}
#sec08 .newsList-item a .newsList-item__img {
  flex-shrink: 0;
  overflow: hidden;
  position: relative;
  vertical-align: middle;
  box-shadow: 3px 3px 6px #c8c9cc, -3px -3px 6px #f2f6f7;
}
#sec08 .newsList-item a .newsList-item__img figure {
  margin: 0;
  overflow: hidden;
  padding-top: 56.25%;
  position: relative;
  width: 100%;
  z-index: 0;
}
#sec08 .newsList-item a .newsList-item__img figure img {
  display: block;
  height: 100%;
  left: 0;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 0;
  transition: transform 0.25s;
  width: 100%;
}
#sec08 .newsList-item a .newsList-item__textBox {
  padding-left: min(50px, 2.604vw);
}
@media screen and (max-width: 768px) {
  #sec08 .newsList-item a .newsList-item__textBox {
    padding-left: 0;
    margin-bottom: 10px;
  }
}
#sec08 .newsList-item a .newsList-item__textBox-dataList {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
#sec08 .newsList-item a .newsList-item__textBox-dataList__date {
  font-size: clamp(13px, 0.9375rem, 15px);
}
@media (769px <= width < 1001px) {
  #sec08 .newsList-item a .newsList-item__textBox-dataList__date {
    font-size: max(14px, 0.9333rem);
  }
}
@media screen and (max-width: 768px) {
  #sec08 .newsList-item a .newsList-item__textBox-dataList__date {
    font-size: max(14px, 0.9333rem);
  }
}
#sec08 .newsList-item a .newsList-item__textBox-dataList__date.NEW {
  padding-left: min(50px, 50px);
  position: relative;
}
@media screen and (max-width: 768px) {
  #sec08 .newsList-item a .newsList-item__textBox-dataList__date.NEW {
    padding-left: 3.25em;
  }
}
#sec08 .newsList-item a .newsList-item__textBox-dataList__date.NEW::before {
  position: absolute;
  content: "NEW";
  font-size: clamp(13px, 0.9375rem, 15px);
  font-weight: bold;
  color: #cdaf50;
  left: 0;
  top: 0;
}
@media screen and (max-width: 768px) {
  #sec08 .newsList-item a .newsList-item__textBox-dataList__date.NEW::before {
    font-size: max(14px, 0.9333rem);
  }
}
#sec08 .newsList-item a .newsList-item__textBox-dataList__cat {
  font-weight: bold;
  color: #fff;
  background: #000;
  padding: 5px min(15px, .7812vw);
  border-radius: 50px;
  min-width: 72px;
  text-align: center;
  margin-left: min(25px, 1.302vw);
  font-size: clamp(13px, 0.875rem, 14px);
}
@media screen and (max-width: 768px) {
  #sec08 .newsList-item a .newsList-item__textBox-dataList__cat {
    margin-left: 2em;
    padding: 3px;
    min-width: 60px;
  }
}
#sec08 .newsList-item a .newsList-item__textBox-ttl {
  font-size: clamp(16px, 1.125rem, 14px);
  font-weight: bold;
  padding-top: min(15px, .7812vw);
}
@media (769px <= width < 1001px) {
  #sec08 .newsList-item a .newsList-item__textBox-ttl {
    font-size: 16px;
  }
}
@media screen and (max-width: 768px) {
  #sec08 .newsList-item a .newsList-item__textBox-ttl {
    font-size: max(15px, 1rem);
    padding-top: 15px;
  }
}
#sec08 .newsList-item a:hover {
  opacity: 0.9;
}
#sec08 .newsList-item a:hover .newsList-item__img figure img {
  transform: scale(1.15);
  opacity: 0.9;
}
#sec08 .newsList-item + .newsList-item {
  margin-top: min(40px, 2.083vw);
}
@media screen and (max-width: 768px) {
  #sec08 .newsList-item + .newsList-item {
    margin-top: max(25px, 3.255vw);
  }
}
@media screen and (max-width: 450px) {
  #sec08 .newsList-item + .newsList-item {
    margin-top: max(25px, 5.555vw);
  }
}
#sec08 .linkbtn {
  margin-top: min(60px,3.125vw);
}
@media screen and (max-width: 768px) {
  #sec08 .linkbtn {
    margin-top: max(60px, 7.812vw);
  }
}
@media screen and (max-width: 450px) {
  #sec08 .linkbtn {
    margin-top: max(60px, 13.333vw);
  }
}

#sec09 {
  position: relative;
  background: url(../images/top/contact-bg.jpg) no-repeat center;
  background-size: cover;
}
#sec09::before {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.66);
  top: 0;
  left: 0;
  z-index: 1;
}
@media (769px <= width < 1001px) {
  #sec09 .inner {
    padding-left: 15px;
    padding-right: 15px;
    max-width: 700px;
    margin: 0 auto;
  }
}
@media screen and (max-width: 768px) {
  #sec09 .inner {
    max-width: 100%;
  }
}
#sec09 .title {
  position: relative;
  z-index: 2;
}
#sec09 .contactForm {
  background: #fff;
  padding: min(75px, 3.906vw);
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 768px) {
  #sec09 .contactForm {
    max-width: 480px;
    margin: max(40px, 5.208vw) auto 0;
    padding: 25px 15px;
  }
}
#sec09 .contactForm dl {
  display: flex;
  justify-self: flex-start;
  align-items: center;
}
@media (769px <= width < 1001px) {
  #sec09 .contactForm dl {
    display: block;
  }
}
@media screen and (max-width: 768px) {
  #sec09 .contactForm dl {
    display: block;
  }
}
#sec09 .contactForm dl dt {
  min-width: 25%;
}
#sec09 .contactForm dl dt p {
  font-size: clamp(14px, 0.9375rem, 15px);
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: wrap;
  line-height: 2;
}
@media (769px <= width < 1001px) {
  #sec09 .contactForm dl dt p {
    font-size: max(15px, 1rem);
  }
}
@media screen and (max-width: 768px) {
  #sec09 .contactForm dl dt p {
    font-size: max(15px, 1rem);
    padding-left: 1em;
  }
}
#sec09 .contactForm dl dt p span {
  background: #13171f;
  font-size: 12px;
  font-weight: bold;
  color: #fff;
  padding: 3px 5px;
  margin-left: 10px;
  line-height: initial;
}
@media (769px <= width < 1001px) {
  #sec09 .contactForm dl dt p span {
    font-size: max(12px, 0.8rem);
  }
}
@media screen and (max-width: 768px) {
  #sec09 .contactForm dl dt p span {
    font-size: max(12px, 0.8rem);
  }
}
#sec09 .contactForm dl dd {
  width: 100%;
  margin-left: 15px;
}
@media (769px <= width < 1001px) {
  #sec09 .contactForm dl dd {
    margin-top: 15px;
  }
}
@media screen and (max-width: 768px) {
  #sec09 .contactForm dl dd {
    margin-top: 15px;
    width: 92%;
  }
}
#sec09 .contactForm dl dd span {
  width: 100%;
}
#sec09 .contactForm dl dd span input,
#sec09 .contactForm dl dd span textarea {
  width: 100%;
  outline: none;
  background-color: #eeeeee;
  border: none;
  padding: min(15px, .7812vw) min(25px, 1.302vw);
  font-size: clamp(14px, 0.9375rem, 15px);
  line-height: 1.8;
}
@media (769px <= width < 1001px) {
  #sec09 .contactForm dl dd span input,
  #sec09 .contactForm dl dd span textarea {
    padding: 10px;
    font-size: max(15px, 1rem);
  }
}
@media screen and (max-width: 768px) {
  #sec09 .contactForm dl dd span input,
  #sec09 .contactForm dl dd span textarea {
    padding: 10px;
    font-size: max(15px, 1rem);
  }
}
#sec09 .contactForm dl + dl {
  margin-top: min(25px, 1.302vw);
}
@media (769px <= width < 1001px) {
  #sec09 .contactForm dl + dl {
    margin-top: 25px;
  }
}
@media screen and (max-width: 768px) {
  #sec09 .contactForm dl + dl {
    margin-top: 25px;
  }
}
#sec09 .contactForm dl:last-of-type {
  align-items: flex-start;
}
#sec09 .contactForm .link-send {
  margin: min(60px, 3.125vw) auto 0;
  max-width: 310px;
  text-align: center;
}
@media (769px <= width < 1001px) {
  #sec09 .contactForm .link-send {
    margin-top: 25px;
  }
}
@media screen and (max-width: 768px) {
  #sec09 .contactForm .link-send {
    margin-top: 25px;
  }
}
@media screen and (max-width: 450px) {
  #sec09 .contactForm .link-send {
    width: 85%;
  }
}
#sec09 .contactForm .link-send input {
  position: relative;
  display: inline-block;
  width: 100%;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-align: center;
  color: #fff;
  font-size: 15px;
  padding: min(25px, 1.302vw) 0;
  background-color: #1d1d1d;
  border: 1px solid #1d1d1d;
  margin: 0 auto;
  transition: 0.5s;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
}
@media (769px <= width < 1001px) {
  #sec09 .contactForm .link-send input {
    padding: 15px;
    font-size: max(14px, 0.9333rem);
  }
}
@media screen and (max-width: 768px) {
  #sec09 .contactForm .link-send input {
    padding: 15px;
    font-size: max(14px, 0.9333rem);
  }
}
#sec09 .contactForm .link-send input:hover {
  color: #000;
  background-color: #fff;
  cursor: pointer;
}

#sec10 {
  background: #e0e0e0;
  padding-bottom: 0px;
}
#sec10 .profileWrapper {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-template-rows: repeat(2, 1fr);
  grid-column-gap: 0px;
  grid-row-gap: 0px;
}
@media screen and (max-width: 768px) {
  #sec10 .profileWrapper {
    max-width: 480px;
    margin: 0 auto;
    justify-items: center;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(3, 1fr);
  }
}
#sec10 .profileWrapper figure {
  grid-area: 1/1/2/2;
  width: min(180px, 9.375vw);
  height: min(180px, 9.375vw);
  position: relative;
}
@media (769px <= width < 1001px) {
  #sec10 .profileWrapper figure {
    width: 100px;
  }
}
@media screen and (max-width: 768px) {
  #sec10 .profileWrapper figure {
    grid-area: 1/1/2/2;
    width: 120px;
    height: 120px;
  }
}
@media screen and (max-width: 450px) {
  #sec10 .profileWrapper figure {
    width: 100px;
    height: 100px;
  }
}
#sec10 .profileWrapper figure::before {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  border: solid 1px #000;
  top: -4px;
  left: -4px;
  z-index: 2;
}
@media (769px <= width < 1001px) {
  #sec10 .profileWrapper figure::before {
    height: 100px;
  }
}
#sec10 .profileWrapper figure::after {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.4);
  top: 4px;
  left: 4px;
  z-index: 0;
}
@media (769px <= width < 1001px) {
  #sec10 .profileWrapper figure::after {
    height: 100px;
  }
}
#sec10 .profileWrapper figure img {
  z-index: 1;
  position: relative;
}
#sec10 .profileWrapper .textBox {
  grid-area: 1/2/2/5;
}
@media screen and (max-width: 768px) {
  #sec10 .profileWrapper .textBox {
    grid-area: 1/2/2/3;
    margin-left: -7em;
  }
}
@media screen and (max-width: 450px) {
  #sec10 .profileWrapper .textBox {
    margin-left: -2em;
  }
}
#sec10 .profileWrapper .textBox .name-ceo {
  font-size: max(15px, 0.9375rem);
}
@media screen and (max-width: 768px) {
  #sec10 .profileWrapper .textBox .name-ceo {
    font-size: max(14px, 0.9333rem);
  }
}
@media screen and (max-width: 450px) {
  #sec10 .profileWrapper .textBox .name-ceo {
    font-size: max(13px, 0.8666rem);
  }
}
#sec10 .profileWrapper .textBox h5 {
  font-size: max(24px, 1.375rem);
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  #sec10 .profileWrapper .textBox h5 {
    font-size: max(22px, 1.4666rem);
  }
}
@media screen and (max-width: 450px) {
  #sec10 .profileWrapper .textBox h5 {
    font-size: max(16px, 1.0666rem);
  }
}
#sec10 .profileWrapper .textBox h5 span {
  color: #616160;
  font-weight: bold;
}
#sec10 .profileWrapper .textBox .name-spell {
  font-weight: bold;
  line-height: 1;
  font-size: max(16px, 1rem);
  margin-top: 0.5em;
}
@media screen and (max-width: 768px) {
  #sec10 .profileWrapper .textBox .name-spell {
    font-size: max(15px, 1rem);
  }
}
#sec10 .profileWrapper .textBox-contents {
  grid-area: 2/2/3/5;
  margin-top:-4em;
}
@media screen and (max-width: 1500px) {
  #sec10 .profileWrapper .textBox-contents {
    margin-bottom: 5vw;
  }
}
@media screen and (max-width: 1300px) {
  #sec10 .profileWrapper .textBox-contents {
    margin-top:-6em;
    margin-bottom: 6vw;
  }
}
@media screen and (max-width: 950px) {
  #sec10 .profileWrapper .textBox-contents {
    margin-top:-5em;
  }
}
@media screen and (max-width: 768px) {
  #sec10 .profileWrapper .textBox-contents {
    grid-area: 2/2/4/5;
	margin-bottom: 7vw;
	margin-top: -3em;
  }
}
#sec10 .profileWrapper .textBox-contents p {
  font-size: max(15px, 0.9375rem);
}
@media screen and (max-width: 768px) {
  #sec10 .profileWrapper .textBox-contents p {
    font-size: max(14px, 0.9333rem);
  }
}

/***********************

カラー

***********************/
/***********************

サイズ

***********************/
/***********************

flex box

***********************/
/***********************

レスポンシブ

***********************/
/***********************

フォント

***********************/
#sv {
  margin-top: min(82px, 4.166vw);
  padding-bottom: min(30px, 1.562vw);
}
@media screen and (max-width: 768px) {
  #sv {
    max-width: 100%;
    padding-bottom: max(20px, 2.604vw);
  }
}
#sv .svcontents {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  padding-bottom: min(30px, 1.562vw);
}
@media screen and (max-width: 768px) {
  #sv .svcontents {
    flex-direction: column;
    align-items: flex-start;
  }
}
#sv .svcontents .titleBox span {
  font-size: clamp(16px, 1.125rem, 18px);
  font-weight: bold;
  font-family: "Zen Maru Gothic", sans-serif;
}
@media screen and (max-width: 768px) {
  #sv .svcontents .titleBox span {
    font-size: max(12px, 0.8rem);
  }
}
#sv .svcontents .titleBox h2 {
  font-size: min(90px, 2.625rem);
  font-weight: bold;
  margin-bottom: 0;
  line-height: 1;
  padding-top: min(20px, 1.041vw);
}
@media screen and (max-width: 768px) {
  #sv .svcontents .titleBox h2 {
    font-size: max(40px, 2.666rem);
    padding-top: 10px;
  }
}
#sv .svcontents .pcCatNav {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
@media screen and (max-width: 768px) {
  #sv .svcontents .pcCatNav {
    display: none;
  }
}
#sv .svcontents .pcCatNav li a {
  font-weight: bold;
  font-size: clamp(14px, 0.9375rem, 15px);
}
#sv .svcontents .pcCatNav li + li {
  padding-left: min(100px, 5.208vw);
}
#sv .svcontents .pcCatNav li:last-of-type {
  padding-right: min(35px, 1.822vw);
}
#sv .svcontents .pcCatNav li.active a {
  color: #0372b2;
}
#sv .svcontents .spCatNav {
  width: 50%;
  max-width: 180px;
  margin-top: max(50px, 6.5104vw);
  position: relative;
}
#sv .svcontents .spCatNav::before {
  position: absolute;
  content: "";
  width: 0;
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-top: 8px solid #000;
  right: 15px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1;
}
#sv .svcontents .spCatNav select,
#sv .svcontents .spCatNav option {
  padding: 10px 15px;
  font-size: max(15px, 1rem);
  font-weight: bold;
  width: 100%;
}
#sv .svcontents .spCatNav select {
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  outline: none;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  border-radius: 30px;
  border: solid 1px #999;
  position: relative;
  background-color: #FFF;
}
#sv .svcontents .spCatNav select::-ms-expand {
  display: none;
}
#sv .svcontents .spCatNav select option {
  border-radius: 10px;
}
#sv .svcontents .spCatNav select option.active {
  color: #0372b2;
}

.BlogContentsBox {
  padding-top: min(80px, 4.166vw);
}
@media screen and (max-width: 768px) {
  .BlogContentsBox {
    max-width: 100%;
  }
}
.BlogContentsBox .BlogContentsList {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-gap: min(60px, 3.125vw) min(25px, 1.302vw);
}
@media screen and (max-width: 768px) {
  .BlogContentsBox .BlogContentsList {
    grid-template-columns: 1fr 1fr;
    grid-gap: max(60px, 7.812vw) max(25px, 3.255vw);
  }
}
@media screen and (max-width: 450px) {
  .BlogContentsBox .BlogContentsList {
    grid-template-columns: 1fr;
    grid-gap: max(30px, 6.666vw) 0;
  }
}
.BlogContentsBox .BlogContentsList-item__dataList {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 10px;
}
@media screen and (max-width: 768px) {
  .BlogContentsBox .BlogContentsList-item__dataList {
    margin-bottom: 10px;
  }
}
.BlogContentsBox .BlogContentsList-item__dataList-date {
  font-size: 14px;
}
@media screen and (max-width: 768px) {
  .BlogContentsBox .BlogContentsList-item__dataList-date {
    font-size: max(14px, 0.933rem);
  }
}
.BlogContentsBox .BlogContentsList-item__dataList-date.NEW {
  padding-left: calc(34px + 0.8em);
  position: relative;
}
@media screen and (max-width: 768px) {
  .BlogContentsBox .BlogContentsList-item__dataList-date.NEW {
    padding-left: max(45px, 5.859vw);
  }
}
.BlogContentsBox .BlogContentsList-item__dataList-date.NEW::before {
  position: absolute;
  content: "NEW";
  font-size: 14px;
  font-weight: bold;
  color: #cdaf50;
  left: 0;
  top: 0;
}
@media screen and (max-width: 768px) {
  .BlogContentsBox .BlogContentsList-item__dataList-date.NEW::before {
    font-size: max(14px, 0.933rem);
  }
}
.BlogContentsBox .BlogContentsList-item__dataList-cat {
  font-weight: bold;
  color: #fff;
  background: #000;
  padding: 5px min(15px, .7812vw);
  border-radius: 50px;
  min-width: 72px;
  text-align: center;
  font-size: 14px;
  margin-left: min(25px, 1.302vw);
}
@media screen and (max-width: 768px) {
  .BlogContentsBox .BlogContentsList-item__dataList-cat {
    font-size: max(12px, 0.8rem);
    padding: 4px 5px;
  }
}
.BlogContentsBox .BlogContentsList-item figure {
  overflow: hidden;
  padding-top: 62.25%;
  position: relative;
  width: 100%;
  z-index: 0;
  box-shadow: 3px 3px 6px #c8c9cc, -3px -3px 6px #f2f6f7;
  margin-bottom: min(20px, 1.0416vw);
}
@media screen and (max-width: 768px) {
  .BlogContentsBox .BlogContentsList-item figure {
    margin-bottom: max(20px, 2.604vw);
  }
}
@media screen and (max-width: 450px) {
  .BlogContentsBox .BlogContentsList-item figure {
    margin-bottom: max(20px, 4.444vw);
  }
}
.BlogContentsBox .BlogContentsList-item figure img {
  display: block;
  height: 100%;
  left: 0;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 0;
  transition: transform 0.25s;
  width: 100%;
}
.BlogContentsBox .BlogContentsList-item__ttl {
  font-size: 15px;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  .BlogContentsBox .BlogContentsList-item__ttl {
    font-size: max(15px,1rem);
  }
}
.BlogContentsBox .BlogContentsList-item:hover figure img {
  transform: scale(1.15);
  opacity: 0.9;
}

/***********************
single
**********************/
#single .breadcrumb {
  margin-top: calc(75px + 1.8em);
}
#single section {
  padding-top: min(80px, 4.166vw);
}
@media screen and (max-width: 768px) {
  #single section {
    padding-top: max(60px, 7.812vw);
  }
}
@media screen and (max-width: 450px) {
  #single section {
    padding-top: max(60px, 13.33vw);
  }
}
#single .contentsWrapper-item__dataList {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: min(50px, 2.604vw);
}
#single .contentsWrapper-item__dataList-date {
  font-size: 14px;
}
#single .contentsWrapper-item__dataList-date.NEW {
  padding-left: calc(34px + 0.8em);
  position: relative;
}
@media screen and (max-width: 768px) {
  #single .contentsWrapper-item__dataList-date.NEW {
    padding-left: max(45px, 5.859vw);
  }
}
#single .contentsWrapper-item__dataList-date.NEW::before {
  position: absolute;
  content: "NEW";
  font-size: 14px;
  font-weight: bold;
  color: #cdaf50;
  left: 0;
  top: 0;
}
#single .contentsWrapper-item__dataList-cat {
  font-weight: bold;
  color: #fff;
  background: #000;
  padding: 5px min(15px, .7812vw);
  border-radius: 50px;
  min-width: 72px;
  text-align: center;
  font-size: 14px;
  margin-left: min(25px, 1.302vw);
}
@media screen and (max-width: 768px) {
  #single .contentsWrapper-item__dataList-cat {
    padding: 4px 5px;
  }
}
#single .contentsWrapper-item__ttl {
  font-size: clamp(18px, 1.875rem, 30px);
  font-weight: bold;
  line-height: 1.8;
  border-bottom: min(5px, .2604vw) solid #606060;
  -o-border-image: linear-gradient(to right, #606060 0%, #dbdbdb 100%);
     border-image: linear-gradient(to right, #606060 0%, #dbdbdb 100%);
  border-image-slice: 1;
  margin-bottom: min(80px, 4.166vw);
}
@media screen and (max-width: 768px) {
  #single .contentsWrapper-item__ttl {
    font-size: max(16px, 1.066rem);
    margin-bottom: max(25px, 3.255vw);
    padding-bottom: 5px;
    border-bottom: 2.5px solid #606060;
  }
}
@media screen and (max-width: 450px) {
  #single .contentsWrapper-item__ttl {
    margin-bottom: max(25px, 5.555vw);
  }
}
#single .contentsWrapper-item figure {
  box-shadow: 3px 3px 6px #c8c9cc, -3px -3px 6px #f2f6f7;
  margin-bottom: min(60px, 3.125vw);
}
@media screen and (max-width: 768px) {
  #single .contentsWrapper-item figure {
    margin-bottom: max(20px, 2.604vw);
  }
}
@media screen and (max-width: 450px) {
  #single .contentsWrapper-item figure {
    margin-bottom: max(20px, 4.444vw);
  }
}
#single .contentsWrapper-item__content img {
  width: auto;
}
#single .contentsWrapper-item__content p {
  font-size: clamp(14px, 0.9375rem, 15px);
  margin-bottom: 1em;
}
@media screen and (max-width: 768px) {
  #single .contentsWrapper-item__content p {
    font-size: max(14px, 0.9333rem);
  }
}
#single .contentsWrapper-item__content .no_bullets {
  padding: min(25px, 1.302vw);
}
@media screen and (max-width: 768px) {
  #single .contentsWrapper-item__content .no_bullets {
    padding: max(15px, 1.953vw);
  }
}
@media screen and (max-width: 450px) {
  #single .contentsWrapper-item__content .no_bullets {
    padding: 15px;
  }
}
#single .contentsWrapper-item__content .no_bullets .toc_title {
  font-weight: bold;
  text-align: left;
  border-bottom: dashed 1px #757575;
  padding-left: min(25px, 1.302vw);
  position: relative;
}
@media screen and (max-width: 768px) {
  #single .contentsWrapper-item__content .no_bullets .toc_title {
    padding-left: 15px;
    font-size: max(14px, 0.9333rem);
  }
}
#single .contentsWrapper-item__content .no_bullets .toc_title::before {
  position: absolute;
  content: "";
  width: min(15px, .7812vw);
  height: min(15px, .7812vw);
  background: linear-gradient(to right, #606060, #dbdbdb);
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
@media screen and (max-width: 768px) {
  #single .contentsWrapper-item__content .no_bullets .toc_title::before {
    width: 10px;
    height: 10px;
  }
}
#single .contentsWrapper-item__content .no_bullets .toc_title .toc_toggle {
  display: none;
}
#single .contentsWrapper-item__content .no_bullets .toc_list {
  counter-reset: item;
  font-size: clamp(13px, 0.9375rem, 15px);
}
@media screen and (max-width: 768px) {
  #single .contentsWrapper-item__content .no_bullets .toc_list {
    font-size: max(14px, 0.9333rem);
  }
}
#single .contentsWrapper-item__content .no_bullets .toc_list .toc_number {
  position: relative;
  padding-right: 1px;
  margin-right: 5px;
}
#single .contentsWrapper-item__content .no_bullets .toc_list .toc_number::before {
  position: absolute;
  content: "";
  width: 2px;
  height: 0.9em;
  top: 0.2em;
  right: min(-4px, -.2083vw);
  background: #0372b2;
}
#single .contentsWrapper-item__content h1 {
  margin: min(30px, 1.562vw) auto;
  padding: min(15px, .7812vw);
  background: #eaedf3;
  border-top: solid 2px #091544;
  border-bottom: solid 2px #091544;
}
@media screen and (max-width: 768px) {
  #single .contentsWrapper-item__content h1 {
    margin: max(15px, 1.953vw) auto;
    padding: max(15px, 1.953vw);
  }
}
@media screen and (max-width: 450px) {
  #single .contentsWrapper-item__content h1 {
    margin: 15px auto;
    padding: 15px;
  }
}
#single .contentsWrapper-item__content h1 span {
  font-size: clamp(16px, 1.25rem, 20px);
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  #single .contentsWrapper-item__content h1 span {
    font-size: max(20px, 1.333rem);
  }
}
#single .contentsWrapper-item__content h2 {
  border-bottom: solid 2px #606060;
  margin: min(20px, 1.0416vw) auto;
}
@media screen and (max-width: 768px) {
  #single .contentsWrapper-item__content h2 {
    margin: max(15px, 1.953vw) auto;
  }
}
@media screen and (max-width: 768px) {
  #single .contentsWrapper-item__content h2 {
    margin: 15px auto;
  }
}
#single .contentsWrapper-item__content h2 span {
  font-size: clamp(15px, 1.125rem, 18px);
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  #single .contentsWrapper-item__content h2 span {
    font-size: max(18px, 1.2rem);
  }
}
#single .contentsWrapper-item__content blockquote {
  padding: min(35px, 1.822vw) min(15px, .7812vw) min(15px, .7812vw) min(25px, 1.302vw);
  background: #f7f7f7;
  position: relative;
}
#single .contentsWrapper-item__content blockquote::before {
  position: absolute;
  content: "";
  width: min(30px, 1.562vw);
  height: min(30px, 1.562vw);
  left: 0;
  top: -0.6em;
  background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='utf-8'%3F%3E%3C!-- Generator: Adobe Illustrator 27.7.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' id='_レイヤー_2' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 128 96.2' style='enable-background:new 0 0 128 96.2;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0%7Bfill:%23606060;%7D%0A%3C/style%3E%3Cg id='_1'%3E%3Cpolygon class='st0' points='128,41 101.1,41 116.9,0 94.3,0 72.8,41 72.8,96.2 128,96.2 '/%3E%3Cpolygon class='st0' points='55.2,96.2 55.2,41 28.2,41 44.1,0 21.5,0 0,41 0,96.2 '/%3E%3C/g%3E%3C/svg%3E%0A");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

/***********************
ページネーション
**********************/
.pageNav {
  padding-top: min(160px, 8.333vw);
}
@media screen and (max-width: 768px) {
  .pageNav {
    padding-top: max(100px, 13.02vw);
  }
}
@media screen and (max-width: 450px) {
  .pageNav {
    padding-top: max(100px, 22.22vw);
  }
}
.pageNav .page-numbers {
  display: flex;
  justify-content: center;
  align-items: center;
}
.pageNav .page-numbers li {
  line-height: 1;
}
.pageNav .page-numbers li a,
.pageNav .page-numbers li span {
  font-size: clamp(13px, 0.9375rem, 15px);
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .pageNav .page-numbers li a,
  .pageNav .page-numbers li span {
    font-size: max(15px, 0.933rem);
  }
}
.pageNav .page-numbers li .current {
  font-weight: bold;
  color: #fff;
  padding: min(10px, .5208vw) min(12px, .625vw);
  background: linear-gradient(to right, #606060, #dbdbdb);
}
@media screen and (max-width: 768px) {
  .pageNav .page-numbers li .current {
    padding: 7px 10px;
  }
}
.pageNav .page-numbers li + li {
  padding-left: min(25px, 1.302vw);
}
@media screen and (max-width: 768px) {
  .pageNav .page-numbers li + li {
    padding-left: 20px;
  }
}

.single-pageNav {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: min(100px, 5.208vw);
}
@media screen and (max-width: 768px) {
  .single-pageNav {
    padding-top: max(100px, 13.02vw);
  }
}
@media screen and (max-width: 450px) {
  .single-pageNav {
    padding-top: max(100px, 22.22vw);
  }
}
.single-pageNav a {
  font-size: clamp(13px, 0.9375rem, 15px);
}
@media screen and (max-width: 768px) {
  .single-pageNav a {
    font-size: max(15px, 0.933rem);
  }
}/*# sourceMappingURL=style.css.map */