:root {
  --gold-color: #BFB494;
  --base-font-family: "FOT-筑紫A丸ゴシック Std B", YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;
  --regular-font-family: "FOT-筑紫A丸ゴシック Std R", YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;
  --en-font-family: "Noto Sans JP", YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;
  --anime-transition: all .5s;
  --anime-opacity: .6;
  --content-width: calc(100vw - min(9.6vw, 36px));
}

html,
body {
  color: var(--black-color);
  font-family: var(--base-font-family);
  overflow-x: hidden;
}

html {
  font-size: 62.5%;

}

body {
  font-size: 30px;
  font-size: 3rem;
  line-height: 1.1;
  font-feature-settings: "palt";
  background-color: #D6CCAB;
  background: url(../images/background-sp.jpg) no-repeat center / cover;
}

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

a {
  color: #000;
  text-decoration: none;
  transition: var(--anime-transition);
}

a:hover {
  opacity: var(--anime-opacity);
}

ul {
  list-style: none;
}

h1,
h2,
h3,
h4 {
  font-weight: 400;
}

h1 {
  font-size: 6.3rem;
}

h2 {
  font-size: 11.254rem;
}

h3 {
  font-size: 10.53rem;
}

b,
strong,
.bold {
  font-family: YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;
}

.en {
  color: #000 !important;
  font-family: var(--en-font-family);
  font-style: italic;
  opacity: .15;
  white-space: nowrap;
  padding-right: 20px;
}

.container {
  width: var(--page-width);
  max-width: var(--max-page-width);
  margin: 0 auto;
  position: relative;
}

.d-flex {
  display: flex;
}

.d-grid {
  display: grid;
}

.align-items-center {
  align-items: center;
}

.align-items-start {
  align-items: flex-start;
}

.align-items-end {
  align-items: flex-end;
}

.justify-content-center {
  justify-content: center;
}

.justify-content-between {
  justify-content: space-between;
}

.justify-content-end {
  justify-content: flex-end;
}

.flex-direction-reverse {
  flex-direction: row-reverse;
}

.flex-direction-column {
  flex-direction: column;
}

.flex-wrap {
  flex-wrap: wrap;
}

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

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

[role=tabpanel] {
  display: none;
}

[role=tabpanel][aria-hidden=false] {
  display: block;
}

.swiper-wrapper {
  transition-timing-function: linear;
}

@media screen and (max-width: 768px) {

  .for-tab:not(.for-sp) {
    display: none;
  }

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

  .d-flex-sp {
    display: flex;
  }
}

@media screen and (min-width: 769px) {
  .container {
    max-width: var(--max-page-width);
  }

  .for-sp {
    display: none !important;
  }

  .for-tab {
    display: none;
  }

  .d-flex-pc {
    display: flex;
  }

  body {
    font-size: 30px;
    font-size: 3rem;
    background: #D6CCAB;
    /*     background: url(../images/background.jpg) no-repeat center / cover; */
  }

  a {
    transition: var(--anime-transition);
  }
}


/* ==================================
== .section-header
================================== */
.section-header {
  width: max-content;
  margin-bottom: 8.045813333333333vw;
  position: relative;
  z-index: 1;
  opacity: 0;
  transition: var(--anime-transition);
}

.section-header.active {
  opacity: 1;
}

.section-header h2 {
  color: #FFF;
  font-size: 6.4vw;
  letter-spacing: 0.1em;
  text-shadow: -0.4089066666666667vw 0.4089066666666667vw 0.4089066666666667vw rgba(0, 0, 0, .2);
}

.section-header span {
  font-size: 12.8vw;
  z-index: -1;
  right: -20px;
  bottom: 1.23958vw;
  position: absolute;
}

@media screen and (max-width: 768px) {}

@media screen and (min-width: 769px) {
  .section-header {
    width: max-content;
    margin-bottom: 8.48vw;
    /*     margin-bottom: 4.48vw; */
  }

  .section-header h2 {
    /*     font-size: 5.8614vw; */
    font-size: min(4.1vw, 80px);
    text-shadow: -0.50264vw 0.50264vw 0.50264vw rgba(0, 0, 0, .2);
  }

  .section-header span {
    font-size: min(8.8vw, 170px);
    bottom: min(1.56vw, 30px);
    /*
    font-size: 10.5588vw;
    bottom: 2.23958vw;
*/
  }
}

#sec-about,#sec-professional,#sec-product,#sec-instagram,#sec-company,#sec-access,#sec-contact{
	margin-top: -11vw;
	padding-top: 11vw;
}
/* ==================================
== header
================================== */
header {
  background: rgba(255, 255, 255, .3);
  top: 0;
  left: 0;
  width: 100vw;
  position: fixed;
  z-index: 99;
}

header nav ul li a {
  font-family: var(--bold-font-family);
  color: #FFF;
  font-size: 20px;
  text-align: center;
  position: relative;
  z-index: 1;
}


@media screen and (max-width: 768px) {
  header {
    background: none;
    width: 100vw !important;
    z-index: 999;
    top: 0;
    left: 0;
    position: fixed;
    align-items: center;
    justify-content: space-between;
  }

  .contact-icon {
    margin-left: auto;
    margin-right: 35px;
    position: relative;
    z-index: 99999;
  }

  header .nav_toggle {
    width: 40px;
    height: 40px;
    /* background: #d6ccab; */
    margin: 0 0 0 auto;
    position: relative;
    z-index: 999999;
    display: block;
  }

  header .nav_toggle.show {
    /* background: #c8bb8e; */
  }

  header .nav_toggle i {
    display: block;
    width: 20px;
    height: 2px;
    border-radius: 1px;
    background-color: #FFF;
    position: absolute;
    left: 50%;
    transform: translate(-50%, 0);
    transition: transform 0.5s, opacity 0.5s;
  }

  header .nav_toggle i:nth-child(1) {
    top: 12px;
  }

  header .nav_toggle i:nth-child(2) {
    top: 0;
    bottom: 0;
    margin: auto;
  }

  header .nav_toggle i:nth-child(3) {
    bottom: 12px;
  }


  .close:before,
  .close:after {
    left: 15px;
  }

  header .nav_toggle.show i:nth-child(1) {
    bottom: 0;
    top: 0;
    margin: auto;
    transform: translate(-50%, 0) rotate(-45deg);
  }

  header .nav_toggle.show i:nth-child(2) {
    opacity: 0;
  }

  header .nav_toggle.show i:nth-child(3) {
    bottom: 0;
    top: 0;
    margin: auto;
    transform: translate(-50%, 0) rotate(45deg);
  }

  header nav {
    position: fixed;
    top: 0;
    right: 0;
    padding: 70px 30px 30px;
    opacity: 0;
    visibility: hidden;
    margin: 0;
    width: 100vw;
    height: 100svh;
    background: url(../images/menu-sp.jpg) no-repeat center / cover;
    transition: opacity 0.5s, visibility 0.5s;
    z-index: 9999;
  }

  header nav.show {
    opacity: 1;
    visibility: visible;
  }

  header nav ul {
    flex-direction: column;
    gap: 0;
  }

  header nav ul li {
    width: 100%;
    margin: 0 0 8svh;
    line-height: 1;
    position: relative;
  }

  header nav ul li a {
    text-shadow: 3px 3px 2px rgba(0, 0, 0, 0.1);
  }

  header nav ul li a .en {
    font-size: 20px;
    letter-spacing: 0;
    text-indent: 0;
    display: block;
    bottom: -10px;
    position: absolute;
    z-index: -1;
  }

  header nav ul li:nth-child(1) a .en {
    right: -5px;
  }

  header nav ul li:nth-child(2) a .en {
    right: -35px;
  }

  header nav ul li:nth-child(3) a .en {
    right: -40px;
  }

  header nav ul li:nth-child(4) a .en {
    right: -20px;
  }

  header nav ul li:nth-child(5) a .en {
    right: -35px;
  }

  header nav ul li:nth-child(6) a .en {
    right: -20px;
  }

  .nav-logo-sp {
    width: 42px;
    right: 20px;
    bottom: 20px;
    position: absolute;
  }
}

