@charset "UTF-8";
@import url("https://fonts.googleapis.com/css?family=Noto+Serif+JP&display=swap&subset=japanese");
/* line 11, style.scss */
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  line-height: 1.2em;
}

/* line 33, style.scss */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

/* line 38, style.scss */
nav ul {
  list-style: none;
}

/* line 42, style.scss */
blockquote, q {
  quotes: none;
}

/* line 46, style.scss */
blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none;
}

/* line 52, style.scss */
a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  color: #000000;
}

/* line 60, style.scss */
a:visited {
  color: #000000;
}

/* line 63, style.scss */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

/* line 70, style.scss */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

/* line 77, style.scss */
del {
  text-decoration: line-through;
}

/* line 81, style.scss */
abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

/* line 86, style.scss */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* line 91, style.scss */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

/* line 104, style.scss */
* {
  box-sizing: border-box;
}

/* line 121, style.scss */
img {
  width: auto;
  height: auto;
}

/* line 126, style.scss */
.c {
  clear: both;
}

/* line 129, style.scss */
ul {
  list-style-type: none;
}

/* line 131, style.scss */
html {
  width: 100%;
  overflow-x: hidden;
}

/* line 136, style.scss */
body, html {
  width: 100%;
  height: 100%;
  font-variant-ligatures: none;
  color: #000000;
  /*
  -ms-overflow-style: none;
  ::-webkit-scrollbar{
    display: none;
  }
  */
}
@media screen and (max-width: 486px) {
  /* line 136, style.scss */
  body, html {
    font-size: 14px;
    font-size: 4.375vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 136, style.scss */
  body, html {
    font-size: 14px;
    font-size: 2.27273vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 136, style.scss */
  body, html {
    font-size: 14px;
  }
}

/* line 153, style.scss */
a {
  text-decoration: none;
}

/* line 157, style.scss */
.noSmp {
  display: block;
}

/* line 158, style.scss */
.noPc {
  display: none;
}

@media only screen and (max-width: 426px) {
  /* line 160, style.scss */
  .noSmp {
    display: none;
  }

  /* line 161, style.scss */
  .noPc {
    display: block;
  }
}
/* line 6, _global.scss */
body {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic","Noto Serif JP",'Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3', sans-serif;
}

/*==================================================
機能編　5-1-25 クリックしたらナビ背景コンテンツがぼかされる※IE11非対応
===================================*/
/*========= ぼかしのためのCSS ===============*/
/* line 10, _parts.scss */
.mainblur {
  filter: blur(8px);
}

/*========= ナビゲーションのためのCSS ===============*/
/* line 17, _parts.scss */
#g-nav {
  /*position:fixed;にし、z-indexの数値を小さくして最背面へ*/
  position: fixed;
  z-index: -1;
  opacity: 0;
  /*はじめは透過0*/
  /*ナビの位置と形状*/
  top: 0;
  width: 100%;
  height: 100vh;
  /*ナビの高さ*/
  background: rgba(0, 0, 0, 0.5);
  /*背景を少し透過させる*/
  /*動き*/
  transition: all 0.3s;
  display: none;
}

/*アクティブクラスがついたら透過なしにして最前面へ*/
/* line 33, _parts.scss */
#g-nav.panelactive {
  opacity: 1;
  z-index: 999;
  display: block;
}

/*ナビゲーションの縦スクロール*/
/* line 40, _parts.scss */
#g-nav.panelactive #g-nav-list {
  /*ナビの数が増えた場合縦スクロール*/
  position: fixed;
  z-index: 999;
  width: 100%;
  height: 100vh;
  /*表示する高さ*/
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

/*ナビゲーション*/
/* line 51, _parts.scss */
#g-nav ul {
  display: none;
  /*はじめは非表示*/
  /*ナビゲーション天地中央揃え*/
  position: absolute;
  z-index: 999;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 20em;
}

/* line 62, _parts.scss */
#g-nav.panelactive ul {
  display: block;
}

/*リストのレイアウト設定*/
/* line 67, _parts.scss */
#g-nav li {
  list-style: none;
  text-align: center;
}

/* line 72, _parts.scss */
#g-nav li a {
  color: #fff;
  text-decoration: none;
  padding: 10px;
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-weight: bold;
}

/*==================================================
機能編　5-2-2 ボタン：2本線が×に
===================================*/
/*ボタン外側*/
/* line 88, _parts.scss */
.openbtn {
  position: fixed;
  z-index: 9999;
  /*ボタンを最前面に*/
  top: 10px;
  right: 10px;
  cursor: pointer;
  width: 50px;
  height: 50px;
}

/*ボタン内側*/
/* line 100, _parts.scss */
.openbtn span {
  display: inline-block;
  transition: all .4s;
  /*アニメーションの設定*/
  position: absolute;
  left: 13px;
  height: 3px;
  background-color: #666;
}

/* line 110, _parts.scss */
.openbtn span:nth-of-type(1) {
  top: 22px;
  width: 50%;
}

/* line 115, _parts.scss */
.openbtn span:nth-of-type(2) {
  top: 29px;
  width: 30%;
}

/*activeクラスが付与されると線が回転して×に*/
/* line 122, _parts.scss */
.openbtn.active span:nth-of-type(1) {
  top: 20px;
  left: 16px;
  transform: translateY(6px) rotate(-45deg);
  width: 35%;
}

/* line 129, _parts.scss */
.openbtn.active span:nth-of-type(2) {
  top: 32px;
  left: 16px;
  transform: translateY(-6px) rotate(45deg);
  width: 35%;
}

/* line 168, style.scss */
h1, h2, h3, h4, p {
  font-weight: normal;
  letter-spacing: 0.2em;
  line-height: 1.8em;
}

/* line 174, style.scss */
a {
  　transition: 1.0s;
}

/* line 178, style.scss */
a:hover {
  opacity: 0.5;
}

