@charset "UTF-8";
/* common
================================================== */
@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600&family=Noto+Sans+JP:wght@400;500;700&display=swap");
.yugothic {
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  font-style: normal;
  font-weight: 500;
  -webkit-font-smoothing: antialiased;
}

.yumincho {
  font-family: "游明朝", "Yu Mincho", "YuMincho", serif;
}

.notoSans {
  font-family: "Noto Sans JP", sans-serif;
}

.montserat {
  font-family: "Montserrat", sans-serif;
}

.futura {
  font-family: "Futura", "Noto Sans JP", "Century Gothic";
}

/*
 * media query
**/
/**
 * フォントサイズの可変
 *
 * @param {number} $fontsize 基準となるフォントサイズ
 * @param {number} $basewidth 基準となる幅
 * @param {number} $maxwidth フォントサイズの拡大をとめる幅（未指定時は上限なし）
 * @param {number} $minwidth フォントサイズの縮小をとめる幅（未指定時は下限なし）
 */
@media screen and (max-width: 767px) {
  .pc {
    display: none !important;
  }
}

@media screen and (min-width: 768px) {
  .sp {
    display: none !important;
  }
}

/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

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

table {
  border-collapse: collapse;
  border-spacing: 0;
}

.scrollmagic,
.childScrollMagic {
  opacity: 0;
  transition-property: opacity, transform;
  transition-duration: 1.4s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  transition-delay: 0.1s;
}
.scrollmagic[data-scrollmagic=L],
.childScrollMagic[data-scrollmagic=L] {
  transform: translateX(-60px);
}
.scrollmagic[data-scrollmagic=l],
.childScrollMagic[data-scrollmagic=l] {
  transform: translateX(-30px);
}
@media screen and (max-width: 767px) {
  .scrollmagic[data-scrollmagic=l],
.childScrollMagic[data-scrollmagic=l] {
    transform: translateY(30px);
  }
}
.scrollmagic[data-scrollmagic=R],
.childScrollMagic[data-scrollmagic=R] {
  transform: translateX(60px);
}
.scrollmagic[data-scrollmagic=r],
.childScrollMagic[data-scrollmagic=r] {
  transform: translateX(30px);
}
@media screen and (max-width: 767px) {
  .scrollmagic[data-scrollmagic=r],
.childScrollMagic[data-scrollmagic=r] {
    transform: translateY(30px);
  }
}
.scrollmagic[data-scrollmagic=B],
.childScrollMagic[data-scrollmagic=B] {
  transform: translateY(60px);
}
.scrollmagic[data-scrollmagic=b],
.childScrollMagic[data-scrollmagic=b] {
  transform: translateY(30px);
}
.scrollmagic[data-delay="0"],
.childScrollMagic[data-delay="0"] {
  transition-delay: 0;
}
.scrollmagic[data-delay="100"],
.childScrollMagic[data-delay="100"] {
  transition-delay: 100ms;
}
.scrollmagic[data-delay="200"],
.childScrollMagic[data-delay="200"] {
  transition-delay: 200ms;
}
.scrollmagic[data-delay="300"],
.childScrollMagic[data-delay="300"] {
  transition-delay: 300ms;
}
.scrollmagic[data-delay="400"],
.childScrollMagic[data-delay="400"] {
  transition-delay: 400ms;
}
.scrollmagic[data-delay="500"],
.childScrollMagic[data-delay="500"] {
  transition-delay: 500ms;
}
.scrollmagic[data-delay="600"],
.childScrollMagic[data-delay="600"] {
  transition-delay: 600ms;
}
.scrollmagic[data-delay="700"],
.childScrollMagic[data-delay="700"] {
  transition-delay: 700ms;
}
.scrollmagic[data-delay="800"],
.childScrollMagic[data-delay="800"] {
  transition-delay: 800ms;
}
.scrollmagic[data-delay="900"],
.childScrollMagic[data-delay="900"] {
  transition-delay: 900ms;
}
.scrollmagic[data-delay="1000"],
.childScrollMagic[data-delay="1000"] {
  transition-delay: 1000ms;
}
.scrollmagic[data-delay="1100"],
.childScrollMagic[data-delay="1100"] {
  transition-delay: 1100ms;
}
.scrollmagic[data-delay="1200"],
.childScrollMagic[data-delay="1200"] {
  transition-delay: 1200ms;
}
.scrollmagic.magic,
.childScrollMagic.magic {
  opacity: 1;
  transform: translate(0px, 0px);
}

.fixedBody {
  width: 100%;
}

body {
  -webkit-overflow-scrolling: touch;
  overflow: -moz-scrollbars-none;
  -ms-overflow-style: none;
  font-family: "Noto Sans JP", sans-serif;
  color: #333;
}
body::-webkit-scrollbar {
  width: 0 !important;
}
body a {
  text-decoration: none;
  color: inherit;
}
@media screen and (min-width: 768px) {
  body a {
    transition: opacity 0.3s ease;
  }
}
body a:active, body a:focus {
  outline: 0;
  -moz-outline-style: none;
}
@media screen and (min-width: 768px) {
  body a:hover {
    opacity: 0.8;
  }
}
body * {
  outline: 0;
  box-sizing: border-box;
}
body strong {
  font-weight: 600;
}
@media screen and (min-width: 768px) {
  body .container {
    margin: 0 auto;
    max-width: 84.9194729136vw;
    padding-left: 1.4641288433vw;
    padding-right: 1.4641288433vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  body .container {
    max-width: 1160px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  body .container {
    max-width: 652.1815519766px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  body .container {
    padding-left: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  body .container {
    padding-left: 11.2445095168px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  body .container {
    padding-right: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  body .container {
    padding-right: 11.2445095168px;
  }
}
@media screen and (max-width: 767px) {
  body .container {
    padding-left: 5.3333333333vw;
    padding-right: 5.3333333333vw;
  }
}

footer {
  background: linear-gradient(90deg, rgb(11, 194, 221) 0%, rgb(17, 88, 206) 100%);
}
@media screen and (min-width: 768px) {
  footer {
    margin-top: 11.7130307467vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  footer {
    margin-top: 160px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  footer {
    margin-top: 89.9560761347px;
  }
}
@media screen and (max-width: 767px) {
  footer {
    margin-top: 24vw;
  }
}
@media screen and (min-width: 768px) {
  footer .footer-wrapper {
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 84.9194729136vw;
    padding-left: 1.4641288433vw;
    padding-right: 1.4641288433vw;
    height: 7.3206442167vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  footer .footer-wrapper {
    max-width: 1160px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  footer .footer-wrapper {
    max-width: 652.1815519766px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  footer .footer-wrapper {
    padding-left: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  footer .footer-wrapper {
    padding-left: 11.2445095168px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  footer .footer-wrapper {
    padding-right: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  footer .footer-wrapper {
    padding-right: 11.2445095168px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  footer .footer-wrapper {
    height: 100px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  footer .footer-wrapper {
    height: 56.2225475842px;
  }
}
@media screen and (max-width: 767px) {
  footer .footer-wrapper {
    padding-top: 8vw;
    padding-bottom: 8vw;
  }
}
@media screen and (max-width: 767px) {
  footer .footer-wrapper .footer-logo {
    text-align: center;
    margin-bottom: 3.4666666667vw;
  }
}
@media screen and (max-width: 767px) {
  footer .footer-wrapper .footer-logo a {
    display: inline-block;
  }
}
@media screen and (min-width: 768px) {
  footer .footer-wrapper .footer-logo img {
    width: 5.8565153734vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  footer .footer-wrapper .footer-logo img {
    width: 80px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  footer .footer-wrapper .footer-logo img {
    width: 44.9780380673px;
  }
}
@media screen and (max-width: 767px) {
  footer .footer-wrapper .footer-logo img {
    width: 23.4666666667vw;
  }
}
@media screen and (min-width: 768px) {
  footer .footer-wrapper .footer-menu ul {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: 6px;
    padding-top: 0.439238653vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  footer .footer-wrapper .footer-menu ul {
    padding-top: 6px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  footer .footer-wrapper .footer-menu ul {
    padding-top: 3.3733528551px;
  }
}
@media screen and (max-width: 767px) {
  footer .footer-wrapper .footer-menu ul {
    text-align: center;
  }
}
footer .footer-wrapper .footer-menu ul li {
  font-family: "Futura", "Noto Sans JP", "Century Gothic";
  color: rgba(255, 255, 255, 0.7);
}
@media screen and (min-width: 768px) {
  footer .footer-wrapper .footer-menu ul li {
    font-size: 0.9516837482vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  footer .footer-wrapper .footer-menu ul li {
    font-size: 13px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  footer .footer-wrapper .footer-menu ul li {
    font-size: 7.3089311859px;
  }
}
@media screen and (max-width: 767px) {
  footer .footer-wrapper .footer-menu ul li {
    font-size: 3.4666666667vw;
    margin-bottom: 4vw;
    text-align: center;
  }
}
@media screen and (max-width: 767px) {
  footer .footer-wrapper .footer-menu ul li:nth-of-type(1), footer .footer-wrapper .footer-menu ul li:nth-of-type(2) {
    display: inline-block;
  }
}
@media screen and (max-width: 767px) {
  footer .footer-wrapper .footer-menu ul li:nth-of-type(1) {
    margin-right: 10px;
    margin-right: 2.6666666667vw;
  }
}
@media screen and (min-width: 768px) {
  footer .footer-wrapper .footer-menu ul li:last-child {
    margin-right: 0;
  }
}
@media screen and (max-width: 767px) {
  footer .footer-wrapper .footer-menu ul li:last-child {
    margin-bottom: 0;
  }
}
@media screen and (min-width: 768px) {
  footer .footer-wrapper .footer-menu ul li a {
    display: flex;
    margin-right: 20px;
    margin-right: 1.4641288433vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  footer .footer-wrapper .footer-menu ul li a {
    margin-right: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  footer .footer-wrapper .footer-menu ul li a {
    margin-right: 11.2445095168px;
  }
}

header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100;
  background-color: #fff;
}
@media screen and (min-width: 768px) {
  header {
    box-shadow: 0 0 6px 2px rgba(0, 0, 0, 0.06);
    transition: background-color 0.3s ease;
  }
}
header.transparent {
  background-color: transparent;
}
@media screen and (min-width: 768px) {
  header.transparent .header-wrapper .header-menu ul li a {
    color: #fff;
  }
}
@media screen and (min-width: 768px) {
  header.transparent .header-wrapper .header-menu ul li a span {
    color: #fff !important;
    transition: color 0.3s ease;
  }
}
@media screen and (min-width: 768px) {
  header.transparent .header-wrapper .header-menu ul li a:hover span {
    color: #0B8BD5 !important;
  }
}
@media screen and (max-width: 767px) {
  header.transparent .header-wrapper .header-menu-ham .header-menu-ham-icon > span {
    background-color: #fff;
    background-image: none;
  }
}
@media screen and (min-width: 768px) {
  header .header-wrapper {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0 auto;
    padding-left: 2.9282576867vw;
    padding-right: 2.9282576867vw;
    height: 5.1244509517vw;
    max-width: 95.168374817vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  header .header-wrapper {
    padding-left: 40px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  header .header-wrapper {
    padding-left: 22.4890190337px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  header .header-wrapper {
    padding-right: 40px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  header .header-wrapper {
    padding-right: 22.4890190337px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  header .header-wrapper {
    height: 70px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  header .header-wrapper {
    height: 39.3557833089px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  header .header-wrapper {
    max-width: 1300px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  header .header-wrapper {
    max-width: 730.8931185944px;
  }
}
@media screen and (max-width: 767px) {
  header .header-wrapper {
    padding-left: 5.3333333333vw;
    padding-right: 5.3333333333vw;
    height: 13.3333333333vw;
    display: flex;
    justify-content: space-between;
    align-items: center;
    box-shadow: 0 0 6px 2px rgba(0, 0, 0, 0.06);
  }
}
header .header-wrapper .header-logo {
  z-index: 101;
}
@media screen and (max-width: 767px) {
  header .header-wrapper .header-menu-ham {
    z-index: 101;
  }
}
@media screen and (max-width: 767px) {
  header .header-wrapper .header-menu-ham a {
    position: relative;
    display: block;
    width: 5.3333333333vw;
    height: 4.8vw;
  }
}
@media screen and (max-width: 767px) {
  header .header-wrapper .header-menu-ham a.open > p.header-menu-ham-icon-open > span {
    transform: translate(0, 0);
    opacity: 1;
    transition-delay: 0.3s;
  }
}
@media screen and (max-width: 767px) {
  header .header-wrapper .header-menu-ham a.open > p.header-menu-ham-icon-open > span:last-child {
    transform: translate(0, 0);
  }
}
@media screen and (max-width: 767px) {
  header .header-wrapper .header-menu-ham a.open > p.header-menu-ham-icon > span {
    transform: translateX(26.6666666667vw);
  }
}
@media screen and (max-width: 767px) {
  header .header-wrapper .header-menu-ham a.open > p.header-menu-ham-icon > span:nth-of-type(2) {
    transition-delay: 0.1s;
  }
}
@media screen and (max-width: 767px) {
  header .header-wrapper .header-menu-ham a.open > p.header-menu-ham-icon > span:nth-of-type(3) {
    transition-delay: 0.2s;
  }
}
@media screen and (max-width: 767px) {
  header .header-wrapper .header-menu-ham a > p {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 18px;
    position: absolute;
    top: 0;
    left: 0;
    width: 5.3333333333vw;
    height: 4.8vw;
  }
}
@media screen and (max-width: 767px) {
  header .header-wrapper .header-menu-ham a > p.header-menu-ham-icon-open > span {
    opacity: 0;
    display: block;
    background-image: url(/assets/img/ham-01.svg);
    background-repeat: no-repeat;
    transition: all 0.3s ease;
    background-size: cover;
    top: 50%;
    position: absolute;
    left: 0;
    transform: translate(-2.6666666667vw, -2.6666666667vw);
    transition: all 0.3s ease;
    width: 4.2666666667vw;
    height: 4.2666666667vw;
    margin-top: -2.1333333333vw;
  }
}
@media screen and (max-width: 767px) {
  header .header-wrapper .header-menu-ham a > p.header-menu-ham-icon-open > span:last-child {
    transform: translate(-2.6666666667vw, 2.6666666667vw);
    background-image: url(/assets/img/ham-02.svg);
  }
}
@media screen and (max-width: 767px) {
  header .header-wrapper .header-menu-ham a > p.header-menu-ham-icon > span {
    display: block;
    background-image: url(/assets/img/ham.svg);
    background-repeat: no-repeat;
    transition: all 0.3s ease;
    background-size: cover;
    width: 5.3333333333vw;
    height: 0.5333333333vw;
  }
}
@media screen and (max-width: 767px) {
  header .header-wrapper .header-menu-ham a > p.header-menu-ham-icon > span:nth-of-type(2) {
    transition-delay: 0.1s;
  }
}
@media screen and (max-width: 767px) {
  header .header-wrapper .header-menu-ham a > p.header-menu-ham-icon > span:nth-of-type(3) {
    transition-delay: 0.2s;
  }
}
@media screen and (min-width: 768px) {
  header .header-wrapper .header-menu {
    display: block;
  }
}
@media screen and (max-width: 767px) {
  header .header-wrapper .header-menu {
    z-index: 100;
    position: fixed;
    top: 0;
    left: 0;
    height: 100%;
    overflow: auto;
    width: 100%;
    background-image: url(/assets/img/pattern.sp.svg);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    background-color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s ease;
    padding-top: 18.6666666667vw;
    padding-bottom: 5.3333333333vw;
  }
}
@media screen and (max-width: 767px) {
  header .header-wrapper .header-menu.open {
    opacity: 1;
    pointer-events: visible;
  }
}
@media screen and (min-width: 768px) {
  header .header-wrapper .header-menu ul {
    display: flex;
    align-items: center;
  }
}
@media screen and (max-width: 767px) {
  header .header-wrapper .header-menu ul {
    width: 100%;
    margin: auto 0;
    padding-left: 18.6666666667vw;
    padding-right: 18.6666666667vw;
  }
}
header .header-wrapper .header-menu ul li .whiteBg {
  background-color: #fff;
}
@media screen and (max-width: 767px) {
  header .header-wrapper .header-menu ul li.bottom {
    display: flex;
    align-items: center;
    justify-content: center;
    padding-top: 5.3333333333vw;
  }
}
@media screen and (max-width: 767px) {
  header .header-wrapper .header-menu ul li.bottom a {
    color: #888888;
    border: none;
    padding: 0;
    font-weight: 400;
    font-size: 3.2vw;
  }
}
@media screen and (max-width: 767px) {
  header .header-wrapper .header-menu ul li.bottom a:after {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  header .header-wrapper .header-menu ul li.bottom a:first-child {
    margin-right: 10.6666666667vw;
  }
}
@media screen and (min-width: 768px) {
  header .header-wrapper .header-menu ul li:last-child a {
    margin-right: 0;
  }
}
@media screen and (max-width: 767px) {
  header .header-wrapper .header-menu ul li:nth-of-type(5) a {
    border-bottom: 1px solid #DDDDDD;
  }
}
header .header-wrapper .header-menu ul li a {
  display: block;
  font-weight: 600;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 768px) {
  header .header-wrapper .header-menu ul li a {
    transition: all 0.3s ease;
    font-size: 1.0248901903vw;
    margin-right: 2.9282576867vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  header .header-wrapper .header-menu ul li a {
    font-size: 14px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  header .header-wrapper .header-menu ul li a {
    font-size: 7.8711566618px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  header .header-wrapper .header-menu ul li a {
    margin-right: 40px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  header .header-wrapper .header-menu ul li a {
    margin-right: 22.4890190337px;
  }
}
@media screen and (max-width: 767px) {
  header .header-wrapper .header-menu ul li a {
    border-top: 1px solid #DDDDDD;
    padding-top: 4.2666666667vw;
    padding-bottom: 4.2666666667vw;
    font-size: 3.7333333333vw;
  }
}
@media screen and (max-width: 767px) {
  header .header-wrapper .header-menu ul li a:not(.contact, .line) {
    position: relative;
  }
}
@media screen and (max-width: 767px) {
  header .header-wrapper .header-menu ul li a:not(.contact, .line):after {
    position: absolute;
    content: "";
    top: 50%;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    background-image: url(/assets/img/acc-arrow.svg);
    width: 3.4666666667vw;
    height: 3.4666666667vw;
    right: 2.1333333333vw;
    margin-top: -1.7333333333vw;
  }
}
@media screen and (min-width: 768px) {
  header .header-wrapper .header-menu ul li a:not(.contact, .line):hover {
    opacity: 1;
    color: #0B8BD5;
  }
}
@media screen and (min-width: 768px) {
  header .header-wrapper .header-menu ul li a:not(.contact, .line):hover > span {
    color: #0B8BD5;
  }
}
header .header-wrapper .header-menu ul li a:not(.contact, .line) > span {
  color: #023C7E;
}
header .header-wrapper .header-menu ul li a.contact {
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  -webkit-animation: gradientReverse 0.3s ease;
          animation: gradientReverse 0.3s ease;
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both;
  -webkit-animation-iteration-count: 1;
          animation-iteration-count: 1;
}
@media screen and (min-width: 768px) {
  header .header-wrapper .header-menu ul li a.contact {
    transition: all 0.3s ease;
    width: 12.0790629575vw;
    height: 3.6603221083vw;
    border-radius: 0.2928257687vw;
    margin-right: 0.7320644217vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  header .header-wrapper .header-menu ul li a.contact {
    width: 165px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  header .header-wrapper .header-menu ul li a.contact {
    width: 92.7672035139px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  header .header-wrapper .header-menu ul li a.contact {
    height: 50px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  header .header-wrapper .header-menu ul li a.contact {
    height: 28.1112737921px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  header .header-wrapper .header-menu ul li a.contact {
    border-radius: 4px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  header .header-wrapper .header-menu ul li a.contact {
    border-radius: 2.2489019034px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  header .header-wrapper .header-menu ul li a.contact {
    margin-right: 10px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  header .header-wrapper .header-menu ul li a.contact {
    margin-right: 5.6222547584px;
  }
}
@media screen and (max-width: 767px) {
  header .header-wrapper .header-menu ul li a.contact {
    margin-left: auto;
    margin-right: auto;
    border: none;
    padding: 0;
    width: 100%;
    height: 13.3333333333vw;
    border-radius: 1.0666666667vw;
    font-size: 3.7333333333vw;
    margin-top: 2.6666666667vw;
  }
}
@media screen and (min-width: 768px) {
  header .header-wrapper .header-menu ul li a.contact:hover {
    opacity: 1;
    -webkit-animation: gradient 0.3s ease;
            animation: gradient 0.3s ease;
    -webkit-animation-fill-mode: both;
            animation-fill-mode: both;
    -webkit-animation-iteration-count: 1;
            animation-iteration-count: 1;
  }
}
header .header-wrapper .header-menu ul li a.contact img {
  display: inline-block;
  vertical-align: middle;
}
@media screen and (min-width: 768px) {
  header .header-wrapper .header-menu ul li a.contact img {
    margin-right: 0.878477306vw;
    width: 1.6105417277vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  header .header-wrapper .header-menu ul li a.contact img {
    margin-right: 12px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  header .header-wrapper .header-menu ul li a.contact img {
    margin-right: 6.7467057101px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  header .header-wrapper .header-menu ul li a.contact img {
    width: 22px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  header .header-wrapper .header-menu ul li a.contact img {
    width: 12.3689604685px;
  }
}
@media screen and (max-width: 767px) {
  header .header-wrapper .header-menu ul li a.contact img {
    margin-right: 3.2vw;
    width: 5.8666666667vw;
    height: 4vw;
  }
}
header .header-wrapper .header-menu ul li a.line {
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #ddd;
}
@media screen and (min-width: 768px) {
  header .header-wrapper .header-menu ul li a.line {
    transition: all 0.3s ease;
    width: 10.2489019034vw;
    height: 3.6603221083vw;
    margin-right: 0;
    border-radius: 0.2928257687vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  header .header-wrapper .header-menu ul li a.line {
    width: 140px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  header .header-wrapper .header-menu ul li a.line {
    width: 78.7115666179px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  header .header-wrapper .header-menu ul li a.line {
    height: 50px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  header .header-wrapper .header-menu ul li a.line {
    height: 28.1112737921px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  header .header-wrapper .header-menu ul li a.line {
    border-radius: 4px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  header .header-wrapper .header-menu ul li a.line {
    border-radius: 2.2489019034px;
  }
}
@media screen and (max-width: 767px) {
  header .header-wrapper .header-menu ul li a.line {
    margin-left: auto;
    margin-right: auto;
    padding: 0;
    width: 100%;
    height: 13.3333333333vw;
    border-radius: 1.0666666667vw;
    font-size: 3.7333333333vw;
    margin-top: 8vw;
  }
}
@media screen and (min-width: 768px) {
  header .header-wrapper .header-menu ul li a.line img {
    width: 7.1742313324vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  header .header-wrapper .header-menu ul li a.line img {
    width: 98px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  header .header-wrapper .header-menu ul li a.line img {
    width: 55.0980966325px;
  }
}
@media screen and (max-width: 767px) {
  header .header-wrapper .header-menu ul li a.line img {
    width: 26.1333333333vw;
  }
}

@-webkit-keyframes gradient {
  0% {
    background: linear-gradient(90deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 100%);
  }
  10% {
    background: linear-gradient(90deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 95%);
  }
  20% {
    background: linear-gradient(90deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 90%);
  }
  30% {
    background: linear-gradient(90deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 85%);
  }
  40% {
    background: linear-gradient(90deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 80%);
  }
  50% {
    background: linear-gradient(90deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 75%);
  }
  60% {
    background: linear-gradient(90deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 70%);
  }
  70% {
    background: linear-gradient(90deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 65%);
  }
  80% {
    background: linear-gradient(90deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 60%);
  }
  90% {
    background: linear-gradient(90deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 55%);
  }
  100% {
    background: linear-gradient(90deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 50%);
  }
}

@keyframes gradient {
  0% {
    background: linear-gradient(90deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 100%);
  }
  10% {
    background: linear-gradient(90deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 95%);
  }
  20% {
    background: linear-gradient(90deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 90%);
  }
  30% {
    background: linear-gradient(90deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 85%);
  }
  40% {
    background: linear-gradient(90deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 80%);
  }
  50% {
    background: linear-gradient(90deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 75%);
  }
  60% {
    background: linear-gradient(90deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 70%);
  }
  70% {
    background: linear-gradient(90deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 65%);
  }
  80% {
    background: linear-gradient(90deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 60%);
  }
  90% {
    background: linear-gradient(90deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 55%);
  }
  100% {
    background: linear-gradient(90deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 50%);
  }
}
@-webkit-keyframes gradientReverse {
  0% {
    background: linear-gradient(90deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 50%);
  }
  10% {
    background: linear-gradient(90deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 55%);
  }
  20% {
    background: linear-gradient(90deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 60%);
  }
  30% {
    background: linear-gradient(90deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 65%);
  }
  40% {
    background: linear-gradient(90deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 70%);
  }
  50% {
    background: linear-gradient(90deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 75%);
  }
  60% {
    background: linear-gradient(90deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 80%);
  }
  70% {
    background: linear-gradient(90deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 85%);
  }
  80% {
    background: linear-gradient(90deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 90%);
  }
  90% {
    background: linear-gradient(90deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 95%);
  }
  100% {
    background: linear-gradient(90deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 100%);
  }
}
@keyframes gradientReverse {
  0% {
    background: linear-gradient(90deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 50%);
  }
  10% {
    background: linear-gradient(90deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 55%);
  }
  20% {
    background: linear-gradient(90deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 60%);
  }
  30% {
    background: linear-gradient(90deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 65%);
  }
  40% {
    background: linear-gradient(90deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 70%);
  }
  50% {
    background: linear-gradient(90deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 75%);
  }
  60% {
    background: linear-gradient(90deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 80%);
  }
  70% {
    background: linear-gradient(90deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 85%);
  }
  80% {
    background: linear-gradient(90deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 90%);
  }
  90% {
    background: linear-gradient(90deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 95%);
  }
  100% {
    background: linear-gradient(90deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 100%);
  }
}
@-webkit-keyframes gradientVertical {
  0% {
    background: linear-gradient(180deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 100%);
  }
  10% {
    background: linear-gradient(180deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 95%);
  }
  20% {
    background: linear-gradient(180deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 90%);
  }
  30% {
    background: linear-gradient(180deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 85%);
  }
  40% {
    background: linear-gradient(180deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 80%);
  }
  50% {
    background: linear-gradient(180deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 75%);
  }
  60% {
    background: linear-gradient(180deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 70%);
  }
  70% {
    background: linear-gradient(180deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 65%);
  }
  80% {
    background: linear-gradient(180deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 60%);
  }
  90% {
    background: linear-gradient(180deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 55%);
  }
  100% {
    background: linear-gradient(180deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 50%);
  }
}
@keyframes gradientVertical {
  0% {
    background: linear-gradient(180deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 100%);
  }
  10% {
    background: linear-gradient(180deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 95%);
  }
  20% {
    background: linear-gradient(180deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 90%);
  }
  30% {
    background: linear-gradient(180deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 85%);
  }
  40% {
    background: linear-gradient(180deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 80%);
  }
  50% {
    background: linear-gradient(180deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 75%);
  }
  60% {
    background: linear-gradient(180deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 70%);
  }
  70% {
    background: linear-gradient(180deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 65%);
  }
  80% {
    background: linear-gradient(180deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 60%);
  }
  90% {
    background: linear-gradient(180deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 55%);
  }
  100% {
    background: linear-gradient(180deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 50%);
  }
}
@-webkit-keyframes gradientVerticalReverse {
  0% {
    background: linear-gradient(180deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 50%);
  }
  10% {
    background: linear-gradient(180deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 55%);
  }
  20% {
    background: linear-gradient(180deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 60%);
  }
  30% {
    background: linear-gradient(180deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 65%);
  }
  40% {
    background: linear-gradient(180deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 70%);
  }
  50% {
    background: linear-gradient(180deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 75%);
  }
  60% {
    background: linear-gradient(180deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 80%);
  }
  70% {
    background: linear-gradient(180deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 85%);
  }
  80% {
    background: linear-gradient(180deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 90%);
  }
  90% {
    background: linear-gradient(180deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 95%);
  }
  100% {
    background: linear-gradient(180deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 100%);
  }
}
@keyframes gradientVerticalReverse {
  0% {
    background: linear-gradient(180deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 50%);
  }
  10% {
    background: linear-gradient(180deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 55%);
  }
  20% {
    background: linear-gradient(180deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 60%);
  }
  30% {
    background: linear-gradient(180deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 65%);
  }
  40% {
    background: linear-gradient(180deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 70%);
  }
  50% {
    background: linear-gradient(180deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 75%);
  }
  60% {
    background: linear-gradient(180deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 80%);
  }
  70% {
    background: linear-gradient(180deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 85%);
  }
  80% {
    background: linear-gradient(180deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 90%);
  }
  90% {
    background: linear-gradient(180deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 95%);
  }
  100% {
    background: linear-gradient(180deg, rgb(11, 194, 221) 0%, rgb(1, 34, 187) 100%);
  }
}
main {
  display: block;
  position: relative;
  overflow: hidden;
  -webkit-animation-delay: 1s !important;
          animation-delay: 1s !important;
}
@media screen and (min-width: 768px) {
  main #privacy .acc-body {
    display: block !important;
  }
}
@media screen and (max-width: 767px) {
  main #privacy .acc-body {
    display: none;
    margin-top: 0;
    padding-bottom: 5.3333333333vw;
  }
}
main #privacy p {
  line-height: 1.75;
}
@media screen and (min-width: 768px) {
  main #privacy p {
    font-size: 1.1713030747vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #privacy p {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #privacy p {
    font-size: 8.9956076135px;
  }
}
@media screen and (max-width: 767px) {
  main #privacy p {
    font-size: 4vw;
    line-height: 1.8;
  }
}
main #privacy h3 {
  font-weight: 600;
}
@media screen and (min-width: 768px) {
  main #privacy h3 {
    margin-top: 4.39238653vw;
    margin-bottom: 1.4641288433vw;
    font-size: 1.4641288433vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #privacy h3 {
    margin-top: 60px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #privacy h3 {
    margin-top: 33.7335285505px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #privacy h3 {
    margin-bottom: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #privacy h3 {
    margin-bottom: 11.2445095168px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #privacy h3 {
    font-size: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #privacy h3 {
    font-size: 11.2445095168px;
  }
}
@media screen and (max-width: 767px) {
  main #privacy h3 {
    line-height: 1.8;
    padding-top: 5.3333333333vw;
    padding-bottom: 5.3333333333vw;
    font-size: 4vw;
  }
}
@media screen and (max-width: 767px) {
  main #privacy h3.acc-head {
    border-bottom: 1px solid #ddd;
    position: relative;
    padding-right: 8vw;
  }
}
@media screen and (max-width: 767px) {
  main #privacy h3.acc-head.open {
    border-bottom: none;
  }
}
@media screen and (max-width: 767px) {
  main #privacy h3.acc-head.open:after {
    transform: rotate(90deg);
  }
}
@media screen and (max-width: 767px) {
  main #privacy h3.acc-head.open + .acc-body {
    border-bottom: 1px solid #ddd;
  }
}
@media screen and (max-width: 767px) {
  main #privacy h3.acc-head:before, main #privacy h3.acc-head:after {
    content: "";
    position: absolute;
    background-color: #0556CE;
    top: 50%;
    right: 0;
  }
}
@media screen and (max-width: 767px) {
  main #privacy h3.acc-head:before {
    width: 3.7333333333vw;
    height: 0.5333333333vw;
    margin-top: -0.2666666667vw;
  }
}
@media screen and (max-width: 767px) {
  main #privacy h3.acc-head:after {
    transition: transform 0.3s ease;
    width: 0.5333333333vw;
    height: 3.7333333333vw;
    margin-top: -1.8666666667vw;
    margin-right: 1.6vw;
  }
}
@media screen and (max-width: 767px) {
  main #privacy .no-mt-sp {
    margin-top: 0;
  }
}
@media screen and (min-width: 768px) {
  main #privacy ul {
    margin-top: 1.4641288433vw;
    padding-left: 1.4641288433vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #privacy ul {
    margin-top: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #privacy ul {
    margin-top: 11.2445095168px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #privacy ul {
    padding-left: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #privacy ul {
    padding-left: 11.2445095168px;
  }
}
@media screen and (max-width: 767px) {
  main #privacy ul {
    margin-top: 5.3333333333vw;
    padding-left: 5.3333333333vw;
  }
}
main #privacy ul li {
  line-height: 1.75;
  position: relative;
}
@media screen and (min-width: 768px) {
  main #privacy ul li {
    font-size: 1.1713030747vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #privacy ul li {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #privacy ul li {
    font-size: 8.9956076135px;
  }
}
@media screen and (max-width: 767px) {
  main #privacy ul li {
    font-size: 4.2666666667vw;
    margin-bottom: 3.2vw;
  }
}
@media screen and (max-width: 767px) {
  main #privacy ul li:last-child {
    margin-bottom: 0;
  }
}
main #privacy ul li:before {
  margin-left: -20px;
  margin-right: 5px;
}
@media screen and (min-width: 768px) {
  main #privacy ul li:before {
    margin-left: -1.4641288433vw;
    margin-right: 0.3660322108vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #privacy ul li:before {
    margin-left: -20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #privacy ul li:before {
    margin-left: -11.2445095168px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #privacy ul li:before {
    margin-right: 5px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #privacy ul li:before {
    margin-right: 2.8111273792px;
  }
}
@media screen and (max-width: 767px) {
  main #privacy ul li:before {
    margin-left: -5.3333333333vw;
    margin-right: 1.3333333333vw;
  }
}
main #privacy ul li:nth-of-type(1):before {
  content: "➀";
}
main #privacy ul li:nth-of-type(2):before {
  content: "②";
}
main #privacy ul li:nth-of-type(3):before {
  content: "③";
}
main #privacy ul li:nth-of-type(4):before {
  content: "④";
}
main #privacy ul li:nth-of-type(5):before {
  content: "⑤";
}
main #privacy ul li:nth-of-type(6):before {
  content: "⑥";
}
main #privacy ul li > ul {
  margin-top: 0;
}
main #privacy ul li > ul li:before {
  content: "・" !important;
}
@media screen and (min-width: 768px) {
  main #privacy ul.alpha {
    padding-left: 4.39238653vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #privacy ul.alpha {
    padding-left: 60px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #privacy ul.alpha {
    padding-left: 33.7335285505px;
  }
}
@media screen and (max-width: 767px) {
  main #privacy ul.alpha {
    padding-left: 10.6666666667vw;
    margin-top: 1.3333333333vw;
  }
}
main #privacy ul.alpha li:nth-of-type(1):before {
  content: "A)";
}
main #privacy ul.alpha li:nth-of-type(2):before {
  content: "B)";
}
main #privacy ul.alpha li:nth-of-type(3):before {
  content: "C)";
}
main #privacy ul.alpha li:nth-of-type(4):before {
  content: "D)";
}
main #privacy ul.alpha li:nth-of-type(5):before {
  content: "E)";
}
main #privacy ul.alpha li:nth-of-type(6):before {
  content: "F";
}
@media screen and (min-width: 768px) {
  main #privacy ul.iroha {
    padding-left: 8.78477306vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #privacy ul.iroha {
    padding-left: 120px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #privacy ul.iroha {
    padding-left: 67.467057101px;
  }
}
@media screen and (max-width: 767px) {
  main #privacy ul.iroha {
    padding-left: 21.3333333333vw;
    margin-top: 1.3333333333vw;
  }
}
@media screen and (min-width: 768px) {
  main #privacy ul.iroha li:before {
    margin-left: -2.9282576867vw;
    margin-right: 0.3660322108vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #privacy ul.iroha li:before {
    margin-left: -40px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #privacy ul.iroha li:before {
    margin-left: -22.4890190337px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #privacy ul.iroha li:before {
    margin-right: 5px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #privacy ul.iroha li:before {
    margin-right: 2.8111273792px;
  }
}
@media screen and (max-width: 767px) {
  main #privacy ul.iroha li:before {
    margin-left: -10.6666666667vw;
    margin-right: 1.3333333333vw;
  }
}
main #privacy ul.iroha li:nth-of-type(1):before {
  content: "( ア )";
}
main #privacy ul.iroha li:nth-of-type(2):before {
  content: "( イ )";
}
main #privacy ul.iroha li:nth-of-type(3):before {
  content: "( ウ )";
}
main #privacy .line {
  margin: 60px 0 0;
  border-bottom: 1px solid #DDDDDD;
}
@media screen and (min-width: 768px) and (max-width: 1200px) {
  main #privacy .line {
    margin-top: 4.39238653vw;
  }
}
@media screen and (min-width: 768px) and (max-width: 1200px) and (min-width: 1366px) {
  main #privacy .line {
    margin-top: 60px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1200px) and (max-width: 768px) {
  main #privacy .line {
    margin-top: 33.7335285505px;
  }
}
@media screen and (max-width: 767px) {
  main #privacy .line {
    margin-top: 10.6666666667vw;
  }
}
main #privacy .sign {
  text-align: right;
}
@media screen and (min-width: 768px) {
  main #privacy .sign {
    margin-top: 7.3206442167vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #privacy .sign {
    margin-top: 100px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #privacy .sign {
    margin-top: 56.2225475842px;
  }
}
@media screen and (max-width: 767px) {
  main #privacy .sign {
    margin-top: 16vw;
  }
}
main #privacy .sign h3 {
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  main #privacy .sign h3 {
    margin-top: 1.4641288433vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #privacy .sign h3 {
    margin-top: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #privacy .sign h3 {
    margin-top: 11.2445095168px;
  }
}
@media screen and (max-width: 767px) {
  main #privacy .sign h3 {
    padding-top: 0;
    margin-top: 5.3333333333vw;
    font-size: 5.3333333333vw;
  }
}
@media screen and (min-width: 768px) {
  main #company .container {
    padding: 0;
    max-width: 50.5124450952vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #company .container {
    max-width: 690px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #company .container {
    max-width: 387.9355783309px;
  }
}
main #company h3 {
  color: #09589B;
  font-weight: 500;
  border-bottom: 1px solid #09589B;
}
@media screen and (min-width: 768px) {
  main #company h3 {
    font-size: 1.6837481698vw;
    padding-bottom: 0.7320644217vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #company h3 {
    font-size: 23px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #company h3 {
    font-size: 12.9311859444px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #company h3 {
    padding-bottom: 10px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #company h3 {
    padding-bottom: 5.6222547584px;
  }
}
@media screen and (max-width: 767px) {
  main #company h3 {
    font-size: 5.8666666667vw;
    padding-bottom: 4vw;
  }
}
@media screen and (min-width: 768px) {
  main #company h3.mt {
    margin-top: 4.39238653vw;
    padding-bottom: 4.39238653vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #company h3.mt {
    margin-top: 60px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #company h3.mt {
    margin-top: 33.7335285505px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #company h3.mt {
    padding-bottom: 60px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #company h3.mt {
    padding-bottom: 33.7335285505px;
  }
}
@media screen and (max-width: 767px) {
  main #company h3.mt {
    margin-top: 17.3333333333vw;
  }
}
main #company dl {
  line-height: 1.8;
  border-bottom: 1px solid #DDDDDD;
}
@media screen and (min-width: 768px) {
  main #company dl {
    display: flex;
    justify-content: space-between;
    padding-top: 1.4641288433vw;
    padding-bottom: 1.4641288433vw;
    font-size: 1.0980966325vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #company dl {
    padding-top: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #company dl {
    padding-top: 11.2445095168px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #company dl {
    padding-bottom: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #company dl {
    padding-bottom: 11.2445095168px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #company dl {
    font-size: 15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #company dl {
    font-size: 8.4333821376px;
  }
}
@media screen and (max-width: 767px) {
  main #company dl {
    display: flex;
    padding-top: 5.3333333333vw;
    padding-bottom: 5.3333333333vw;
    font-size: 3.7333333333vw;
  }
}
@media screen and (max-width: 767px) {
  main #company dl.longsp dt {
    width: 40vw;
  }
}
@media screen and (max-width: 767px) {
  main #company dl.longsp dd {
    width: 49.3333333333vw;
  }
}
main #company dl dt {
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  main #company dl dt {
    width: 10.6149341142vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #company dl dt {
    width: 145px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #company dl dt {
    width: 81.5226939971px;
  }
}
@media screen and (max-width: 767px) {
  main #company dl dt {
    width: 21.3333333333vw;
  }
}
@media screen and (min-width: 768px) {
  main #company dl dd {
    width: 39.897510981vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #company dl dd {
    width: 545px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #company dl dd {
    width: 306.4128843338px;
  }
}
@media screen and (max-width: 767px) {
  main #company dl dd {
    width: 68vw;
  }
}
main #company dl dd ul li {
  position: relative;
}
@media screen and (min-width: 768px) {
  main #company dl dd ul li {
    padding-left: 1.0980966325vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #company dl dd ul li {
    padding-left: 15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #company dl dd ul li {
    padding-left: 8.4333821376px;
  }
}
@media screen and (max-width: 767px) {
  main #company dl dd ul li {
    padding-left: 4vw;
  }
}
main #company dl dd ul li:before {
  content: "・";
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (min-width: 768px) {
  main #service .container {
    max-width: 100%;
    padding: 0;
  }
}
@media screen and (min-width: 768px) {
  main #service .service-anchor {
    max-width: 51.2445095168vw;
    margin-bottom: 6.588579795vw;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-anchor {
    max-width: 700px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-anchor {
    max-width: 393.5578330893px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-anchor {
    margin-bottom: 90px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-anchor {
    margin-bottom: 50.6002928258px;
  }
}
@media screen and (max-width: 767px) {
  main #service .service-anchor {
    margin-bottom: 16vw;
  }
}
main #service .service-anchor ul {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
main #service .service-anchor ul li a {
  display: block;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-align: center;
  position: relative;
}
@media screen and (min-width: 768px) {
  main #service .service-anchor ul li a {
    transition: color 0.3s ease;
    border-bottom: 2px solid #0B8BD5;
    font-size: 1.317715959vw;
    width: 9.1508052709vw;
    padding-bottom: 0.7320644217vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-anchor ul li a {
    font-size: 18px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-anchor ul li a {
    font-size: 10.1200585652px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-anchor ul li a {
    width: 125px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-anchor ul li a {
    width: 70.2781844802px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-anchor ul li a {
    padding-bottom: 10px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-anchor ul li a {
    padding-bottom: 5.6222547584px;
  }
}
@media screen and (max-width: 767px) {
  main #service .service-anchor ul li a {
    font-weight: 500;
    font-size: 3.7333333333vw;
  }
}
@media screen and (min-width: 768px) {
  main #service .service-anchor ul li a:hover {
    color: #1C99D8;
  }
}
@media screen and (min-width: 768px) {
  main #service .service-anchor ul li a img {
    display: inline-block;
    vertical-align: middle;
    margin-left: 0.3660322108vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-anchor ul li a img {
    margin-left: 5px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-anchor ul li a img {
    margin-left: 2.8111273792px;
  }
}
@media screen and (max-width: 767px) {
  main #service .service-anchor ul li a img {
    display: block;
    margin-top: 1.8666666667vw;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (min-width: 768px) {
  main #service .service-type {
    margin: 0 auto;
    max-width: 81.9912152269vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-type {
    max-width: 1120px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-type {
    max-width: 629.6925329429px;
  }
}
@media screen and (min-width: 768px) {
  main #service .service-type dl {
    display: flex;
    margin-bottom: 5.1244509517vw;
    margin-left: -6.588579795vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-type dl {
    margin-bottom: 70px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-type dl {
    margin-bottom: 39.3557833089px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-type dl {
    margin-left: -90px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-type dl {
    margin-left: -50.6002928258px;
  }
}
@media screen and (max-width: 767px) {
  main #service .service-type dl {
    margin-bottom: 14.6666666667vw;
  }
}
@media screen and (min-width: 768px) {
  main #service .service-type dl:nth-of-type(2n) {
    margin-left: 5.1244509517vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-type dl:nth-of-type(2n) {
    margin-left: 70px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-type dl:nth-of-type(2n) {
    margin-left: 39.3557833089px;
  }
}
main #service .service-type dl:last-child {
  margin-bottom: 0;
}
main #service .service-type dl dt {
  pointer-events: none;
}
@media screen and (max-width: 767px) {
  main #service .service-type dl dt {
    overflow: hidden;
    margin-top: 0;
    margin-bottom: 10.6666666667vw;
    margin-left: -5.3333333333vw;
    margin-right: -5.3333333333vw;
  }
}
@media screen and (min-width: 768px) {
  main #service .service-type dl dt img {
    width: 46.6325036603vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-type dl dt img {
    width: 637px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-type dl dt img {
    width: 358.1376281113px;
  }
}
@media screen and (max-width: 767px) {
  main #service .service-type dl dt img {
    width: calc(100% + 110px);
    margin: 0 -55px;
    margin-left: -14.6666666667vw;
    margin-right: -14.6666666667vw;
  }
}
@media screen and (min-width: 768px) {
  main #service .service-type dl dd {
    margin-left: -10.6149341142vw;
    padding-top: 2.196193265vw;
    max-width: 39.3850658858vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-type dl dd {
    margin-left: -145px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-type dl dd {
    margin-left: -81.5226939971px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-type dl dd {
    padding-top: 30px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-type dl dd {
    padding-top: 16.8667642753px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-type dl dd {
    max-width: 538px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-type dl dd {
    max-width: 302.4773060029px;
  }
}
main #service .service-type dl dd h3 {
  font-weight: 600;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 768px) {
  main #service .service-type dl dd h3 {
    font-size: 1.1713030747vw;
    margin-bottom: 1.4641288433vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-type dl dd h3 {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-type dl dd h3 {
    font-size: 8.9956076135px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-type dl dd h3 {
    margin-bottom: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-type dl dd h3 {
    margin-bottom: 11.2445095168px;
  }
}
@media screen and (max-width: 767px) {
  main #service .service-type dl dd h3 {
    position: relative;
    font-size: 4vw;
    margin-bottom: 5.3333333333vw;
    padding-left: 9.3333333333vw;
  }
}
@media screen and (max-width: 767px) {
  main #service .service-type dl dd h3:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    background-image: url(/assets/img/strip.svg);
    margin-left: 0;
    width: 9.6vw;
    height: 6.9333333333vw;
    margin-top: -4.8vw;
  }
}
@media screen and (min-width: 768px) {
  main #service .service-type dl dd h3 strong {
    font-size: 1.756954612vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-type dl dd h3 strong {
    font-size: 24px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-type dl dd h3 strong {
    font-size: 13.4934114202px;
  }
}
@media screen and (max-width: 767px) {
  main #service .service-type dl dd h3 strong {
    font-size: 5.3333333333vw;
  }
}
main #service .service-type dl dd p,
main #service .service-type dl dd ul {
  line-height: 1.75;
}
@media screen and (min-width: 768px) and (max-width: 1200px) {
  main #service .service-type dl dd p,
main #service .service-type dl dd ul {
    font-size: 1.1713030747vw;
  }
}
@media screen and (min-width: 768px) and (max-width: 1200px) and (min-width: 1366px) {
  main #service .service-type dl dd p,
main #service .service-type dl dd ul {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1200px) and (max-width: 768px) {
  main #service .service-type dl dd p,
main #service .service-type dl dd ul {
    font-size: 8.9956076135px;
  }
}
@media screen and (max-width: 767px) {
  main #service .service-type dl dd p,
main #service .service-type dl dd ul {
    font-size: 4.2666666667vw;
    line-height: 1.8;
  }
}
@media screen and (min-width: 768px) {
  main #service .service-type dl dd ul {
    padding-left: 1.4641288433vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-type dl dd ul {
    padding-left: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-type dl dd ul {
    padding-left: 11.2445095168px;
  }
}
@media screen and (max-width: 767px) {
  main #service .service-type dl dd ul {
    padding-left: 5.3333333333vw;
  }
}
main #service .service-type dl dd ul li {
  position: relative;
}
@media screen and (min-width: 768px) {
  main #service .service-type dl dd ul li {
    margin-left: -1.4641288433vw;
    margin-right: 0.3660322108vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-type dl dd ul li {
    margin-left: -20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-type dl dd ul li {
    margin-left: -11.2445095168px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-type dl dd ul li {
    margin-right: 5px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-type dl dd ul li {
    margin-right: 2.8111273792px;
  }
}
@media screen and (max-width: 767px) {
  main #service .service-type dl dd ul li {
    margin-left: -5.3333333333vw;
    margin-right: 1.3333333333vw;
  }
}
main #service .service-type dl dd ul li:before {
  content: "・";
}
@media screen and (min-width: 768px) {
  main #service .service-type dl dd p {
    margin-bottom: 1.0980966325vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-type dl dd p {
    margin-bottom: 15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-type dl dd p {
    margin-bottom: 8.4333821376px;
  }
}
@media screen and (max-width: 767px) {
  main #service .service-type dl dd p {
    margin-bottom: 4vw;
  }
}
main #service .service-type dl dd p:last-child {
  margin-bottom: 0;
}
main #service .service-highlight {
  position: relative;
}
@media screen and (min-width: 768px) {
  main #service .service-highlight {
    z-index: 1;
    overflow: hidden;
    margin-top: 12.4450951684vw;
    padding-bottom: 2.9282576867vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-highlight {
    margin-top: 170px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-highlight {
    margin-top: 95.5783308931px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-highlight {
    padding-bottom: 40px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-highlight {
    padding-bottom: 22.4890190337px;
  }
}
@media screen and (max-width: 767px) {
  main #service .service-highlight {
    overflow: hidden;
    margin-top: 20vw;
    margin-left: -5.3333333333vw;
    margin-right: -5.3333333333vw;
    padding-bottom: 16vw;
  }
}
main #service .service-highlight:before {
  content: "";
  position: absolute;
  display: block;
  z-index: -1;
  left: 0;
  height: 100%;
}
@media screen and (min-width: 768px) {
  main #service .service-highlight:before {
    width: 72%;
    background-position: center right;
    background-size: cover;
    background-repeat: no-repeat;
    background-image: url(/assets/img/gradation.png);
    top: 2.9282576867vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-highlight:before {
    top: 40px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-highlight:before {
    top: 22.4890190337px;
  }
}
@media screen and (max-width: 767px) {
  main #service .service-highlight:before {
    width: 100%;
    background-position: top right;
    background-size: cover;
    background-repeat: no-repeat;
    background-image: url(/assets/img/gradation.sp.png);
    z-index: 1;
    top: 19%;
  }
}
@media screen and (max-width: 374px) {
  main #service .service-highlight:before {
    top: 17%;
  }
}
main #service .service-highlight dl {
  position: relative;
}
@media screen and (min-width: 768px) {
  main #service .service-highlight dl {
    display: flex;
    justify-content: flex-end;
    margin: 0 auto;
    max-width: 100vw;
    height: 34.4070278184vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-highlight dl {
    max-width: 1366px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-highlight dl {
    max-width: 768px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-highlight dl {
    height: 470px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-highlight dl {
    height: 264.2459736457px;
  }
}
@media screen and (max-width: 767px) {
  main #service .service-highlight dl {
    display: flex;
    flex-direction: column-reverse;
    overflow: hidden;
    z-index: 1;
  }
}
main #service .service-highlight dl dt {
  color: #fff;
}
@media screen and (min-width: 768px) {
  main #service .service-highlight dl dt {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    margin-top: 9.5168374817vw;
    width: 46.8521229868vw;
    padding-left: 7.3206442167vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-highlight dl dt {
    margin-top: 130px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-highlight dl dt {
    margin-top: 73.0893118594px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-highlight dl dt {
    width: 640px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-highlight dl dt {
    width: 359.8243045388px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-highlight dl dt {
    padding-left: 100px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-highlight dl dt {
    padding-left: 56.2225475842px;
  }
}
@media screen and (max-width: 767px) {
  main #service .service-highlight dl dt {
    margin-top: 8vw;
  }
}
main #service .service-highlight dl dt h3 {
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 1.79;
}
@media screen and (min-width: 768px) {
  main #service .service-highlight dl dt h3 {
    font-size: 1.756954612vw;
    margin-bottom: 1.8301610542vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-highlight dl dt h3 {
    font-size: 24px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-highlight dl dt h3 {
    font-size: 13.4934114202px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-highlight dl dt h3 {
    margin-bottom: 25px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-highlight dl dt h3 {
    margin-bottom: 14.055636896px;
  }
}
@media screen and (max-width: 767px) {
  main #service .service-highlight dl dt h3 {
    line-height: 1.6;
    font-size: 5.0666666667vw;
    margin-bottom: 5.3333333333vw;
    padding-left: 5.3333333333vw;
    padding-right: 5.3333333333vw;
  }
}
main #service .service-highlight dl dt p {
  line-height: 1.6875;
  font-weight: 300;
}
@media screen and (min-width: 768px) {
  main #service .service-highlight dl dt p {
    font-size: 1.1713030747vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-highlight dl dt p {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-highlight dl dt p {
    font-size: 8.9956076135px;
  }
}
@media screen and (max-width: 767px) {
  main #service .service-highlight dl dt p {
    line-height: 1.8;
    font-size: 4vw;
    padding-left: 5.3333333333vw;
    padding-right: 5.3333333333vw;
  }
}
main #service .service-highlight dl dd {
  pointer-events: none;
}
@media screen and (min-width: 768px) {
  main #service .service-highlight dl dd {
    margin-right: -8.2723279649vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-highlight dl dd {
    margin-right: -113px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-highlight dl dd {
    margin-right: -63.5314787701px;
  }
}
@media screen and (max-width: 767px) {
  main #service .service-highlight dl dd {
    margin-left: -21.3333333333vw;
    margin-right: -21.3333333333vw;
  }
}
@media screen and (min-width: 768px) {
  main #service .service-highlight dl dd img {
    max-width: 68.6676427526vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-highlight dl dd img {
    max-width: 938px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-highlight dl dd img {
    max-width: 527.3674963397px;
  }
}
@media screen and (max-width: 767px) {
  main #service .service-highlight dl dd img {
    width: 100%;
  }
}
@media screen and (min-width: 768px) {
  main #service .service-flow {
    margin-top: 13.9092240117vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-flow {
    margin-top: 190px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-flow {
    margin-top: 106.82284041px;
  }
}
@media screen and (max-width: 767px) {
  main #service .service-flow {
    margin-top: 29.3333333333vw;
  }
}
main #service .service-flow h2 {
  text-align: center;
  position: relative;
}
@media screen and (min-width: 768px) {
  main #service .service-flow h2 {
    margin-bottom: 3.6603221083vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-flow h2 {
    margin-bottom: 50px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-flow h2 {
    margin-bottom: 28.1112737921px;
  }
}
@media screen and (max-width: 767px) {
  main #service .service-flow h2 {
    margin-bottom: 16vw;
  }
}
main #service .service-flow h2:before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  background-image: url(/assets/img/strip.svg);
  background-size: cover;
  background-position: center;
}
@media screen and (min-width: 768px) {
  main #service .service-flow h2:before {
    width: 2.635431918vw;
    height: 1.9033674963vw;
    margin-left: -1.317715959vw;
    margin-top: -3.6603221083vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-flow h2:before {
    width: 36px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-flow h2:before {
    width: 20.2401171303px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-flow h2:before {
    height: 26px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-flow h2:before {
    height: 14.6178623719px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-flow h2:before {
    margin-left: -18px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-flow h2:before {
    margin-left: -10.1200585652px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-flow h2:before {
    margin-top: -50px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-flow h2:before {
    margin-top: -28.1112737921px;
  }
}
@media screen and (max-width: 767px) {
  main #service .service-flow h2:before {
    width: 9.6vw;
    height: 6.9333333333vw;
    margin-left: -4.8vw;
    margin-top: -12vw;
  }
}
main #service .service-flow h2 > span {
  display: block;
  font-weight: 600;
}
main #service .service-flow h2 > span.en {
  font-family: "Montserrat", sans-serif;
  font-size: 48px;
  margin-bottom: 20px;
}
@media screen and (min-width: 768px) {
  main #service .service-flow h2 > span.en {
    font-size: 3.513909224vw;
    margin-bottom: 1.4641288433vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-flow h2 > span.en {
    font-size: 48px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-flow h2 > span.en {
    font-size: 26.9868228404px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-flow h2 > span.en {
    margin-bottom: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-flow h2 > span.en {
    margin-bottom: 11.2445095168px;
  }
}
@media screen and (max-width: 767px) {
  main #service .service-flow h2 > span.en {
    font-size: 7.4666666667vw;
    margin-bottom: 5.3333333333vw;
  }
}
main #service .service-flow h2 > span.ja {
  letter-spacing: 0.06em;
}
@media screen and (min-width: 768px) {
  main #service .service-flow h2 > span.ja {
    font-size: 1.1713030747vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-flow h2 > span.ja {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-flow h2 > span.ja {
    font-size: 8.9956076135px;
  }
}
@media screen and (max-width: 767px) {
  main #service .service-flow h2 > span.ja {
    font-size: 4.2666666667vw;
  }
}
@media screen and (min-width: 768px) {
  main #service .service-flow .service-flow-box {
    display: flex;
    margin: 0 auto;
    max-width: 84.9194729136vw;
    padding-left: 1.4641288433vw;
    padding-right: 1.4641288433vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-flow .service-flow-box {
    max-width: 1160px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-flow .service-flow-box {
    max-width: 652.1815519766px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-flow .service-flow-box {
    padding-left: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-flow .service-flow-box {
    padding-left: 11.2445095168px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-flow .service-flow-box {
    padding-right: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-flow .service-flow-box {
    padding-right: 11.2445095168px;
  }
}
@media screen and (max-width: 767px) {
  main #service .service-flow .service-flow-box {
    padding-left: 8vw;
    padding-right: 8vw;
  }
}
main #service .service-flow .service-flow-box dl {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  position: relative;
}
@media screen and (min-width: 768px) {
  main #service .service-flow .service-flow-box dl {
    width: 300px;
    height: 220px;
    border-top: 1px solid #DDDDDD;
    border-right: 1px solid #DDDDDD;
    border-left: 1px solid #DDDDDD;
    border-bottom: 1px solid #DDDDDD;
    width: 21.9619326501vw;
    height: 16.1054172767vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-flow .service-flow-box dl {
    width: 300px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-flow .service-flow-box dl {
    width: 168.6676427526px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-flow .service-flow-box dl {
    height: 220px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-flow .service-flow-box dl {
    height: 123.6896046852px;
  }
}
@media screen and (max-width: 767px) {
  main #service .service-flow .service-flow-box dl {
    border-top: 1px solid #DDDDDD;
    border-right: 1px solid #DDDDDD;
    border-left: 1px solid #DDDDDD;
    background-color: #fff;
    height: 58.6666666667vw;
  }
}
main #service .service-flow .service-flow-box dl:before {
  content: "";
  position: absolute;
  font-family: "Futura", "Noto Sans JP", "Century Gothic";
  color: #1C99D8;
}
@media screen and (min-width: 768px) {
  main #service .service-flow .service-flow-box dl:before {
    font-size: 5.1244509517vw;
    top: -1.4641288433vw;
    left: 1.4641288433vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-flow .service-flow-box dl:before {
    font-size: 70px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-flow .service-flow-box dl:before {
    font-size: 39.3557833089px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-flow .service-flow-box dl:before {
    top: -20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-flow .service-flow-box dl:before {
    top: -11.2445095168px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-flow .service-flow-box dl:before {
    left: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-flow .service-flow-box dl:before {
    left: 11.2445095168px;
  }
}
@media screen and (max-width: 767px) {
  main #service .service-flow .service-flow-box dl:before {
    font-size: 18.6666666667vw;
    top: -8.5333333333vw;
    left: 5.3333333333vw;
  }
}
main #service .service-flow .service-flow-box dl:after {
  content: "";
  position: absolute;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  main #service .service-flow .service-flow-box dl:after {
    right: 0;
    top: 50%;
    background-image: url(/assets/img/triangle.png);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    border-left: 1px solid #fff;
    margin-top: -1.5373352855vw;
    margin-right: -1.4641288433vw;
    width: 1.4641288433vw;
    height: 3.074670571vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-flow .service-flow-box dl:after {
    margin-top: -21px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-flow .service-flow-box dl:after {
    margin-top: -11.8067349927px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-flow .service-flow-box dl:after {
    margin-right: -20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-flow .service-flow-box dl:after {
    margin-right: -11.2445095168px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-flow .service-flow-box dl:after {
    width: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-flow .service-flow-box dl:after {
    width: 11.2445095168px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-flow .service-flow-box dl:after {
    height: 42px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-flow .service-flow-box dl:after {
    height: 23.6134699854px;
  }
}
@media screen and (max-width: 767px) {
  main #service .service-flow .service-flow-box dl:after {
    bottom: -4.8vw;
    margin-left: -4.8vw;
    width: 9.6vw;
    height: 4.8vw;
    left: 50%;
    background-image: url(/assets/img/triangle.sp.png);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
  }
}
@media screen and (min-width: 768px) {
  main #service .service-flow .service-flow-box dl:last-child {
    border-right: 1px solid #DDDDDD;
  }
}
@media screen and (max-width: 767px) {
  main #service .service-flow .service-flow-box dl:last-child {
    border-bottom: 1px solid #ddd;
  }
}
main #service .service-flow .service-flow-box dl:last-child:after {
  display: none;
}
main #service .service-flow .service-flow-box dl:nth-of-type(1):before {
  content: "1";
}
@media screen and (min-width: 768px) {
  main #service .service-flow .service-flow-box dl:nth-of-type(1) dd img {
    width: 7.3938506589vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-flow .service-flow-box dl:nth-of-type(1) dd img {
    width: 101px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-flow .service-flow-box dl:nth-of-type(1) dd img {
    width: 56.78477306px;
  }
}
main #service .service-flow .service-flow-box dl:nth-of-type(2):before {
  content: "2";
}
@media screen and (min-width: 768px) {
  main #service .service-flow .service-flow-box dl:nth-of-type(2) dd img {
    width: 6.5153733529vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-flow .service-flow-box dl:nth-of-type(2) dd img {
    width: 89px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-flow .service-flow-box dl:nth-of-type(2) dd img {
    width: 50.0380673499px;
  }
}
main #service .service-flow .service-flow-box dl:nth-of-type(3):before {
  content: "3";
}
@media screen and (min-width: 768px) {
  main #service .service-flow .service-flow-box dl:nth-of-type(3) dd img {
    width: 9.3704245974vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-flow .service-flow-box dl:nth-of-type(3) dd img {
    width: 128px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-flow .service-flow-box dl:nth-of-type(3) dd img {
    width: 71.9648609078px;
  }
}
main #service .service-flow .service-flow-box dl:nth-of-type(4):before {
  content: "4";
}
@media screen and (min-width: 768px) {
  main #service .service-flow .service-flow-box dl:nth-of-type(4) dd img {
    width: 5.270863836vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-flow .service-flow-box dl:nth-of-type(4) dd img {
    width: 72px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-flow .service-flow-box dl:nth-of-type(4) dd img {
    width: 40.4802342606px;
  }
}
main #service .service-flow .service-flow-box dl dt {
  text-align: center;
  letter-spacing: 0.1em;
  line-height: 1.4;
}
@media screen and (min-width: 768px) {
  main #service .service-flow .service-flow-box dl dt {
    font-size: 1.1713030747vw;
    margin-bottom: 1.0980966325vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-flow .service-flow-box dl dt {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-flow .service-flow-box dl dt {
    font-size: 8.9956076135px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-flow .service-flow-box dl dt {
    margin-bottom: 15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-flow .service-flow-box dl dt {
    margin-bottom: 8.4333821376px;
  }
}
@media screen and (max-width: 767px) {
  main #service .service-flow .service-flow-box dl dt {
    font-weight: 500;
    font-size: 4.2666666667vw;
    margin-bottom: 5.3333333333vw;
  }
}
main #service .service-flow .service-flow-box dl dt strong {
  display: block;
}
@media screen and (min-width: 768px) {
  main #service .service-flow .service-flow-box dl dt strong {
    font-size: 1.756954612vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-flow .service-flow-box dl dt strong {
    font-size: 24px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-flow .service-flow-box dl dt strong {
    font-size: 13.4934114202px;
  }
}
@media screen and (max-width: 767px) {
  main #service .service-flow .service-flow-box dl dt strong {
    font-size: 5.3333333333vw;
  }
}
main #service .service-contact {
  position: relative;
  background-image: url(/assets/img/service.jpg);
  background-position: top;
  background-size: cover;
  background-repeat: no-repeat;
}
@media screen and (min-width: 768px) {
  main #service .service-contact {
    margin-top: 11.7130307467vw;
    margin-bottom: -11.7130307467vw;
    padding-bottom: 35.1390922401vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-contact {
    margin-top: 160px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-contact {
    margin-top: 89.9560761347px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-contact {
    margin-bottom: -160px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-contact {
    margin-bottom: -89.9560761347px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-contact {
    padding-bottom: 480px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-contact {
    padding-bottom: 269.8682284041px;
  }
}
@media screen and (max-width: 767px) {
  main #service .service-contact {
    margin-top: 21.3333333333vw;
    margin-bottom: -24vw;
    margin-left: -5.3333333333vw;
    margin-right: -5.3333333333vw;
    padding-bottom: 97.6vw;
    background-image: url(/assets/img/service.sp.jpg);
  }
}
main #service .service-contact .service-contact-wrap {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}
@media screen and (min-width: 768px) {
  main #service .service-contact .service-contact-wrap .service-contact-logo {
    margin-bottom: 1.4641288433vw;
    margin-bottom: 1.6666666667vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-contact .service-contact-wrap .service-contact-logo {
    margin-bottom: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-contact .service-contact-wrap .service-contact-logo {
    margin-bottom: 11.2445095168px;
  }
}
@media screen and (max-width: 767px) {
  main #service .service-contact .service-contact-wrap .service-contact-logo {
    margin-bottom: 8vw;
  }
}
@media screen and (min-width: 768px) {
  main #service .service-contact .service-contact-wrap .service-contact-logo img {
    width: 6.4421669107vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-contact .service-contact-wrap .service-contact-logo img {
    width: 88px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-contact .service-contact-wrap .service-contact-logo img {
    width: 49.4758418741px;
  }
}
main #service .service-contact .service-contact-wrap h2 {
  text-align: center;
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 1.8;
  color: #fff;
}
@media screen and (min-width: 768px) {
  main #service .service-contact .service-contact-wrap h2 {
    margin-bottom: 1.4641288433vw;
    font-size: 1.4641288433vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-contact .service-contact-wrap h2 {
    margin-bottom: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-contact .service-contact-wrap h2 {
    margin-bottom: 11.2445095168px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-contact .service-contact-wrap h2 {
    font-size: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-contact .service-contact-wrap h2 {
    font-size: 11.2445095168px;
  }
}
@media screen and (max-width: 767px) {
  main #service .service-contact .service-contact-wrap h2 {
    line-height: 1.5;
    margin-bottom: 9.3333333333vw;
    font-size: 4.2666666667vw;
  }
}
main #service .service-contact .service-contact-wrap a {
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  -webkit-animation: gradientReverse 0.3s ease;
          animation: gradientReverse 0.3s ease;
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both;
  -webkit-animation-iteration-count: 1;
          animation-iteration-count: 1;
  font-size: 14px;
}
@media screen and (min-width: 768px) {
  main #service .service-contact .service-contact-wrap a {
    transition: all 0.3s ease;
    font-size: 1.0248901903vw;
    width: 11.9326500732vw;
    height: 3.6603221083vw;
    border-radius: 0.2928257687vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-contact .service-contact-wrap a {
    font-size: 14px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-contact .service-contact-wrap a {
    font-size: 7.8711566618px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-contact .service-contact-wrap a {
    width: 163px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-contact .service-contact-wrap a {
    width: 91.6427525622px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-contact .service-contact-wrap a {
    height: 50px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-contact .service-contact-wrap a {
    height: 28.1112737921px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-contact .service-contact-wrap a {
    border-radius: 4px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-contact .service-contact-wrap a {
    border-radius: 2.2489019034px;
  }
}
@media screen and (max-width: 767px) {
  main #service .service-contact .service-contact-wrap a {
    font-weight: 500;
    font-size: 3.7333333333vw;
    width: 43.4666666667vw;
    height: 13.3333333333vw;
    border-radius: 1.0666666667vw;
  }
}
@media screen and (min-width: 768px) {
  main #service .service-contact .service-contact-wrap a:hover {
    opacity: 1;
    -webkit-animation: gradient 0.3s ease;
            animation: gradient 0.3s ease;
    -webkit-animation-fill-mode: both;
            animation-fill-mode: both;
    -webkit-animation-iteration-count: 1;
            animation-iteration-count: 1;
  }
}
main #service .service-contact .service-contact-wrap a img {
  display: inline-block;
  vertical-align: middle;
}
@media screen and (min-width: 768px) {
  main #service .service-contact .service-contact-wrap a img {
    width: 1.6105417277vw;
    margin-right: 0.878477306vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-contact .service-contact-wrap a img {
    width: 22px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-contact .service-contact-wrap a img {
    width: 12.3689604685px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #service .service-contact .service-contact-wrap a img {
    margin-right: 12px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #service .service-contact .service-contact-wrap a img {
    margin-right: 6.7467057101px;
  }
}
@media screen and (max-width: 767px) {
  main #service .service-contact .service-contact-wrap a img {
    margin-right: 3.2vw;
  }
}
main #aboutus .container {
  position: relative;
}
@media screen and (min-width: 768px) {
  main #aboutus .container {
    display: flex;
    justify-content: flex-end;
    padding: 0;
  }
}
@media screen and (min-width: 768px) {
  main #aboutus .container.fix:before {
    position: fixed;
    margin: 0;
    left: 50%;
    transform: translateX(-50%);
    max-width: 84.9194729136vw;
    margin-top: 8.0527086384vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #aboutus .container.fix:before {
    max-width: 1160px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #aboutus .container.fix:before {
    max-width: 652.1815519766px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #aboutus .container.fix:before {
    margin-top: 110px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #aboutus .container.fix:before {
    margin-top: 61.8448023426px;
  }
}
@media screen and (min-width: 768px) {
  main #aboutus .container:before {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    background-position: top left;
    background-size: contain;
    background-repeat: no-repeat;
    background-image: url(/assets/img/aboutus.png);
    width: 100%;
    transition: top 0.5s linear;
    height: 24.7437774524vw;
    margin-top: 2.9282576867vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #aboutus .container:before {
    height: 338px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #aboutus .container:before {
    height: 190.0322108346px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #aboutus .container:before {
    margin-top: 40px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #aboutus .container:before {
    margin-top: 22.4890190337px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1366px) {
  main #aboutus .container:before {
    background-size: 30.1610541728vw auto;
    background-position-x: 1.4641288433vw;
  }
}
@media screen and (min-width: 768px) {
  main #aboutus .aboutus-content {
    padding-bottom: 20.4978038067vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #aboutus .aboutus-content {
    padding-bottom: 280px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #aboutus .aboutus-content {
    padding-bottom: 157.4231332357px;
  }
}
@media screen and (min-width: 768px) {
  main #aboutus .aboutus-content dl {
    margin-bottom: 8.78477306vw;
    width: 49.6339677892vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #aboutus .aboutus-content dl {
    margin-bottom: 120px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #aboutus .aboutus-content dl {
    margin-bottom: 67.467057101px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #aboutus .aboutus-content dl {
    width: 678px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #aboutus .aboutus-content dl {
    width: 381.1888726208px;
  }
}
@media screen and (max-width: 767px) {
  main #aboutus .aboutus-content dl {
    margin-bottom: 80px;
    margin-bottom: 21.3333333333vw;
  }
}
main #aboutus .aboutus-content dl:last-child {
  margin-bottom: 0;
}
main #aboutus .aboutus-content dl dt h3 {
  position: relative;
}
@media screen and (min-width: 768px) {
  main #aboutus .aboutus-content dl dt h3 {
    margin-bottom: 2.9282576867vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #aboutus .aboutus-content dl dt h3 {
    margin-bottom: 40px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #aboutus .aboutus-content dl dt h3 {
    margin-bottom: 22.4890190337px;
  }
}
@media screen and (max-width: 767px) {
  main #aboutus .aboutus-content dl dt h3 {
    margin-bottom: 9.3333333333vw;
  }
}
main #aboutus .aboutus-content dl dt h3:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background-image: url(/assets/img/strip.svg);
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
}
@media screen and (min-width: 768px) {
  main #aboutus .aboutus-content dl dt h3:before {
    width: 2.635431918vw;
    height: 1.9033674963vw;
    margin-top: -2.635431918vw;
    margin-left: -2.0497803807vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #aboutus .aboutus-content dl dt h3:before {
    width: 36px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #aboutus .aboutus-content dl dt h3:before {
    width: 20.2401171303px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #aboutus .aboutus-content dl dt h3:before {
    height: 26px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #aboutus .aboutus-content dl dt h3:before {
    height: 14.6178623719px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #aboutus .aboutus-content dl dt h3:before {
    margin-top: -36px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #aboutus .aboutus-content dl dt h3:before {
    margin-top: -20.2401171303px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #aboutus .aboutus-content dl dt h3:before {
    margin-left: -28px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #aboutus .aboutus-content dl dt h3:before {
    margin-left: -15.7423133236px;
  }
}
@media screen and (max-width: 767px) {
  main #aboutus .aboutus-content dl dt h3:before {
    background-image: url(/assets/img/strip.svg);
    margin-left: 0;
    width: 9.6vw;
    height: 6.9333333333vw;
    margin-top: -5.3333333333vw;
  }
}
main #aboutus .aboutus-content dl dt h3 > span {
  display: block;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  main #aboutus .aboutus-content dl dt h3 > span {
    line-height: 1.5;
    padding-left: 9.0666666667vw;
  }
}
main #aboutus .aboutus-content dl dt h3 > span.en {
  font-family: "Montserrat", sans-serif;
}
@media screen and (min-width: 768px) {
  main #aboutus .aboutus-content dl dt h3 > span.en {
    font-size: 1.1713030747vw;
    margin-bottom: 1.8301610542vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #aboutus .aboutus-content dl dt h3 > span.en {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #aboutus .aboutus-content dl dt h3 > span.en {
    font-size: 8.9956076135px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #aboutus .aboutus-content dl dt h3 > span.en {
    margin-bottom: 25px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #aboutus .aboutus-content dl dt h3 > span.en {
    margin-bottom: 14.055636896px;
  }
}
@media screen and (max-width: 767px) {
  main #aboutus .aboutus-content dl dt h3 > span.en {
    font-size: 5.3333333333vw;
    margin-bottom: 0;
  }
}
main #aboutus .aboutus-content dl dt h3 > span.ja {
  line-height: 1.42;
  letter-spacing: 0.06em;
}
@media screen and (min-width: 768px) {
  main #aboutus .aboutus-content dl dt h3 > span.ja {
    font-size: 2.0497803807vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #aboutus .aboutus-content dl dt h3 > span.ja {
    font-size: 28px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #aboutus .aboutus-content dl dt h3 > span.ja {
    font-size: 15.7423133236px;
  }
}
@media screen and (max-width: 767px) {
  main #aboutus .aboutus-content dl dt h3 > span.ja {
    font-size: 5.8666666667vw;
  }
}
main #aboutus .aboutus-content dl dd p,
main #aboutus .aboutus-content dl dd ul {
  letter-spacing: 0.06em;
  line-height: 1.8;
}
@media screen and (min-width: 768px) {
  main #aboutus .aboutus-content dl dd p,
main #aboutus .aboutus-content dl dd ul {
    font-size: 1.1713030747vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #aboutus .aboutus-content dl dd p,
main #aboutus .aboutus-content dl dd ul {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #aboutus .aboutus-content dl dd p,
main #aboutus .aboutus-content dl dd ul {
    font-size: 8.9956076135px;
  }
}
@media screen and (max-width: 767px) {
  main #aboutus .aboutus-content dl dd p,
main #aboutus .aboutus-content dl dd ul {
    font-size: 4vw;
  }
}
@media screen and (min-width: 768px) {
  main #aboutus .aboutus-content dl dd ul {
    padding-left: 2.196193265vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #aboutus .aboutus-content dl dd ul {
    padding-left: 30px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #aboutus .aboutus-content dl dd ul {
    padding-left: 16.8667642753px;
  }
}
@media screen and (max-width: 767px) {
  main #aboutus .aboutus-content dl dd ul {
    padding-left: 8vw;
  }
}
main #aboutus .aboutus-content dl dd ul li {
  position: relative;
}
@media screen and (min-width: 768px) {
  main #aboutus .aboutus-content dl dd ul li {
    margin-bottom: 2.196193265vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #aboutus .aboutus-content dl dd ul li {
    margin-bottom: 30px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #aboutus .aboutus-content dl dd ul li {
    margin-bottom: 16.8667642753px;
  }
}
main #aboutus .aboutus-content dl dd ul li:last-child {
  margin-bottom: 0;
}
main #aboutus .aboutus-content dl dd ul li:before {
  display: inline-block;
}
@media screen and (min-width: 768px) {
  main #aboutus .aboutus-content dl dd ul li:before {
    margin-left: -2.196193265vw;
    margin-right: 0.7320644217vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #aboutus .aboutus-content dl dd ul li:before {
    margin-left: -30px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #aboutus .aboutus-content dl dd ul li:before {
    margin-left: -16.8667642753px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #aboutus .aboutus-content dl dd ul li:before {
    margin-right: 10px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #aboutus .aboutus-content dl dd ul li:before {
    margin-right: 5.6222547584px;
  }
}
@media screen and (max-width: 767px) {
  main #aboutus .aboutus-content dl dd ul li:before {
    margin-left: -8vw;
    margin-right: 2.6666666667vw;
  }
}
main #aboutus .aboutus-content dl dd ul li:nth-of-type(1):before {
  content: "①";
}
main #aboutus .aboutus-content dl dd ul li:nth-of-type(2):before {
  content: "②";
}
main #aboutus .aboutus-content dl dd ul li:nth-of-type(3):before {
  content: "③";
}
@media screen and (min-width: 768px) {
  main #contact .container {
    max-width: 48.3162518302vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .container {
    max-width: 660px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .container {
    max-width: 371.0688140556px;
  }
}
@media screen and (min-width: 768px) {
  main #contact .contact-process {
    margin-bottom: 5.8565153734vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-process {
    margin-bottom: 80px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-process {
    margin-bottom: 44.9780380673px;
  }
}
@media screen and (max-width: 767px) {
  main #contact .contact-process {
    margin-bottom: 21.3333333333vw;
  }
}
main #contact .contact-process ul {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  main #contact .contact-process ul {
    margin: 0 auto;
    max-width: 23.4260614934vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-process ul {
    max-width: 320px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-process ul {
    max-width: 179.9121522694px;
  }
}
@media screen and (max-width: 767px) {
  main #contact .contact-process ul {
    width: 64vw;
    margin: 0 auto;
  }
}
main #contact .contact-process ul:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  background-color: #DDDDDD;
  z-index: -1;
}
@media screen and (min-width: 768px) {
  main #contact .contact-process ul:after {
    height: 0.0732064422vw;
    margin-top: 1.0980966325vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-process ul:after {
    height: 1px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-process ul:after {
    height: 0.5622254758px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-process ul:after {
    margin-top: 15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-process ul:after {
    margin-top: 8.4333821376px;
  }
}
@media screen and (max-width: 767px) {
  main #contact .contact-process ul:after {
    height: 0.2666666667vw;
    margin-top: 4vw;
  }
}
main #contact .contact-process ul li:nth-of-type(1) > span.num::before {
  content: "1";
}
main #contact .contact-process ul li:nth-of-type(2) > span.num::before {
  content: "2";
}
main #contact .contact-process ul li:nth-of-type(3) > span.num::before {
  content: "3";
}
main #contact .contact-process ul li > span {
  display: block;
  text-align: center;
}
main #contact .contact-process ul li > span.num {
  position: relative;
  font-weight: 600;
  border-radius: 50%;
  background-color: #CECECE;
  color: #fff;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  main #contact .contact-process ul li > span.num {
    width: 2.196193265vw;
    height: 2.196193265vw;
    font-size: 1.1713030747vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-process ul li > span.num {
    width: 30px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-process ul li > span.num {
    width: 16.8667642753px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-process ul li > span.num {
    height: 30px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-process ul li > span.num {
    height: 16.8667642753px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-process ul li > span.num {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-process ul li > span.num {
    font-size: 8.9956076135px;
  }
}
@media screen and (max-width: 767px) {
  main #contact .contact-process ul li > span.num {
    width: 8vw;
    height: 8vw;
    font-size: 4.2666666667vw;
  }
}
main #contact .contact-process ul li > span.num:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-55%) translateX(-45%);
  z-index: 1;
}
@media screen and (min-width: 768px) {
  main #contact .contact-process ul li > span.txt {
    font-size: 1.0980966325vw;
    margin-top: 0.6588579795vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-process ul li > span.txt {
    font-size: 15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-process ul li > span.txt {
    font-size: 8.4333821376px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-process ul li > span.txt {
    margin-top: 9px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-process ul li > span.txt {
    margin-top: 5.0600292826px;
  }
}
@media screen and (max-width: 767px) {
  main #contact .contact-process ul li > span.txt {
    font-size: 4vw;
    margin-top: 2.4vw;
  }
}
main #contact .contact-process ul li.active > span.num {
  background: rgb(11, 194, 221);
  background: linear-gradient(90deg, rgb(11, 194, 221) 0%, rgb(17, 88, 206) 100%);
}
main #contact #includeKakunin,
main #contact #includeThanks {
  display: none;
}
@media screen and (min-width: 768px) {
  main #contact .contact-form.kakunin dl {
    border-bottom: 1px solid #ddd;
    margin-bottom: 0;
    padding-top: 1.4641288433vw;
    padding-bottom: 1.4641288433vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form.kakunin dl {
    padding-top: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form.kakunin dl {
    padding-top: 11.2445095168px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form.kakunin dl {
    padding-bottom: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form.kakunin dl {
    padding-bottom: 11.2445095168px;
  }
}
@media screen and (max-width: 767px) {
  main #contact .contact-form.kakunin dl {
    display: flex;
    align-items: flex-start;
    border-bottom: 1px solid #ddd;
    margin-bottom: 0;
    padding-top: 5.3333333333vw;
    padding-bottom: 5.3333333333vw;
  }
}
@media screen and (min-width: 768px) {
  main #contact .contact-form.kakunin dl:first-child {
    border-top: 1px solid #ddd;
  }
}
@media screen and (max-width: 767px) {
  main #contact .contact-form.kakunin dl:first-child {
    border-top: 1px solid #ddd;
  }
}
@media screen and (min-width: 768px) {
  main #contact .contact-form.kakunin dl dt {
    padding-top: 0.439238653vw;
    width: 10.980966325vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form.kakunin dl dt {
    padding-top: 6px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form.kakunin dl dt {
    padding-top: 3.3733528551px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form.kakunin dl dt {
    width: 150px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form.kakunin dl dt {
    width: 84.3338213763px;
  }
}
@media screen and (max-width: 767px) {
  main #contact .contact-form.kakunin dl dt {
    width: 33.3333333333vw;
    margin-top: 1.6vw;
  }
}
@media screen and (max-width: 767px) {
  main #contact .contact-form.kakunin dl dd {
    width: 66.6666666667%;
  }
}
@media screen and (min-width: 768px) {
  main #contact .contact-form dl {
    display: flex;
    align-items: flex-start;
    margin-bottom: 1.4641288433vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form dl {
    margin-bottom: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form dl {
    margin-bottom: 11.2445095168px;
  }
}
@media screen and (max-width: 767px) {
  main #contact .contact-form dl {
    margin-bottom: 5.3333333333vw;
  }
}
main #contact .contact-form dl:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 767px) {
  main #contact .contact-form dl.flexsp {
    display: flex;
    align-items: flex-start;
  }
}
@media screen and (max-width: 767px) {
  main #contact .contact-form dl.flexsp dt {
    width: 125px;
    margin-bottom: 0;
    width: 33.3333333333vw;
  }
}
@media screen and (max-width: 767px) {
  main #contact .contact-form dl.flexsp dd {
    width: 66.6666666667%;
  }
}
main #contact .contact-form dl dt {
  font-weight: 600;
  display: flex;
  align-items: center;
}
@media screen and (min-width: 768px) {
  main #contact .contact-form dl dt {
    justify-content: space-between;
    font-size: 1.0980966325vw;
    padding-top: 0.7320644217vw;
    margin-right: 1.0980966325vw;
    width: 13.9092240117vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form dl dt {
    font-size: 15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form dl dt {
    font-size: 8.4333821376px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form dl dt {
    padding-top: 10px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form dl dt {
    padding-top: 5.6222547584px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form dl dt {
    margin-right: 15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form dl dt {
    margin-right: 8.4333821376px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form dl dt {
    width: 190px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form dl dt {
    width: 106.82284041px;
  }
}
@media screen and (max-width: 767px) {
  main #contact .contact-form dl dt {
    font-weight: 500;
    font-size: 4vw;
    margin-bottom: 4vw;
  }
}
main #contact .contact-form dl dt .must {
  display: flex;
  justify-content: center;
  align-items: center;
  color: #FF0000;
  border: 1px solid #FF0000;
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  main #contact .contact-form dl dt .must {
    font-size: 0.878477306vw;
    width: 2.9282576867vw;
    height: 1.4641288433vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form dl dt .must {
    font-size: 12px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form dl dt .must {
    font-size: 6.7467057101px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form dl dt .must {
    width: 40px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form dl dt .must {
    width: 22.4890190337px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form dl dt .must {
    height: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form dl dt .must {
    height: 11.2445095168px;
  }
}
@media screen and (max-width: 767px) {
  main #contact .contact-form dl dt .must {
    font-size: 3.2vw;
    width: 10.6666666667vw;
    height: 5.3333333333vw;
    margin-left: 5.3333333333vw;
  }
}
@media screen and (min-width: 768px) {
  main #contact .contact-form dl dd {
    font-size: 1.0980966325vw;
    width: 34.4070278184vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form dl dd {
    font-size: 15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form dl dd {
    font-size: 8.4333821376px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form dl dd {
    width: 470px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form dl dd {
    width: 264.2459736457px;
  }
}
@media screen and (max-width: 767px) {
  main #contact .contact-form dl dd {
    font-size: 4vw;
  }
}
main #contact .contact-form dl dd ul li {
  position: relative;
  cursor: pointer;
}
@media screen and (min-width: 768px) {
  main #contact .contact-form dl dd ul li {
    margin-bottom: 1.0248901903vw;
    padding-left: 1.9765739385vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form dl dd ul li {
    margin-bottom: 14px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form dl dd ul li {
    margin-bottom: 7.8711566618px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form dl dd ul li {
    padding-left: 27px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form dl dd ul li {
    padding-left: 15.1800878477px;
  }
}
@media screen and (max-width: 767px) {
  main #contact .contact-form dl dd ul li {
    margin-bottom: 3.7333333333vw;
    padding-left: 7.2vw;
  }
}
@media screen and (min-width: 768px) {
  main #contact .contact-form dl dd ul li:last-child {
    margin-bottom: 0.5124450952vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form dl dd ul li:last-child {
    margin-bottom: 7px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form dl dd ul li:last-child {
    margin-bottom: 3.9355783309px;
  }
}
@media screen and (max-width: 767px) {
  main #contact .contact-form dl dd ul li:last-child {
    margin-bottom: 1.8666666667vw;
  }
}
main #contact .contact-form dl dd ul li:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  border: 1px solid #43A4E1;
  border-radius: 50%;
}
@media screen and (min-width: 768px) {
  main #contact .contact-form dl dd ul li:before {
    width: 1.0980966325vw;
    height: 1.0980966325vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form dl dd ul li:before {
    width: 15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form dl dd ul li:before {
    width: 8.4333821376px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form dl dd ul li:before {
    height: 15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form dl dd ul li:before {
    height: 8.4333821376px;
  }
}
@media screen and (max-width: 767px) {
  main #contact .contact-form dl dd ul li:before {
    width: 4vw;
    height: 4vw;
  }
}
main #contact .contact-form dl dd ul li:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background-color: #43A4E1;
  border-radius: 50%;
  opacity: 0;
  transition: all 0.3s ease;
}
@media screen and (min-width: 768px) {
  main #contact .contact-form dl dd ul li:after {
    width: 0.5124450952vw;
    height: 0.5124450952vw;
    margin-top: 0.3660322108vw;
    margin-left: 0.3660322108vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form dl dd ul li:after {
    width: 7px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form dl dd ul li:after {
    width: 3.9355783309px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form dl dd ul li:after {
    height: 7px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form dl dd ul li:after {
    height: 3.9355783309px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form dl dd ul li:after {
    margin-top: 5px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form dl dd ul li:after {
    margin-top: 2.8111273792px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form dl dd ul li:after {
    margin-left: 5px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form dl dd ul li:after {
    margin-left: 2.8111273792px;
  }
}
@media screen and (max-width: 767px) {
  main #contact .contact-form dl dd ul li:after {
    width: 1.8666666667vw;
    height: 1.8666666667vw;
    margin-top: 1.3333333333vw;
    margin-left: 1.3333333333vw;
  }
}
main #contact .contact-form dl dd ul li.active:after {
  opacity: 1;
}
main #contact .contact-form dl dd input.error,
main #contact .contact-form dl dd textarea.error {
  background-color: #FFF0F0;
}
main #contact .contact-form dl dd input.error::-moz-placeholder, main #contact .contact-form dl dd textarea.error::-moz-placeholder {
  color: #FFA3A3;
}
main #contact .contact-form dl dd input.error::placeholder,
main #contact .contact-form dl dd textarea.error::placeholder {
  color: #FFA3A3;
}
main #contact .contact-form dl dd input {
  width: 100%;
  background-color: #F5F5F5;
  border: none;
}
@media screen and (min-width: 768px) {
  main #contact .contact-form dl dd input {
    padding-top: 1.0980966325vw;
    padding-bottom: 1.0980966325vw;
    padding-left: 0.7320644217vw;
    padding-right: 0.7320644217vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form dl dd input {
    padding-top: 15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form dl dd input {
    padding-top: 8.4333821376px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form dl dd input {
    padding-bottom: 15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form dl dd input {
    padding-bottom: 8.4333821376px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form dl dd input {
    padding-left: 10px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form dl dd input {
    padding-left: 5.6222547584px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form dl dd input {
    padding-right: 10px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form dl dd input {
    padding-right: 5.6222547584px;
  }
}
@media screen and (max-width: 767px) {
  main #contact .contact-form dl dd input {
    font-size: 4vw;
    padding-top: 2.6666666667vw;
    padding-bottom: 2.8vw;
    padding-left: 4vw;
    padding-right: 4vw;
  }
}
main #contact .contact-form dl dd input::-moz-placeholder {
  color: #AAA;
}
main #contact .contact-form dl dd input::placeholder {
  color: #AAA;
}
main #contact .contact-form dl dd textarea {
  resize: none;
  border: none;
  line-height: 1.8;
  background-color: #F5F5F5;
  width: 100%;
}
@media screen and (min-width: 768px) {
  main #contact .contact-form dl dd textarea {
    padding-top: 1.0980966325vw;
    padding-bottom: 1.0980966325vw;
    padding-left: 0.7320644217vw;
    padding-right: 0.7320644217vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form dl dd textarea {
    padding-top: 15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form dl dd textarea {
    padding-top: 8.4333821376px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form dl dd textarea {
    padding-bottom: 15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form dl dd textarea {
    padding-bottom: 8.4333821376px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form dl dd textarea {
    padding-left: 10px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form dl dd textarea {
    padding-left: 5.6222547584px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form dl dd textarea {
    padding-right: 10px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form dl dd textarea {
    padding-right: 5.6222547584px;
  }
}
@media screen and (max-width: 767px) {
  main #contact .contact-form dl dd textarea {
    font-size: 4vw;
    padding-top: 2.6666666667vw;
    padding-bottom: 2.8vw;
    padding-left: 4vw;
    padding-right: 4vw;
    height: 53.3333333333vw;
  }
}
main #contact .contact-form dl dd textarea::-moz-placeholder {
  color: #AAA;
}
main #contact .contact-form dl dd textarea::placeholder {
  color: #AAA;
}
main #contact .contact-form dl dd #input-privacy {
  position: relative;
  cursor: pointer;
}
@media screen and (min-width: 768px) {
  main #contact .contact-form dl dd #input-privacy {
    margin-top: 1.8301610542vw;
    padding-left: 1.9765739385vw;
    margin-bottom: 1.4641288433vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form dl dd #input-privacy {
    margin-top: 25px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form dl dd #input-privacy {
    margin-top: 14.055636896px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form dl dd #input-privacy {
    padding-left: 27px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form dl dd #input-privacy {
    padding-left: 15.1800878477px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form dl dd #input-privacy {
    margin-bottom: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form dl dd #input-privacy {
    margin-bottom: 11.2445095168px;
  }
}
@media screen and (max-width: 767px) {
  main #contact .contact-form dl dd #input-privacy {
    margin-top: 10.6666666667vw;
    padding-left: 7.2vw;
    margin-bottom: 5.3333333333vw;
  }
}
main #contact .contact-form dl dd #input-privacy:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  border: 1px solid #0B8BD5;
}
@media screen and (min-width: 768px) {
  main #contact .contact-form dl dd #input-privacy:before {
    width: 1.0980966325vw;
    height: 1.0980966325vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form dl dd #input-privacy:before {
    width: 15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form dl dd #input-privacy:before {
    width: 8.4333821376px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form dl dd #input-privacy:before {
    height: 15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form dl dd #input-privacy:before {
    height: 8.4333821376px;
  }
}
@media screen and (max-width: 767px) {
  main #contact .contact-form dl dd #input-privacy:before {
    width: 4vw;
    height: 4vw;
  }
}
main #contact .contact-form dl dd #input-privacy:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background-image: url(/assets/img/check-solid.svg);
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  opacity: 0;
  transition: all 0.3s ease;
}
@media screen and (min-width: 768px) {
  main #contact .contact-form dl dd #input-privacy:after {
    width: 1.0980966325vw;
    height: 1.0980966325vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form dl dd #input-privacy:after {
    width: 15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form dl dd #input-privacy:after {
    width: 8.4333821376px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form dl dd #input-privacy:after {
    height: 15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form dl dd #input-privacy:after {
    height: 8.4333821376px;
  }
}
@media screen and (max-width: 767px) {
  main #contact .contact-form dl dd #input-privacy:after {
    left: 0.2666666667vw;
    width: 4vw;
    height: 4vw;
  }
}
main #contact .contact-form dl dd #input-privacy.active:after {
  opacity: 1;
}
main #contact .contact-form dl dd #input-privacy a {
  color: #0B8BD5;
}
main #contact .contact-form dl dd .err {
  color: #FF0000;
  line-height: 1.5;
}
@media screen and (min-width: 768px) {
  main #contact .contact-form dl dd .err {
    font-size: 0.878477306vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form dl dd .err {
    font-size: 12px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form dl dd .err {
    font-size: 6.7467057101px;
  }
}
@media screen and (max-width: 767px) {
  main #contact .contact-form dl dd .err {
    font-size: 3.2vw;
  }
}
main #contact .contact-form dl dd #g-recaptcha {
  pointer-events: none;
  opacity: 0.5;
}
main #contact .contact-form dl dd #g-recaptcha.active {
  pointer-events: visible;
  opacity: 1;
}
main #contact .contact-form dl dd #submit-btn {
  pointer-events: none;
  opacity: 0.5;
}
@media screen and (min-width: 768px) {
  main #contact .contact-form dl dd #submit-btn {
    margin-top: 2.5622254758vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form dl dd #submit-btn {
    margin-top: 35px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form dl dd #submit-btn {
    margin-top: 19.6778916545px;
  }
}
@media screen and (max-width: 767px) {
  main #contact .contact-form dl dd #submit-btn {
    margin-top: 10.6666666667vw;
  }
}
main #contact .contact-form dl dd #submit-btn a {
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  -webkit-animation: gradientReverse 0.3s ease;
          animation: gradientReverse 0.3s ease;
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both;
  -webkit-animation-iteration-count: 1;
          animation-iteration-count: 1;
  letter-spacing: 0.1em;
  font-weight: 500;
  position: relative;
  font-family: "Montserrat", sans-serif;
}
@media screen and (min-width: 768px) {
  main #contact .contact-form dl dd #submit-btn a {
    transition: all 0.3s ease;
    font-size: 1.0980966325vw;
    width: 13.5431918009vw;
    height: 3.6603221083vw;
    border-radius: 0.2928257687vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form dl dd #submit-btn a {
    font-size: 15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form dl dd #submit-btn a {
    font-size: 8.4333821376px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form dl dd #submit-btn a {
    width: 185px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form dl dd #submit-btn a {
    width: 104.0117130307px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form dl dd #submit-btn a {
    height: 50px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form dl dd #submit-btn a {
    height: 28.1112737921px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form dl dd #submit-btn a {
    border-radius: 4px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form dl dd #submit-btn a {
    border-radius: 2.2489019034px;
  }
}
@media screen and (max-width: 767px) {
  main #contact .contact-form dl dd #submit-btn a {
    font-size: 4vw;
    width: 48vw;
    height: 13.3333333333vw;
    border-radius: 1.0666666667vw;
  }
}
@media screen and (min-width: 768px) {
  main #contact .contact-form dl dd #submit-btn a:hover {
    opacity: 1;
    -webkit-animation: gradient 0.3s ease;
            animation: gradient 0.3s ease;
    -webkit-animation-fill-mode: both;
            animation-fill-mode: both;
    -webkit-animation-iteration-count: 1;
            animation-iteration-count: 1;
  }
}
@media screen and (min-width: 768px) {
  main #contact .contact-form dl dd #submit-btn a:hover:after {
    width: 2.9282576867vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form dl dd #submit-btn a:hover:after {
    width: 40px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form dl dd #submit-btn a:hover:after {
    width: 22.4890190337px;
  }
}
main #contact .contact-form dl dd #submit-btn a:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  background-color: #fff;
  transition: all 0.3s ease;
}
@media screen and (min-width: 768px) {
  main #contact .contact-form dl dd #submit-btn a:after {
    width: 2.196193265vw;
    height: 0.0732064422vw;
    margin-top: -0.0366032211vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form dl dd #submit-btn a:after {
    width: 30px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form dl dd #submit-btn a:after {
    width: 16.8667642753px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form dl dd #submit-btn a:after {
    height: 1px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form dl dd #submit-btn a:after {
    height: 0.5622254758px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form dl dd #submit-btn a:after {
    margin-top: -0.5px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form dl dd #submit-btn a:after {
    margin-top: -0.2811127379px;
  }
}
@media screen and (max-width: 767px) {
  main #contact .contact-form dl dd #submit-btn a:after {
    width: 8vw;
    height: 0.2666666667vw;
    margin-top: -0.1333333333vw;
  }
}
main #contact .contact-form dl dd #submit-btn.active {
  pointer-events: visible;
  opacity: 1;
}
main #contact .contact-form dl dd .answer {
  line-height: 1.8;
}
@media screen and (min-width: 768px) {
  main #contact .contact-form dl dd .answer {
    font-size: 1.0980966325vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form dl dd .answer {
    font-size: 15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form dl dd .answer {
    font-size: 8.4333821376px;
  }
}
@media screen and (max-width: 767px) {
  main #contact .contact-form dl dd .answer {
    font-size: 4vw;
  }
}
@media screen and (min-width: 768px) {
  main #contact .contact-form .confirm-btn {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 5.8565153734vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form .confirm-btn {
    margin-top: 80px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form .confirm-btn {
    margin-top: 44.9780380673px;
  }
}
@media screen and (max-width: 767px) {
  main #contact .contact-form .confirm-btn {
    display: flex;
    flex-direction: column-reverse;
    margin-top: 16vw;
  }
}
main #contact .contact-form .confirm-btn a {
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  letter-spacing: 0.1em;
  font-weight: 500;
  position: relative;
  font-family: "Montserrat", sans-serif;
}
@media screen and (min-width: 768px) {
  main #contact .contact-form .confirm-btn a {
    transition: all 0.3s ease;
    font-size: 1.0980966325vw;
    width: 13.5431918009vw;
    height: 3.6603221083vw;
    border-radius: 0.2928257687vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form .confirm-btn a {
    font-size: 15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form .confirm-btn a {
    font-size: 8.4333821376px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form .confirm-btn a {
    width: 185px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form .confirm-btn a {
    width: 104.0117130307px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form .confirm-btn a {
    height: 50px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form .confirm-btn a {
    height: 28.1112737921px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form .confirm-btn a {
    border-radius: 4px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form .confirm-btn a {
    border-radius: 2.2489019034px;
  }
}
@media screen and (max-width: 767px) {
  main #contact .contact-form .confirm-btn a {
    margin-left: auto;
    margin-right: auto;
    font-size: 4vw;
    width: 48vw;
    height: 13.3333333333vw;
    border-radius: 1.0666666667vw;
  }
}
@media screen and (min-width: 768px) {
  main #contact .contact-form .confirm-btn a:hover {
    opacity: 0.7;
  }
}
@media screen and (min-width: 768px) {
  main #contact .contact-form .confirm-btn a:hover:after {
    width: 2.9282576867vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form .confirm-btn a:hover:after {
    width: 40px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form .confirm-btn a:hover:after {
    width: 22.4890190337px;
  }
}
main #contact .contact-form .confirm-btn a:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  background-color: #fff;
  transition: all 0.3s ease;
}
@media screen and (min-width: 768px) {
  main #contact .contact-form .confirm-btn a:after {
    width: 2.196193265vw;
    height: 0.0732064422vw;
    margin-top: -0.0366032211vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form .confirm-btn a:after {
    width: 30px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form .confirm-btn a:after {
    width: 16.8667642753px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form .confirm-btn a:after {
    height: 1px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form .confirm-btn a:after {
    height: 0.5622254758px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form .confirm-btn a:after {
    margin-top: -0.5px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form .confirm-btn a:after {
    margin-top: -0.2811127379px;
  }
}
@media screen and (max-width: 767px) {
  main #contact .contact-form .confirm-btn a:after {
    width: 8vw;
    height: 0.2666666667vw;
    margin-top: -0.1333333333vw;
  }
}
main #contact .contact-form .confirm-btn a.correct {
  background-color: #CECECE;
}
@media screen and (min-width: 768px) {
  main #contact .contact-form .confirm-btn a.correct {
    margin-right: 1.4641288433vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form .confirm-btn a.correct {
    margin-right: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form .confirm-btn a.correct {
    margin-right: 11.2445095168px;
  }
}
@media screen and (max-width: 767px) {
  main #contact .contact-form .confirm-btn a.correct {
    margin-top: 5.3333333333vw;
  }
}
main #contact .contact-form .confirm-btn a.send {
  -webkit-animation: gradientReverse 0.3s ease;
          animation: gradientReverse 0.3s ease;
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both;
  -webkit-animation-iteration-count: 1;
          animation-iteration-count: 1;
}
@media screen and (min-width: 768px) {
  main #contact .contact-form .confirm-btn a.send:hover {
    opacity: 1;
    -webkit-animation: gradient 0.3s ease;
            animation: gradient 0.3s ease;
    -webkit-animation-fill-mode: both;
            animation-fill-mode: both;
    -webkit-animation-iteration-count: 1;
            animation-iteration-count: 1;
  }
}
@media screen and (min-width: 768px) {
  main #contact .contact-form .confirm-btn a.send:hover:after {
    width: 2.9282576867vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-form .confirm-btn a.send:hover:after {
    width: 40px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-form .confirm-btn a.send:hover:after {
    width: 22.4890190337px;
  }
}
main #contact .contact-thanks h3 {
  font-weight: 600;
  text-align: center;
}
@media screen and (min-width: 768px) {
  main #contact .contact-thanks h3 {
    font-size: 1.4641288433vw;
    margin-bottom: 2.5622254758vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-thanks h3 {
    font-size: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-thanks h3 {
    font-size: 11.2445095168px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-thanks h3 {
    margin-bottom: 35px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-thanks h3 {
    margin-bottom: 19.6778916545px;
  }
}
@media screen and (max-width: 767px) {
  main #contact .contact-thanks h3 {
    font-size: 5.3333333333vw;
    margin-bottom: 8vw;
  }
}
main #contact .contact-thanks p {
  text-align: center;
  line-height: 1.8;
}
@media screen and (min-width: 768px) {
  main #contact .contact-thanks p {
    font-size: 1.1713030747vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-thanks p {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-thanks p {
    font-size: 8.9956076135px;
  }
}
@media screen and (max-width: 767px) {
  main #contact .contact-thanks p {
    font-size: 4vw;
  }
}
@media screen and (min-width: 768px) {
  main #contact .contact-thanks .contact-totop {
    margin-top: 5.8565153734vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-thanks .contact-totop {
    margin-top: 80px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-thanks .contact-totop {
    margin-top: 44.9780380673px;
  }
}
@media screen and (max-width: 767px) {
  main #contact .contact-thanks .contact-totop {
    margin-top: 14.6666666667vw;
  }
}
main #contact .contact-thanks .contact-totop a {
  margin: 0 auto;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  -webkit-animation: gradientReverse 0.3s ease;
          animation: gradientReverse 0.3s ease;
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both;
  -webkit-animation-iteration-count: 1;
          animation-iteration-count: 1;
  letter-spacing: 0.1em;
  font-weight: 500;
  position: relative;
  font-family: "Montserrat", sans-serif;
}
@media screen and (min-width: 768px) {
  main #contact .contact-thanks .contact-totop a {
    transition: all 0.3s ease;
    font-size: 1.0980966325vw;
    width: 13.5431918009vw;
    height: 3.6603221083vw;
    border-radius: 0.2928257687vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-thanks .contact-totop a {
    font-size: 15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-thanks .contact-totop a {
    font-size: 8.4333821376px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-thanks .contact-totop a {
    width: 185px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-thanks .contact-totop a {
    width: 104.0117130307px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-thanks .contact-totop a {
    height: 50px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-thanks .contact-totop a {
    height: 28.1112737921px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-thanks .contact-totop a {
    border-radius: 4px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-thanks .contact-totop a {
    border-radius: 2.2489019034px;
  }
}
@media screen and (max-width: 767px) {
  main #contact .contact-thanks .contact-totop a {
    font-size: 4vw;
    width: 48vw;
    height: 13.3333333333vw;
    border-radius: 1.0666666667vw;
  }
}
@media screen and (min-width: 768px) {
  main #contact .contact-thanks .contact-totop a:hover {
    opacity: 1;
    -webkit-animation: gradient 0.3s ease;
            animation: gradient 0.3s ease;
    -webkit-animation-fill-mode: both;
            animation-fill-mode: both;
    -webkit-animation-iteration-count: 1;
            animation-iteration-count: 1;
  }
}
@media screen and (min-width: 768px) {
  main #contact .contact-thanks .contact-totop a:hover:after {
    width: 2.9282576867vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-thanks .contact-totop a:hover:after {
    width: 40px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-thanks .contact-totop a:hover:after {
    width: 22.4890190337px;
  }
}
main #contact .contact-thanks .contact-totop a:after {
  content: "";
  position: absolute;
  width: 30px;
  height: 1px;
  top: 50%;
  right: 0;
  margin-top: -0.5px;
  background-color: #fff;
  transition: all 0.3s ease;
}
@media screen and (min-width: 768px) {
  main #contact .contact-thanks .contact-totop a:after {
    width: 2.196193265vw;
    height: 0.0732064422vw;
    margin-top: -0.0366032211vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-thanks .contact-totop a:after {
    width: 30px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-thanks .contact-totop a:after {
    width: 16.8667642753px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-thanks .contact-totop a:after {
    height: 1px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-thanks .contact-totop a:after {
    height: 0.5622254758px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #contact .contact-thanks .contact-totop a:after {
    margin-top: -0.5px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #contact .contact-thanks .contact-totop a:after {
    margin-top: -0.2811127379px;
  }
}
@media screen and (max-width: 767px) {
  main #contact .contact-thanks .contact-totop a:after {
    width: 8vw;
    height: 0.2666666667vw;
    margin-top: -0.1333333333vw;
  }
}
@media screen and (min-width: 768px) {
  main #kv {
    margin-top: 70px;
    padding-bottom: 50.7320644217vw;
    position: relative;
    max-width: 1366px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #kv {
    padding-bottom: 693px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #kv {
    padding-bottom: 389.6222547584px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1400px) {
  main #kv {
    overflow: hidden;
  }
}
@media screen and (max-width: 767px) {
  main #kv {
    display: flex;
    flex-direction: column-reverse;
    margin-top: 50px;
    overflow: hidden;
    padding-top: 12.5333333333vw;
    padding-left: 5.3333333333vw;
  }
}
@media screen and (min-width: 768px) {
  main #kv .kv-txt {
    position: absolute;
    top: 0;
    left: 0;
    margin-top: 15.3733528551vw;
    margin-left: 6.588579795vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #kv .kv-txt {
    margin-top: 210px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #kv .kv-txt {
    margin-top: 118.0673499268px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #kv .kv-txt {
    margin-left: 90px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #kv .kv-txt {
    margin-left: 50.6002928258px;
  }
}
@media screen and (max-width: 767px) {
  main #kv .kv-txt {
    margin-top: 8vw;
  }
}
@media screen and (min-width: 768px) {
  main #kv .kv-txt img {
    width: 30.3806734993vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #kv .kv-txt img {
    width: 415px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #kv .kv-txt img {
    width: 233.3235724744px;
  }
}
@media screen and (max-width: 767px) {
  main #kv .kv-txt img {
    width: 81.3333333333vw;
  }
}
@media screen and (min-width: 768px) {
  main #kv .kv-logo {
    position: absolute;
    top: 0;
    right: 0;
    margin-right: -2.4890190337vw;
    width: 61.859443631vw;
    height: 50.7320644217vw;
    background-size: 110%;
    background-image: url(/assets/img/mask.jpg);
    -webkit-mask-image: url(/assets/img/kv-logo.png);
            mask-image: url(/assets/img/kv-logo.png);
    -webkit-mask-size: cover;
            mask-size: cover;
    transition-duration: 0.5s;
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #kv .kv-logo {
    margin-right: -34px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #kv .kv-logo {
    margin-right: -19.1156661786px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #kv .kv-logo {
    width: 845px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #kv .kv-logo {
    width: 475.0805270864px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #kv .kv-logo {
    height: 693px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #kv .kv-logo {
    height: 389.6222547584px;
  }
}
@media screen and (max-width: 767px) {
  main #kv .kv-logo {
    text-align: right;
  }
}
@media screen and (max-width: 767px) {
  main #kv .kv-logo img {
    width: 84vw;
    margin-right: -5.3333333333vw;
  }
}
main #data {
  margin-top: 14.6412884334vw;
}
@media screen and (min-width: 1366px) {
  main #data {
    margin-top: 200px;
  }
}
@media screen and (max-width: 768px) {
  main #data {
    margin-top: 112.4450951684px;
  }
}
@media screen and (max-width: 767px) {
  main #data {
    margin-top: 37.3333333333vw;
  }
}
main #data h2 {
  position: relative;
}
@media screen and (min-width: 768px) {
  main #data h2 {
    margin-bottom: 4.2459736457vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #data h2 {
    margin-bottom: 58px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #data h2 {
    margin-bottom: 32.6090775988px;
  }
}
@media screen and (max-width: 767px) {
  main #data h2 {
    margin-bottom: 13.3333333333vw;
  }
}
main #data h2:before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  background-image: url(/assets/img/strip.svg);
}
@media screen and (min-width: 768px) {
  main #data h2:before {
    width: 2.635431918vw;
    height: 1.9033674963vw;
    margin-left: -1.317715959vw;
    margin-top: -3.6603221083vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #data h2:before {
    width: 36px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #data h2:before {
    width: 20.2401171303px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #data h2:before {
    height: 26px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #data h2:before {
    height: 14.6178623719px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #data h2:before {
    margin-left: -18px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #data h2:before {
    margin-left: -10.1200585652px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #data h2:before {
    margin-top: -50px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #data h2:before {
    margin-top: -28.1112737921px;
  }
}
@media screen and (max-width: 767px) {
  main #data h2:before {
    width: 9.6vw;
    height: 6.9333333333vw;
    margin-left: -4.8vw;
    margin-top: -13.3333333333vw;
  }
}
main #data h2 > span {
  display: block;
  text-align: center;
  font-weight: 600;
}
main #data h2 > span.en {
  font-family: "Montserrat", sans-serif;
}
@media screen and (min-width: 768px) {
  main #data h2 > span.en {
    font-size: 3.513909224vw;
    margin-bottom: 0.7320644217vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #data h2 > span.en {
    font-size: 48px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #data h2 > span.en {
    font-size: 26.9868228404px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #data h2 > span.en {
    margin-bottom: 10px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #data h2 > span.en {
    margin-bottom: 5.6222547584px;
  }
}
@media screen and (max-width: 767px) {
  main #data h2 > span.en {
    margin-bottom: 5.3333333333vw;
    font-size: 7.4666666667vw;
  }
}
@media screen and (min-width: 768px) {
  main #data h2 > span.ja {
    font-size: 1.1713030747vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #data h2 > span.ja {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #data h2 > span.ja {
    font-size: 8.9956076135px;
  }
}
@media screen and (max-width: 767px) {
  main #data h2 > span.ja {
    font-size: 4.2666666667vw;
  }
}
@media screen and (min-width: 768px) {
  main #data .data-box {
    width: 81.9912152269vw;
    margin: 0 auto;
    display: flex;
    border: 1px solid #DDDDDD;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #data .data-box {
    width: 1120px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #data .data-box {
    width: 629.6925329429px;
  }
}
@media screen and (min-width: 768px) {
  main #data .data-box .data-box-list {
    width: 33.3333333333%;
    border-right: 1px solid #ddd;
  }
}
@media screen and (min-width: 768px) {
  main #data .data-box .data-box-list:last-child {
    border-right: none;
  }
}
@media screen and (max-width: 767px) {
  main #data .data-box .data-box-list > div {
    border-bottom: 1px solid #ddd;
    padding-top: 8vw;
    padding-bottom: 5.3333333333vw;
  }
}
@media screen and (max-width: 767px) {
  main #data .data-box .data-box-list > div.border-top-sp {
    border-top: 1px solid #ddd;
  }
}
main #data .data-box .data-box-list h3 {
  font-weight: 500;
  line-height: 1.5;
}
@media screen and (min-width: 768px) {
  main #data .data-box .data-box-list h3 {
    font-size: 1.1713030747vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #data .data-box .data-box-list h3 {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #data .data-box .data-box-list h3 {
    font-size: 8.9956076135px;
  }
}
@media screen and (max-width: 767px) {
  main #data .data-box .data-box-list h3 {
    font-size: 4.2666666667vw;
  }
}
main #data .data-box .data-box-list p {
  font-weight: 600;
}
@media screen and (min-width: 768px) {
  main #data .data-box .data-box-list p {
    font-size: 1.1713030747vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #data .data-box .data-box-list p {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #data .data-box .data-box-list p {
    font-size: 8.9956076135px;
  }
}
@media screen and (max-width: 767px) {
  main #data .data-box .data-box-list p {
    font-size: 4.2666666667vw;
    line-height: 1.5;
  }
}
main #data .data-box .data-box-list p .num {
  font-family: "Futura", "Noto Sans JP", "Century Gothic";
  color: #0B8BD5;
  display: inline-block;
}
@media screen and (min-width: 768px) {
  main #data .data-box .data-box-list p .num {
    font-size: 4.39238653vw;
    margin-left: 0.5124450952vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #data .data-box .data-box-list p .num {
    font-size: 60px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #data .data-box .data-box-list p .num {
    font-size: 33.7335285505px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #data .data-box .data-box-list p .num {
    margin-left: 7px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #data .data-box .data-box-list p .num {
    margin-left: 3.9355783309px;
  }
}
@media screen and (max-width: 767px) {
  main #data .data-box .data-box-list p .num {
    font-size: 13.3333333333vw;
    margin-left: 1.8666666667vw;
  }
}
@media screen and (min-width: 768px) {
  main #data .data-box .data-box-list p .num.num-01 {
    min-width: 7.6866764275vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #data .data-box .data-box-list p .num.num-01 {
    min-width: 105px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #data .data-box .data-box-list p .num.num-01 {
    min-width: 59.0336749634px;
  }
}
@media screen and (max-width: 767px) {
  main #data .data-box .data-box-list p .num.num-01 {
    min-width: 24vw;
  }
}
@media screen and (min-width: 768px) {
  main #data .data-box .data-box-list p .num.num-02 {
    min-width: 13.5431918009vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #data .data-box .data-box-list p .num.num-02 {
    min-width: 185px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #data .data-box .data-box-list p .num.num-02 {
    min-width: 104.0117130307px;
  }
}
@media screen and (max-width: 767px) {
  main #data .data-box .data-box-list p .num.num-02 {
    min-width: 42.1333333333vw;
  }
}
@media screen and (min-width: 768px) {
  main #data .data-box .data-box-list p .num.num-03 {
    min-width: 13.5431918009vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #data .data-box .data-box-list p .num.num-03 {
    min-width: 185px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #data .data-box .data-box-list p .num.num-03 {
    min-width: 104.0117130307px;
  }
}
@media screen and (max-width: 767px) {
  main #data .data-box .data-box-list p .num.num-03 {
    min-width: 42.1333333333vw;
  }
}
@media screen and (min-width: 768px) {
  main #data .data-box .data-box-list p .num.num-04 {
    min-width: 6.2225475842vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #data .data-box .data-box-list p .num.num-04 {
    min-width: 85px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #data .data-box .data-box-list p .num.num-04 {
    min-width: 47.7891654466px;
  }
}
@media screen and (max-width: 767px) {
  main #data .data-box .data-box-list p .num.num-04 {
    min-width: 20vw;
  }
}
@media screen and (min-width: 768px) {
  main #data .data-box .data-box-list p .num.num-05 {
    min-width: 13.5431918009vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #data .data-box .data-box-list p .num.num-05 {
    min-width: 185px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #data .data-box .data-box-list p .num.num-05 {
    min-width: 104.0117130307px;
  }
}
@media screen and (max-width: 767px) {
  main #data .data-box .data-box-list p .num.num-05 {
    min-width: 42.1333333333vw;
  }
}
main #data .data-box .data-box-list .top,
main #data .data-box .data-box-list .bottom {
  position: relative;
}
@media screen and (min-width: 768px) {
  main #data .data-box .data-box-list .top,
main #data .data-box .data-box-list .bottom {
    padding-top: 2.0497803807vw;
    padding-left: 1.4641288433vw;
    height: 13.17715959vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #data .data-box .data-box-list .top,
main #data .data-box .data-box-list .bottom {
    padding-top: 28px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #data .data-box .data-box-list .top,
main #data .data-box .data-box-list .bottom {
    padding-top: 15.7423133236px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #data .data-box .data-box-list .top,
main #data .data-box .data-box-list .bottom {
    padding-left: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #data .data-box .data-box-list .top,
main #data .data-box .data-box-list .bottom {
    padding-left: 11.2445095168px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #data .data-box .data-box-list .top,
main #data .data-box .data-box-list .bottom {
    height: 180px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #data .data-box .data-box-list .top,
main #data .data-box .data-box-list .bottom {
    height: 101.2005856515px;
  }
}
@media screen and (min-width: 768px) {
  main #data .data-box .data-box-list .top h3,
main #data .data-box .data-box-list .bottom h3 {
    margin-bottom: 2.0497803807vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #data .data-box .data-box-list .top h3,
main #data .data-box .data-box-list .bottom h3 {
    margin-bottom: 28px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #data .data-box .data-box-list .top h3,
main #data .data-box .data-box-list .bottom h3 {
    margin-bottom: 15.7423133236px;
  }
}
main #data .data-box .data-box-list .icon:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}
main #data .data-box .data-box-list .icon.icon-01:after {
  background-image: url(/assets/img/icon-stamp.svg);
  width: 5.8565153734vw;
  height: 5.5636896047vw;
  margin-top: 3.953147877vw;
  margin-right: 1.6105417277vw;
}
@media screen and (min-width: 1366px) {
  main #data .data-box .data-box-list .icon.icon-01:after {
    width: 80px;
  }
}
@media screen and (max-width: 768px) {
  main #data .data-box .data-box-list .icon.icon-01:after {
    width: 44.9780380673px;
  }
}
@media screen and (min-width: 1366px) {
  main #data .data-box .data-box-list .icon.icon-01:after {
    height: 76px;
  }
}
@media screen and (max-width: 768px) {
  main #data .data-box .data-box-list .icon.icon-01:after {
    height: 42.729136164px;
  }
}
@media screen and (min-width: 1366px) {
  main #data .data-box .data-box-list .icon.icon-01:after {
    margin-top: 54px;
  }
}
@media screen and (max-width: 768px) {
  main #data .data-box .data-box-list .icon.icon-01:after {
    margin-top: 30.3601756955px;
  }
}
@media screen and (min-width: 1366px) {
  main #data .data-box .data-box-list .icon.icon-01:after {
    margin-right: 22px;
  }
}
@media screen and (max-width: 768px) {
  main #data .data-box .data-box-list .icon.icon-01:after {
    margin-right: 12.3689604685px;
  }
}
@media screen and (max-width: 767px) {
  main #data .data-box .data-box-list .icon.icon-01:after {
    top: 50%;
    margin-right: 0;
    width: 21.3333333333vw;
    height: 20.2666666667vw;
    margin-top: -10.1333333333vw;
  }
}
@media screen and (max-width: 767px) {
  main #data .data-box .data-box-list .icon.icon-01 p {
    margin-left: 18.6666666667vw;
  }
}
main #data .data-box .data-box-list .icon.icon-02:after {
  background-image: url(/assets/img/icon-family.svg);
  width: 6.9546120059vw;
  height: 6.149341142vw;
  margin-top: 3.4407027818vw;
  margin-right: 0.5124450952vw;
}
@media screen and (min-width: 1366px) {
  main #data .data-box .data-box-list .icon.icon-02:after {
    width: 95px;
  }
}
@media screen and (max-width: 768px) {
  main #data .data-box .data-box-list .icon.icon-02:after {
    width: 53.411420205px;
  }
}
@media screen and (min-width: 1366px) {
  main #data .data-box .data-box-list .icon.icon-02:after {
    height: 84px;
  }
}
@media screen and (max-width: 768px) {
  main #data .data-box .data-box-list .icon.icon-02:after {
    height: 47.2269399707px;
  }
}
@media screen and (min-width: 1366px) {
  main #data .data-box .data-box-list .icon.icon-02:after {
    margin-top: 47px;
  }
}
@media screen and (max-width: 768px) {
  main #data .data-box .data-box-list .icon.icon-02:after {
    margin-top: 26.4245973646px;
  }
}
@media screen and (min-width: 1366px) {
  main #data .data-box .data-box-list .icon.icon-02:after {
    margin-right: 7px;
  }
}
@media screen and (max-width: 768px) {
  main #data .data-box .data-box-list .icon.icon-02:after {
    margin-right: 3.9355783309px;
  }
}
@media screen and (max-width: 767px) {
  main #data .data-box .data-box-list .icon.icon-02:after {
    top: 50%;
    margin-right: 0;
    width: 25.3333333333vw;
    height: 22.4vw;
    margin-top: -11.2vw;
  }
}
@media screen and (max-width: 767px) {
  main #data .data-box .data-box-list .icon.icon-03 {
    position: relative;
  }
}
@media screen and (max-width: 767px) {
  main #data .data-box .data-box-list .icon.icon-03:after {
    content: "";
    background-image: url(/assets/img/icon-judge.svg);
    top: 50%;
    margin-right: 0;
    width: 23.4666666667vw;
    height: 23.4666666667vw;
    margin-top: -11.7333333333vw;
  }
}
main #data .data-box .data-box-list .icon.icon-04:after {
  background-image: url(/assets/img/icon-building.svg);
  width: 8.345534407vw;
  height: 6.0029282577vw;
  margin-top: 3.6603221083vw;
  margin-right: 1.9033674963vw;
}
@media screen and (min-width: 1366px) {
  main #data .data-box .data-box-list .icon.icon-04:after {
    width: 114px;
  }
}
@media screen and (max-width: 768px) {
  main #data .data-box .data-box-list .icon.icon-04:after {
    width: 64.093704246px;
  }
}
@media screen and (min-width: 1366px) {
  main #data .data-box .data-box-list .icon.icon-04:after {
    height: 82px;
  }
}
@media screen and (max-width: 768px) {
  main #data .data-box .data-box-list .icon.icon-04:after {
    height: 46.102489019px;
  }
}
@media screen and (min-width: 1366px) {
  main #data .data-box .data-box-list .icon.icon-04:after {
    margin-top: 50px;
  }
}
@media screen and (max-width: 768px) {
  main #data .data-box .data-box-list .icon.icon-04:after {
    margin-top: 28.1112737921px;
  }
}
@media screen and (min-width: 1366px) {
  main #data .data-box .data-box-list .icon.icon-04:after {
    margin-right: 26px;
  }
}
@media screen and (max-width: 768px) {
  main #data .data-box .data-box-list .icon.icon-04:after {
    margin-right: 14.6178623719px;
  }
}
@media screen and (max-width: 767px) {
  main #data .data-box .data-box-list .icon.icon-04:after {
    top: 50%;
    margin-right: 0;
    width: 30.4vw;
    height: 21.8666666667vw;
    margin-top: -11.2vw;
  }
}
@media screen and (max-width: 767px) {
  main #data .data-box .data-box-list .icon.icon-04 p {
    margin-left: 22.6666666667vw;
  }
}
main #data .data-box .data-box-list .icon.icon-05:after {
  background-image: url(/assets/img/icon-report.png);
  width: 5.1244509517vw;
  height: 5.6368960469vw;
  margin-top: 3.6603221083vw;
  margin-right: 2.1229868228vw;
}
@media screen and (min-width: 1366px) {
  main #data .data-box .data-box-list .icon.icon-05:after {
    width: 70px;
  }
}
@media screen and (max-width: 768px) {
  main #data .data-box .data-box-list .icon.icon-05:after {
    width: 39.3557833089px;
  }
}
@media screen and (min-width: 1366px) {
  main #data .data-box .data-box-list .icon.icon-05:after {
    height: 77px;
  }
}
@media screen and (max-width: 768px) {
  main #data .data-box .data-box-list .icon.icon-05:after {
    height: 43.2913616398px;
  }
}
@media screen and (min-width: 1366px) {
  main #data .data-box .data-box-list .icon.icon-05:after {
    margin-top: 50px;
  }
}
@media screen and (max-width: 768px) {
  main #data .data-box .data-box-list .icon.icon-05:after {
    margin-top: 28.1112737921px;
  }
}
@media screen and (min-width: 1366px) {
  main #data .data-box .data-box-list .icon.icon-05:after {
    margin-right: 29px;
  }
}
@media screen and (max-width: 768px) {
  main #data .data-box .data-box-list .icon.icon-05:after {
    margin-right: 16.3045387994px;
  }
}
@media screen and (max-width: 767px) {
  main #data .data-box .data-box-list .icon.icon-05:after {
    top: 50%;
    margin-right: 0;
    width: 18.6666666667vw;
    height: 20.5333333333vw;
    margin-top: -10.2666666667vw;
  }
}
@media screen and (min-width: 768px) {
  main #data .data-box .data-box-list .center {
    padding-top: 2.0497803807vw;
    padding-left: 1.4641288433vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #data .data-box .data-box-list .center {
    padding-top: 28px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #data .data-box .data-box-list .center {
    padding-top: 15.7423133236px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #data .data-box .data-box-list .center {
    padding-left: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #data .data-box .data-box-list .center {
    padding-left: 11.2445095168px;
  }
}
@media screen and (min-width: 768px) {
  main #data .data-box .data-box-list .center h3 {
    margin-bottom: 2.196193265vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #data .data-box .data-box-list .center h3 {
    margin-bottom: 30px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #data .data-box .data-box-list .center h3 {
    margin-bottom: 16.8667642753px;
  }
}
@media screen and (min-width: 768px) {
  main #data .data-box .data-box-list .center p {
    text-align: center;
    margin-bottom: 2.4158125915vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #data .data-box .data-box-list .center p {
    margin-bottom: 33px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #data .data-box .data-box-list .center p {
    margin-bottom: 18.5534407028px;
  }
}
main #data .data-box .data-box-list .center p:last-child {
  margin-bottom: 0;
}
@media screen and (min-width: 768px) {
  main #data .data-box .data-box-list .center p img {
    width: 8.1991215227vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #data .data-box .data-box-list .center p img {
    width: 112px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #data .data-box .data-box-list .center p img {
    width: 62.9692532943px;
  }
}
@media screen and (min-width: 768px) {
  main #data .data-box .data-box-list .top {
    border-bottom: 1px solid #ddd;
  }
}
@media screen and (min-width: 768px) {
  main #data .data-note {
    margin-top: 4.39238653vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #data .data-note {
    margin-top: 60px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #data .data-note {
    margin-top: 33.7335285505px;
  }
}
@media screen and (max-width: 767px) {
  main #data .data-note {
    margin-top: 12.2666666667vw;
  }
}
@media screen and (min-width: 768px) {
  main #data .data-note ul {
    display: flex;
    justify-content: center;
  }
}
@media screen and (min-width: 768px) {
  main #data .data-note ul li {
    margin-right: 5.8565153734vw;
    text-align: center;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #data .data-note ul li {
    margin-right: 80px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #data .data-note ul li {
    margin-right: 44.9780380673px;
  }
}
@media screen and (max-width: 767px) {
  main #data .data-note ul li {
    margin-bottom: 10.6666666667vw;
  }
}
@media screen and (min-width: 768px) {
  main #data .data-note ul li:last-child {
    margin-right: 0;
  }
}
@media screen and (max-width: 767px) {
  main #data .data-note ul li:last-child {
    margin-bottom: 0;
  }
}
main #data .data-note ul li p {
  font-weight: 500;
  text-align: center;
  line-height: 1.3;
}
@media screen and (min-width: 768px) {
  main #data .data-note ul li p {
    font-size: 1.4641288433vw;
    margin-bottom: 1.4641288433vw;
    height: 3.8067349927vw;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #data .data-note ul li p {
    font-size: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #data .data-note ul li p {
    font-size: 11.2445095168px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #data .data-note ul li p {
    margin-bottom: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #data .data-note ul li p {
    margin-bottom: 11.2445095168px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #data .data-note ul li p {
    height: 52px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #data .data-note ul li p {
    height: 29.2357247438px;
  }
}
@media screen and (min-width: 768px) {
  main #data .data-note ul li p img {
    width: 12.8843338214vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #data .data-note ul li p img {
    width: 176px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #data .data-note ul li p img {
    width: 98.9516837482px;
  }
}
main #topabout-highlight {
  position: relative;
}
@media screen and (min-width: 768px) {
  main #topabout-highlight {
    z-index: 1;
    overflow: hidden;
    margin-top: 8.78477306vw;
    padding-bottom: 2.9282576867vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topabout-highlight {
    margin-top: 120px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topabout-highlight {
    margin-top: 67.467057101px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topabout-highlight {
    padding-bottom: 40px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topabout-highlight {
    padding-bottom: 22.4890190337px;
  }
}
@media screen and (max-width: 767px) {
  main #topabout-highlight {
    overflow: hidden;
    margin-top: 26.6666666667vw;
    padding-bottom: 16vw;
  }
}
@media screen and (min-width: 768px) {
  main #topabout-highlight:after {
    content: "";
    position: absolute;
    display: block;
    z-index: -2;
    left: 0;
    top: 55px;
    width: 30%;
    height: calc(100% - 55px);
    background-color: #0BC2DD;
  }
}
@media screen and (min-width: 768px) and (max-width: 1366px) {
  main #topabout-highlight:after {
    top: 4.0263543192vw;
    height: calc(100% - 4.0263543192vw);
  }
}
@media screen and (min-width: 768px) {
  main #topabout-highlight:before {
    content: "";
    position: absolute;
    display: block;
    z-index: -1;
    left: 0;
    top: 55px;
    width: 68%;
    height: calc(100% - 55px);
    background-position: center right;
    background-size: auto 100%;
    background-repeat: no-repeat;
    background-image: url(/assets/img/gradation.png);
  }
}
@media screen and (min-width: 768px) and (max-width: 1366px) {
  main #topabout-highlight:before {
    top: 4.0263543192vw;
    height: calc(100% - 4.0263543192vw);
  }
}
@media screen and (max-width: 767px) {
  main #topabout-highlight:before {
    width: 100%;
    background-position: top right;
    background-size: cover;
    background-repeat: no-repeat;
    background-image: url(/assets/img/gradation.sp.png);
    z-index: 1;
    top: 19%;
  }
}
@media screen and (max-width: 374px) {
  main #topabout-highlight:before {
    top: 17%;
  }
}
main #topabout-highlight dl {
  position: relative;
}
@media screen and (min-width: 768px) {
  main #topabout-highlight dl {
    display: flex;
    justify-content: flex-end;
    margin: 0 auto;
    max-width: 100vw;
    height: 39.5314787701vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topabout-highlight dl {
    max-width: 1366px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topabout-highlight dl {
    max-width: 768px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topabout-highlight dl {
    height: 540px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topabout-highlight dl {
    height: 303.6017569546px;
  }
}
@media screen and (max-width: 767px) {
  main #topabout-highlight dl {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    z-index: 1;
  }
}
main #topabout-highlight dl dt {
  color: #fff;
  text-align: center;
}
@media screen and (min-width: 768px) {
  main #topabout-highlight dl dt {
    position: absolute;
    top: 0;
    left: 0;
    margin-top: 14.2020497804vw;
    padding-left: 14.6412884334vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topabout-highlight dl dt {
    margin-top: 194px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topabout-highlight dl dt {
    margin-top: 109.0717423133px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topabout-highlight dl dt {
    padding-left: 200px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topabout-highlight dl dt {
    padding-left: 112.4450951684px;
  }
}
@media screen and (max-width: 767px) {
  main #topabout-highlight dl dt {
    padding-top: 38.6666666667vw;
    padding-bottom: 36.2666666667vw;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    background-image: url(/assets/img/gradation-01.sp.png);
  }
}
main #topabout-highlight dl dt h2 {
  position: relative;
}
@media screen and (min-width: 768px) {
  main #topabout-highlight dl dt h2 {
    margin-bottom: 1.4641288433vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topabout-highlight dl dt h2 {
    margin-bottom: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topabout-highlight dl dt h2 {
    margin-bottom: 11.2445095168px;
  }
}
@media screen and (max-width: 767px) {
  main #topabout-highlight dl dt h2 {
    margin-bottom: 8.5333333333vw;
  }
}
main #topabout-highlight dl dt h2:after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  background-image: url(/assets/img/strip-white.svg);
}
@media screen and (min-width: 768px) {
  main #topabout-highlight dl dt h2:after {
    width: 2.635431918vw;
    height: 1.9033674963vw;
    margin-left: -1.317715959vw;
    margin-top: -3.6603221083vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topabout-highlight dl dt h2:after {
    width: 36px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topabout-highlight dl dt h2:after {
    width: 20.2401171303px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topabout-highlight dl dt h2:after {
    height: 26px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topabout-highlight dl dt h2:after {
    height: 14.6178623719px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topabout-highlight dl dt h2:after {
    margin-left: -18px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topabout-highlight dl dt h2:after {
    margin-left: -10.1200585652px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topabout-highlight dl dt h2:after {
    margin-top: -50px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topabout-highlight dl dt h2:after {
    margin-top: -28.1112737921px;
  }
}
@media screen and (max-width: 767px) {
  main #topabout-highlight dl dt h2:after {
    width: 9.6vw;
    height: 6.9333333333vw;
    margin-left: -4.8vw;
    margin-top: -10.6666666667vw;
  }
}
main #topabout-highlight dl dt h2 > span {
  display: block;
  font-weight: 600;
}
main #topabout-highlight dl dt h2 > span.en {
  font-family: "Montserrat", sans-serif;
}
@media screen and (min-width: 768px) {
  main #topabout-highlight dl dt h2 > span.en {
    font-size: 3.513909224vw;
    margin-bottom: 0.7320644217vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topabout-highlight dl dt h2 > span.en {
    font-size: 48px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topabout-highlight dl dt h2 > span.en {
    font-size: 26.9868228404px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topabout-highlight dl dt h2 > span.en {
    margin-bottom: 10px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topabout-highlight dl dt h2 > span.en {
    margin-bottom: 5.6222547584px;
  }
}
@media screen and (max-width: 767px) {
  main #topabout-highlight dl dt h2 > span.en {
    font-size: 12.8vw;
    margin-bottom: 2.6666666667vw;
  }
}
@media screen and (min-width: 768px) {
  main #topabout-highlight dl dt h2 > span.ja {
    font-size: 1.1713030747vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topabout-highlight dl dt h2 > span.ja {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topabout-highlight dl dt h2 > span.ja {
    font-size: 8.9956076135px;
  }
}
@media screen and (max-width: 767px) {
  main #topabout-highlight dl dt h2 > span.ja {
    font-size: 4.2666666667vw;
  }
}
main #topabout-highlight dl dt p {
  line-height: 1.6875;
  font-weight: 600;
}
@media screen and (min-width: 768px) {
  main #topabout-highlight dl dt p {
    font-size: 1.1713030747vw;
    margin-bottom: 2.9282576867vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topabout-highlight dl dt p {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topabout-highlight dl dt p {
    font-size: 8.9956076135px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topabout-highlight dl dt p {
    margin-bottom: 40px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topabout-highlight dl dt p {
    margin-bottom: 22.4890190337px;
  }
}
@media screen and (max-width: 767px) {
  main #topabout-highlight dl dt p {
    line-height: 1.8;
    font-size: 4.2666666667vw;
    margin-bottom: 10.6666666667vw;
  }
}
main #topabout-highlight dl dt a {
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  -webkit-animation: gradientReverse 0.3s ease;
          animation: gradientReverse 0.3s ease;
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both;
  -webkit-animation-iteration-count: 1;
          animation-iteration-count: 1;
  letter-spacing: 0.1em;
  font-weight: 500;
  position: relative;
  font-family: "Montserrat", sans-serif;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 768px) {
  main #topabout-highlight dl dt a {
    font-size: 1.0980966325vw;
    width: 13.5431918009vw;
    height: 3.6603221083vw;
    border-radius: 0.2928257687vw;
    transition: all 0.3s ease;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topabout-highlight dl dt a {
    font-size: 15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topabout-highlight dl dt a {
    font-size: 8.4333821376px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topabout-highlight dl dt a {
    width: 185px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topabout-highlight dl dt a {
    width: 104.0117130307px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topabout-highlight dl dt a {
    height: 50px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topabout-highlight dl dt a {
    height: 28.1112737921px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topabout-highlight dl dt a {
    border-radius: 4px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topabout-highlight dl dt a {
    border-radius: 2.2489019034px;
  }
}
@media screen and (max-width: 767px) {
  main #topabout-highlight dl dt a {
    font-size: 4vw;
    width: 48vw;
    height: 13.3333333333vw;
    border-radius: 1.0666666667vw;
  }
}
@media screen and (min-width: 768px) {
  main #topabout-highlight dl dt a:hover {
    opacity: 1;
    -webkit-animation: gradient 0.3s ease;
            animation: gradient 0.3s ease;
    -webkit-animation-fill-mode: both;
            animation-fill-mode: both;
    -webkit-animation-iteration-count: 1;
            animation-iteration-count: 1;
  }
}
@media screen and (min-width: 768px) {
  main #topabout-highlight dl dt a:hover:after {
    width: 2.5622254758vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topabout-highlight dl dt a:hover:after {
    width: 35px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topabout-highlight dl dt a:hover:after {
    width: 19.6778916545px;
  }
}
main #topabout-highlight dl dt a:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  background-color: #fff;
  transition: all 0.3s ease;
}
@media screen and (min-width: 768px) {
  main #topabout-highlight dl dt a:after {
    width: 2.196193265vw;
    height: 0.0732064422vw;
    margin-top: -0.0366032211vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topabout-highlight dl dt a:after {
    width: 30px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topabout-highlight dl dt a:after {
    width: 16.8667642753px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topabout-highlight dl dt a:after {
    height: 1px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topabout-highlight dl dt a:after {
    height: 0.5622254758px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topabout-highlight dl dt a:after {
    margin-top: -0.5px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topabout-highlight dl dt a:after {
    margin-top: -0.2811127379px;
  }
}
@media screen and (max-width: 767px) {
  main #topabout-highlight dl dt a:after {
    width: 8vw;
    height: 0.2666666667vw;
    margin-top: -0.1333333333vw;
  }
}
main #topabout-highlight dl dd {
  pointer-events: none;
}
@media screen and (min-width: 768px) {
  main #topabout-highlight dl dd {
    margin-right: -14.6412884334vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topabout-highlight dl dd {
    margin-right: -200px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topabout-highlight dl dd {
    margin-right: -112.4450951684px;
  }
}
@media screen and (max-width: 767px) {
  main #topabout-highlight dl dd {
    margin-left: -44vw;
    margin-top: -20vw;
  }
}
@media screen and (min-width: 768px) {
  main #topabout-highlight dl dd img {
    max-width: 79.0629575403vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topabout-highlight dl dd img {
    max-width: 1080px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topabout-highlight dl dd img {
    max-width: 607.2035139092px;
  }
}
@media screen and (max-width: 767px) {
  main #topabout-highlight dl dd img {
    width: 100%;
  }
}
@media screen and (min-width: 768px) {
  main #topservice {
    margin-top: 11.7130307467vw;
    position: relative;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topservice {
    margin-top: 160px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topservice {
    margin-top: 89.9560761347px;
  }
}
@media screen and (min-width: 768px) {
  main #topservice:after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 30%;
    height: 100%;
    background-color: #0557CE;
  }
}
main #topservice .topservice-wrapper {
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  main #topservice .topservice-wrapper {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    max-width: 1160px;
    margin: 0 auto;
    padding-left: 1.4641288433vw;
    padding-right: 1.4641288433vw;
    height: 38.0673499268vw;
    max-width: 84.9194729136vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topservice .topservice-wrapper {
    padding-left: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topservice .topservice-wrapper {
    padding-left: 11.2445095168px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topservice .topservice-wrapper {
    padding-right: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topservice .topservice-wrapper {
    padding-right: 11.2445095168px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topservice .topservice-wrapper {
    height: 520px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topservice .topservice-wrapper {
    height: 292.3572474378px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topservice .topservice-wrapper {
    max-width: 1160px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topservice .topservice-wrapper {
    max-width: 652.1815519766px;
  }
}
main #topservice .topservice-wrapper .topservice-head {
  background-position: left center;
  background-repeat: no-repeat;
  background-size: cover;
  color: #fff;
}
@media screen and (min-width: 768px) {
  main #topservice .topservice-wrapper .topservice-head {
    background-image: url(/assets/img/gradation-02.png);
    height: 100%;
    display: flex;
    flex-direction: column;
    width: 59.9560761347vw;
    padding-left: 11.3469985359vw;
    padding-top: 14.3484626647vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topservice .topservice-wrapper .topservice-head {
    width: 819px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topservice .topservice-wrapper .topservice-head {
    width: 460.4626647145px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topservice .topservice-wrapper .topservice-head {
    padding-left: 155px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topservice .topservice-wrapper .topservice-head {
    padding-left: 87.1449487555px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topservice .topservice-wrapper .topservice-head {
    padding-top: 196px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topservice .topservice-wrapper .topservice-head {
    padding-top: 110.196193265px;
  }
}
@media screen and (max-width: 767px) {
  main #topservice .topservice-wrapper .topservice-head {
    background-image: url(/assets/img/gradation-01.sp.png);
    padding-top: 37.3333333333vw;
    padding-bottom: 35.7333333333vw;
  }
}
main #topservice .topservice-wrapper .topservice-head h2 {
  position: relative;
  text-align: center;
}
@media screen and (min-width: 768px) {
  main #topservice .topservice-wrapper .topservice-head h2 {
    margin-bottom: 2.9282576867vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topservice .topservice-wrapper .topservice-head h2 {
    margin-bottom: 40px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topservice .topservice-wrapper .topservice-head h2 {
    margin-bottom: 22.4890190337px;
  }
}
@media screen and (max-width: 767px) {
  main #topservice .topservice-wrapper .topservice-head h2 {
    margin-bottom: 10.6666666667vw;
  }
}
main #topservice .topservice-wrapper .topservice-head h2:after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  background-image: url(/assets/img/strip-white.svg);
}
@media screen and (min-width: 768px) {
  main #topservice .topservice-wrapper .topservice-head h2:after {
    width: 2.635431918vw;
    height: 1.9033674963vw;
    margin-left: -1.317715959vw;
    margin-top: -3.6603221083vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topservice .topservice-wrapper .topservice-head h2:after {
    width: 36px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topservice .topservice-wrapper .topservice-head h2:after {
    width: 20.2401171303px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topservice .topservice-wrapper .topservice-head h2:after {
    height: 26px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topservice .topservice-wrapper .topservice-head h2:after {
    height: 14.6178623719px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topservice .topservice-wrapper .topservice-head h2:after {
    margin-left: -18px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topservice .topservice-wrapper .topservice-head h2:after {
    margin-left: -10.1200585652px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topservice .topservice-wrapper .topservice-head h2:after {
    margin-top: -50px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topservice .topservice-wrapper .topservice-head h2:after {
    margin-top: -28.1112737921px;
  }
}
@media screen and (max-width: 767px) {
  main #topservice .topservice-wrapper .topservice-head h2:after {
    width: 9.6vw;
    height: 6.9333333333vw;
    margin-left: -4.8vw;
    margin-top: -13.3333333333vw;
  }
}
main #topservice .topservice-wrapper .topservice-head h2 > span {
  display: block;
  font-weight: 600;
}
main #topservice .topservice-wrapper .topservice-head h2 > span.en {
  font-family: "Montserrat", sans-serif;
}
@media screen and (min-width: 768px) {
  main #topservice .topservice-wrapper .topservice-head h2 > span.en {
    font-size: 3.513909224vw;
    margin-bottom: 1.0980966325vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topservice .topservice-wrapper .topservice-head h2 > span.en {
    font-size: 48px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topservice .topservice-wrapper .topservice-head h2 > span.en {
    font-size: 26.9868228404px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topservice .topservice-wrapper .topservice-head h2 > span.en {
    margin-bottom: 15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topservice .topservice-wrapper .topservice-head h2 > span.en {
    margin-bottom: 8.4333821376px;
  }
}
@media screen and (max-width: 767px) {
  main #topservice .topservice-wrapper .topservice-head h2 > span.en {
    font-size: 12.8vw;
    margin-bottom: 4vw;
  }
}
@media screen and (min-width: 768px) {
  main #topservice .topservice-wrapper .topservice-head h2 > span.ja {
    font-size: 1.1713030747vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topservice .topservice-wrapper .topservice-head h2 > span.ja {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topservice .topservice-wrapper .topservice-head h2 > span.ja {
    font-size: 8.9956076135px;
  }
}
@media screen and (max-width: 767px) {
  main #topservice .topservice-wrapper .topservice-head h2 > span.ja {
    font-size: 3.738317757vw;
  }
}
main #topservice .topservice-wrapper .topservice-head a {
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  -webkit-animation: gradientReverse 0.3s ease;
          animation: gradientReverse 0.3s ease;
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both;
  -webkit-animation-iteration-count: 1;
          animation-iteration-count: 1;
  letter-spacing: 0.1em;
  font-weight: 500;
  position: relative;
  font-family: "Montserrat", sans-serif;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 768px) {
  main #topservice .topservice-wrapper .topservice-head a {
    transition: all 0.3s ease;
    font-size: 1.0980966325vw;
    width: 13.5431918009vw;
    height: 3.6603221083vw;
    border-radius: 0.2928257687vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topservice .topservice-wrapper .topservice-head a {
    font-size: 15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topservice .topservice-wrapper .topservice-head a {
    font-size: 8.4333821376px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topservice .topservice-wrapper .topservice-head a {
    width: 185px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topservice .topservice-wrapper .topservice-head a {
    width: 104.0117130307px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topservice .topservice-wrapper .topservice-head a {
    height: 50px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topservice .topservice-wrapper .topservice-head a {
    height: 28.1112737921px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topservice .topservice-wrapper .topservice-head a {
    border-radius: 4px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topservice .topservice-wrapper .topservice-head a {
    border-radius: 2.2489019034px;
  }
}
@media screen and (max-width: 767px) {
  main #topservice .topservice-wrapper .topservice-head a {
    font-size: 4vw;
    width: 48vw;
    height: 13.3333333333vw;
    border-radius: 1.0666666667vw;
  }
}
@media screen and (min-width: 768px) {
  main #topservice .topservice-wrapper .topservice-head a:hover {
    opacity: 1;
    -webkit-animation: gradient 0.3s ease;
            animation: gradient 0.3s ease;
    -webkit-animation-fill-mode: both;
            animation-fill-mode: both;
    -webkit-animation-iteration-count: 1;
            animation-iteration-count: 1;
  }
}
@media screen and (min-width: 768px) {
  main #topservice .topservice-wrapper .topservice-head a:hover:after {
    width: 2.5622254758vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topservice .topservice-wrapper .topservice-head a:hover:after {
    width: 35px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topservice .topservice-wrapper .topservice-head a:hover:after {
    width: 19.6778916545px;
  }
}
main #topservice .topservice-wrapper .topservice-head a:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  background-color: #fff;
  transition: all 0.3s ease;
}
@media screen and (min-width: 768px) {
  main #topservice .topservice-wrapper .topservice-head a:after {
    width: 2.196193265vw;
    height: 0.0732064422vw;
    margin-top: -0.0366032211vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topservice .topservice-wrapper .topservice-head a:after {
    width: 30px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topservice .topservice-wrapper .topservice-head a:after {
    width: 16.8667642753px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topservice .topservice-wrapper .topservice-head a:after {
    height: 1px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topservice .topservice-wrapper .topservice-head a:after {
    height: 0.5622254758px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topservice .topservice-wrapper .topservice-head a:after {
    margin-top: -0.5px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topservice .topservice-wrapper .topservice-head a:after {
    margin-top: -0.2811127379px;
  }
}
@media screen and (max-width: 767px) {
  main #topservice .topservice-wrapper .topservice-head a:after {
    width: 8vw;
    height: 0.2666666667vw;
    margin-top: -0.1333333333vw;
  }
}
@media screen and (min-width: 768px) {
  main #topservice .topservice-wrapper .topservice-menu {
    position: absolute;
    top: 0;
    left: 0;
  }
}
@media screen and (max-width: 767px) {
  main #topservice .topservice-wrapper .topservice-menu {
    padding-left: 5.3333333333vw;
    padding-right: 5.3333333333vw;
    margin-top: -20vw;
  }
}
main #topservice .topservice-wrapper .topservice-menu ul li {
  pointer-events: none;
}
@media screen and (min-width: 768px) {
  main #topservice .topservice-wrapper .topservice-menu ul li {
    position: absolute;
    top: 0;
    left: 0;
  }
}
@media screen and (max-width: 767px) {
  main #topservice .topservice-wrapper .topservice-menu ul li {
    margin-bottom: 5.3333333333vw;
  }
}
@media screen and (max-width: 767px) {
  main #topservice .topservice-wrapper .topservice-menu ul li:last-child {
    margin-bottom: 0;
  }
}
@media screen and (min-width: 768px) {
  main #topservice .topservice-wrapper .topservice-menu ul li:nth-of-type(1) {
    margin-top: 2.9282576867vw;
    margin-left: 4.39238653vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topservice .topservice-wrapper .topservice-menu ul li:nth-of-type(1) {
    margin-top: 40px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topservice .topservice-wrapper .topservice-menu ul li:nth-of-type(1) {
    margin-top: 22.4890190337px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topservice .topservice-wrapper .topservice-menu ul li:nth-of-type(1) {
    margin-left: 60px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topservice .topservice-wrapper .topservice-menu ul li:nth-of-type(1) {
    margin-left: 33.7335285505px;
  }
}
main #topservice .topservice-wrapper .topservice-menu ul li:nth-of-type(1) a:after {
  background-image: url(/assets/img/panel-01.png);
}
@media screen and (min-width: 768px) {
  main #topservice .topservice-wrapper .topservice-menu ul li:nth-of-type(2) a {
    margin-top: 2.9282576867vw;
    margin-left: 27.8184480234vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topservice .topservice-wrapper .topservice-menu ul li:nth-of-type(2) a {
    margin-top: 40px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topservice .topservice-wrapper .topservice-menu ul li:nth-of-type(2) a {
    margin-top: 22.4890190337px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topservice .topservice-wrapper .topservice-menu ul li:nth-of-type(2) a {
    margin-left: 380px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topservice .topservice-wrapper .topservice-menu ul li:nth-of-type(2) a {
    margin-left: 213.6456808199px;
  }
}
main #topservice .topservice-wrapper .topservice-menu ul li:nth-of-type(2) a:after {
  background-image: url(/assets/img/panel-02.png);
}
@media screen and (min-width: 768px) {
  main #topservice .topservice-wrapper .topservice-menu ul li:nth-of-type(3) {
    margin-top: 14.3484626647vw;
    margin-left: 16.1054172767vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topservice .topservice-wrapper .topservice-menu ul li:nth-of-type(3) {
    margin-top: 196px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topservice .topservice-wrapper .topservice-menu ul li:nth-of-type(3) {
    margin-top: 110.196193265px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topservice .topservice-wrapper .topservice-menu ul li:nth-of-type(3) {
    margin-left: 220px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topservice .topservice-wrapper .topservice-menu ul li:nth-of-type(3) {
    margin-left: 123.6896046852px;
  }
}
main #topservice .topservice-wrapper .topservice-menu ul li:nth-of-type(3) a:after {
  background-image: url(/assets/img/panel-03.png);
}
@media screen and (min-width: 768px) {
  main #topservice .topservice-wrapper .topservice-menu ul li:nth-of-type(4) {
    margin-top: 25.6222547584vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topservice .topservice-wrapper .topservice-menu ul li:nth-of-type(4) {
    margin-top: 350px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topservice .topservice-wrapper .topservice-menu ul li:nth-of-type(4) {
    margin-top: 196.7789165447px;
  }
}
main #topservice .topservice-wrapper .topservice-menu ul li:nth-of-type(4) a:after {
  background-image: url(/assets/img/panel-04.png);
}
@media screen and (min-width: 768px) {
  main #topservice .topservice-wrapper .topservice-menu ul li:nth-of-type(5) {
    margin-top: 25.6222547584vw;
    margin-left: 23.4260614934vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topservice .topservice-wrapper .topservice-menu ul li:nth-of-type(5) {
    margin-top: 350px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topservice .topservice-wrapper .topservice-menu ul li:nth-of-type(5) {
    margin-top: 196.7789165447px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topservice .topservice-wrapper .topservice-menu ul li:nth-of-type(5) {
    margin-left: 320px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topservice .topservice-wrapper .topservice-menu ul li:nth-of-type(5) {
    margin-left: 179.9121522694px;
  }
}
main #topservice .topservice-wrapper .topservice-menu ul li:nth-of-type(5) a:after {
  background-image: url(/assets/img/panel-05.png);
}
@media screen and (max-width: 767px) {
  main #topservice .topservice-wrapper .topservice-menu ul li:nth-of-type(2n) a {
    margin-left: auto;
  }
}
main #topservice .topservice-wrapper .topservice-menu ul li a {
  letter-spacing: 0.1em;
  display: flex;
  align-items: center;
  font-weight: 600;
  position: relative;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
  background-color: #fff;
  pointer-events: visible;
  line-height: 1.5;
}
@media screen and (min-width: 768px) {
  main #topservice .topservice-wrapper .topservice-menu ul li a {
    transition: all 0.3s ease;
    width: 21.9619326501vw;
    height: 8.4187408492vw;
    padding-left: 2.196193265vw;
    font-size: 1.1713030747vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topservice .topservice-wrapper .topservice-menu ul li a {
    width: 300px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topservice .topservice-wrapper .topservice-menu ul li a {
    width: 168.6676427526px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topservice .topservice-wrapper .topservice-menu ul li a {
    height: 115px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topservice .topservice-wrapper .topservice-menu ul li a {
    height: 64.6559297218px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topservice .topservice-wrapper .topservice-menu ul li a {
    padding-left: 30px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topservice .topservice-wrapper .topservice-menu ul li a {
    padding-left: 16.8667642753px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topservice .topservice-wrapper .topservice-menu ul li a {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topservice .topservice-wrapper .topservice-menu ul li a {
    font-size: 8.9956076135px;
  }
}
@media screen and (max-width: 767px) {
  main #topservice .topservice-wrapper .topservice-menu ul li a {
    width: 80vw;
    height: 30.6666666667vw;
    padding-left: 8vw;
    font-size: 4.2666666667vw;
  }
}
@media screen and (min-width: 768px) {
  main #topservice .topservice-wrapper .topservice-menu ul li a:hover {
    opacity: 1;
    transform: translateY(-5px);
  }
}
main #topservice .topservice-wrapper .topservice-menu ul li a:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
@media screen and (min-width: 768px) {
  main #topservice .topservice-wrapper .topservice-menu ul li a:after {
    width: 9.663250366vw;
    height: 8.4187408492vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topservice .topservice-wrapper .topservice-menu ul li a:after {
    width: 132px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topservice .topservice-wrapper .topservice-menu ul li a:after {
    width: 74.2137628111px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topservice .topservice-wrapper .topservice-menu ul li a:after {
    height: 115px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topservice .topservice-wrapper .topservice-menu ul li a:after {
    height: 64.6559297218px;
  }
}
@media screen and (max-width: 767px) {
  main #topservice .topservice-wrapper .topservice-menu ul li a:after {
    width: 35.2vw;
    height: 30.6666666667vw;
  }
}
@media screen and (min-width: 768px) {
  main #topmessage {
    margin-top: 15.3733528551vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topmessage {
    margin-top: 210px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topmessage {
    margin-top: 118.0673499268px;
  }
}
@media screen and (max-width: 767px) {
  main #topmessage {
    margin-top: 40vw;
  }
}
@media screen and (max-width: 767px) {
  main #topmessage .topmessage-wrapper {
    margin-bottom: 26.6666666667vw;
  }
}
main #topmessage .topmessage-wrapper h2 {
  position: relative;
  text-align: center;
}
@media screen and (min-width: 768px) {
  main #topmessage .topmessage-wrapper h2 {
    margin-bottom: 2.9282576867vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topmessage .topmessage-wrapper h2 {
    margin-bottom: 40px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topmessage .topmessage-wrapper h2 {
    margin-bottom: 22.4890190337px;
  }
}
@media screen and (max-width: 767px) {
  main #topmessage .topmessage-wrapper h2 {
    margin-bottom: 10.6666666667vw;
  }
}
main #topmessage .topmessage-wrapper h2:after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  background-image: url(/assets/img/strip.svg);
}
@media screen and (min-width: 768px) {
  main #topmessage .topmessage-wrapper h2:after {
    width: 2.635431918vw;
    height: 1.9033674963vw;
    margin-left: -1.317715959vw;
    margin-top: -3.6603221083vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topmessage .topmessage-wrapper h2:after {
    width: 36px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topmessage .topmessage-wrapper h2:after {
    width: 20.2401171303px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topmessage .topmessage-wrapper h2:after {
    height: 26px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topmessage .topmessage-wrapper h2:after {
    height: 14.6178623719px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topmessage .topmessage-wrapper h2:after {
    margin-left: -18px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topmessage .topmessage-wrapper h2:after {
    margin-left: -10.1200585652px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topmessage .topmessage-wrapper h2:after {
    margin-top: -50px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topmessage .topmessage-wrapper h2:after {
    margin-top: -28.1112737921px;
  }
}
@media screen and (max-width: 767px) {
  main #topmessage .topmessage-wrapper h2:after {
    width: 9.6vw;
    height: 6.9333333333vw;
    margin-left: -4.8vw;
    margin-top: -13.3333333333vw;
  }
}
main #topmessage .topmessage-wrapper h2 > span {
  display: block;
  font-weight: 600;
}
main #topmessage .topmessage-wrapper h2 > span.en {
  font-family: "Montserrat", sans-serif;
}
@media screen and (min-width: 768px) {
  main #topmessage .topmessage-wrapper h2 > span.en {
    font-size: 3.513909224vw;
    margin-bottom: 1.0980966325vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topmessage .topmessage-wrapper h2 > span.en {
    font-size: 48px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topmessage .topmessage-wrapper h2 > span.en {
    font-size: 26.9868228404px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topmessage .topmessage-wrapper h2 > span.en {
    margin-bottom: 15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topmessage .topmessage-wrapper h2 > span.en {
    margin-bottom: 8.4333821376px;
  }
}
@media screen and (max-width: 767px) {
  main #topmessage .topmessage-wrapper h2 > span.en {
    font-size: 7.4666666667vw;
    margin-bottom: 4vw;
  }
}
@media screen and (min-width: 768px) {
  main #topmessage .topmessage-wrapper h2 > span.ja {
    font-size: 1.1713030747vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topmessage .topmessage-wrapper h2 > span.ja {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topmessage .topmessage-wrapper h2 > span.ja {
    font-size: 8.9956076135px;
  }
}
@media screen and (max-width: 767px) {
  main #topmessage .topmessage-wrapper h2 > span.ja {
    font-size: 4.2666666667vw;
  }
}
@media screen and (max-width: 767px) {
  main #topmessage .topmessage-wrapper .topmessage-content {
    padding-left: 5.3333333333vw;
    padding-right: 5.3333333333vw;
  }
}
main #topmessage .topmessage-wrapper .topmessage-content p {
  font-size: 16px;
  line-height: 1.8;
}
@media screen and (min-width: 768px) {
  main #topmessage .topmessage-wrapper .topmessage-content p {
    margin-left: auto;
    margin-right: auto;
    font-size: 1.1713030747vw;
    margin-bottom: 4.39238653vw;
    max-width: 55.6368960469vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topmessage .topmessage-wrapper .topmessage-content p {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topmessage .topmessage-wrapper .topmessage-content p {
    font-size: 8.9956076135px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topmessage .topmessage-wrapper .topmessage-content p {
    margin-bottom: 60px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topmessage .topmessage-wrapper .topmessage-content p {
    margin-bottom: 33.7335285505px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topmessage .topmessage-wrapper .topmessage-content p {
    max-width: 760px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topmessage .topmessage-wrapper .topmessage-content p {
    max-width: 427.2913616398px;
  }
}
@media screen and (max-width: 767px) {
  main #topmessage .topmessage-wrapper .topmessage-content p {
    font-size: 4.2666666667vw;
    margin-bottom: 16vw;
  }
}
@media screen and (min-width: 768px) {
  main #topmessage .topmessage-wrapper .topmessage-photo dl {
    margin-left: auto;
    margin-right: auto;
    display: flex;
    justify-content: flex-end;
    margin-bottom: 4.39238653vw;
    max-width: 55.6368960469vw;
    font-size: 1.1713030747vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topmessage .topmessage-wrapper .topmessage-photo dl {
    margin-bottom: 60px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topmessage .topmessage-wrapper .topmessage-photo dl {
    margin-bottom: 33.7335285505px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topmessage .topmessage-wrapper .topmessage-photo dl {
    max-width: 760px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topmessage .topmessage-wrapper .topmessage-photo dl {
    max-width: 427.2913616398px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topmessage .topmessage-wrapper .topmessage-photo dl {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topmessage .topmessage-wrapper .topmessage-photo dl {
    font-size: 8.9956076135px;
  }
}
@media screen and (max-width: 767px) {
  main #topmessage .topmessage-wrapper .topmessage-photo dl {
    margin-bottom: 10.6666666667vw;
  }
}
main #topmessage .topmessage-wrapper .topmessage-photo dl:last-child {
  margin-bottom: 0;
}
@media screen and (min-width: 768px) {
  main #topmessage .topmessage-wrapper .topmessage-photo dl:last-child dt {
    margin-right: -8.6383601757vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topmessage .topmessage-wrapper .topmessage-photo dl:last-child dt {
    margin-right: -118px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topmessage .topmessage-wrapper .topmessage-photo dl:last-child dt {
    margin-right: -66.3426061493px;
  }
}
@media screen and (max-width: 767px) {
  main #topmessage .topmessage-wrapper .topmessage-photo dl:last-child dd {
    padding-left: 14.9333333333vw;
  }
}
@media screen and (min-width: 768px) {
  main #topmessage .topmessage-wrapper .topmessage-photo dl:last-child dd img {
    width: 25.6222547584vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topmessage .topmessage-wrapper .topmessage-photo dl:last-child dd img {
    width: 350px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topmessage .topmessage-wrapper .topmessage-photo dl:last-child dd img {
    width: 196.7789165447px;
  }
}
@media screen and (min-width: 768px) {
  main #topmessage .topmessage-wrapper .topmessage-photo dl:first-child {
    padding-right: 2.4890190337vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topmessage .topmessage-wrapper .topmessage-photo dl:first-child {
    padding-right: 34px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topmessage .topmessage-wrapper .topmessage-photo dl:first-child {
    padding-right: 19.1156661786px;
  }
}
@media screen and (min-width: 768px) {
  main #topmessage .topmessage-wrapper .topmessage-photo dl:first-child dt {
    margin-right: -11.7130307467vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topmessage .topmessage-wrapper .topmessage-photo dl:first-child dt {
    margin-right: -160px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topmessage .topmessage-wrapper .topmessage-photo dl:first-child dt {
    margin-right: -89.9560761347px;
  }
}
@media screen and (min-width: 768px) {
  main #topmessage .topmessage-wrapper .topmessage-photo dl:first-child dd img {
    width: 29.5754026354vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topmessage .topmessage-wrapper .topmessage-photo dl:first-child dd img {
    width: 404px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topmessage .topmessage-wrapper .topmessage-photo dl:first-child dd img {
    width: 227.1390922401px;
  }
}
@media screen and (max-width: 767px) {
  main #topmessage .topmessage-wrapper .topmessage-photo dl dt {
    overflow: hidden;
    padding-left: 5.3333333333vw;
  }
}
@media screen and (min-width: 768px) {
  main #topmessage .topmessage-wrapper .topmessage-photo dl dt img {
    width: 43.4846266471vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topmessage .topmessage-wrapper .topmessage-photo dl dt img {
    width: 594px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topmessage .topmessage-wrapper .topmessage-photo dl dt img {
    width: 333.9619326501px;
  }
}
@media screen and (max-width: 767px) {
  main #topmessage .topmessage-wrapper .topmessage-photo dl dt img {
    width: 112vw;
    margin-right: -17.3333333333vw;
  }
}
@media screen and (max-width: 767px) {
  main #topmessage .topmessage-wrapper .topmessage-photo dl dd {
    padding-left: 5.3333333333vw;
    padding-right: 5.3333333333vw;
    margin-top: -13.3333333333vw;
  }
}
@media screen and (max-width: 374px) {
  main #topmessage .topmessage-wrapper .topmessage-photo dl dd img {
    max-width: 100%;
  }
}
@media screen and (min-width: 768px) {
  main #topcompany {
    margin-top: 10.2489019034vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topcompany {
    margin-top: 140px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topcompany {
    margin-top: 78.7115666179px;
  }
}
@media screen and (max-width: 767px) {
  main #topcompany {
    margin-bottom: -24.2666666667vw;
  }
}
@media screen and (min-width: 768px) {
  main #topcompany .topcompany-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100vw;
    margin: 0 auto;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topcompany .topcompany-wrapper {
    width: 1366px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topcompany .topcompany-wrapper {
    width: 768px;
  }
}
main #topcompany .topcompany-wrapper > div {
  position: relative;
  text-align: center;
}
@media screen and (min-width: 768px) {
  main #topcompany .topcompany-wrapper > div:first-child {
    margin-right: -21.2298682284vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topcompany .topcompany-wrapper > div:first-child {
    margin-right: -290px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topcompany .topcompany-wrapper > div:first-child {
    margin-right: -163.0453879941px;
  }
}
@media screen and (max-width: 767px) {
  main #topcompany .topcompany-wrapper > div:first-child {
    margin-bottom: -0.2666666667vw;
  }
}
@media screen and (min-width: 768px) {
  main #topcompany .topcompany-wrapper > div img {
    width: 71.2298682284vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topcompany .topcompany-wrapper > div img {
    width: 973px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topcompany .topcompany-wrapper > div img {
    width: 547.0453879941px;
  }
}
@media screen and (max-width: 767px) {
  main #topcompany .topcompany-wrapper > div img {
    width: 100%;
  }
}
main #topcompany .topcompany-wrapper > div .topcompany-head {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}
@media screen and (min-width: 768px) {
  main #topcompany .topcompany-wrapper > div .topcompany-head h2 {
    margin-bottom: 1.8301610542vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topcompany .topcompany-wrapper > div .topcompany-head h2 {
    margin-bottom: 25px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topcompany .topcompany-wrapper > div .topcompany-head h2 {
    margin-bottom: 14.055636896px;
  }
}
@media screen and (max-width: 767px) {
  main #topcompany .topcompany-wrapper > div .topcompany-head h2 {
    margin-bottom: 6.6666666667vw;
  }
}
main #topcompany .topcompany-wrapper > div .topcompany-head h2 > span {
  display: block;
  font-weight: 600;
}
main #topcompany .topcompany-wrapper > div .topcompany-head h2 > span.en {
  font-family: "Montserrat", sans-serif;
}
@media screen and (min-width: 768px) {
  main #topcompany .topcompany-wrapper > div .topcompany-head h2 > span.en {
    margin-bottom: 1.0980966325vw;
    font-size: 3.074670571vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topcompany .topcompany-wrapper > div .topcompany-head h2 > span.en {
    margin-bottom: 15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topcompany .topcompany-wrapper > div .topcompany-head h2 > span.en {
    margin-bottom: 8.4333821376px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topcompany .topcompany-wrapper > div .topcompany-head h2 > span.en {
    font-size: 42px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topcompany .topcompany-wrapper > div .topcompany-head h2 > span.en {
    font-size: 23.6134699854px;
  }
}
@media screen and (max-width: 767px) {
  main #topcompany .topcompany-wrapper > div .topcompany-head h2 > span.en {
    margin-bottom: 3.2vw;
    font-size: 11.2vw;
  }
}
main #topcompany .topcompany-wrapper > div .topcompany-head h2 > span.en.white {
  color: #fff;
}
@media screen and (min-width: 768px) {
  main #topcompany .topcompany-wrapper > div .topcompany-head h2 > span.ja {
    font-size: 1.0980966325vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topcompany .topcompany-wrapper > div .topcompany-head h2 > span.ja {
    font-size: 15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topcompany .topcompany-wrapper > div .topcompany-head h2 > span.ja {
    font-size: 8.4333821376px;
  }
}
@media screen and (max-width: 767px) {
  main #topcompany .topcompany-wrapper > div .topcompany-head h2 > span.ja {
    font-size: 4vw;
  }
}
main #topcompany .topcompany-wrapper > div .topcompany-head h2 > span.ja.white {
  color: #fff;
}
main #topcompany .topcompany-wrapper > div .topcompany-head a {
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  -webkit-animation: gradientReverse 0.3s ease;
          animation: gradientReverse 0.3s ease;
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both;
  -webkit-animation-iteration-count: 1;
          animation-iteration-count: 1;
  letter-spacing: 0.1em;
  font-weight: 500;
  position: relative;
  font-family: "Montserrat", sans-serif;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 768px) {
  main #topcompany .topcompany-wrapper > div .topcompany-head a {
    transition: all 0.3s ease;
    font-size: 1.0980966325vw;
    width: 13.5431918009vw;
    height: 3.6603221083vw;
    border-radius: 0.2928257687vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topcompany .topcompany-wrapper > div .topcompany-head a {
    font-size: 15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topcompany .topcompany-wrapper > div .topcompany-head a {
    font-size: 8.4333821376px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topcompany .topcompany-wrapper > div .topcompany-head a {
    width: 185px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topcompany .topcompany-wrapper > div .topcompany-head a {
    width: 104.0117130307px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topcompany .topcompany-wrapper > div .topcompany-head a {
    height: 50px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topcompany .topcompany-wrapper > div .topcompany-head a {
    height: 28.1112737921px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topcompany .topcompany-wrapper > div .topcompany-head a {
    border-radius: 4px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topcompany .topcompany-wrapper > div .topcompany-head a {
    border-radius: 2.2489019034px;
  }
}
@media screen and (max-width: 767px) {
  main #topcompany .topcompany-wrapper > div .topcompany-head a {
    font-size: 4vw;
    width: 48vw;
    height: 13.3333333333vw;
    border-radius: 1.0666666667vw;
  }
}
@media screen and (min-width: 768px) {
  main #topcompany .topcompany-wrapper > div .topcompany-head a:hover {
    opacity: 1;
    -webkit-animation: gradient 0.3s ease;
            animation: gradient 0.3s ease;
    -webkit-animation-fill-mode: both;
            animation-fill-mode: both;
    -webkit-animation-iteration-count: 1;
            animation-iteration-count: 1;
  }
}
@media screen and (min-width: 768px) {
  main #topcompany .topcompany-wrapper > div .topcompany-head a:hover:after {
    width: 2.5622254758vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topcompany .topcompany-wrapper > div .topcompany-head a:hover:after {
    width: 35px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topcompany .topcompany-wrapper > div .topcompany-head a:hover:after {
    width: 19.6778916545px;
  }
}
main #topcompany .topcompany-wrapper > div .topcompany-head a:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  background-color: #fff;
  transition: all 0.3s ease;
}
@media screen and (min-width: 768px) {
  main #topcompany .topcompany-wrapper > div .topcompany-head a:after {
    width: 2.196193265vw;
    height: 0.0732064422vw;
    margin-top: -0.0366032211vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topcompany .topcompany-wrapper > div .topcompany-head a:after {
    width: 30px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topcompany .topcompany-wrapper > div .topcompany-head a:after {
    width: 16.8667642753px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topcompany .topcompany-wrapper > div .topcompany-head a:after {
    height: 1px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topcompany .topcompany-wrapper > div .topcompany-head a:after {
    height: 0.5622254758px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topcompany .topcompany-wrapper > div .topcompany-head a:after {
    margin-top: -0.5px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topcompany .topcompany-wrapper > div .topcompany-head a:after {
    margin-top: -0.2811127379px;
  }
}
@media screen and (max-width: 767px) {
  main #topcompany .topcompany-wrapper > div .topcompany-head a:after {
    width: 8vw;
    height: 0.2666666667vw;
    margin-top: -0.1333333333vw;
  }
}
main #topadvantage {
  position: relative;
}
@media screen and (min-width: 768px) {
  main #topadvantage {
    z-index: 1;
    overflow: hidden;
    margin-top: 8.78477306vw;
    padding-bottom: 2.9282576867vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topadvantage {
    margin-top: 120px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topadvantage {
    margin-top: 67.467057101px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topadvantage {
    padding-bottom: 40px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topadvantage {
    padding-bottom: 22.4890190337px;
  }
}
@media screen and (max-width: 767px) {
  main #topadvantage {
    overflow: hidden;
    margin-top: 26.6666666667vw;
    padding-bottom: 16vw;
  }
}
@media screen and (min-width: 768px) {
  main #topadvantage:after {
    content: "";
    position: absolute;
    display: block;
    z-index: -2;
    left: 0;
    top: 55px;
    width: 30%;
    height: calc(100% - 55px);
    background-color: #0BC2DD;
  }
}
@media screen and (min-width: 768px) and (max-width: 1366px) {
  main #topadvantage:after {
    top: 4.0263543192vw;
    height: calc(100% - 4.0263543192vw);
  }
}
@media screen and (min-width: 768px) {
  main #topadvantage:before {
    content: "";
    position: absolute;
    display: block;
    z-index: -1;
    left: 0;
    top: 55px;
    width: 68%;
    height: calc(100% - 55px);
    background-position: center right;
    background-size: auto 100%;
    background-repeat: no-repeat;
    background-image: url(/assets/img/gradation.png);
  }
}
@media screen and (min-width: 768px) and (max-width: 1366px) {
  main #topadvantage:before {
    top: 4.0263543192vw;
    height: calc(100% - 4.0263543192vw);
  }
}
@media screen and (max-width: 767px) {
  main #topadvantage:before {
    width: 100%;
    background-position: top right;
    background-size: cover;
    background-repeat: no-repeat;
    background-image: url(/assets/img/gradation.sp.png);
    z-index: 1;
    top: 19%;
  }
}
@media screen and (max-width: 374px) {
  main #topadvantage:before {
    top: 17%;
  }
}
main #topadvantage dl {
  position: relative;
}
@media screen and (min-width: 768px) {
  main #topadvantage dl {
    display: flex;
    justify-content: flex-end;
    margin: 0 auto;
    max-width: 100vw;
    height: 39.5314787701vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topadvantage dl {
    max-width: 1366px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topadvantage dl {
    max-width: 768px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topadvantage dl {
    height: 540px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topadvantage dl {
    height: 303.6017569546px;
  }
}
@media screen and (max-width: 767px) {
  main #topadvantage dl {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    z-index: 1;
  }
}
main #topadvantage dl dt {
  color: #fff;
  text-align: center;
}
@media screen and (min-width: 768px) {
  main #topadvantage dl dt {
    position: absolute;
    top: 0;
    left: 0;
    margin-top: 14.2020497804vw;
    padding-left: 14.6412884334vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topadvantage dl dt {
    margin-top: 194px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topadvantage dl dt {
    margin-top: 109.0717423133px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topadvantage dl dt {
    padding-left: 200px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topadvantage dl dt {
    padding-left: 112.4450951684px;
  }
}
@media screen and (max-width: 767px) {
  main #topadvantage dl dt {
    padding-top: 38.6666666667vw;
    padding-bottom: 36.2666666667vw;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    background-image: url(/assets/img/gradation-01.sp.png);
  }
}
main #topadvantage dl dt h2 {
  position: relative;
}
@media screen and (min-width: 768px) {
  main #topadvantage dl dt h2 {
    margin-bottom: 1.4641288433vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topadvantage dl dt h2 {
    margin-bottom: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topadvantage dl dt h2 {
    margin-bottom: 11.2445095168px;
  }
}
@media screen and (max-width: 767px) {
  main #topadvantage dl dt h2 {
    margin-bottom: 8.5333333333vw;
  }
}
main #topadvantage dl dt h2:after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  background-image: url(/assets/img/strip-white.svg);
}
@media screen and (min-width: 768px) {
  main #topadvantage dl dt h2:after {
    width: 2.635431918vw;
    height: 1.9033674963vw;
    margin-left: -1.317715959vw;
    margin-top: -3.6603221083vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topadvantage dl dt h2:after {
    width: 36px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topadvantage dl dt h2:after {
    width: 20.2401171303px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topadvantage dl dt h2:after {
    height: 26px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topadvantage dl dt h2:after {
    height: 14.6178623719px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topadvantage dl dt h2:after {
    margin-left: -18px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topadvantage dl dt h2:after {
    margin-left: -10.1200585652px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topadvantage dl dt h2:after {
    margin-top: -50px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topadvantage dl dt h2:after {
    margin-top: -28.1112737921px;
  }
}
@media screen and (max-width: 767px) {
  main #topadvantage dl dt h2:after {
    width: 9.6vw;
    height: 6.9333333333vw;
    margin-left: -4.8vw;
    margin-top: -10.6666666667vw;
  }
}
main #topadvantage dl dt h2 > span {
  display: block;
  font-weight: 600;
}
main #topadvantage dl dt h2 > span.en {
  font-family: "Montserrat", sans-serif;
}
@media screen and (min-width: 768px) {
  main #topadvantage dl dt h2 > span.en {
    font-size: 3.513909224vw;
    margin-bottom: 0.7320644217vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topadvantage dl dt h2 > span.en {
    font-size: 48px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topadvantage dl dt h2 > span.en {
    font-size: 26.9868228404px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topadvantage dl dt h2 > span.en {
    margin-bottom: 10px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topadvantage dl dt h2 > span.en {
    margin-bottom: 5.6222547584px;
  }
}
@media screen and (max-width: 767px) {
  main #topadvantage dl dt h2 > span.en {
    font-size: 12.8vw;
    margin-bottom: 2.6666666667vw;
  }
}
@media screen and (min-width: 768px) {
  main #topadvantage dl dt h2 > span.ja {
    font-size: 1.1713030747vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topadvantage dl dt h2 > span.ja {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topadvantage dl dt h2 > span.ja {
    font-size: 8.9956076135px;
  }
}
@media screen and (max-width: 767px) {
  main #topadvantage dl dt h2 > span.ja {
    font-size: 4.2666666667vw;
  }
}
main #topadvantage dl dt p {
  line-height: 1.6875;
  font-weight: 600;
}
@media screen and (min-width: 768px) {
  main #topadvantage dl dt p {
    font-size: 1.1713030747vw;
    margin-bottom: 2.9282576867vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topadvantage dl dt p {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topadvantage dl dt p {
    font-size: 8.9956076135px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topadvantage dl dt p {
    margin-bottom: 40px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topadvantage dl dt p {
    margin-bottom: 22.4890190337px;
  }
}
@media screen and (max-width: 767px) {
  main #topadvantage dl dt p {
    line-height: 1.8;
    font-size: 4.2666666667vw;
    margin-bottom: 10.6666666667vw;
  }
}
main #topadvantage dl dt a {
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  -webkit-animation: gradientReverse 0.3s ease;
          animation: gradientReverse 0.3s ease;
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both;
  -webkit-animation-iteration-count: 1;
          animation-iteration-count: 1;
  letter-spacing: 0.1em;
  font-weight: 500;
  position: relative;
  font-family: "Montserrat", sans-serif;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 768px) {
  main #topadvantage dl dt a {
    font-size: 1.0980966325vw;
    width: 13.5431918009vw;
    height: 3.6603221083vw;
    border-radius: 0.2928257687vw;
    transition: all 0.3s ease;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topadvantage dl dt a {
    font-size: 15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topadvantage dl dt a {
    font-size: 8.4333821376px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topadvantage dl dt a {
    width: 185px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topadvantage dl dt a {
    width: 104.0117130307px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topadvantage dl dt a {
    height: 50px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topadvantage dl dt a {
    height: 28.1112737921px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topadvantage dl dt a {
    border-radius: 4px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topadvantage dl dt a {
    border-radius: 2.2489019034px;
  }
}
@media screen and (max-width: 767px) {
  main #topadvantage dl dt a {
    font-size: 4vw;
    width: 48vw;
    height: 13.3333333333vw;
    border-radius: 1.0666666667vw;
  }
}
@media screen and (min-width: 768px) {
  main #topadvantage dl dt a:hover {
    opacity: 1;
    -webkit-animation: gradient 0.3s ease;
            animation: gradient 0.3s ease;
    -webkit-animation-fill-mode: both;
            animation-fill-mode: both;
    -webkit-animation-iteration-count: 1;
            animation-iteration-count: 1;
  }
}
@media screen and (min-width: 768px) {
  main #topadvantage dl dt a:hover:after {
    width: 2.5622254758vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topadvantage dl dt a:hover:after {
    width: 35px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topadvantage dl dt a:hover:after {
    width: 19.6778916545px;
  }
}
main #topadvantage dl dt a:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  background-color: #fff;
  transition: all 0.3s ease;
}
@media screen and (min-width: 768px) {
  main #topadvantage dl dt a:after {
    width: 2.196193265vw;
    height: 0.0732064422vw;
    margin-top: -0.0366032211vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topadvantage dl dt a:after {
    width: 30px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topadvantage dl dt a:after {
    width: 16.8667642753px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topadvantage dl dt a:after {
    height: 1px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topadvantage dl dt a:after {
    height: 0.5622254758px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topadvantage dl dt a:after {
    margin-top: -0.5px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topadvantage dl dt a:after {
    margin-top: -0.2811127379px;
  }
}
@media screen and (max-width: 767px) {
  main #topadvantage dl dt a:after {
    width: 8vw;
    height: 0.2666666667vw;
    margin-top: -0.1333333333vw;
  }
}
main #topadvantage dl dd {
  pointer-events: none;
}
@media screen and (min-width: 768px) {
  main #topadvantage dl dd {
    margin-right: -14.6412884334vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topadvantage dl dd {
    margin-right: -200px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topadvantage dl dd {
    margin-right: -112.4450951684px;
  }
}
@media screen and (max-width: 767px) {
  main #topadvantage dl dd {
    margin-left: -44vw;
    margin-top: -20vw;
  }
}
@media screen and (min-width: 768px) {
  main #topadvantage dl dd img {
    max-width: 79.0629575403vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topadvantage dl dd img {
    max-width: 1080px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topadvantage dl dd img {
    max-width: 607.2035139092px;
  }
}
@media screen and (max-width: 767px) {
  main #topadvantage dl dd img {
    width: 100%;
  }
}
@media screen and (min-width: 768px) {
  main #topwill {
    margin-top: 12.0790629575vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topwill {
    margin-top: 165px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topwill {
    margin-top: 92.7672035139px;
  }
}
@media screen and (max-width: 767px) {
  main #topwill {
    margin-top: 40vw;
  }
}
@media screen and (max-width: 767px) {
  main #topwill .topwill-wrapper {
    margin-bottom: 26.6666666667vw;
  }
}
main #topwill .topwill-wrapper h2 {
  position: relative;
  text-align: center;
}
@media screen and (min-width: 768px) {
  main #topwill .topwill-wrapper h2 {
    margin-bottom: 3.2942898975vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topwill .topwill-wrapper h2 {
    margin-bottom: 45px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topwill .topwill-wrapper h2 {
    margin-bottom: 25.3001464129px;
  }
}
@media screen and (max-width: 767px) {
  main #topwill .topwill-wrapper h2 {
    margin-bottom: 10.6666666667vw;
  }
}
main #topwill .topwill-wrapper h2:after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  background-image: url(/assets/img/strip.svg);
}
@media screen and (min-width: 768px) {
  main #topwill .topwill-wrapper h2:after {
    width: 2.635431918vw;
    height: 1.9033674963vw;
    margin-left: -1.317715959vw;
    margin-top: -3.6603221083vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topwill .topwill-wrapper h2:after {
    width: 36px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topwill .topwill-wrapper h2:after {
    width: 20.2401171303px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topwill .topwill-wrapper h2:after {
    height: 26px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topwill .topwill-wrapper h2:after {
    height: 14.6178623719px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topwill .topwill-wrapper h2:after {
    margin-left: -18px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topwill .topwill-wrapper h2:after {
    margin-left: -10.1200585652px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topwill .topwill-wrapper h2:after {
    margin-top: -50px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topwill .topwill-wrapper h2:after {
    margin-top: -28.1112737921px;
  }
}
@media screen and (max-width: 767px) {
  main #topwill .topwill-wrapper h2:after {
    width: 9.6vw;
    height: 6.9333333333vw;
    margin-left: -4.8vw;
    margin-top: -13.3333333333vw;
  }
}
main #topwill .topwill-wrapper h2 > span {
  display: block;
  font-weight: 600;
}
main #topwill .topwill-wrapper h2 > span.en {
  font-family: "Montserrat", sans-serif;
}
@media screen and (min-width: 768px) {
  main #topwill .topwill-wrapper h2 > span.en {
    font-size: 3.513909224vw;
    margin-bottom: 1.0980966325vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topwill .topwill-wrapper h2 > span.en {
    font-size: 48px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topwill .topwill-wrapper h2 > span.en {
    font-size: 26.9868228404px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topwill .topwill-wrapper h2 > span.en {
    margin-bottom: 15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topwill .topwill-wrapper h2 > span.en {
    margin-bottom: 8.4333821376px;
  }
}
@media screen and (max-width: 767px) {
  main #topwill .topwill-wrapper h2 > span.en {
    font-size: 7.4666666667vw;
    margin-bottom: 4vw;
  }
}
@media screen and (min-width: 768px) {
  main #topwill .topwill-wrapper h2 > span.ja {
    font-size: 1.1713030747vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topwill .topwill-wrapper h2 > span.ja {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topwill .topwill-wrapper h2 > span.ja {
    font-size: 8.9956076135px;
  }
}
@media screen and (max-width: 767px) {
  main #topwill .topwill-wrapper h2 > span.ja {
    font-size: 4.2666666667vw;
  }
}
main #topwill .topwill-profile ul {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
@media screen and (min-width: 768px) {
  main #topwill .topwill-profile ul {
    margin: 0 auto;
    width: 55.7833089312vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topwill .topwill-profile ul {
    width: 762px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topwill .topwill-profile ul {
    width: 428.4158125915px;
  }
}
@media screen and (min-width: 768px) {
  main #topwill .topwill-profile ul li {
    width: 12.298682284vw;
    margin-top: 2.196193265vw;
    margin-right: 2.196193265vw;
    cursor: pointer;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topwill .topwill-profile ul li {
    width: 168px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topwill .topwill-profile ul li {
    width: 94.4538799414px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topwill .topwill-profile ul li {
    margin-top: 30px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topwill .topwill-profile ul li {
    margin-top: 16.8667642753px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topwill .topwill-profile ul li {
    margin-right: 30px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topwill .topwill-profile ul li {
    margin-right: 16.8667642753px;
  }
}
@media screen and (max-width: 767px) {
  main #topwill .topwill-profile ul li {
    width: 29.6vw;
    margin-right: 5.3333333333vw;
    margin-top: 8vw;
  }
}
@media screen and (min-width: 768px) {
  main #topwill .topwill-profile ul li:nth-of-type(1), main #topwill .topwill-profile ul li:nth-of-type(2), main #topwill .topwill-profile ul li:nth-of-type(3), main #topwill .topwill-profile ul li:nth-of-type(4) {
    margin-top: 0;
  }
}
@media screen and (max-width: 767px) {
  main #topwill .topwill-profile ul li:nth-of-type(1), main #topwill .topwill-profile ul li:nth-of-type(2), main #topwill .topwill-profile ul li:nth-of-type(3) {
    margin-top: 0;
  }
}
@media screen and (min-width: 768px) {
  main #topwill .topwill-profile ul li:nth-of-type(4n) {
    margin-right: 0;
  }
}
@media screen and (max-width: 767px) {
  main #topwill .topwill-profile ul li:nth-of-type(3n) {
    margin-right: 0;
  }
}
@media screen and (min-width: 768px) {
  main #topwill .topwill-profile ul li:hover h3 {
    opacity: 0.7;
  }
}
@media screen and (min-width: 768px) {
  main #topwill .topwill-profile ul li:hover img {
    transform: scale(1.07);
  }
}
@media screen and (min-width: 768px) {
  main #topwill .topwill-profile ul li > div {
    overflow: hidden;
  }
}
main #topwill .topwill-profile ul li img {
  display: block;
  width: 100%;
}
@media screen and (min-width: 768px) {
  main #topwill .topwill-profile ul li img {
    transition: all 0.3s ease;
  }
}
main #topwill .topwill-profile ul li h3 {
  font-weight: 600;
}
@media screen and (min-width: 768px) {
  main #topwill .topwill-profile ul li h3 {
    margin-top: 1.317715959vw;
    transform: opacity 0.3s ease;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topwill .topwill-profile ul li h3 {
    margin-top: 18px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topwill .topwill-profile ul li h3 {
    margin-top: 10.1200585652px;
  }
}
@media screen and (max-width: 767px) {
  main #topwill .topwill-profile ul li h3 {
    margin-top: 3.2vw;
    text-align: center;
  }
}
main #topwill .topwill-profile ul li h3 > span {
  display: block;
}
main #topwill .topwill-profile ul li h3 > span:first-letter {
  color: #0B8BD5;
}
main #topwill .topwill-profile ul li h3 > span.ja {
  letter-spacing: 0.1em;
}
@media screen and (min-width: 768px) {
  main #topwill .topwill-profile ul li h3 > span.ja {
    font-size: 1.1713030747vw;
    margin-bottom: 0.5856515373vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topwill .topwill-profile ul li h3 > span.ja {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topwill .topwill-profile ul li h3 > span.ja {
    font-size: 8.9956076135px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topwill .topwill-profile ul li h3 > span.ja {
    margin-bottom: 8px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topwill .topwill-profile ul li h3 > span.ja {
    margin-bottom: 4.4978038067px;
  }
}
@media screen and (max-width: 767px) {
  main #topwill .topwill-profile ul li h3 > span.ja {
    font-size: 3.7333333333vw;
    margin-bottom: 2.1333333333vw;
  }
}
main #topwill .topwill-profile ul li h3 > span.en {
  font-family: "Futura", "Noto Sans JP", "Century Gothic";
}
@media screen and (min-width: 768px) {
  main #topwill .topwill-profile ul li h3 > span.en {
    font-size: 0.878477306vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #topwill .topwill-profile ul li h3 > span.en {
    font-size: 12px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #topwill .topwill-profile ul li h3 > span.en {
    font-size: 6.7467057101px;
  }
}
@media screen and (max-width: 767px) {
  main #topwill .topwill-profile ul li h3 > span.en {
    font-size: 2.6666666667vw;
  }
}
main #modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: rgba(0, 0, 0, 0.54);
  z-index: 1000;
  overflow: auto;
  pointer-events: none;
  opacity: 0;
  transition: all 0.3s ease;
}
main #modal.active {
  pointer-events: visible;
  opacity: 1;
}
@media screen and (max-width: 767px) {
  main #modal {
    padding-top: 8vw;
    padding-bottom: 8vw;
    padding-left: 6.6666666667vw;
    padding-right: 6.6666666667vw;
  }
}
main #modal .modal-wrapper {
  margin-top: auto;
  margin-bottom: auto;
  width: 100%;
  position: relative;
  background-color: #fff;
}
@media screen and (min-width: 768px) {
  main #modal .modal-wrapper {
    width: 70.2781844802vw;
    height: 43.9238653001vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #modal .modal-wrapper {
    width: 960px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #modal .modal-wrapper {
    width: 539.7364568082px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #modal .modal-wrapper {
    height: 600px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #modal .modal-wrapper {
    height: 337.3352855051px;
  }
}
main #modal .modal-wrapper .slide-close {
  position: absolute;
  right: 0;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  main #modal .modal-wrapper .slide-close {
    top: 0;
    margin-top: 1.8301610542vw;
    margin-right: 1.4641288433vw;
    width: 1.1713030747vw;
    height: 1.1713030747vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #modal .modal-wrapper .slide-close {
    margin-top: 25px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #modal .modal-wrapper .slide-close {
    margin-top: 14.055636896px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #modal .modal-wrapper .slide-close {
    margin-right: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #modal .modal-wrapper .slide-close {
    margin-right: 11.2445095168px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #modal .modal-wrapper .slide-close {
    width: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #modal .modal-wrapper .slide-close {
    width: 8.9956076135px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #modal .modal-wrapper .slide-close {
    height: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #modal .modal-wrapper .slide-close {
    height: 8.9956076135px;
  }
}
@media screen and (max-width: 767px) {
  main #modal .modal-wrapper .slide-close {
    position: fixed;
    bottom: 0;
    margin-bottom: 10.6666666667vw;
    margin-right: 10.6666666667vw;
    width: 4.2666666667vw;
    height: 4.2666666667vw;
  }
}
main #modal .modal-wrapper .slide-close img {
  width: 100%;
}
main #modal .modal-wrapper .modal-slide .slick-arrow {
  z-index: 1;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  -webkit-animation: gradientVerticalReverse 0.3s ease;
          animation: gradientVerticalReverse 0.3s ease;
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both;
  -webkit-animation-iteration-count: 1;
          animation-iteration-count: 1;
  transform: translate(0, 0);
}
@media screen and (min-width: 768px) {
  main #modal .modal-wrapper .modal-slide .slick-arrow {
    width: 2.196193265vw;
    height: 4.39238653vw;
    margin-top: -2.196193265vw;
    border-radius: 0.2928257687vw;
    transition: opacity 0.3s ease;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #modal .modal-wrapper .modal-slide .slick-arrow {
    width: 30px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #modal .modal-wrapper .modal-slide .slick-arrow {
    width: 16.8667642753px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #modal .modal-wrapper .modal-slide .slick-arrow {
    height: 60px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #modal .modal-wrapper .modal-slide .slick-arrow {
    height: 33.7335285505px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #modal .modal-wrapper .modal-slide .slick-arrow {
    margin-top: -30px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #modal .modal-wrapper .modal-slide .slick-arrow {
    margin-top: -16.8667642753px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #modal .modal-wrapper .modal-slide .slick-arrow {
    border-radius: 4px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #modal .modal-wrapper .modal-slide .slick-arrow {
    border-radius: 2.2489019034px;
  }
}
@media screen and (max-width: 767px) {
  main #modal .modal-wrapper .modal-slide .slick-arrow {
    width: 8vw;
    height: 16vw;
    transform: translate(0, 0);
    top: 50%;
    margin-top: -8vw;
    border-radius: 1.0666666667vw;
    position: fixed;
  }
}
main #modal .modal-wrapper .modal-slide .slick-arrow:before {
  display: none;
}
main #modal .modal-wrapper .modal-slide .slick-arrow:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
@media screen and (min-width: 768px) {
  main #modal .modal-wrapper .modal-slide .slick-arrow:after {
    width: 0.878477306vw;
    height: 0.878477306vw;
    margin-top: -0.439238653vw;
    margin-left: -0.5856515373vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #modal .modal-wrapper .modal-slide .slick-arrow:after {
    width: 12px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #modal .modal-wrapper .modal-slide .slick-arrow:after {
    width: 6.7467057101px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #modal .modal-wrapper .modal-slide .slick-arrow:after {
    height: 12px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #modal .modal-wrapper .modal-slide .slick-arrow:after {
    height: 6.7467057101px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #modal .modal-wrapper .modal-slide .slick-arrow:after {
    margin-top: -6px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #modal .modal-wrapper .modal-slide .slick-arrow:after {
    margin-top: -3.3733528551px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #modal .modal-wrapper .modal-slide .slick-arrow:after {
    margin-left: -8px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #modal .modal-wrapper .modal-slide .slick-arrow:after {
    margin-left: -4.4978038067px;
  }
}
@media screen and (max-width: 767px) {
  main #modal .modal-wrapper .modal-slide .slick-arrow:after {
    width: 3.2vw;
    height: 3.2vw;
    margin-top: -1.6vw;
    margin-left: -2.1333333333vw;
  }
}
@media screen and (min-width: 768px) {
  main #modal .modal-wrapper .modal-slide .slick-arrow:hover {
    opacity: 1;
    -webkit-animation: gradientVertical 0.3s ease;
            animation: gradientVertical 0.3s ease;
    -webkit-animation-fill-mode: both;
            animation-fill-mode: both;
    -webkit-animation-iteration-count: 1;
            animation-iteration-count: 1;
  }
}
main #modal .modal-wrapper .modal-slide .slick-arrow.slick-prev:after {
  background-image: url(/assets/img/top/arrow-left.svg);
}
@media screen and (min-width: 768px) {
  main #modal .modal-wrapper .modal-slide .slick-arrow.slick-prev:after {
    margin-left: -0.3660322108vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #modal .modal-wrapper .modal-slide .slick-arrow.slick-prev:after {
    margin-left: -5px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #modal .modal-wrapper .modal-slide .slick-arrow.slick-prev:after {
    margin-left: -2.8111273792px;
  }
}
@media screen and (max-width: 767px) {
  main #modal .modal-wrapper .modal-slide .slick-arrow.slick-prev:after {
    margin-left: -1.3333333333vw;
  }
}
@media screen and (min-width: 768px) {
  main #modal .modal-wrapper .modal-slide .slick-arrow.slick-prev {
    left: -1.0980966325vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #modal .modal-wrapper .modal-slide .slick-arrow.slick-prev {
    left: -15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #modal .modal-wrapper .modal-slide .slick-arrow.slick-prev {
    left: -8.4333821376px;
  }
}
@media screen and (max-width: 767px) {
  main #modal .modal-wrapper .modal-slide .slick-arrow.slick-prev {
    left: 2.6666666667vw;
  }
}
main #modal .modal-wrapper .modal-slide .slick-arrow.slick-next:after {
  background-image: url(/assets/img/top/arrow-right.svg);
}
@media screen and (min-width: 768px) {
  main #modal .modal-wrapper .modal-slide .slick-arrow.slick-next {
    right: -1.0980966325vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #modal .modal-wrapper .modal-slide .slick-arrow.slick-next {
    right: -15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #modal .modal-wrapper .modal-slide .slick-arrow.slick-next {
    right: -8.4333821376px;
  }
}
@media screen and (max-width: 767px) {
  main #modal .modal-wrapper .modal-slide .slick-arrow.slick-next {
    right: 2.6666666667vw;
  }
}
@media screen and (min-width: 768px) {
  main #modal .modal-wrapper .modal-slide .slide .slide-flex {
    padding-top: 7.3206442167vw;
    padding-bottom: 7.3206442167vw;
    padding-left: 4.39238653vw;
    padding-right: 4.39238653vw;
    display: flex;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #modal .modal-wrapper .modal-slide .slide .slide-flex {
    padding-top: 100px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #modal .modal-wrapper .modal-slide .slide .slide-flex {
    padding-top: 56.2225475842px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #modal .modal-wrapper .modal-slide .slide .slide-flex {
    padding-bottom: 100px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #modal .modal-wrapper .modal-slide .slide .slide-flex {
    padding-bottom: 56.2225475842px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #modal .modal-wrapper .modal-slide .slide .slide-flex {
    padding-left: 60px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #modal .modal-wrapper .modal-slide .slide .slide-flex {
    padding-left: 33.7335285505px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #modal .modal-wrapper .modal-slide .slide .slide-flex {
    padding-right: 60px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #modal .modal-wrapper .modal-slide .slide .slide-flex {
    padding-right: 33.7335285505px;
  }
}
@media screen and (min-width: 768px) {
  main #modal .modal-wrapper .modal-slide .slide .slide-flex .slide-flex-img {
    margin-right: 4.39238653vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #modal .modal-wrapper .modal-slide .slide .slide-flex .slide-flex-img {
    margin-right: 60px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #modal .modal-wrapper .modal-slide .slide .slide-flex .slide-flex-img {
    margin-right: 33.7335285505px;
  }
}
@media screen and (min-width: 768px) {
  main #modal .modal-wrapper .modal-slide .slide .slide-flex .slide-flex-img img {
    width: 21.9619326501vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #modal .modal-wrapper .modal-slide .slide .slide-flex .slide-flex-img img {
    width: 300px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #modal .modal-wrapper .modal-slide .slide .slide-flex .slide-flex-img img {
    width: 168.6676427526px;
  }
}
@media screen and (max-width: 767px) {
  main #modal .modal-wrapper .modal-slide .slide .slide-flex .slide-flex-img img {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  main #modal .modal-wrapper .modal-slide .slide .slide-flex .slide-flex-txt {
    margin-top: 8vw;
    padding-left: 6.6666666667vw;
    padding-right: 6.6666666667vw;
    padding-bottom: 10.6666666667vw;
  }
}
main #modal .modal-wrapper .modal-slide .slide .slide-flex .slide-flex-txt h3 {
  font-weight: 600;
}
@media screen and (min-width: 768px) {
  main #modal .modal-wrapper .modal-slide .slide .slide-flex .slide-flex-txt h3 {
    margin-bottom: 1.4641288433vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #modal .modal-wrapper .modal-slide .slide .slide-flex .slide-flex-txt h3 {
    margin-bottom: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #modal .modal-wrapper .modal-slide .slide .slide-flex .slide-flex-txt h3 {
    margin-bottom: 11.2445095168px;
  }
}
@media screen and (max-width: 767px) {
  main #modal .modal-wrapper .modal-slide .slide .slide-flex .slide-flex-txt h3 {
    margin-bottom: 8vw;
  }
}
main #modal .modal-wrapper .modal-slide .slide .slide-flex .slide-flex-txt h3 > span {
  display: block;
}
main #modal .modal-wrapper .modal-slide .slide .slide-flex .slide-flex-txt h3 > span:first-letter {
  color: #0B8BD5;
}
@media screen and (min-width: 768px) {
  main #modal .modal-wrapper .modal-slide .slide .slide-flex .slide-flex-txt h3 > span.ja {
    font-size: 1.756954612vw;
    margin-bottom: 0.7320644217vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #modal .modal-wrapper .modal-slide .slide .slide-flex .slide-flex-txt h3 > span.ja {
    font-size: 24px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #modal .modal-wrapper .modal-slide .slide .slide-flex .slide-flex-txt h3 > span.ja {
    font-size: 13.4934114202px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #modal .modal-wrapper .modal-slide .slide .slide-flex .slide-flex-txt h3 > span.ja {
    margin-bottom: 10px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #modal .modal-wrapper .modal-slide .slide .slide-flex .slide-flex-txt h3 > span.ja {
    margin-bottom: 5.6222547584px;
  }
}
@media screen and (max-width: 767px) {
  main #modal .modal-wrapper .modal-slide .slide .slide-flex .slide-flex-txt h3 > span.ja {
    font-size: 6.4vw;
    margin-bottom: 2.6666666667vw;
  }
}
@media screen and (min-width: 768px) {
  main #modal .modal-wrapper .modal-slide .slide .slide-flex .slide-flex-txt h3 > span.en {
    font-size: 1.0248901903vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #modal .modal-wrapper .modal-slide .slide .slide-flex .slide-flex-txt h3 > span.en {
    font-size: 14px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #modal .modal-wrapper .modal-slide .slide .slide-flex .slide-flex-txt h3 > span.en {
    font-size: 7.8711566618px;
  }
}
@media screen and (max-width: 767px) {
  main #modal .modal-wrapper .modal-slide .slide .slide-flex .slide-flex-txt h3 > span.en {
    font-size: 3.7333333333vw;
    line-height: 1.5;
  }
}
@media screen and (min-width: 768px) {
  main #modal .modal-wrapper .modal-slide .slide .slide-flex .slide-flex-txt h3 > span.en > span {
    font-size: 1.0980966325vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #modal .modal-wrapper .modal-slide .slide .slide-flex .slide-flex-txt h3 > span.en > span {
    font-size: 15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #modal .modal-wrapper .modal-slide .slide .slide-flex .slide-flex-txt h3 > span.en > span {
    font-size: 8.4333821376px;
  }
}
@media screen and (max-width: 767px) {
  main #modal .modal-wrapper .modal-slide .slide .slide-flex .slide-flex-txt h3 > span.en > span {
    font-size: 4vw;
  }
}
main #modal .modal-wrapper .modal-slide .slide .slide-flex .slide-flex-txt p {
  line-height: 1.8;
}
@media screen and (min-width: 768px) {
  main #modal .modal-wrapper .modal-slide .slide .slide-flex .slide-flex-txt p {
    font-size: 1.1713030747vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #modal .modal-wrapper .modal-slide .slide .slide-flex .slide-flex-txt p {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #modal .modal-wrapper .modal-slide .slide .slide-flex .slide-flex-txt p {
    font-size: 8.9956076135px;
  }
}
@media screen and (max-width: 767px) {
  main #modal .modal-wrapper .modal-slide .slide .slide-flex .slide-flex-txt p {
    font-size: 4vw;
  }
}
@media screen and (min-width: 768px) {
  main #advantage {
    padding-top: 2.9282576867vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage {
    padding-top: 40px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage {
    padding-top: 22.4890190337px;
  }
}
@media screen and (max-width: 767px) {
  main #advantage {
    padding-top: 13.3333333333vw;
    margin-bottom: -13.3333333333vw;
  }
}
@media screen and (min-width: 768px) {
  main #advantage .advantage-head {
    margin-bottom: 4.39238653vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-head {
    margin-bottom: 60px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-head {
    margin-bottom: 33.7335285505px;
  }
}
@media screen and (max-width: 767px) {
  main #advantage .advantage-head {
    margin-bottom: 10.6666666667vw;
  }
}
main #advantage .advantage-head h3 {
  font-weight: 600;
  line-height: 1.8;
  text-align: center;
}
@media screen and (min-width: 768px) {
  main #advantage .advantage-head h3 {
    margin-top: 2.9282576867vw;
    font-size: 1.1713030747vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-head h3 {
    margin-top: 40px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-head h3 {
    margin-top: 22.4890190337px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-head h3 {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-head h3 {
    font-size: 8.9956076135px;
  }
}
@media screen and (max-width: 767px) {
  main #advantage .advantage-head h3 {
    font-size: 4.2666666667vw;
    margin-top: 10.6666666667vw;
  }
}
main #advantage .advantage-head h3 > span.blue {
  color: #0B8BD5;
}
@media screen and (min-width: 768px) {
  main #advantage .advantage-diagram .advantage-diagram-col {
    margin-left: auto;
    margin-right: auto;
    width: 56.3689604685vw;
    margin-bottom: 3.2942898975vw;
    display: flex;
    justify-content: space-between;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-diagram .advantage-diagram-col {
    width: 770px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-diagram .advantage-diagram-col {
    width: 432.9136163982px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-diagram .advantage-diagram-col {
    margin-bottom: 45px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-diagram .advantage-diagram-col {
    margin-bottom: 25.3001464129px;
  }
}
main #advantage .advantage-diagram .advantage-diagram-col dl {
  position: relative;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: left;
  background-image: url(/assets/img/advantage/line.svg);
}
@media screen and (min-width: 768px) {
  main #advantage .advantage-diagram .advantage-diagram-col dl {
    width: calc((100% - 20px) / 2);
    padding-left: 3.2942898975vw;
    padding-bottom: 5.4904831625vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-diagram .advantage-diagram-col dl {
    padding-left: 45px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-diagram .advantage-diagram-col dl {
    padding-left: 25.3001464129px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-diagram .advantage-diagram-col dl {
    padding-bottom: 75px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-diagram .advantage-diagram-col dl {
    padding-bottom: 42.1669106881px;
  }
}
@media screen and (min-width: 768px) {
  main #advantage .advantage-diagram .advantage-diagram-col dl dt h3 {
    margin-bottom: 0.7320644217vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-diagram .advantage-diagram-col dl dt h3 {
    margin-bottom: 10px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-diagram .advantage-diagram-col dl dt h3 {
    margin-bottom: 5.6222547584px;
  }
}
main #advantage .advantage-diagram .advantage-diagram-col dl dt h3 > span {
  font-weight: 600;
  display: block;
  font-family: "Montserrat", sans-serif;
}
@media screen and (min-width: 768px) {
  main #advantage .advantage-diagram .advantage-diagram-col dl dt h3 > span {
    font-size: 1.0248901903vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-diagram .advantage-diagram-col dl dt h3 > span {
    font-size: 14px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-diagram .advantage-diagram-col dl dt h3 > span {
    font-size: 7.8711566618px;
  }
}
main #advantage .advantage-diagram .advantage-diagram-col dl dt h3 > span .num {
  font-family: "Futura", "Noto Sans JP", "Century Gothic";
  color: #0B8BD5;
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  main #advantage .advantage-diagram .advantage-diagram-col dl dt h3 > span:last-child {
    font-size: 2.0497803807vw;
    margin-top: 0.7320644217vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-diagram .advantage-diagram-col dl dt h3 > span:last-child {
    font-size: 28px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-diagram .advantage-diagram-col dl dt h3 > span:last-child {
    font-size: 15.7423133236px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-diagram .advantage-diagram-col dl dt h3 > span:last-child {
    margin-top: 10px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-diagram .advantage-diagram-col dl dt h3 > span:last-child {
    margin-top: 5.6222547584px;
  }
}
main #advantage .advantage-diagram .advantage-diagram-col dl dt h3 > span:last-child:first-letter {
  color: #0B8BD5;
}
main #advantage .advantage-diagram .advantage-diagram-col dl dd {
  line-height: 1.8125;
}
@media screen and (min-width: 768px) {
  main #advantage .advantage-diagram .advantage-diagram-col dl dd {
    font-size: 1.1713030747vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-diagram .advantage-diagram-col dl dd {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-diagram .advantage-diagram-col dl dd {
    font-size: 8.9956076135px;
  }
}
main #advantage .advantage-diagram .advantage-diagram-img {
  text-align: center;
}
@media screen and (min-width: 768px) {
  main #advantage .advantage-diagram .advantage-diagram-img img {
    width: 53.0014641288vw;
    margin-left: 1.1713030747vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-diagram .advantage-diagram-img img {
    width: 724px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-diagram .advantage-diagram-img img {
    width: 407.0512445095px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-diagram .advantage-diagram-img img {
    margin-left: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-diagram .advantage-diagram-img img {
    margin-left: 8.9956076135px;
  }
}
@media screen and (max-width: 767px) {
  main #advantage .advantage-diagram .advantage-diagram-img img {
    width: 94.9333333333vw;
  }
}
main #advantage .advantage-highlight {
  position: relative;
}
@media screen and (min-width: 768px) {
  main #advantage .advantage-highlight {
    z-index: 1;
    overflow: hidden;
    margin-top: 8.78477306vw;
    margin-bottom: -4.39238653vw;
    padding-bottom: 4.39238653vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-highlight {
    margin-top: 120px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-highlight {
    margin-top: 67.467057101px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-highlight {
    margin-bottom: -60px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-highlight {
    margin-bottom: -33.7335285505px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-highlight {
    padding-bottom: 60px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-highlight {
    padding-bottom: 33.7335285505px;
  }
}
@media screen and (max-width: 767px) {
  main #advantage .advantage-highlight {
    overflow: hidden;
    margin-top: 24vw;
    margin-left: -5.3333333333vw;
    margin-right: -5.3333333333vw;
    padding-bottom: 16vw;
  }
}
main #advantage .advantage-highlight:before {
  content: "";
  position: absolute;
  display: block;
  z-index: -1;
  left: 0;
  height: 100%;
}
@media screen and (min-width: 768px) {
  main #advantage .advantage-highlight:before {
    width: 67%;
    background-position: center right;
    background-size: cover;
    background-repeat: no-repeat;
    background-image: url(/assets/img/gradation.png);
    top: 4.39238653vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-highlight:before {
    top: 60px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-highlight:before {
    top: 33.7335285505px;
  }
}
@media screen and (max-width: 767px) {
  main #advantage .advantage-highlight:before {
    width: 100%;
    background-position: top right;
    background-size: cover;
    background-repeat: no-repeat;
    background-image: url(/assets/img/gradation.sp.png);
    z-index: 1;
    top: 19%;
  }
}
@media screen and (max-width: 374px) {
  main #advantage .advantage-highlight:before {
    top: 17%;
  }
}
main #advantage .advantage-highlight dl {
  position: relative;
}
@media screen and (min-width: 768px) {
  main #advantage .advantage-highlight dl {
    display: flex;
    justify-content: flex-end;
    margin: 0 auto;
    max-width: 100vw;
    height: 38.0673499268vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-highlight dl {
    max-width: 1366px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-highlight dl {
    max-width: 768px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-highlight dl {
    height: 520px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-highlight dl {
    height: 292.3572474378px;
  }
}
@media screen and (max-width: 767px) {
  main #advantage .advantage-highlight dl {
    display: flex;
    flex-direction: column-reverse;
    overflow: hidden;
    z-index: 1;
  }
}
main #advantage .advantage-highlight dl dt {
  color: #fff;
}
@media screen and (min-width: 768px) {
  main #advantage .advantage-highlight dl dt {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    margin-top: 13.5431918009vw;
    width: 46.8521229868vw;
    padding-left: 9.0043923865vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-highlight dl dt {
    margin-top: 185px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-highlight dl dt {
    margin-top: 104.0117130307px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-highlight dl dt {
    width: 640px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-highlight dl dt {
    width: 359.8243045388px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-highlight dl dt {
    padding-left: 123px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-highlight dl dt {
    padding-left: 69.1537335286px;
  }
}
@media screen and (max-width: 767px) {
  main #advantage .advantage-highlight dl dt {
    margin-top: 8vw;
    padding-left: 5.3333333333vw;
    padding-right: 5.3333333333vw;
  }
}
main #advantage .advantage-highlight dl dt h3 {
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 1.79;
}
@media screen and (min-width: 768px) {
  main #advantage .advantage-highlight dl dt h3 {
    font-size: 1.756954612vw;
    margin-bottom: 1.8301610542vw;
    word-break: keep-all;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-highlight dl dt h3 {
    font-size: 24px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-highlight dl dt h3 {
    font-size: 13.4934114202px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-highlight dl dt h3 {
    margin-bottom: 25px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-highlight dl dt h3 {
    margin-bottom: 14.055636896px;
  }
}
@media screen and (max-width: 767px) {
  main #advantage .advantage-highlight dl dt h3 {
    line-height: 1.6;
    font-size: 5.3333333333vw;
    margin-bottom: 5.3333333333vw;
    padding-left: 5.3333333333vw;
    padding-right: 5.3333333333vw;
  }
}
main #advantage .advantage-highlight dl dt p {
  line-height: 1.6875;
  font-weight: 300;
}
@media screen and (min-width: 768px) {
  main #advantage .advantage-highlight dl dt p {
    font-size: 1.1713030747vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-highlight dl dt p {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-highlight dl dt p {
    font-size: 8.9956076135px;
  }
}
@media screen and (max-width: 767px) {
  main #advantage .advantage-highlight dl dt p {
    line-height: 1.8;
    font-size: 4.2666666667vw;
    padding-left: 5.3333333333vw;
    padding-right: 5.3333333333vw;
  }
}
main #advantage .advantage-highlight dl dt a {
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  -webkit-animation: gradientReverse 0.3s ease;
          animation: gradientReverse 0.3s ease;
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both;
  -webkit-animation-iteration-count: 1;
          animation-iteration-count: 1;
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  main #advantage .advantage-highlight dl dt a {
    transition: all 0.3s ease;
    margin-top: 2.5622254758vw;
    width: 12.0790629575vw;
    height: 3.6603221083vw;
    border-radius: 0.2928257687vw;
    font-size: 1.0248901903vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-highlight dl dt a {
    margin-top: 35px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-highlight dl dt a {
    margin-top: 19.6778916545px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-highlight dl dt a {
    width: 165px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-highlight dl dt a {
    width: 92.7672035139px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-highlight dl dt a {
    height: 50px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-highlight dl dt a {
    height: 28.1112737921px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-highlight dl dt a {
    border-radius: 4px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-highlight dl dt a {
    border-radius: 2.2489019034px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-highlight dl dt a {
    font-size: 14px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-highlight dl dt a {
    font-size: 7.8711566618px;
  }
}
@media screen and (max-width: 767px) {
  main #advantage .advantage-highlight dl dt a {
    margin-left: auto;
    margin-right: auto;
    border: none;
    padding: 0;
    width: 43.4666666667vw;
    height: 13.3333333333vw;
    border-radius: 1.0666666667vw;
    font-size: 3.7333333333vw;
    margin-top: 10.6666666667vw;
  }
}
@media screen and (min-width: 768px) {
  main #advantage .advantage-highlight dl dt a:hover {
    opacity: 1;
    -webkit-animation: gradient 0.3s ease;
            animation: gradient 0.3s ease;
    -webkit-animation-fill-mode: both;
            animation-fill-mode: both;
    -webkit-animation-iteration-count: 1;
            animation-iteration-count: 1;
  }
}
main #advantage .advantage-highlight dl dt a img {
  display: inline-block;
  vertical-align: middle;
}
@media screen and (min-width: 768px) {
  main #advantage .advantage-highlight dl dt a img {
    margin-right: 0.878477306vw;
    width: 1.6105417277vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-highlight dl dt a img {
    margin-right: 12px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-highlight dl dt a img {
    margin-right: 6.7467057101px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-highlight dl dt a img {
    width: 22px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-highlight dl dt a img {
    width: 12.3689604685px;
  }
}
@media screen and (max-width: 767px) {
  main #advantage .advantage-highlight dl dt a img {
    margin-right: 3.2vw;
    width: 5.8666666667vw;
    height: 4vw;
  }
}
main #advantage .advantage-highlight dl dd {
  pointer-events: none;
}
@media screen and (min-width: 768px) {
  main #advantage .advantage-highlight dl dd {
    margin-right: -10.980966325vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-highlight dl dd {
    margin-right: -150px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-highlight dl dd {
    margin-right: -84.3338213763px;
  }
}
@media screen and (max-width: 767px) {
  main #advantage .advantage-highlight dl dd {
    margin-left: -29.6vw;
    margin-right: -29.6vw;
  }
}
@media screen and (min-width: 768px) {
  main #advantage .advantage-highlight dl dd img {
    max-width: 79.0629575403vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-highlight dl dd img {
    max-width: 1080px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-highlight dl dd img {
    max-width: 607.2035139092px;
  }
}
@media screen and (max-width: 767px) {
  main #advantage .advantage-highlight dl dd img {
    width: 100%;
  }
}
main #advantage .advantage-training {
  position: relative;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  background-image: url(/assets/img/advantage/img-03.jpg);
}
@media screen and (min-width: 768px) {
  main #advantage .advantage-training {
    margin-top: 10.2489019034vw;
    padding-bottom: 35.1390922401vw;
    margin-bottom: -11.7130307467vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-training {
    margin-top: 140px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-training {
    margin-top: 78.7115666179px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-training {
    padding-bottom: 480px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-training {
    padding-bottom: 269.8682284041px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-training {
    margin-bottom: -160px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-training {
    margin-bottom: -89.9560761347px;
  }
}
@media screen and (min-width: 768px) {
  main #advantage .advantage-training .advantage-training-desc {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
  }
}
main #advantage .advantage-training .advantage-training-desc .logo {
  text-align: center;
}
@media screen and (min-width: 768px) {
  main #advantage .advantage-training .advantage-training-desc .logo {
    margin-bottom: 2.196193265vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-training .advantage-training-desc .logo {
    margin-bottom: 30px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-training .advantage-training-desc .logo {
    margin-bottom: 16.8667642753px;
  }
}
@media screen and (min-width: 768px) {
  main #advantage .advantage-training .advantage-training-desc .logo img {
    width: 14.6412884334vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-training .advantage-training-desc .logo img {
    width: 200px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-training .advantage-training-desc .logo img {
    width: 112.4450951684px;
  }
}
main #advantage .advantage-training .advantage-training-desc h2 {
  text-align: center;
  font-weight: 600;
  color: #fff;
  line-height: 1.667;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 768px) {
  main #advantage .advantage-training .advantage-training-desc h2 {
    font-size: 1.756954612vw;
    margin-bottom: 2.5622254758vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-training .advantage-training-desc h2 {
    font-size: 24px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-training .advantage-training-desc h2 {
    font-size: 13.4934114202px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-training .advantage-training-desc h2 {
    margin-bottom: 35px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-training .advantage-training-desc h2 {
    margin-bottom: 19.6778916545px;
  }
}
main #advantage .advantage-training .advantage-training-desc h2 > span {
  color: #EB6100;
}
@media screen and (min-width: 768px) {
  main #advantage .advantage-training .advantage-training-desc h2 > span {
    font-size: 2.3426061493vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-training .advantage-training-desc h2 > span {
    font-size: 32px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-training .advantage-training-desc h2 > span {
    font-size: 17.9912152269px;
  }
}
main #advantage .advantage-training .advantage-training-desc a {
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  background-color: #E96200;
  font-family: "Montserrat", sans-serif;
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  main #advantage .advantage-training .advantage-training-desc a {
    width: 13.17715959vw;
    height: 3.6603221083vw;
    font-size: 1.0980966325vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-training .advantage-training-desc a {
    width: 180px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-training .advantage-training-desc a {
    width: 101.2005856515px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-training .advantage-training-desc a {
    height: 50px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-training .advantage-training-desc a {
    height: 28.1112737921px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-training .advantage-training-desc a {
    font-size: 15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-training .advantage-training-desc a {
    font-size: 8.4333821376px;
  }
}
@media screen and (min-width: 768px) {
  main #advantage .advantage-training .advantage-training-desc a img {
    margin-left: 0.7320644217vw;
    margin-bottom: 0.3660322108vw;
    width: 1.317715959vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-training .advantage-training-desc a img {
    margin-left: 10px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-training .advantage-training-desc a img {
    margin-left: 5.6222547584px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-training .advantage-training-desc a img {
    margin-bottom: 5px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-training .advantage-training-desc a img {
    margin-bottom: 2.8111273792px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #advantage .advantage-training .advantage-training-desc a img {
    width: 18px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #advantage .advantage-training .advantage-training-desc a img {
    width: 10.1200585652px;
  }
}
main #rec .rec-kv {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  background-image: url(/assets/img/recruit/mv.jpg);
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (min-width: 768px) {
  main #rec .rec-kv {
    height: 56.2225475842vw;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-kv {
    background-image: url(/assets/img/recruit/mv.sp.jpg);
    height: 178.6666666667vw;
    align-items: flex-start;
  }
}
@media screen and (min-width: 768px) {
  main #rec .rec-kv .rec-kv-txt {
    padding-top: 5.8565153734vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-kv .rec-kv-txt {
    padding-top: 80px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-kv .rec-kv-txt {
    padding-top: 44.9780380673px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-kv .rec-kv-txt {
    width: 100%;
    padding-left: 5.3333333333vw;
    padding-right: 5.3333333333vw;
    margin-top: 60vw;
  }
}
main #rec .rec-kv .rec-kv-txt > img {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 768px) {
  main #rec .rec-kv .rec-kv-txt > img {
    width: 60.541727672vw;
    margin-bottom: 3.2942898975vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-kv .rec-kv-txt > img {
    width: 827px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-kv .rec-kv-txt > img {
    width: 464.9604685212px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-kv .rec-kv-txt > img {
    margin-bottom: 45px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-kv .rec-kv-txt > img {
    margin-bottom: 25.3001464129px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-kv .rec-kv-txt > img {
    width: 84.8vw;
  }
}
main #rec .rec-kv .rec-kv-txt ul {
  display: flex;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  main #rec .rec-kv .rec-kv-txt ul {
    justify-content: space-between;
    margin-top: 9.3333333333vw;
  }
}
@media screen and (min-width: 768px) {
  main #rec .rec-kv .rec-kv-txt ul li {
    margin-right: 0.7320644217vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-kv .rec-kv-txt ul li {
    margin-right: 10px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-kv .rec-kv-txt ul li {
    margin-right: 5.6222547584px;
  }
}
@media screen and (min-width: 768px) {
  main #rec .rec-kv .rec-kv-txt ul li:last-child {
    margin-right: 0;
  }
}
main #rec .rec-kv .rec-kv-txt ul li a {
  color: #fff;
  font-weight: 500;
  letter-spacing: 0.1em;
  text-align: center;
  display: block;
  border: 1px solid rgba(255, 255, 255, 0.6);
  box-sizing: border-box;
  position: relative;
}
@media screen and (min-width: 768px) {
  main #rec .rec-kv .rec-kv-txt ul li a {
    font-size: 1.2445095168vw;
    width: 12.4450951684vw;
    height: 3.074670571vw;
    line-height: 2.9282576867vw;
    transition: all 0.3s ease;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-kv .rec-kv-txt ul li a {
    font-size: 17px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-kv .rec-kv-txt ul li a {
    font-size: 9.5578330893px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-kv .rec-kv-txt ul li a {
    width: 170px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-kv .rec-kv-txt ul li a {
    width: 95.5783308931px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-kv .rec-kv-txt ul li a {
    height: 42px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-kv .rec-kv-txt ul li a {
    height: 23.6134699854px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-kv .rec-kv-txt ul li a {
    line-height: 40px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-kv .rec-kv-txt ul li a {
    line-height: 22.4890190337px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-kv .rec-kv-txt ul li a {
    font-size: 3.4666666667vw;
    width: 28vw;
    padding-bottom: 2.6666666667vw;
    border-top: none;
    border-left: none;
    border-right: none;
  }
}
@media screen and (min-width: 768px) {
  main #rec .rec-kv .rec-kv-txt ul li a:hover {
    background-color: rgba(255, 255, 255, 0.5);
    opacity: 1;
  }
}
main #rec .rec-kv .rec-kv-txt ul li a:after {
  content: "";
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url(/assets/img/recruit/arrow.svg);
}
@media screen and (min-width: 768px) {
  main #rec .rec-kv .rec-kv-txt ul li a:after {
    position: absolute;
    top: 50%;
    right: 0;
    width: 0.5856515373vw;
    height: 0.5856515373vw;
    margin-top: -0.2928257687vw;
    margin-right: 1.0980966325vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-kv .rec-kv-txt ul li a:after {
    width: 8px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-kv .rec-kv-txt ul li a:after {
    width: 4.4978038067px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-kv .rec-kv-txt ul li a:after {
    height: 8px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-kv .rec-kv-txt ul li a:after {
    height: 4.4978038067px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-kv .rec-kv-txt ul li a:after {
    margin-top: -4px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-kv .rec-kv-txt ul li a:after {
    margin-top: -2.2489019034px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-kv .rec-kv-txt ul li a:after {
    margin-right: 15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-kv .rec-kv-txt ul li a:after {
    margin-right: 8.4333821376px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-kv .rec-kv-txt ul li a:after {
    display: inline-block;
    vertical-align: top;
    width: 2.1333333333vw;
    height: 2.1333333333vw;
    margin-top: 1.0666666667vw;
    margin-left: 1.3333333333vw;
  }
}
@media screen and (min-width: 768px) {
  main #rec .rec-interview {
    padding-top: 12.4450951684vw;
    padding-bottom: 8.78477306vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-interview {
    padding-top: 170px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-interview {
    padding-top: 95.5783308931px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-interview {
    padding-bottom: 120px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-interview {
    padding-bottom: 67.467057101px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-interview {
    padding-top: 36vw;
    padding-bottom: 21.3333333333vw;
  }
}
@media screen and (min-width: 768px) {
  main #rec .rec-interview h2 {
    margin-bottom: 4.39238653vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-interview h2 {
    margin-bottom: 60px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-interview h2 {
    margin-bottom: 33.7335285505px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-interview h2 {
    margin-bottom: 16vw;
  }
}
main #rec .rec-interview ul {
  display: flex;
  justify-content: space-between;
}
@media screen and (min-width: 768px) {
  main #rec .rec-interview ul {
    margin: 0 auto;
    width: 74.2313323572vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-interview ul {
    width: 1014px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-interview ul {
    width: 570.0966325037px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-interview ul {
    padding-left: 5.3333333333vw;
    padding-right: 5.3333333333vw;
    flex-wrap: wrap;
  }
}
@media screen and (min-width: 768px) {
  main #rec .rec-interview ul li:nth-of-type(2n) {
    margin-top: 2.9282576867vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-interview ul li:nth-of-type(2n) {
    margin-top: 40px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-interview ul li:nth-of-type(2n) {
    margin-top: 22.4890190337px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-interview ul li:nth-of-type(2n) {
    margin-top: 10.6666666667vw;
  }
}
main #rec .rec-interview ul li a {
  display: block;
  text-align: center;
}
@media screen and (min-width: 768px) {
  main #rec .rec-interview ul li a {
    width: 15.8125915081vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-interview ul li a {
    width: 216px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-interview ul li a {
    width: 121.4407027818px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-interview ul li a {
    width: 41.6vw;
  }
}
@media screen and (min-width: 768px) {
  main #rec .rec-interview ul li a:hover > div img {
    transform: scale(1.05);
  }
}
@media screen and (min-width: 768px) {
  main #rec .rec-interview ul li a > div {
    max-height: 20.7174231332vw;
    overflow: hidden;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-interview ul li a > div {
    max-height: 283px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-interview ul li a > div {
    max-height: 159.1098096633px;
  }
}
main #rec .rec-interview ul li a > div img {
  width: 100%;
}
@media screen and (min-width: 768px) {
  main #rec .rec-interview ul li a > div img {
    transition: all 0.3s ease-in-out;
  }
}
main #rec .rec-interview ul li a h3 {
  font-weight: 600;
}
@media screen and (min-width: 768px) {
  main #rec .rec-interview ul li a h3 {
    margin-top: 1.8301610542vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-interview ul li a h3 {
    margin-top: 25px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-interview ul li a h3 {
    margin-top: 14.055636896px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-interview ul li a h3 {
    margin-top: 2.6666666667vw;
  }
}
main #rec .rec-interview ul li a h3 > span {
  display: block;
}
main #rec .rec-interview ul li a h3 > span:first-letter {
  color: #0B8BD5;
}
main #rec .rec-interview ul li a h3 > span.en {
  font-family: "Futura", "Noto Sans JP", "Century Gothic";
}
@media screen and (min-width: 768px) {
  main #rec .rec-interview ul li a h3 > span.en {
    font-size: 0.878477306vw;
    margin-top: 0.7320644217vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-interview ul li a h3 > span.en {
    font-size: 12px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-interview ul li a h3 > span.en {
    font-size: 6.7467057101px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-interview ul li a h3 > span.en {
    margin-top: 10px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-interview ul li a h3 > span.en {
    margin-top: 5.6222547584px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-interview ul li a h3 > span.en {
    font-size: 3.2vw;
    margin-top: 2.6666666667vw;
  }
}
@media screen and (min-width: 768px) {
  main #rec .rec-interview ul li a h3 > span.ja {
    font-size: 1.4641288433vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-interview ul li a h3 > span.ja {
    font-size: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-interview ul li a h3 > span.ja {
    font-size: 11.2445095168px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-interview ul li a h3 > span.ja {
    font-size: 4.2666666667vw;
  }
}
main #rec .rec-course {
  background-color: #F0FAFF;
}
@media screen and (min-width: 768px) {
  main #rec .rec-course {
    padding-top: 10.980966325vw;
    padding-bottom: 10.980966325vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course {
    padding-top: 150px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course {
    padding-top: 84.3338213763px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course {
    padding-bottom: 150px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course {
    padding-bottom: 84.3338213763px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-course {
    padding-top: 26.6666666667vw;
    padding-bottom: 21.3333333333vw;
  }
}
@media screen and (min-width: 768px) {
  main #rec .rec-course .rec-course-ttl {
    margin-bottom: 4.39238653vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course .rec-course-ttl {
    margin-bottom: 60px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course .rec-course-ttl {
    margin-bottom: 33.7335285505px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-course .rec-course-ttl {
    margin-bottom: 21.3333333333vw;
  }
}
main #rec .rec-course .rec-course-ttl h2 {
  position: relative;
  text-align: center;
}
@media screen and (min-width: 768px) {
  main #rec .rec-course .rec-course-ttl h2 {
    margin-bottom: 2.9282576867vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course .rec-course-ttl h2 {
    margin-bottom: 40px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course .rec-course-ttl h2 {
    margin-bottom: 22.4890190337px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-course .rec-course-ttl h2 {
    margin-bottom: 8vw;
  }
}
main #rec .rec-course .rec-course-ttl h2:before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  background-image: url(/assets/img/strip.svg);
  background-size: cover;
  background-position: center;
}
@media screen and (min-width: 768px) {
  main #rec .rec-course .rec-course-ttl h2:before {
    width: 2.635431918vw;
    height: 1.9033674963vw;
    margin-left: -4.7584187408vw;
    margin-top: -1.9033674963vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course .rec-course-ttl h2:before {
    width: 36px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course .rec-course-ttl h2:before {
    width: 20.2401171303px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course .rec-course-ttl h2:before {
    height: 26px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course .rec-course-ttl h2:before {
    height: 14.6178623719px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course .rec-course-ttl h2:before {
    margin-left: -65px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course .rec-course-ttl h2:before {
    margin-left: -36.5446559297px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course .rec-course-ttl h2:before {
    margin-top: -26px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course .rec-course-ttl h2:before {
    margin-top: -14.6178623719px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-course .rec-course-ttl h2:before {
    width: 9.6vw;
    height: 6.9333333333vw;
    margin-left: -20vw;
    margin-top: -6.9333333333vw;
  }
}
main #rec .rec-course .rec-course-ttl h2 > span {
  display: block;
  font-weight: 600;
}
main #rec .rec-course .rec-course-ttl h2 > span.en {
  font-family: "Montserrat", sans-serif;
}
@media screen and (min-width: 768px) {
  main #rec .rec-course .rec-course-ttl h2 > span.en {
    font-size: 1.1713030747vw;
    margin-bottom: 1.4641288433vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course .rec-course-ttl h2 > span.en {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course .rec-course-ttl h2 > span.en {
    font-size: 8.9956076135px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course .rec-course-ttl h2 > span.en {
    margin-bottom: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course .rec-course-ttl h2 > span.en {
    margin-bottom: 11.2445095168px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-course .rec-course-ttl h2 > span.en {
    font-size: 4.8vw;
    margin-bottom: 4.8vw;
  }
}
@media screen and (min-width: 768px) {
  main #rec .rec-course .rec-course-ttl h2 > span.ja {
    font-size: 2.3426061493vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course .rec-course-ttl h2 > span.ja {
    font-size: 32px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course .rec-course-ttl h2 > span.ja {
    font-size: 17.9912152269px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-course .rec-course-ttl h2 > span.ja {
    font-size: 8vw;
  }
}
main #rec .rec-course .rec-course-ttl p {
  text-align: center;
  line-height: 1.875;
}
@media screen and (min-width: 768px) {
  main #rec .rec-course .rec-course-ttl p {
    font-size: 1.1713030747vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course .rec-course-ttl p {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course .rec-course-ttl p {
    font-size: 8.9956076135px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-course .rec-course-ttl p {
    font-size: 4.2666666667vw;
  }
}
@media screen and (min-width: 768px) {
  main #rec .rec-course .rec-course-ttl p strong {
    font-size: 1.4641288433vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course .rec-course-ttl p strong {
    font-size: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course .rec-course-ttl p strong {
    font-size: 11.2445095168px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-course .rec-course-ttl p strong {
    margin-top: 5.3333333333vw;
    font-size: 5.3333333333vw;
    line-height: 1.6;
    display: block;
  }
}
main #rec .rec-course .rec-course-ttl p strong span {
  color: #0B8BD5;
}
main #rec .rec-course .rec-course-box {
  background-color: #fff;
}
@media screen and (min-width: 768px) {
  main #rec .rec-course .rec-course-box {
    width: 69.5461200586vw;
    padding-top: 3.6603221083vw;
    padding-bottom: 4.39238653vw;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course .rec-course-box {
    width: 950px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course .rec-course-box {
    width: 534.1142020498px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course .rec-course-box {
    padding-top: 50px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course .rec-course-box {
    padding-top: 28.1112737921px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course .rec-course-box {
    padding-bottom: 60px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course .rec-course-box {
    padding-bottom: 33.7335285505px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-course .rec-course-box {
    padding-top: 22.6666666667vw;
    padding-bottom: 21.3333333333vw;
  }
}
main #rec .rec-course .rec-course-box h3 {
  text-align: center;
  font-weight: 600;
}
@media screen and (min-width: 768px) {
  main #rec .rec-course .rec-course-box h3 {
    font-size: 1.756954612vw;
    margin-bottom: 1.4641288433vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course .rec-course-box h3 {
    font-size: 24px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course .rec-course-box h3 {
    font-size: 13.4934114202px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course .rec-course-box h3 {
    margin-bottom: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course .rec-course-box h3 {
    margin-bottom: 11.2445095168px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-course .rec-course-box h3 {
    font-size: 6.4vw;
    margin-bottom: 6.6666666667vw;
  }
}
main #rec .rec-course .rec-course-box ul {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
@media screen and (min-width: 768px) {
  main #rec .rec-course .rec-course-box ul {
    margin-bottom: 5.1244509517vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course .rec-course-box ul {
    margin-bottom: 70px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course .rec-course-box ul {
    margin-bottom: 39.3557833089px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-course .rec-course-box ul {
    margin-bottom: 5.3333333333vw;
  }
}
@media screen and (min-width: 768px) {
  main #rec .rec-course .rec-course-box ul:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    background-image: url(/assets/img/recruit/plus.svg);
    background-repeat: no-repeat;
    background-size: cover;
    width: 1.4641288433vw;
    height: 1.4641288433vw;
    margin-left: -0.7320644217vw;
    margin-bottom: -3.074670571vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course .rec-course-box ul:after {
    width: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course .rec-course-box ul:after {
    width: 11.2445095168px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course .rec-course-box ul:after {
    height: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course .rec-course-box ul:after {
    height: 11.2445095168px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course .rec-course-box ul:after {
    margin-left: -10px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course .rec-course-box ul:after {
    margin-left: -5.6222547584px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course .rec-course-box ul:after {
    margin-bottom: -42px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course .rec-course-box ul:after {
    margin-bottom: -23.6134699854px;
  }
}
main #rec .rec-course .rec-course-box ul li {
  border-radius: 50%;
  background-color: #F0FAFF;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  line-height: 1.5;
}
@media screen and (min-width: 768px) {
  main #rec .rec-course .rec-course-box ul li {
    width: 10.980966325vw;
    height: 10.980966325vw;
    margin-right: 1.4641288433vw;
    font-size: 1.1713030747vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course .rec-course-box ul li {
    width: 150px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course .rec-course-box ul li {
    width: 84.3338213763px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course .rec-course-box ul li {
    height: 150px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course .rec-course-box ul li {
    height: 84.3338213763px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course .rec-course-box ul li {
    margin-right: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course .rec-course-box ul li {
    margin-right: 11.2445095168px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course .rec-course-box ul li {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course .rec-course-box ul li {
    font-size: 8.9956076135px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-course .rec-course-box ul li {
    font-size: 3.7333333333vw;
    width: 29.3333333333vw;
    height: 29.3333333333vw;
    margin-right: 2.6666666667vw;
    line-height: 1.714;
  }
}
main #rec .rec-course .rec-course-box ul li:last-child {
  margin-right: 0;
}
main #rec .rec-course .rec-course-box .rec-course-box-img {
  text-align: center;
}
@media screen and (min-width: 768px) {
  main #rec .rec-course .rec-course-box .rec-course-box-img img {
    width: 61.859443631vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course .rec-course-box .rec-course-box-img img {
    width: 845px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course .rec-course-box .rec-course-box-img img {
    width: 475.0805270864px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-course .rec-course-box .rec-course-box-img img {
    width: 100%;
  }
}
main #rec .rec-course .rec-course-txt {
  position: relative;
}
@media screen and (min-width: 768px) {
  main #rec .rec-course .rec-course-txt {
    margin-top: 6.9546120059vw;
    margin-bottom: 6.9546120059vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course .rec-course-txt {
    margin-top: 95px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course .rec-course-txt {
    margin-top: 53.411420205px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course .rec-course-txt {
    margin-bottom: 95px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course .rec-course-txt {
    margin-bottom: 53.411420205px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-course .rec-course-txt {
    padding-top: 26.6666666667vw;
    margin-bottom: 26.6666666667vw;
  }
}
main #rec .rec-course .rec-course-txt:before, main #rec .rec-course .rec-course-txt:after {
  content: "";
  position: absolute;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  background-image: url(/assets/img/recruit/triangle.svg);
  left: 50%;
}
@media screen and (min-width: 768px) {
  main #rec .rec-course .rec-course-txt:before, main #rec .rec-course .rec-course-txt:after {
    width: 1.5373352855vw;
    height: 2.196193265vw;
    margin-left: -0.7686676428vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course .rec-course-txt:before, main #rec .rec-course .rec-course-txt:after {
    width: 21px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course .rec-course-txt:before, main #rec .rec-course .rec-course-txt:after {
    width: 11.8067349927px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course .rec-course-txt:before, main #rec .rec-course .rec-course-txt:after {
    height: 30px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course .rec-course-txt:before, main #rec .rec-course .rec-course-txt:after {
    height: 16.8667642753px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course .rec-course-txt:before, main #rec .rec-course .rec-course-txt:after {
    margin-left: -10.5px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course .rec-course-txt:before, main #rec .rec-course .rec-course-txt:after {
    margin-left: -5.9033674963px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-course .rec-course-txt:before, main #rec .rec-course .rec-course-txt:after {
    width: 5.6vw;
    height: 8vw;
    margin-left: -2.8vw;
  }
}
main #rec .rec-course .rec-course-txt:before {
  top: 0;
}
@media screen and (min-width: 768px) {
  main #rec .rec-course .rec-course-txt:before {
    margin-top: -3.6603221083vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course .rec-course-txt:before {
    margin-top: -50px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course .rec-course-txt:before {
    margin-top: -28.1112737921px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-course .rec-course-txt:before {
    margin-top: 10.6666666667vw;
  }
}
main #rec .rec-course .rec-course-txt:after {
  bottom: 0;
}
@media screen and (min-width: 768px) {
  main #rec .rec-course .rec-course-txt:after {
    margin-bottom: -3.6603221083vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course .rec-course-txt:after {
    margin-bottom: -50px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course .rec-course-txt:after {
    margin-bottom: -28.1112737921px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-course .rec-course-txt:after {
    margin-bottom: -14.6666666667vw;
  }
}
main #rec .rec-course .rec-course-txt p {
  text-align: center;
  line-height: 1.72;
}
@media screen and (min-width: 768px) {
  main #rec .rec-course .rec-course-txt p {
    font-size: 1.6105417277vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course .rec-course-txt p {
    font-size: 22px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course .rec-course-txt p {
    font-size: 12.3689604685px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-course .rec-course-txt p {
    font-size: 5.3333333333vw;
    line-height: 1.7;
  }
}
main #rec .rec-course .rec-course-txt p span {
  color: #0B8BD5;
}
@media screen and (min-width: 768px) {
  main #rec .rec-course .rec-course-flex {
    display: flex;
    justify-content: center;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-course .rec-course-flex {
    padding-left: 5.3333333333vw;
    padding-right: 5.3333333333vw;
  }
}
main #rec .rec-course .rec-course-flex dl {
  background-color: #fff;
}
@media screen and (min-width: 768px) {
  main #rec .rec-course .rec-course-flex dl {
    padding-top: 2.5622254758vw;
    padding-bottom: 2.7086383602vw;
    padding-left: 3.513909224vw;
    padding-right: 3.513909224vw;
    margin-right: 1.4641288433vw;
    width: 34.0409956076vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course .rec-course-flex dl {
    padding-top: 35px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course .rec-course-flex dl {
    padding-top: 19.6778916545px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course .rec-course-flex dl {
    padding-bottom: 37px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course .rec-course-flex dl {
    padding-bottom: 20.8023426061px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course .rec-course-flex dl {
    padding-left: 48px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course .rec-course-flex dl {
    padding-left: 26.9868228404px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course .rec-course-flex dl {
    padding-right: 48px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course .rec-course-flex dl {
    padding-right: 26.9868228404px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course .rec-course-flex dl {
    margin-right: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course .rec-course-flex dl {
    margin-right: 11.2445095168px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course .rec-course-flex dl {
    width: 465px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course .rec-course-flex dl {
    width: 261.4348462665px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-course .rec-course-flex dl {
    padding-top: 9.3333333333vw;
    padding-bottom: 10.6666666667vw;
    padding-left: 5.3333333333vw;
    padding-right: 5.3333333333vw;
    margin-bottom: 5.3333333333vw;
  }
}
@media screen and (min-width: 768px) {
  main #rec .rec-course .rec-course-flex dl:last-child {
    margin-right: 0;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-course .rec-course-flex dl:last-child {
    margin-bottom: 0;
  }
}
main #rec .rec-course .rec-course-flex dl dt {
  color: #0B8BD5;
  text-align: center;
  font-weight: 600;
}
@media screen and (min-width: 768px) {
  main #rec .rec-course .rec-course-flex dl dt {
    font-size: 1.756954612vw;
    margin-bottom: 1.4641288433vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course .rec-course-flex dl dt {
    font-size: 24px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course .rec-course-flex dl dt {
    font-size: 13.4934114202px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course .rec-course-flex dl dt {
    margin-bottom: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course .rec-course-flex dl dt {
    margin-bottom: 11.2445095168px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-course .rec-course-flex dl dt {
    font-size: 6.4vw;
    margin-bottom: 5.3333333333vw;
  }
}
main #rec .rec-course .rec-course-flex dl dd p {
  line-height: 1.8;
}
@media screen and (min-width: 768px) {
  main #rec .rec-course .rec-course-flex dl dd p {
    font-size: 1.1713030747vw;
    min-height: 10.541727672vw;
    margin-bottom: 1.4641288433vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course .rec-course-flex dl dd p {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course .rec-course-flex dl dd p {
    font-size: 8.9956076135px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course .rec-course-flex dl dd p {
    min-height: 144px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course .rec-course-flex dl dd p {
    min-height: 80.9604685212px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course .rec-course-flex dl dd p {
    margin-bottom: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course .rec-course-flex dl dd p {
    margin-bottom: 11.2445095168px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-course .rec-course-flex dl dd p {
    font-size: 4.2666666667vw;
    margin-bottom: 5.3333333333vw;
  }
}
main #rec .rec-course .rec-course-flex dl dd img {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 768px) {
  main #rec .rec-course .rec-course-flex dl dd img.img-01 {
    width: 10.0292825769vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course .rec-course-flex dl dd img.img-01 {
    width: 137px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course .rec-course-flex dl dd img.img-01 {
    width: 77.0248901903px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-course .rec-course-flex dl dd img.img-01 {
    width: 35.7333333333vw;
  }
}
@media screen and (min-width: 768px) {
  main #rec .rec-course .rec-course-flex dl dd img.img-02 {
    width: 11.2737920937vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-course .rec-course-flex dl dd img.img-02 {
    width: 154px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-course .rec-course-flex dl dd img.img-02 {
    width: 86.5827232796px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-course .rec-course-flex dl dd img.img-02 {
    width: 40.5333333333vw;
  }
}
@media screen and (min-width: 768px) {
  main #rec .rec-apply {
    padding-top: 10.980966325vw;
    padding-bottom: 8.78477306vw;
    width: 50.5124450952vw;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-apply {
    padding-top: 150px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-apply {
    padding-top: 84.3338213763px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-apply {
    padding-bottom: 120px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-apply {
    padding-bottom: 67.467057101px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-apply {
    width: 690px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-apply {
    width: 387.9355783309px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-apply {
    padding-top: 26.6666666667vw;
    padding-bottom: 26.6666666667vw;
    padding-left: 5.3333333333vw;
    padding-right: 5.3333333333vw;
  }
}
@media screen and (min-width: 768px) {
  main #rec .rec-apply .rec-apply-ttl {
    border-bottom: 1px solid #09589B;
    padding-bottom: 3.6603221083vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-apply .rec-apply-ttl {
    padding-bottom: 50px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-apply .rec-apply-ttl {
    padding-bottom: 28.1112737921px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-apply .rec-apply-ttl {
    border-bottom: 1px solid #09589B;
    padding-bottom: 14.6666666667vw;
  }
}
main #rec .rec-apply .rec-apply-ttl h2 {
  position: relative;
  text-align: center;
}
main #rec .rec-apply .rec-apply-ttl h2:before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  background-image: url(/assets/img/strip.svg);
  background-size: cover;
  background-position: center;
}
@media screen and (min-width: 768px) {
  main #rec .rec-apply .rec-apply-ttl h2:before {
    width: 2.635431918vw;
    height: 1.9033674963vw;
    margin-left: -10.4685212299vw;
    margin-top: -2.196193265vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-apply .rec-apply-ttl h2:before {
    width: 36px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-apply .rec-apply-ttl h2:before {
    width: 20.2401171303px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-apply .rec-apply-ttl h2:before {
    height: 26px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-apply .rec-apply-ttl h2:before {
    height: 14.6178623719px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-apply .rec-apply-ttl h2:before {
    margin-left: -143px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-apply .rec-apply-ttl h2:before {
    margin-left: -80.3982430454px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-apply .rec-apply-ttl h2:before {
    margin-top: -30px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-apply .rec-apply-ttl h2:before {
    margin-top: -16.8667642753px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-apply .rec-apply-ttl h2:before {
    left: 0;
    width: 9.6vw;
    height: 6.9333333333vw;
    margin-left: 8vw;
    margin-top: -6.9333333333vw;
  }
}
main #rec .rec-apply .rec-apply-ttl h2 > span {
  display: block;
  font-weight: 600;
}
main #rec .rec-apply .rec-apply-ttl h2 > span.en {
  font-family: "Montserrat", sans-serif;
}
@media screen and (min-width: 768px) {
  main #rec .rec-apply .rec-apply-ttl h2 > span.en {
    font-size: 1.1713030747vw;
    margin-bottom: 1.4641288433vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-apply .rec-apply-ttl h2 > span.en {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-apply .rec-apply-ttl h2 > span.en {
    font-size: 8.9956076135px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-apply .rec-apply-ttl h2 > span.en {
    margin-bottom: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-apply .rec-apply-ttl h2 > span.en {
    margin-bottom: 11.2445095168px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-apply .rec-apply-ttl h2 > span.en {
    font-size: 4.8vw;
    margin-bottom: 4.8vw;
  }
}
@media screen and (min-width: 768px) {
  main #rec .rec-apply .rec-apply-ttl h2 > span.ja {
    font-size: 2.3426061493vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-apply .rec-apply-ttl h2 > span.ja {
    font-size: 32px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-apply .rec-apply-ttl h2 > span.ja {
    font-size: 17.9912152269px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-apply .rec-apply-ttl h2 > span.ja {
    font-size: 8vw;
  }
}
main #rec .rec-apply .rec-apply-list dl {
  border-bottom: 1px solid #DDDDDD;
}
@media screen and (min-width: 768px) {
  main #rec .rec-apply .rec-apply-list dl {
    display: flex;
    font-size: 1.0980966325vw;
    line-height: 1.8;
    padding-top: 1.6105417277vw;
    padding-bottom: 1.6105417277vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-apply .rec-apply-list dl {
    font-size: 15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-apply .rec-apply-list dl {
    font-size: 8.4333821376px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-apply .rec-apply-list dl {
    padding-top: 22px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-apply .rec-apply-list dl {
    padding-top: 12.3689604685px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-apply .rec-apply-list dl {
    padding-bottom: 22px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-apply .rec-apply-list dl {
    padding-bottom: 12.3689604685px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-apply .rec-apply-list dl {
    padding-top: 5.3333333333vw;
    padding-bottom: 5.3333333333vw;
  }
}
main #rec .rec-apply .rec-apply-list dl dt {
  font-weight: 600;
}
@media screen and (min-width: 768px) {
  main #rec .rec-apply .rec-apply-list dl dt {
    width: 10.6149341142vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-apply .rec-apply-list dl dt {
    width: 145px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-apply .rec-apply-list dl dt {
    width: 81.5226939971px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-apply .rec-apply-list dl dt {
    font-size: 4.2666666667vw;
    margin-bottom: 5.3333333333vw;
  }
}
@media screen and (min-width: 768px) {
  main #rec .rec-apply .rec-apply-list dl dd {
    width: 39.897510981vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-apply .rec-apply-list dl dd {
    width: 545px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-apply .rec-apply-list dl dd {
    width: 306.4128843338px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-apply .rec-apply-list dl dd {
    font-size: 4vw;
    line-height: 1.8;
  }
}
main #rec .rec-apply .rec-apply-list dl dd > span {
  color: #888888;
}
@media screen and (min-width: 768px) {
  main #rec .rec-apply .rec-apply-list dl dd > span {
    font-size: 0.9516837482vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-apply .rec-apply-list dl dd > span {
    font-size: 13px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-apply .rec-apply-list dl dd > span {
    font-size: 7.3089311859px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-apply .rec-apply-list dl dd > span {
    font-size: 3.4666666667vw;
    display: block;
  }
}
main #rec .rec-apply .rec-apply-list dl dd a {
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  -webkit-animation: gradientReverse 0.3s ease;
          animation: gradientReverse 0.3s ease;
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both;
  -webkit-animation-iteration-count: 1;
          animation-iteration-count: 1;
  font-size: 14px;
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  main #rec .rec-apply .rec-apply-list dl dd a {
    transition: all 0.3s ease;
    font-size: 1.0248901903vw;
    width: 11.9326500732vw;
    height: 3.6603221083vw;
    border-radius: 0.2928257687vw;
    margin-top: 1.4641288433vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-apply .rec-apply-list dl dd a {
    font-size: 14px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-apply .rec-apply-list dl dd a {
    font-size: 7.8711566618px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-apply .rec-apply-list dl dd a {
    width: 163px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-apply .rec-apply-list dl dd a {
    width: 91.6427525622px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-apply .rec-apply-list dl dd a {
    height: 50px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-apply .rec-apply-list dl dd a {
    height: 28.1112737921px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-apply .rec-apply-list dl dd a {
    border-radius: 4px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-apply .rec-apply-list dl dd a {
    border-radius: 2.2489019034px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-apply .rec-apply-list dl dd a {
    margin-top: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-apply .rec-apply-list dl dd a {
    margin-top: 11.2445095168px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-apply .rec-apply-list dl dd a {
    font-weight: 500;
    font-size: 3.7333333333vw;
    width: 43.4666666667vw;
    height: 13.3333333333vw;
    border-radius: 1.0666666667vw;
    margin-top: 8vw;
    margin-bottom: 5.3333333333vw;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (min-width: 768px) {
  main #rec .rec-apply .rec-apply-list dl dd a:hover {
    opacity: 1;
    -webkit-animation: gradient 0.3s ease;
            animation: gradient 0.3s ease;
    -webkit-animation-fill-mode: both;
            animation-fill-mode: both;
    -webkit-animation-iteration-count: 1;
            animation-iteration-count: 1;
  }
}
main #rec .rec-apply .rec-apply-list dl dd a img {
  display: inline-block;
  vertical-align: middle;
}
@media screen and (min-width: 768px) {
  main #rec .rec-apply .rec-apply-list dl dd a img {
    width: 1.6105417277vw;
    margin-right: 0.878477306vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-apply .rec-apply-list dl dd a img {
    width: 22px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-apply .rec-apply-list dl dd a img {
    width: 12.3689604685px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-apply .rec-apply-list dl dd a img {
    margin-right: 12px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-apply .rec-apply-list dl dd a img {
    margin-right: 6.7467057101px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-apply .rec-apply-list dl dd a img {
    margin-right: 3.2vw;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-bottom {
    margin-bottom: -24vw;
  }
}
main #rec .rec-bottom .rec-bottom-img {
  position: relative;
}
@media screen and (min-width: 768px) {
  main #rec .rec-bottom .rec-bottom-img {
    width: 100vw;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-bottom .rec-bottom-img {
    width: 1366px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-bottom .rec-bottom-img {
    width: 768px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1366px) {
  main #rec .rec-bottom .rec-bottom-img {
    overflow: hidden;
  }
}
@media screen and (min-width: 768px) {
  main #rec .rec-bottom .rec-bottom-img img {
    width: 121.2298682284vw;
    margin-left: -10.6149341142vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-bottom .rec-bottom-img img {
    width: 1656px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-bottom .rec-bottom-img img {
    width: 931.0453879941px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-bottom .rec-bottom-img img {
    margin-left: -145px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-bottom .rec-bottom-img img {
    margin-left: -81.5226939971px;
  }
}
@media screen and (min-width: 768px) {
  main #rec .rec-bottom .rec-bottom-img ul {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-bottom .rec-bottom-img ul li {
    background-size: cover;
    background-image: url(/assets/img/recruit/bg-02.sp.jpg);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
  }
}
@media screen and (min-width: 768px) {
  main #rec .rec-bottom .rec-bottom-img ul li:first-child {
    margin-right: 32.9428989751vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-bottom .rec-bottom-img ul li:first-child {
    margin-right: 450px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-bottom .rec-bottom-img ul li:first-child {
    margin-right: 253.0014641288px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-bottom .rec-bottom-img ul li:first-child {
    background-image: url(/assets/img/recruit/bg-01.sp.jpg);
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-bottom .rec-bottom-img ul li {
    width: 100%;
    height: 73.0666666667vw;
  }
}
main #rec .rec-bottom .rec-bottom-img ul li h3 {
  text-align: center;
}
main #rec .rec-bottom .rec-bottom-img ul li h3 > span {
  display: block;
  font-weight: 600;
}
main #rec .rec-bottom .rec-bottom-img ul li h3 > span.en {
  font-family: "Montserrat", sans-serif;
}
@media screen and (min-width: 768px) {
  main #rec .rec-bottom .rec-bottom-img ul li h3 > span.en {
    font-size: 2.4890190337vw;
    margin-bottom: 1.4641288433vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-bottom .rec-bottom-img ul li h3 > span.en {
    font-size: 34px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-bottom .rec-bottom-img ul li h3 > span.en {
    font-size: 19.1156661786px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-bottom .rec-bottom-img ul li h3 > span.en {
    margin-bottom: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-bottom .rec-bottom-img ul li h3 > span.en {
    margin-bottom: 11.2445095168px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-bottom .rec-bottom-img ul li h3 > span.en {
    font-size: 11.2vw;
    margin-bottom: 4vw;
  }
}
@media screen and (min-width: 768px) {
  main #rec .rec-bottom .rec-bottom-img ul li h3 > span.ja {
    font-size: 1.0980966325vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-bottom .rec-bottom-img ul li h3 > span.ja {
    font-size: 15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-bottom .rec-bottom-img ul li h3 > span.ja {
    font-size: 8.4333821376px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-bottom .rec-bottom-img ul li h3 > span.ja {
    font-size: 4vw;
  }
}
main #rec .rec-bottom .rec-bottom-img ul li a {
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  -webkit-animation: gradientReverse 0.3s ease;
          animation: gradientReverse 0.3s ease;
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both;
  -webkit-animation-iteration-count: 1;
          animation-iteration-count: 1;
  letter-spacing: 0.1em;
  font-weight: 500;
  position: relative;
  font-family: "Montserrat", sans-serif;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 768px) {
  main #rec .rec-bottom .rec-bottom-img ul li a {
    transition: all 0.3s ease;
    font-size: 1.0980966325vw;
    width: 13.5431918009vw;
    height: 3.6603221083vw;
    border-radius: 0.2928257687vw;
    margin-top: 1.4641288433vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-bottom .rec-bottom-img ul li a {
    font-size: 15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-bottom .rec-bottom-img ul li a {
    font-size: 8.4333821376px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-bottom .rec-bottom-img ul li a {
    width: 185px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-bottom .rec-bottom-img ul li a {
    width: 104.0117130307px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-bottom .rec-bottom-img ul li a {
    height: 50px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-bottom .rec-bottom-img ul li a {
    height: 28.1112737921px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-bottom .rec-bottom-img ul li a {
    border-radius: 4px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-bottom .rec-bottom-img ul li a {
    border-radius: 2.2489019034px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-bottom .rec-bottom-img ul li a {
    margin-top: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-bottom .rec-bottom-img ul li a {
    margin-top: 11.2445095168px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-bottom .rec-bottom-img ul li a {
    font-size: 4vw;
    width: 48vw;
    height: 13.3333333333vw;
    border-radius: 1.0666666667vw;
    margin-top: 6.6666666667vw;
  }
}
@media screen and (min-width: 768px) {
  main #rec .rec-bottom .rec-bottom-img ul li a:hover {
    opacity: 1;
    -webkit-animation: gradient 0.3s ease;
            animation: gradient 0.3s ease;
    -webkit-animation-fill-mode: both;
            animation-fill-mode: both;
    -webkit-animation-iteration-count: 1;
            animation-iteration-count: 1;
  }
}
@media screen and (min-width: 768px) {
  main #rec .rec-bottom .rec-bottom-img ul li a:hover:after {
    width: 2.5622254758vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-bottom .rec-bottom-img ul li a:hover:after {
    width: 35px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-bottom .rec-bottom-img ul li a:hover:after {
    width: 19.6778916545px;
  }
}
main #rec .rec-bottom .rec-bottom-img ul li a:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  background-color: #fff;
  transition: all 0.3s ease;
}
@media screen and (min-width: 768px) {
  main #rec .rec-bottom .rec-bottom-img ul li a:after {
    width: 2.196193265vw;
    height: 0.0732064422vw;
    margin-top: -0.0366032211vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-bottom .rec-bottom-img ul li a:after {
    width: 30px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-bottom .rec-bottom-img ul li a:after {
    width: 16.8667642753px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-bottom .rec-bottom-img ul li a:after {
    height: 1px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-bottom .rec-bottom-img ul li a:after {
    height: 0.5622254758px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-bottom .rec-bottom-img ul li a:after {
    margin-top: -0.5px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-bottom .rec-bottom-img ul li a:after {
    margin-top: -0.2811127379px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-bottom .rec-bottom-img ul li a:after {
    width: 8vw;
    height: 0.2666666667vw;
    margin-top: -0.1333333333vw;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-profile {
    margin-top: -5.3333333333vw;
  }
}
main #rec .rec-profile .rec-profile-head {
  position: relative;
}
@media screen and (min-width: 768px) {
  main #rec .rec-profile .rec-profile-head {
    width: 66.6178623719vw;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 7.3206442167vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-profile .rec-profile-head {
    width: 910px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-profile .rec-profile-head {
    width: 511.6251830161px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-profile .rec-profile-head {
    margin-bottom: 100px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-profile .rec-profile-head {
    margin-bottom: 56.2225475842px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-profile .rec-profile-head {
    margin-bottom: 16vw;
  }
}
@media screen and (min-width: 768px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-txt {
    padding-top: 6.2225475842vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-txt {
    padding-top: 85px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-txt {
    padding-top: 47.7891654466px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-txt {
    padding-left: 5.3333333333vw;
    padding-right: 5.3333333333vw;
  }
}
main #rec .rec-profile .rec-profile-head .rec-profile-head-txt h2 {
  position: relative;
}
@media screen and (min-width: 768px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-txt h2 {
    margin-bottom: 1.4641288433vw;
    padding-bottom: 1.8301610542vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-txt h2 {
    margin-bottom: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-txt h2 {
    margin-bottom: 11.2445095168px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-txt h2 {
    padding-bottom: 25px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-txt h2 {
    padding-bottom: 14.055636896px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-txt h2 {
    margin-bottom: 5.3333333333vw;
    padding-bottom: 6.6666666667vw;
  }
}
main #rec .rec-profile .rec-profile-head .rec-profile-head-txt h2:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  height: 1px;
  background-color: #198BD5;
}
@media screen and (min-width: 768px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-txt h2:after {
    width: 50.5124450952vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-txt h2:after {
    width: 690px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-txt h2:after {
    width: 387.9355783309px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-txt h2:after {
    width: 100%;
  }
}
main #rec .rec-profile .rec-profile-head .rec-profile-head-txt h2 > span {
  display: block;
  font-weight: 600;
}
main #rec .rec-profile .rec-profile-head .rec-profile-head-txt h2 > span:first-letter {
  color: #1C99D8;
}
main #rec .rec-profile .rec-profile-head .rec-profile-head-txt h2 > span.en {
  font-family: "Futura", "Noto Sans JP", "Century Gothic";
}
@media screen and (min-width: 768px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-txt h2 > span.en {
    font-size: 1.1713030747vw;
    margin-bottom: 0.5856515373vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-txt h2 > span.en {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-txt h2 > span.en {
    font-size: 8.9956076135px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-txt h2 > span.en {
    margin-bottom: 8px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-txt h2 > span.en {
    margin-bottom: 4.4978038067px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-txt h2 > span.en {
    font-size: 4.2666666667vw;
    margin-bottom: 2.6666666667vw;
  }
}
@media screen and (min-width: 768px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-txt h2 > span.ja {
    font-size: 3.6603221083vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-txt h2 > span.ja {
    font-size: 50px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-txt h2 > span.ja {
    font-size: 28.1112737921px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-txt h2 > span.ja {
    font-size: 9.6vw;
  }
}
main #rec .rec-profile .rec-profile-head .rec-profile-head-txt h2 > span.ja:first-letter {
  color: #0B8BD5;
}
main #rec .rec-profile .rec-profile-head .rec-profile-head-txt p {
  line-height: 1.5;
  display: flex;
}
@media screen and (min-width: 768px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-txt p {
    margin-bottom: 5.1244509517vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-txt p {
    margin-bottom: 70px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-txt p {
    margin-bottom: 39.3557833089px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-txt p {
    line-height: 1.8;
  }
}
@media screen and (min-width: 768px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-txt p.wide {
    margin-bottom: 8.2723279649vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-txt p.wide {
    margin-bottom: 113px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-txt p.wide {
    margin-bottom: 63.5314787701px;
  }
}
@media screen and (min-width: 768px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-txt p.wide2 {
    margin-bottom: 6.9546120059vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-txt p.wide2 {
    margin-bottom: 95px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-txt p.wide2 {
    margin-bottom: 53.411420205px;
  }
}
@media screen and (min-width: 768px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-txt p > span {
    font-size: 1.1713030747vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-txt p > span {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-txt p > span {
    font-size: 8.9956076135px;
  }
}
main #rec .rec-profile .rec-profile-head .rec-profile-head-txt p > span:first-child {
  font-weight: 600;
}
@media screen and (min-width: 768px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-txt p > span:first-child {
    width: 3.4407027818vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-txt p > span:first-child {
    width: 47px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-txt p > span:first-child {
    width: 26.4245973646px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-txt p > span:first-child {
    width: 12.5333333333vw;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-catch {
    padding-left: 5.3333333333vw;
    padding-right: 5.3333333333vw;
  }
}
main #rec .rec-profile .rec-profile-head .rec-profile-catch dl dt {
  font-weight: 600;
  line-height: 1.25;
}
@media screen and (min-width: 768px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-catch dl dt {
    font-size: 2.9282576867vw;
    margin-bottom: 1.3909224012vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-catch dl dt {
    font-size: 40px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-catch dl dt {
    font-size: 22.4890190337px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-catch dl dt {
    margin-bottom: 19px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-catch dl dt {
    margin-bottom: 10.682284041px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-catch dl dt {
    font-size: 9.6vw;
    line-height: 1.5;
    margin-bottom: 5.3333333333vw;
  }
}
main #rec .rec-profile .rec-profile-head .rec-profile-catch dl dt:first-letter {
  color: #0B8BD5;
}
main #rec .rec-profile .rec-profile-head .rec-profile-catch dl dd {
  line-height: 1.8;
}
@media screen and (min-width: 768px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-catch dl dd {
    font-size: 1.1713030747vw;
    width: 66.6178623719vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-catch dl dd {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-catch dl dd {
    font-size: 8.9956076135px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-catch dl dd {
    width: 910px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-catch dl dd {
    width: 511.6251830161px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-catch dl dd {
    font-size: 4.2666666667vw;
  }
}
@media screen and (min-width: 768px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-img {
    position: absolute;
    top: 0;
    right: 0;
    margin-right: -27.4524158126vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-img {
    margin-right: -375px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-img {
    margin-right: -210.8345534407px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1366px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-img {
    overflow: hidden;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-img {
    margin-right: -32vw;
    margin-left: -32vw;
    margin-top: 10.6666666667vw;
    margin-bottom: 10.6666666667vw;
  }
}
@media screen and (min-width: 768px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-img img {
    width: 67.9355783309vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-img img {
    width: 928px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-img img {
    width: 521.7452415813px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-profile .rec-profile-head .rec-profile-head-img img {
    width: 100%;
  }
}
@media screen and (min-width: 768px) {
  main #rec .rec-profile .rec-profile-interview {
    width: 81.9912152269vw;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-profile .rec-profile-interview {
    width: 1120px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-profile .rec-profile-interview {
    width: 629.6925329429px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-profile .rec-profile-interview {
    margin-bottom: 26.6666666667vw;
  }
}
@media screen and (min-width: 768px) {
  main #rec .rec-profile .rec-profile-interview dl {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 8.4187408492vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-profile .rec-profile-interview dl {
    margin-bottom: 115px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-profile .rec-profile-interview dl {
    margin-bottom: 64.6559297218px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-profile .rec-profile-interview dl {
    margin-bottom: 16vw;
  }
}
main #rec .rec-profile .rec-profile-interview dl:last-child {
  margin-bottom: 0;
}
@media screen and (min-width: 768px) {
  main #rec .rec-profile .rec-profile-interview dl:nth-of-type(2n) {
    flex-direction: row-reverse;
  }
}
@media screen and (min-width: 768px) {
  main #rec .rec-profile .rec-profile-interview dl:nth-of-type(2n) dt {
    margin-left: 0;
    margin-right: -9.1508052709vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-profile .rec-profile-interview dl:nth-of-type(2n) dt {
    margin-right: -125px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-profile .rec-profile-interview dl:nth-of-type(2n) dt {
    margin-right: -70.2781844802px;
  }
}
main #rec .rec-profile .rec-profile-interview dl:nth-of-type(2n) dd h3:after {
  margin-left: 0;
  margin-right: 6.3689604685vw;
}
@media screen and (min-width: 1366px) {
  main #rec .rec-profile .rec-profile-interview dl:nth-of-type(2n) dd h3:after {
    margin-right: 87px;
  }
}
@media screen and (max-width: 768px) {
  main #rec .rec-profile .rec-profile-interview dl:nth-of-type(2n) dd h3:after {
    margin-right: 48.9136163982px;
  }
}
@media screen and (min-width: 768px) {
  main #rec .rec-profile .rec-profile-interview dl dt {
    margin-left: -9.1508052709vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-profile .rec-profile-interview dl dt {
    margin-left: -125px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-profile .rec-profile-interview dl dt {
    margin-left: -70.2781844802px;
  }
}
@media screen and (min-width: 768px) {
  main #rec .rec-profile .rec-profile-interview dl dt img {
    width: 42.1669106881vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-profile .rec-profile-interview dl dt img {
    width: 576px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-profile .rec-profile-interview dl dt img {
    width: 323.8418740849px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-profile .rec-profile-interview dl dt img {
    width: 100%;
  }
}
@media screen and (min-width: 768px) {
  main #rec .rec-profile .rec-profile-interview dl dd {
    width: 44.6559297218vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-profile .rec-profile-interview dl dd {
    width: 610px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-profile .rec-profile-interview dl dd {
    width: 342.9575402635px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-profile .rec-profile-interview dl dd {
    margin-top: 12vw;
    padding-left: 5.3333333333vw;
    padding-right: 5.3333333333vw;
  }
}
main #rec .rec-profile .rec-profile-interview dl dd h3 {
  position: relative;
  display: flex;
  align-items: center;
}
@media screen and (min-width: 768px) {
  main #rec .rec-profile .rec-profile-interview dl dd h3 {
    padding-bottom: 1.8301610542vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-profile .rec-profile-interview dl dd h3 {
    padding-bottom: 25px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-profile .rec-profile-interview dl dd h3 {
    padding-bottom: 14.055636896px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-profile .rec-profile-interview dl dd h3 {
    padding-bottom: 1.8301610542vw;
    margin-bottom: 5.3333333333vw;
  }
}
@media screen and (max-width: 767px) and (min-width: 1366px) {
  main #rec .rec-profile .rec-profile-interview dl dd h3 {
    padding-bottom: 25px;
  }
}
@media screen and (max-width: 767px) and (max-width: 768px) {
  main #rec .rec-profile .rec-profile-interview dl dd h3 {
    padding-bottom: 14.055636896px;
  }
}
main #rec .rec-profile .rec-profile-interview dl dd h3:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  height: 1px;
  background-color: #198BD5;
  z-index: -1;
}
@media screen and (min-width: 768px) {
  main #rec .rec-profile .rec-profile-interview dl dd h3:after {
    width: 50.5124450952vw;
    margin-left: -6.3689604685vw;
    margin-bottom: 0.3660322108vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-profile .rec-profile-interview dl dd h3:after {
    width: 690px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-profile .rec-profile-interview dl dd h3:after {
    width: 387.9355783309px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-profile .rec-profile-interview dl dd h3:after {
    margin-left: -87px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-profile .rec-profile-interview dl dd h3:after {
    margin-left: -48.9136163982px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-profile .rec-profile-interview dl dd h3:after {
    margin-bottom: 5px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-profile .rec-profile-interview dl dd h3:after {
    margin-bottom: 2.8111273792px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-profile .rec-profile-interview dl dd h3:after {
    width: 100%;
  }
}
main #rec .rec-profile .rec-profile-interview dl dd h3 > span {
  display: block;
}
main #rec .rec-profile .rec-profile-interview dl dd h3 > span.num {
  font-family: "Futura", "Noto Sans JP", "Century Gothic";
  color: #1C99D8;
  font-style: oblique;
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  main #rec .rec-profile .rec-profile-interview dl dd h3 > span.num {
    font-size: 5.1244509517vw;
    width: 5.8565153734vw;
    margin-right: 1.0980966325vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-profile .rec-profile-interview dl dd h3 > span.num {
    font-size: 70px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-profile .rec-profile-interview dl dd h3 > span.num {
    font-size: 39.3557833089px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-profile .rec-profile-interview dl dd h3 > span.num {
    width: 80px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-profile .rec-profile-interview dl dd h3 > span.num {
    width: 44.9780380673px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-profile .rec-profile-interview dl dd h3 > span.num {
    margin-right: 15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-profile .rec-profile-interview dl dd h3 > span.num {
    margin-right: 8.4333821376px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-profile .rec-profile-interview dl dd h3 > span.num {
    font-size: 17.6vw;
    width: 24vw;
  }
}
main #rec .rec-profile .rec-profile-interview dl dd h3 > span.txt {
  font-weight: 600;
  line-height: 1.3;
}
@media screen and (min-width: 768px) {
  main #rec .rec-profile .rec-profile-interview dl dd h3 > span.txt {
    font-size: 1.6105417277vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-profile .rec-profile-interview dl dd h3 > span.txt {
    font-size: 22px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-profile .rec-profile-interview dl dd h3 > span.txt {
    font-size: 12.3689604685px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-profile .rec-profile-interview dl dd h3 > span.txt {
    font-size: 5.3333333333vw;
    width: 65.3333333333vw;
    line-height: 1.5;
  }
}
main #rec .rec-profile .rec-profile-interview dl dd p {
  line-height: 1.8;
}
@media screen and (min-width: 768px) {
  main #rec .rec-profile .rec-profile-interview dl dd p {
    font-size: 1.1713030747vw;
    margin-top: 1.4641288433vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-profile .rec-profile-interview dl dd p {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-profile .rec-profile-interview dl dd p {
    font-size: 8.9956076135px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-profile .rec-profile-interview dl dd p {
    margin-top: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-profile .rec-profile-interview dl dd p {
    margin-top: 11.2445095168px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-profile .rec-profile-interview dl dd p {
    font-size: 4.2666666667vw;
  }
}
@media screen and (min-width: 768px) {
  main #rec .rec-profile .rec-profile-others {
    margin-top: 10.2489019034vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-profile .rec-profile-others {
    margin-top: 140px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-profile .rec-profile-others {
    margin-top: 78.7115666179px;
  }
}
main #rec .rec-profile .rec-profile-others ul {
  display: flex;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  main #rec .rec-profile .rec-profile-others ul {
    justify-content: space-between;
  }
}
@media screen and (min-width: 768px) {
  main #rec .rec-profile .rec-profile-others ul li {
    margin-right: 4.0263543192vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-profile .rec-profile-others ul li {
    margin-right: 55px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-profile .rec-profile-others ul li {
    margin-right: 30.9224011713px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-profile .rec-profile-others ul li {
    width: calc((100% - 50px) / 3);
  }
}
@media screen and (min-width: 768px) {
  main #rec .rec-profile .rec-profile-others ul li:last-child {
    margin-right: 0;
  }
}
main #rec .rec-profile .rec-profile-others ul li a {
  display: block;
}
@media screen and (min-width: 768px) {
  main #rec .rec-profile .rec-profile-others ul li a {
    width: 15.8125915081vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-profile .rec-profile-others ul li a {
    width: 216px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-profile .rec-profile-others ul li a {
    width: 121.4407027818px;
  }
}
@media screen and (min-width: 768px) {
  main #rec .rec-profile .rec-profile-others ul li a:hover .img img {
    transform: scale(1.05);
  }
}
@media screen and (min-width: 768px) {
  main #rec .rec-profile .rec-profile-others ul li a .img {
    overflow: hidden;
  }
}
main #rec .rec-profile .rec-profile-others ul li a .img img {
  width: 100%;
}
@media screen and (min-width: 768px) {
  main #rec .rec-profile .rec-profile-others ul li a .img img {
    transition: all 0.3s ease-in-out;
  }
}
main #rec .rec-profile .rec-profile-others ul li a h3 {
  font-weight: 600;
  text-align: center;
}
@media screen and (min-width: 768px) {
  main #rec .rec-profile .rec-profile-others ul li a h3 {
    margin-top: 1.756954612vw;
    font-size: 1.4641288433vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-profile .rec-profile-others ul li a h3 {
    margin-top: 24px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-profile .rec-profile-others ul li a h3 {
    margin-top: 13.4934114202px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-profile .rec-profile-others ul li a h3 {
    font-size: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-profile .rec-profile-others ul li a h3 {
    font-size: 11.2445095168px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-profile .rec-profile-others ul li a h3 {
    margin-top: 3.7333333333vw;
  }
}
main #rec .rec-profile .rec-profile-others ul li a h3 > span {
  display: block;
}
main #rec .rec-profile .rec-profile-others ul li a h3 > span:first-letter {
  color: #0B8BD5;
}
@media screen and (min-width: 768px) {
  main #rec .rec-profile .rec-profile-others ul li a h3 > span.ja {
    font-size: 1.4641288433vw;
    margin-bottom: 0.7320644217vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-profile .rec-profile-others ul li a h3 > span.ja {
    font-size: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-profile .rec-profile-others ul li a h3 > span.ja {
    font-size: 11.2445095168px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-profile .rec-profile-others ul li a h3 > span.ja {
    margin-bottom: 10px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-profile .rec-profile-others ul li a h3 > span.ja {
    margin-bottom: 5.6222547584px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-profile .rec-profile-others ul li a h3 > span.ja {
    font-size: 3.7333333333vw;
    margin-bottom: 2.1333333333vw;
  }
}
main #rec .rec-profile .rec-profile-others ul li a h3 > span.en {
  font-family: "Futura", "Noto Sans JP", "Century Gothic";
}
@media screen and (min-width: 768px) {
  main #rec .rec-profile .rec-profile-others ul li a h3 > span.en {
    font-size: 0.878477306vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #rec .rec-profile .rec-profile-others ul li a h3 > span.en {
    font-size: 12px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #rec .rec-profile .rec-profile-others ul li a h3 > span.en {
    font-size: 6.7467057101px;
  }
}
@media screen and (max-width: 767px) {
  main #rec .rec-profile .rec-profile-others ul li a h3 > span.en {
    font-size: 2.4vw;
  }
}
main #torikumi .torikumi-head {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: bottom center;
  background-image: url(/assets/img/torikumi/bg-01.jpg);
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-head {
    padding-bottom: 20.1317715959vw;
    margin-top: -7.3206442167vw;
    padding-top: 7.3206442167vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-head {
    padding-bottom: 275px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-head {
    padding-bottom: 154.6120058565px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-head {
    margin-top: -100px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-head {
    margin-top: -56.2225475842px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-head {
    padding-top: 100px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-head {
    padding-top: 56.2225475842px;
  }
}
main #torikumi .torikumi-head h2 {
  position: relative;
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-head h2 {
    margin-bottom: 2.9282576867vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-head h2 {
    margin-bottom: 40px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-head h2 {
    margin-bottom: 22.4890190337px;
  }
}
main #torikumi .torikumi-head h2:before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  background-image: url(/assets/img/strip.svg);
  background-size: cover;
  background-position: center;
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-head h2:before {
    width: 2.635431918vw;
    height: 1.9033674963vw;
    margin-left: -4.7584187408vw;
    margin-top: -2.196193265vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-head h2:before {
    width: 36px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-head h2:before {
    width: 20.2401171303px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-head h2:before {
    height: 26px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-head h2:before {
    height: 14.6178623719px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-head h2:before {
    margin-left: -65px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-head h2:before {
    margin-left: -36.5446559297px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-head h2:before {
    margin-top: -30px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-head h2:before {
    margin-top: -16.8667642753px;
  }
}
@media screen and (max-width: 767px) {
  main #torikumi .torikumi-head h2:before {
    width: 9.6vw;
    height: 6.9333333333vw;
    margin-left: -4.8vw;
    margin-top: -12vw;
  }
}
main #torikumi .torikumi-head h2 > span {
  display: block;
  text-align: center;
  font-weight: 600;
}
main #torikumi .torikumi-head h2 > span.en {
  font-family: "Montserrat", sans-serif;
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-head h2 > span.en {
    font-size: 1.1713030747vw;
    margin-bottom: 1.4641288433vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-head h2 > span.en {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-head h2 > span.en {
    font-size: 8.9956076135px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-head h2 > span.en {
    margin-bottom: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-head h2 > span.en {
    margin-bottom: 11.2445095168px;
  }
}
main #torikumi .torikumi-head h2 > span.ja {
  letter-spacing: 0.04em;
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-head h2 > span.ja {
    font-size: 2.3426061493vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-head h2 > span.ja {
    font-size: 32px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-head h2 > span.ja {
    font-size: 17.9912152269px;
  }
}
main #torikumi .torikumi-head h2 > span.ja > span {
  display: inline-block;
  position: relative;
  vertical-align: super;
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-head h2 > span.ja > span {
    width: 4.39238653vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-head h2 > span.ja > span {
    width: 60px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-head h2 > span.ja > span {
    width: 33.7335285505px;
  }
}
main #torikumi .torikumi-head h2 > span.ja > span:before, main #torikumi .torikumi-head h2 > span.ja > span:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background-color: #AAAAAA;
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-head h2 > span.ja > span:before, main #torikumi .torikumi-head h2 > span.ja > span:after {
    width: 0.1464128843vw;
    height: 2.7086383602vw;
    margin-top: -1.3543191801vw;
    margin-left: -0.0732064422vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-head h2 > span.ja > span:before, main #torikumi .torikumi-head h2 > span.ja > span:after {
    width: 2px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-head h2 > span.ja > span:before, main #torikumi .torikumi-head h2 > span.ja > span:after {
    width: 1.1244509517px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-head h2 > span.ja > span:before, main #torikumi .torikumi-head h2 > span.ja > span:after {
    height: 37px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-head h2 > span.ja > span:before, main #torikumi .torikumi-head h2 > span.ja > span:after {
    height: 20.8023426061px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-head h2 > span.ja > span:before, main #torikumi .torikumi-head h2 > span.ja > span:after {
    margin-top: -18.5px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-head h2 > span.ja > span:before, main #torikumi .torikumi-head h2 > span.ja > span:after {
    margin-top: -10.4011713031px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-head h2 > span.ja > span:before, main #torikumi .torikumi-head h2 > span.ja > span:after {
    margin-left: -1px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-head h2 > span.ja > span:before, main #torikumi .torikumi-head h2 > span.ja > span:after {
    margin-left: -0.5622254758px;
  }
}
main #torikumi .torikumi-head h2 > span.ja > span:before {
  transform: rotate(45deg);
}
main #torikumi .torikumi-head h2 > span.ja > span:after {
  transform: rotate(-45deg);
}
main #torikumi .torikumi-head p.torikumi-p {
  text-align: center;
}
main #torikumi .torikumi-head p.torikumi-p span.blue {
  color: #0B8BD5;
}
main #torikumi .torikumi-head p.torikumi-p.one {
  font-weight: 600;
  line-height: 1.8;
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-head p.torikumi-p.one {
    font-size: 1.1713030747vw;
    margin-bottom: 5.8565153734vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-head p.torikumi-p.one {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-head p.torikumi-p.one {
    font-size: 8.9956076135px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-head p.torikumi-p.one {
    margin-bottom: 80px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-head p.torikumi-p.one {
    margin-bottom: 44.9780380673px;
  }
}
main #torikumi .torikumi-head p.torikumi-p.two {
  font-weight: 600;
  line-height: 1.8;
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-head p.torikumi-p.two {
    font-size: 1.4641288433vw;
    margin-bottom: 2.635431918vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-head p.torikumi-p.two {
    font-size: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-head p.torikumi-p.two {
    font-size: 11.2445095168px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-head p.torikumi-p.two {
    margin-bottom: 36px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-head p.torikumi-p.two {
    margin-bottom: 20.2401171303px;
  }
}
main #torikumi .torikumi-head p.torikumi-p.three {
  line-height: 1.8;
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-head p.torikumi-p.three {
    font-size: 1.1713030747vw;
    margin-bottom: 1.4641288433vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-head p.torikumi-p.three {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-head p.torikumi-p.three {
    font-size: 8.9956076135px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-head p.torikumi-p.three {
    margin-bottom: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-head p.torikumi-p.three {
    margin-bottom: 11.2445095168px;
  }
}
main #torikumi .torikumi-head p.torikumi-p.four {
  color: #888888;
  letter-spacing: 0.06;
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-head p.torikumi-p.four {
    font-size: 0.9516837482vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-head p.torikumi-p.four {
    font-size: 13px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-head p.torikumi-p.four {
    font-size: 7.3089311859px;
  }
}
main #torikumi .torikumi-head a {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #E96200;
  color: #fff;
  letter-spacing: 0.1em;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-head a {
    margin-top: 1.4641288433vw;
    width: 13.17715959vw;
    height: 3.6603221083vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-head a {
    margin-top: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-head a {
    margin-top: 11.2445095168px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-head a {
    width: 180px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-head a {
    width: 101.2005856515px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-head a {
    height: 50px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-head a {
    height: 28.1112737921px;
  }
}
main #torikumi .torikumi-head a:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  background-image: url(/assets/img/torikumi/window.svg);
  background-repeat: no-repeat;
  background-size: cover;
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-head a:after {
    width: 1.317715959vw;
    height: 1.317715959vw;
    margin-top: -0.6588579795vw;
    margin-right: 1.4641288433vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-head a:after {
    width: 18px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-head a:after {
    width: 10.1200585652px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-head a:after {
    height: 18px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-head a:after {
    height: 10.1200585652px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-head a:after {
    margin-top: -9px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-head a:after {
    margin-top: -5.0600292826px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-head a:after {
    margin-right: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-head a:after {
    margin-right: 11.2445095168px;
  }
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-train {
    padding-bottom: 8.0527086384vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-train {
    padding-bottom: 110px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-train {
    padding-bottom: 61.8448023426px;
  }
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-train .torikumi-train-video {
    margin-top: -9.5168374817vw;
    margin-bottom: 8.78477306vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-train .torikumi-train-video {
    margin-top: -130px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-train .torikumi-train-video {
    margin-top: -73.0893118594px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-train .torikumi-train-video {
    margin-bottom: 120px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-train .torikumi-train-video {
    margin-bottom: 67.467057101px;
  }
}
main #torikumi .torikumi-train .torikumi-train-video .video {
  text-align: center;
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-train .torikumi-train-video .video {
    margin-bottom: 4.39238653vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-train .torikumi-train-video .video {
    margin-bottom: 60px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-train .torikumi-train-video .video {
    margin-bottom: 33.7335285505px;
  }
}
main #torikumi .torikumi-train .torikumi-train-video .video iframe,
main #torikumi .torikumi-train .torikumi-train-video .video video {
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-train .torikumi-train-video .video iframe,
main #torikumi .torikumi-train .torikumi-train-video .video video {
    width: 46.8521229868vw;
    height: 26.3543191801vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-train .torikumi-train-video .video iframe,
main #torikumi .torikumi-train .torikumi-train-video .video video {
    width: 640px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-train .torikumi-train-video .video iframe,
main #torikumi .torikumi-train .torikumi-train-video .video video {
    width: 359.8243045388px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-train .torikumi-train-video .video iframe,
main #torikumi .torikumi-train .torikumi-train-video .video video {
    height: 360px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-train .torikumi-train-video .video iframe,
main #torikumi .torikumi-train .torikumi-train-video .video video {
    height: 202.4011713031px;
  }
}
main #torikumi .torikumi-train .torikumi-train-video .txt h3 {
  font-weight: 600;
  text-align: center;
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-train .torikumi-train-video .txt h3 {
    font-size: 1.4641288433vw;
    margin-bottom: 2.5622254758vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-train .torikumi-train-video .txt h3 {
    font-size: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-train .torikumi-train-video .txt h3 {
    font-size: 11.2445095168px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-train .torikumi-train-video .txt h3 {
    margin-bottom: 35px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-train .torikumi-train-video .txt h3 {
    margin-bottom: 19.6778916545px;
  }
}
main #torikumi .torikumi-train .torikumi-train-video .txt h3 > span {
  color: #0B8BD5;
}
main #torikumi .torikumi-train .torikumi-train-video .txt p {
  font-weight: 600;
  text-align: center;
  line-height: 1.8;
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-train .torikumi-train-video .txt p {
    font-size: 1.1713030747vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-train .torikumi-train-video .txt p {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-train .torikumi-train-video .txt p {
    font-size: 8.9956076135px;
  }
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-train .torikumi-train-trainer {
    display: flex;
    justify-content: space-between;
    width: 79.0629575403vw;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-train .torikumi-train-trainer {
    width: 1080px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-train .torikumi-train-trainer {
    width: 607.2035139092px;
  }
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-train .torikumi-train-trainer .panel {
    width: 37.3352855051vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-train .torikumi-train-trainer .panel {
    width: 510px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-train .torikumi-train-trainer .panel {
    width: 286.7349926794px;
  }
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-train .torikumi-train-trainer .panel .img {
    margin-bottom: 1.8301610542vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-train .torikumi-train-trainer .panel .img {
    margin-bottom: 25px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-train .torikumi-train-trainer .panel .img {
    margin-bottom: 14.055636896px;
  }
}
main #torikumi .torikumi-train .torikumi-train-trainer .panel .img img {
  width: 100%;
}
main #torikumi .torikumi-train .torikumi-train-trainer .panel .txt h2 {
  font-weight: 600;
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-train .torikumi-train-trainer .panel .txt h2 {
    padding-bottom: 1.4641288433vw;
    margin-bottom: 2.196193265vw;
    border-bottom: 1px solid #198BD5;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-train .torikumi-train-trainer .panel .txt h2 {
    padding-bottom: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-train .torikumi-train-trainer .panel .txt h2 {
    padding-bottom: 11.2445095168px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-train .torikumi-train-trainer .panel .txt h2 {
    margin-bottom: 30px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-train .torikumi-train-trainer .panel .txt h2 {
    margin-bottom: 16.8667642753px;
  }
}
main #torikumi .torikumi-train .torikumi-train-trainer .panel .txt h2 > span {
  display: block;
}
main #torikumi .torikumi-train .torikumi-train-trainer .panel .txt h2 > span:first-letter {
  color: #0B8BD5;
}
main #torikumi .torikumi-train .torikumi-train-trainer .panel .txt h2 > span.ja {
  line-height: 1.42;
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-train .torikumi-train-trainer .panel .txt h2 > span.ja {
    font-size: 2.0497803807vw;
    margin-bottom: 0.5856515373vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-train .torikumi-train-trainer .panel .txt h2 > span.ja {
    font-size: 28px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-train .torikumi-train-trainer .panel .txt h2 > span.ja {
    font-size: 15.7423133236px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-train .torikumi-train-trainer .panel .txt h2 > span.ja {
    margin-bottom: 8px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-train .torikumi-train-trainer .panel .txt h2 > span.ja {
    margin-bottom: 4.4978038067px;
  }
}
main #torikumi .torikumi-train .torikumi-train-trainer .panel .txt h2 > span.en {
  font-family: "Futura", "Noto Sans JP", "Century Gothic";
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-train .torikumi-train-trainer .panel .txt h2 > span.en {
    font-size: 1.1713030747vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-train .torikumi-train-trainer .panel .txt h2 > span.en {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-train .torikumi-train-trainer .panel .txt h2 > span.en {
    font-size: 8.9956076135px;
  }
}
main #torikumi .torikumi-train .torikumi-train-trainer .panel .txt h2 > span.en > span {
  display: inline-block;
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-train .torikumi-train-trainer .panel .txt h2 > span.en > span {
    margin-left: 1.0980966325vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-train .torikumi-train-trainer .panel .txt h2 > span.en > span {
    margin-left: 15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-train .torikumi-train-trainer .panel .txt h2 > span.en > span {
    margin-left: 8.4333821376px;
  }
}
main #torikumi .torikumi-train .torikumi-train-trainer .panel .txt p {
  line-height: 1.8;
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-train .torikumi-train-trainer .panel .txt p {
    font-size: 1.1713030747vw;
    margin-bottom: 0.7320644217vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-train .torikumi-train-trainer .panel .txt p {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-train .torikumi-train-trainer .panel .txt p {
    font-size: 8.9956076135px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-train .torikumi-train-trainer .panel .txt p {
    margin-bottom: 10px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-train .torikumi-train-trainer .panel .txt p {
    margin-bottom: 5.6222547584px;
  }
}
main #torikumi .torikumi-train .torikumi-train-trainer .panel .txt p > strong {
  display: block;
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-train .torikumi-train-trainer .panel .txt p > strong {
    margin-top: 1.4641288433vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-train .torikumi-train-trainer .panel .txt p > strong {
    margin-top: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-train .torikumi-train-trainer .panel .txt p > strong {
    margin-top: 11.2445095168px;
  }
}
main #torikumi .torikumi-train .torikumi-train-trainer .panel .txt p > strong:first-letter {
  color: #0B8BD5;
}
main #torikumi .torikumi-train .torikumi-train-trainer .panel .txt ul li {
  position: relative;
  line-height: 1.8;
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-train .torikumi-train-trainer .panel .txt ul li {
    font-size: 1.1713030747vw;
    padding-left: 2.196193265vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-train .torikumi-train-trainer .panel .txt ul li {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-train .torikumi-train-trainer .panel .txt ul li {
    font-size: 8.9956076135px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-train .torikumi-train-trainer .panel .txt ul li {
    padding-left: 30px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-train .torikumi-train-trainer .panel .txt ul li {
    padding-left: 16.8667642753px;
  }
}
main #torikumi .torikumi-train .torikumi-train-trainer .panel .txt ul li:before {
  content: "・";
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-train .torikumi-train-trainer .panel .txt ul li:before {
    margin-left: 1.0980966325vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-train .torikumi-train-trainer .panel .txt ul li:before {
    margin-left: 15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-train .torikumi-train-trainer .panel .txt ul li:before {
    margin-left: 8.4333821376px;
  }
}
main #torikumi .torikumi-highlight {
  position: relative;
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-highlight {
    z-index: 1;
    overflow: hidden;
    margin-top: 8.78477306vw;
    margin-bottom: -4.39238653vw;
    padding-bottom: 4.39238653vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-highlight {
    margin-top: 120px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-highlight {
    margin-top: 67.467057101px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-highlight {
    margin-bottom: -60px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-highlight {
    margin-bottom: -33.7335285505px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-highlight {
    padding-bottom: 60px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-highlight {
    padding-bottom: 33.7335285505px;
  }
}
@media screen and (max-width: 767px) {
  main #torikumi .torikumi-highlight {
    overflow: hidden;
    margin-top: 24vw;
    margin-left: -5.3333333333vw;
    margin-right: -5.3333333333vw;
    padding-bottom: 16vw;
  }
}
main #torikumi .torikumi-highlight:before {
  content: "";
  position: absolute;
  display: block;
  z-index: -1;
  left: 0;
  height: 100%;
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-highlight:before {
    width: 74%;
    background-position: center right;
    background-size: cover;
    background-repeat: no-repeat;
    background-image: url(/assets/img/torikumi/gradation.png);
    top: 4.39238653vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-highlight:before {
    top: 60px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-highlight:before {
    top: 33.7335285505px;
  }
}
@media screen and (max-width: 767px) {
  main #torikumi .torikumi-highlight:before {
    width: 100%;
    background-position: top right;
    background-size: cover;
    background-repeat: no-repeat;
    background-image: url(/assets/img/gradation.sp.png);
    z-index: 1;
    top: 19%;
  }
}
@media screen and (max-width: 374px) {
  main #torikumi .torikumi-highlight:before {
    top: 17%;
  }
}
main #torikumi .torikumi-highlight dl {
  position: relative;
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-highlight dl {
    display: flex;
    justify-content: flex-end;
    margin: 0 auto;
    max-width: 100vw;
    height: 30.3074670571vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-highlight dl {
    max-width: 1366px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-highlight dl {
    max-width: 768px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-highlight dl {
    height: 414px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-highlight dl {
    height: 232.7613469985px;
  }
}
@media screen and (max-width: 767px) {
  main #torikumi .torikumi-highlight dl {
    display: flex;
    flex-direction: column-reverse;
    overflow: hidden;
    z-index: 1;
  }
}
main #torikumi .torikumi-highlight dl dt {
  color: #fff;
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-highlight dl dt {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    margin-top: 12.4450951684vw;
    width: 74.3045387994vw;
    padding-left: 13.17715959vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-highlight dl dt {
    margin-top: 170px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-highlight dl dt {
    margin-top: 95.5783308931px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-highlight dl dt {
    width: 1015px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-highlight dl dt {
    width: 570.6588579795px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-highlight dl dt {
    padding-left: 180px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-highlight dl dt {
    padding-left: 101.2005856515px;
  }
}
@media screen and (max-width: 767px) {
  main #torikumi .torikumi-highlight dl dt {
    margin-top: 8vw;
    padding-left: 5.3333333333vw;
    padding-right: 5.3333333333vw;
  }
}
main #torikumi .torikumi-highlight dl dt h3 {
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 1.79;
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-highlight dl dt h3 {
    font-size: 1.756954612vw;
    margin-bottom: 1.317715959vw;
    word-break: keep-all;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-highlight dl dt h3 {
    font-size: 24px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-highlight dl dt h3 {
    font-size: 13.4934114202px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-highlight dl dt h3 {
    margin-bottom: 18px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-highlight dl dt h3 {
    margin-bottom: 10.1200585652px;
  }
}
@media screen and (max-width: 767px) {
  main #torikumi .torikumi-highlight dl dt h3 {
    line-height: 1.6;
    font-size: 5.3333333333vw;
    margin-bottom: 5.3333333333vw;
    padding-left: 5.3333333333vw;
    padding-right: 5.3333333333vw;
  }
}
main #torikumi .torikumi-highlight dl dt p {
  line-height: 1.6875;
  font-weight: 300;
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-highlight dl dt p {
    font-size: 1.1713030747vw;
    width: 33.8945827233vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-highlight dl dt p {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-highlight dl dt p {
    font-size: 8.9956076135px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-highlight dl dt p {
    width: 463px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-highlight dl dt p {
    width: 260.3103953148px;
  }
}
@media screen and (max-width: 767px) {
  main #torikumi .torikumi-highlight dl dt p {
    line-height: 1.8;
    font-size: 4.2666666667vw;
    padding-left: 5.3333333333vw;
    padding-right: 5.3333333333vw;
  }
}
main #torikumi .torikumi-highlight dl dt a {
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  -webkit-animation: gradientReverse 0.3s ease;
          animation: gradientReverse 0.3s ease;
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both;
  -webkit-animation-iteration-count: 1;
          animation-iteration-count: 1;
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-highlight dl dt a {
    transition: all 0.3s ease;
    margin-top: 2.5622254758vw;
    width: 12.0790629575vw;
    height: 3.6603221083vw;
    border-radius: 0.2928257687vw;
    font-size: 1.0248901903vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-highlight dl dt a {
    margin-top: 35px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-highlight dl dt a {
    margin-top: 19.6778916545px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-highlight dl dt a {
    width: 165px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-highlight dl dt a {
    width: 92.7672035139px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-highlight dl dt a {
    height: 50px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-highlight dl dt a {
    height: 28.1112737921px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-highlight dl dt a {
    border-radius: 4px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-highlight dl dt a {
    border-radius: 2.2489019034px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-highlight dl dt a {
    font-size: 14px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-highlight dl dt a {
    font-size: 7.8711566618px;
  }
}
@media screen and (max-width: 767px) {
  main #torikumi .torikumi-highlight dl dt a {
    margin-left: auto;
    margin-right: auto;
    border: none;
    padding: 0;
    width: 43.4666666667vw;
    height: 13.3333333333vw;
    border-radius: 1.0666666667vw;
    font-size: 3.7333333333vw;
    margin-top: 10.6666666667vw;
  }
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-highlight dl dt a:hover {
    opacity: 1;
    -webkit-animation: gradient 0.3s ease;
            animation: gradient 0.3s ease;
    -webkit-animation-fill-mode: both;
            animation-fill-mode: both;
    -webkit-animation-iteration-count: 1;
            animation-iteration-count: 1;
  }
}
main #torikumi .torikumi-highlight dl dt a img {
  display: inline-block;
  vertical-align: middle;
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-highlight dl dt a img {
    margin-right: 0.878477306vw;
    width: 1.6105417277vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-highlight dl dt a img {
    margin-right: 12px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-highlight dl dt a img {
    margin-right: 6.7467057101px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-highlight dl dt a img {
    width: 22px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-highlight dl dt a img {
    width: 12.3689604685px;
  }
}
@media screen and (max-width: 767px) {
  main #torikumi .torikumi-highlight dl dt a img {
    margin-right: 3.2vw;
    width: 5.8666666667vw;
    height: 4vw;
  }
}
main #torikumi .torikumi-highlight dl dd {
  pointer-events: none;
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-highlight dl dd {
    margin-right: 0vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-highlight dl dd {
    margin-right: 0px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-highlight dl dd {
    margin-right: 0px;
  }
}
@media screen and (max-width: 767px) {
  main #torikumi .torikumi-highlight dl dd {
    margin-left: -29.6vw;
    margin-right: -29.6vw;
  }
}
main #torikumi .torikumi-highlight dl dd .highlight {
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-highlight dl dd .highlight {
    width: 51.2445095168vw;
    height: 27.3060029283vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-highlight dl dd .highlight {
    width: 700px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-highlight dl dd .highlight {
    width: 393.5578330893px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-highlight dl dd .highlight {
    height: 373px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-highlight dl dd .highlight {
    height: 209.710102489px;
  }
}
main #torikumi .torikumi-highlight dl dd .highlight > img {
  width: 100%;
}
main #torikumi .torikumi-highlight dl dd .highlight > img.mask {
  -webkit-mask-image: url(/assets/img/torikumi/mask.png);
          mask-image: url(/assets/img/torikumi/mask.png);
  -webkit-mask-size: 100%;
          mask-size: 100%;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-highlight dl dd .slide {
    width: 51.2445095168vw;
    height: 4.1727672035vw;
    margin-top: 0.3660322108vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-highlight dl dd .slide {
    width: 700px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-highlight dl dd .slide {
    width: 393.5578330893px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-highlight dl dd .slide {
    height: 57px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-highlight dl dd .slide {
    height: 32.046852123px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-highlight dl dd .slide {
    margin-top: 5px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-highlight dl dd .slide {
    margin-top: 2.8111273792px;
  }
}
main #torikumi .torikumi-highlight dl dd .slide .slide-list {
  pointer-events: visible;
  overflow: hidden;
}
main #torikumi .torikumi-highlight dl dd .slide .slide-list img {
  width: 100%;
  display: block;
}
main #torikumi .torikumi-highlight dl dd .slide .slide-list .slick-slide {
  margin-left: 0.1830161054vw;
  margin-right: 0.1830161054vw;
}
@media screen and (min-width: 1366px) {
  main #torikumi .torikumi-highlight dl dd .slide .slide-list .slick-slide {
    margin-left: 2.5px;
  }
}
@media screen and (max-width: 768px) {
  main #torikumi .torikumi-highlight dl dd .slide .slide-list .slick-slide {
    margin-left: 1.4055636896px;
  }
}
@media screen and (min-width: 1366px) {
  main #torikumi .torikumi-highlight dl dd .slide .slide-list .slick-slide {
    margin-right: 2.5px;
  }
}
@media screen and (max-width: 768px) {
  main #torikumi .torikumi-highlight dl dd .slide .slide-list .slick-slide {
    margin-right: 1.4055636896px;
  }
}
main #torikumi .torikumi-highlight dl dd .slide .slide-list .slick-list {
  margin-left: -0.1830161054vw;
  margin-right: -0.1830161054vw;
}
@media screen and (min-width: 1366px) {
  main #torikumi .torikumi-highlight dl dd .slide .slide-list .slick-list {
    margin-left: -2.5px;
  }
}
@media screen and (max-width: 768px) {
  main #torikumi .torikumi-highlight dl dd .slide .slide-list .slick-list {
    margin-left: -1.4055636896px;
  }
}
@media screen and (min-width: 1366px) {
  main #torikumi .torikumi-highlight dl dd .slide .slide-list .slick-list {
    margin-right: -2.5px;
  }
}
@media screen and (max-width: 768px) {
  main #torikumi .torikumi-highlight dl dd .slide .slide-list .slick-list {
    margin-right: -1.4055636896px;
  }
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-care {
    margin-top: 18.3016105417vw;
    padding-bottom: 8.78477306vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-care {
    margin-top: 250px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-care {
    margin-top: 140.5563689605px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-care {
    padding-bottom: 120px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-care {
    padding-bottom: 67.467057101px;
  }
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-care .torikumi-care-head {
    margin-bottom: 4.39238653vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-care .torikumi-care-head {
    margin-bottom: 60px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-care .torikumi-care-head {
    margin-bottom: 33.7335285505px;
  }
}
main #torikumi .torikumi-care .torikumi-care-head p {
  text-align: center;
  font-weight: 600;
  line-height: 1.8;
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-care .torikumi-care-head p {
    margin-top: 2.9282576867vw;
    font-size: 1.1713030747vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-care .torikumi-care-head p {
    margin-top: 40px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-care .torikumi-care-head p {
    margin-top: 22.4890190337px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-care .torikumi-care-head p {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-care .torikumi-care-head p {
    font-size: 8.9956076135px;
  }
}
main #torikumi .torikumi-care .torikumi-care-content dl {
  border-top: 1px solid #DDDDDD;
  border-bottom: 1px solid #DDDDDD;
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-care .torikumi-care-content dl {
    display: flex;
    align-items: center;
    width: 50.5124450952vw;
    margin: 0 auto;
    padding-top: 1.8301610542vw;
    padding-bottom: 1.8301610542vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-care .torikumi-care-content dl {
    width: 690px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-care .torikumi-care-content dl {
    width: 387.9355783309px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-care .torikumi-care-content dl {
    padding-top: 25px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-care .torikumi-care-content dl {
    padding-top: 14.055636896px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-care .torikumi-care-content dl {
    padding-bottom: 25px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-care .torikumi-care-content dl {
    padding-bottom: 14.055636896px;
  }
}
main #torikumi .torikumi-care .torikumi-care-content dl dt {
  text-align: center;
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-care .torikumi-care-content dl dt {
    width: 13.9092240117vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-care .torikumi-care-content dl dt {
    width: 190px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-care .torikumi-care-content dl dt {
    width: 106.82284041px;
  }
}
main #torikumi .torikumi-care .torikumi-care-content dl dt h3 {
  font-weight: 600;
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-care .torikumi-care-content dl dt h3 {
    font-size: 1.756954612vw;
    margin-bottom: 1.1713030747vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-care .torikumi-care-content dl dt h3 {
    font-size: 24px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-care .torikumi-care-content dl dt h3 {
    font-size: 13.4934114202px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-care .torikumi-care-content dl dt h3 {
    margin-bottom: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-care .torikumi-care-content dl dt h3 {
    margin-bottom: 8.9956076135px;
  }
}
main #torikumi .torikumi-care .torikumi-care-content dl dt h3::first-letter {
  color: #0B8BD5;
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-care .torikumi-care-content dl dt .icon-01 {
    width: 5.0512445095vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-care .torikumi-care-content dl dt .icon-01 {
    width: 69px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-care .torikumi-care-content dl dt .icon-01 {
    width: 38.7935578331px;
  }
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-care .torikumi-care-content dl dt .icon-02 {
    width: 5.3440702782vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-care .torikumi-care-content dl dt .icon-02 {
    width: 73px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-care .torikumi-care-content dl dt .icon-02 {
    width: 41.0424597365px;
  }
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-care .torikumi-care-content dl dt .icon-03 {
    width: 6.2225475842vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-care .torikumi-care-content dl dt .icon-03 {
    width: 85px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-care .torikumi-care-content dl dt .icon-03 {
    width: 47.7891654466px;
  }
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-care .torikumi-care-content dl dt .icon-04 {
    width: 7.027818448vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-care .torikumi-care-content dl dt .icon-04 {
    width: 96px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-care .torikumi-care-content dl dt .icon-04 {
    width: 53.9736456808px;
  }
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-care .torikumi-care-content dl dt .icon-05 {
    width: 6.6617862372vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-care .torikumi-care-content dl dt .icon-05 {
    width: 91px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-care .torikumi-care-content dl dt .icon-05 {
    width: 51.1625183016px;
  }
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-care .torikumi-care-content dl dd {
    width: 36.6032210835vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-care .torikumi-care-content dl dd {
    width: 500px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-care .torikumi-care-content dl dd {
    width: 281.1127379209px;
  }
}
main #torikumi .torikumi-care .torikumi-care-content dl dd p {
  line-height: 1.8;
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-care .torikumi-care-content dl dd p {
    font-size: 1.1713030747vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-care .torikumi-care-content dl dd p {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-care .torikumi-care-content dl dd p {
    font-size: 8.9956076135px;
  }
}
main #torikumi .torikumi-banner {
  position: relative;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  background-image: url(/assets/img/torikumi/bg-02.jpg);
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-banner {
    padding-bottom: 35.1390922401vw;
    margin-bottom: -11.7130307467vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-banner {
    padding-bottom: 480px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-banner {
    padding-bottom: 269.8682284041px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-banner {
    margin-bottom: -160px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-banner {
    margin-bottom: -89.9560761347px;
  }
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-banner .torikumi-banner-desc {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
  }
}
main #torikumi .torikumi-banner .torikumi-banner-desc .logo {
  text-align: center;
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-banner .torikumi-banner-desc .logo {
    margin-bottom: 2.196193265vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-banner .torikumi-banner-desc .logo {
    margin-bottom: 30px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-banner .torikumi-banner-desc .logo {
    margin-bottom: 16.8667642753px;
  }
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-banner .torikumi-banner-desc .logo img {
    width: 14.6412884334vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-banner .torikumi-banner-desc .logo img {
    width: 200px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-banner .torikumi-banner-desc .logo img {
    width: 112.4450951684px;
  }
}
main #torikumi .torikumi-banner .torikumi-banner-desc h2 {
  text-align: center;
  font-weight: 600;
  color: #fff;
  line-height: 1.667;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-banner .torikumi-banner-desc h2 {
    font-size: 1.756954612vw;
    margin-bottom: 2.5622254758vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-banner .torikumi-banner-desc h2 {
    font-size: 24px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-banner .torikumi-banner-desc h2 {
    font-size: 13.4934114202px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-banner .torikumi-banner-desc h2 {
    margin-bottom: 35px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-banner .torikumi-banner-desc h2 {
    margin-bottom: 19.6778916545px;
  }
}
main #torikumi .torikumi-banner .torikumi-banner-desc h2 > span {
  color: #EB6100;
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-banner .torikumi-banner-desc h2 > span {
    font-size: 2.3426061493vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-banner .torikumi-banner-desc h2 > span {
    font-size: 32px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-banner .torikumi-banner-desc h2 > span {
    font-size: 17.9912152269px;
  }
}
main #torikumi .torikumi-banner .torikumi-banner-desc a {
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  background-color: #E96200;
  font-family: "Montserrat", sans-serif;
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-banner .torikumi-banner-desc a {
    width: 13.17715959vw;
    height: 3.6603221083vw;
    font-size: 1.0980966325vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-banner .torikumi-banner-desc a {
    width: 180px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-banner .torikumi-banner-desc a {
    width: 101.2005856515px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-banner .torikumi-banner-desc a {
    height: 50px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-banner .torikumi-banner-desc a {
    height: 28.1112737921px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-banner .torikumi-banner-desc a {
    font-size: 15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-banner .torikumi-banner-desc a {
    font-size: 8.4333821376px;
  }
}
@media screen and (min-width: 768px) {
  main #torikumi .torikumi-banner .torikumi-banner-desc a img {
    margin-left: 0.7320644217vw;
    margin-bottom: 0.3660322108vw;
    width: 1.317715959vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-banner .torikumi-banner-desc a img {
    margin-left: 10px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-banner .torikumi-banner-desc a img {
    margin-left: 5.6222547584px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-banner .torikumi-banner-desc a img {
    margin-bottom: 5px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-banner .torikumi-banner-desc a img {
    margin-bottom: 2.8111273792px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #torikumi .torikumi-banner .torikumi-banner-desc a img {
    width: 18px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #torikumi .torikumi-banner .torikumi-banner-desc a img {
    width: 10.1200585652px;
  }
}
main .patternbg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  background-position: top center;
  background-repeat: repeat-y;
}
@media screen and (min-width: 768px) {
  main .patternbg {
    background-position: center 80px;
    background-size: 2002px auto;
    background-image: url(/assets/img/pattern-02.png);
  }
}
@media screen and (max-width: 767px) {
  main .patternbg {
    background-position: center 120px;
    background-size: 100% auto;
    background-image: url(/assets/img/pattern-02.sp.svg);
  }
}
@media screen and (min-width: 768px) {
  main .patternbg.top {
    background-position: center -300px;
  }
}
@media screen and (max-width: 767px) {
  main .patternbg.top {
    background-position: center -55px;
  }
}
@media screen and (min-width: 768px) {
  main .patternbg.patternbg02 {
    background-position: center -750px;
  }
}
@media screen and (max-width: 767px) {
  main .patternbg.patternbg02 {
    background-position: center 170px;
  }
}
@media screen and (min-width: 768px) {
  main .patternbg.patternbg03 {
    background-position: center 630px;
  }
}
main .heading2 {
  text-align: center;
  position: relative;
}
main .heading2:before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  background-image: url(/assets/img/strip.svg);
  background-size: cover;
  background-position: center;
}
@media screen and (min-width: 768px) {
  main .heading2:before {
    width: 2.635431918vw;
    height: 1.9033674963vw;
    margin-left: -1.317715959vw;
    margin-top: -3.6603221083vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main .heading2:before {
    width: 36px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main .heading2:before {
    width: 20.2401171303px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main .heading2:before {
    height: 26px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main .heading2:before {
    height: 14.6178623719px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main .heading2:before {
    margin-left: -18px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main .heading2:before {
    margin-left: -10.1200585652px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main .heading2:before {
    margin-top: -50px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main .heading2:before {
    margin-top: -28.1112737921px;
  }
}
@media screen and (max-width: 767px) {
  main .heading2:before {
    width: 9.6vw;
    height: 6.9333333333vw;
    margin-left: -4.8vw;
    margin-top: -12vw;
  }
}
main .heading2 > span {
  display: block;
  font-weight: 600;
}
main .heading2 > span.en {
  font-family: "Montserrat", sans-serif;
  font-size: 48px;
  margin-bottom: 20px;
}
@media screen and (min-width: 768px) {
  main .heading2 > span.en {
    font-size: 3.513909224vw;
    margin-bottom: 1.4641288433vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main .heading2 > span.en {
    font-size: 48px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main .heading2 > span.en {
    font-size: 26.9868228404px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main .heading2 > span.en {
    margin-bottom: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main .heading2 > span.en {
    margin-bottom: 11.2445095168px;
  }
}
@media screen and (max-width: 767px) {
  main .heading2 > span.en {
    font-size: 7.4666666667vw;
    margin-bottom: 5.3333333333vw;
  }
}
main .heading2 > span.ja {
  letter-spacing: 0.06em;
}
@media screen and (min-width: 768px) {
  main .heading2 > span.ja {
    font-size: 1.1713030747vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main .heading2 > span.ja {
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main .heading2 > span.ja {
    font-size: 8.9956076135px;
  }
}
@media screen and (max-width: 767px) {
  main .heading2 > span.ja {
    font-size: 4.2666666667vw;
  }
}
main #wallpaper {
  background: rgb(11, 194, 221);
  background: linear-gradient(90deg, rgb(11, 194, 221) 0%, rgb(17, 88, 206) 100%);
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (min-width: 768px) {
  main #wallpaper {
    margin-bottom: 7.3206442167vw;
    margin-top: 5.1244509517vw;
    height: 14.6412884334vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #wallpaper {
    margin-bottom: 100px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #wallpaper {
    margin-bottom: 56.2225475842px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #wallpaper {
    margin-top: 70px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #wallpaper {
    margin-top: 39.3557833089px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #wallpaper {
    height: 200px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #wallpaper {
    height: 112.4450951684px;
  }
}
@media screen and (max-width: 767px) {
  main #wallpaper {
    height: 32vw;
    margin-bottom: 17.3333333333vw;
    margin-top: 13.3333333333vw;
  }
}
@media screen and (max-width: 767px) {
  main #wallpaper.aboutus {
    margin-bottom: 22.6666666667vw;
  }
}
main #wallpaper h2 > span {
  display: block;
  color: #fff;
  text-align: center;
  font-weight: 600;
}
main #wallpaper h2 > span.en {
  letter-spacing: 0.06em;
  font-family: "Montserrat", sans-serif;
}
@media screen and (min-width: 768px) {
  main #wallpaper h2 > span.en {
    font-size: 3.074670571vw;
    margin-bottom: 0.5856515373vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #wallpaper h2 > span.en {
    font-size: 42px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #wallpaper h2 > span.en {
    font-size: 23.6134699854px;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #wallpaper h2 > span.en {
    margin-bottom: 8px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #wallpaper h2 > span.en {
    margin-bottom: 4.4978038067px;
  }
}
@media screen and (max-width: 767px) {
  main #wallpaper h2 > span.en {
    font-size: 6.9333333333vw;
  }
}
main #wallpaper h2 > span.ja {
  letter-spacing: 0.1em;
}
@media screen and (min-width: 768px) {
  main #wallpaper h2 > span.ja {
    font-size: 1.0980966325vw;
  }
}
@media screen and (min-width: 768px) and (min-width: 1366px) {
  main #wallpaper h2 > span.ja {
    font-size: 15px;
  }
}
@media screen and (min-width: 768px) and (max-width: 768px) {
  main #wallpaper h2 > span.ja {
    font-size: 8.4333821376px;
  }
}
@media screen and (max-width: 767px) {
  main #wallpaper h2 > span.ja {
    font-size: 3.7333333333vw;
    margin-top: 3.2vw;
  }
}