@media screen and (min-width: 769px) {
  header {
    background: var(--gold-color);
  }

  header nav {
    /*     height: 6.71875vw; */
    height: min(6vw, 116px);
    max-height: 130px;
  }

  header nav ul {
    /*     width: 89.6875vw; */
    width: min(89.5vw, 1720px);
  }

  header nav ul li:not(:last-child):after {
    content: "";
    width: 1px;
    height: 100%;
    background: #FFF;
    top: 0;
    right: -1.4vw;
    position: absolute;
    z-index: 1;
  }

  header nav ul li a {
    color: #FFF;
    /*     font-size: 1.634375vw; */
    font-size: 1.3vw;
    letter-spacing: 0.14em;
  }

  header nav ul li a .en {
    /*     font-size: 2.34375vw; */
    font-size: min(1.56vw, 30px);
    letter-spacing: 0;
    text-indent: 0;
    margin-bottom: min(-0.52vw, -10px);
    display: block;
    position: relative;
    z-index: -1;
  }
}


/* ==================================
== kv
================================== */
#kv {
  height: 87.39773333333332vw;
  position: relative;
}

.kv__image {
  width: 89.22399999999999vw;
  height: 75.66933333333333vw;
  top: 11.189333333333334vw;
  background: no-repeat center/contain;
  background-image: url(../images/kv-sp.png);
  right: 0;
  position: absolute;
  z-index: 1;
  pointer-events: none;
}

.kv__logo {
  width: 9.664vw;
  top: 12.340053333333332vw;
  left: 7.782026666666667vw;
  position: absolute;
  z-index: 1;
}

.kv__text {
  color: #FFF;
  font-size: 6.653333333333333vw;
  top: 48.522933333333334vw;
  right: 3.2138133333333334vw;
  position: absolute;
  z-index: 1;
}

.contact-btn {
  /*
  width: 18.1657vw;
  height: 18.1657vw;
*/
  width: min(9vw, 174px);
  height: min(9vw, 174px);
  /*
  top: 68.14453333333333vw;
  right: 1.29664vw;
*/
  bottom: min(2.6vw, 50px);
  right: min(2.6vw, 50px);
  position: fixed;
  z-index: 100;
  border-radius: 9.08285vw;
  background: radial-gradient(ellipse at center, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0) 50%);
  display: flex;
  align-items: center;
  justify-content: center;
}

.contact-btn img {
  width: 10.046vw;
}

@media screen and (max-width: 768px) {

  .contact-btn {
    width: 18.5vw;
    height: 18.5vw;
    bottom: 5vw;
    right: 5vw;
  }

  .contact-btn img {
    width: 100%;
    height: auto;
  }

}

@media screen and (min-width: 769px) {
  #kv {
    height: 59.1213vw;
  }

  .kv__image {
    width: 70.11562500000001vw;
    height: 50.60052083333333vw;
    top: 8.000109375000001vw;
    background-image: url(../images/kv.png);
  }

  .kv__logo {
    width: min(5.4vw, 105px);
    top: 11.76875vw;
    left: 14.18vw;
    position: absolute;
  }

  .kv__text {
    /*     font-size: 3.28125vw; */
    font-size: min(2.6vw, 50px);
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    top: 11.76875vw;
    left: min(20vw, 500px);
    right: auto;
  }

  /*
  .contact-btn {
    top: 38.08119791666667vw;
	top:  44vw;
  }
*/

}


/* ==================================
== about
================================== */
#about {
  padding: 11.683226666666666vw 0 11.009786666666667vw;
  position: relative;
}

#about .section-header {
  margin-left: 7.492186666666667vw;
}

#about .section-header span {
  transform: translateX(4.5vw);
}

#about .section-content__block {
  width: 100%;
  position: relative;
}

#about .section-content__block:last-child {
  margin-bottom: 0;
}

#about .section-content__block__inner {
  width: var(--content-width);
  margin: auto;
}


#about .section-content__block::after {
  transition: var(--anime-transition);
}

#about .section-content__block:nth-child(even)::after {
  transform: translateX(-100%);
}

#about .section-content__block:nth-child(odd)::after {
  transform: translateX(100%);
}

#about .section-content__block.active:nth-child(even)::after,
#about .section-content__block.active:nth-child(odd)::after {
  transform: translateX(0);
}

#about .section-content__block:first-child::after {
  content: "";
  width: 34.784vw;
  height: 48.31999999999999vw;
  background: url(../images/about-1-sp.png) no-repeat center / contain;
  right: 0;
  top: -22.06501333333333vw;
  position: absolute;
  z-index: -1;
}

#about .section-content__block:nth-child(2)::after {
  content: "";
  width: 33.536vw;
  height: 40.576vw;
  background: url(../images/about-2-sp.png) no-repeat center / contain;
  left: 0;
  top: -20.047866666666668vw;
  position: absolute;
  z-index: -1;
}

#about .section-content__block:nth-child(3)::after {
  content: "";
  width: 33.95466666666667vw;
  height: 41.856vw;
  background: url(../images/about-3-sp.png) no-repeat center / contain;
  right: 0;
  top: -32.02632vw;
  position: absolute;
  z-index: -1;
}

#about .section-content__block h3 {
  color: #FFF;
  font-size: 22px;
  text-shadow: 0.5333333333333333vw 0.5333333333333333vw 0.26666666666666666vw rgba(0, 0, 0, .3);
  margin-bottom: 4.0104vw;
}

#about .section-content__block h4 {
  font-size: 17px;
  margin-bottom: 4.956133333333333vw;
}

#about .section-content__block p {
  font-size: 14px;
  line-height: 1.6;
}


@media screen and (max-width: 768px) {
  #about .section-header {
    margin-bottom: 18.029333333333334vw;
  }

  #about .section-content__block:nth-child(2) .section-content__block__inner {
    text-align: right;
  }

  #about .section-content__block:first-child {
    margin-bottom: 25.51597333333333vw;
  }

  #about .section-content__block:nth-child(2) {
    margin-bottom: 36.50069333333333vw;
  }
  #about .section-content__block p{
	  font-feature-settings: "palt";
	  text-align: justify;
	  text-justify: inter-ideograph; 
	  word-break: break-all;
  }
  #about .section-content__block p.sp-right{
	 text-align: right; 
  }
    
}

@media screen and (min-width: 769px) {
  #about {
    padding: min(10vw, 203px) 0 9.21475vw;
  }

  #about::before {
    content: "";
    background-image: url(../images/bg-parts/wave/bg1.svg);
    background-repeat: no-repeat;
    background-size: 52vw auto;
    width: 52vw;
    height: 67.1vw;
    position: absolute;
    left: 0;
    top: min(7vw, 159px);
    z-index: -1;
  }

  #about::after {
    content: "";
    background-image: url(../images/bg-parts/wave/bg2.svg);
    background-repeat: no-repeat;
    background-size: 68vw auto;
    width: 68vw;
    height: 81.9vw;
    position: absolute;
    right: 0;
    bottom: min(-10vw, -192px);
    z-index: -1;
  }

  #about .section-header {
    margin-left: 9.39166vw;
  }

  #about .section-content__block {
    /*     margin-bottom: 5.3125vw; */
    margin-bottom: min(11.3vw, 218px);
  }

  #about .section-content__block__inner {
    text-align: center;
    width: max-content;
    position: relative;
  }

  #about .section-content__block:first-child .section-content__block__inner {
    margin-left: 10.36458vw;
  }

  #about .section-content__block:nth-child(2) .section-content__block__inner {
    margin-right: 5.9375vw;
    margin-left: auto;
  }

  #about .section-content__block:nth-child(3) .section-content__block__inner {
    margin-left: 5.9375vw;
  }

  #about .section-content__block:first-child::after {
    /*
    width: 34.7239vw;
    height: 43.4755vw;
*/
    width: min(30vw, 583px);
    height: min(37.4vw, 719px);
    background: url(../images/about-1.png) no-repeat center / contain;
    right: 0;
    top: 0;
  }

  #about .section-content__block:nth-child(2)::after {
    /*
    width: 35.765625vw;
    height: 43.4755vw;
*/
    width: min(30vw, 583px);
    height: min(37.7vw, 724px);
    background: url(../images/about-2.png) no-repeat center / contain;
    left: 0;
    top: 0;
  }

  #about .section-content__block:nth-child(3)::after {
    /*
    width: 39.5546875vw;
    height: 34.32708vw;
*/
    width: min(34.7vw, 667px);
    height: min(28.5vw, 549px);
    background: url(../images/about-3.png) no-repeat center / contain;
    right: 0;
    top: 8.929271vw;
  }

  #about .section-content__block h3 {
    /*     font-size: 5.484375vw; */
    font-size: min(4vw, 77px);
    text-shadow: -0.50264vw 0.50264vw 0.50264vw rgba(0, 0, 0, .2);
    margin-bottom: 4.0104vw;
  }

  #about .section-content__block h4 {
    font-size: min(2.4vw, 46px);
    margin-bottom: 0.95vw;
    /*
    font-size: 2.7421875vw;
    margin-bottom: 0.95vw;
*/
  }

  #about .section-content__block p {
    font-size: min(1.3vw, 25px);
    /*     font-size: 1.77552vw; */
    line-height: 2.3;
    font-weight: 100;
    letter-spacing: .1em;
  }
}