/* line 5, _header.scss */
header {
  position: relative;
  width: 100%;
  text-align: center;
  animation: fadeIn;
  animation-duration: 2s;
  animation-delay: .5s;
  animation-fill-mode: both;
}
/* line 13, _header.scss */
header.under {
  height: auto;
}
@media screen and (max-width: 768px) {
  /* line 5, _header.scss */
  header {
    height: auto;
  }
}
/* line 19, _header.scss */
header .inner {
  width: 100%;
}
@media screen and (max-width: 768px) {
  /* line 19, _header.scss */
  header .inner {
    height: auto;
    padding-bottom: 0;
  }
}
/* line 25, _header.scss */
header .inner h1 {
  z-index: 1000;
  text-align: left;
  padding: 70px 50px;
}
@media screen and (max-width: 768px) {
  /* line 25, _header.scss */
  header .inner h1 {
    width: 100%;
    text-align: center;
    padding: 30px 0 0;
  }
}
/* line 36, _header.scss */
header figure {
  position: relative;
  padding: 0 0 100px;
}
@media screen and (max-width: 768px) {
  /* line 36, _header.scss */
  header figure {
    padding: 0 0 0;
  }
}
/* line 42, _header.scss */
header figure > img {
  width: 100%;
}
@media screen and (max-width: 768px) {
  /* line 42, _header.scss */
  header figure > img {
    width: 100%;
  }
}
/* line 48, _header.scss */
header figure figcaption {
  position: absolute;
  top: 15%;
  right: 5em;
  display: flex;
  flex-direction: row-reverse;
}
@media screen and (max-width: 768px) {
  /* line 48, _header.scss */
  header figure figcaption {
    width: 100%;
    display: block;
    position: relative;
    top: 0;
    right: 0;
  }
}
/* line 61, _header.scss */
header figure figcaption h1 {
  -webkit-writing-mode: vertical-rl;
  -moz-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  -o-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
  text-align: left;
  line-height: 1.4em;
  color: #ffffff;
}
@media screen and (max-width: 486px) {
  /* line 61, _header.scss */
  header figure figcaption h1 {
    font-size: 70px;
    font-size: 21.875vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 61, _header.scss */
  header figure figcaption h1 {
    font-size: 70px;
    font-size: 11.36364vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 61, _header.scss */
  header figure figcaption h1 {
    font-size: 70px;
  }
}
@media screen and (max-width: 768px) {
  /* line 61, _header.scss */
  header figure figcaption h1 {
    writing-mode: horizontal-tb;
    -ms-writing-mode: lr-tb;
    color: #000000;
  }
}
@media screen and (max-width: 768px) and (max-width: 486px) {
  /* line 61, _header.scss */
  header figure figcaption h1 {
    font-size: 24px;
    font-size: 7.5vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 481px) and (max-width: 768px) {
  /* line 61, _header.scss */
  header figure figcaption h1 {
    font-size: 24px;
    font-size: 3.8961vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 769px) {
  /* line 61, _header.scss */
  header figure figcaption h1 {
    font-size: 24px;
  }
}

/* line 73, _header.scss */
header figure figcaption p {
  -webkit-writing-mode: vertical-rl;
  -moz-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  -o-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
  text-align: left;
  padding-top: 5em;
  line-height: 1.4em;
  color: #ffffff;
}
@media screen and (max-width: 486px) {
  /* line 73, _header.scss */
  header figure figcaption p {
    font-size: 18px;
    font-size: 5.625vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 73, _header.scss */
  header figure figcaption p {
    font-size: 18px;
    font-size: 2.92208vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 73, _header.scss */
  header figure figcaption p {
    font-size: 18px;
  }
}
@media screen and (max-width: 768px) {
  /* line 73, _header.scss */
  header figure figcaption p {
    writing-mode: horizontal-tb;
    -ms-writing-mode: lr-tb;
    padding-top: 20px;
    color: #000000;
  }
}
@media screen and (max-width: 768px) and (max-width: 486px) {
  /* line 73, _header.scss */
  header figure figcaption p {
    font-size: 12px;
    font-size: 3.75vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 481px) and (max-width: 768px) {
  /* line 73, _header.scss */
  header figure figcaption p {
    font-size: 12px;
    font-size: 1.94805vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 769px) {
  /* line 73, _header.scss */
  header figure figcaption p {
    font-size: 12px;
  }
}

/* line 89, _header.scss */
header nav.headNav {
  position: absolute;
  top: 50px;
  right: 100px;
}
@media screen and (max-width: 768px) {
  /* line 89, _header.scss */
  header nav.headNav {
    display: none;
  }
}
/* line 96, _header.scss */
header nav.headNav ul {
  display: flex;
}
/* line 98, _header.scss */
header nav.headNav ul li {
  -webkit-writing-mode: vertical-rl;
  -moz-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  -o-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
  text-align: left;
  padding: 0 20px;
}
/* line 102, _header.scss */
header nav.headNav ul li a {
  letter-spacing: 0.1em;
  font-weight: bold;
}
@media screen and (max-width: 486px) {
  /* line 102, _header.scss */
  header nav.headNav ul li a {
    font-size: 16px;
    font-size: 5vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 102, _header.scss */
  header nav.headNav ul li a {
    font-size: 16px;
    font-size: 2.5974vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 102, _header.scss */
  header nav.headNav ul li a {
    font-size: 16px;
  }
}

/* line 115, _header.scss */
.slick-arrow {
  position: absolute;
  top: 50%;
  margin-top: -16px;
  width: 20px;
  height: 33px;
  opacity: 0.7;
  z-index: 10;
}

/* line 124, _header.scss */
.prev-arrow {
  left: 5px;
}

/* line 127, _header.scss */
.next-arrow {
  right: 5px;
}

/* line 133, _header.scss */
.slick-prev:before, .slick-next:before {
  color: black;
  opacity: 1;
}

@media screen and (max-width: 768px) {
  /* line 138, _header.scss */
  .slick-prev {
    left: 50px;
  }

  /* line 142, _header.scss */
  .slick-next {
    right: 50px;
  }

  /* line 146, _header.scss */
  .slick-prev,
  .slick-next {
    z-index: 100;
  }

  /* line 151, _header.scss */
  .slick-dots li {
    width: 10px;
  }
}
/* line 5, _footer.scss */
footer {
  position: relative;
  border-top: 1px solid #6c5546;
  padding: 5rem 0 1rem;
  font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
}
@media screen and (max-width: 768px) {
  /* line 5, _footer.scss */
  footer {
    padding: 3rem 0 3rem;
  }
}
/* line 13, _footer.scss */
footer .companyInfo {
  margin: 0 0 0 40px;
}
@media screen and (max-width: 768px) {
  /* line 13, _footer.scss */
  footer .companyInfo {
    margin: 0 40px 0 40px;
  }
}
/* line 18, _footer.scss */
footer .companyInfo h1 {
  text-align: center;
  width: 30%;
}
@media screen and (max-width: 768px) {
  /* line 18, _footer.scss */
  footer .companyInfo h1 {
    width: 100%;
  }
}
/* line 25, _footer.scss */
footer .companyInfo p {
  width: 30%;
  text-align: center;
}
@media screen and (max-width: 768px) {
  /* line 25, _footer.scss */
  footer .companyInfo p {
    width: 100%;
  }
}
/* line 33, _footer.scss */
footer nav.headNav {
  position: absolute;
  top: 50px;
  right: 100px;
}
@media screen and (max-width: 768px) {
  /* line 33, _footer.scss */
  footer nav.headNav {
    display: none;
  }
}
/* line 40, _footer.scss */
footer nav.headNav ul {
  display: flex;
}
/* line 42, _footer.scss */
footer nav.headNav ul li {
  -webkit-writing-mode: vertical-rl;
  -moz-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  -o-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
  text-align: left;
  padding: 0 20px;
}
/* line 46, _footer.scss */
footer nav.headNav ul li a {
  letter-spacing: 0.1em;
  font-weight: bold;
}
@media screen and (max-width: 486px) {
  /* line 46, _footer.scss */
  footer nav.headNav ul li a {
    font-size: 16px;
    font-size: 5vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 46, _footer.scss */
  footer nav.headNav ul li a {
    font-size: 16px;
    font-size: 2.5974vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 46, _footer.scss */
  footer nav.headNav ul li a {
    font-size: 16px;
  }
}
/* line 57, _footer.scss */
footer .copy {
  text-align: center;
  letter-spacing: 0;
  padding-top: 60px;
}
@media screen and (max-width: 486px) {
  /* line 57, _footer.scss */
  footer .copy {
    font-size: 12px;
    font-size: 3.75vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 57, _footer.scss */
  footer .copy {
    font-size: 12px;
    font-size: 1.94805vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 57, _footer.scss */
  footer .copy {
    font-size: 12px;
  }
}

/* line 6, _main.scss */
main {
  position: relative;
  width: 100%;
  margin-bottom: 100px;
}
@media screen and (max-width: 486px) {
  /* line 6, _main.scss */
  main {
    font-size: 14px;
    font-size: 4.375vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 6, _main.scss */
  main {
    font-size: 14px;
    font-size: 2.27273vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 6, _main.scss */
  main {
    font-size: 14px;
  }
}
@media screen and (max-width: 768px) {
  /* line 6, _main.scss */
  main {
    margin-top: 60px;
  }
}

/* line 241, _main.scss */
article.aboutPage {
  width: 100%;
  margin: 0 auto 10%;
  text-align: center;
}
/* line 96, _main.scss */
article.aboutPage .headerWrap {
  animation: fadeIn;
  animation-duration: 2s;
  animation-delay: .5s;
  animation-fill-mode: both;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-wrap: wrap;
  flex-direction: row-reverse;
}
/* line 17, _main.scss */
article.aboutPage .headerWrap span {
  display: block;
  padding: 0 0 5%;
}
@media screen and (max-width: 486px) {
  /* line 17, _main.scss */
  article.aboutPage .headerWrap span {
    font-size: 14px;
    font-size: 4.375vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 17, _main.scss */
  article.aboutPage .headerWrap span {
    font-size: 14px;
    font-size: 2.27273vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 17, _main.scss */
  article.aboutPage .headerWrap span {
    font-size: 14px;
  }
}
@media screen and (max-width: 768px) {
  /* line 17, _main.scss */
  article.aboutPage .headerWrap span {
    text-align: center;
  }
}
@media screen and (max-width: 768px) and (max-width: 486px) {
  /* line 17, _main.scss */
  article.aboutPage .headerWrap span {
    font-size: 8px;
    font-size: 2.5vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 481px) and (max-width: 768px) {
  /* line 17, _main.scss */
  article.aboutPage .headerWrap span {
    font-size: 8px;
    font-size: 1.2987vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 769px) {
  /* line 17, _main.scss */
  article.aboutPage .headerWrap span {
    font-size: 8px;
  }
}

/* line 26, _main.scss */
article.aboutPage .headerWrap h1 {
  padding: 0 0 20px;
}
@media screen and (max-width: 486px) {
  /* line 26, _main.scss */
  article.aboutPage .headerWrap h1 {
    font-size: 36px;
    font-size: 11.25vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 26, _main.scss */
  article.aboutPage .headerWrap h1 {
    font-size: 36px;
    font-size: 5.84416vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 26, _main.scss */
  article.aboutPage .headerWrap h1 {
    font-size: 36px;
  }
}
@media screen and (max-width: 768px) {
  /* line 26, _main.scss */
  article.aboutPage .headerWrap h1 {
    text-align: center;
  }
}
@media screen and (max-width: 768px) and (max-width: 486px) {
  /* line 26, _main.scss */
  article.aboutPage .headerWrap h1 {
    font-size: 18px;
    font-size: 5.625vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 481px) and (max-width: 768px) {
  /* line 26, _main.scss */
  article.aboutPage .headerWrap h1 {
    font-size: 18px;
    font-size: 2.92208vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 769px) {
  /* line 26, _main.scss */
  article.aboutPage .headerWrap h1 {
    font-size: 18px;
  }
}

/* line 34, _main.scss */
article.aboutPage .headerWrap p {
  text-align: left;
  padding: 0 0 40px;
}
@media screen and (max-width: 486px) {
  /* line 34, _main.scss */
  article.aboutPage .headerWrap p {
    font-size: 14px;
    font-size: 4.375vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 34, _main.scss */
  article.aboutPage .headerWrap p {
    font-size: 14px;
    font-size: 2.27273vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 34, _main.scss */
  article.aboutPage .headerWrap p {
    font-size: 14px;
  }
}
@media screen and (max-width: 768px) {
  /* line 34, _main.scss */
  article.aboutPage .headerWrap p {
    text-align: center;
  }
}
@media screen and (max-width: 768px) and (max-width: 486px) {
  /* line 34, _main.scss */
  article.aboutPage .headerWrap p {
    font-size: 10px;
    font-size: 3.125vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 481px) and (max-width: 768px) {
  /* line 34, _main.scss */
  article.aboutPage .headerWrap p {
    font-size: 10px;
    font-size: 1.62338vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 769px) {
  /* line 34, _main.scss */
  article.aboutPage .headerWrap p {
    font-size: 10px;
  }
}

@media screen and (max-width: 768px) {
  /* line 96, _main.scss */
  article.aboutPage .headerWrap {
    display: block;
  }
}
/* line 104, _main.scss */
article.aboutPage .headerWrap header {
  width: 20%;
  -webkit-writing-mode: vertical-rl;
  -moz-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  -o-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
  align-items: center;
  line-height: 1.4em;
  margin: 0 auto 0;
}
@media screen and (max-width: 486px) {
  /* line 104, _main.scss */
  article.aboutPage .headerWrap header {
    font-size: 70px;
    font-size: 21.875vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 104, _main.scss */
  article.aboutPage .headerWrap header {
    font-size: 70px;
    font-size: 11.36364vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 104, _main.scss */
  article.aboutPage .headerWrap header {
    font-size: 70px;
  }
}
@media screen and (max-width: 768px) {
  /* line 104, _main.scss */
  article.aboutPage .headerWrap header {
    writing-mode: horizontal-tb;
    -ms-writing-mode: lr-tb;
    width: 100%;
  }
}
@media screen and (max-width: 768px) and (max-width: 486px) {
  /* line 104, _main.scss */
  article.aboutPage .headerWrap header {
    font-size: 24px;
    font-size: 7.5vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 481px) and (max-width: 768px) {
  /* line 104, _main.scss */
  article.aboutPage .headerWrap header {
    font-size: 24px;
    font-size: 3.8961vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 769px) {
  /* line 104, _main.scss */
  article.aboutPage .headerWrap header {
    font-size: 24px;
  }
}

/* line 116, _main.scss */
article.aboutPage .headerWrap header h1 {
  align-self: stretch;
  padding: 0 60px 0 0;
}
@media screen and (max-width: 768px) {
  /* line 116, _main.scss */
  article.aboutPage .headerWrap header h1 {
    padding: 0 0 0 0;
  }
}
/* line 123, _main.scss */
article.aboutPage .headerWrap header p.eng {
  align-self: stretch;
}
@media screen and (max-width: 768px) {
  /* line 123, _main.scss */
  article.aboutPage .headerWrap header p.eng {
    text-align: center;
  }
}
/* line 130, _main.scss */
article.aboutPage .headerWrap figure {
  width: 80%;
  height: 400px;
  border-radius: 20px 0 0 20px;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  /* line 130, _main.scss */
  article.aboutPage .headerWrap figure {
    width: 100%;
    height: 50vw;
    border-radius: 0 0 0 0;
  }
}
/* line 141, _main.scss */
article.aboutPage .headerWrap figure > img {
  width: 100%;
  height: auto;
  min-width: 100%;
  min-height: 100%;
  max-width: inherit;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}
@media screen and (max-width: 768px) {
  /* line 141, _main.scss */
  article.aboutPage .headerWrap figure > img {
    min-width: auto;
    min-height: auto;
  }
}
/* line 162, _main.scss */
article.aboutPage .headContWrap {
  padding: 100px 0;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-wrap: wrap;
  max-width: 960px;
  justify-content: space-between;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  /* line 162, _main.scss */
  article.aboutPage .headContWrap {
    display: block;
  }
}
/* line 171, _main.scss */
article.aboutPage .headContWrap .headLineBox {
  animation: fadeIn;
  animation-duration: 2s;
  animation-delay: .5s;
  animation-fill-mode: both;
  width: 50%;
}
@media screen and (max-width: 768px) {
  /* line 171, _main.scss */
  article.aboutPage .headContWrap .headLineBox {
    width: 100%;
  }
}
/* line 177, _main.scss */
article.aboutPage .headContWrap .headLineBox h2 {
  line-height: 1.2em;
  padding-bottom: 10px;
}
@media screen and (max-width: 486px) {
  /* line 177, _main.scss */
  article.aboutPage .headContWrap .headLineBox h2 {
    font-size: 28px;
    font-size: 8.75vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 177, _main.scss */
  article.aboutPage .headContWrap .headLineBox h2 {
    font-size: 28px;
    font-size: 4.54545vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 177, _main.scss */
  article.aboutPage .headContWrap .headLineBox h2 {
    font-size: 28px;
  }
}
@media screen and (max-width: 768px) and (max-width: 486px) {
  /* line 177, _main.scss */
  article.aboutPage .headContWrap .headLineBox h2 {
    font-size: 18px;
    font-size: 5.625vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 481px) and (max-width: 768px) {
  /* line 177, _main.scss */
  article.aboutPage .headContWrap .headLineBox h2 {
    font-size: 18px;
    font-size: 2.92208vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 769px) {
  /* line 177, _main.scss */
  article.aboutPage .headContWrap .headLineBox h2 {
    font-size: 18px;
  }
}

/* line 185, _main.scss */
article.aboutPage .headContWrap .headLineBox p.engTxt {
  padding-bottom: 20px;
}
@media screen and (max-width: 486px) {
  /* line 185, _main.scss */
  article.aboutPage .headContWrap .headLineBox p.engTxt {
    font-size: 14px;
    font-size: 4.375vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 185, _main.scss */
  article.aboutPage .headContWrap .headLineBox p.engTxt {
    font-size: 14px;
    font-size: 2.27273vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 185, _main.scss */
  article.aboutPage .headContWrap .headLineBox p.engTxt {
    font-size: 14px;
  }
}
@media screen and (max-width: 768px) and (max-width: 486px) {
  /* line 185, _main.scss */
  article.aboutPage .headContWrap .headLineBox p.engTxt {
    font-size: 8px;
    font-size: 2.5vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 481px) and (max-width: 768px) {
  /* line 185, _main.scss */
  article.aboutPage .headContWrap .headLineBox p.engTxt {
    font-size: 8px;
    font-size: 1.2987vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 769px) {
  /* line 185, _main.scss */
  article.aboutPage .headContWrap .headLineBox p.engTxt {
    font-size: 8px;
  }
}

/* line 193, _main.scss */
article.aboutPage .headContWrap .leadBox {
  animation: fadeIn;
  animation-duration: 2s;
  animation-delay: .5s;
  animation-fill-mode: both;
  width: 45%;
}
@media screen and (max-width: 768px) {
  /* line 193, _main.scss */
  article.aboutPage .headContWrap .leadBox {
    width: 100%;
  }
}
/* line 199, _main.scss */
article.aboutPage .headContWrap .leadBox p {
  text-align: left;
}
@media screen and (max-width: 486px) {
  /* line 199, _main.scss */
  article.aboutPage .headContWrap .leadBox p {
    font-size: 14px;
    font-size: 4.375vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 199, _main.scss */
  article.aboutPage .headContWrap .leadBox p {
    font-size: 14px;
    font-size: 2.27273vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 199, _main.scss */
  article.aboutPage .headContWrap .leadBox p {
    font-size: 14px;
  }
}
@media screen and (max-width: 768px) and (max-width: 486px) {
  /* line 199, _main.scss */
  article.aboutPage .headContWrap .leadBox p {
    font-size: 10px;
    font-size: 3.125vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 481px) and (max-width: 768px) {
  /* line 199, _main.scss */
  article.aboutPage .headContWrap .leadBox p {
    font-size: 10px;
    font-size: 1.62338vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 769px) {
  /* line 199, _main.scss */
  article.aboutPage .headContWrap .leadBox p {
    font-size: 10px;
  }
}

/* line 208, _main.scss */
article.aboutPage .centerContWrap {
  padding: 100px 0;
  max-width: 960px;
  margin: 0 auto;
}
/* line 212, _main.scss */
article.aboutPage .centerContWrap .centerImg {
  animation: fadeIn;
  animation-duration: 2s;
  animation-delay: .5s;
  animation-fill-mode: both;
}
/* line 214, _main.scss */
article.aboutPage .centerContWrap .centerImg img {
  border-radius: 20px 20px 20px 20px;
}
/* line 218, _main.scss */
article.aboutPage .centerContWrap .headLineBox {
  animation: fadeIn;
  animation-duration: 2s;
  animation-delay: .5s;
  animation-fill-mode: both;
}
/* line 220, _main.scss */
article.aboutPage .centerContWrap .headLineBox h2 {
  padding: 30px 0 10px;
}
@media screen and (max-width: 486px) {
  /* line 220, _main.scss */
  article.aboutPage .centerContWrap .headLineBox h2 {
    font-size: 28px;
    font-size: 8.75vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 220, _main.scss */
  article.aboutPage .centerContWrap .headLineBox h2 {
    font-size: 28px;
    font-size: 4.54545vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 220, _main.scss */
  article.aboutPage .centerContWrap .headLineBox h2 {
    font-size: 28px;
  }
}
/* line 224, _main.scss */
article.aboutPage .centerContWrap .headLineBox p.engTxt {
  padding: 0 0 50px;
}
/* line 228, _main.scss */
article.aboutPage .centerContWrap .leadBox {
  animation: fadeIn;
  animation-duration: 2s;
  animation-delay: .5s;
  animation-fill-mode: both;
}
/* line 230, _main.scss */
article.aboutPage .centerContWrap .leadBox p {
  text-align: left;
  max-width: 600px;
  margin: 0 auto;
}
@media screen and (max-width: 486px) {
  /* line 230, _main.scss */
  article.aboutPage .centerContWrap .leadBox p {
    font-size: 14px;
    font-size: 4.375vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 230, _main.scss */
  article.aboutPage .centerContWrap .leadBox p {
    font-size: 14px;
    font-size: 2.27273vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 230, _main.scss */
  article.aboutPage .centerContWrap .leadBox p {
    font-size: 14px;
  }
}

/* line 248, _main.scss */
article.servicePage {
  width: 100%;
  margin: 0 auto 10%;
  text-align: center;
}
/* line 96, _main.scss */
article.servicePage .headerWrap {
  animation: fadeIn;
  animation-duration: 2s;
  animation-delay: .5s;
  animation-fill-mode: both;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-wrap: wrap;
  flex-direction: row-reverse;
}
/* line 17, _main.scss */
article.servicePage .headerWrap span {
  display: block;
  padding: 0 0 5%;
}
@media screen and (max-width: 486px) {
  /* line 17, _main.scss */
  article.servicePage .headerWrap span {
    font-size: 14px;
    font-size: 4.375vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 17, _main.scss */
  article.servicePage .headerWrap span {
    font-size: 14px;
    font-size: 2.27273vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 17, _main.scss */
  article.servicePage .headerWrap span {
    font-size: 14px;
  }
}
@media screen and (max-width: 768px) {
  /* line 17, _main.scss */
  article.servicePage .headerWrap span {
    text-align: center;
  }
}
@media screen and (max-width: 768px) and (max-width: 486px) {
  /* line 17, _main.scss */
  article.servicePage .headerWrap span {
    font-size: 8px;
    font-size: 2.5vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 481px) and (max-width: 768px) {
  /* line 17, _main.scss */
  article.servicePage .headerWrap span {
    font-size: 8px;
    font-size: 1.2987vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 769px) {
  /* line 17, _main.scss */
  article.servicePage .headerWrap span {
    font-size: 8px;
  }
}

/* line 26, _main.scss */
article.servicePage .headerWrap h1 {
  padding: 0 0 20px;
}
@media screen and (max-width: 486px) {
  /* line 26, _main.scss */
  article.servicePage .headerWrap h1 {
    font-size: 36px;
    font-size: 11.25vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 26, _main.scss */
  article.servicePage .headerWrap h1 {
    font-size: 36px;
    font-size: 5.84416vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 26, _main.scss */
  article.servicePage .headerWrap h1 {
    font-size: 36px;
  }
}
@media screen and (max-width: 768px) {
  /* line 26, _main.scss */
  article.servicePage .headerWrap h1 {
    text-align: center;
  }
}
@media screen and (max-width: 768px) and (max-width: 486px) {
  /* line 26, _main.scss */
  article.servicePage .headerWrap h1 {
    font-size: 18px;
    font-size: 5.625vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 481px) and (max-width: 768px) {
  /* line 26, _main.scss */
  article.servicePage .headerWrap h1 {
    font-size: 18px;
    font-size: 2.92208vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 769px) {
  /* line 26, _main.scss */
  article.servicePage .headerWrap h1 {
    font-size: 18px;
  }
}

/* line 34, _main.scss */
article.servicePage .headerWrap p {
  text-align: left;
  padding: 0 0 40px;
}
@media screen and (max-width: 486px) {
  /* line 34, _main.scss */
  article.servicePage .headerWrap p {
    font-size: 14px;
    font-size: 4.375vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 34, _main.scss */
  article.servicePage .headerWrap p {
    font-size: 14px;
    font-size: 2.27273vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 34, _main.scss */
  article.servicePage .headerWrap p {
    font-size: 14px;
  }
}
@media screen and (max-width: 768px) {
  /* line 34, _main.scss */
  article.servicePage .headerWrap p {
    text-align: center;
  }
}
@media screen and (max-width: 768px) and (max-width: 486px) {
  /* line 34, _main.scss */
  article.servicePage .headerWrap p {
    font-size: 10px;
    font-size: 3.125vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 481px) and (max-width: 768px) {
  /* line 34, _main.scss */
  article.servicePage .headerWrap p {
    font-size: 10px;
    font-size: 1.62338vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 769px) {
  /* line 34, _main.scss */
  article.servicePage .headerWrap p {
    font-size: 10px;
  }
}

@media screen and (max-width: 768px) {
  /* line 96, _main.scss */
  article.servicePage .headerWrap {
    display: block;
  }
}
/* line 104, _main.scss */
article.servicePage .headerWrap header {
  width: 20%;
  -webkit-writing-mode: vertical-rl;
  -moz-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  -o-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
  align-items: center;
  line-height: 1.4em;
  margin: 0 auto 0;
}
@media screen and (max-width: 486px) {
  /* line 104, _main.scss */
  article.servicePage .headerWrap header {
    font-size: 70px;
    font-size: 21.875vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 104, _main.scss */
  article.servicePage .headerWrap header {
    font-size: 70px;
    font-size: 11.36364vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 104, _main.scss */
  article.servicePage .headerWrap header {
    font-size: 70px;
  }
}
@media screen and (max-width: 768px) {
  /* line 104, _main.scss */
  article.servicePage .headerWrap header {
    writing-mode: horizontal-tb;
    -ms-writing-mode: lr-tb;
    width: 100%;
  }
}
@media screen and (max-width: 768px) and (max-width: 486px) {
  /* line 104, _main.scss */
  article.servicePage .headerWrap header {
    font-size: 24px;
    font-size: 7.5vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 481px) and (max-width: 768px) {
  /* line 104, _main.scss */
  article.servicePage .headerWrap header {
    font-size: 24px;
    font-size: 3.8961vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 769px) {
  /* line 104, _main.scss */
  article.servicePage .headerWrap header {
    font-size: 24px;
  }
}

/* line 116, _main.scss */
article.servicePage .headerWrap header h1 {
  align-self: stretch;
  padding: 0 60px 0 0;
}
@media screen and (max-width: 768px) {
  /* line 116, _main.scss */
  article.servicePage .headerWrap header h1 {
    padding: 0 0 0 0;
  }
}
/* line 123, _main.scss */
article.servicePage .headerWrap header p.eng {
  align-self: stretch;
}
@media screen and (max-width: 768px) {
  /* line 123, _main.scss */
  article.servicePage .headerWrap header p.eng {
    text-align: center;
  }
}
/* line 130, _main.scss */
article.servicePage .headerWrap figure {
  width: 80%;
  height: 400px;
  border-radius: 20px 0 0 20px;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  /* line 130, _main.scss */
  article.servicePage .headerWrap figure {
    width: 100%;
    height: 50vw;
    border-radius: 0 0 0 0;
  }
}
/* line 141, _main.scss */
article.servicePage .headerWrap figure > img {
  width: 100%;
  height: auto;
  min-width: 100%;
  min-height: 100%;
  max-width: inherit;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}
@media screen and (max-width: 768px) {
  /* line 141, _main.scss */
  article.servicePage .headerWrap figure > img {
    min-width: auto;
    min-height: auto;
  }
}
/* line 162, _main.scss */
article.servicePage .headContWrap {
  padding: 100px 0;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-wrap: wrap;
  max-width: 960px;
  justify-content: space-between;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  /* line 162, _main.scss */
  article.servicePage .headContWrap {
    display: block;
  }
}
/* line 171, _main.scss */
article.servicePage .headContWrap .headLineBox {
  animation: fadeIn;
  animation-duration: 2s;
  animation-delay: .5s;
  animation-fill-mode: both;
  width: 50%;
}
@media screen and (max-width: 768px) {
  /* line 171, _main.scss */
  article.servicePage .headContWrap .headLineBox {
    width: 100%;
  }
}
/* line 177, _main.scss */
article.servicePage .headContWrap .headLineBox h2 {
  line-height: 1.2em;
  padding-bottom: 10px;
}
@media screen and (max-width: 486px) {
  /* line 177, _main.scss */
  article.servicePage .headContWrap .headLineBox h2 {
    font-size: 28px;
    font-size: 8.75vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 177, _main.scss */
  article.servicePage .headContWrap .headLineBox h2 {
    font-size: 28px;
    font-size: 4.54545vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 177, _main.scss */
  article.servicePage .headContWrap .headLineBox h2 {
    font-size: 28px;
  }
}
@media screen and (max-width: 768px) and (max-width: 486px) {
  /* line 177, _main.scss */
  article.servicePage .headContWrap .headLineBox h2 {
    font-size: 18px;
    font-size: 5.625vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 481px) and (max-width: 768px) {
  /* line 177, _main.scss */
  article.servicePage .headContWrap .headLineBox h2 {
    font-size: 18px;
    font-size: 2.92208vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 769px) {
  /* line 177, _main.scss */
  article.servicePage .headContWrap .headLineBox h2 {
    font-size: 18px;
  }
}

/* line 185, _main.scss */
article.servicePage .headContWrap .headLineBox p.engTxt {
  padding-bottom: 20px;
}
@media screen and (max-width: 486px) {
  /* line 185, _main.scss */
  article.servicePage .headContWrap .headLineBox p.engTxt {
    font-size: 14px;
    font-size: 4.375vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 185, _main.scss */
  article.servicePage .headContWrap .headLineBox p.engTxt {
    font-size: 14px;
    font-size: 2.27273vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 185, _main.scss */
  article.servicePage .headContWrap .headLineBox p.engTxt {
    font-size: 14px;
  }
}
@media screen and (max-width: 768px) and (max-width: 486px) {
  /* line 185, _main.scss */
  article.servicePage .headContWrap .headLineBox p.engTxt {
    font-size: 8px;
    font-size: 2.5vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 481px) and (max-width: 768px) {
  /* line 185, _main.scss */
  article.servicePage .headContWrap .headLineBox p.engTxt {
    font-size: 8px;
    font-size: 1.2987vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 769px) {
  /* line 185, _main.scss */
  article.servicePage .headContWrap .headLineBox p.engTxt {
    font-size: 8px;
  }
}

/* line 193, _main.scss */
article.servicePage .headContWrap .leadBox {
  animation: fadeIn;
  animation-duration: 2s;
  animation-delay: .5s;
  animation-fill-mode: both;
  width: 45%;
}
@media screen and (max-width: 768px) {
  /* line 193, _main.scss */
  article.servicePage .headContWrap .leadBox {
    width: 100%;
  }
}
/* line 199, _main.scss */
article.servicePage .headContWrap .leadBox p {
  text-align: left;
}
@media screen and (max-width: 486px) {
  /* line 199, _main.scss */
  article.servicePage .headContWrap .leadBox p {
    font-size: 14px;
    font-size: 4.375vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 199, _main.scss */
  article.servicePage .headContWrap .leadBox p {
    font-size: 14px;
    font-size: 2.27273vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 199, _main.scss */
  article.servicePage .headContWrap .leadBox p {
    font-size: 14px;
  }
}
@media screen and (max-width: 768px) and (max-width: 486px) {
  /* line 199, _main.scss */
  article.servicePage .headContWrap .leadBox p {
    font-size: 10px;
    font-size: 3.125vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 481px) and (max-width: 768px) {
  /* line 199, _main.scss */
  article.servicePage .headContWrap .leadBox p {
    font-size: 10px;
    font-size: 1.62338vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 769px) {
  /* line 199, _main.scss */
  article.servicePage .headContWrap .leadBox p {
    font-size: 10px;
  }
}

/* line 208, _main.scss */
article.servicePage .centerContWrap {
  padding: 100px 0;
  max-width: 960px;
  margin: 0 auto;
}
/* line 212, _main.scss */
article.servicePage .centerContWrap .centerImg {
  animation: fadeIn;
  animation-duration: 2s;
  animation-delay: .5s;
  animation-fill-mode: both;
}
/* line 214, _main.scss */
article.servicePage .centerContWrap .centerImg img {
  border-radius: 20px 20px 20px 20px;
}
/* line 218, _main.scss */
article.servicePage .centerContWrap .headLineBox {
  animation: fadeIn;
  animation-duration: 2s;
  animation-delay: .5s;
  animation-fill-mode: both;
}
/* line 220, _main.scss */
article.servicePage .centerContWrap .headLineBox h2 {
  padding: 30px 0 10px;
}
@media screen and (max-width: 486px) {
  /* line 220, _main.scss */
  article.servicePage .centerContWrap .headLineBox h2 {
    font-size: 28px;
    font-size: 8.75vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 220, _main.scss */
  article.servicePage .centerContWrap .headLineBox h2 {
    font-size: 28px;
    font-size: 4.54545vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 220, _main.scss */
  article.servicePage .centerContWrap .headLineBox h2 {
    font-size: 28px;
  }
}
/* line 224, _main.scss */
article.servicePage .centerContWrap .headLineBox p.engTxt {
  padding: 0 0 50px;
}
/* line 228, _main.scss */
article.servicePage .centerContWrap .leadBox {
  animation: fadeIn;
  animation-duration: 2s;
  animation-delay: .5s;
  animation-fill-mode: both;
}
/* line 230, _main.scss */
article.servicePage .centerContWrap .leadBox p {
  text-align: left;
  max-width: 600px;
  margin: 0 auto;
}
@media screen and (max-width: 486px) {
  /* line 230, _main.scss */
  article.servicePage .centerContWrap .leadBox p {
    font-size: 14px;
    font-size: 4.375vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 230, _main.scss */
  article.servicePage .centerContWrap .leadBox p {
    font-size: 14px;
    font-size: 2.27273vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 230, _main.scss */
  article.servicePage .centerContWrap .leadBox p {
    font-size: 14px;
  }
}
/* line 254, _main.scss */
article.servicePage .fullCircleLogo {
  animation: fadeIn;
  animation-duration: 2s;
  animation-delay: .5s;
  animation-fill-mode: both;
  padding: 0 0 50px;
}
/* line 258, _main.scss */
article.servicePage .fullCircleImg {
  animation: fadeIn;
  animation-duration: 2s;
  animation-delay: .5s;
  animation-fill-mode: both;
  padding: 50px 0;
}

/* line 263, _main.scss */
article.contactPage {
  width: 100%;
  margin: 0 auto 10%;
  text-align: center;
}
/* line 96, _main.scss */
article.contactPage .headerWrap {
  animation: fadeIn;
  animation-duration: 2s;
  animation-delay: .5s;
  animation-fill-mode: both;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-wrap: wrap;
  flex-direction: row-reverse;
}
/* line 17, _main.scss */
article.contactPage .headerWrap span {
  display: block;
  padding: 0 0 5%;
}
@media screen and (max-width: 486px) {
  /* line 17, _main.scss */
  article.contactPage .headerWrap span {
    font-size: 14px;
    font-size: 4.375vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 17, _main.scss */
  article.contactPage .headerWrap span {
    font-size: 14px;
    font-size: 2.27273vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 17, _main.scss */
  article.contactPage .headerWrap span {
    font-size: 14px;
  }
}
@media screen and (max-width: 768px) {
  /* line 17, _main.scss */
  article.contactPage .headerWrap span {
    text-align: center;
  }
}
@media screen and (max-width: 768px) and (max-width: 486px) {
  /* line 17, _main.scss */
  article.contactPage .headerWrap span {
    font-size: 8px;
    font-size: 2.5vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 481px) and (max-width: 768px) {
  /* line 17, _main.scss */
  article.contactPage .headerWrap span {
    font-size: 8px;
    font-size: 1.2987vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 769px) {
  /* line 17, _main.scss */
  article.contactPage .headerWrap span {
    font-size: 8px;
  }
}

/* line 26, _main.scss */
article.contactPage .headerWrap h1 {
  padding: 0 0 20px;
}
@media screen and (max-width: 486px) {
  /* line 26, _main.scss */
  article.contactPage .headerWrap h1 {
    font-size: 36px;
    font-size: 11.25vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 26, _main.scss */
  article.contactPage .headerWrap h1 {
    font-size: 36px;
    font-size: 5.84416vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 26, _main.scss */
  article.contactPage .headerWrap h1 {
    font-size: 36px;
  }
}
@media screen and (max-width: 768px) {
  /* line 26, _main.scss */
  article.contactPage .headerWrap h1 {
    text-align: center;
  }
}
@media screen and (max-width: 768px) and (max-width: 486px) {
  /* line 26, _main.scss */
  article.contactPage .headerWrap h1 {
    font-size: 18px;
    font-size: 5.625vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 481px) and (max-width: 768px) {
  /* line 26, _main.scss */
  article.contactPage .headerWrap h1 {
    font-size: 18px;
    font-size: 2.92208vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 769px) {
  /* line 26, _main.scss */
  article.contactPage .headerWrap h1 {
    font-size: 18px;
  }
}

/* line 34, _main.scss */
article.contactPage .headerWrap p {
  text-align: left;
  padding: 0 0 40px;
}
@media screen and (max-width: 486px) {
  /* line 34, _main.scss */
  article.contactPage .headerWrap p {
    font-size: 14px;
    font-size: 4.375vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 34, _main.scss */
  article.contactPage .headerWrap p {
    font-size: 14px;
    font-size: 2.27273vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 34, _main.scss */
  article.contactPage .headerWrap p {
    font-size: 14px;
  }
}
@media screen and (max-width: 768px) {
  /* line 34, _main.scss */
  article.contactPage .headerWrap p {
    text-align: center;
  }
}
@media screen and (max-width: 768px) and (max-width: 486px) {
  /* line 34, _main.scss */
  article.contactPage .headerWrap p {
    font-size: 10px;
    font-size: 3.125vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 481px) and (max-width: 768px) {
  /* line 34, _main.scss */
  article.contactPage .headerWrap p {
    font-size: 10px;
    font-size: 1.62338vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 769px) {
  /* line 34, _main.scss */
  article.contactPage .headerWrap p {
    font-size: 10px;
  }
}

@media screen and (max-width: 768px) {
  /* line 96, _main.scss */
  article.contactPage .headerWrap {
    display: block;
  }
}
/* line 104, _main.scss */
article.contactPage .headerWrap header {
  width: 20%;
  -webkit-writing-mode: vertical-rl;
  -moz-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  -o-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
  align-items: center;
  line-height: 1.4em;
  margin: 0 auto 0;
}
@media screen and (max-width: 486px) {
  /* line 104, _main.scss */
  article.contactPage .headerWrap header {
    font-size: 70px;
    font-size: 21.875vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 104, _main.scss */
  article.contactPage .headerWrap header {
    font-size: 70px;
    font-size: 11.36364vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 104, _main.scss */
  article.contactPage .headerWrap header {
    font-size: 70px;
  }
}
@media screen and (max-width: 768px) {
  /* line 104, _main.scss */
  article.contactPage .headerWrap header {
    writing-mode: horizontal-tb;
    -ms-writing-mode: lr-tb;
    width: 100%;
  }
}
@media screen and (max-width: 768px) and (max-width: 486px) {
  /* line 104, _main.scss */
  article.contactPage .headerWrap header {
    font-size: 24px;
    font-size: 7.5vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 481px) and (max-width: 768px) {
  /* line 104, _main.scss */
  article.contactPage .headerWrap header {
    font-size: 24px;
    font-size: 3.8961vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 769px) {
  /* line 104, _main.scss */
  article.contactPage .headerWrap header {
    font-size: 24px;
  }
}

/* line 116, _main.scss */
article.contactPage .headerWrap header h1 {
  align-self: stretch;
  padding: 0 60px 0 0;
}
@media screen and (max-width: 768px) {
  /* line 116, _main.scss */
  article.contactPage .headerWrap header h1 {
    padding: 0 0 0 0;
  }
}
/* line 123, _main.scss */
article.contactPage .headerWrap header p.eng {
  align-self: stretch;
}
@media screen and (max-width: 768px) {
  /* line 123, _main.scss */
  article.contactPage .headerWrap header p.eng {
    text-align: center;
  }
}
/* line 130, _main.scss */
article.contactPage .headerWrap figure {
  width: 80%;
  height: 400px;
  border-radius: 20px 0 0 20px;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  /* line 130, _main.scss */
  article.contactPage .headerWrap figure {
    width: 100%;
    height: 50vw;
    border-radius: 0 0 0 0;
  }
}
/* line 141, _main.scss */
article.contactPage .headerWrap figure > img {
  width: 100%;
  height: auto;
  min-width: 100%;
  min-height: 100%;
  max-width: inherit;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}
@media screen and (max-width: 768px) {
  /* line 141, _main.scss */
  article.contactPage .headerWrap figure > img {
    min-width: auto;
    min-height: auto;
  }
}
/* line 162, _main.scss */
article.contactPage .headContWrap {
  padding: 100px 0;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-wrap: wrap;
  max-width: 960px;
  justify-content: space-between;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  /* line 162, _main.scss */
  article.contactPage .headContWrap {
    display: block;
  }
}
/* line 171, _main.scss */
article.contactPage .headContWrap .headLineBox {
  animation: fadeIn;
  animation-duration: 2s;
  animation-delay: .5s;
  animation-fill-mode: both;
  width: 50%;
}
@media screen and (max-width: 768px) {
  /* line 171, _main.scss */
  article.contactPage .headContWrap .headLineBox {
    width: 100%;
  }
}
/* line 177, _main.scss */
article.contactPage .headContWrap .headLineBox h2 {
  line-height: 1.2em;
  padding-bottom: 10px;
}
@media screen and (max-width: 486px) {
  /* line 177, _main.scss */
  article.contactPage .headContWrap .headLineBox h2 {
    font-size: 28px;
    font-size: 8.75vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 177, _main.scss */
  article.contactPage .headContWrap .headLineBox h2 {
    font-size: 28px;
    font-size: 4.54545vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 177, _main.scss */
  article.contactPage .headContWrap .headLineBox h2 {
    font-size: 28px;
  }
}
@media screen and (max-width: 768px) and (max-width: 486px) {
  /* line 177, _main.scss */
  article.contactPage .headContWrap .headLineBox h2 {
    font-size: 18px;
    font-size: 5.625vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 481px) and (max-width: 768px) {
  /* line 177, _main.scss */
  article.contactPage .headContWrap .headLineBox h2 {
    font-size: 18px;
    font-size: 2.92208vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 769px) {
  /* line 177, _main.scss */
  article.contactPage .headContWrap .headLineBox h2 {
    font-size: 18px;
  }
}

/* line 185, _main.scss */
article.contactPage .headContWrap .headLineBox p.engTxt {
  padding-bottom: 20px;
}
@media screen and (max-width: 486px) {
  /* line 185, _main.scss */
  article.contactPage .headContWrap .headLineBox p.engTxt {
    font-size: 14px;
    font-size: 4.375vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 185, _main.scss */
  article.contactPage .headContWrap .headLineBox p.engTxt {
    font-size: 14px;
    font-size: 2.27273vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 185, _main.scss */
  article.contactPage .headContWrap .headLineBox p.engTxt {
    font-size: 14px;
  }
}
@media screen and (max-width: 768px) and (max-width: 486px) {
  /* line 185, _main.scss */
  article.contactPage .headContWrap .headLineBox p.engTxt {
    font-size: 8px;
    font-size: 2.5vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 481px) and (max-width: 768px) {
  /* line 185, _main.scss */
  article.contactPage .headContWrap .headLineBox p.engTxt {
    font-size: 8px;
    font-size: 1.2987vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 769px) {
  /* line 185, _main.scss */
  article.contactPage .headContWrap .headLineBox p.engTxt {
    font-size: 8px;
  }
}

/* line 193, _main.scss */
article.contactPage .headContWrap .leadBox {
  animation: fadeIn;
  animation-duration: 2s;
  animation-delay: .5s;
  animation-fill-mode: both;
  width: 45%;
}
@media screen and (max-width: 768px) {
  /* line 193, _main.scss */
  article.contactPage .headContWrap .leadBox {
    width: 100%;
  }
}
/* line 199, _main.scss */
article.contactPage .headContWrap .leadBox p {
  text-align: left;
}
@media screen and (max-width: 486px) {
  /* line 199, _main.scss */
  article.contactPage .headContWrap .leadBox p {
    font-size: 14px;
    font-size: 4.375vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 199, _main.scss */
  article.contactPage .headContWrap .leadBox p {
    font-size: 14px;
    font-size: 2.27273vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 199, _main.scss */
  article.contactPage .headContWrap .leadBox p {
    font-size: 14px;
  }
}
@media screen and (max-width: 768px) and (max-width: 486px) {
  /* line 199, _main.scss */
  article.contactPage .headContWrap .leadBox p {
    font-size: 10px;
    font-size: 3.125vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 481px) and (max-width: 768px) {
  /* line 199, _main.scss */
  article.contactPage .headContWrap .leadBox p {
    font-size: 10px;
    font-size: 1.62338vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 769px) {
  /* line 199, _main.scss */
  article.contactPage .headContWrap .leadBox p {
    font-size: 10px;
  }
}

/* line 208, _main.scss */
article.contactPage .centerContWrap {
  padding: 100px 0;
  max-width: 960px;
  margin: 0 auto;
}
/* line 212, _main.scss */
article.contactPage .centerContWrap .centerImg {
  animation: fadeIn;
  animation-duration: 2s;
  animation-delay: .5s;
  animation-fill-mode: both;
}
/* line 214, _main.scss */
article.contactPage .centerContWrap .centerImg img {
  border-radius: 20px 20px 20px 20px;
}
/* line 218, _main.scss */
article.contactPage .centerContWrap .headLineBox {
  animation: fadeIn;
  animation-duration: 2s;
  animation-delay: .5s;
  animation-fill-mode: both;
}
/* line 220, _main.scss */
article.contactPage .centerContWrap .headLineBox h2 {
  padding: 30px 0 10px;
}
@media screen and (max-width: 486px) {
  /* line 220, _main.scss */
  article.contactPage .centerContWrap .headLineBox h2 {
    font-size: 28px;
    font-size: 8.75vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 220, _main.scss */
  article.contactPage .centerContWrap .headLineBox h2 {
    font-size: 28px;
    font-size: 4.54545vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 220, _main.scss */
  article.contactPage .centerContWrap .headLineBox h2 {
    font-size: 28px;
  }
}
/* line 224, _main.scss */
article.contactPage .centerContWrap .headLineBox p.engTxt {
  padding: 0 0 50px;
}
/* line 228, _main.scss */
article.contactPage .centerContWrap .leadBox {
  animation: fadeIn;
  animation-duration: 2s;
  animation-delay: .5s;
  animation-fill-mode: both;
}
/* line 230, _main.scss */
article.contactPage .centerContWrap .leadBox p {
  text-align: left;
  max-width: 600px;
  margin: 0 auto;
}
@media screen and (max-width: 486px) {
  /* line 230, _main.scss */
  article.contactPage .centerContWrap .leadBox p {
    font-size: 14px;
    font-size: 4.375vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 230, _main.scss */
  article.contactPage .centerContWrap .leadBox p {
    font-size: 14px;
    font-size: 2.27273vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 230, _main.scss */
  article.contactPage .centerContWrap .leadBox p {
    font-size: 14px;
  }
}
/* line 269, _main.scss */
article.contactPage .fullCircleLogo {
  animation: fadeIn;
  animation-duration: 2s;
  animation-delay: .5s;
  animation-fill-mode: both;
  padding: 0 0 50px;
}
/* line 273, _main.scss */
article.contactPage .fullCircleImg {
  animation: fadeIn;
  animation-duration: 2s;
  animation-delay: .5s;
  animation-fill-mode: both;
  padding: 50px 0;
}

/* line 280, _main.scss */
article.message {
  width: 100%;
  max-width: 800px;
  margin: 0 auto 10%;
  text-align: center;
  animation: fadeIn;
  animation-duration: 2s;
  animation-delay: .5s;
  animation-fill-mode: both;
  padding: 0 0 100px;
}
/* line 17, _main.scss */
article.message span {
  display: block;
  padding: 0 0 5%;
}
@media screen and (max-width: 486px) {
  /* line 17, _main.scss */
  article.message span {
    font-size: 14px;
    font-size: 4.375vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 17, _main.scss */
  article.message span {
    font-size: 14px;
    font-size: 2.27273vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 17, _main.scss */
  article.message span {
    font-size: 14px;
  }
}
@media screen and (max-width: 768px) {
  /* line 17, _main.scss */
  article.message span {
    text-align: center;
  }
}
@media screen and (max-width: 768px) and (max-width: 486px) {
  /* line 17, _main.scss */
  article.message span {
    font-size: 8px;
    font-size: 2.5vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 481px) and (max-width: 768px) {
  /* line 17, _main.scss */
  article.message span {
    font-size: 8px;
    font-size: 1.2987vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 769px) {
  /* line 17, _main.scss */
  article.message span {
    font-size: 8px;
  }
}

/* line 26, _main.scss */
article.message h1 {
  padding: 0 0 20px;
}
@media screen and (max-width: 486px) {
  /* line 26, _main.scss */
  article.message h1 {
    font-size: 36px;
    font-size: 11.25vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 26, _main.scss */
  article.message h1 {
    font-size: 36px;
    font-size: 5.84416vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 26, _main.scss */
  article.message h1 {
    font-size: 36px;
  }
}
@media screen and (max-width: 768px) {
  /* line 26, _main.scss */
  article.message h1 {
    text-align: center;
  }
}
@media screen and (max-width: 768px) and (max-width: 486px) {
  /* line 26, _main.scss */
  article.message h1 {
    font-size: 18px;
    font-size: 5.625vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 481px) and (max-width: 768px) {
  /* line 26, _main.scss */
  article.message h1 {
    font-size: 18px;
    font-size: 2.92208vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 769px) {
  /* line 26, _main.scss */
  article.message h1 {
    font-size: 18px;
  }
}

/* line 34, _main.scss */
article.message p {
  text-align: left;
  padding: 0 0 40px;
}
@media screen and (max-width: 486px) {
  /* line 34, _main.scss */
  article.message p {
    font-size: 14px;
    font-size: 4.375vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 34, _main.scss */
  article.message p {
    font-size: 14px;
    font-size: 2.27273vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 34, _main.scss */
  article.message p {
    font-size: 14px;
  }
}
@media screen and (max-width: 768px) {
  /* line 34, _main.scss */
  article.message p {
    text-align: center;
  }
}
@media screen and (max-width: 768px) and (max-width: 486px) {
  /* line 34, _main.scss */
  article.message p {
    font-size: 10px;
    font-size: 3.125vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 481px) and (max-width: 768px) {
  /* line 34, _main.scss */
  article.message p {
    font-size: 10px;
    font-size: 1.62338vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 769px) {
  /* line 34, _main.scss */
  article.message p {
    font-size: 10px;
  }
}

/* line 58, _main.scss */
article.message p.linkBox {
  border: solid #000000 1px;
  padding: 0 0 0;
  display: inline-block;
  margin-top: 40px;
}
/* line 63, _main.scss */
article.message p.linkBox a {
  display: block;
  padding: 20px 80px;
  text-align: center;
  position: relative;
}
/* line 68, _main.scss */
article.message p.linkBox a:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 20px;
  width: 6px;
  height: 6px;
  margin-top: -4px;
  border-top: solid 2px #000;
  border-right: solid 2px #000;
  transform: rotate(45deg);
}
/* line 82, _main.scss */
article.message p.linkBox img {
  width: auto;
  vertical-align: middle;
  margin-left: 10px;
}

/* line 291, _main.scss */
article.service {
  width: 100%;
  max-width: 960px;
  margin: 0 auto 10%;
  text-align: center;
  animation: fadeIn;
  animation-duration: 2s;
  animation-delay: .5s;
  animation-fill-mode: both;
  padding: 0 0 100px;
}
/* line 17, _main.scss */
article.service span {
  display: block;
  padding: 0 0 5%;
}
@media screen and (max-width: 486px) {
  /* line 17, _main.scss */
  article.service span {
    font-size: 14px;
    font-size: 4.375vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 17, _main.scss */
  article.service span {
    font-size: 14px;
    font-size: 2.27273vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 17, _main.scss */
  article.service span {
    font-size: 14px;
  }
}
@media screen and (max-width: 768px) {
  /* line 17, _main.scss */
  article.service span {
    text-align: center;
  }
}
@media screen and (max-width: 768px) and (max-width: 486px) {
  /* line 17, _main.scss */
  article.service span {
    font-size: 8px;
    font-size: 2.5vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 481px) and (max-width: 768px) {
  /* line 17, _main.scss */
  article.service span {
    font-size: 8px;
    font-size: 1.2987vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 769px) {
  /* line 17, _main.scss */
  article.service span {
    font-size: 8px;
  }
}

/* line 26, _main.scss */
article.service h1 {
  padding: 0 0 20px;
}
@media screen and (max-width: 486px) {
  /* line 26, _main.scss */
  article.service h1 {
    font-size: 36px;
    font-size: 11.25vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 26, _main.scss */
  article.service h1 {
    font-size: 36px;
    font-size: 5.84416vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 26, _main.scss */
  article.service h1 {
    font-size: 36px;
  }
}
@media screen and (max-width: 768px) {
  /* line 26, _main.scss */
  article.service h1 {
    text-align: center;
  }
}
@media screen and (max-width: 768px) and (max-width: 486px) {
  /* line 26, _main.scss */
  article.service h1 {
    font-size: 18px;
    font-size: 5.625vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 481px) and (max-width: 768px) {
  /* line 26, _main.scss */
  article.service h1 {
    font-size: 18px;
    font-size: 2.92208vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 769px) {
  /* line 26, _main.scss */
  article.service h1 {
    font-size: 18px;
  }
}

/* line 34, _main.scss */
article.service p {
  text-align: left;
  padding: 0 0 40px;
}
@media screen and (max-width: 486px) {
  /* line 34, _main.scss */
  article.service p {
    font-size: 14px;
    font-size: 4.375vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 34, _main.scss */
  article.service p {
    font-size: 14px;
    font-size: 2.27273vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 34, _main.scss */
  article.service p {
    font-size: 14px;
  }
}
@media screen and (max-width: 768px) {
  /* line 34, _main.scss */
  article.service p {
    text-align: center;
  }
}
@media screen and (max-width: 768px) and (max-width: 486px) {
  /* line 34, _main.scss */
  article.service p {
    font-size: 10px;
    font-size: 3.125vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 481px) and (max-width: 768px) {
  /* line 34, _main.scss */
  article.service p {
    font-size: 10px;
    font-size: 1.62338vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 769px) {
  /* line 34, _main.scss */
  article.service p {
    font-size: 10px;
  }
}

/* line 299, _main.scss */
article.service .serviceBox {
  padding: 0 0 50px;
}
/* line 301, _main.scss */
article.service .serviceBox figure {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  /* line 301, _main.scss */
  article.service .serviceBox figure {
    display: block;
  }
}
/* line 307, _main.scss */
article.service .serviceBox figure > img {
  width: 25%;
}
@media screen and (max-width: 768px) {
  /* line 307, _main.scss */
  article.service .serviceBox figure > img {
    width: 50%;
  }
}
/* line 313, _main.scss */
article.service .serviceBox figure figcaption {
  width: 65%;
  padding-top: 50px;
}
@media screen and (max-width: 768px) {
  /* line 313, _main.scss */
  article.service .serviceBox figure figcaption {
    width: 100%;
  }
}
/* line 319, _main.scss */
article.service .serviceBox figure figcaption h2 {
  text-align: left;
  padding-bottom: 20px;
}
@media screen and (max-width: 486px) {
  /* line 319, _main.scss */
  article.service .serviceBox figure figcaption h2 {
    font-size: 28px;
    font-size: 8.75vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 319, _main.scss */
  article.service .serviceBox figure figcaption h2 {
    font-size: 28px;
    font-size: 4.54545vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 319, _main.scss */
  article.service .serviceBox figure figcaption h2 {
    font-size: 28px;
  }
}
@media screen and (max-width: 768px) and (max-width: 486px) {
  /* line 319, _main.scss */
  article.service .serviceBox figure figcaption h2 {
    font-size: 18px;
    font-size: 5.625vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 481px) and (max-width: 768px) {
  /* line 319, _main.scss */
  article.service .serviceBox figure figcaption h2 {
    font-size: 18px;
    font-size: 2.92208vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 769px) {
  /* line 319, _main.scss */
  article.service .serviceBox figure figcaption h2 {
    font-size: 18px;
  }
}

/* line 330, _main.scss */
article.service .serviceLinkBox {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-wrap: wrap;
}
/* line 332, _main.scss */
article.service .serviceLinkBox figure {
  position: relative;
}
/* line 334, _main.scss */
article.service .serviceLinkBox figure:nth-of-type(2n) {
  margin-top: 5%;
}
/* line 337, _main.scss */
article.service .serviceLinkBox figure figcaption {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
/* line 339, _main.scss */
article.service .serviceLinkBox figure figcaption p.overTxt {
  -webkit-writing-mode: vertical-rl;
  -moz-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  -o-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
  color: #ffffff;
}
@media screen and (max-width: 486px) {
  /* line 339, _main.scss */
  article.service .serviceLinkBox figure figcaption p.overTxt {
    font-size: 18px;
    font-size: 5.625vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 339, _main.scss */
  article.service .serviceLinkBox figure figcaption p.overTxt {
    font-size: 18px;
    font-size: 2.92208vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 339, _main.scss */
  article.service .serviceLinkBox figure figcaption p.overTxt {
    font-size: 18px;
  }
}
/* line 344, _main.scss */
article.service .serviceLinkBox figure figcaption p.linkBtn {
  position: absolute;
  top: 40%;
  right: -35%;
  vertical-align: middle;
}
/* line 349, _main.scss */
article.service .serviceLinkBox figure figcaption p.linkBtn img {
  width: auto;
  vertical-align: middle;
  margin-left: 10px;
}
/* line 58, _main.scss */
article.service p.linkBox {
  border: solid #000000 1px;
  padding: 0 0 0;
  display: inline-block;
  margin-top: 40px;
}
/* line 63, _main.scss */
article.service p.linkBox a {
  display: block;
  padding: 20px 80px;
  text-align: center;
  position: relative;
}
/* line 68, _main.scss */
article.service p.linkBox a:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 20px;
  width: 6px;
  height: 6px;
  margin-top: -4px;
  border-top: solid 2px #000;
  border-right: solid 2px #000;
  transform: rotate(45deg);
}
/* line 82, _main.scss */
article.service p.linkBox img {
  width: auto;
  vertical-align: middle;
  margin-left: 10px;
}

/* line 362, _main.scss */
article.projects {
  width: 100%;
  margin: 0 auto;
  text-align: center;
  animation: fadeIn;
  animation-duration: 2s;
  animation-delay: .5s;
  animation-fill-mode: both;
}
/* line 17, _main.scss */
article.projects span {
  display: block;
  padding: 0 0 5%;
}
@media screen and (max-width: 486px) {
  /* line 17, _main.scss */
  article.projects span {
    font-size: 14px;
    font-size: 4.375vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 17, _main.scss */
  article.projects span {
    font-size: 14px;
    font-size: 2.27273vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 17, _main.scss */
  article.projects span {
    font-size: 14px;
  }
}
@media screen and (max-width: 768px) {
  /* line 17, _main.scss */
  article.projects span {
    text-align: center;
  }
}
@media screen and (max-width: 768px) and (max-width: 486px) {
  /* line 17, _main.scss */
  article.projects span {
    font-size: 8px;
    font-size: 2.5vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 481px) and (max-width: 768px) {
  /* line 17, _main.scss */
  article.projects span {
    font-size: 8px;
    font-size: 1.2987vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 769px) {
  /* line 17, _main.scss */
  article.projects span {
    font-size: 8px;
  }
}

/* line 26, _main.scss */
article.projects h1 {
  padding: 0 0 20px;
}
@media screen and (max-width: 486px) {
  /* line 26, _main.scss */
  article.projects h1 {
    font-size: 36px;
    font-size: 11.25vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 26, _main.scss */
  article.projects h1 {
    font-size: 36px;
    font-size: 5.84416vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 26, _main.scss */
  article.projects h1 {
    font-size: 36px;
  }
}
@media screen and (max-width: 768px) {
  /* line 26, _main.scss */
  article.projects h1 {
    text-align: center;
  }
}
@media screen and (max-width: 768px) and (max-width: 486px) {
  /* line 26, _main.scss */
  article.projects h1 {
    font-size: 18px;
    font-size: 5.625vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 481px) and (max-width: 768px) {
  /* line 26, _main.scss */
  article.projects h1 {
    font-size: 18px;
    font-size: 2.92208vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 769px) {
  /* line 26, _main.scss */
  article.projects h1 {
    font-size: 18px;
  }
}

/* line 34, _main.scss */
article.projects p {
  text-align: left;
  padding: 0 0 40px;
}
@media screen and (max-width: 486px) {
  /* line 34, _main.scss */
  article.projects p {
    font-size: 14px;
    font-size: 4.375vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 34, _main.scss */
  article.projects p {
    font-size: 14px;
    font-size: 2.27273vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 34, _main.scss */
  article.projects p {
    font-size: 14px;
  }
}
@media screen and (max-width: 768px) {
  /* line 34, _main.scss */
  article.projects p {
    text-align: center;
  }
}
@media screen and (max-width: 768px) and (max-width: 486px) {
  /* line 34, _main.scss */
  article.projects p {
    font-size: 10px;
    font-size: 3.125vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 481px) and (max-width: 768px) {
  /* line 34, _main.scss */
  article.projects p {
    font-size: 10px;
    font-size: 1.62338vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 769px) {
  /* line 34, _main.scss */
  article.projects p {
    font-size: 10px;
  }
}

/* line 368, _main.scss */
article.projects .projectsLinkBox {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-wrap: wrap;
}
/* line 370, _main.scss */
article.projects .projectsLinkBox figure {
  position: relative;
  width: 30%;
  margin: 0 1% 5%;
}
/* line 374, _main.scss */
article.projects .projectsLinkBox figure img {
  width: 100%;
}
/* line 377, _main.scss */
article.projects .projectsLinkBox figure figcaption {
  position: relative;
  width: 75%;
  margin-top: -4em;
  z-index: 1000;
  background-color: #ffffff;
  text-align: left;
}
/* line 384, _main.scss */
article.projects .projectsLinkBox figure figcaption h1 {
  padding: 5px 20px 0;
}
@media screen and (max-width: 486px) {
  /* line 384, _main.scss */
  article.projects .projectsLinkBox figure figcaption h1 {
    font-size: 16px;
    font-size: 5vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 384, _main.scss */
  article.projects .projectsLinkBox figure figcaption h1 {
    font-size: 16px;
    font-size: 2.5974vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 384, _main.scss */
  article.projects .projectsLinkBox figure figcaption h1 {
    font-size: 16px;
  }
}
/* line 388, _main.scss */
article.projects .projectsLinkBox figure figcaption span.date {
  padding: 20px 20px 0;
}
@media screen and (max-width: 486px) {
  /* line 388, _main.scss */
  article.projects .projectsLinkBox figure figcaption span.date {
    font-size: 10px;
    font-size: 3.125vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 388, _main.scss */
  article.projects .projectsLinkBox figure figcaption span.date {
    font-size: 10px;
    font-size: 1.62338vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 388, _main.scss */
  article.projects .projectsLinkBox figure figcaption span.date {
    font-size: 10px;
  }
}
/* line 392, _main.scss */
article.projects .projectsLinkBox figure figcaption p {
  padding: 10px 20px 20px;
  line-height: 1.2em;
}
@media screen and (max-width: 486px) {
  /* line 392, _main.scss */
  article.projects .projectsLinkBox figure figcaption p {
    font-size: 14px;
    font-size: 4.375vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 392, _main.scss */
  article.projects .projectsLinkBox figure figcaption p {
    font-size: 14px;
    font-size: 2.27273vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 392, _main.scss */
  article.projects .projectsLinkBox figure figcaption p {
    font-size: 14px;
  }
}
/* line 397, _main.scss */
article.projects .projectsLinkBox figure figcaption p.linkBtn {
  position: absolute;
  top: 40%;
  right: -35%;
  vertical-align: middle;
}
/* line 402, _main.scss */
article.projects .projectsLinkBox figure figcaption p.linkBtn img {
  width: auto;
  vertical-align: middle;
  margin-left: 10px;
}
/* line 58, _main.scss */
article.projects p.linkBox {
  border: solid #000000 1px;
  padding: 0 0 0;
  display: inline-block;
  margin-top: 40px;
}
/* line 63, _main.scss */
article.projects p.linkBox a {
  display: block;
  padding: 20px 80px;
  text-align: center;
  position: relative;
}
/* line 68, _main.scss */
article.projects p.linkBox a:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 20px;
  width: 6px;
  height: 6px;
  margin-top: -4px;
  border-top: solid 2px #000;
  border-right: solid 2px #000;
  transform: rotate(45deg);
}
/* line 82, _main.scss */
article.projects p.linkBox img {
  width: auto;
  vertical-align: middle;
  margin-left: 10px;
}

/* line 415, _main.scss */
article.contact {
  width: 100%;
  margin: 0 auto;
  text-align: center;
  animation: fadeIn;
  animation-duration: 2s;
  animation-delay: .5s;
  animation-fill-mode: both;
  padding: 0 0 100px;
}
/* line 17, _main.scss */
article.contact span {
  display: block;
  padding: 0 0 5%;
}
@media screen and (max-width: 486px) {
  /* line 17, _main.scss */
  article.contact span {
    font-size: 14px;
    font-size: 4.375vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 17, _main.scss */
  article.contact span {
    font-size: 14px;
    font-size: 2.27273vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 17, _main.scss */
  article.contact span {
    font-size: 14px;
  }
}
@media screen and (max-width: 768px) {
  /* line 17, _main.scss */
  article.contact span {
    text-align: center;
  }
}
@media screen and (max-width: 768px) and (max-width: 486px) {
  /* line 17, _main.scss */
  article.contact span {
    font-size: 8px;
    font-size: 2.5vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 481px) and (max-width: 768px) {
  /* line 17, _main.scss */
  article.contact span {
    font-size: 8px;
    font-size: 1.2987vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 769px) {
  /* line 17, _main.scss */
  article.contact span {
    font-size: 8px;
  }
}

/* line 26, _main.scss */
article.contact h1 {
  padding: 0 0 20px;
}
@media screen and (max-width: 486px) {
  /* line 26, _main.scss */
  article.contact h1 {
    font-size: 36px;
    font-size: 11.25vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 26, _main.scss */
  article.contact h1 {
    font-size: 36px;
    font-size: 5.84416vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 26, _main.scss */
  article.contact h1 {
    font-size: 36px;
  }
}
@media screen and (max-width: 768px) {
  /* line 26, _main.scss */
  article.contact h1 {
    text-align: center;
  }
}
@media screen and (max-width: 768px) and (max-width: 486px) {
  /* line 26, _main.scss */
  article.contact h1 {
    font-size: 18px;
    font-size: 5.625vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 481px) and (max-width: 768px) {
  /* line 26, _main.scss */
  article.contact h1 {
    font-size: 18px;
    font-size: 2.92208vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 769px) {
  /* line 26, _main.scss */
  article.contact h1 {
    font-size: 18px;
  }
}

/* line 34, _main.scss */
article.contact p {
  text-align: left;
  padding: 0 0 40px;
}
@media screen and (max-width: 486px) {
  /* line 34, _main.scss */
  article.contact p {
    font-size: 14px;
    font-size: 4.375vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 34, _main.scss */
  article.contact p {
    font-size: 14px;
    font-size: 2.27273vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 34, _main.scss */
  article.contact p {
    font-size: 14px;
  }
}
@media screen and (max-width: 768px) {
  /* line 34, _main.scss */
  article.contact p {
    text-align: center;
  }
}
@media screen and (max-width: 768px) and (max-width: 486px) {
  /* line 34, _main.scss */
  article.contact p {
    font-size: 10px;
    font-size: 3.125vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 481px) and (max-width: 768px) {
  /* line 34, _main.scss */
  article.contact p {
    font-size: 10px;
    font-size: 1.62338vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 769px) {
  /* line 34, _main.scss */
  article.contact p {
    font-size: 10px;
  }
}

/* line 422, _main.scss */
article.contact .contactBox {
  padding-bottom: 50px;
}
/* line 424, _main.scss */
article.contact .contactBox h2 {
  text-align: center;
}
@media screen and (max-width: 486px) {
  /* line 424, _main.scss */
  article.contact .contactBox h2 {
    font-size: 28px;
    font-size: 8.75vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
  /* line 424, _main.scss */
  article.contact .contactBox h2 {
    font-size: 28px;
    font-size: 4.54545vw;
  }
}
@media screen and (min-width: 769px) {
  /* line 424, _main.scss */
  article.contact .contactBox h2 {
    font-size: 28px;
  }
}
@media screen and (max-width: 768px) and (max-width: 486px) {
  /* line 424, _main.scss */
  article.contact .contactBox h2 {
    font-size: 18px;
    font-size: 5.625vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 481px) and (max-width: 768px) {
  /* line 424, _main.scss */
  article.contact .contactBox h2 {
    font-size: 18px;
    font-size: 2.92208vw;
  }
}
@media screen and (max-width: 768px) and (min-width: 769px) {
  /* line 424, _main.scss */
  article.contact .contactBox h2 {
    font-size: 18px;
  }
}

/* line 58, _main.scss */
article.contact p.linkBox {
  border: solid #000000 1px;
  padding: 0 0 0;
  display: inline-block;
  margin-top: 40px;
}
/* line 63, _main.scss */
article.contact p.linkBox a {
  display: block;
  padding: 20px 80px;
  text-align: center;
  position: relative;
}
/* line 68, _main.scss */
article.contact p.linkBox a:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 20px;
  width: 6px;
  height: 6px;
  margin-top: -4px;
  border-top: solid 2px #000;
  border-right: solid 2px #000;
  transform: rotate(45deg);
}
/* line 82, _main.scss */
article.contact p.linkBox img {
  width: auto;
  vertical-align: middle;
  margin-left: 10px;
}

/* line 195, style.scss */
.fade_image_effect {
  position: relative;
  width: 100%;
  overflow: hidden;
  padding: 0 1px 0 0;
}

/* line 201, style.scss */
.fade_image_effect:after {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 100;
  width: 100%;
  height: 100%;
  background: #e9e6df;
  transform: translate3d(0%, 0, 0);
}

/* line 213, style.scss */
.fade_image_effect.active:after {
  animation: swipeRight 1.5s cubic-bezier(0.6, 0, 0.4, 1);
  animation-fill-mode: forwards;
  animation-delay: 0.3s;
}

/* line 220, style.scss */
.floatBtn {
  position: fixed;
  top: 20%;
  right: 0px;
  font-size: 14px;
  font-weight: 600;
  background: #855218;
  color: #ffffff;
  cursor: pointer;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  border-radius: 10px 0 0 10px;
  z-index: 99999;
  animation: fadeIn;
  animation-duration: 2s;
  animation-delay: .5s;
  animation-fill-mode: both;
}
@media screen and (max-width: 768px) {
  /* line 220, style.scss */
  .floatBtn {
    top: auto;
    right: auto;
    bottom: 0;
    -ms-writing-mode: lr-tb;
    writing-mode: horizontal-tb;
    width: 100%;
    text-align: center;
    border-radius: 0 0 0 0;
  }
}

/* line 248, style.scss */
.floatBtn a {
  color: #ffffff;
  display: block;
  padding: 20px 10px 20px 10px;
  z-index: 9999;
}

/* line 255, style.scss */
.fadeUp {
  animation-name: fadeIn;
  animation-duration: 2s;
  animation-fill-mode: forwards;
  animation-delay: 0.3s;
  opacity: 0;
}

/* スクロールをしたら出現する要素にはじめに透過0を指定　*/
/* line 267, style.scss */
.fadeTrigger {
  opacity: 0;
}

@keyframes swipeRight {
  0% {
    transform: translate(0);
  }
  50%, 60% {
    transform: translate3d(100%, 0, 0);
  }
  100% {
    transform: translate3d(100%, 0, 0);
  }
}
@media screen and (max-width: 640px) {
  /* line 283, style.scss */
  .fade_image {
    flex-wrap: wrap;
    flex-direction: column;
  }

  /* line 287, style.scss */
  .fade_image_effect {
    width: 100%;
    margin: 0 0 10px 0;
    padding: 0 0 1px 0;
  }

  /* line 292, style.scss */
  .fade_image .fade_image_effect:last-child {
    margin: 0;
  }
}