/* ==================================
== professional
================================== */
#professional {
  padding: 11.683226666666666vw 0 11.009786666666667vw;
  position: relative;
}


#professional .section-header {
  margin-left: auto;
  margin-right: 15.198586666666666vw;
}

#professional .section-header span {
  transform: translateX(14vw);
}

#professional .section-content__block {
  margin-bottom: 12.38312vw;
  text-align: center;
  position: relative;
}

#professional .section-content__block:last-of-type {
  margin-bottom: 0;
}

#professional .section-content__block h3 {
  color: #FFF;
  font-size: 22px;
  text-shadow: 0.5333333333333333vw 0.5333333333333333vw 0.26666666666666666vw rgba(0, 0, 0, .3);
  margin-bottom: 4.0104vw;
}

#professional .section-content__block h4 {
  font-size: 17px;
  margin: 0 auto 4.956133333333333vw;
  width: max-content;
  position: relative;
}

#professional .section-content__block h4::before,
#professional .section-content__block h4::after {
  content: "〜";
  top: 50%;
  position: absolute;
}

#professional .section-content__block h4::before {
  left: 0;
  transform: translate(calc((1.7748vw + 100%) * -1), -50%);
}

#professional .section-content__block h4::after {
  right: 0;
  transform: translate(calc(1.7748vw + 100%), -50%);
}

#professional .section-content__block>p {
  font-size: 14px;
  line-height: 1.9;
  letter-spacing: 0.1em;
  text-align: left;
  width: var(--content-width);
  margin: 0 auto 6.890533333333333vw;
  font-feature-settings: "palt";
  text-align: justify;
  text-justify: inter-ideograph; 
  word-break: break-all;
  
	@media (max-width: 767px) {
	font-feature-settings: "palt";
	text-align: justify;
	text-justify: inter-ideograph; 
	word-break: break-all;
	}

}

#professional .section-content__block.block01 img {
  width: 72.03653333333332vw;
  margin: 0 auto;
  display: block;
}

#professional .section-content__block .movie_area {
  width: min(75vw, 900px);
  margin: auto;
}

#professional .section-content__block .movie_area video {
  width: 100%;
  height: auto;
}

#professional .loop-slide .swiper-wrapper {
  align-items: center;
}

#professional .section-content__block.block03 img {
  width: 75%;
  margin: 0 auto;
  display: block;
}

.professional-slide {
  margin-bottom: 3.4366399999999997vw;
  position: relative;
}

.professional-slide .swiper-container {
  width: 70.09376vw;
  margin: auto;
  overflow: hidden;
}

.professional-slide img {
  box-shadow: 1.55312vw 1.55312vw 0.77656vw rgba(0, 0, 0, .2);
  width: 82.17693888339077%;
  margin: 0 auto 4.558666666666666vw;
  display: block;
}

.professional-slide h5 {
  font-size: 4.533333333333333vw;
  margin-bottom: 1vw;
}

.professional-slide p {
  font-size: 12px;
  font-family: var(--regular-font-family);
  line-height: 1.6;
  text-align: justify;
}

.professional-slide .swiper-horizontal>.swiper-pagination-bullets,
.professional-slide .swiper-pagination-bullets.swiper-pagination-horizontal,
.professional-slide .swiper-pagination-custom,
.professional-slide .swiper-pagination-fraction {
  bottom: -4.8255vw !important;
}

#professional .section-content__block__inner {
  display: grid;
  grid-template-columns: repeat(2, auto);
  grid-template-rows: repeat(3, auto);
  grid-column-gap: 4.9vw;
  grid-row-gap: 3.4263466666666664vw;
  width: var(--content-width);
  margin: 30px auto 0;
}

#professional .section-content__block__inner__1 {
  grid-area: 1 / 1 / 2 / 2;
}

#professional .section-content__block__inner__2 {
  grid-area: 2 / 1 / 3 / 2;
}

#professional .section-content__block__inner__3 {
  grid-area: 1 / 2 / 3 / 3;
}

#professional .section-content__block__inner__4 {
  grid-area: 3 / 1 / 4 / 3;
}

#professional .section-content__block__inner h5 {
  font-size: 15px;
  letter-spacing: 0.04em;
  text-align: left;
}

 #professional .section-content__block__inner .mt {
    margin-top: 1em;
  }
#professional .section-content__block__inner p {
  line-height: 1.6 !important;
  font-size: 12px;
  text-align: left;
  font-family: var(--regular-font-family);

}
@media screen and (max-width: 768px) {
#professional .section-content__block__inner p.note{
padding-left: 1em;
text-indent: -1em;	
	}

}


#professional .section-content__block__inner img {
  box-shadow: 0.62186vw 0.62186vw 0.310932vw rgba(0, 0, 0, .2);
}

@media screen and (max-width: 768px) {
  #professional .section-content__block__inner__4 p {
    font-family: var(--regular-font-family);
    font-size: 10px;
    line-height: 1.175;
    letter-spacing: 0.1em;
  }
}

@media screen and (min-width: 769px) {
  #professional {
    /*     padding: 8.989vw 0 9.21475vw; */
    padding: min(31.25vw, 600px) 0;
  }

  #professional .section-content__block.block03::before {
    content: "";
    background-image: url(../images/bg-parts/wave/bg5.svg);
    background-repeat: no-repeat;
    background-size: 52.5vw auto;
    width: 52.5vw;
    height: 97.8vw;
    position: absolute;
    left: 0;
    top: min(-5vw, -96px);
    z-index: -1;
  }

  #professional .section-content__block.block04::before {
    content: "";
    background-image: url(../images/bg-parts/wave/bg6.svg);
    background-repeat: no-repeat;
    background-size: 64.7vw auto;
    width: 64.7vw;
    height: 83.8vw;
    position: absolute;
    right: 0;
    top: min(25vw, 480px);
    z-index: -1;
  }

  #professional::before {
    content: "";
    background-image: url(../images/bg-parts/wave/bg3.svg);
    background-repeat: no-repeat;
    background-size: 60vw auto;
    width: 60vw;
    height: 55vw;
    position: absolute;
    left: 0;
    top: min(27vw, 668px);
    z-index: -1;
  }

  #professional::after {
    content: "";
    background-image: url(../images/bg-parts/wave/bg4.svg);
    background-repeat: no-repeat;
    background-size: 62.5vw auto;
    width: 62.5vw;
    height: 112.5vw;
    position: absolute;
    right: 0;
    top: min(50vw, 1160px);
    z-index: -1;
  }

  #professional .section-header {
    margin-right: 3.4885vw;
  }

  #professional .section-header span {
    transform: translateX(-2.60416vw);
  }

  #professional .section-content__block {
    /*     margin-bottom: 7.23958vw; */
    margin-bottom: min(18.2vw, 350px);
  }

  #professional .section-content__block h3 {
    color: #FFF;
    /*     font-size: 5.484375vw; */
    font-size: min(4vw, 77px);
    margin-bottom: 4.0104vw;
  }

  #professional .section-content__block h4 {
    /*     font-size: 2.7421875vw; */
    font-size: min(2.4vw, 46px);
    margin: 0 auto 1.7vw;
    width: max-content;
    position: relative;
    z-index: 1;
  }

  #professional .section-content__block h4::before,
  #professional .section-content__block h4::after {
    content: "";
    background: #000;
    width: 1vw;
    height: 2px;
    border-radius: 1px;
    top: 50%;
    position: absolute;
  }

  #professional .section-content__block h4::before {
    left: 0;
    transform: translate(calc((1vw + 0.2em) * -1), -50%);
  }

  #professional .section-content__block h4::after {
    right: 0;
    transform: translate(calc(1vw + 0.2em), -50%);
  }

  #professional .section-content__block>p {
    /*     font-size: 1.77552vw; */
    font-size: min(1.3vw, 25px);
    line-height: 2.3;
    letter-spacing: 0.1em;
    text-align: left;
    width: 69.55vw;
    margin: 0 auto 3.4375vw;
    font-family: var(--regular-font-family);
	font-feature-settings: "palt";
	text-align: justify;
	text-justify: inter-ideograph; 
	word-break: break-all;
  }

  #professional .section-content__block.block01 img {
    /*     width: 60.5729vw; */
    width: min(52.7vw, 1013px);
  }

  #professional .section-content__block.block03 img {
    width: 45.9635vw;
  }

  .professional-slide {
    margin-bottom: 9.134895vw;
  }

  .professional-slide .swiper-container {
    width: 77.846875vw;
  }

  .professional-slide img {
    width: 100%;
    box-shadow: 0.62186vw 0.62186vw 0.310932vw rgba(0, 0, 0, .2);
    margin-bottom: 1.291666vw;
  }

  .professional-slide h5 {
    /*     font-size: 2.49114vw; */
    font-size: min(1.78vw, 34px);
    margin-bottom: 1.5vw;
  }

  .professional-slide p {
    /*     font-size: 1.349479vw; */
    font-size: min(1.14vw, 22px);

  }

  #professional .section-content__block__inner {

/*
    grid-template-columns: repeat(3, auto);
    grid-template-rows: repeat(2, auto);
*/
/*
    grid-template-columns:3fr 1fr;
    grid-column-gap: 2.6vw;
    grid-row-gap: 1.6vw;
*/

	display: flex;
    width: 75vw;
    margin: auto;
  }
#professional .section-content__block__inner__3{
	width: 40%;	
}
/*
  #professional .section-content__block__inner__1 {
    grid-area: 1 / 1 / 2 / 2;
  }

  #professional .section-content__block__inner__2 {
    grid-area: 1 / 2 / 2 / 3;
  }

  #professional .section-content__block__inner__3 {
    grid-area: 1 / 3 / 3 / 4;
  }

  #professional .section-content__block__inner__4 {
    grid-area: 2 / 1 / 3 / 3;
  }
*/

  #professional .section-content__block__inner h5 {
    /*     font-size: 2.49114vw; */
    font-size: min(2.4vw, 46px);
    letter-spacing: 0.1em;
    margin-bottom: 1.2vw;
  }


  #professional .section-content__block__inner p {
    /*     font-size: 1.77552vw; */
    font-size: min(1.3vw, 25px);
    letter-spacing: 0.1em;
    text-align: left;
    font-family: var(--regular-font-family);
  }

  #professional .section-content__block__inner img {
    box-shadow: 0.62186vw 0.62186vw 0.310932vw rgba(0, 0, 0, .2);
  }
}


/* ==================================
== product
================================== */
#product {
  padding: 8.989vw 0 23.345729vw;
  position: relative;
}

#product .section-header {
  margin-left: 39.36994666666667vw;
}

#product .section-header span {
  transform: translateX(-3.5vw);
}

.product-slide {
  position: relative;
}

.product-slide .swiper-container {
  width: 74.31042666666667vw;
  margin: auto;
  overflow: hidden;
}

#product .product-slide p {
  font-family: var(--regular-font-family);
  font-size: 12px;
  width: max-content;
  margin: auto;
}

.product-slide .swiper-horizontal>.swiper-pagination-bullets,
.product-slide .swiper-pagination-bullets.swiper-pagination-horizontal,
.product-slide .swiper-pagination-custom,
.product-slide .swiper-pagination-fraction {
  bottom: -11.86vw !important;
}

#product .memo {
  text-align: right;
  margin-top: 3vw;
}

#product .memo small {
  font-family: var(--regular-font-family);
  font-size: 10px;
}


@media screen and (max-width: 768px) {
  #product .memo {
    width: var(--content-width);
  }
}

@media screen and (min-width: 769px) {

  #product::before {
    content: "";
    background-image: url(../images/bg-parts/wave/bg7.svg);
    background-repeat: no-repeat;
    background-size: 54.2vw auto;
    width: 54.2vw;
    height: 80.6vw;
    position: absolute;
    left: 0;
    top: min(-15vw, -288px);
    z-index: -1;

  }

  #product .section-header {
    margin-left: 35.15625vw;
  }

  .product-slide .swiper-container {
    width: 77.846875vw;
  }

  #product .product-slide img {
    width: 70%;
    margin: auto;
    display: block;
  }

  #product .product-slide p {
    font-size: min(1.45vw, 28px);
    /*     font-size: 1.6927vw; */
  }

  #product .memo small {
    margin-right: 7.042vw;
  }

  #product .memo small {
    font-size: 1.3494791666666668vw;
  }
}


/* ==================================
== instagram
================================== */
#instagram {
  padding: 8.989vw 0 9.21475vw;
  position: relative;
}

#instagram .section-header {
  margin-left: auto;
  margin-right: 1.979vw;
}

#instagram .section-header span {
  transform: translateX(-6.5vw);
}

@media screen and (max-width: 768px) {}

@media screen and (min-width: 769px) {}


/* ==================================
== company
================================== */
#company {
  padding: 8.989vw 0 0;
  position: relative;
}

#company .section-header {
  margin-left: 37.96701333333333vw;
}

#company .section-header span {
  transform: translateX(-2vw);
}

#company .section-content {
  width: 85.25706666666667vw;
  margin: auto;
}

#company dl {
  border-bottom: 1px solid #000;
  padding: 2.5vw 0 0.4vw;
}

#company dl:first-child {
  padding-top: 3.5vw;
}

#company dt {
  font-size: 2.666666666666667vw;
  font-family: var(--regular-font-family);
}

#company dd {
  font-size: 2.666666666666667vw;
  font-family: var(--regular-font-family);
}

#company .flex-content:last-child {
  width: 30.1512vw;
  margin-left: auto;
}

#company .flex-content:last-child img {
  box-shadow: 0.9982666666666667vw 0.9982666666666667vw 0.16637333333333332vw rgba(0, 0, 0, .15);
}

@media screen and (max-width: 768px) {
  #company dd {
    text-align: right;
  }

  #company dl {
    justify-content: space-between;
    padding-top: 0 !important;
  }

  #company .flex-content:first-child {
    width: 51.41vw;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }
}

@media screen and (min-width: 769px) {

  #company::before {
    content: "";
    background-image: url(../images/bg-parts/wave/bg8.svg);
    background-repeat: no-repeat;
    background-size: 55vw auto;
    width: 55vw;
    height: 73.2vw;
    position: absolute;
    right: 0;
    top: 5vw;
    z-index: -1;

  }

  #company .section-header {
    margin-left: 29.446614vw;
  }

  #company .section-content {
    /*      width: 71.1307vw; */
    width: 63.9vw;
  }

  #company .flex-content:last-child {
    width: 23vw;
  }

  #company .flex-content:last-child img {
    box-shadow: 0.62186vw 0.62186vw 0.310932vw rgba(0, 0, 0, .2);
  }

  #company dt {
    font-size: min(1.5vw, 29px);
    /*     font-size: 1.9526vw; */
    width: 9.5vw;
  }

  #company dd {
    font-size: min(1.96vw, 37px);
    /*     font-size: 2.386458vw; */
  }
}

/* ==================================
== access
================================== */
#access {
  padding: 10.87669vw 0 9.21475vw;
  position: relative;
}

#access .section-content {
  width: 85.25706666666667vw;
  margin: auto;
}

#access .logo {
  width: 40.8872vw;
  margin-bottom: 2vw;
}

#access h1 {
  font-size: 4vw;
  margin-bottom: .5em;
  font-family: var(--regular-font-family);
}

#access .address {
  font-size: 3.2vw;
  margin-bottom: 1em;
  font-family: var(--regular-font-family);
}

#access .tel {
  font-size: 3.4666666666666663vw;
  line-height: 1.3;
  font-family: var(--regular-font-family);
}

#access iframe {
  width: 35.41666vw;
  aspect-ratio: 1;
}

@media screen and (max-width: 768px) {
#access{
	margin-top: 10vw;
}
#access .logo {
  width: 30.8872vw;
  margin-bottom: 4vw;
}

  #access .section-header {
    margin-left: auto;
    margin-right: 3.979vw;
  }
	
}

@media screen and (min-width: 769px) {
  #access .section-header {
    margin-left: auto;
    margin-right: 26.04166vw;
  }

  #access .section-header span {
    transform: translateX(19.52vw);
  }

  #access .section-content {
    /*     width: 86.9552vw; */
    width: 70.2vw;
    margin: 0 auto;
  }

  #access .logo {
    /*     width: 33.4078vw; */
    width: min(18.8vw, 362px);
    margin-bottom: 2vw;
  }

  #access h1 {
    /*     font-size: 3.56875vw; */
    font-size: min(2.53vw, 48px);
    margin-bottom: 1vw;
    font-weight: 300;
  }

  #access .address {
    /*     font-size: 2.8552vw; */
    font-size: min(2vw, 38px);
    margin-bottom: 1vw;
    font-weight: 300;
  }

  #access .tel {
    /*     font-size: 3.289vw; */
    font-size: min(2.3vw, 45px);
    font-weight: 300;
  }

  #access iframe {
    width: 31vw;
    aspect-ratio: 1;
  }

}


/* ==================================
== contact
================================== */
#contact {
  padding: 8.989vw 0 9.21475vw;
  position: relative;
}

#contact .section-header {
  margin-left: auto;
  margin-right: 31.14829333333333vw;
}

#contact .section-header span {
  transform: translateX(-7.4118933333333334vw);
}

#contact .section-content .intro {
  font-size: 3.733333333333334vw;
  line-height: 1.75;
  margin-bottom: 3.54166vw;
  font-family: var(--regular-font-family);
}

.contact__info {
  margin: 0 auto;
  margin-bottom: 3.54166vw;
  font-family: var(--regular-font-family);
  display: flex;
  justify-content: center;
  
  @media (max-width: 767px) {
  margin-bottom: 8vw;
  }
  
}
.contact__info .wrap{
	text-align: right;
	
}
.contact__info__tel {
  font-size: 6.962666666666667vw;
  margin-bottom: 0.84vw;
}

.contact__info__time {
  font-size: 4.506666666666667vw;
/*
  margin: 0 auto;
  width: max-content;
*/
}

.contact__info__time small {
  font-size: 3.1119999999999997vw;
  text-align: right;
  display: block;
}

#contact .section-content form {
  width: 87.01520000000001vw;
  margin: auto;
}

/*
#contact .section-content form dl {
  position: relative;
  margin-bottom: 3.5677vw;
  font-size: 3.733333333333334vw;
}

#contact .section-content form dl:first-child {
  width: 75.6112vw;
  margin-left: auto;
  margin-right: auto;
}

#contact .section-content form dl dt {
  position: relative;
  font-family: var(--regular-font-family);
}

#contact .section-content form dl:first-child dt {
  width: 60%;
}

#contact .section-content form dl:not(:first-child) dt {
  width: 44.10757354270672%;
  padding-right: 11vw;
  text-align: right;
}

#contact .section-content form dl dt span {
  color: #FFF;
  background: #DB0012;
  font-size: 1.805333333333333vw;
  padding: 0.7786666666666666vw 1.5665066666666665vw;
  display: inline-block;
  right: 4%;
  top: 50%;
  transform: translate(0, -50%);
  position: absolute;
  z-index: 1;
}

#contact .section-content form dl dd {
  gap: 2.93vw;
  font-family: var(--regular-font-family);
}

#contact .section-content form dl:not(:first-child) dd {
  width: 55.89242645729328%;
}

#contact .section-content form dl dd input[type="checkbox"] {
  position: relative;
  width: 2.4556vw;
  height: 2.4556vw;
  background: #FFF;
  margin-right: 0.4vw;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

#contact .section-content form dl dd input[type="checkbox"]:checked:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -58%) rotate(50deg);
  width: 0.7vw;
  height: 1.7vw;
  border-right: 1px solid #000;
  border-bottom: 1px solid #000;
  content: '';
}
*/
#contact .section-content form dl dt{
  font-size: min(1.59vw, 30px);
  margin-bottom: .5em;
  font-weight: bold;

	@media (max-width: 767px) {
	font-size: 3.733333333333334vw;
	}
  
}
#contact .section-content form dl dt span {
  color: #FFF;
  background: #DB0012;
  font-size: min(0.9vw, 18px);
  padding: .4em .7em;
  display: inline-block;
  margin-left: 1em;
  position: relative;
  top: -.2em;
  z-index: 1;

	@media (max-width: 767px) {
	font-size: 2.733333333333334vw;
	}
  
}
#contact .section-content form dl dd{
  font-size: min(1.59vw, 30px);
  margin-bottom: 1.8em;

	@media (max-width: 767px) {
	font-size: 3.733333333333334vw;
	}
  
}
#contact .section-content form dl dd .select{
	position: relative;
}
#contact .section-content form dl dd .select::after{
	content: "";
	width: 15px;
	height: 15px;
	border-top: 2px solid #000;
	border-right: 2px solid #000;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);	
	position: absolute;
	right: 20px;
	top: 50%;
	margin-top: -12px;

	@media (max-width: 767px) {
	width: 9px;
	height: 9px;
	right: 15px;
	margin-top: -6px;	
	}
	
}

#contact .section-content form select,
#contact .section-content form input[type="text"],
#contact .section-content form input[type="email"],
#contact .section-content form input[type="tel"],
#contact .section-content form textarea {
  padding: .5em .8em;
  background: #FFF;
  width: 100%;
  box-sizing: border-box;
  border-radius: 3px;
  color: #000;
  
}


#contact .section-content form input[type="submit"] {
  color: #FFF;
  background: #DB0012;
  font-size: 14px;
  width: 30vw;
  padding: 15px 15px 17px;
  line-height: 1;

	@media (max-width: 767px) {
	font-size: 3.733333333333334vw;
	 padding:.7em 0;
	}
  
}

#contact .copyright{
	text-align: center;
	font-size: min(1.3vw,25px);
	margin-top: 150px;
}
@media screen and (max-width: 768px) {
/*
  #contact .section-content form dl dt {
    font-size: 12px;
  }

  #contact .check-subject label {
    font-size: 12px;
  }
*/

	#contact .copyright{
		font-size:12px;
		margin-top:50px;
	}
  
}

@media screen and (min-width: 769px) {

  #contact::before {
    content: "";
    background-image: url(../images/bg-parts/wave/bg9.svg);
    background-repeat: no-repeat;
    background-size: 73.7vw auto;
    width: 73.7vw;
    height: 104vw;
    position: absolute;
    right: -35vw;
    top: -28vw;
    z-index: -1;

  }

  #contact::after {
    content: "";
    background-image: url(../images/bg-parts/wave/bg10.svg);
    background-repeat: no-repeat;
    background-position: left bottom;
    background-size: 56.4vw auto;
    width: 56.4vw;
    height: 68.8vw;
    position: absolute;
    left: 0;
    bottom: 0;
    z-index: -1;

  }

  #contact .section-header {
    margin-left: auto;
    margin-right: 2.956vw;
  }

  #contact .section-header span {
    transform: translateX(-15.4vw);
  }

  #contact .section-content .intro {
    /*
    font-size: 1.824479vw;
    margin-bottom: 3.54166vw;
*/
    font-size: min(1.59vw, 30px);
    margin-bottom: 3.54166vw;
  }

  .contact__info {
    margin-bottom: 3.54166vw;
  }

  .contact__info__tel {
    /*     font-size: 2.596354vw; */
    font-size: min(2.5vw, 49px);
  }

  .contact__info__time {
    /*     font-size: 1.55468vw; */
    font-size: min(1.64vw, 31px);
  }

  .contact__info__time small {
    font-size: min(1.64vw, 31px);
    margin-top: .4em;
    /*     font-size: 1.0734375vw; */
  }

  #contact .section-content form {
    width: 42.86782291666667vw;
  }

/*
  #contact .section-content form dl {
    position: relative;
    margin-bottom: 2vw;
    font-size: 1.4072916666666666vw;
  }

  #contact .section-content form dl:first-child {
    width: 34.069874999999996vw;
  }

  #contact .section-content form dl dt {
    position: relative;
  }

  #contact .section-content form dl:not(:first-child) dt {
    width: 35.2%;
    padding-right: 6vw;
  }

  #contact .section-content form dl dt span {
    font-size: 0.9062499999999999vw;
    padding: 0.4166666666666667vw 0.8107708333333333vw;
    right: 4%;
    top: 50%;
    transform: translate(0, -50%);
    position: absolute;
    z-index: 1;
  }

  #contact .section-content form dl dd {
    gap: 2.37vw;
  }

  #contact .section-content form dl:not(:first-child) dd {
    width: 63.851103841240686%;
  }

  #contact .section-content form dl dd input[type="checkbox"] {
    width: 1.2320677083333333vw;
    height: 1.2320677083333333vw;
  }

  #contact .section-content form dl dd input[type="checkbox"]:checked:before {
    width: 0.5vw;
    height: 1vw;
    border-right: 2px solid #000;
    border-bottom: 2px solid #000;
  }
*/

/*
  #contact .section-content form input[type="text"],
  #contact .section-content form input[type="email"],
  #contact .section-content form input[type="tel"],
  #contact .section-content form textarea {
    padding: 1.08vw 1vw;
    border-radius: 3px;
    width: 100%;
  }
*/

  #contact .section-content form input[type="submit"] {
    font-size: min(1.59vw, 30px);
    width: 15vw;
    max-width: 250px;
    padding: .5em 1em;
    font-weight: bold;
  }
}


/* ==================================
== not-found
================================== */
.post-text {
  margin-top: 50px;
}

#privacy #section1 p {
  margin-bottom: 20px;
}

.totop a {
  margin: 40px auto 0;
}


#privacy h1 {
  margin-bottom: 40px;
}

#privacy .block:not(:last-child) {
  margin-bottom: 30px;
}

.back_btn {
  font-size: 1.8rem;
  font-weight: 400;
  letter-spacing: 0.08em;
  width: 160px;
  height: 45px;
  background: var(--white-color);
  margin: 50px auto 0;
  display: flex;
  align-items: center;
  justify-content: center;
}


/* ==================================
== swiper
================================== */
.swiper-button-prev,
.swiper-button-next {
  height: 5.023146666666667vw !important;
  width: 2.2758933333333333vw !important;
  color: transparent !important;
  margin-top: 0 !important;
}

.swiper-button-prev {
  left: 7.52824vw !important;
}

.swiper-button-next {
  right: 7.52824vw !important;
}

/* 前へ次への矢印カスタマイズ */
.swiper-button-prev::after,
.swiper-button-next::after {
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  height: 5.023146666666667vw !important;
  width: 2.2758933333333333vw !important;
  margin: auto;
}

.swiper-button-prev::after {
  background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJf44OH44K244Kk44OzIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB2aWV3Qm94PSIwIDAgNDguMTcgMTA0LjcxIj48ZGVmcz48c3R5bGU+LmNscy0xLC5jbHMtMntmaWxsOm5vbmU7fS5jbHMtMntzdHJva2U6IzAwMDtzdHJva2UtbGluZWNhcDpyb3VuZDtzdHJva2UtbGluZWpvaW46cm91bmQ7c3Ryb2tlLXdpZHRoOjVweDt9LmNscy0ze2ZpbGw6I2ZmZjtvcGFjaXR5Oi4zO30uY2xzLTR7Y2xpcC1wYXRoOnVybCgjY2xpcHBhdGgtMSk7fTwvc3R5bGU+PGNsaXBQYXRoIGlkPSJjbGlwcGF0aCI+PHJlY3QgY2xhc3M9ImNscy0xIiB4PSItMzE3Ni42IiB5PSItMjc0OS40NyIgd2lkdGg9IjE5MjAiIGhlaWdodD0iNDAyMS4zOCIvPjwvY2xpcFBhdGg+PGNsaXBQYXRoIGlkPSJjbGlwcGF0aC0xIj48cmVjdCBjbGFzcz0iY2xzLTEiIHg9IjE4OS4wNCIgeT0iLTI3NDkuNDciIHdpZHRoPSIxOTIwIiBoZWlnaHQ9IjUwMDAiLz48L2NsaXBQYXRoPjwvZGVmcz48ZyBjbGFzcz0iY2xzLTQiPjxwYXRoIGNsYXNzPSJjbHMtMyIgZD0iTTg4LjY0LTYxMS43NWMxNzkuNjgsNjkuOTIsMzc2LjgxLDgxLjE3LDU2MS4wNywxMzcuOTFDMTA0OC4zLTM1MS4xMSwxMzcyLjA0LDcuNjQsMTQyMy45OSw0MjEuNDVjNTEuOTQsNDEzLjgxLTE4OS40Niw4NTUuMzktNTc3LjE0LDEwMDkuMTUtMjk2LjkyLDExNy43Ni02NDcuMDIsNjQuMTMtOTE3LjA5LTEwNi40My0yNzAuMDctMTcwLjU2LTQ2My4wNC00NDcuNi01NjcuOTktNzQ5LjI4LTEwNC45NS0zMDEuNjgtMTI2LjgzLTYyNy4yOC0xMDQuNTQtOTQ1LjkxLDkuNzctMTM5LjcxLDI5LjMyLTI4My4zNiwxMDAuNTctNDAzLjk1LDcwLjUxLTExOS4zMiwyMzAuOTItMjUxLjU0LDM2NS41OC0xNTMuMjIsMTM5LjQ2LDEwMS44MywxODcuNDQsMjQ3LjIzLDM2NS4yNiwzMTYuNDNaIi8+PC9nPjxwb2x5bGluZSBjbGFzcz0iY2xzLTIiIHBvaW50cz0iNDUuNjcgMi41IDIuNSA1Mi4zNSA0NS42NyAxMDIuMjEiLz48L3N2Zz4=");
}

.swiper-button-next::after {
  background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJf44OH44K244Kk44OzIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB2aWV3Qm94PSIwIDAgNDguMTcgMTA0LjcxIj48ZGVmcz48c3R5bGU+LmNscy0xLC5jbHMtMntmaWxsOm5vbmU7fS5jbHMtMntzdHJva2U6IzAwMDtzdHJva2UtbGluZWNhcDpyb3VuZDtzdHJva2UtbGluZWpvaW46cm91bmQ7c3Ryb2tlLXdpZHRoOjVweDt9LmNscy0ze2ZpbGw6I2ZmZjtvcGFjaXR5Oi4zO30uY2xzLTR7Y2xpcC1wYXRoOnVybCgjY2xpcHBhdGgtMSk7fTwvc3R5bGU+PGNsaXBQYXRoIGlkPSJjbGlwcGF0aCI+PHJlY3QgY2xhc3M9ImNscy0xIiB4PSItMzE3Ni42IiB5PSItMjc0OS40NyIgd2lkdGg9IjE5MjAiIGhlaWdodD0iNDAyMS4zOCIvPjwvY2xpcFBhdGg+PGNsaXBQYXRoIGlkPSJjbGlwcGF0aC0xIj48cmVjdCBjbGFzcz0iY2xzLTEiIHg9IjE4OS4wNCIgeT0iLTI3NDkuNDciIHdpZHRoPSIxOTIwIiBoZWlnaHQ9IjUwMDAiLz48L2NsaXBQYXRoPjwvZGVmcz48ZyBjbGFzcz0iY2xzLTQiPjxwYXRoIGNsYXNzPSJjbHMtMyIgZD0iTTg4LjY0LTYxMS43NWMxNzkuNjgsNjkuOTIsMzc2LjgxLDgxLjE3LDU2MS4wNywxMzcuOTFDMTA0OC4zLTM1MS4xMSwxMzcyLjA0LDcuNjQsMTQyMy45OSw0MjEuNDVjNTEuOTQsNDEzLjgxLTE4OS40Niw4NTUuMzktNTc3LjE0LDEwMDkuMTUtMjk2LjkyLDExNy43Ni02NDcuMDIsNjQuMTMtOTE3LjA5LTEwNi40My0yNzAuMDctMTcwLjU2LTQ2My4wNC00NDcuNi01NjcuOTktNzQ5LjI4LTEwNC45NS0zMDEuNjgtMTI2LjgzLTYyNy4yOC0xMDQuNTQtOTQ1LjkxLDkuNzctMTM5LjcxLDI5LjMyLTI4My4zNiwxMDAuNTctNDAzLjk1LDcwLjUxLTExOS4zMiwyMzAuOTItMjUxLjU0LDM2NS41OC0xNTMuMjIsMTM5LjQ2LDEwMS44MywxODcuNDQsMjQ3LjIzLDM2NS4yNiwzMTYuNDNaIi8+PC9nPjxwb2x5bGluZSBjbGFzcz0iY2xzLTIiIHBvaW50cz0iNDUuNjcgMi41IDIuNSA1Mi4zNSA0NS42NyAxMDIuMjEiLz48L3N2Zz4=");
  transform: scale(-1, 1);
}

@media screen and (max-width: 768px) {

  .professional-slide .swiper-button-prev,
  .professional-slide .swiper-button-next {
    top: 15.526186666666666vw !important;
  }
}

@media screen and (min-width: 769px) {

  .swiper-button-prev,
  .swiper-button-next {
    height: 4.90824vw !important;
    width: 2.25792vw !important;
  }

  .swiper-button-prev {
    left: 5.31vw !important;
  }

  .swiper-button-next {
    right: 5.31vw !important;
  }

  .swiper-button-prev::after,
  .swiper-button-next::after {
    height: 5.4536vw !important;
    width: 2.5088vw !important;
  }

  .swiper-pagination-bullet {
    /*
    width: 1.283vw !important;
    height: 1.283vw !important;
    margin: 0 1.3vw !important;
*/
    width: min(1.04vw, 20px) !important;
    height: min(1.04vw, 20px) !important;
    margin: 0 .6vw !important;
    background: #B3B3B3 !important;
    opacity: 1 !important;
  }

  .swiper-pagination-bullet-active {
    background: #808080 !important;
  }
}


/* ==================================
== parts
================================== */
.bg-parts {
  background: no-repeat center/contain;
  display: block;
  position: absolute;
  z-index: -1;
}

@media screen and (max-width: 768px) {
  .parts01 {
    width: 5.6875vw;
    height: 8.264166vw;
    right: 24.60572916vw;
    top: 8.253614583333334vw;
    background-image: url(../images/bg-parts/parts01.png);
  }

  .parts02 {
	width: 5.8875vw;
	height: 6.9875vw;
	left: 1.6458vw;
	top: 31.854vw;
    background-image: url(../images/bg-parts/parts02.png);
  }


  .parts03 {
    width: 4.025vw;
    height: 4.075vw;
    left: 29.029375vw;
    top: 10.1729vw;
    background-image: url(../images/bg-parts/parts03.png);
  }

  .parts04 {
    width: 4.2875vw;
    height: 4.75vw;
    left: 11.005729vw;
    bottom: 10.448229vw;
    background-image: url(../images/bg-parts/parts04.png);
  }

  .parts05 {
    width: 5.2125vw;
    height: 6.9875vw;
    right: 12.765625vw;
    bottom: -19.7596510416666666vw;
    background-image: url(../images/bg-parts/parts05.png);
  }

  .parts06 {
    width: 25.125vw;
    height: 6.1875vw;
    right: 55.260885416666667vw;
    top: -2.853229166666667vw;
    background-image: url(../images/bg-parts/parts06.png);
  }

  .parts07 {
    width: 4.8625vw;
    height: 4.437500000000001vw;
    right: 29.166666666666668vw;
    top: 106.27822916666667vw;
    background-image: url(../images/bg-parts/parts07.png);
  }

  .parts08 {
    width: 3.6624999999999996vw;
    height: 3.7125vw;
    left: 9.391822916666667vw;
    top: 36.128125vw;
    background-image: url(../images/bg-parts/parts08.png);
  }

  .parts09 {
    width: 4.2875vw;
    height: 4.75vw;
    left: 36.375416666666666vw;
    bottom: 57.77339583333334vw;
    background-image: url(../images/bg-parts/parts09.png);
  }

  .parts10 {
    width: 4.325vw;
    height: 4.7625vw;
    right: 16.751354166666665vw;
    bottom: 43.835427083333336vw;
    background-image: url(../images/bg-parts/parts10.png);
  }

  .parts11 {
    width: 3.65vw;
    height: 3.7125vw;
    right: 34.77796875vw;
    bottom: 14.947927083333333vw;
    background-image: url(../images/bg-parts/parts11.png);
  }

  .parts12 {
    width: 4.3375vw;
    height: 3.875vw;
    left: 13.738020833333334vw;
    bottom: 0.2854791vw;
    background-image: url(../images/bg-parts/parts12.png);
  }

  .parts13 {
    width: 5.9vw;
    height: 6.1125vw;
    left: 7.777895833333333vw;
    top: -2.6778385416666666vw;
    background-image: url(../images/bg-parts/parts13.png);
  }

  .parts14 {
    width: 5.1125vw;
    height: 4.6vw;
    right: 5.94953125vw;
    top: 11.55734375vw;
    background-image: url(../images/bg-parts/parts14.png);
  }

  .parts15 {
    width: 6.1625vw;
    height: 6.2125vw;
    left: 11.66546875vw;
    bottom: -3.192697916666667vw;
    background-image: url(../images/bg-parts/parts15.png);
  }

  .parts16 {
    width: 6.475vw;
    height: 6.7375vw;
    right: 20.9059375vw;
    top: 0vw;
    background-image: url(../images/bg-parts/parts16.png);
  }

  .parts17 {
    width: 3.6624999999999996vw;
    height: 3.7125vw;
    right: 15.818229166666667vw;
    top: 0;
    background-image: url(../images/bg-parts/parts17.png);
  }

  .parts18 {
    width: 7.925vw;
    height: 5.4375vw;
    right: 6.285937499999999vw;
    top: 6.925000000000001vw;
    background-image: url(../images/bg-parts/parts18.png);
  }

  .parts19 {
    width: 5.2124999999999995vw;
    height: 4.1875vw;
    left: 9.275572916666668vw;
    top: 31vw;
    background-image: url(../images/bg-parts/parts19.png);
  }

  .parts20 {
    width: 6.2125vw;
    height: 6.2125vw;
    right: 13.18671875vw;
    bottom: -6.04390625vw;
    background-image: url(../images/bg-parts/parts20.png);
  }

  .parts21 {
    width: 5.7375vw;
    height: 5.325vw;
    right: 18.205833333333334vw;
    top: 0.858484375vw;
    background-image: url(../images/bg-parts/parts21.png);
  }

  .parts22 {
    width: 4.5375000000000005vw;
    height: 4.6vw;
    right: 4.680869791666666vw;
    top: 8.559375vw;
    background-image: url(../images/bg-parts/parts22.png);
  }

  .parts23 {
    width: 5.325vw;
    height: 5.1625000000000005vw;
    left: 6.269114583333334vw;
    top: 24.3875vw;
    background-image: url(../images/bg-parts/parts23.png);
  }

  .parts24 {
    width: 6.949999999999999vw;
    height: 5.125vw;
    left: 9.906614583333333vw;
    bottom: 28.86432291666667vw;
    background-image: url(../images/bg-parts/parts24.png);
  }

  .parts25 {
    width: 6.1000000000000005vw;
    height: 6.2625vw;
    right: 15.349583333333333vw;
    top: -2.853187499999999vw;
    background-image: url(../images/bg-parts/parts25.png);
  }

  .parts26 {
    width: 4.55vw;
    height: 4.55vw;
    right: 8.107468749999999vw;
    top: 6.771781250000001vw;
    background-image: url(../images/bg-parts/parts26.png);
  }

  .parts27 {
    width: 6.425vw;
    height: 6.375vw;
    left: 7.469114583333333vw;
    bottom: 4.923859374999999vw;
    background-image: url(../images/bg-parts/parts27.png);
  }

  .parts28 {
    width: 4.175vw;
    height: 4.5875vw;
    left: 21.36911458333333vw;
    top: 15.543333333333335vw;
    background-image: url(../images/bg-parts/parts28.png);
  }

  .parts29 {
    width: 5.2124999999999995vw;
    height: 4.387499999999999vw;
    right: 6.105833333333333vw;
    top: 11.300468749999999vw;
    background-image: url(../images/bg-parts/parts29.png);
  }

  .parts30 {
    width: 5.637499999999999vw;
    height: 5.012499999999999vw;
    right: 19.680572916666666vw;
    top: 5.509322916666667vw;
    background-image: url(../images/bg-parts/parts30.png);
  }

  .parts31 {
    width: 4.75vw;
    height: 4.8625vw;
    right: 6.030572916666667vw;
    top: 13.759322916666667vw;
    background-image: url(../images/bg-parts/parts31.png);
  }

  .parts32 {
    width: 5.949999999999999vw;
    height: 6.4750000000000005vw;
    left: 8.394375vw;
    top: 0;
    background-image: url(../images/bg-parts/parts32.png);
  }

  .parts33 {
    width: 4.5375000000000005vw;
    height: 4.55vw;
    left: 52.906770833333326vw;
    bottom: 0.810015625vw;
    background-image: url(../images/bg-parts/parts33.png);
  }

	
  .parts34 {
    width: 4.864vw;
    height: 4.864vw;
    left: 11.111733333333333vw;
    top: 61.87981333333333vw;
    background-image: url(../images/bg-parts/parts34.png);
  }

  .parts35 {
    width: 6.72vw;
    height: 6.976vw;
    right: 20.08826666666667vw;
    top: -5.320186666666666vw;
    background-image: url(../images/bg-parts/parts35.png);
  }

  .parts36 {
    width: 6.463999999999999vw;
    height: 6.976vw;
    right: 4.536266666666666vw;
    top: 48.31181333333333vw;
    background-image: url(../images/bg-parts/parts36.png);
  }

  .parts37 {
    width: 5.376vw;
    height: 5.376vw;
    left: 22.951733333333337vw;
    top: 71.64277333333334vw;
    background-image: url(../images/bg-parts/parts37.png);
  }

  .parts38 {
    width: 8.639999999999999vw;
    height: 6.72vw;
    right: 16.184266666666666vw;
    bottom: 9.21475vw;
    background-image: url(../images/bg-parts/parts38.png);
  }

  .parts39 {
    width: 8.831999999999999vw;
    height: 8.384vw;
    left: 9.290026666666668vw;
    bottom: 22.12493666666667vw;
    background-image: url(../images/bg-parts/parts39.png);
  }
}


@media screen and (min-width: 769px) {
  .parts01 {
    width: 5.6875vw;
    height: 8.264166vw;
    right: 24.60572916vw;
    top: 8.253614583333334vw;
    background-image: url(../images/bg-parts/parts01.png);
  }

  .parts02 {
    width: 7.8875vw;
    height: 6.9875vw;
    left: 3.6458vw;
    top: 13.854vw;
    background-image: url(../images/bg-parts/parts02.png);
  }


  .parts03 {
    width: 4.025vw;
    height: 4.075vw;
    left: 29.029375vw;
    top: 23.1729vw;
    background-image: url(../images/bg-parts/parts03.png);
  }

  .parts04 {
    width: 4.2875vw;
    height: 4.75vw;
    left: 11.005729vw;
    bottom: 10.448229vw;
    background-image: url(../images/bg-parts/parts04.png);
  }

  .parts05 {
    width: 6.2125vw;
    height: 6.9875vw;
    right: 35.765625vw;
    bottom: 0.7596510416666666vw;
    background-image: url(../images/bg-parts/parts05.png);
  }

  .parts06 {
    width: 4.125vw;
    height: 3.1875vw;
    right: 13.260885416666667vw;
    top: 10.853229166666667vw;
    background-image: url(../images/bg-parts/parts06.png);
  }

  .parts07 {
    width: 4.8625vw;
    height: 4.437500000000001vw;
    right: 29.166666666666668vw;
    top: 46.27822916666667vw;
    background-image: url(../images/bg-parts/parts07.png);
  }

  .parts08 {
    width: 3.6624999999999996vw;
    height: 3.7125vw;
    left: 9.391822916666667vw;
    top: 59.128125vw;
    background-image: url(../images/bg-parts/parts08.png);
  }

  .parts09 {
    width: 4.2875vw;
    height: 4.75vw;
    left: 36.375416666666666vw;
    bottom: 57.77339583333334vw;
    background-image: url(../images/bg-parts/parts09.png);
  }

  .parts10 {
    width: 4.325vw;
    height: 4.7625vw;
    right: 16.751354166666665vw;
    bottom: 43.835427083333336vw;
    background-image: url(../images/bg-parts/parts10.png);
  }

  .parts11 {
    width: 3.65vw;
    height: 3.7125vw;
    right: 34.77796875vw;
    bottom: 14.947927083333333vw;
    background-image: url(../images/bg-parts/parts11.png);
  }

  .parts12 {
    width: 4.3375vw;
    height: 3.875vw;
    left: 13.738020833333334vw;
    bottom: 0.2854791vw;
    background-image: url(../images/bg-parts/parts12.png);
  }

  .parts13 {
    width: 5.9vw;
    height: 6.1125vw;
    left: 7.777895833333333vw;
    top: -2.6778385416666666vw;
    background-image: url(../images/bg-parts/parts13.png);
  }

  .parts14 {
    width: 5.1125vw;
    height: 4.6vw;
    right: 5.94953125vw;
    top: 11.55734375vw;
    background-image: url(../images/bg-parts/parts14.png);
  }

  .parts15 {
    width: 6.1625vw;
    height: 6.2125vw;
    left: 11.66546875vw;
    bottom: -3.192697916666667vw;
    background-image: url(../images/bg-parts/parts15.png);
  }

  .parts16 {
    width: 6.475vw;
    height: 6.7375vw;
    right: 20.9059375vw;
    top: 0vw;
    background-image: url(../images/bg-parts/parts16.png);
  }

  .parts17 {
    width: 3.6624999999999996vw;
    height: 3.7125vw;
    right: 15.818229166666667vw;
    top: 0;
    background-image: url(../images/bg-parts/parts17.png);
  }

  .parts18 {
    width: 7.925vw;
    height: 5.4375vw;
    right: 6.285937499999999vw;
    top: 6.925000000000001vw;
    background-image: url(../images/bg-parts/parts18.png);
  }

  .parts19 {
    width: 5.2124999999999995vw;
    height: 4.1875vw;
    left: 9.275572916666668vw;
    top: 31vw;
    background-image: url(../images/bg-parts/parts19.png);
  }

  .parts20 {
    width: 6.2125vw;
    height: 6.2125vw;
    right: 13.18671875vw;
    bottom: -6.04390625vw;
    background-image: url(../images/bg-parts/parts20.png);
  }

  .parts21 {
    width: 5.7375vw;
    height: 5.325vw;
    right: 18.205833333333334vw;
    top: 0.858484375vw;
    background-image: url(../images/bg-parts/parts21.png);
  }

  .parts22 {
    width: 4.5375000000000005vw;
    height: 4.6vw;
    right: 4.680869791666666vw;
    top: 8.559375vw;
    background-image: url(../images/bg-parts/parts22.png);
  }

  .parts23 {
    width: 5.325vw;
    height: 5.1625000000000005vw;
    left: 6.269114583333334vw;
    top: 24.3875vw;
    background-image: url(../images/bg-parts/parts23.png);
  }

  .parts24 {
    width: 6.949999999999999vw;
    height: 5.125vw;
    left: 9.906614583333333vw;
    bottom: 28.86432291666667vw;
    background-image: url(../images/bg-parts/parts24.png);
  }

  .parts25 {
    width: 6.1000000000000005vw;
    height: 6.2625vw;
    right: 15.349583333333333vw;
    top: -2.853187499999999vw;
    background-image: url(../images/bg-parts/parts25.png);
  }

  .parts26 {
    width: 4.55vw;
    height: 4.55vw;
    right: 8.107468749999999vw;
    top: 6.771781250000001vw;
    background-image: url(../images/bg-parts/parts26.png);
  }

  .parts27 {
    width: 6.425vw;
    height: 6.375vw;
    left: 7.469114583333333vw;
    bottom: 4.923859374999999vw;
    background-image: url(../images/bg-parts/parts27.png);
  }

  .parts28 {
    width: 4.175vw;
    height: 4.5875vw;
    left: 21.36911458333333vw;
    top: 15.543333333333335vw;
    background-image: url(../images/bg-parts/parts28.png);
  }

  .parts29 {
    width: 5.2124999999999995vw;
    height: 4.387499999999999vw;
    right: 6.105833333333333vw;
    top: 11.300468749999999vw;
    background-image: url(../images/bg-parts/parts29.png);
  }

  .parts30 {
    width: 5.637499999999999vw;
    height: 5.012499999999999vw;
    right: 19.680572916666666vw;
    top: 5.509322916666667vw;
    background-image: url(../images/bg-parts/parts30.png);
  }

  .parts31 {
    width: 4.75vw;
    height: 4.8625vw;
    right: 6.030572916666667vw;
    top: 13.759322916666667vw;
    background-image: url(../images/bg-parts/parts31.png);
  }

  .parts32 {
    width: 5.949999999999999vw;
    height: 6.4750000000000005vw;
    left: 8.394375vw;
    top: 0;
    background-image: url(../images/bg-parts/parts32.png);
  }

  .parts33 {
    width: 4.5375000000000005vw;
    height: 4.55vw;
    left: 52.906770833333326vw;
    bottom: 0.810015625vw;
    background-image: url(../images/bg-parts/parts33.png);
  }

  .parts34 {
    width: 4.074999999999999vw;
    height: 4.3375vw;
    left: 11.829427083333334vw;
    top: 7.7715625vw;
    background-image: url(../images/bg-parts/parts34.png);
  }

  .parts35 {
    width: 6.15vw;
    height: 6.2625vw;
    right: 7.333020833333334vw;
    top: 19.2090625vw;
    background-image: url(../images/bg-parts/parts35.png);
  }

  .parts36 {
    width: 5.8374999999999995vw;
    height: 6.3125vw;
    left: 26.391927083333332vw;
    top: 43.0965625vw;
    background-image: url(../images/bg-parts/parts36.png);
  }

  .parts37 {
    width: 4.7vw;
    height: 4.75vw;
    right: 20.577864583333337vw;
    top: 61.18541666666667vw;
    background-image: url(../images/bg-parts/parts37.png);
  }

  .parts38 {
    width: 6.3125vw;
    height: 4.8vw;
    right: 9.458020833333332vw;
    bottom: 32.68000000000001vw;
    background-image: url(../images/bg-parts/parts38.png);
  }

  .parts39 {
    width: 5.9vw;
    height: 5.5375vw;
    left: 13.316927083333333vw;
    bottom: 17.705104166666665vw;
    background-image: url(../images/bg-parts/parts39.png);
  }
}